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

TCP协议

TCP 协议

TCP 的特点:可靠,支持全双工,连接导向。

TCP 协议就是客户端和服务端传送数据的时候,必须先建立连接。

连接

虚拟抽象的概念。

能让两个通信的程序间确保彼此都在线。

能够加快响应请求速度

连接也被称为会话。

可以使通信更加稳定安全。

连接会消耗更多的资源。

全双工

单工:任何时刻数据都只能单向发送。

半双工:允许数据在两个方向上传输,在某一时刻,只允许数据在一个方向上传输。

全双工:任何时刻都能双向发送数据。

可靠

可靠性要保证数据无损传输。

什么是无损传输?

使无序的数据恢复原有顺序。

多播时每个接收方都获得无损副本。

TCP 的工作过程

建立连接的过程

三次握手

断开连接的过程

四次挥手

传输数据

分为三个阶段:报文拆分,增加 TCP 头,数据重组

报文拆分

应用层数据很大的时候无法一次性传输完。

这时候就将应用层的数据拆分为很多个 TCP 端,然后进行并行传输。

下图是如何保证顺序

为每一个 TCP 端标上序号,到达后进行排序。

如果 TCP 段特别多的时候可以使用时间窗口。一段时间一段时间的排序。

TCP 序号有两种,发送序号和接收序号。

一个端的发送序号是另一个端的接收序号。

TCP 头

TCP 报文段分为 TCP 头部和 TCP 段数据。

TCP 头包括

源端口:发送方机器上的应用。

目标端口:接收方服务器上的应用。

发送序号和接收序号。

TCP 中的标志位有 9 个

SYN:同步序号,在建立连接。

FIN:终止连接。

ACK:响应。

PSH:传送数据。

TCP 的好处

相关文章:

  • 设计模式(3):工厂模式
  • 腾讯 tendis 替代 redis linux安装使用
  • PS之更换背景色
  • Windows下载使用nc(netcat)命令
  • 3-zookeeper之ZAB协议
  • Linux内核err.h文件分析
  • ElasticSearch、java的四大内置函数式接口、Stream流、parallelStream背后的技术、Optional类
  • 【版本控制】git使用指南
  • 【工具类】vscode 常用功能
  • python(一)网络爬取
  • 小程序中使用less
  • Rust编程(四)PackageCrateModule
  • C# EventHander
  • Linux 安装Mysql
  • c++数字和字符串的转化
  • 常用的几个ChatGPT网站,国内可用!
  • 원클릭으로 주류 전자상거래 플랫폼 상품 상세 데이터 수집 및 접속 시연 예제 (한국어판)
  • 版本 23.0.0 , docker 安装 , docker目录迁移正确方法
  • BaseDao增删改查
  • HTTPS
  • 视频丨习近平同普京会谈:共同弘扬正确二战史观,维护联合国权威和地位
  • 北约年度报告渲染所谓“中国核威胁”,国防部回应
  • 港理大研究揭示:塑胶废物潜藏微生物群落或引发生态危机
  • 九部门:对机动车特别是货车排放问题的监管将更加严格
  • 美联储连续第三次维持利率不变,警示关税影响
  • 驱逐行动再加码?特朗普或向利比亚和卢旺达遣送非法移民