&3运输层 - 运输层服务、Internet层的复用与分解

运输层服务、Internet层的复用与分解

  • 运输层服务
    • 运输层协议数据封装
      • 数据封装过程
    • 运输层vs网络层
    • 因特网运输层协议
  • Internet层的复用与分解
    • 分解工作过程
    • 无连接(UDP)的复用和分解
    • 面向连接(TCP)分解
      • 面向连接分解:多线程Web服务器

理解运输层服务依据的原理:
复用/分解
可靠数据传输
流量控制(端到端)
拥塞控制(全局性)
学习因特网中的运输层协议:
UDP:无连接传输
TCP:面向连接传输
TCP:拥塞控制

运输层服务

是整个网络体系结构中关键的一层,只有主机的协议栈(端系统)才有运输层
&3运输层 - 运输层服务、Internet层的复用与分解_第1张图片
计算机网络本质:实现分布在不同地理位置的联网主机之间的进程通信,

运输层为相互通信的应用进程提供了逻辑通信:

运输层服务:

  • 为运行在不同主机上的应用进程之间提供逻辑通信
  • 运输协议运行在端系统中
    • 发送方:将应用报文划分为段,传向网络层
    • 接收方:将段重新装配为报文,传向应用层
  • 应用可供使用的运输协议不止一个
    • 因特网:TCP和UDP

&3运输层 - 运输层服务、Internet层的复用与分解_第2张图片

运输层协议数据封装

&3运输层 - 运输层服务、Internet层的复用与分解_第3张图片

为什么需要数据分段:

  • TCP具有最大报文长度(有长度限制)
  • UDP数据报不会自己进行分析,因此当长度超过了MTU时,会在网络层进行IP分片

1460字节,以太网最大传输单元

数据封装过程

最大传输单元(MTU)——最大链路层帧长度
&3运输层 - 运输层服务、Internet层的复用与分解_第4张图片

运输层vs网络层

  • 网络层:主机间的逻辑通信
  • 运输层:进程间的逻辑通信
    以来、强化网络层服务

家庭类比:
12个孩子向12个孩子发信

  • 进程 = 孩子
  • 应用报文 = 信封中的新
  • 主机 = 家庭
  • 运输协议 = Ann和Bill
  • 网络层协议 = 邮政服务

注意:

  1. 运输层

运输层协议和网络层协议的主要区别:
&3运输层 - 运输层服务、Internet层的复用与分解_第5张图片

因特网运输层协议

  • 可靠的、按序交付(TCP):
    • 拥塞控制
    • 流量控制
    • 连接建立
  • 不可靠、不按序交付(UDP):
    • 尽力而为 IP协议基础上不提供不必要服务的拓展
  • 不可用的服务
    • 时延保证
    • 带宽保证

Internet层的复用与分解

多路奋勇与多路分解将由网络层提供的主机到主机的交付服务延伸到进程到进程的交付服务
&3运输层 - 运输层服务、Internet层的复用与分解_第6张图片

复用/分解

分解工作过程

  • 主机接收IP数据
    • 每个段具有源、目的端口号(端口号16bit,0~1023周知端口)
    • 每个数据报承载1个运输层报文段
  • 主机使用IP地址&端口号将报文段定向到适当的套接字

&3运输层 - 运输层服务、Internet层的复用与分解_第7张图片

无连接(UDP)的复用和分解

  1. 生成具有端口号的套接字&3运输层 - 运输层服务、Internet层的复用与分解_第8张图片
  2. 新建数据报文
    &3运输层 - 运输层服务、Internet层的复用与分解_第9张图片
  3. 发送数据
    在这里插入图片描述
  4. 接收数据
    在这里插入图片描述
  5. UDP套接字由二元组标识(目的地IP地址,目的地端口号)
    • 在段中检查目的端口号
    • 将UDP段定向到具有该端口号的套接字

问题1:具有不同源IP地址和/或源端口号的IP数据报可能定向到相同的套接字吗?
可能的;来自不同源IP地址和/或源端口号的IP数据包被导向同一个Socket,许多客户进程对应同一个进程(套接字)。

问题2:

面向连接(TCP)分解

  1. TCP套接字由四元组标识
    • 源IP地址
    • 源端口号
    • 目的IP地址
    • 目的端口号
  2. 接收主机使用这四个值来将段定向到适当的套接字
  3. 服务器主机可能支持许多并行的TCP套接字
    • 每个套接字由其自己的四元组标识
  4. Web服务器对每个连接的客户机具有不同的套接字
    • 非持久HTTP将为每个请求提供不同的套接字
      &3运输层 - 运输层服务、Internet层的复用与分解_第10张图片
      &3运输层 - 运输层服务、Internet层的复用与分解_第11张图片
      问题:

面向连接分解:多线程Web服务器

&3运输层 - 运输层服务、Internet层的复用与分解_第12张图片
连接套接字与进程之间并非一一对应的关系
当今高性能Web服务器通常只使用一个进程,但为每个心得客户连接创建一个具有新连接套接字的新线程
持续HTTP和非持续HTTP

你可能感兴趣的:(计算机网络,网络,网络协议,tcp/ip,udp)