计算机网络——21拥塞控制原理

拥塞控制原理

概述

拥塞

  • 非正式的定义:"太多的数据需要网络传输,超过了网络的处理能力"
  • 与流量控制不同
  • 拥塞的表现
    • 分组丢失(路由器缓冲区溢出)
    • 分组经历比较长时间的延迟(在路由器的队列中排队)
  • 网络中前10位的问题

拥塞的原因/代价

场景一:缓冲无限大、无重传

  • 2个发送端,2个接收端
  • 一个路由器,具备无限大的缓冲
  • 输出链路带宽:R
  • 没有重传
  • λ i n λ_{in} λin为输入的速率, λ o u t λ_{out} λout为输出的速率
  • 每个连接的最大吞吐量:R / 2
  • 当进入的速率 λ i n λ_{in} λin接近链路带宽R时,延迟增大

场景二:缓冲有限,有重传

  • 一个路由器,有限的缓冲
  • 分组丢失时,发送端重传
    • 应用层的输入 = 应用层的输出: λ i n = λ o u t λ_{in} = λ_{out} λin=λout
    • 传输层的输入包括重传: λ i n ′ ′ ≥ λ i n λ^{''}{in} \geq λ{in} λin′′≥λin

理想化:发送端有完美的信息

发送端知道什么时候路由器的缓冲是可用的

  • 只在缓冲可用时发送
  • 不会丢失 λ i n ′ = λ i n λ^{'}{in} = λ{in} λin′=λin

理想化:掌握丢失信息

分组可以丢失,在路由器由于缓冲器满而被丢弃

  • 如果发送端知道分组丢失了,发送方重传

现实情况:重复

  • 分组可能丢失,由于缓冲器满而被丢弃
  • 发送端最终超时,发送第二个拷贝,2个分组都被传出

拥塞的"代价"

  • 为了达到一个有效输出,网络需要更多的输入速率(重传)
  • 没有必要的重传(加剧了网络的拥塞),链路中包括了多个分组的拷贝
    • 是那些没有丢失,经历的时间比较长(拥塞状态)但是超时的分组
    • 降低了的"goodput"

场景三:死锁

四个发送端:A→D,D→A,B→C,C→B(就是AD,BC相互连接)

  • 当红色的增加时,所有到来的蓝色分组都在最上方的队列中丢弃了,蓝色吞吐->0
  • 同理,绿色的也可能抢走红色的(在右边的路由器)
  • 粉色的可能抢走绿色的(下边的路由器)
  • 蓝色的抢走粉色的(左边的路由器)
  • 总之,网络中有输入,但是没有输出

又一个拥塞的"代价"

  • 当分组丢失时,任何"关于这个分组的上游传输能力" 都被浪费了

拥塞控制方法

2种常用的拥塞控制方法:

  • 端到端拥塞控制
    • 没有来自网络的显式反馈
    • 端系统根据延迟和丢失事件推断是否有拥塞
    • (TCP采用的方法)
  • 网络辅助的拥塞控制:
    • 路由器提供给端系统以反馈信息
    • 单个bit置位,显示有拥塞 (SNA, DECbit, TCP/IP ECN, ATM)
    • 显式提供发送端可以采用的速率

ATM ABR拥塞控制

ATM网络

ATM:异步传输网络,是物联网掺杂的网络

  • 数据传输单元(分组)是信元:53个字节,5个字节的头部,另外48个字节是数据部
  • 分组很小(53个字节),而且是固定长度
  • 所以在每个交换节点的存储转发时间很小而且可以控制
  • 线路交换在数据交换节点的延迟是1bit的延迟,分组交换的延迟是1个分组的延迟
  • 由于ATM的分组---信元大于1bit,但是远小于普通的一个分组,因此其延迟位于线路交换和分组交换之间
  • 而且延迟时间固定(一位信元字节数固定),而且容易调度
  • 因此具有线路交换和分组交换的特性
  • ATM本来认为是很有希望的网络形式
  • 后来因为网络技术比较复杂并没有流行开来
  • 但是在一些专用网络,比如银行网络使用的还是比较多的

ATM有很多模式,ABR是其中一个

ABR模式

ABR: available bit rate:

  • 弹性服务:
    • 如果网络轻载(不发送拥塞),可以尽可能使用网络带宽
    • 如果网络拥塞了 ,发送方限制其发送的速度到一个 最小保障速率 上

在ATM网络中有两种信元:数据信元(data cell)和资源信元(RM cell)

RM (资源管理) 信元:

  • 由发送端发送,在数据信元中间隔插入
  • RM信元中的比特被交换机设置 (网络辅助)
    • NI bit: no increase in rate (轻微拥塞)速率不要增加了
    • CI bit: congestion indication 拥塞指示(表明已经拥塞了)
  • 发送端发送的RM 信元被接收端返回, 接收端不做任何改变
  • 数据信元中的EFCI bit: 被拥塞的交换机设置成1

    • 如果在管理信元RM前面的数据信元EFCI被设置成了1, 接收端在 返回的RM信元中设置CI bit
    • 在RM信元中的2个字节 ER (explicit rate)字段 多大带宽
  • 拥塞的交换机可能会降低信元中ER的值(但是不会提高)

    • 发送端接受到的RM的ER字段表示路由器可以支持的最低的速率
    • 发送端发送速度因此是最低的可支持速率
相关推荐
l1x1n01 分钟前
网络安全概述:从认知到实践
网络
鄃鳕2 分钟前
HTTP【网络】
网络·网络协议·http
蜡笔小新星14 分钟前
Python Kivy库学习路线
开发语言·网络·经验分享·python·学习
小白爱电脑2 小时前
WIFI网速不够是不是光猫的“路由模式”和“桥接模式”配置错了?
网络·智能路由器·桥接模式
CXDNW2 小时前
【网络篇】计算机网络——应用层详述(笔记)
服务器·笔记·计算机网络·http·web·cdn·dns
qxqxa3 小时前
cfg80211是怎么配置无线设备的AP的?
网络·驱动开发
BeyondESH4 小时前
计算机网络—大端序和小端序
计算机网络
秋夫人4 小时前
http cache-control
网络·网络协议·http
不灭锦鲤6 小时前
ssrf学习(ctfhub靶场)
网络·学习·安全
weixin_548444266 小时前
2024年最新版本神马TV8.5影视APP源码 293TV影视点播系统源码搭建教程 神马TV8.2加强版反编译教程 保姆级小白可搭建 完整版本视频教程
网络