wareshark之TCP

Wireshark抓包分析TCP的建立与断开过程

一、TCP建立连接



说明:在此图中HostA充当客户端角色,HostB充当服务器角色。

TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求后,等待对方回答SYN,ACK。这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。

第一次握手:建立连接时,HostA发送SYN包(SEQ=a)到HostB,并进入SYN_SEND状态,等待HostB确认。

第二次握手:HostB收到SYN包后,必须确认HostA的SYN(ACK=a+1),同时自己也送一个SYN包(SEQ=b),即SYN+ACK包,此时HostB进入SYN_RECV状态。

第三次握手:HostA收到HostB的SYN+ACK包,向HostB发送确认包ACK(ACK=b+1),此包发送完毕,HostA和HostB进入入Established状态,完成三次握手。

抓包验证:

第一次握手:



第二次握手:



第三次握手:



二、TCP断开连接



当数据传输完毕后,需要经过四次握手来断开TCP连接,其步骤如下:

HostA要终止连接,发送序列号为p的段,FIN置位,同时确认此前收到的段;
HostB收到HostA发送的段后,发送ACK段,确认号为p+1,同时关闭连接。
同时HostB发送序列号为q的段,FIN置位,通知连接关闭;
HostA收到HostB发送的段后,发送ACK段,确认号为q+1,同时关闭连接。
抓包验证:

第一次握手:



第二、三次握手:



第四次握手:



实验完毕!!!!!!!!!!!!!


本文来自: 江湖醉仙的Blog 详细出处参考:http://www.joysin.net/network/protocol/wireshark-capture-tcp-establishment-and-disconnect.html

你可能感兴趣的:(wireshark)