一、实验目的及任务

1.通过wireshark分析,明确UDP、TCP三次握手的报文段中各字段语法语义。

2.通过分析进一步明确TCP三次握手以及UDP的工作原理并能够描述。

3.明白TCP与UDP的核心区别

二、实验环境

已联网的Windows系统电脑;有wireshark软件

三、实验步骤

(一)wireshark抓包并分析UDP数据包

1.打开命令提示符,输入ipconfig,查找使用的网络并对应在wireshark初始界面选择

2.开启wireshark

3.命令提示符中输入ping  任何网址

4.等wireshark抓一会儿包,点暂停键

5.搜索栏里面输入udp

6.其中选一个UDP包,UDP首部有4个字段,分别是:源端口Source Port,目的端口Destination Port,包长度Length,校验和Checksum。

7.通过查询wireshark中的字段信息,确定UDP首部的4个字段均为2字节;一共有4个字段,所以首部为8字节。

8.Length字段表示UDP首部和UDP字段的字节长度之和,由字段UDP payload可知,UDP载荷量为204字节,而UDP首部为8字节;204+8=212字节

9.UDP有效载荷量包含的最大字节

Length字长为2字节,故2^16-1=65535 bit,其中8字节是UDP的首部信息因此,有效荷载为65535-8=65527字节

10.最大的源端口号

因为端口号是从0开始的,因此最大的端口号为2^16-1=65535

11.UDP协议号

用十进制表示是17,用十六进制表示是11(十六进制规则:第一个数字代表有几个十六,第二个数字代表剩余数)

12.检查一对UDP数据包,主机发送一个UDP数据包,另一个是对第一个UDP数据包的回复

DNS查询的源端口号(61613)和目的端口号(53)分别与DNS 查询响应的源端口号(53)和目的端口号(61613)对应

(二)wireshark抓包并分析TCP三次握手

1.前半部分步骤和“(一)wireshark抓包UDP”一样,ip.src==192.168.1.6 and tcp.port==80,代表过滤目标IP和源IP是192.168.1.6并且TCP端口为80才会被抓取,这样抓取的数据会更精确

2.在三次TCP后,出现HTTP就是TCP三次握手的完整过程

3.分析第一次握手,seq=0、ack=0标志位:syn=1

4.第二次连接,初次连接所以Seq=0,Ack=上一次客户端的序列号+1;

标志位是SYN=1和ACK=1,代表这是一个确认的回馈连接5.第三次握手,Seq=1,因为这是客户端的第二次交互了,Ack=上一次服务端连接的序列号+1 标志位为:ACK,表示确认收到了连接回复,三次握手就建立连接完毕

(三)TCP与UDP核心区别

TCP、UDP对比表
特性 TCP UDP
连接方式 面向连接(三次握手) 无连接
可靠性 高(确认、重传机制) 低(尽最大努力交付)
头部开销 20-60字节 8字节
适用场景 文件传输、网页访问 实时视频、语音通话
交互模式 仅一对一 支持多播、广播

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐