如何获取侦听套接字的BACKLOG

时间:2013-06-02 12:21:39

标签: linux performance tcp nginx kernel

我在ubuntu linux上的端口80上有一个监听套接字。

tcp    0  0 0.0.0.0:80      0.0.0.0:*   LISTEN  12248/nginx

有没有办法获得该套接字的backlog值(发送给listen()调用的backlog值)?

我知道我可以查看nginx配置但是配置文件可以更改而无需使用新配置重新加载nginx,因此配置和实际LISTEN调用中的backlog参数可能不同。

3 个答案:

答案 0 :(得分:16)

ss -lt在Send-Q列中提供此值。

答案 1 :(得分:0)

id使用当前的积压信息来管理接收到的连接数,因为我可以响应传入的连接并告诉发送方修改其连接间隔,从而减少(或增加)负载。我无法控制获得多少个传入连接,但可以控制它们连接的频率,因此可以减少积压并防止传入连接超时。

就我而言,这恰好是传入连接源固件的功能,因此它可能对我的情况是唯一的,与其他情况无关。

答案 2 :(得分:-6)

没有用于获取积压的标准TCP API。也没有理由需要它。您创建了套接字,将其置于监听状态,您应该知道您指定的待办事项。系统有权对其进行调整或调整,但即使这样,您也无法在应用程序中使用该信息。