三次握手:
跟接打电话一样,只有双方都具备了发送和接受能力,我们才能进行接下来的通话。
第一次的握手,是为了确认客户端的发送没有问题;
第二次的握手,是为了确认服务端的接受和发送没问题;
第三次的握手,是为了确认客户端的接受没有问题;
至此,双方的发送和接受都没有问题,就可以进行通信了。
四次挥手:
客户端和服务器端都可以发起中断通信的的请求,此处以服务器端发起中断通信为例。
如上图所示,服务端第一次挥手,客户端第二次、第三次挥手,服务端第四次挥手。
第一次挥手,服务端发送了FINISH包,表示,服务端不会再向客户端发送数据了。
第二次客户端的挥手,是对第一次挥手的回应,表示客户端收到了。这次挥手是在收到第一次挥手就立马发送的。这次挥手之后,客户端可能还有一些数据需要发送给服务器,就会赶紧发送数据。只有在客户端确定不会给服务端发送数据之后,客户端才会进行第三次挥手,即向服务端发送FINISH包,表示客户端不会再向服务端发送数据了。
服务端在收到第三次挥手后,就进行第四次挥手,至此,通信中断。
那么问题来了:第四次挥手的意义在哪里,可以不进行第四次挥手吗?
那四次分手又是为何呢?TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。TCP是全双工模式ÿ