0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

流量控制的作用是什么 浅谈TCP流量控制机制原理

454398 来源:博客园 作者:帅地玩编程 2020-10-29 15:11 次阅读

一、为什么需要流量控制?

双方在通信的时候,发送方的速率与接收方的速率是不一定相等,如果发送方的发送速率太快,会导致接收方处理不过来,这时候接收方只能把处理不过来的数据存在缓存区里(失序的数据包也会被存放在缓存区里)。

如果缓存区满了发送方还在疯狂着发送数据,接收方只能把收到的数据包丢掉,大量的丢包会极大着浪费网络资源,因此,我们需要控制发送方的发送速率,让接收方与发送方处于一种动态平衡才好。

对发送方发送速率的控制,我们称之为流量控制。

二、如何控制?

接收方每次收到数据包,可以在发送确定报文的时候,同时告诉发送方自己的缓存区还剩余多少是空闲的,我们也把缓存区的剩余大小称之为接收窗口大小,用变量win来表示接收窗口的大小。

发送方收到之后,便会调整自己的发送速率,也就是调整自己发送窗口的大小,当发送方收到接收窗口的大小为0时,发送方就会停止发送数据,防止出现大量丢包情况的发生。

三、发送方何时再继续发送数据?

当发送方停止发送数据后,该怎样才能知道自己可以继续发送数据?

我们可以采用这样的策略:当接收方处理好数据,接受窗口 win > 0 时,接收方发个通知报文去通知发送方,告诉他可以继续发送数据了。当发送方收到窗口大于0的报文时,就继续发送数据。

不过这时候可能会遇到一个问题,假如接收方发送的通知报文,由于某种网络原因,这个报文丢失了,这时候就会引发一个问题:接收方发了通知报文后,继续等待发送方发送数据,而发送方则在等待接收方的通知报文,此时双方会陷入一种僵局。

为了解决这种问题,我们采用了另外一种策略:当发送方收到接受窗口 win = 0 时,这时发送方停止发送报文,并且同时开启一个定时器,每隔一段时间就发个测试报文去询问接收方,打听是否可以继续发送数据了,如果可以,接收方就告诉他此时接受窗口的大小;如果接受窗口大小还是为0,则发送方再次刷新启动定时器。

四、一些术语及其注意点说明

1、这里说明下,由于TCP/IP支持全双工传输,因此通信的双方都拥有两个滑动窗口,一个用于接受数据,称之为接收窗口;一个用于发送数据,称之为拥塞窗口(即发送窗口)。指出接受窗口大小的通知我们称之为窗口通告。

2、接收窗口的大小固定吗?

在早期的TCP协议中,接受接受窗口的大小确实是固定的,不过随着网络的快速发展,固定大小的窗口太不灵活了,成为TCP性能瓶颈之一,也就是说,在现在的TCP协议中,接受窗口的大小是根据某种算法动态调整的。

3、接受窗口越大越好吗?

接受窗口如果太小的话,显然这是不行的,这会严重浪费链路利用率,增加丢包率。那是否越大越好呢?答否,当接收窗口达到某个值的时候,再增大的话也不怎么会减少丢包率的了,而且还会更加消耗内存。所以接收窗口的大小必须根据网络环境以及发送发的的拥塞窗口来动态调整。

4、发送窗口和接受窗口相等吗?

接收方在发送确认报文的时候,会告诉发送发自己的接收窗口大小,而发送方的发送窗口会据此来设置自己的发送窗口,但这并不意味着他们就会相等。首先接收方把确认报文发出去的那一刻,就已经在一边处理堆在自己缓存区的数据了,所以一般情况下接收窗口 >= 发送窗口。
编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据包
    +关注

    关注

    0

    文章

    247

    浏览量

    24334
  • 流量控制
    +关注

    关注

    0

    文章

    27

    浏览量

    9639
收藏 人收藏

    评论

    相关推荐

    ATM流量控制器IP核的设计和实现

    机制对当前变长分组骨干网的流量控制还是具有重要的参考价值,所以有必要对ATM的流量控制及其实现方式进行深入的研究。  IP核是一段具有特定电路功能的硬件描述语言代码,该程序与集成电路工艺无关,因而
    发表于 09-27 11:54

    韩国MKP质量流量控制

    韩国MKP质量流量控制器韩国MKP质量流量控制器吴经理 1324.6675.433 /0755-26998458 工作Q:1139878854 地址:深圳市南山区科技园南海大道4050号MKP致力于
    发表于 03-27 16:40

    韩国MKP流量计 VIC-D220质量流量控制

    `韩国MKP质量流量计VIC-D220质量流量控制器MKP质量流量控制器(Mass Flow Controller) 深圳市现代豪方仪器仪表科技有限公司吴经理:135.3421.8343工作Q
    发表于 12-06 15:15

    MKP TSC-D230流量控制

    MKP TSC-D230流量控制器MKP TSC-D230流量控制器供应韩国MKP气体质量流量计吴经理 132.4667.5433 /0755-26998458 工作Q:1139878854 MKP
    发表于 01-15 10:08

    VIC-D145 MKP流量控制

    VIC-D145 MKP流量控制器 VIC-D145 MKP流量控制器供应韩国MKP气体质量流量计--中国总代理吴经理 ***工作Q:1139878854 MKP气体流量计 VIC-D
    发表于 03-10 11:56

    TSM-D210 质量流量控制

    本帖最后由 tine11114 于 2020-3-13 09:10 编辑 代理韩国MKP TSM-D210 质量流量控制器TSM-D210 质量流量控制器吴经理: 132.4667.5433
    发表于 03-11 14:58

    TSC-210质量流量控制

    TSC-210质量流量控制器TSC-210质量流量控制器详询请致电 吴经理: ***工作Q: 1139878854MKP型号质量流量控制器VIC-D210,VIC-D220,VIC-D240
    发表于 07-22 10:36

    什么是数据通信的信息流量控制

    什么是数据通信的信息流量控制 流量控制是网络技术中的一个重要课题,此处以ATM网络为例对流量控制的各个问题进行说明。ATM网络
    发表于 03-18 14:35 721次阅读

    什么是ATM流量控制和拥塞控制

    什么是ATM流量控制和拥塞控制 流量控制是网络技术中的一个重要课题,此处以ATM网络为例对流量控制的各个问题进行说明。ATM网络能够对不同业务
    发表于 04-06 16:04 2739次阅读

    SpaceWire总线的流量控制机制研究

    SpaceWire总线的流量控制机制研究_赵云富
    发表于 01-03 18:00 0次下载

    基于LabVIEW的总流量控制理论的仿真应用

    基于LabVIEW的总流量控制理论的仿真应用
    发表于 02-07 18:01 26次下载

    分组交换网流量控制的类型_分组交换网流量控制的方式

    指网内相邻两节点之间的流量控制,使之维持一个均匀的流量,避免局部地区的阻塞。
    的头像 发表于 09-13 16:45 2719次阅读

    自力式流量控制阀的工作原理_自力式流量控制阀的性能特点

    自力式流量控制阀从结构上说,是一个双阀组合,即由一个手动调节阀组和自动平衡阀组组成。手动调节阀组的作用是设定流量,自动平衡阀组的作用是维持流量
    发表于 01-25 15:38 3758次阅读

    流量控制阀的工作原理

    流量控制阀是在一定压力差下,依靠节流口液阻的改变大小来控制节流口流量,从而调节执行元件的运动速度。主要包括节流阀、调速阀、溢流节流阀和分流集流阀等。 流量控制阀的工作原理: 数显
    的头像 发表于 08-08 21:41 1.4w次阅读

    啤酒机如何实现液体流量控制

    啤酒机是现代家庭和餐饮场所中越来越受欢迎的设备,它可以方便地提供各种风味的啤酒。流量控制是啤酒机制作啤酒过程中的重要环节之一,而流量计则是实现这一控制的关键部件。本文将介绍啤酒机如何通
    的头像 发表于 11-02 14:29 437次阅读
    啤酒机如何实现液体<b class='flag-5'>流量控制</b>