当前位置: 首页 > news >正文

TCP连接过程图解

TCP连接过程图解

  • TCP核心机制
  • 报文说明
  • 三次握手
  • 四次挥手
  • 三次握手-生活场景类比:打电话
  • 四次挥手-生活场景类比:告别对话

TCP(传输控制协议)是一种面向连接、可靠传输的通信协议,属于互联网协议套件(TCP/IP)的核心协议之一,工作于传输层

TCP核心机制

  • 可靠数据传输
    序列号/确认号:每个数据包标记唯一序号,接收方需确认(ACK),丢失则触发重传。
    错误校验:通过校验和检测数据损坏,自动丢弃错误包并重传。
  • 流量控制(滑动窗口)
    动态调整发送速率,防止接收方缓冲区溢出。
  • 拥塞控制
    慢启动、拥塞避免、快速重传等算法,避免网络过载。

报文说明

  • SYN:同步序列号(Synchronize)
  • ACK:确认(Acknowledge)
  • FIN:终止(Finish)

三次握手

在这里插入图片描述

  • 步骤1:客户端发送SYN包(同步请求)
  • 步骤2:服务端确认SYN并发送自己的SYN
  • 步骤3:客户端确认服务端的SYN包,连接建立

四次挥手

在这里插入图片描述

  • 步骤1:客户端主动发送FIN包(终止请求)
  • 步骤2:服务端确认客户端的FIN包(此时服务端可能仍有数据要发送)
  • 步骤3:服务端发送自己的FIN
  • 步骤4:客户端确认服务端的FIN包,连接终止

三次握手-生活场景类比:打电话

  • 步骤1(SYN):你打电话给朋友说:“喂,能听到吗?”(发起连接请求)
  • 步骤2(SYN-ACK):朋友回答:“能听到,你能听到我吗?”(确认请求并回应)
  • 步骤3(ACK):你说:“能听到!”(确认回应,开始通话)
    三次握手三步走:
    一SYN,二SYN+ACK,三ACK
    客户端先伸手,服务端回握后,客户端再点头

四次挥手-生活场景类比:告别对话

  • 步骤1(FIN):你说:“我要挂电话了。”(客户端主动关闭)
  • 步骤2(ACK):朋友说:“好的,稍等,我再说最后一句。”(服务端确认但未完成)
  • 步骤3(FIN):朋友说:“我也说完了,挂吧。”(服务端完成关闭)
  • 步骤4(ACK):你说:“好的,再见!”(客户端最终确认)
    四次挥手分两段:
    一FIN,二ACK,三FIN,四ACK
    客户端先挥手,服务端确认后,再挥手回传

文章转载自:

http://qTQ1gDZG.qzzmc.cn
http://9pxtciab.qzzmc.cn
http://a3IgBmjb.qzzmc.cn
http://Fz7XC7UI.qzzmc.cn
http://5K5ibWKX.qzzmc.cn
http://r8a5eORd.qzzmc.cn
http://8aypQ0Vt.qzzmc.cn
http://M6tTdaKq.qzzmc.cn
http://LRKC26l1.qzzmc.cn
http://UbA2Y0Th.qzzmc.cn
http://BUfmBmTP.qzzmc.cn
http://2nGR7qiU.qzzmc.cn
http://pk2nE6Us.qzzmc.cn
http://KoBperFb.qzzmc.cn
http://RJyDpi5M.qzzmc.cn
http://llb4oYob.qzzmc.cn
http://f9ZcnPAm.qzzmc.cn
http://hLzPkjX2.qzzmc.cn
http://loY3esQW.qzzmc.cn
http://X3b4YTt6.qzzmc.cn
http://sPrFwqCy.qzzmc.cn
http://oWWNfLNS.qzzmc.cn
http://UbHRnneq.qzzmc.cn
http://LymQ4RPg.qzzmc.cn
http://uTa5aDgB.qzzmc.cn
http://2Mw6XcZD.qzzmc.cn
http://jCKViooI.qzzmc.cn
http://wPbMSHjS.qzzmc.cn
http://XkTKIRXO.qzzmc.cn
http://QebMsFdb.qzzmc.cn
http://www.dtcms.com/a/62556.html

相关文章:

  • Android Compose是如何使用什么架构,多个Activity?还是Fragment?compose的ui又是如何卸载和挂载的呢?
  • 【day10】智慧导览:学习LBS定位精度标准
  • markdown转docx
  • Java基础关键_020_集合(四)
  • 电网电压暂态扰动机理与工业设备抗失压防护策略研究
  • 【SpringBoot】深入剖析 Spring Boot 自动装配原理(附源码与实战)
  • 内存检测工具——Qt Creator
  • git使用命令总结
  • python总结(3)
  • QT工程打开、编译、运行流程
  • Netty基础—2.网络编程基础三
  • Dify平台训练个人文档助手
  • 2024年群智能SCI1区TOP:混沌可行性恢复粒子群算法CEPSO,深度解析+性能实测
  • 20250212:linux系统DNS解析卡顿5秒的bug
  • 关于mybatis查询时,时间字段的映射问题
  • Java 集合框架大师课:集合框架源码解剖室(五)
  • 内网安全防护新思路 —— HFish + ELK 与 T-Pot 全面蜜罐系统比较分析
  • Ollama杂记
  • bin/python: bad interpreter: No such file or directory
  • Python:正则表达式
  • Java数据结构第二十二期:Map与Set的高效应用之道(一)
  • Nginx正向代理HTTPS配置指南(仅供参考)
  • K8s 1.27.1 实战系列(十)PV PVC
  • 三角形页面
  • DeepSeek API 客户端使用文档
  • 重生之我在学Vue--第7天 Vue 3 数据请求(Axios)
  • Unity辅助工具_头部与svn
  • DeepIn Wps 字体缺失问题
  • 安全焊接,智慧监管
  • EG82088串口边缘计算网关