山东大学计算机网络-实验四 下载本文

内容发布更新时间 : 2024/10/22 11:10:54星期一 下面是文章的全部内容请认真阅读。

实验4 用户数据报协议(UDP)

【实验目的】

1.掌握UDP协议的报文格式 2.掌握UDP协议校验和的计算方法 3.理解UDP协议的优缺点

4.理解协议栈对UDP协议的处理方法 5.理解UDP上层接口应满足的条件 【实验步骤】

练习1 编辑并发送UDP数据报 练习内容:

各主机打开协议分析器,进入相应的网络结构并验证网络拓扑的正确性,如果通过拓扑验证,关闭协议分析器继续进行实验,如果没有通过拓扑验证,请检查网络连接。

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。

1. 主机A打开协议编辑器,编辑发送给主机B的UDP数据报。 MAC层:

目的MAC地址:接收方MAC地址 源MAC地址:发送方MAC地址 协议类型或数据长度:0800,即IP协议 IP层:

第 一 页 共 七 页

总长度:包括IP层、UDP层和数据长度 高层协议类型:17,即UDP协议

首部校验和:其它所有字段填充完毕后填充此字段 源IP地址:发送方IP地址 目的IP地址:接收方IP地址 UDP层: 源端口:1030

目的端口:大于1024的端口号

有效负载长度:UDP层及其上层协议长度 其它字段默认,计算校验和。

● UDP在计算校验和时包括哪些内容?

答:协议字段(IP层的高层协议类型)、源IP地址、目的IP地址、长度(UDP数据总长度)、UDP首部、UDP数据。

2. 在主机B上启动协议分析器捕获数据,并设置过滤条件(提取UDP协议)。

3. 主机A发送已编辑好的数据报。

4. 主机B停止捕获数据,在捕获到的数据中查找主机A所发送的数据报。 思考题

1.为什么UDP协议的“校验和”要包含伪首部?(在UDP伪首部中,包含32位源IP地址,32位目的IP地址,8位协议,16位UDP长度。

第 二 页 共 七 页

通过伪首部的校验,UDP可以确定该数据报是不是发给本机的,通过首部协议字段,UDP可以确认有没有误传。)

答:若校验和不包括伪首部,用户数据报也可能是安全的和正确的。但是,若IP首部受到损伤,则他可能被交付到错误的主机。伪首部中包含高层协议类型字段是为了确保这个数据报是属于UDP而不是属于TCP的。使用UDP的进程和使用TCP的进程可以使用同一个端口号。UDP的高层协议类型字段是17.若在传输过程中这个值改变了,在接收端计算校验和时就可检测出来,UDP就可丢弃这个数据报,这样就不会交付给错误的协议。 2. 比较UDP和IP的不可靠程度?

答:UDP是传输层协议,IP是网络层协议,都是不可靠的。

练习2 UDP单播通信 练习内容:

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 主机B、C、D、E、F上启动“实验平台工具栏中的UDP工具”,作为服务器端,监听端口设置为2483,“创建”成功。

2. 主机C、E上启动协议分析器开始捕获数据,并设置过滤条件(提取UDP协议)。

3. 主机A上启动“实验平台工具栏中的UDP工具”,作为客户端,以主机C的IP为目的IP地址,以2483为端口,填写数据并发送。 4. 察看主机B、C、D、E、F上的“UDP工具”接收的信息。

第 三 页 共 七 页