作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
网络应用程序通常受益于估计 Internet 上两个端点之间带宽的能力。这不仅有利于速率控制目的,而且有利于隔离存在多个备选方案的首选 连接。
虽然有一些对 packet-pair probing 的严格处理,对高级原则和要点的总结,涵盖该方法的如何和为什么将非常有益;即使只是作为更深入研究的引导。
任何指向作为很好示例的数据包对探测的实现或使用的指针也将不胜感激。
更新:我在usenix paper找到了一些不错的软介绍资料源自 nettimer 工具的工作 - 特别是有关使用串扰滤波器和采样窗口以提高敏捷性的讨论非常有意义。
最佳答案
关于高级原则:传统的带宽估算方法将一个数据包发送到目标并等待它返回,然后发送另一个数据包并等待返回,等等......以顺序方式.然后计算每 k 字节(或任何其他单位)的回程总时间的某种平均值/中值。然后根据理论最大带宽(如果可用)使用此信息来估计可用的未使用带宽。
数据包对探测一次向目标发送一组数据包(即以并行方式)并等待它们返回。然后也计算一种平均值/中值,并根据最大理论带宽进行评估。
如果你一次发送更多的数据包,你会扰乱你试图测量的系统,你必须在你的估计中考虑到这一点,但它比一个接一个的方法更快,感觉更像是一个快照。最根本的问题是:在这两种情况下,测量精度和测量速度之间的权衡是什么?这笔交易有任何值(value)吗?
关于algorithm - 用通俗易懂的语言解释数据包对探测算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5729371/
我是一名优秀的程序员,十分优秀!