确定可用带宽

时间:2008-09-29 15:34:27

标签: c# .net

确定.NET中可用带宽的最佳方法是什么?

我们的用户可以从各种远程接入点(有线和无线)访问业务应用程序,有时根据用户的位置,带宽可能非常低。当应用程序看起来运行缓慢时,问题可能是由于带宽较低而不是其他问题。

我希望能够运行某种服务,以便在可用带宽低于特定阈值时警告用户。

有什么想法吗?

4 个答案:

答案 0 :(得分:4)

下载已知大小的文件并计时需要多长时间。这样做的缺点是你需要浪费大量的带宽才能做到这一点。此外,如果您想在吞吐量低于阈值时发出警报,则必须或多或少地连续运行测试。

恕我直言,如果发生这种情况,我会在某些地方表现不佳,因为如果发生这种情况你就无法做任何事情。

对不起。

答案 1 :(得分:2)

没有实际使用它就没有简单的方法来测量带宽 - 这当然会使应用程序匮乏。但要记住几点:

1)实际带宽是问题还是延迟?您可以以比带宽更少侵入的方式测量延迟。

2)应用程序是否都来自同一台服务器(或至少是同一网络)?您可能会发现用户与网络的某些区域有良好的连接,而其他区域则没有。 (很可能最后一英里将是限制因素,但它不是总是的情况。)

答案 2 :(得分:0)

如果您要传输数据,只需进行测量即可。如果您想让它与服务器的速度无关,您也可以从某个地方下载参考对象。

答案 3 :(得分:0)

在不知道您的连接的确切性质或其使用方式的情况下,我知道有两个选项。

MultinetGetConnectionPerformance(http://msdn.microsoft.com/en-us/library/aa385342(VS.85).aspx

系统事件通知服务(http://msdn.microsoft.com/en-us/library/aa377538(VS.85).aspx

既不是直接的.NET类,也可以非常容易地在.NET中实现。

看看他们两个,看看他们是否适合你。

罗伊