在理解三次握手和四次挥手时,有必要先了解TCP,那么什么是TCP呢?
TCP即传输控制协议(TCP,Transmission Control Protocol),是一种面向连接的、可靠的、基于字节流的传输层通信协议。
在客户端与服务端建立TCP连接之前,它们首先要进行三次握手。
三次握手
1.客户端向服务端发送连接请求(SYN数据包);
2.服务端收到客户端发送的请求后,回复客户端确认信息(SYN/ACK数据包);
3.客户端收到确认信息后,再次向服务端发送确认信息。(ACK数据包)。

四次挥手
当客户端与服务端需要结束连接时,它们以四次挥手结束短暂的革命友谊。
1.要关闭连接的一方发送结束信号FIN,并进入FIN_WAIT_1状态;
2.另一方收到之后,给对方发送ACK,序号为收到的序号+1,进入CLOSE_WAIT状态;
3.被动关闭的一方在结束所有传输时,向对方发送FIN,进入LAST_ACK状态;
4.主动关闭方接收到Fin后,进入TIME_WAIT状态,给对方发送ACK,序号为收到序号+1,被动方进入CLOSED状态。
