传输层的功能

逻辑通信

传输层为不同主机上的应用进程之间提供逻辑通信,使它们感觉像是在直接通信。

复用与分用

  • 复用(Multiplexing):多个应用进程使用同一个传输层协议发送数据
  • 分用(Demultiplexing):传输层将接收到的数据交付给正确的应用进程

差错检测

传输层对报文段进行差错检测,确保数据完整性。

两种协议

传输层向应用层提供两种不同的协议:

  • TCP:面向连接的可靠传输
  • UDP:无连接的不可靠传输

传输层的寻址与端口

端口的作用

传输层使用端口号来标识主机中的应用进程。

端口号分类

类别范围说明
熟知端口号0-1023IANA 分配,服务器使用(如 HTTP 80、FTP 21)
登记端口号1024-49151IANA 登记,避免重复分配
短暂端口号(临时端口)49152-65535客户端临时使用

常见熟知端口号

服务端口号传输层协议
FTP21TCP
TELNET23TCP
SMTP25TCP
DNS53UDP
TFTP69UDP
HTTP80TCP
POP3110TCP
SNMP161UDP

套接字 Socket

Socket = {IP 地址 : 端口号}

一个套接字唯一标识一个网络进程。

无连接服务与面向连接服务

对比TCP(面向连接)UDP(无连接)
连接建立需要三次握手无需建立连接
可靠性可靠传输不可靠传输
流量控制有(滑动窗口)
拥塞控制
传输单位报文段用户数据报
首部开销20B8B
适用场景文件传输、邮件、Web实时多媒体、DNS、TFTP