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

流量控制原理

  • 目的是接收方通过TCP头窗口字段告知发送方本方可接收的最大数据量,用以解决发送速率过快导致接收方不能接收的问题。所以流量控制是点对点控制。

  • TCP是双工协议,双方可以同时通信,所以发送方接收方各自维护一个发送窗和接收窗。

    • 发送窗:用来限制发送方可以发送的数据大小,其中发送窗口的大小由接收端返回的TCP报文段中窗口字段来控制,接收方通过此字段告知发送方自己的缓冲(受系统、硬件等限制)大小。

    • 接收窗:用来标记可以接收的数据大小。

  • TCP是流数据,发送出去的数据流可以被分为以下四部分:已发送且被确认部分 | 已发送未被确认部分 | 未发送但可发送部分 | 不可发送部分,其中发送窗 = 已发送未确认部分 + 未发但可发送部分。接收到的数据流可分为:已接收 | 未接收但准备接收 | 未接收不准备接收。接收窗 = 未接收但准备接收部分。

  • 发送窗内数据只有当接收到接收端某段发送数据的ACK响应时才移动发送窗,左边缘紧贴刚被确认的数据。接收窗也只有接收到数据且最左侧连续时才移动接收窗口。


http://www.kler.cn/a/229457.html

相关文章:

  • Python编程与在线医疗平台数据挖掘与数据应用交互性研究
  • 使用葡萄城+vue实现Excel
  • 智能化植物病害检测:使用深度学习与图像识别技术的应用
  • TiDB常见操作指南:从入门到进阶
  • HarmonyOS NEXT开发进阶(六):HarmonyOS NEXT实现嵌套 H5 及双向通信
  • ssh2详细使用步骤,以及常用方法介绍
  • SSRF漏洞给云服务元数据带来的安全威胁
  • k8s学习(RKE+k8s+rancher2.x)成长系列之简配版环境搭建(二)
  • 基于最新koa的Node.js后端API架构与MVC模式
  • (附源码)基于springboot 毕业生去向统计设计系统-计算机毕设 25559
  • Web 站点的欢迎页面
  • MYSQL performance schema详解
  • zk集群--集群同步
  • 麒麟V10系统下离线安装docker-compose
  • 书客/霍尼韦尔/柏曼大路灯哪款好?多维度真实测评!买对不买贵!
  • c#string方法对比
  • c++之说_10|自定义类型 union 联合体
  • 艺术创作和生活的关系
  • 基于亚马逊云科技新功能:Amazon SageMaker Canvas无代码机器学习—以构建货物的交付状态检测模型实战为例深度剖析以突显其特性
  • Qt 字符串类应用与常用基本数据类型
  • MySQL知识点总结(四)——MVCC
  • 【力扣】罗马数字转整数,哈希集合+模拟
  • Git版本管理工具(基础):这一篇基本能满足Git基本的使用需求了!
  • WiFi 6 和WiFi 6e 的核心要点
  • 谷歌免费开放模糊测试框架OSS-Fuzz(物联网、车联网、供应链安全、C/C++)
  • clickhouse计算前后两点间经纬度距离