运维开发网

JavaWeb_Tcp三次握手和四次挥手

运维开发网 https://www.qedev.com 2020-01-26 03:01 出处:网络 作者:小西几
TCP三次握手和四次挥手

一、TCP传输的过程

1.建立连接并确认连接(三次握手)

JavaWeb_Tcp三次握手和四次挥手

过程:

(1)客户端向服务端发出连接请求SYN,等待服务端响应

(2)服务端做出响应ACK和连接信号SYN

(3)为防止数据丢失,客户端也要做出响应ACK,确认是否有效

2 .进行数据传输,发送数据包

JavaWeb_Tcp三次握手和四次挥手

数据传输总是从 客户端---》服务端,因此客户端和服务端不是固定的。

3.关闭连接(四次挥手):

JavaWeb_Tcp三次握手和四次挥手

1.(客户端:终止等待1)客户端向服务端发起关闭连接的请求,不再发送数据了,但如果服务器发送数据,客户端还要接收

2.(服务端:关闭等待)服务端可能还有数据为传输完毕,所以还无法完成关闭。所以先响应客户端ACK,,表示收到关闭请求。客户端向服务器的方向释放,整个处于半关闭状态

3.(客户端:终止等待2)客户端收到服务器的确认请求后,客户端进入终止等待2,等待服务端发送连接释放报文

4.(服务端:最后确认)等服务器的数据传输工作完成,就把FIN信号(连接释放报文)发送给客户端,可能还会发送一些数据

5.(客户端:时间等待)客户端收到服务器的连接释放报文。发出确认ACK

6.(服务端:CLOSED)服务端收到客户端的确认,立即进入CLOSED状态

7.服务器结束TCP连接的时间比客户端早

0

精彩评论

暂无评论...
验证码 换一张
取 消