三次握手
第一次握手
建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认
第二次握手
服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态
第三次握手
客服端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
四次挥手
第一次挥手
客户端发送一个fin包(fin = j),用来关闭客户端到服务器的数据传送。
第二次挥手
服务器收到这个fin, 他发回一个ack包 (ack= j+1),确认已经收到客户端发来的syn包
第三次挥手
服务器关闭客户端的连接,发送一个FIN(fin = k)给客户端。
第四次挥手
(4) 客户端发回ack(ack = k+1)确认,关闭服务器的连接
注释
syn:同步序列编号
SYN_SENT:请求连接
ack:是确认字符,在数据通信中,接收站发给发送站的一种传输类[控制字符]。表示发来的数据已确认接收无误。
YN_RECV:是指,服务端被动打开后,接收到了客户端的SYN并且发送了ACK时的状态。
ESTABLISHED:TCP连接成功
网友评论