TCP创建连接
A机器与B机器三次握手检验双方报文收发正常
第一次握手
- A请求连接
- SYN=1,seq=x
- B正常接收
A
B A能发报 B能收报
第二次握手
SYN=1,ACK=1,seq=y,ack=x+1
A A能发报、收报,B能发报、收报
B A能发报 B能收报
第三次握手
ACK=1,seq=x+1,ack=y+1
A A能发报、收报,B能发报、收报
B A能发报、收报,B能发报、收报
TCP断开连接
四次挥手
第一次
FIN=1,seq=u
A-->B 我要断开连接
A进入FIN_WAIT1
第二次
ACK=1,seq=v,ack=u+1
B-->A 我知道了,需要时间收尾,收完我会通知你
B进入收尾时间--CLOSE_TIME
第三次
FIN=1,ACK=1,seq=w,ack=u+1
B-->A 收拾完了,开始断开连接
B关闭
(A如果收到第二次挥手进入FIN_WAIT2,如果第二次,第三次握手之间的间隔十分短,就无需经过FIN_WAIT2)
第四次
ACK=1,seq=u+1,ack=w+1
A-->B 好的(发完后A进入TIME_WAIT防止意外情况)