1.UDP概述
- UDP是一种无链接的, 即发送数据前不须要创建链接,所以减少的开销和发送数据的延迟。
- UDP使用尽最大努力交付,即不保证可靠交付,所以主机不须要维持复杂的链接状态表。
- UDP是面向报文的,
- UDP没有拥塞控制,所以网络出现的拥塞不会使主机的发送率下降。
- UDP支持一对一,一对多,多对一和多对多的交互通讯。
- UDP首部开销小,只有8字节,比TCP的20个字节的首部要短。
- UDP的封装以下所示:

2.UDP的首部格式
- 源端口号:该项是任选项,默认值是0,能够被指定。
- 目的端口号:该项必须指定,由于这个做为接收主机内特定应用进程相关联的地址。
- UDP长度:该字段表示数据报文的长度(包含首部和数据部分),最小8个字节。
- 检验和:该字段用于防止UDP用户数据报在传输中出错。当进行检验和计算时,要在UDP数据报以前增长临时的12个字节伪首部。如上图所示。
3.IP分片
物理网络层通常要限制每次发送的数据帧的最大长度。因此,IP层接收到一份要发送的IP数据报时,它要判断向本地哪一个接口发送数据(选路),并查询该接口在原始发送端主机上,也能够发送在中间路由器上。
对于每一份IP数据报来讲,其标识字段都包含一个惟一值。该值在数据报分片时候被复制到每一个片中。当数据报分片以后,每一个片的总长度要改成该片的长度。(任何运输层首部只出如今第一片数据报中)
4.ICMP不可达差错(须要分片)
当路由器收到一份须要分片的数据报,而在IP首部又设置了不分片(DF)的标志比特。,就会长生ICMP不可达差错报文,如图所示。
5.ICMP源站抑制差错
当一个系统(路由器或者主机)接收数据报的速度比其处理速度快时,可能产生这个差错。报文格式以下: