我们有DSL,我们如何计算可用带宽以便我们可以对数据包进行整形,我们可以假设以太网接口的带宽为100mbps 但是,在DSL设备中,列车速率(Bandwidth rate)根据不同的情况而变化。 如何获得可用带宽率(来自不同的)? 有什么方法可以获得可用的带宽值吗?
答案 0 :(得分:7)
“带宽”不是您可以为单台计算机确定的。至少您需要指定两个端点。即使您在以太网上假设100 mbps也可能是错误的,因为电缆或其他端点可能无法达到完全传输速率。通常这是通过网络传输中包含的Quality of Service功能来完成的,这不是一件容易的事。
在我们的多人游戏中(使用UDP),我们成功使用了Packet Pair Probing,即使它不是通用的,它也是我们尝试的所有方法中最可靠的。我担心这个答案的范围不在于更详细地描述它,但是this answer通过易于理解的术语对非常相似的内容进行了很好的描述:
基本上,如果您从零带宽开始并增加带宽使用,延迟会非常缓慢地增加 - 直到您达到约90%的带宽。然后延迟通过屋顶,直到另一个高原,之后它再次缓慢增加。
答案 1 :(得分:0)
每次从任何地方将数据包注入网络时,可用带宽都会发生变化。它不能通过任何API获得。 TCP / IP已经进行了“数据包整形”。你的目标不明确。