RFC 2914

发表于 4年以前  | 总阅读数:1135 次
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:kenen(kenen  pihongliang@eyou.com)
译文发布时间:2001-4-15
版权:本翻译文档可以用于非商业用途自由转载,但必须保留本文档的翻译及组织信息。


Network Working Group                                         S. Floyd
Request for Comments: 2914                                       ACIRI
BCP: 41                                                 September 2000
Category: Best Current Practice



拥塞控制原理
(RFC2914   Internet RFC/STD/FYI/BCP Archives)


本备忘录的状态
本文档讲述了一种Internet社区的Internet最优通用的实例,它需要进一步进行讨论和建议以得到改进。本备忘录的发布不受任何限制。
版权声明
   Copyright (C) The Internet Society (2000).  All Rights Reserved.

摘要
本文档的目的是解释Internet中的拥塞控制的必要性和讨论什么构成了正确的拥塞控制。目标之一是阐释忽视运用合适的拥塞控制的危险,目标之二是讨论IETF(Internet Engineering Task Force, Internet工程任务组)在新的拥塞控制协议标准化方面的作用。






















							目录
1介绍..........................................................................2
2拥塞控制的当前标准............................................................2
3端到端拥塞控制的发展..........................................................3
3.1防止网络因拥塞而崩溃......................................................3
3.2公平性..................................................................3
3.3关于吞吐量,延迟,丢失的性能优化.....................................4
4标准处理的作用...................................................................4
	4.1新的传输协议的发展....................................................4
	4.2影响拥塞控制的应用层问题.............................................5
	4.3标准化进程的新发展....................................................5
5 拥塞崩溃的描述..................................................................5
6端到端的拥塞控制的构成..........................................................6
	6.1避免拥塞崩溃的端到端的拥塞控制.......................................6
	6.2为了TCP公平性的端到端的拥塞控制....................................7
7.致谢...............................................................................7
8.参考资料..........................................................................7
9.TCP要说明的问题.....................................................................9
	9.1慢启动..................................................................9
9.2加法式的增加,乘法式的降低............................................9
9.3重传定时器..............................................................9
9.4快速重传和快速修复.....................................................9
9.5TCP拥塞控制的其它方面...................................................10
10安全考虑........................................................................ 10



1.介绍
本文档很大程度上采纳了早期RFCs文档,在某些地方对早期的文档[RFC2309,RFC2357]从整体上作了重新改写.我们还借助了旨于端到端的拥塞控制需求[参见FF99]的参考资料.

2.拥塞控制的当前标准
端到端拥塞控制的IETF标准关注的方面包括集中在特定的协议(例如TCP协议[RFC2581],可靠的多点传送协议 [RFC2357]);终端节点和路由器之间的拥塞信息(例如明确的拥塞通告[RFC2481])交换的句法和语义;不同服务的服务质量的期望值。端到端的拥塞控制的作用也在一个关于“Internet中的队列管理和避免拥塞的建议”[参见RFC2309]的RFC报告中进行了讨论。RFC2309提出了在路由器中活跃的队列管理机制的配置和对路由器机制设计的延续来处理对拥塞通告无回应的流。我们能够轻松地从RFC2309中借用一些端到端的拥塞控制的概括性的讨论。
与上面提到的RFCs资料相比,本文档对拥塞控制的原理进行更一般性的讨论。Internet成功的一个关键因素就是TCP协议的避免拥塞机制。当前TCP协议在Internet中仍然是占主导地位的传输协议,但它不是适用于任何地方,有越来越多的应用由于某种原因没有选择使用TCP协议。通信不仅包括多点传送通信,而且包括单点传送通信,诸如不需要可靠性的流化的多媒体,以及包括象DNS(Domain Name Server域名服务器)或路由信息的通信,它们带有被认为对网络运行至关重要的短信息。许多通信并不使用任何形式的预留带宽或端到端拥塞控制。为了保持最优传输量,端到端的拥塞控制的继续使用对保持Internet的稳定至关重要。
本文档也讨论IETF在新的拥塞控制协议标准化中的一般作用。对于区别性服务和集成性服务的拥塞控制的讨论在本文档中不涉及。集成性或区别性服务能够保证端到端的网络带宽,所以不需要端到端的拥塞控制机制。


3. 端到端拥塞控制的发展

3.1防止网络因拥塞而崩溃
Internet协议体系是基于使用IP协议实现无连接的端到端的包交换服务。无连接设计的优势灵活和健壮已经被充分的证实了。然而这些优势并不是没有代价的:在高负载情况下提供优质服务需要更仔细的设计。实际上,不重视动态包交换会导致严重的服务降级或“Internet熔化“。这个现象首先被观察到是在1980年中叶网络的早期发展阶段[参见RFC896],在技术上称之为”拥塞崩溃“。TCP的最初说明[参见RFC793]包括基于窗口的流控制,它作为接受方管理发送方发送数据的方式。流控制被用来防止接受方可用的数据缓冲空间的溢出。[RFC793]报告指出由于错误或网络拥塞,响应拥塞的流控制窗口不进行动态的调整,数据段可能丢失。  
Van Jacobson提出了对“Internet熔化”的初始修补。1986年初,Jacobson开发了现在在TCP应用[参见Jacobson88,RFC2581]中的避免拥塞机制。运行在主机中的这些机制使得TCP连接在拥塞时回退,象我们所说的TCP流对网络中的拥塞信号进行响应(例如“丢弃包”)。正是这些TCP避免拥塞算法防止了今天网络的拥塞崩溃。
然而,故事还没有结束。自从1988年以来对动态网络进行了大量的研究工作,Internet也迅猛发展。TCP协议避免拥塞的机制[参见RFC2581],虽然十分必要和功能强大,但是要在所有情况下提供优质服务还显得不足。另外,在新的拥塞控制机制[参见RFC2357]的发展中,基于路由器的机制正在终端节点的避免拥塞机制的应用中发展。
由于流不使用端到端的拥塞控制,需要提出来的一个重要问题,就是未来网络拥塞崩溃的
潜力问题。1984年,RFC896建议网关应该监测和压制主机的错误行为:对错误响应ICMP源结束信息,而这个信息应该被认为是一个网关断开与主机连接的行为。检测这些错误不是毫无价值的,对未来的研究是一个很有价值的领域。当前的论文仍然建议正在应用的路由器检测和处罚流对于端到端的拥塞控制[参见FF99]是可以接受的。

3.2公平性
在关注拥塞崩溃之外,我们可以再看看尽最大努力通信的公平性。因为在拥塞时TCP回退,在同样状况的流之间带宽合理公正的共享,大量的TCP连接能够共享一个单独的拥塞连接。流之间带宽公正的共享依靠所有的流都运行兼容的拥塞控制算法。对于TCP协议,这意味着拥塞控制算法构成了当前TCP的说明[参见RFC793, RFC1122,RFC2581].
	在相互竞争的流之间的公平问题变得越来越重要由于下面几个原因:第一,由于使用窗口缩放[参见RFC1323]单个的TCPs即使在高传输延迟的通路上都能使用高带宽。第二,随着网络的发展,网络用户希望高带宽和低延迟的通信,而不是在后台的一个大文件的传输。不使用TCP的尽最大努力通信的发展强调拥塞时通信竞争时的公平性。
Internet的普及带来了TCP应用的增长,其中有一些因为缺少工具[参见RFC2525]而不能正确的应用TCP避免拥塞机制。其它一些可能特意应用避免拥塞算法,它们在带宽的使用方面比TCP应用更有利。这使得开发商能够提出一个“快速TCP”。这个应用的逻辑结果将是TCP应用的盘旋上升或者传输协议的增加,回到没有有效的避免拥塞和网络持续的拥塞的状况。
有一个著名的方法,不改变传输协议,改变粒度的层次而达到更有效的性能。如同过去对一些WEB浏览器的做法,对同一个地方开放多个连接。这样,有效传输协议不是盘旋上升,相反,带来的是有效的WEB浏览器的盘旋上升或者有效的应用的增加。
这使得合适的“流”的粒度的问题的出现,我们定义‘流’为对于兼顾公平和拥塞控制的应用比较适合的粒度的层次。RFC2309的有一些自然的回答:(1)一个TCP或UDP连接(源地址/端口,目的地址/端口);(2)一个源/目的主机对;(3)一个给定的源主机或一个给定的目的主机。我们认为源/目的主机对提供了在许多情况下最合适的粒度。拥塞控制的流的粒度,至少部分上,是需要被更广泛的IETF社团接受的政策问题。
再回到RFC2309,我们使用术语“TCP兼容”描述在拥塞情况下行动的流如同产生于确认TCP的流。一个TCP兼容的流响应拥塞通告,并且能够在可比的条件下(丢弃率,RTT,MTU等),稳定地使用和确认的TCP相同的带宽。
很方便的把流分为三类:(1)TCP兼容流,(2)无响应流,例如当拥塞发生时不减慢的流,(3)响应但不是TCP兼容的流。后面两类包含对网络性能极其重要的更有效的流,我们下面将要讨论。
除了稳定状态的公平性,初始的慢启动的公平性也是一个关注点,还有一个很有效的慢启动过程的流对其它流的短暂影响,慢启动的性能对于许多短期只有少量数据传输的流特别重要。

3.3关于吞吐量,延迟,丢失的性能优化
除了防止拥塞崩溃和关注公平性,使用端到端拥塞控制的流的第三个理由是它自身的吞吐量,延迟和丢失的性能优化。在某些情况下,例如在高统计的多路技术的环境下,一个流的延迟和丢失大部分独立于自身的发送速率。然而,在低统计多路技术或单个流调度的环境下,一个流的延迟和丢失部分上与流自身的发送速率有关。因此,一个流能使用端到端拥塞控制来限制自身的包的延迟和丢失。然而我们注意到,在象当前的尽最大努力通信的网络环境下,关于拥塞崩溃和流之间竞争的公平性的关注限制了对流来说有用的拥塞控制行为的范围。

4.标准处理的作用
传输协议的标准化不仅包括能够影响互操作性(例如终节点的信息交换)的协议的标准化,而且包括对性能(例如在TCP中,由于包的丢失而减少拥塞窗口)至关重要的机制的标准化。同时,特定应用的细节和传输协议的其它方面,不影响互操作,也不影响性能,就不需要标准化。TCP不需要标准化的区域包括快速重传[参见 RFC2582]之后TCP的快速修复过程的细节。附录使用TCP的实例来更详细的讨论在拥塞控制发展中的标准进程的作用。

4.1新的传输协议的发展
除了关注拥塞崩溃的危险,新的传输协议的标准化进程注重在竞争协议中避免拥塞控制的‘军备竞赛’。举个例子,在RFC2357中,TSV区域指挥者和高级职员勾划出了关于可靠的多路传输协议的网络草案的RFC资料的准则。从[RFC2357]看到:“一个IETF的特别关注是在网络拥塞时可靠多路的通信对其它通信的影响,尤其是在TCP通信的竞争中可靠多路通信的影响...IETF面临的挑战是鼓励可靠多路技术的研究和应用,使得可靠多路技术的应用需求能尽可能快的被满足,同时保护网络免于由于不正确的可靠多路机制的广泛应用带来的拥塞灾难或崩溃。“
关于新的可靠多路传输协议的RFC资料的技术准则包括:“是否有拥塞控制机制?它是如何执行的?它何时无效?注意网络中比TCP更有效的拥塞控制机制面临并不威胁网络稳定的许多负担。
期望在通信竞争中的新的传输协议的效果将不仅应用于可靠的多路协议,而且同样应用于不可靠的单路、可靠的单路和不可靠的多路通信量中。这是很合理的。

4.2影响拥塞控制的应用层问题
一个浏览器对相同的目的地址打开多个连接的问题可以在RFC2626中找到,RFC2616在8.1.4节中说明“使用不间断的连接的客户机应该限制它们同时保持与给定的服务器连接的数量。单用户客户机不应该保持多于2个与任何服务器或代理的连接。”

4.3标准化进程的新发展
IETF能够影响拥塞控制的进展,其最明显的发展集成和区分服务[参见RFC2212,RFC2475]和明确的拥塞通告[参见RFC2481]。然而,其它戏剧性的发展同样可能影响拥塞控制。
已经在努力构建终节点拥塞管理[参见BS00]来使得一个发送方的多个并发流到达相同的接受方来共享拥塞控制状态。通过允许对同一个目的多个连接在端到端的拥塞控制过程中作为一个流,拥塞管理者能够允许单个慢启动的连接利用先前端到端路径的拥塞状态信息。进一步,拥塞管理者能够去除在相同源/目的对中打开的多个流的拥塞控制危险,能够用来允许一个浏览器同时开放对同一个目的的多个连接。

5. 拥塞崩溃的描述
这部分讨论非传递的包的拥塞崩溃的某些细节,并且说明非响应流如何有助于网络拥塞崩溃。这部分采用了[FF99]的资料。
一般说,拥塞崩溃发生在网络负载的增加导致网络效率的降低的时候。第三部分已经讨论过,拥塞崩溃最先在1980年中叶[RFC896]提出,主要由于TCP连接的不必要的重传那些正在传送或已经被接收方接收了的数据包。我们称不必要的重传数据包而引起的拥塞崩溃为典型的拥塞崩溃。典型的拥塞崩溃是导致吞吐量只是正常情况下的一小部分的稳定状况[参见RFC896]. 典型的拥塞崩溃的问题已经通过定时器和在现代TCP[参见Jacobson88]的应用中的拥塞控制机制的改进基本得到解决。	
第二种形式潜在的拥塞崩溃由于非传递的数据包而发生。当网络传送的数据包在到达最终目的地之前被丢弃而导致带宽被浪费的时候就会出现由于非传递的数据包而发生拥塞崩溃。由于拥塞连接的部分带宽用来可再生性的工作,不同的设定可能有不同程度的拥塞崩溃。非传递数据包的拥塞崩溃的危险基本上是由于开路循环应用的增加的配置没有使用端到端拥塞控制。甚至更多的破坏将是尽最大努力通信的应用通过增加发送率来增加包的丢弃率(例如自动使用FEC增加的层次)。
表1给出了在数据包未到达目的地却很少带宽浪费情况下非传送数据包的拥塞崩溃的在某个设定下的结果。这个模拟设定在三个TCP流和一个UDP流在一个1.5Mbps的链路上竞争。所有节点的存取连接是10Mbps而UDP流的接收方的存取连接是128Kbps,只有共享带宽的9%。当UDP源速率超过128Kbps,大多数UDP包将在最终连接的输出端口丢弃。
         到达      UDP     TCP      总计
         比率    正常输出  正常输出  正常输出
---------------------------------------------------------
         0.7       0.7      98.5      99.2
         1.8       1.7      97.3      99.1
         2.6       2.6      96.0      98.6
         5.3       5.2      92.7      97.9
         8.8       8.4      87.1      95.5
        10.5       8.4      84.8      93.2  (续)
       (续)
13.1       8.4      81.4      89.8
        17.5       8.4      77.3      85.7
        26.3       8.4      64.5      72.8
        52.6       8.4      38.1      46.4
        58.4       8.4      32.8      41.2
        65.7       8.4      28.5      36.8
        75.1       8.4      19.7      28.1
        87.6       8.4      11.3      19.7
       105.2       8.4       3.4      11.8
       131.5       8.4       2.4      10.7

表1 三个TCP流和一个UDP流的模拟
表1显示在拥塞的1,5Mbps链路上发送方的UDP的到达率,UDP的正常输出(定义为传输到接收方的带宽),TCP正常输出(定义为传输到TCP接收方的带宽),和总计正常输出。每个比率作为拥塞链路的带宽的一部分。随着UDP源比率的增加,TCP的正常输出直线下降,UDP的正常输出几乎保持不变。因此,随着UDP数据流增加它的负载,只是影响TCP和总计的正常输出。在拥塞链路上,UDP流极其浪费本应属于TCP流的带宽,从整体上使得网络的正常输出降低到拥塞链路的带宽的一小部分。
表1 的模拟阐释了不公平性和拥塞崩溃。[FF99]中谈到兼容拥塞控制不是提供公平性的唯一方法,在拥塞的路由器中单流调度也是保证公平性的可选机制。然而,[FF99]谈到单流调度不能防止拥塞崩溃。
消除非传递数据包的拥塞崩溃的危险有两个可选的方法。第一个方法是终端节点使用有效的端到端的拥塞控制。更为特殊的是,需要一个流避免在路径的第一个拥塞连接的下端出现严重的丢失现象。(这里,我们将考虑一个拥塞链路,链路上的任何流正在被链路上其它通信使用的带宽。)假定一个终端节点不能区别一个拥塞链路的路径和一个多个拥塞链路的路径,对于一个流避免在路径的拥塞连接的下端出现严重的丢失现象,最可靠的方法是使用端到端的拥塞控制,减少发送方现在丢失的发送比率。
第二个方法是保证网络中拥塞链路上的数据包将被传送到接收方[参见RFC2212, RFC2475]。我们注意到在第一个端到端的拥塞控制方法和第二个端到端的带宽保证方法之间选择不是一个或者这个或者那个的问题,一些通信使用端到端的拥塞控制和其余通信使用端到端的带宽保证能够防止拥塞崩溃。

6. 端到端的拥塞控制的构成
本文档已经讨论了拥塞控制新的构成中拥塞崩溃和TCP公平性。然而,这不意味着拥塞崩溃和TCP的公平性对所有的在基于TCP通过折半减少发送速率来响应每个包的丢失的“加法增加乘法递减算法”的情况下尽最大努力的通信配置拥塞控制都有必要。这部分单独讨论拥塞崩溃和TCP公平性两个方面的关联。

6.1避免拥塞崩溃的端到端的拥塞控制
非传递数据包的拥塞崩溃的避免需要流避免在链路的下端设定高的发送率,多拥塞链路和持续的高包丢弃率。因为引起拥塞崩溃的由浪费带宽的数据包组成的非传递数据包只在链路下端被丢弃,所以这种拥塞崩溃不可能在每个流只在一个拥塞连接上通过或者只有一小部分数据包在第一个拥塞链路的下端被丢弃的环境下出现。因此,任何形式的拥塞控制成功地在现存的对于避免非传递数据包的拥塞崩溃应该有足够的包丢弃率的情况下避免高的发送速率。
我们将注意到附加的对IP体系结构的明确拥塞通告不会去除尽最大可能的通信的拥塞崩溃危险。明确拥塞通告允许路由器在包的头部设置一位作为终节点的拥塞的标记,不强制性的依赖于以包的丢弃来标记拥塞。然而,通过明确拥塞通告,包的标记将在适中的拥塞中取代包的丢弃。特别情况下,当拥塞非常严重,并且路由器的缓存溢出时路由器只有丢弃达到的包。

6.2为了TCP公平性的端到端的拥塞控制
	在[RFC2357]中,TCP的公平性对可行的在尽可能传送的通信中的端到端的拥塞控制机制的范围有重要但不削弱的局限。在所有拥塞链路上的单流调度环境将使流彼此孤立,并且消除拥塞控制机制成为TCP兼容的需要。在区别性的服务的环境下,流标记为某一特定服务类别,允许在拥塞控制不需要成为TCP兼容的通信中一个完整的服务类别的出现。
类似的,一个有价格限制的环境,或者一个有价格范例的不同的服务类别能够替代对TCP的公平性的关注。然而,对于当前的网络环境,其它的尽最大努力传输的通信能够在先进先出的队列中与TCP通信相竞争,TCP由于没有公平性会导致在高拥塞的情况下一个流会‘饿死’另外一个流,这个问题已经在表1中阐述了。
	然而TCP兼容拥塞控制过程的列表不局限于使用与TCP相同的增加/减少参数的“加法式增加/乘法式减少“算法。其它的TCP兼容拥塞控制过程包括基于速率的“加法式增加/乘法式减少“变量;有不同但却保证同样稳定状态的增加/减少参数的“加法式增加/乘法式减少“算法;基于平衡的拥塞控制,发送方通过调整发送速率来响应长期的包丢失的信息;接收方从分层多路技术组提交和不提交的分层多路技术;还有可能我们没有考虑的其它形式。
7.致谢
本文档的许多资料直接取自RFC关于端到端拥塞控制。这里试图对这些年来许多人讨论出来的思想作个总结。尤其感谢“终端到终端研究"工作组,“可靠多路研究“工作组和传输领域指导委员会的成员。本文档也受益于传输领域工作组的讨论和反馈。特别感谢Mark Allman对本文档的早期版本的意见。

8.参考资料
[BS00]      Balakrishnan H. and S. Seshan, "拥塞管理",
                Work in Progress.

[DMKM00]  Dawkins, S., Montenegro, G., Kojo, M. and V. Magret,
                "慢速链路的端到端的性能关联",
                Work in Progress.
    
[FF99]      Floyd, S. and K. Fall, "在网络中促进使用端到端的拥塞控制", IEEE/ACM
                ransactions on Networking, August 1999.  URL
                http://www.aciri.org/floyd/end2end-paper.html

[HPF00]      Handley, M., Padhye, J. and S. Floyd, "TCP拥塞的窗口有效性", RFC 2861,         June 2000.

[Jacobson88]  V. Jacobson, 拥塞的避免和控制, ACM SIGCOMM '88, August 1988.

[RFC793]    Postel, J., "传输控制协议", STD 7, RFC 793, September 1981.

[RFC896]     Nagle, J., "在IP/TCP中的拥塞控制", RFC 896, January 1984.

[RFC1122]    Braden, R., Ed., "网络主机的需求-通信层", STD 3, RFC 1122, October 1989.

[RFC1323]    Jacobson, V., Braden, R. and D. Borman, "TCP高性能的扩展", RFC 1323, May      1992.

[RFC2119]   Bradner, S., "在RFCs中标志需求层次的关键字", BCP 14, RFC 2119, March 1997.

[RFC2212]    Shenker, S., Partridge, C. and R. Guerin, "保证服务质量的说明", RFC 2212, September 1997.

[RFC2309]    Braden, R., Clark, D., Crowcroft, J., Davie, B.,
                Deering, S., Estrin, D., Floyd, S., Jacobson, V.,
                Minshall, G., Partridge, C., Peterson, L., Ramakrishnan,
                K.K., Shenker, S., Wroclawski, J., and L. Zhang,
"网络中队列管理和避免拥塞的建议", RFC 2309, April 1998.

[RFC2357]    Mankin, A., Romanow, A., Bradner, S. and V. Paxson,
                "评估可靠的多路传输和应用协议的IETF准则", RFC 2357, June
                1998.

[RFC2414]    Allman, M., Floyd, S. and C. Partridge, "增加中的TCP的初始化窗口", RFC 2414, September 1998.

[RFC2475]    Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.
                and W.  Weiss, "区分服务的体系结构", RFC 2475, December 1998.

[RFC2481]    Ramakrishnan K. and S. Floyd, "添加明确拥塞通告到IP的建议", RFC 2481,
                January 1999.


[RFC2525]    Paxson, V., Allman, M., Dawson, S., Fenner, W., Griner,
                J., Heavens, I., Lahey, K., Semke, J. and B. Volz,
                "有名的TCP应用问题", RFC 2525, March
                1999.

[RFC2581]    Allman, M., Paxson, V. and W. Stevens, "TCP拥塞控制", RFC 2581, April 1999.

[RFC2582]    Floyd, S. and T. Henderson, "TCP的快速修复算法的新的修改", RFC 2582, April 1999.

[RFC2616]    Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
Masinter, L., Leach, P. and T. Berners-Lee, "超文本传输协议 -- HTTP/1.1", RFC 2616, June 1999.

[SCWA99]     S. Savage, N. Cardwell, D. Wetherall, and T. Anderson,
                一个错误行动的接收方的TCP 拥塞控制, ACM
                Computer Communications Review, October 1999.

[TCPB98]     Hari Balakrishnan, Venkata N. Padmanabhan, Srinivasan
Seshan, Mark Stemm, and Randy H. Katz, 一个繁忙的网络服务器的TCP行为:分析和改进, IEEE Infocom, March 1998.  Available from:
               "http://www.cs.berkeley.edu/~hari/papers/infocom98.ps.gz".

[TCPF98]     Dong Lin and H.T. Kung, TCP快速修复策略:分析和改进, IEEE Infocom, March 1998. Available from:
               "http://www.eecs.harvard.edu/networking/papers/infocom- tcp-final-198.pdf".

9.TCP要说明的问题
在这部分我们将讨论TCP拥塞的特殊情况,来阐释拥塞控制原理的实现,包括加入到传输协议产品的一些细节。

9.1慢启动
TCP发送方不能通过一次性发送一个很大的数据(例如接收方建议的窗口)来打开一个新的连接。TCP发送方对拥塞窗口的初始值有限制。在慢启动过程中TCP发送方能通过在一个循环周期把两个因素并为一个来提高发送速率。当监测到拥塞或发送方的拥塞窗口比慢启动的临界值大的时候慢启动就结束了。
全局拥塞控制的潜在影响的问题已经被标准化进程鲜明的提出来了,其中包括初始窗口值的增加[参见RFC2414,RFC2581]。
标准化进程提出的问题一般被认为不需要标准化,包括基于速率的步进方式的使用与否,在拥塞窗口到达临界值之前提早结束慢启动的机制。这个机制使得慢启动或多或少比标准的TCP显得保守。
9.2加法式的增加,乘法式的降低
没有拥塞时TCP发送方通过每个循环周期加一个包来增加拥塞窗口。出现拥塞现象时,TCP发送方折半减少拥塞窗口。(更准确地说,新的拥塞窗口是拥塞窗口最小值和接收方建议的窗口的一半)。
全局拥塞控制的潜在影响的问题已经被标准化进程鲜明的提出来了,其中包括对‘纯响应‘的流的返回进行拥塞控制的额外的建议。
一个标准化进程没有提出一般被认为不需要标准化的问题,包括拥塞窗口的改变应用在字节数的上界继续在管道中的情况下,而不是应用在确认后滑动窗口启动的情况下。(很明显,接收方推荐的窗口应用在确认后滑动窗口启动。因为从确认方接收的包被放置在TCP接收方的缓存中,还没有传给应用程序。然而,拥塞窗口随管道中的包的数量而变化,不需要包括被TCP接收方在无序方式下接收的包。)

9.3重传定时器
TCP发送方设置一个重传定时器来告知网络中一个包已被丢弃。当重传定时器到时了,发送方得知已经有包丢失,把当前的窗口设为原先的一半,开始慢启动,重传丢失的包。如果重传定时器因为重传的包没有被接收到的确认而到时,重传定时器也‘回退‘,把下次重传的时间间隔加倍。
标准化进程很有可能鲜明提出这么一个问题,它潜在的影响全局的拥塞控制,它包括当发送方没有受到确认而事实上并没有包被丢弃时,如何使得重传定时器增加重传时间间隔的修正机制。因为重传定时器到时会导致增加数据包在拥塞链路上不必要的传送,所以网络标准化进程对此非常关注。

9.4快速重传和快速修复
当看到三个重复的确认,TCP发送方知道有包丢失。接着TCP发送方把临界值设为当前窗口的一半,减少拥塞窗口到先前的一半,并重传丢失的包。
标准化进程很有可能鲜明提出这么一个问题,它潜在的影响全局的拥塞控制,它包括当只有一两个重复确认就告知有包丢失的建议。如果设计不好的话,这个建议可能导致增加包在拥塞路径上不必要的传输。
一个标准化进程没有提出,一般被认为不需要标准化的问题,是建议如果拥塞窗口允许的话,发送一个‘新‘的或丢失的包来响应重复确认。举个例子,如果只有一个重复确认,没有更多的确认到达,则发送一个新的包响应,来保持‘响应时钟‘运转。这个建议是一个有益的改变,它不涉及到互操作,也不影响全局拥塞控制,因此不需要IETF标准化进程的介入,就被开发商们所应用。(这个问题事实上已经在[DMKM00]中提过,[DMKM00]建议“研究人员试图收到重复确认后在网络中插入新的通信,[TCPB98]和[TCPF98]都讲述过。)

9.5TCP拥塞控制的其它方面
TCP拥塞控制的其它方面在上面的章节中都没有提到,其中包括空闲或有限制的应用的时期的TCP修复[参见HPF00].

10.安全考虑
本文档已经讨论了拥塞控制的危险和拥塞控制的缺乏。章节3.2讨论了如果相互竞争的流不使用兼容的拥塞控制机制而潜在的不公平性,章节5考虑了如果流不使用端到端的拥塞控制而出现拥塞崩溃的危险。
因为本文档没有提出任何特殊的拥塞控制机制,所以也不需要提供拥塞控制相应的安全措施。然而,我们将注意针对拥塞控制的安全性考虑,IETF文档还有很广阔的范围。例如,单独拥塞控制机制试图解决单独的终节点之间的端到端拥塞控制很有活力[参见SCWA99]。要特别关注多路拥塞控制,因为通信的分布很难掌握,并且单个接收方出现错误后报告拥塞的几率很高。
RFC2309也讨论了网络中无响应的流的潜在威胁,就是流在出现拥塞时不减少发送速率,并且描述了网络需要用来处理流对拥塞通告无响应的机制。我们将注意到这些领域在研究,工程,方法,配置的需要。因为网络有数量众多的流,一些单个流的拥塞控制的危险有一定的限度。相反,分散的危险来自许多终端节点的端到端的拥塞控制的广泛的配置。


RFC2914   Internet RFC/STD/FYI/BCP Archives 
RFC2914  拥塞控制原理

RFC文档中文翻译计划                                                                      - 1 -

 相关推荐

刘强东夫妇:“移民美国”传言被驳斥

京东创始人刘强东和其妻子章泽天最近成为了互联网舆论关注的焦点。有关他们“移民美国”和在美国购买豪宅的传言在互联网上广泛传播。然而,京东官方通过微博发言人发布的消息澄清了这些传言,称这些言论纯属虚假信息和蓄意捏造。

发布于:1年以前  |  808次阅读  |  详细内容 »

博主曝三大运营商,将集体采购百万台华为Mate60系列

日前,据博主“@超能数码君老周”爆料,国内三大运营商中国移动、中国电信和中国联通预计将集体采购百万台规模的华为Mate60系列手机。

发布于:1年以前  |  770次阅读  |  详细内容 »

ASML CEO警告:出口管制不是可行做法,不要“逼迫中国大陆创新”

据报道,荷兰半导体设备公司ASML正看到美国对华遏制政策的负面影响。阿斯麦(ASML)CEO彼得·温宁克在一档电视节目中分享了他对中国大陆问题以及该公司面临的出口管制和保护主义的看法。彼得曾在多个场合表达了他对出口管制以及中荷经济关系的担忧。

发布于:1年以前  |  756次阅读  |  详细内容 »

抖音中长视频App青桃更名抖音精选,字节再发力对抗B站

今年早些时候,抖音悄然上线了一款名为“青桃”的 App,Slogan 为“看见你的热爱”,根据应用介绍可知,“青桃”是一个属于年轻人的兴趣知识视频平台,由抖音官方出品的中长视频关联版本,整体风格有些类似B站。

发布于:1年以前  |  648次阅读  |  详细内容 »

威马CDO:中国每百户家庭仅17户有车

日前,威马汽车首席数据官梅松林转发了一份“世界各国地区拥车率排行榜”,同时,他发文表示:中国汽车普及率低于非洲国家尼日利亚,每百户家庭仅17户有车。意大利世界排名第一,每十户中九户有车。

发布于:1年以前  |  589次阅读  |  详细内容 »

研究发现维生素 C 等抗氧化剂会刺激癌症生长和转移

近日,一项新的研究发现,维生素 C 和 E 等抗氧化剂会激活一种机制,刺激癌症肿瘤中新血管的生长,帮助它们生长和扩散。

发布于:1年以前  |  449次阅读  |  详细内容 »

苹果据称正引入3D打印技术,用以生产智能手表的钢质底盘

据媒体援引消息人士报道,苹果公司正在测试使用3D打印技术来生产其智能手表的钢质底盘。消息传出后,3D系统一度大涨超10%,不过截至周三收盘,该股涨幅回落至2%以内。

发布于:1年以前  |  446次阅读  |  详细内容 »

千万级抖音网红秀才账号被封禁

9月2日,坐拥千万粉丝的网红主播“秀才”账号被封禁,在社交媒体平台上引发热议。平台相关负责人表示,“秀才”账号违反平台相关规定,已封禁。据知情人士透露,秀才近期被举报存在违法行为,这可能是他被封禁的部分原因。据悉,“秀才”年龄39岁,是安徽省亳州市蒙城县人,抖音网红,粉丝数量超1200万。他曾被称为“中老年...

发布于:1年以前  |  445次阅读  |  详细内容 »

亚马逊股东起诉公司和贝索斯,称其在购买卫星发射服务时忽视了 SpaceX

9月3日消息,亚马逊的一些股东,包括持有该公司股票的一家养老基金,日前对亚马逊、其创始人贝索斯和其董事会提起诉讼,指控他们在为 Project Kuiper 卫星星座项目购买发射服务时“违反了信义义务”。

发布于:1年以前  |  444次阅读  |  详细内容 »

苹果上线AppsbyApple网站,以推广自家应用程序

据消息,为推广自家应用,苹果现推出了一个名为“Apps by Apple”的网站,展示了苹果为旗下产品(如 iPhone、iPad、Apple Watch、Mac 和 Apple TV)开发的各种应用程序。

发布于:1年以前  |  442次阅读  |  详细内容 »

特斯拉美国降价引发投资者不满:“这是短期麻醉剂”

特斯拉本周在美国大幅下调Model S和X售价,引发了该公司一些最坚定支持者的不满。知名特斯拉多头、未来基金(Future Fund)管理合伙人加里·布莱克发帖称,降价是一种“短期麻醉剂”,会让潜在客户等待进一步降价。

发布于:1年以前  |  441次阅读  |  详细内容 »

光刻机巨头阿斯麦:拿到许可,继续对华出口

据外媒9月2日报道,荷兰半导体设备制造商阿斯麦称,尽管荷兰政府颁布的半导体设备出口管制新规9月正式生效,但该公司已获得在2023年底以前向中国运送受限制芯片制造机器的许可。

发布于:1年以前  |  437次阅读  |  详细内容 »

马斯克与库克首次隔空合作:为苹果提供卫星服务

近日,根据美国证券交易委员会的文件显示,苹果卫星服务提供商 Globalstar 近期向马斯克旗下的 SpaceX 支付 6400 万美元(约 4.65 亿元人民币)。用于在 2023-2025 年期间,发射卫星,进一步扩展苹果 iPhone 系列的 SOS 卫星服务。

发布于:1年以前  |  430次阅读  |  详细内容 »

𝕏(推特)调整隐私政策,可拿用户发布的信息训练 AI 模型

据报道,马斯克旗下社交平台𝕏(推特)日前调整了隐私政策,允许 𝕏 使用用户发布的信息来训练其人工智能(AI)模型。新的隐私政策将于 9 月 29 日生效。新政策规定,𝕏可能会使用所收集到的平台信息和公开可用的信息,来帮助训练 𝕏 的机器学习或人工智能模型。

发布于:1年以前  |  428次阅读  |  详细内容 »

荣耀CEO谈华为手机回归:替老同事们高兴,对行业也是好事

9月2日,荣耀CEO赵明在采访中谈及华为手机回归时表示,替老同事们高兴,觉得手机行业,由于华为的回归,让竞争充满了更多的可能性和更多的魅力,对行业来说也是件好事。

发布于:1年以前  |  423次阅读  |  详细内容 »

AI操控无人机能力超越人类冠军

《自然》30日发表的一篇论文报道了一个名为Swift的人工智能(AI)系统,该系统驾驶无人机的能力可在真实世界中一对一冠军赛里战胜人类对手。

发布于:1年以前  |  423次阅读  |  详细内容 »

AI生成的蘑菇科普书存在可致命错误

近日,非营利组织纽约真菌学会(NYMS)发出警告,表示亚马逊为代表的电商平台上,充斥着各种AI生成的蘑菇觅食科普书籍,其中存在诸多错误。

发布于:1年以前  |  420次阅读  |  详细内容 »

社交媒体平台𝕏计划收集用户生物识别数据与工作教育经历

社交媒体平台𝕏(原推特)新隐私政策提到:“在您同意的情况下,我们可能出于安全、安保和身份识别目的收集和使用您的生物识别信息。”

发布于:1年以前  |  411次阅读  |  详细内容 »

国产扫地机器人热销欧洲,国产割草机器人抢占欧洲草坪

2023年德国柏林消费电子展上,各大企业都带来了最新的理念和产品,而高端化、本土化的中国产品正在不断吸引欧洲等国际市场的目光。

发布于:1年以前  |  406次阅读  |  详细内容 »

罗永浩吐槽iPhone15和14不会有区别,除了序列号变了

罗永浩日前在直播中吐槽苹果即将推出的 iPhone 新品,具体内容为:“以我对我‘子公司’的了解,我认为 iPhone 15 跟 iPhone 14 不会有什么区别的,除了序(列)号变了,这个‘不要脸’的东西,这个‘臭厨子’。

发布于:1年以前  |  398次阅读  |  详细内容 »