【计网】TCP的三次握手四次挥手

🍎个人博客:个人主页

🏆个人专栏:JAVA

⛳️ 功不唐捐,玉汝于成


目录

前言

正文

[三次握手(Connection Establishment)](#三次握手(Connection Establishment))

[四次挥手(Connection Termination)](#四次挥手(Connection Termination))

结语

我的其他博客


前言

TCP的三次握手和四次挥手是保障网络通信可靠性的关键步骤。通过三次握手,建立了双方的连接,确保双方能够准备好发送和接收数据;通过四次挥手,优雅地关闭了连接,避免数据丢失和不必要的资源浪费。理解这些握手和挥手过程对于网络通信的正确性和可靠性至关重要。

正文

TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层协议。在TCP连接的建立和断开过程中,使用了三次握手和四次挥手的机制。

三次握手(Connection Establishment)
  1. 第一次握手(SYN):

    • 客户端发送一个TCP报文,其中设置SYN标志位为1,表示请求建立连接。
    • 客户端选择一个初始序列号(ISN),用来标识报文段的顺序。
  2. 第二次握手(SYN + ACK):

    • 服务器收到客户端的SYN后,发送一个带有SYN和ACK标志位的报文作为响应。
    • 服务器也选择一个初始序列号(ISN),并将其加1,然后将客户端的ISN作为ACK的确认号。
  3. 第三次握手(ACK):

    • 客户端收到服务器的SYN + ACK后,发送一个带有ACK标志位的报文。
    • 客户端的序列号加1,而确认号为服务器的序列号加1,表示连接建立。

此时,TCP连接已经建立,双方可以开始进行数据传输。

四次挥手(Connection Termination)
  1. 第一次挥手(FIN):

    • 当客户端或服务器决定要断开连接时,发送一个带有FIN标志位的报文,表示不再发送数据。
  2. 第二次挥手(ACK):

    • 接收到FIN的一方发送一个带有ACK标志位的报文,确认收到断开请求。
  3. 第三次挥手(FIN):

    • 如果接收到FIN的一方也希望断开连接,它也发送一个带有FIN标志位的报文。
  4. 第四次挥手(ACK):

    • 接收到第三次挥手的一方发送一个带有ACK标志位的报文,表示确认收到对方的断开请求。

经过这四个步骤,双方的连接就被断开了。三次握手和四次挥手的过程是为了确保数据的可靠传输和连接的正常断开。在挥手过程中,每个方向的关闭都需要经过两个阶段,即发送方发送FIN和接收方发送ACK。

结语

在网络通信中,TCP的三次握手和四次挥手是保证数据传输可靠性和网络连接资源的合理利用的基础。通过深入理解这些过程,我们能更好地设计和管理网络通信,确保数据安全、稳定和高效传输。

我的其他博客

【MySQL】数据库规范化的三大法则 --- 一探范式设计原则-CSDN博客

【JAVA】线程的run()和start()有什么区别?-CSDN博客

【日常聊聊】程序员必备的面试技巧:如何在面试战场上脱颖而出-CSDN博客

【JAVA】Java8开始ConcurrentHashMap,为什么舍弃分段锁-CSDN博客

【JAVA】怎么确保一个集合不能被修改-CSDN博客

【Web开发】会话管理与无 Cookie 环境下的实现策略-CSDN博客

【Mybatis】Mybatis如何防止sql注入-CSDN博客

【软件工程】航行敏捷之路:深度解析Scrum框架的精髓-CSDN博客

【Spring】理解IoC与AOP:构建灵活而模块化的软件架构-CSDN博客

相关推荐
楚韵天工7 小时前
宠物服务平台(程序+文档)
java·网络·数据库·spring cloud·编辑器·intellij-idea·宠物
疯狂吧小飞牛8 小时前
ip rule 策略路由
linux·网络·tcp/ip·运维开发
stark张宇9 小时前
网络排错全流程:从DNS解析到防火墙,逐层拆解常见问题
linux·网络协议·dns
hour_go9 小时前
TCP/IP协议相关知识点
网络·笔记·网络协议·tcp/ip
Arva .10 小时前
WebSocket实现网站点赞通知
网络·websocket·网络协议
雪兽软件10 小时前
SaaS 安全是什么以及如何管理风险
网络·安全
纸带10 小时前
USB -- SET_ADDRESS or --SET_ADDRESS or --SET_CONFIGURATION or --SET_INTERFACE
网络
white-persist10 小时前
CSRF 漏洞全解析:从原理到实战
网络·python·安全·web安全·网络安全·系统安全·csrf
嫄码10 小时前
TCP/IP 四层模型
网络·网络协议·tcp/ip
游戏开发爱好者810 小时前
FTP 抓包分析实战,命令、被动主动模式要点、FTPS 与 SFTP 区别及真机取证流程
运维·服务器·网络·ios·小程序·uni-app·iphone