UDP协议
被考次数: 3次
被考频率: 中频率
答错率:    50%
知识难度:
考试要求: 掌握     
知识路径:  > 计算机网络原理  > Internet 协议  > 传输层协议 TCP 与 UDP  > UDP 协议


本知识点历年真题试卷分布
>> 试题列表    
 

 
       UDP协议就是在IP协议提供主机之间数据通信服务的基础之上,通过端口机制提供应用进程之间的数据通信功能。UDP协议除了提供应用进程对UDP的复用功能外,不提供任何其他更高级的功能,也就是说,UDP协议提供的应用进程之间的数据通信服务是不可靠的;UDP协议没有在IP协议提供的主机之间不可靠的数据报服务之上提供任何差错控制机制。
          UDP数据报
          UDP协议实现不同应用进程标识的方法就是在UDP报文的头部包含发送方应用进程和接收方应用进程各自使用的UDP端口。下图给出了UDP报文格式。
          
          UDP报文格式
          UDP报文包括报头和数据两部分,其中报头包含源端口、目的端口、长度和校验和4个字段,每个字段都是16位长。
          UDP校验
          虽然UDP协议没有提供任何差错控制机制,但UDP通过使用校验和来确保UDP报文被传送到正确的目的端。
          UDP校验和计算有一个与众不同的特点:校验和除覆盖UDP报文外,还覆盖一个附加头部,称为伪头部(Pseudo Header)。伪头部有来自IP报头的4个字段(协议、源IP地址、目的IP地址、UDP长度)和填充字段,伪头部格式如下图所示。
          
          UDP计算校验和的伪头部格式
          其中填充字段为全0,其目的是为了使伪头部的长度为32位的整数倍;协议字段就是IP报头格式中的协议字段,为17(在IP报文格式的协议字段中17表示UDP协议);UDP长度字段表示UDP报文长度。
          UDP计算校验和加上伪头部的目的就是为了验证UDP报文是否在两个端点之间正确传输。因为UDP报文包含源端口和目的端口,而伪头部包含源IP地址和目的IP地址。假如UDP报文在通过因特网传输时,有人恶意篡改了源IP地址(IP源地址欺骗),则这种情况可以通过UDP的校验和检查出来。
          需要引起注意的是,UDP计算校验和的伪头部信息中部分内容来源于IP报头信息,也就是说,UDP在计算校验和时,UDP必须从IP层获取相关信息,否则无法形成伪头部,也就计算不出UDP的校验和。这一过程实际上违背了网络体系结构中的分层原则,但这种违背是出于实际的需求而不得不做的折中。事实上,UDP(包括TCP)与IP的联系是非常紧密的,而且它们一般都在操作系统内核实现,因此无论是UDP还是TCP要获得IP的相关信息都是非常容易和方便的。
          有关UDP报文校验和的计算方法与IP报头校验和的计算方法是完全相同的,在此不再赘述。需要引起注意的是,UDP报文的校验和字段是可选的(但是在UDPv6中,校验和是必需的),如果该字段为0就说明发送方没有进行校验和计算。这样设计的目的是为了在那些可靠性很高的局域网上使用UDP协议的应用进程能够尽量减少开销。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有