LEDBAT

低额外时延后台传输(英語:Low Extra Delay Background Transport,简称LEDBAT)是一种在互联网上快速传输数据同时不拥塞网络的方法。[1]LEDBAT由Stanislav Shalunov发明[2][3]。该技术被蘋果公司用于软件更新,也被BitTorrent协议用于大多数传输[4],它还被微软SCCM软件分发点和Windows“传递优化”技术[5]使用[6]。在2013年,该算法预计被13%–20%的互联网流量使用。[4][7]LEDBAT是一个基于拥塞控制的算法,它在尽可能使用所有可用带宽的同时限制时延的增加;[2][8]其测量单向时延,并根据网络中的LEDBAT流本身的测量结果变化来实现拥塞控制。

设计目标

[编辑]

LEDBAT拥塞控制有如下目标:[2]

  1. 使用所有可用带宽,在没有其他流量时维持低排队时延;
  2. 限制因其他流量增加的排队时延;
  3. 应快速让位给其他共享同一有限链路的标准TCP

实现和部署

[编辑]

两个主要实现是BitTorrent的uTP和苹果公司的TCP部分。BitTorrent使用uTP处理大多数流量,并且代码在开源许可证下可用。苹果公司将LEDBAT用于软件更新,因此Mac OS X计算机和iOS设备的大体积软件下载不会干扰正常的用户活动;苹果公司也已将代码开源。[9]

以上两种实现都旨在将网络排队延时限制在100毫秒。这是标准化协议所允许的最大值。如果其中某个使用较低的值,则在使用时另一个将得不到资源。[2][9]

Windows 10周年更新通过非文档化的套接字选项引入了LEDBAT,作为实验性的Windows TCP拥塞控制模块[10]

例子

[编辑]

假设:

  1. 发送方与接收方的时钟不同步
  2. 发送方以固定速率发送

发送方每10个时钟周期发送5个数据包:10, 20, 30, 40, 50。单位是不重要的。接收方不仅接受此发送方的数据,还接收其他来源的数据。对于这5个被发送的数据包,接收方在下列时钟节点收到数据:112, 135, 176, 250, 326。因此第一阶段发送与接收方的单向时延如下:102, 115, 146, 210, 276。第二阶段(因单向时延改变后):13 (115 - 102), 31, 64, 66。接收方将根据可能在增加的单向时延推断拥塞增加并相应地调整传输速率。

参考资料

[编辑]
  1. ^ 存档副本. [2016-05-14]. (原始内容存档于2014-03-06). 
  2. ^ 2.0 2.1 2.2 2.3 [[rfc:6817|http://tools.ietf.org/html/rfc6817页面存档备份,存于互联网档案馆)]] 引用错误:带有name属性“itef”的<ref>标签用不同内容定义了多次
  3. ^ By Tammy Parker, Open Garden to enable channel bonding over Wi-Fi, 3G and 4G页面存档备份,存于互联网档案馆), December 10, 2012, Retrieved November 24, 2013
  4. ^ 4.0 4.1 This Is How Your BitTorrent Downloads Move So Fast页面存档备份,存于互联网档案馆), July 29, 2013, Retrieved November 24, 2013 引用错误:带有name属性“fastcolabs”的<ref>标签用不同内容定义了多次
  5. ^ 适用于 Windows 10 更新的传递优化. 微软. [2021-01-31]. 
  6. ^ aczechowski. Content management fundamentals - Configuration Manager. docs.microsoft.com. [2019-04-02]. (原始内容存档于2019-09-04) (美国英语). 
  7. ^ By Gabe Stein, Former BitTorrent Engineer Thinks He Can Fix Your Wi-Fi--For Good页面存档备份,存于互联网档案馆), July 24, 2013, Retrieved November 24, 2013
  8. ^ BY ROBERT MCMILLAN, THE INTERNET OF THINGS页面存档备份,存于互联网档案馆), July 21, 2013, Retrieved November 24, 2013
  9. ^ 9.0 9.1 存档副本. [2021-01-31]. (原始内容存档于2018-11-06). 
  10. ^ Microsoft. LEDBAT++: Low priority TCP Congestion Control in Windows (PDF). 2017.