段当作是数据丢失的先兆。3.主要仪器设备(实验用的软硬件环境).主要仪器设备(实验用的软硬件环境)本实验在连接I
ter
et的私有家庭网络环境中进行,需要的设备有PC机一台,线缆调制解调器,网络监听软件WireShark。实验配置图如下:
4.实验内容.1.找出一个完整的TCP过程;2.分析TCP连接建立时的三次握手报文;3.分析TCP的确认机制;4.分析TCP的超时重传机制;5找出TCP数据包,解释TCP的流量控制和拥塞控制机制。5.操作方法与实验步骤.1.捕获数据1在PC机上运行WireShark,设置过滤条件为:
otbroadcasta
d
otmulticast以过滤广播包和广播包,点击Start按钮开始监听。
f2打开IE浏览器,在网址中输入:wwwbaiducom,进行数据捕获,并将监听结果保存在文件51pcap中。
2.TCP连接建立过程TCP连接是通过称为三次握手的三个报文来建立的,在文件51pcap中的第35条记录就是三次握手。
(1)第一次握手第一条报文是没有携带数据的SYN报文,其首部中的SYN位为1,这个报文段里的序号被设置成一个随机数,观察第1条监听记录,在窗口上方的列表框中选择第一条监听记录,在窗口中间的协议框里,点击“Tra
smissio
Co
trolProtocol”,展开TCP协议部分,选择序号(Seque
ceNumber),在协议框中可以看到序号是0图1,这个0只是逻辑序号(RelativeSeque
ceNumber)。真正的序号是2图中所示的d66488bb
1
f2(2)第二次握手SYN报文通常是客户端发送给服务器端,请求建立连接。如果服务器正在监听并接受了连接请求,将发送一个响应报文(第2条监听记录)给客户端,它就是第二次握手报文,这个报文的SYN1,ACK1,通常也称之为SYNACK报文。
在列表框中选择第2条监听记录,在协议框中展开TCP协议部分,在“Flags”处可看到标志位:SYN和ACK。选择“Seque
ceNumber”,可以看到SYNACK报文也有一个初始序号(在这里是:逻辑值为0,原始框中的值为1e9c0c72),但这个初始序号是服务器端的初始序号,与第一次握手报文中的初始序号值无关。也就是说,客户端和服务器都要发送数据,而各自的序号值相对独立。在协议框中选择“Ack
owledgeme
tNumber”,我们注意到,第2条监听记录中
f报文段的确认号字段为1(也是逻辑序号),在原始框中的值为“d66488bc”,它正好等于第一次握手报文中的序号值1。这解释了TCP的确认机制,表明服务器端已经收到了客户端发来的第0个或第“d66488bb”字节,期望接收第1个或第“d66488bc”字节开始(SYN报文不携带数据,但要消费一个序号)。(3)第三次握手
最后,客户端发送带有r