文章目录




I UDP 简介



1. UDP : User Datagram Protocol , 用户数据报协议 , 又叫用户数据报文协议 ;

2. UDP 协议特点 : UDP 是面向数据报的传输层协议 , UDP 协议是基于报文的协议 , 不是面向连接的协议 ; UDP 的发送和接收是不需要建立连接的 , 只需要发送 , 及在对应的设备上监听指定端口接收即可 ;




II UDP 不可靠性



1. UDP 与 TCP : UDP 是面向数据报的 , TCP 是面向连接的 , UDP 传输不可靠 , TCP 传输可靠 ;

2. 没有备份 : UDP 在网络层中 , 将上层传给网络层数据封装后发送出去 , 这些数据是不保留备份的 ; 如果发送失败 , 就失败了 ;

3. UDP 对 IP 数据报处理 : UDP 协议中在该数据报头部加入了数据校验字段和复用相关字段 ;

4. 发送端接收端操作 : UDP 协议传输中 , 发送端封装数据 , 接收端接收数据时从网络中抓取发送给自己的数据包 , 如果客户端发送的数据包与接收端抓取数据包没有同步 , 那么接收端可能就收不到该数据 ;

5. UDP 协议特点 : UDP 协议中是没有标准的客户端与服务器端的 , 其结构简单 , 不用进行数据的校验 , 速度延迟很低 , 可以广播 , 其缺点也很明显 , 就是可靠性低 , 容易丢包 ;




III UDP 作用



1. 用作底层协议 : DNS , TFTP , SNMP 协议都是基于 UDP 协议的 , 其底层的数据传输机制使用的是 UDP 协议 ;

2. 应用场景 : UDP 可以用于视频 , 音频 , 不重要的数据传输 ; 直播 , 电视信号传输可以使用 UDP 协议传输 , 视频下载使用的是 TCP 传输 , 因为其要保证文件的正确性 ;




IV UDP 报文头



UDP 报文头 : 长度 64 位 , 8 字节 , 0 ~ 15 位 存储源端口号 , 16 ~ 31 位存储目标端口号 , 32 ~ 47 位 是数据长度 , 48 ~ 63 存储报文头和数据的校验和 ;




V UDP 数据包长度



UDP 报文头中存储的长度信息 16 位 , 即 2 字节 , 其最大可表示的数字时 2 16 − 1 = 65535 2^{16} - 1 = 65535 216−1=65535 , 自身的报文头占了 64 位 , 8 字节 , UDP 数据包的最大长度是 65535 − 8 = 65507 65535 - 8 = 65507 65535−8=65507 字节 , 大约 64 KB ;