漫话网络带宽估计


首先,我们为什么要估计网络带宽?

 

比如在电信办了一个百兆的网络,下一个带宽估计软件,花12S的时间用pathload方法测测有没有被骗.

再比如商业上测量内部网络的最大数据流量等等.

不过更为广泛的用途应该是内置于通信协议里面的动态带宽估计.

 

假设我们的网卡是一根粗水管,网线以及internet中的路由是一根根粗细不确定的水管.从网卡A往远端的B输送水,如果喷的过快,中间的水管会漏水;如果过慢,效率则减低,浪费了水管的空间.

如果我们能够知道从A到B的最细水管,也就是路径的瓶颈,那么我们只要按照瓶颈速度输水就行,利用率为100%.

 

但是,internet中间结构复杂,流量又是动态改变的,要如何知道瓶颈流量呢?这下就用到了网络带宽估计算法.

 

举一个比较常见反面例子:TCP;

TCP没用网络带宽估计算法,其采用的是自律的发送原则.也就是尽量地稳定,慢.稍微了解TCP的应该都知道AIMD算法,一次增加一个包,减少则一下减少到一半.

 

就是因为TCP不具备网络带宽估计的算法,它只有采用最为谨慎的方法.

用开车来比喻TCP的话,就是:每次踩一点点油门,开一小段路,就伸出头看看路况怎样;路况稍微不好了,用力踩刹车.

 

TCP是在网络刚刚发展的时候建立的,当时的网络很差,丢包率高,延时大,传输慢.继续拿开车来比喻就是,TCP是在石子铺路的时候上的路,它的这种开车方法在这样复杂的路况上很适用,稳定,安全.

 

随着技术慢慢地发展,石子路慢慢铺成了水泥路,甚至高速公路.都这样了,TCP还是那样地开车,那就确有点不合时宜了.

 

不过由于TCP适用性比较广,在大多数情况下也够用,配套的各种运用,协议也比较齐全,至今还是广泛地存在.

 

可是许多研究者不满足于此,他们希望我们能够100%地使用网络带宽.于是,一些不常使用的高速协议,改进协议产生了.

 

这些协议不想像TCP那样小心谨慎地开慢车,它们想要在高速上驰骋飙车.

 

飙车是要有代价的.稍微不好就会悲剧,比如数据丢失,抢占其他运用带宽等等.更重要的是,你要用带宽估计的算法.

 

这个带宽估计算法,就像是高速的限速牌,知道了这条路最高可以开多快,再按照这个速度开就OK了. 更形象地就是一开始水管的比喻,知道了最细的水管,我们再输水,安全稳定又快速.

 

终于到网络带宽估计算法大展拳脚的时候了.

 

协议内置带宽估计

 

关于网络带宽估计的一些基本理论和方法,可见blog:

 http://blog.csdn.net/ice110956/article/details/11071969

http://blog.csdn.net/ice110956/article/details/11126491

http://blog.csdn.net/ice110956/article/details/11563239

前面用三篇blog分别叙述了网络带宽估计的基本理论,以及两个方法pathload,pathchirp等.

 

这些方法说到底,都是基于网络延时的估计.有兴趣地可以进一步阅读.

 

这些方法专门针对带宽估计而设计,开销大,估计周期长.

pathload每次探测都要花费大概12s的时间,发送大概5M的探测包才能收敛;

pathchirp虽然开销少了一些,但也要0.5M左右的探测包,而且操作的机制较复杂.

在实际运用中,这些方法无法适应网络带宽实时动态变化.

 

也就是说,在我们一开始举的三个使用例子中,这些协议可以测电信是否骗了你,可以测公司内部最大带宽,不过内置于通信协议是不行的.

 

最主要的用途尽然不行,确实可气.

再看看市面上商用的高速传输工具,大多数是自己内部研究的算法,不对外公开.对于我们去了解那些非公开的算法是不可能的,对于他们的算法只能通过技术手册一窥门径.

当然还有一些开源的协议等,不过跑起来实在没有商业用途的好.不过通过它们,我们也能对协议内置带宽估计有一定的了解.

 

基于本人对一些开源协议的了解,它们或多或少地基于一些公开的算法,进行实际运用的改进,删减;或者自定义一些更精确的模型公式,不过大多数的模型还是基于这些算法.正如上面所说,这些算法都是基于网络延时的.

 

当然,也有非主流的,比如某中文文献介绍的基于强化学习的估计.

这个点子我也曾经一拍脑袋想到过,不过具体的操作没有任何思路.

中文文献的伟大就是其有敢为人先的魄力以及语不惊人死不休的创新性.只要有想法他就敢写,只要有人敢发他就敢写.

 

文章没有细看,如果成功了,他就发了.

 

最后总结一下


网络带宽估计内置于通信协议是网络带宽估计的实际运用,虽然已经有了一些成功的商业软件,不过没有非常好的开源方法.


随着技术不断发展,也许慢慢地,TCP会退出历史舞台.

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值