知识点讲解
 
       UDP校验
知识路径: > 计算机网络原理 > Internet 协议 > 传输层协议 TCP 与 UDP > UDP 协议 > UDP协议 > 
被考次数:1次
被考频率: 低频率
总体答错率: 64%
知识难度系数:
考试要求: 掌握     
相关知识点:1个
        虽然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-2023 All Rights Reserved
软考在线版权所有