计算机网络与通信实验报告——UDP协议分析

文章目录

  • 一、实验目的
  • 二、实验原理
    • 1.UDP协议特点
    • 2.UDP报文
  • 三、实验过程
    • 1.过滤UDP数据包
    • 2.QICQ数据包分析
  • 四、实验结果分析


一、实验目的

1.熟悉OSI七层协议体系结构; 2.了解各层完成的工作; 3.掌握协议的工作过程及特点。

二、实验原理

1.UDP协议特点

(1)UDP无需建立连接。因此UDP不会引入建立连接的时延。
(2)无连接状态。UDP不维护连接状态,也不跟踪参数,因此某些专用应用服务器使用UDP时,一般都能支持更多的活动客户机。
(3)分组首部开销更小。UDP只有8个字节的首部开销。
(4)应用层能够更好地控制要发送的数据和发送时间。UDP没有拥塞控制,因此网络中的拥塞也不会影响主机的发送效率。某些实时应用(如直播)要求以稳定的速度发送,能容忍一些数据的丢失,但不允许有较大的时延,而UDP正好可以满足这些应用的需求。
(5)UDP提供尽最大努力的交付,即不保证可靠交付,但并不意味着应用对数据的要求是不可靠的,因此需要维护传输可靠性的工作需要用户在应用层来完成。应用实体可以根据应用需求来灵活设计自己的可靠性机制。
(6)UDP是面向报文的。发送方UDP对应用层交下来的报文,在添加首部后就交付给IP层,既不合并,也不拆分,而是保留这些报文的边界;接受方UDP对IP层交上来的用户数据报,在去除首部后就原封不动的交付给上层的应用进程,一次交付一个完整的报文,因此报文不可分割,是UDP数据处理的最小单位。
(7)UDP常用于一次性传输比较小数据的网络应用,如DNS、SNMP等,因为对于这些应用,若采用TCP,则将为创建连接、维护和拆除而带来不小的开销。UDP也常用于多媒体应用(如IP电话、实时视频会议、流媒体等),显然,可靠数据传输对于这些应用来说并不是最重要的,但TCP的拥塞控制会导致数据出现较大的延迟,这是它们不可容忍的。

2.UDP报文

UDP首部有8个字节,由4个字段构成,每个字段都是两个字节
1.源端口: 源端口号,需要对方回信时选用,不需要时全部置0.
2.目的端口:目的端口号,在终点交付报文的时候需要用到。
3.长度:UDP的数据报的长度(包括首部和数据)其最小值为8(只有首部)
4.校验和:检测UDP数据报在传输中是否有错,有错则丢弃。
该字段是可选的,当源主机不想计算校验和,则直接令该字段全为0。
当传输层从IP层收到UDP数据报时,就根据首部中的目的端口,把UDP数据报通过相应的端口,上交给应用进程。
如果接收方UDP发现收到的报文中的目的端口号不正确(不存在对应端口号的应用进程0),就丢弃该报文,并由ICMP发送“端口不可达”差错报文给对方。
计算机网络与通信实验报告——UDP协议分析_第1张图片
查阅资料可知,腾讯公司旗下QQ聊天软件所应用的协议为QICQ协议,此协议针对UDP协议开发而来。因此,本实验对腾讯QQ进行抓包来分析其协议内容。

三、实验过程

1.过滤UDP数据包

启动wireshark抓包软件,输入过滤条件UDP,开始对腾讯QQ进行抓包
计算机网络与通信实验报告——UDP协议分析_第2张图片

2.QICQ数据包分析

计算机网络与通信实验报告——UDP协议分析_第3张图片
由图中可以看到传输层协议应用的是UDP协议。其中,源端口为:pxc-roid(4004),目的端口为:irdmi(8000),传输的数据段的长度为:47byte,校验和为:0x1084。
由图中的应用层协议可以得到各种信息。其中,数据段(QICQ number)打码部分,正符合实验者的QQ帐号。


四、实验结果分析

通过UDP抓包实验,体会到UDP协议与TCP协议的不同之处:
1.UDP所花费的头部开销较少,而TCP所花费的头部开销较多;
2.从报文的长度来看,UDP传输的报文长度与TCP不同。这是因为UDP是面向报文的,它不对报文做任何处理,即既不拆分报文也不合并报文,因此UDP传输的报文需要选择合适的报文长度。
在实验过程中,由于网络原因,产生丢包现象。
通过本实验,我更好的理解了UDP协议传输原理、UDP与TCP协议的区别等,收获颇丰。

你可能感兴趣的