TCP/IP的三次握手和四次挥手

TCP/IP的三次握手

三次握手是TCP协议在建立连接时使用的过程,用于确保双方通信的可靠性。其过程如下:

  1. 第一次握手(SYN):

    • 客户端发送一个SYN(同步序列编号)包给服务器,表示希望建立连接。
    • 该数据包包含一个初始序列号(ISN)。
  2. 第二次握手(SYN-ACK):

    • 服务器收到SYN包后,发送一个SYN-ACK包作为响应。
    • 服务器的SYN包也包含它的初始序列号,同时ACK(确认)字段确认客户端的SYN包。
  3. 第三次握手(ACK):

    • 客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,表示确认收到服务器的SYN-ACK包。
    • 连接正式建立,双方可以开始传输数据。

这个三次握手的过程确保了双方都能同步初始序列号并且确认对方的序列号。

TCP/IP的四次挥手

四次挥手是TCP协议在终止连接时使用的过程,确保连接的可靠终止。其过程如下:

  1. 第一次挥手(FIN):

    • 客户端发送一个FIN(终止)包给服务器,表示数据传输完毕,准备关闭连接。
  2. 第二次挥手(ACK):

    • 服务器收到FIN包后,发送一个ACK包作为响应,表示确认收到FIN包。
    • 此时,服务器可能还有未发送完的数据,连接进入半关闭状态。
  3. 第三次挥手(FIN):

    • 服务器发送一个FIN包给客户端,表示数据发送完毕,准备关闭连接。
  4. 第四次挥手(ACK):

    • 客户端收到服务器的FIN包后,发送一个ACK包作为响应,表示确认收到FIN包。
    • 连接正式关闭。

这个四次挥手的过程确保了双方都能完成数据传输,并确认对方已经关闭连接。

相关推荐
无聊的小坏坏1 天前
从单 Reactor 线程池到 OneThreadOneLoop:高性能网络模型的演进
服务器·网络·一个线程一个事件循环
还下着雨ZG1 天前
TCP/IP协议族详细介绍
网络·网络协议·tcp/ip·计算机网络
国服第二切图仔1 天前
Rust开发之Trait 定义通用行为——实现形状面积计算系统
开发语言·网络·rust
蒙奇D索大1 天前
【计算机网络】[特殊字符] 408高频考点 | 数据链路层组帧:从字符计数到违规编码,一文学透四大实现方法
网络·笔记·学习·计算机网络·考研
奋斗的牛马1 天前
OFDM理解
网络·数据库·单片机·嵌入式硬件·fpga开发·信息与通信
忧郁的橙子.1 天前
一、Rabbit MQ 初级
服务器·网络·数据库
q***7481 天前
在Linux系统上使用nmcli命令配置各种网络(有线、无线、vlan、vxlan、路由、网桥等)
linux·服务器·网络
我也要当昏君1 天前
4.1.8 【2022 统考真题】
运维·服务器·网络
記億揺晃着的那天1 天前
WebSocket 通俗讲解
网络·websocket·网络协议·实时通信
无聊的小坏坏1 天前
从 OneThreadOneLoop 线程池到进程池:高性能 Reactor 服务器的演进
服务器·网络·一个进程一个事件循环