一.概述
UDP(User Datagram Protocol )即用户数据报协议。是传输层协议。它只是将网络层提供的端到端的服务细化为了进程到进程的服务,并无其他。因此它提供的服务是:(1)尽力而为服务。即不可靠,如报文段丢失,乱序。(2)无连接:发送和接受双方没有握手。每个UDP报文段被独立处理。多用于:流媒体,DNS, SNMP(simple network management p rotocol )。
二.UDP存在的理由
(1)不建立链接(快)
(2)简单:发送端和接受端没有连接状态
(3)报文段头部很小(开销小)
(4)无拥塞控制和流量控制:UDP可以尽可能快的发送报文段。实现应用层到传输层的数据传输速率等于主机到网络的数据传输速率(不用考虑太多)。
三.UDP 报文段格式
其中头部8个字节。校验和是差错检测码(EDC)的一种。
四.Internet校验和例子
将UDP报文要校验的部分记为D(UDP数据部分,头部,其他),将D按照16位划分,不足补零,得到很多16位的整数。将他们相加得sum。若有进位,则将进位的1加给sum(进位回滚),再将sum 逐位取反得到校验和checksum, D+checksum =1111111111111111(16个1),则通过检验。
注意:未通过检验,则一定有错,丢弃。通过检验,也有可能D和checksum 同时出错,但结果满足检验条件(残存错误:通过检验,也不一定对)。
3.2 UDP
![](https://img-home.csdnimg.cn/images/20240711042549.png)