简述tcp三次握手、四次挥手
2018-01-08 20:33
375 查看
1、建立连接协议(三次握手)
(1) 客户端发送一个带SYN标志的TCP报文到服务器。客户端进入SYN_SEND状态
(2) 服务器端回应客户端的,这个报文同时带ACK标志和SYN标志。此时服务器进入SYN_RECV状态。
因为服务器表示对刚才客户端SYN报文的回应需要用ACK确认,同时自己又要发送SYN给客户端,询问客户端是否准备好进 行数据通讯。
(3) 客户必须再次回应服务段一个ACK报文。到此,客户端,服务器进入ESTABLISHED状态,三次握手完成。
2、连接终止协议(四次挥手)
由于TCP连接是双向的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
(1) 客户端发送一个FIN,用来关闭客户到服务器的数据传送。客户端进入FIN_WAIT_1
(2) 服务器收到这个FIN,它返回一个ACK,确认序号为收到的序号加1。服务器进入CLOSE_WAIT
(3) 服务器关闭客户端的连接,发送一个FIN给客户端。客户端进入FIN_WAI_2、服务器进入LAST_ACK
(4) 客户段返回ACK报文确认,并将确认序号为收到序号加1。客户端进入TIME_WAIT。
3、然后服务器的tcp端口进入LISTEN状态,等待客户端的新一次连接
(1) 客户端发送一个带SYN标志的TCP报文到服务器。客户端进入SYN_SEND状态
(2) 服务器端回应客户端的,这个报文同时带ACK标志和SYN标志。此时服务器进入SYN_RECV状态。
因为服务器表示对刚才客户端SYN报文的回应需要用ACK确认,同时自己又要发送SYN给客户端,询问客户端是否准备好进 行数据通讯。
(3) 客户必须再次回应服务段一个ACK报文。到此,客户端,服务器进入ESTABLISHED状态,三次握手完成。
2、连接终止协议(四次挥手)
由于TCP连接是双向的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
(1) 客户端发送一个FIN,用来关闭客户到服务器的数据传送。客户端进入FIN_WAIT_1
(2) 服务器收到这个FIN,它返回一个ACK,确认序号为收到的序号加1。服务器进入CLOSE_WAIT
(3) 服务器关闭客户端的连接,发送一个FIN给客户端。客户端进入FIN_WAI_2、服务器进入LAST_ACK
(4) 客户段返回ACK报文确认,并将确认序号为收到序号加1。客户端进入TIME_WAIT。
3、然后服务器的tcp端口进入LISTEN状态,等待客户端的新一次连接
相关文章推荐
- 简述TCP三次握手和四次挥手过程
- 简述TCP连接的建立与释放(三次握手、四次挥手)
- 简述TCP连接的建立与释放(三次握手、四次挥手)
- 简述TCP协议的六个标志位和三次握手与四次挥手的过程及原理
- TCP 三次握手 四次挥手
- TCP三次握手(建立连接)/四次挥手(关闭连接)详解带图
- TCP协议中的三次握手和四次挥手(图解)
- TCP协议中的三次握手和四次挥手
- TCP---三次握手和四次挥手
- TCP的三次握手(建立连接)和四次挥手(关闭连接)
- TCP 协议的三次握手和四次挥手
- TCP的三次握手(建立连接)和四次挥手(关闭连接)
- TCP常见的定时器及三次握手与四次挥手
- TCP的三次握手和四次挥手
- [置顶] TCP的三次握手和四次挥手
- TCP协议中的三次握手和四次挥手(图解)
- TCP/IP中的三次握手和四次挥手
- TCP协议三次握手四次挥手过程
- TCP之三次握手和四次挥手的解析
- TCP的基本概念三次握手,四次挥手