百度文库- 让每个人平等地提升自我11 实验六 UDP 用户数据报协议一 实验目的1、理解 UDP 协议的工作作原理及工作过程;2、掌握 UDP 的数据包格式;3、了解基本的端口分配
二 实验内容1、学习 UDP 协议的通信过程;2、学会手工计算 UDP 校验和
三 实验环境四 实验流程百度文库- 让每个人平等地提升自我22 五 实验原理用户数据报协议 (UDP)是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务
UDP 协议基本上是 IP 协议与上层协议的接口
UDP 协议适用端口分别运行在同一台设备上的多个应用程序
UDP 是面向非连接的协议,发送端与接收端在传输数据包之前不建立连接,而只是简单地把数据包发送到网络上,或者从网络上接收数据包
UDP 提供不可靠的数据传输服务
1、 UDP 封装在 IP 数据报如图所示2、 UDP 字段组成如图所示3、关于 UDP“校验和”的计算方法百度文库- 让每个人平等地提升自我33 尽管 UDP 校验和的基本计算方法与 IP 首部“校验和”的计算方法类似(16bit 的二进制反码和 ) ,但是它们之间存在不同的地方
首先,UDP 数据报长度可以为奇数字节,但是“校验和”的算法是把若干个16bit 字相加
解决方法是必要时在最后增加填充字节 0 ,这只是为了“校验和”的计算 ( 也就是说,可能增加的填充字节不被传送)
其次, UDP 数据报包含一个 12 字节长的伪首部,它是为了计算“校验和”而设置的
伪首部包含IP 首部一些字段
其目的是让 UDP 两次检查数据是否已经正确到达目的地
发送时不用传送伪首部, 但接收时将 IP 头中的信息构建伪首部,然后计算“校验和”用以判错
UDP“校验和”是一个端到端的“校验和”
它由发送端计算,然后由接收端验证
其目的是为了发现 UDP 首部和数据在从