Tcp 使用三次握手建立一个连接
① 客户发送SYN包至服务器并进行SYD_SENT状态,等待服务器确认
② 服务器收到客户端的SYN包,发送一个ACK,同时发送自己的SYD,此时服务器进入SYN_RCVD状态
③ 客户端收到服务器发送SYN+ACK后,进入ESTABLISHED状态,并发送服务器SYD包中的确认ACK,服务器收到客户端ACK后,进入ESTABLISHED状态
SYD:是tcp连接的一个包,非常小的一个数据包
ACK:传输类的一种传输控制字符
SYD_RCVD是 服务端口
ESTABLISHED连接成功
四次挥手
TCP使用四次挥手关闭一个连接:
第一次挥手:主动关闭方发送一个FIN并进入FIN_WAIT1状态
第二次挥手:被动关闭方接收到主动关闭方发送的FIN并发送ACK,此时被动关闭方进入CLOSE_WAIT状态;主动关闭方收到被动关闭方的ACK后,进入FIN_WAIT2状态
第三次挥手:被动关闭方发送一个FIN并进入LAST_ACK状态
第四次挥手:主动关闭方收到被动关闭方发送的FIN并发送ACK,此时主动关闭方进入TIME_WAIT状态,经过2MSL时间后关闭连接;被动关闭方收到主动关闭方的ACK后,关闭连接