西数超哥博客
运维经验教程分享的博客

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析

TCP的三次握手和四次挥手的过程,帮助大家理解这个过程。

首先来看一下tcpdump抓取的网络数据包,如何抓包分析参考 上面给出的链接

 

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第1张

图中红色框选的是三次握手建立连接

第一次:客户端发送SYN报文,并设置seq=0,

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第2张

第二次:服务端收到SYN报文,知道对方要求建立连接,发送SYN和ACK报文,并设置seq=0,ack=0(第一次的seq)+1 = 1

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第3张

第三次:客户端发送ACK报文,设置seq=1(第二次的ACK),ack=0(第二次的seq)+1 = 1

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第4张

至此,三次握手完成,一次TCP连接建立成功

再来看看四次挥手断开连接

第一张截图的蓝色框选部分,但是这里的好像有问题,缺少了一次ACK的报文,请大牛帮忙看看,这是怎么回事,我连续抓了好几次包来分析,都是这个结果??

第一次:客户端发送FIN+ACK报文,并设置seq=1,ack=7

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第5张

第二次:服务端发送ACK报文

这里应该服务端回送一个ACK报文,可是在wiresharek分析数据的截图中没有看到这个报文???求解答?????

第三次:服务端发送FIN+ACK报文,

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第6张

第四次:客户端发送ACK报文

[转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析 idc资讯 第7张

针对原作者遇到的问题,其他人的回复:
经别人解释
http://bbs.csdn.net/topics/390967585?page=1#post-398782599
原因第二次第三次都是服务端返回报文,所以fin+ack在一起返回,不需要分开返回,所以第三次里面包括了第二次的ACK报文

 

原文转载于:

TCP 三次握手建立连接,四次挥手断开连接,图解详细分析  https://blog.csdn.net/simonchi/article/details/41896359





转载请注明:西数超哥博客www.ysidc.top» [转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析

https://www.ysidc.top 西数超哥博客,数据库,西数超哥,虚拟主机,域名注册,域名,云服务器,云主机,云建站,ysidc.top

赞(0) 打赏
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除。本站原创内容未经允许不得转载:西数超哥学习乐园 » [转]TCP 三次握手建立连接,四次挥手断开连接,图解详细分析

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏