RFC2861 TCP 拥塞窗口检验

发表于 5年以前  | 总阅读数:587 次
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:廖正军(jerry.liao   jerry.liao@163.net)
译文发布时间:2001-7-5
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须
保留本文档的翻译及版权信息。




Network Working Group                                         M. Handley
Request for Comments: 2861                                     J. Padhye
Category: Experimental                                          S. Floyd
                                                                   ACIRI
                                                               June 2000
TCP 拥塞窗口检验
(TCP Congestion Window Validation)
 
本备忘录的状态
本文档讲述了一种Internet社区的实验协议,它并没有制定一种Internet标准,需要进
一步进行讨论和建议以得到改进。本备忘录的发布不受任何限制。
版权声明
Copyright (C) The Internet Society (2001).
摘要
TCP 拥塞窗口控制网络中一个TCP流的包的数目,然而,发送方长时间无响应或者由
于应用程序的限制会导致拥塞窗口的无效,此时,拥塞窗口不在反映网络的当前状况,本文
档描述了对TCP拥塞控制算法的一种简单修正,使得在发送后一段足够长的时间后,拥塞
窗口。同时使用慢启动决值来保存拥塞窗口以前的值。
当拥塞窗口在应用程序限制期间增加时,也会导致一个无效窗口,而原来拥塞窗口的值
可能从来没有利用,我们建议在TCP发送方有应用程序限制时,不增加拥塞窗口的大小,
我们从采用模拟和FREEBSD中实现的实验揭示了这些算法。

目录
1 转换和异义 2
2 介绍 2
3 描述 3
3.1 减小拥塞窗口的基本算法 4
3.2减小拥塞窗口的伪码 4
4 模拟 5
5 实验 5
6 结论 6
7 参考 6
8 安全性考虑 7
9. 作者地址 7
10. 版权说明 8
致谢 8

1 转换和异义
关键字MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, 
RECOMMENDED, MAY, and OPTIONAL,出现在本文中时,参照[97]中的解释。

2 介绍
TCP拥塞窗口控制网络中一个TCP流中包的数量,拥塞窗口采用慢增快减(AIMD)的机
制来试探网络带宽,作动态调整了改善网络状态。AIMD机制在发送方有连续的数据发送时
工作良好,这对使用缓冲数据的TCP来说是很典型的。对于使用TCP的TELNET应用程序
来说,发送方只有很少的数据或没有数据发送,发送速率也是由用户产生数据的速率决定的,
随着WEB的诞生,包括动态产生数据的TCP发送方和持续连接TCP的HTTP1.1的发展,
应用程序限制和网络限制之间的交互变得越来越重要,更精确的说,我们把网络限制期间定
义为发送者以满窗口大小发送数据,
当发送者由于应用程序限制而造成时间太长会导致拥塞窗口的无效,在由于网络限制期
间,由于窗口数据总是没有丢失,拥塞窗口总是被检验有效,此时,总是有超时新数据的确
认输入流给出网络中最近可用的带宽,与之相反,在由于应用程序限制期间,用拥塞窗口来
估计可用带宽随着时间流逝而准确性降低,特别的,被用来网络限制的容量可能会被其他的
流量占用,
当前的TCP实现在一段时间的IDLE后,有一些启动的措施,在IDLE的时间超过RTO
估计值(正如RFC2581和附录[VJ88]所建议的)后,一些TCP实现采用慢启动机制,而其他
的实现则并不降低它们的拥塞窗口,RFC 2581 中推荐:如果TCP在超过超时重发的间隔内
没有数据发送,TCP应将窗口大小设置成不超过原来窗口大小,在[HTH98]中讨论了在IDLE
后TCP慢启动的建议,除了在TCP和IP环境中,拥塞信息的检验也在其他的环境中提到,
如在ATM网络中的“或使用它,或丢弃它”的机制中。
在一段应用程序限制后,为了讨论拥塞窗口的有限性,我们对TCP的拥塞控制算法作
了一点简单的修改,使得在发送后拥塞窗口的大小从一段足够长的应用程序限制退化到网络
限制期间,特别的,在一段IDLE后,对于在每个数据流保持IDLE的RTT内,发送方都应
将它的拥塞窗口减半。
当拥塞窗口大小减小时,慢启动的阕值保留为最近拥塞窗口的大小,特别的,在一段应
用程序限制之后,阕值从不降低,在窗口减小以前,阕值被设为它的当前最大值,这种阕值
的使用容许TCP发送方在一段应用程序限制后增加它的发送速率来加快慢启动恢复拥塞窗
口的以前的值,更精确的,在一段应用程序限制后,拥塞窗口减小,如果阕值小于窗口大小
的3/4,那么阕值在拥塞窗口减小之前,阕值增加到窗口的3/4。
在应用程序限制期间,当拥塞窗口增大时,也会导致无效的拥塞窗口,而拥塞窗口原来
的值可能从来没有使用,我们都知道,当有确认帧到达时,如果接收方的广告窗口和满启动
及拥塞避免算法容许,没有检查拥塞窗口原来的值有没有被使用,当前所有的TCP实现都
增加拥塞窗口大小, 本文建议在应用程序限制期间,并不激活窗口增加算法[MSML 99],
特别的,当TCP发送方在应用程序限制时,发送方并不增加拥塞窗口,这种限制防止拥塞
窗口的任意增加,以防止拥塞窗口不被网络支持,在[MSML 99 SETION 5.2]中:“这种限制
保证只有在TCP实际上向网络成功发送数据后,窗口大小才增加。”
在一段应用程序限制后保持一个大的拥塞窗口一个值得考虑的问题是在一段静止期间
后,发送方突然有大量的数据要发送,可能立即发送一个满窗口的包的数据,这种发送突发
大量包的问题可以被基于速率的方法(RBP, [VH97])有效的处理,或者最大发送数据控制
[FF96],即使使用限制包的发送机制,一个没有充分使用的拥塞窗口不能被作为当前可用带
宽的表示,
3 描述
当一个TCP发送者有足够的数据来充分使用网络容量时,窗口大小和阕值将被设置为与网
络状况相似的值,当TCP发送方停止发送数据时,流将停止采样网络状况,并将导致拥塞
窗口的值不准确,我们相信,在这种环境下,对每个RTT内流不活动的状况,将拥塞窗口
减半是一种正确的处理方法,减半的值是很保守的数值,这是建立在有丢包的情况下,倍减
将多快减小窗口的基础上。
另一种可能是发送者并不停止发送,是由于应用程序限制而不是网络限制,使得提供的数据
少于拥塞窗口容许发送的数据。在这种情况下,TCP流仍然采样网络状况,但并不提供足
够的流量来保证在网络中有足够的带宽来以满拥塞窗口来发送数据,在这些情况下,我们相
信,对发送方而言,在每个RTT中跟踪拥塞窗口的最大值,并将拥塞窗口的值设为当前窗
口和曾经的最大值的均值,是一种正确的处理。
在拥塞窗口减小以前,阕值被设为当前值和窗口的3/4两者之中的最大值,如果发送方
有比减小了的窗口大小有更多的数据发送,TCP将慢启动窗口值到原来窗口的值。
窗口的3/4可以理解为拥塞窗口的最近一段时间内的保守估计值,且TCP 应能慢启动
到这个值,每次拥塞窗口达到某个最大值,TCP 降低其拥塞窗口的大小,当处于这种稳定
状况,拥塞窗口的平均值为最大值的3/4,当连接变为应用程序限制时,窗口大小将变为最
大值的3/4,在这种情况下,窗口大小本身代表了拥塞窗口大小的平均值,然而,当窗口等
于最大值时,如果连接变为应用程序限制,那么拥塞窗口的平均值为窗口的3/4。
有一种可能性是将阕值设为当前阕值和窗口原来大小两者之间的最大值,容许TCP慢
启动至窗口的原来大小,对于阕值的设置,可以做更进一步的实验来评估这两种选择。
在对于一个确认帧的回应时,对于拥塞窗口的增加的各种情况,我们相信,当确认帧到
达时,只要窗口是满的,增加拥塞窗口都是正确的处理方法。
我们把这种改进称为TCP拥塞窗口校验(CWV),因为这总是保证拥塞窗口总反映当前
的网络状况,
3.1 减小拥塞窗口的基本算法
在CWV算法中,一个关键的问题是在应用程序限制的流中,对每一个往返时间内,如
何将这些原则应用于降低拥塞窗口中去,我们使用TCP 的重发超时器作为往返时间的合理
上限,并在每一个重发超时内迅速降低拥塞窗口大小。
基本算法在TCP中可按如下进行实现:当TCP发送一个新包时,它检查自从前一包发
送后,是否已过了一个重发超时,如果是,则阕值设为窗口的3/4和当前阕值两者之间的最
大值,然后,自从前一包发送后过一个重发超时,则将拥塞窗口减半,另外,T_prev被设
置为当前时间,而W_used被重置为0,T_prev被用来决定自从发送的上一次网络限制或在
一段IDLE已经减小了窗口后的流逝的时间,当发送方是应用程序时,W_used保留自从发
送方为上一次网络限制来的被使用的最大拥塞窗口值。
在最近IDLE时间内决定RTO的数目的机制可以通过一个计时器来实现,计时器在最
后一次的包发送后的每一个RTO内超时,而不是检查每一个包,在不同操作系统上的效率
将表现那一个更容易实现。
在TCP发送一个包以后,它会检查这个包是否填满了拥塞窗口,如果是,发送者是受
网络限制的,并把T_prev的值设为当前TCP的时钟,W_used被置为0。
当TCP发送一个没有填满拥塞窗口的包时,并且TCP发送队列为空时,发送者是受应
用限制的,发送方检查未确认的帧是否比W_used大,如果是,W_used被置为未确认的帧
数,另外,TCP检查自从T_prev以来流逝的时间是否大于RTO,如果是,TCP在一个RTO
间隔内,但小于两个RTO内是应用程序限制,而不是网络限制的,在这种情况下,TCP将
阕值设为窗口的3/4和当前阕值两者之间的最大值,并将其拥塞窗口减小到(cwnd+W_used)/2. 
W_used被置为0,T_prev的值设为当前的时钟,这样直到另一个RTO流逝,才会进一步减
小拥塞窗口,因此,在应用程序限制时,CWV算法每个RTO减低拥塞窗口的大小。
3.2减小拥塞窗口的伪码

   Initially:
       T_last = tcpnow, T_prev = tcpnow, W_used = 0

   After sending a data segment:
       If tcpnow - T_last >= RTO
           (The sender has been idle.)
           ssthresh =  max(ssthresh, 3*cwnd/4)
           For i=1  To (tcpnow - T_last)/RTO
               win =  min(cwnd, receiver's declared max window)
               cwnd =  max(win/2, MSS)
           T_prev = tcpnow
           W_used = 0

       T_last = tcpnow

       If window is full
           T_prev = tcpnow
     
 相关推荐

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

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

发布于: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次阅读  |  详细内容 »