多少带宽才够用(六):麻烦的TCP行为

日期: 2009-02-15 作者:Alexander B. Cannara翻译:曾少宁 来源:TechTarget中国 英文

当终端跟踪比较显示物理数据包丢失发生时,网络技术员将沿着与缓慢用户位置相邻的路径检查每个路由器接口的端口统计。果然,因为租用线路有缺陷,其中的一个接口出现了CRC错误。纠正这个问题可以消除最大的一个延时组件,同时因为TCP并不能确定数据包丢失是因为错误还是拥塞引起的,因此TCP只是减缓了发送者的速度,而不考虑数据包是如何丢失的。这是因为不管是TCP还是IP都没有拥塞通知功能,而路由器都可以明确地向终端节点发出连接拥塞警告。

我们可以在下个图中看到TCP行为的巨大影响: 在快速恢复中,服务器端和客户端的丢失跟踪仅仅显示出极少的尝试。当节点处察觉了丢失后,三次重复ACK仅仅发生了两次,并且服务器却……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

当终端跟踪比较显示物理数据包丢失发生时,网络技术员将沿着与缓慢用户位置相邻的路径检查每个路由器接口的端口统计。果然,因为租用线路有缺陷,其中的一个接口出现了CRC错误。纠正这个问题可以消除最大的一个延时组件,同时因为TCP并不能确定数据包丢失是因为错误还是拥塞引起的,因此TCP只是减缓了发送者的速度,而不考虑数据包是如何丢失的。这是因为不管是TCP还是IP都没有拥塞通知功能,而路由器都可以明确地向终端节点发出连接拥塞警告。

我们可以在下个图中看到TCP行为的巨大影响:

麻烦的TCP行为

在快速恢复中,服务器端和客户端的丢失跟踪仅仅显示出极少的尝试。当节点处察觉了丢失后,三次重复ACK仅仅发生了两次,并且服务器却并没有做出快速重传。结果是这样的,不管服务器丢失了多少个数据包,它往往都需要花费2.5秒来恢复一个丢失。

这个图绘制了上面吞吐量图中的线之间的差(红色=黑色-红色),并且显示(红色)它与任何一秒上的平均吞吐量的差别。这样提供了更好地流解析。蓝色标记只是表示每个21-数据包(31KB)SMB块终止的位置(此处,延时ACK损失时间是150毫秒)。

•如果不存在延时ACK,那么蓝色标记将会更紧密,红色的曲线则是直线向下,而图的长度将变短

•蓝色标记之间的差距是由数据包丢失造成的。在160秒中存在14处1到2秒的差距。

•向下斜的红色曲线部分显示吞吐量在丢失恢复后正在追赶——或超过——平均值。

红色向下斜的部分大约比平均值快6,200Bps。因此,当不存在数据包丢失时,每秒将传输27 KB + 6.2 KB = 33.2 KB数据。这将提高23%的吞吐量。需要明确的是:如果0.25%数据包丢失率可以减少20%吞吐量,要么重新配置TCP使用更新的恢复规则(通过Repeated Acks实现Fast Retransmission),要么考虑使用正确的传输协议,所以必须对每个传输流量的网络接口保持高度的警惕性。

这些例子都说明了,作为一名建筑师、管理人员和技术人员都必须非常的细心:

1.了解备用物理网络组件和链接的各个方面

2.了解备用网络协议的各个方面

3.了解哪些工具可以用来查看网络参数

4.了解在默认和可配置参数上,供应商的产品提供哪些协议栈

5.同时必须热情对待用户

记住,要做好一切的准备,不只是去购买更快速交换机或租借更快的线路! 

关于作者:

Alexander B. Cannara, PhD是一名电子工程师、软件和网络顾问,同时还是一名教师。他在计算机网络领域已经工作了18个年头,其中包括11年的管理、开发和技术培训工作经历。他在计算机语言和网络协议方面有着丰富的经验,同时还是IEEE、计算机协会(Computer Society)和AAAS的会员。Alex与他的妻子和儿子一起住在California的Menlo Park。

翻译

曾少宁
曾少宁

TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。

相关推荐