实验目的和要求:
1.理解TCP三次握手建立连接的过程
2.理解TCP四次挥手释放连接的过程(选做)
实验过程:
1、访问web站点(或者ftp服务器),利用Wireshark截获数据,过滤TCP建立连接(和释放连接)相关数据项,并分析TCP报头中关键标志位(SYN、ACK、FIN)和标志字段(seq、ack)的内容,记录下来。
2、分析TCP三次握手(/四次挥手)的必要性。
实验结果:
- 通过ping www.baidu.com,得到目的主机IP地址为:220.181.38.150
在过滤器中输入过滤表达式ip.dst==220.181.38.150 or ip.src==220.181.38.150 && tcp
图中可以看到wireshark截获到了三次握手的三个数据包。第四个包才是HTTP的, 这说明HTTP的确是使用TCP建立连接的。
实验分析:
1.第一个握手数据包
SYN=1:标志位置1,表示请求建立连接
Seq=1008715928:随机序列号
Ack=0:初始建立连接值为0,表示当前没有接收到数据
2.第二个握手数据包
SYN=1:标志位置1,表示请求连接
Seq=272486954
ACK=1008715929:请求包中的随机顺序号X+1
3.第三个握手数据包
SYN:标志位,表示已经收到记录
Seq =1008715929:随机顺序号Z
Ack = 272486955:请求包中的随机顺序号Y+1
就这样通过了TCP三次握手,建立了连接。开始进行数据交互
4.第一次挥手
第一次挥手:客户端向服务端发起挥手请求,并将FIN标志位置为1注意:其中的ACK标志位置为1表示的是在挥手发起前有数据传输应答。Seq =3048098675
5.第二次挥手
第二次挥手∶服务端向客户端发响应应答,并将ACK标志位置为1。
Seq:3773140788
ack:3048098676
6.第三次挥手
第三次挥手:服务器端向客户端发起挥手请求,并将FIN标志位置为1注意:其中的ACK标志位置为1表示的是在挥手发起前有数据传输应答。
Seq:3773140788
ack:3048098676
7.第四次挥手
第四次挥手:客户端向服务端发响应应答,并将ACK标志位置为1。
seq:3048098676
ack:3773140789
完成了从三次握手建立连接以及四次挥手关闭连接的分析过程