【RFC5783 RFC系列中的拥塞控制】(翻译)

原文 https://datatracker.ietf.org/doc/html/rfc5783 Congestion Control in the RFC Series RFC系列中的拥塞控制

本文档是 IRTF 的 Internet 拥塞控制研究组 (ICCRG) 于 2008 年 10 月截取的信息快照。它提供了对 RFC 系列文档中描述的拥塞控制主题的调查。这不会修改或更新所讨论的 RFC 文档的规范或状态。它可以作为研究组未来工作的参考或起点,特别是在指出当前 IETF 标准中的差距或开放问题时。


目录

   1. 简介
   2. 建设文件
   3. TCP拥塞控制
   4. 具有挑战性的链接和路径特征
   5. 终端主机和路由器协同信令
     5.1.显式拥塞通知
     5.2.快速开始
   6.非TCP单播拥塞控制
   7. 组播拥塞控制
   8. 拥塞控制技术开发和分析指南
   9. 历史意义
   10. 安全考虑
   11. 致谢
   12. 参考资料

1. 简介

在本文档中,我们将拥塞控制定义为对数据发送到网络的速率进行基于反馈的调整。拥塞控制是维护互联网稳定不可或缺的一套原则和机制。自 1988 年以来,拥塞控制一直与 TCP 密切相关 [Jac88],但在 TCP 之外也有大量拥塞控制工作(例如,用于实时多媒体应用程序、多播和基于路由器的机制)。在 IETF 中已经产生了几个这样的提案,并作为 RFC 发布,以及提供架构指导的 RFC(例如,通过指出执行某种形式的拥塞控制的重要性)。其中一些机制正在 Internet 中使用。

因此,在设计新的 Internet 传输协议时,重要的是不仅要了解 TCP 中拥塞控制的工作原理,还要对其他拥塞控制 RFC 有更广泛的了解——有些提供指导,有些描述可能具有直接作用的机制。对新设计的协议的影响,其中一些可能只是值得了解的“相关工作”。本文档的目的是通过提供迄今为止已发布的与拥塞控制相关的 RFC 的概述来促进和鼓励这种对知识的搜索。本文档是 IRTF 的 Internet 拥塞控制研究组 (ICCRG) 的产物。之所以开发它,是因为对现有文献的深入了解应该有利于 ICCRG 的进一步工作。 ICCRG 根据审查意见和 ICCRG 邮件列表讨论,在两年的开发期内就本文档的内容达成了共识。本文档的致谢部分包含了主要评审贡献者的列表。

虽然 ICCRG 同意该文件的制作,但所表达的任何意见都是作者自己的,并且由于该文件不是 IETF 出版物,它不会更新或修改任何已发布的 RFC 的状态。本文档的格式类似于带注释的参考书目。尽管讨论了拥塞控制功能的主机和路由器要求,但这只是一个信息性文件,不包含任何正式的标准。

拥塞控制是一个庞大而活跃的话题,因此本文档的范围仅限于已发布的 RFC 和少量当前工作组草案。这使得该文档能够专注于最受支持、最被接受或最广泛使用的拥塞控制原则和机制。在学术文献和互联网草案中也存在对该主题的重大贡献;但是,我们将这些排除在本研究之外。在许多情况下,描述某种机制的 RFC 将包含对介绍该机制的研究和验证的期刊或会议记录中相关学术出版物的引用。例如,RFC 2581 引用了 Jacobson 1988 年的 SIGCOMM 论文,该论文对 RFC 2581 中的某些机制的处理和解释较少,但具有更多的说明性处理和解释。

此处讨论的大多数文档都与基于终端主机的拥塞控制有关。许多基于网络的机制,例如许多队列管理算法,不需要元素之间的任何协议交换,而只是在单个主机或路由器内运行。因此,基于网络的拥塞控制机制通常没有在任何 RFC 中描述,因为它们通常属于不影响互操作性的实现细节领域。

有许多与服务质量 (QoS) 相关的 RFC,尤其是在集成服务和差异化服务框架 [RFC1633] [RFC2475] [RFC2998] 中。这些 QoS RFC 本身值得拥有与本文档为拥塞控制提供的参考书目类似的参考书目。我们特别没有将大量的 QoS 工作包括在本文档的范围内,因为它本身就是一个完整的领域,并且处理的问题大多与终端主机拥塞控制和路由器队列管理正交。尽管 QoS 和拥塞控制机制之间肯定存在交互作用,但用于实现 QoS 的调度机制(在每个流或聚合基础上),例如,可以独立于终端主机拥塞控制和队列管理功能使用也在使用中。类似的论点也适用于流量整形、准入控制和其他旨在用于 QoS 且仅作为拥塞控制旁注的功能。

类似的论点可以排除对整个路径中的链路使用的媒体访问控制 (MAC) 层协议的考虑。尽管 MAC 协议实现了各种形式的共享链路争用解决方案(有时还提供 QoS 服务),但它们也不同于端到端拥塞控制。此外,MAC 协议通常不在 RFC 系列中讨论,但它们在外部文档(例如 IEEE 标准)中定义,因为 IETF 通常不在链路层本身上工作。几乎没有(如果有的话)描述 IP 到各种链路层的映射的 RFC 直接讨论拥塞控制。

为了组织本文档中的主题,内容分为几个大类。首先,我们在第 2 节中列出了与 Internet 体系结构和一般体系结构概念相关的文档。接下来,在第 3 节中讨论了 TCP 传输协议中使用的拥塞控制算法。端到端拥塞控制在第 4 节中介绍。 IETF 开发的一种方法(并在一定程度上部署了)允许基于网络和基于主机的拥塞控制交互而不丢弃数据包是第 4 节的主题5.1.第 6 节描述了除 TCP 之外的单播传输协议使用的拥塞控制算法。第 7 节列出了多播传输和应用程序拥塞控制的工作。第 8 节讨论了为新算法开发人员提供指导的 RFC。最后,具有历史意义但可能不是当前直接技术应用的文档已归入第 9 节。请注意,此处使用的术语“历史”与 IETF 将文档正式分类为“历史”状态无关。

2. 建设文件

本节中的一些文档包含架构指南和关注点,而其他文档则指定了广泛适用的与拥塞控制相关的机制,并且对不止一类拥塞控制技术产生影响。其中一些文档是互联网架构委员会 (IAB) 的直接产品,为互联网中拥塞控制的特定方面提供指导。

RFC 1122:“Internet 主机要求——通信层”(1989 年 10 月)

[RFC1122] 正式要求主机执行拥塞控制。对于 TCP,一些拥塞控制特性被描述并列为符合实现的必需元素,对于 UDP,RFC 1122 将拥塞控制作为更高层协议的一个问题。尽管不再推荐发送和响应 ICMP Source Quench 数据包 [RFC1812] [Gont10],但本 RFC 中的拥塞控制指南的其余部分仍然是 TCP 实现中几种当前实践的基础。

RFC 1812:“IP 版本 4 路由器的要求”(1995 年 6 月)
[RFC1812] 中讨论了许多与路由器行为相关的问题,文档中规定了路由器支持的要求。 RFC 1812 中与拥塞控制特别相关的部分包括路由器不应该发起 ICMP 源抑制消息的指令、排队优先级的讨论,以及标题为“拥塞控制”的第 5.3.6 节建议将缓冲区大小作为产品的功能链路带宽乘以使用链路的流的路径延迟,并建议主动队列管理技术的实施。

RFC 1958:“互联网的架构原则”(1996 年 6 月)

[RFC1958] 中勾画了一些网络系统设计指南,这些指南已被证明对互联网的发展很有用。没有具体提到或暗示拥塞控制,但一般原则适用于拥塞控制。例如,在端节点执行端到端功能、缺乏集中控制、异构性、可扩展性、简单性、避免选项和参数等,都是互联网拥塞控制方案设计和评估中的有效问题。

RFC

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值