1 传输层服务和协议简介
传输层协议为运行在不同Host上的进程提供了一种逻辑通信机制(TCP、UDP)。
发送方:将应用递交的消息分成一个或多 个的Segment,并向下传给网络层。
接收方:将接收到的segment组装成消息, 并向上交给应用层
网络层:提供主机之间的逻辑通 信机制
传输层:提供应用进程之间的逻 辑通信机制
位于网络层之上
依赖于网络层服务
对网络层服务进行(可能的)增强
2 多路复用与多路分解
2.1 套接字
一个进程有一个或多个套接字。
套接字相当于从网络向进程传递数据和从进程向网络传递数据的门户。
每个套接字都有一个唯一的标识符。
2.2 多路分解
将运输层报文段中的数据交付给正确的套接字的工作。
运输层检查首部字段,标识正确的套接字。
将报文段定向分解到该套接字。
2.3 多路复用
收集数据块,并为每个数据块封装上首部信息形成报文段,再将报文段传递到网络层。
2.4 运输层多路复用的要求
每个套接字都有一个唯一的标识符。
每个报文段有特殊字段指示报文段所要交付到的套接字。
一般的,这些特殊字段为“源端口号”和“目的端口号”。
2.5 无连接的多路复用与多路分解
2.5.1 多路复用
通常,应用程序的客户端自动分配端口号,服务器端则分配特定的端口号。
2.5.2 多路分解
UDP套接字,由一个二元组标识,该二元组包含目的IP地址和一个目的端口号。
若两个UDP报文段具有相同的目的IP地址和目的端口号,则两个报文段将通过相同的套接字分解到相同的目的进程。
2.6 有连接的多路复用与多路分解
2.6.1 多路分解
TCP套接, 由一个四元组标识,该四元组包含源IP地址、源端口号、目的IP地址、目的端口号。
两个具有不同源IP地址或源端口号的TCP报文段被分解到两个不同的套接字。
2.7 比较无连接和有连接的多路分解的
UDP套接字有一个二元组:目的IP、目的端口号唯一标识。
TCP套接字由一个四元组:源IP、源端口号、目的IP、目的端口号唯一标识。
两个具有相同的目的IP和目的端口号的报文段
在无连接多路分解中,会通过相同套接字分解到相同目的进程。
在有连接多路分解中,两个具有不同源IP或源端口号的报文会被分解到两个不同套接字