当前位置:网站首页>TCP的三次握手、四次断开
TCP的三次握手、四次断开
2022-07-26 22:50:00 【m0_72586049】
TCP的三次握手目的是为了让客户端与服务器建立连接,便于以后一系列的数据传输。
三次握手
第一次握手:客户端向服务器发送一个标识为SYN的一个可连接请求数据包(该包序列号随机产生,即seq number=x),请求与服务器进行连接。
第二次握手:服务器确认接收到客户端发来的SYN报文后,回以自己的SYN报文(seq number=y序列号的一个SYN连接请求包)作为应答,并向客户端发送带有ACK标识的一个应答数据包(ack=y+1)。
第三次握手:客户端接收到服务器发来的SYN+ACK的数据包后,会向服务器发送一个带有ACK标识的确认包(ack=y+1),发送完毕后,客户端与服务器进入ESTABLISHED状态,即连接成功。
四次断开
第一次断开:客户端需要给服务器传输的数据传输完毕后,客户端会向服务器发送一个带有FIN标识的数据包(FIN=1,seq number=x),要求与服务器断开连接。
第二次断开:服务器收到带有FIN标识的数据包后,向客户端回以带有ACK标识的数据包,即ACK报文(ACK=1,ack=x+1),表明服务器已经收到客户端的报文了,此时服务器停止接受连接,即服务器为CLOSE_WAIT状态。
第三次断开:服务器会给客户端发送一个带有FIN标识的数据包(FIN=1,seq number=y) ,并且发送一个带有ACK标识的确认包(ACK=1,ack=x+1)以此来表示服务器需要给客户端传输的数据已经传输完毕,用来停止服务器向客户端发送数据。
第四次断开:客户端收到FIN标识的数据包后,依旧会回以一个ACK标识的报文作为应答(ACK=1,ack=y+1),此时客户端停止接受连接,即客户端为CLOSE_WAIT状态。
边栏推荐
- Lora gateway node converges sensor data
- NAT网络地址转化实验
- Static comprehensive experiment (comprehensive exercise of static route, loopback interface, default route, empty interface, floating static)
- C language - value range of data type and basic data type
- Golang implements TCP chat room
- STM32 introductory tutorial lesson 2
- OSPF protocol overview and basic concepts
- The latest C language introduction and advanced - the most complete and detailed C language tutorial in history!! Section 1 - overview of C language
- OSPF basic experimental configuration
- RISC-V工具链编译笔记
猜你喜欢
随机推荐
Codeforces Round #810 (Div. 2), problem: (B) Party
JUC并发编程
勤写标兵——云小井
Golang中的错误处理
指针得真正奥义!!!
HCIP第一天静态路由综合实验
OSPF protocol overview and basic concepts
About unsafe problems such as fopen and strError encountered in vs2022 or advanced version running environment
TreeSet集合存储元素的问题
STM32 introductory tutorial lesson 2
睡不着时闭眼躺着,到底有没有用?
OSPF configuration in mGRE environment and LSA optimization - reduce the amount of LSA updates (summary, special areas)
Lora通信应用开发
NPM reports an error, error: eperm: operation not permitted, MKDIR
Hcip OSPF knowledge summary
Golang - sync包的使用 (WaitGroup, Once, Mutex, RWMutex, Cond, Pool, Map)
Codeforces Round #796 (Div. 2), problem: (1688C) Manipulating History
JVM面试题(面试必备)
HCIP-第五天-OSPF扩展配置实验
C language - first program, print, variables and constants








