如何查找正在使用的临时端口数?

时间:2012-04-19 21:56:54

标签: windows networking tcp network-programming tcp-port

我遇到的情况是我遇到短暂的端口耗尽,然后导致异常。我想节制连接以避免这种情况。有没有办法检测正在使用的短暂端口的数量?

谢谢, 埃里克

2 个答案:

答案 0 :(得分:1)

要获取打开连接的列表,您可以使用netstat命令。与流行的相信(其他答案)相反,短暂端口的数量是有限的(Windows 2003上为4000,后续版本上为16000,大多数Linux上为16000)。另请注意,一旦它被取用,它需要4分钟才能释放端口,因此它确实是一个问题。

有关于MSDN处理它的文章:http://msdn.microsoft.com/en-us/library/aa560610(v=bts.20).aspx

答案 1 :(得分:0)

你可以用尽短暂的TCP端口的唯一方法是,如果你是一个客户端,你已经打开了近64k的出站连接,并且在最后两分钟内没有关闭它们。

这有时会发生在测试场景中,但它并不代表真实案例,因此没有真正的兴趣。

连接时出现绑定错误的症状。如果您没有收到绑定错误,则表示没有此问题。