传输层协议所规定的一些主要功能包括:
分段和重组 — 大多数网络对一个 PDU 所能承载的数据量都有限制。传输层将应用程序数据分割成大小适当的数据块。到达目的设备后,传输层再重组数据,然后将其发送到目的应用程序或者服务。
会话多路复用 — 网络中的每台主机上,都可能运行着多个应用程序或服务。每个应用程序或者服务都分配有一个称为端口的地址。通过此地址,传输层可以确定将数据发送到哪一个应用程序或者服务上。
除了使用报头信息,为实现基本的数据分段和重组功能,一些传输层协议还提供:
面向连接的会话
传输层可以通过在应用程序间创建会话来实现面向连接。这些连接会让应用程序在传输数据之前作好互相通信的准备。在会话过程中,可以严密管理两个应用程序间的通信数据。
可靠传输
由于多种原因,数据片段在网络传输过程中可能会损坏或者完全丢失。传输层可以让源设备重发丢失的数据,从而确保所有数据片段都抵达目的设备。
同序处理
由于网络可能提供了多条路由,每条路由又有不同的传输时间,所以可能导致数据抵达的顺序错乱。通过对数据片段编号和排序,传输层可以确保按正确的顺序重组这些数据片段。
流量控制
网络主机的内存或带宽等资源有限。当传输层发现这些资源超负荷运转时,有些协议可以请求源应用程序降低数据流速。在传输层,可以通过调节源应用程序分批发送的数据量实现流量控制。流量控制可预防数据段在网络上丢失,从而避免重新传输。