TCP协议中终止一个连接需要四次握手,建立一个连接则需要三次握手
建立连接:
1.第一次握手:客户端发送SYN(SYN=J)(注:syn为同步包)到服务器,并且进入
SYN_SEND状态,等待服务器确认;
2.第二次握手:服务器受到SYN,必须确认客户的SYN(ACK=J+1),同时自己也产生一个SYN包(SYN=K),即SYN+ACK,此时服务器进入
SYN_RECV状态;
3.第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=K+1),此包发送完毕,客户端和服务器进入
ESTABLISHED状态,完成三次握手
完成三次握手后,客户端与服务器就开始通信
1.客户端向服务器端发送一个SYN置位的TCP报文,包括客户端使用的端口号和初始序列号x;
2.服务器端收到客户端发送过来的SYN报文后,向客户端发送一个SYN和ACK都置位的TCP报文,包括确认号x+1和服务器的序列号y;
3.客户端接收到服务器端返回的SYN+ACK报文后,向服务器端返回一个确认号y+1和序号x+1的ACK报文,一个标准的TCP连接完成。