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

TCP/IP(十四)流量控制

一  流量控制

说明: 本文只是'原理'铺垫,没有用'tcpdump+wiresahrk'鲜活的案例讲解,后续'补充'

①   基本概念

流量控制: TCP 通过'接受方实际能接收的数据量'来控制'发送方'的'窗口'大小

②   正常传输过程

背景:1、客户端是'接收方',服务端是'发送方'  --> '下载'2、假设接收窗口和发送'窗口相同',都为 '200'3、假设两个设备在整个'传输过程'中都保持'相同'的窗口大小,'不受'外界'影响''可用'窗口大小 = SND.WND -(SND.NXT - SND.UNA)

'原理'解读

③  操作系统缓冲区与滑动窗口的关系   重点

思考: 操作系统的缓冲区是'如何影响'发送'窗口'和接收'窗口'的呢?

比较常见'能影响'接受方的'可用窗口发生变化'的因素,有'如下'几个:1、接受方的应用程序'没办法'及时读取数据,此时会影响'滑动窗口'大小值2、接受方的'系统资源'非常紧张,操作系统可能'直接减少'可用窗口大小的'缓存'空间+++++++++++++++  "案例1"  +++++++++++++++发送窗口和接收窗口'初始'大小为 '360'  -->  '发送窗口'

根据上图的'流量'控制,说明"案例1"每个过程:

+++++++++++++++  "案例2"  +++++++++++++++

根据上图的'流量'控制,说明"案例2"每个过程:重点:1、TCP 规定是'不允许'同时减少缓存又收缩窗口的;2、而是采用'先收缩'窗口,过段时间'再减少缓存',这样就可以'避免了丢包'情况

④  窗口关闭

1、窗口关闭的'概念'

2、窗口关闭'潜在'的'危险'

3、TCP 是'如何解决窗口关闭'时,潜在的'死锁'现象呢?

⑤  糊涂窗口综合症

1、'概念'

2、糊涂窗口综合症'案例'讲解,考虑'以下'场景:

思考1:怎么让接收方'不通告'小窗口呢? --> '了解即可'

思考2: 怎么让'发送方'避免发送'小数据'呢?

http://www.lryc.cn/news/190080.html

相关文章:

  • CSS网页标题图案和LOGO SEO优化
  • 机器人制作开源方案 | 双轮提升搬运小车
  • 5G安卓核心板-MT6833/MT6853核心板规格参数
  • 信创之国产浪潮电脑+统信UOS操作系统体验4:visual studio code中怎么显示中文
  • Magica Cloth 使用方法笔记
  • c++ 学习之 强制类型转换运算符 const_cast
  • Ceph相关部署应用(博客)
  • 基于 ceph-deploy 部署 Ceph 集群 超详细
  • 做一个物联网的后台程序与数据库设计
  • Pytorch深度学习—FashionMNIST数据集训练
  • uniapp 返回上一步携带参数
  • 软件工程与计算总结(七)需求文档化与验证
  • MySQL锁概述
  • 【Ceph Block Device】块设备挂载使用
  • Arbitrum Stylus 的工作原理
  • nextjs构建服务端渲染,同时使用Material UI进行项目配置
  • Java 使用 Easyexcel 导出大量数据
  • 高效防汛决策:山海鲸可视化系统助力城市防洪
  • 易点云CFO向征:CFO不能只讲故事,价值创造才是核心
  • 【计算机网络】poll | epoll
  • C++设计模式_07_Bridge 桥模式
  • [JAVA版本] Websocket获取B站直播弹幕——基于直播开放平台
  • 第一个 Python 程序
  • 广告牌安全监测,保障户外广告牌的安全与稳定
  • 分类预测 | MATLAB实现KOA-CNN-GRU开普勒算法优化卷积门控循环单元数据分类预测
  • 进来了解实现官网搜索引擎的三种方法
  • OpenCV3-Python(7)模板匹配和霍夫检测
  • [C++11]花括号{}、initializer_list、auto、decltype
  • 在Android平板上使用code-server公网远程Ubuntu服务器编程
  • 宝塔上安装mysql版本比较和区别