利用wireshark学习tcp的链接建立与释放

参考文章

http://www.cnblogs.com/Jessy/p/3535612.html

http://blog.csdn.net/whuslei/article/details/6667471/


利用wireshark软件可以很清晰地理解tcp建立和释放的过程。

我们用TCP/UDP Socket调试工具 来模拟tcp的发送。

两台电脑,一台作为客户端,ip为192.168.1.100

另一台作为服务器,ip为192.168.134.248

服务器的监听端口设为8101,开始监听。

利用wireshark学习tcp的链接建立与释放_第1张图片

在客户端机器上打开wireshark软件,开启监听,并且规则设置成 tcp.port==8101 点击Apply应用,这样软件就能帮我们过滤掉很多不关心的内容,只剩下相应的8101端口的tcp包。

点击客户端的tcp工具的连接按钮,发现wireshark监控界面,出现三条记录,即三次握手。

利用wireshark学习tcp的链接建立与释放_第2张图片


简单分析下:

1)1.100向134.248发起请求,标志位SYN置1,Seq=0

2)134.248向1.100发送确认信息,标志位SYN和ACK置1,Seq=0,Ack=1(0+1)

3) 1.100想134.248发送消息,标志位ACK置1,Seq=1 Ack=1

结合这张图看

利用wireshark学习tcp的链接建立与释放_第3张图片

用客户端发送几条数据


对应的包


1)客户端发送“1212” 发送的长度为4, 标志位PSH置1,ACK置1,Seq=1,Ack=1,客户端窗口大小win=64240

2)服务器收到,发送确认信息,标志位ACK置1,Seq=1,ACK=5(1+4-1+1),告诉客户端,服务器的窗口大小为64240(数据以消化)

3)客户端再次发送“12”

4)服务器收到,发送确认信息,消息未消化,缓存窗口大小为64238(64240-2)

结合这张图

利用wireshark学习tcp的链接建立与释放_第4张图片

客户端点击断开连接




你可能感兴趣的:(other)