我发现您可以使用GetTcpTable2
来查找所有TCP连接状态。不幸的是,在GetTcpTable2
返回的数组中循环需要100毫秒(请参见上方链接的示例)。这是不可接受的,因为我想找出每个通过的网络数据包的PID(每秒1000个)。
相反,当任何TCP套接字将状态更改为LISTEN
或CLOSED
并保留打开的端口的缓存时,我想得到通知。
是否可以预订系统上任何端口的打开和关闭事件?
更新:目标是确定哪个进程正在发送数据包。 IP数据包。如果知道源端口,就知道使用套接字的过程。我想尽可能地提高它的性能,因此我可以照常使用网络,但也可以实时跟踪计算机的运行情况。