netstat -o 计时器值“探测”

netstat -o 计时器值“探测”

关于该场景的一些背景介绍。
我有一个在 RH6.5 上运行的分布式应用程序,它使用 JMS(OpenMQ 4.5.2)在主机之间发送消息。
一个主机(主机 A)从路由器和交换机等网络元素接收信息,并将该信息中继到另一台主机(主机 B)进行处理。JMS 在主机 B 上运行。
这些通过 JMS 的消息平均每秒约 100 条消息,并且可以出现数百条消息的峰值而不会出现任何问题。

偶尔,我观察到消息流会停止,没有任何消息到达主机 B,尽管主机 A 仍在以类似的速率从网络接收数据。发生这种情况时,主机 B 上的 JMS 进程会占用所有 CPU。

使用netstat -o,我还注意到主机B端的JMS套接字的Recv-Q非常高:

Proto   Recv-Q  Send-Q  Local Address   Foreign Address State       Timer
tcp     268439  0       HostB:9030      HostA:53712     ESTABLISHED off (0.00/0/0)

在主机 A 端,Send-Q 也很高:

Proto   Recv-Q  Send-Q  Local Address   Foreign Address State       Timer  
tcp     0       68736   HostA:53712     HostB:9030      ESTABLISHED probe (17.25/0/0)

我还注意到了计时器中的“probe”值。在网上搜索后,我发现关于该值含义的信息很少。

所以,问题是,
“探测”计时器的值是什么意思,这是否反映了从套接字读取或写入某种问题?

相关内容