TCP的四次挥手为了断开连接,为了防止路上有遗失的数据。
四次挥手的流程如下
- 首先由客户端段发起断开链接请求。自己进入fin-waite1的状态。 发送FLAGS FIN结束标记, 自己的seq= m。
- 服务器端收到请求后,返回ACK=1 自己的seq=n ack=m+1 同时客户端进入的Fin-waite2的状态。
- 服务器端进入close-waite 窗口期, 通知上层应用。客户端要关闭链接, 由上层应用决定是否还要继续发送,如果发送可以,一致发送数据。
- 上层应该决定断开链接,发送 FIN=1 seq = u ack = m+1 同时进入Last-ack的等待时期。
- 客户端收到服务器请求,发动ACK=1 SEQ=W ACK=U+1 给服务器确定关闭后,进入了Time-waite时间进入 2个MLS的最长报文发送段,确定没有遗失的数据后,关闭链接、
TCP的三次握手,为了进行连接,确定双方的sequne相等。
三次握手的流程如下
- 服务器端开启监听端口
- 客户端发送SYN seq=a 同时自己进入了 syn-sent.
- 服务器接收到ACK=1 seq=b ack=a+1 同时服务器进入了syn-rec状态。
- 客户端收到了服务器回复后,向服务器发送ACK=1 ack=b+1 seq =c 此时客户端已经可以开始向服务器传送数据量了。