对于tcp协议三次握手和四次挥手的理解
三次握手:每一次握手都是全双工方式
第一次握手:
客户端发送一个报文给服务端,进入一个状态,证明客户端有发送的能力。
第二次握手:
服务端接收到这个报文之后,发送一段报文给客户端,表示我已经接收到你发送的报文,进入准备状态。
第三次握手:
客户端接收到这段报文之后,在回应一段报文,证明客户端有接收的能力。
至此三次握手·全部完成。三次握手证明了客户端和服务端有就有接收和发送的能力,才能保证整个TCP链接的可靠性。
四次挥手:
第一次挥手:
客户端向服务端发送一个数据包主动断开链接,报文中指定一个序列号。告诉服务器,我要和你断开链接,不会再给你发送数据了。
第二次挥手:
服务器收到从客户端发送的数据包之后向客户端发送确认包,表示我已经收到你的数据包,并将报文中的序列号加一在发送回客户端,表示我已经收到了。
服务器告诉客户端,我收到了你的请求,但是我数据还没有发送完,等我发送完数据就进行第三次挥手。
第三次挥手:
服务器向客户端发送确认包,指定一个序列号,用来停止向客户端发送数据并告诉他,我数据发送完了,不再给你发数据了。
第四次挥手:
客户端收到之后,一样发送报文应答。过一段时间,客户发送确认包知乎进入closed状态。
四次挥手全部完成断开连接。