网络协议:用户数据报协议(UDP)

来源:互联网 发布:淘宝上信誉最高的卖家 编辑:程序博客网 时间:2024/06/05 08:11

本文将讨论:

UDP的基本概念;

UDP报文

伪首部

 

UDP的基本概念;

 

TCP/IP协议族中,用户数据包协议UDP提供应用间传输数据报的基本机制。UDP使用底层的协议传输报文,提供与IP一样的不可靠、无连接数据报交付服务,他没有使用确认来确保报文到达,也没有对传入的报文排序,也不提供反馈信息来控制机器之间信息流动的速度。所以,UDP报文可能会出现丢失,重复或者乱序到达的现象。而且,分组到达的速率可能会大于接收进程能够处理的速率(见网络协议:可靠的数据流传输服务TCP)。

 

 

UDP的报文

 

每一个UDP报文称为一个用户数据报,首部被分为416bit的字段,说明了报文的来源、目的地、校验和报文长度。

如图


在读了前一篇文章后,对这些概念应该比较熟悉,所以在这里不再赘述。只是提一点。如果校验和的值为0,那么就说明不进行校验。这么实现的原因就是在高可靠性的局域网中使用UDP的时候减小开销。那么,计算出校验和为0的时候,会使用全1来表现这种情况。

 

 

伪首部

 

TCPUDP都存在一个叫伪首部的东西。这个东西在TCPIP卷一上被简略的提到,但并没有详细解释。个人理解是,由于UDPTCP报文都只有源端口和目的端口,作为承上启下的运输层,在获得报文的时候,从下层结构获得了源地址的IP和目标地址的IP并不是难事,获得以后通过UDP的协议软件对整个报文进行检验,如果检验和匹配正确,就说明这个UDP数据报来到了正确主机,UDP就向上层结构交付即可。



原创粉丝点击