【问题标题】:What does the state (Active, Req, Done) column in tcpmon mean?tcpmon 中的 state (Active, Req, Done) 列是什么意思?
【发布时间】:2012-03-14 22:34:49
【问题描述】:

我完全没有获得有关 tcpmon 显示字段的信息。

特别是,我对在传输过程中从 Active->Req->Done 移动的“状态”列感到困惑。有没有人确切地理解这三个状态中的每一个的含义?

我问是因为我似乎遇到了间歇性挂起,通信处于“请求”状态。

感谢您的宝贵时间。

【问题讨论】:

  • 我没用过tcpmon,但也许考虑Wireshark?如果需要,这将允许查看单个 TCP 数据包,并突出显示某些问题,例如糟糕的握手或丢失数据包等。
  • 我现在尝试通过wire shark 运行它,虽然我肯定不是网络流量方面的专家,但看起来一切都很好。我看不出表现符合预期的响应与导致挂起“请求”状态的响应之间没有区别。这更加坚定了我的怀疑,即使用axis2在http上的soap中存在问题。我太菜鸟了,无法在那里发表意见。

标签: http tcp tcpmon


【解决方案1】:

我刚刚在 tcpmon 的 source code 上达到了顶峰,我想我理解这些状态的含义。

  • 活动:已经创建了一个套接字,但没有在套接字上读取或写入任何内容
  • 请求:正在通过套接字发送数据
  • 完成:套接字已关闭

我的猜测是 tcpmon 中有一个错误,当它永远不会正确关闭套接字时,它会挂在 Req 状态。我知道旧版本中存在这样的错误,如其源代码中的注释所示:

// Only loop as long as the connection to the target
// machine is available - once that's gone we can stop.
// The old way, loop until both are closed, left us
// looping forever since no one closed the 1st one.

这对于您想知道的内容可能有点过头了,但您可以在文件RawSender.javaConnection.java 中找到他们用来设置状态列的逻辑。

【讨论】:

    猜你喜欢
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2017-02-23
    • 1970-01-01
    • 2019-10-14
    • 2020-03-08
    • 1970-01-01
    • 2011-01-01
    相关资源
    最近更新 更多