破灭的带宽神话
在互联网高速发展迅速普及的过程中,由于各种通讯终端的更替及对生产效率不断提高的要求,移动办公和远程办公从原来仅仅是为了某些特殊的员工,或者特殊的群体提供服务,演变成一种全方位的需求。然而,怎样把这些应用和远程用户高效率地连接起来,让信息在二者之间收发自如,就如同在局域网中一样呢?很多人首先想到的就是提升带宽。然而,这看起来天衣无缝的逻辑正受到前所未有的挑战。
尽管全球对带宽的需求日益增长,但在今天,带宽已经不是解决应用性能悖论最关键的一环。实际上,在Metcalfe 定律(网络的价值与网络用户数量的平方成正比)不遗余力的推动下,带宽自90年代开始就以奇迹般的速度大幅增长,数据通信行业早就创建了能够大规模交付廉价带宽的基础设施,从而使低廉、充足的带宽成为现实。
不过,商业环境中的用户很快就发现,高带宽并不能如期待中那样解决所有的性能问题。随着企业应用部署扩展到广阔的领域,即使配备的带宽的充足程度有时与局域网中相同,但企业的IT经理们仍会亲眼目睹应用性能的大幅下降。让他们感到困惑的是“为什么 LAN 和 WAN 两种网络具有完全一样的带宽容量,其性能结果却截然不同?”
寻找症结
其实,应用性能受与网络和应用逻辑有关的诸多因素的影响,这些因素必须得以满足以便获得满意的应用性能结果。在网络级上,应用性能受限于高延迟(物理距离的影响)、抖动、数据包丢失以及拥塞。在应用级上,性能进一步受到应用协议(特别是在网络层上出现延迟、抖动、数据包丢失以及拥塞时)特定行为的限制,应用协议参与网络链路间过多的信息交换,且应用本身序列化。
由此我们可以看到,延迟和数据包丢失对应用性能产生重大的影响。利托氏定理 (Little's Law) 开创性地描述了等候理论,并利用一个方程式反应物理距离(延迟)与数据包丢失的结果,阐明了这两种因素对应用性能的影响。
该定理认为,由于TCP 吞吐量是由拥塞窗口大小和往返时间所决定的,因此,随着每一请求往返时间 (RTT) 的延长,拥塞窗口必须扩大,否则 TCP 吞吐量将降低。但是,TCP 无法有效地管理较大的窗口。结果是,对于一个特定应用而言,即便是数量较小的延迟和数据包丢失都能够将网络性能快速降低至每秒 1 MB 以下。即使带宽容量提升到 100Mbps,应用也不会占用整个容量的 1% 以上。在此情况下,不断添加带宽投资,无疑只是一种浪费。
此外,像物理距离、效率低下的网络路由模式以及网络拥塞等这些决定延迟的因素大量存在于广域网中。例如,许多 TCP 协议栈在进行重新传输时效率非常低下,事实上,如果一个数据包丢失,那么,一些栈可能需要传输整个拥塞窗口。而且,它们还将在出现网络拥塞时重新传输定时器。
尽管在通常情况下,数据包丢失在帧中继网络中并不是非常重要,但在IP VPN网络中则完全不同,在后一种情况下,高数据包丢失率可能会对性能产生灾难性的影响。而在我国,在广域网中这种数据包丢失率通常超过5%,这一问题会显得尤为突出。
[1] [2] 下一页 |