如何监控TcpListener积压的大小?

时间:2010-08-23 20:17:19

标签: c# sockets tcp

我在C#中使用TcpListener类来打开新的tcp连接。我看到一些性能问题,我想看看它是否是由于运行tcp backlog。有什么方法可以检查我的流程的积压的当前大小吗?

1 个答案:

答案 0 :(得分:0)

您可能希望使用类似Wireshark的实用程序(图形化,但不能使用C#,AFAIK编写脚本)。 Wireshare使用一个名为WinPcap的库,它可以对计算机上的TCP流进行实际监控。 HTTP标头的解码需要在您的应用程序中完成(这是wireshark / tcpdump / windump应该能够做到的)。您将需要使用PInvoke来调用WinPcap DLL。您可以通过执行“WinPcap PInvoke”的Web搜索来找到库包装器。

这个问题听起来非常类似于以下内容:

Is there any way in .NET to programmatically listen to HTTP traffic?

此外,Capturing HTTP requests可能会有所帮助