我在C#中使用TcpListener类来打开新的tcp连接。我看到一些性能问题,我想看看它是否是由于运行tcp backlog。有什么方法可以检查我的流程的积压的当前大小吗?
答案 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可能会有所帮助