正在检索移动连接c#上的Tcp/IP使用情况



我目前正在编写一个系统日志程序,该程序通过ftp发送不同的日志。我面临的问题是,我的程序应该在上传之前和上传期间不断检查连接是否被使用,以便在其他程序想要使用连接时停止发送数据包。

事实上,我发现这个链接可以帮助我测量连接的速度,但我想我只能使用后者来发现某个东西是否已经在流式传输。在阅读了System.Net.NetworkInformation上的库条目后,检查各种网络统计信息和状态也不是问题。如前所述,我唯一的问题是检查是否有其他程序想要发送一些东西。

正如你可能从这个问题中看出的那样,我对这个话题很陌生,是一个相当初级的程序员。我一直在阅读System.Net.NetworkInformation命名空间库,并为它的各种类、方法和委托提供便利。我觉得我走在了正确的轨道上,但就是没有达到目标。有人朝着正确的方向推吗?

谢谢。

我最终使用了System.Net.NetworkInformation库及其方法。

GetIsNetworkAvailable()、NetworkChange.NetworkAvailabilityChanged事件处理程序和TcpStatistics方法帮助我收集了有关连接的信息。MSDN和参考资料是使用前面提到的方法的一个很好的指南,我基本上使用了经过轻微修改的示例来满足我的需求。

msdn网络信息:http://msdn.microsoft.com/de-de/library/system.net.networkinformation.aspx

GetIsNetworkAvailable非常直接,它在连接向上或向下时返回布尔值。

Networkchange.NetworkAvailabilityChanged在连接丢失或重新连接时触发事件。请参阅上面的msdn链接,以获得一个关于其用法的优秀且非常常用的示例。

TcpStatistics返回有关已接受、启动、接收错误、连接失败、连接重置等连接数量的信息。到目前为止,我用这五个来评估这种联系。

我意识到,您实际上不需要再高效地监控连接了。也许NetworkInterface.GetAllNetworkInterface()方法可以帮助找出哪个网络适配器正在发送数据并且应该被监控。

我现在理解彼得·里奇对我的问题的评论。FTP传输运行得非常好,协议完美地处理了文件的传输,到目前为止,在流式传输日志文件时没有出现任何问题。在4周的测试中,我不断收到日志数据。

相关内容

  • 没有找到相关文章

最新更新