服务器入门必看

锐一网络为您解答服务器的疑难杂症

服务热线:400-920-4021

对所有网络通信都有决定性影响:延迟和带宽
1882017-11-29

近几年来,WPO(WebPerformanceOptimization,Web性能优化)产业从无到有,快速增长,充分说明用户越来越重视速度方面的用户体验。而且,在我们这个节奏 越来越快、联系越来越紧密的世界,追求速度不仅仅是一种心理上的需要,更是一种由现实事例驱动的用户需求。很多在线公司的业绩已经证实:

•网站越快,用户的黏性越高;

•网站越快,用户忠诚度更高;

•网站越快,用户转化率越高。

简言之,速度是关键。要提高速度,必须先了解与之相关的各种因素,以及根本性的限制。这里主要介绍对所有网络通信都有决定性影响的两个方面:延迟和带宽 。

•延迟:分组从信息源发送到目的地所需的时间。

•带宽:逻辑或物理通信路径最大的吞吐量。

延迟和带宽

理解了带宽和延迟之间的关系,接下来就可以进一步探讨TCP、UDP,以及构建于它们之上的所有应用层协议的内部构造和性能特征。为减少跨大西洋的延迟而铺设HiberniaExpress专线在金融市场上,很多常用交易算法首要的考虑因素就是延迟,因为几ms的差距可能导致数百万美元的收益或损失。

2011年初,华为与HiberniaAtlantic开始合作铺设一条横跨大西洋,连接伦敦和纽约的近5000km的海底光缆(HiberniaExpress)。铺设这条海底光缆的唯一目的,就是减少城市间的路由,(相对于使用其他横跨大西洋的线路)为交易商节省5ms的延迟。开通运营后,这条光缆将只由金融机构使用,耗资预计达4亿美元。

简单计算一下,不难得出节省1ms的成本是8000万美元。延迟的代价由此可见一斑。

延迟是消息(message)或分组(packet)从起点到终点经历的时间。这个定义简单明了,但却掩盖了很多有用的信息。事实上,任何系统都有很多因素可能影响传送消息的时间。因此,弄清楚这些因素是什么,以及它们如何影响性能是最重要的。下面看看路由器这个负责在客户端和服务器之间转发消息的设备,会牵涉哪些影响延迟的因素。

•传播延迟:消息从发送端到接收端需要的时间,是信号传播距离和速度的函数

•传输延迟:把消息中的所有比特转移到链路中需要的时间,是消息长度和链路速率的函数

•处理延迟:处理分组首部、检查位错误及确定分组目标所需的时间

•排队延迟:到来的分组排队等待处理的时间

以上延迟的时间总和,就是客户端到服务器的总延迟时间。传播时间取决于距离和信号通过的媒介,另外传播速度通常不超过光速。而传输延迟由传输链路的速率决定,与客户端到服务器的距离无关。举个例子,假设有一个10MB的文件,分别通过两个链路传输,一个1Mbit/s,另一个100Mbit/s。在1Mbit/s的链路上,需要花10s,而在100Mbit/s的链路上,只需0.1s。

接着,分组到达路由器。路由器必须检测分组的首部,以确定出站路由,并且还可能对数据进行检查,这些都要花时间。由于这些检查通常由硬件完成,因此相应的延迟一般非常短,但再短也还是存在。最后,如果分组到达的速度超过了路由器的处理能力,那么分组就要在入站缓冲区排队。数据在缓冲区排队等待的时间,当然就是排队延迟。

每个分组在通过网络时都会遇到这样或那样的延迟。发送端与接收端的距离越远,传播时间就越长。一路上经过的路由器越多,每个分组的处理和传输延迟就越多。最后,网络流量越拥挤,分组在入站缓冲区中被延迟的可能性就越大。

本地路由器的缓冲区爆满缓冲区爆满(Bufferbloat)是JimGettys在2010年发明的一个术语,是排队延迟影响网络整体性能的一个形象的说法。造成这个问题的原因主要是如今市面上的路由器都会配备很大的入站缓冲区,以便“不惜一切代价”避免丢包(分组)。可是,这种做法破坏了TCP的拥塞预防机制,导致网络中产生较长且可变的延迟时间。为解决这个问题,有人提出了新的CoDel主动队列管理算法,且已经在Linux内核3.5以上版本中实现。

本文由锐一网络整理发布,如需香港服务器、高防服务器,请联系锐一客服或者百度“锐一网络”即可找到我们。

延迟,带宽,网络通信

关注我们

关于我们

  • 400热线:400-920-4021
  • 电话:0755-33076677
  • 邮箱:info@a166.com
  • 地址:深圳市福田区彩莲路天隆大厦1507

产品销售

售后服务

  • 售后 锐一售后客服
  • 售后 锐一售后客服

增值服务

  • 证书 SSL
收缩