确定.NET中可用带宽的最佳方法是什么?
我们的用户可以从各种远程接入点(有线和无线)访问业务应用程序,有时根据用户的位置,带宽可能非常低。当应用程序看起来运行缓慢时,问题可能是由于带宽较低而不是其他问题。
我希望能够运行某种服务,以便在可用带宽低于特定阈值时警告用户。
有什么想法吗?
答案 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中实现。
看看他们两个,看看他们是否适合你。
罗伊