一、首先我们先了解一下Tcp的三次握手流程
1)第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。
2)第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
3)第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据.以下是三次握手的图:
二、我们用wireshark抓包看看一个分包的情况
1)过滤后的包,可以看出是三次握手的过程
2)PSH表示有 DATA数据传输,可以看到本次是发包的分三次发的
3)如果要具体查看本次包的内容,可以这么查看,选中其中一个包后,选择Follow TCP Stream
4)图中最后几个包是四次挥手过程
原文地址:http://blog.csdn.net/loveheronly/article/details/45227199