问题背景:我们的应用程序通过 SCTP 与多个其他节点通信。由于网络波动或在很短的时间内出现的过多延迟,过去报告了几次问题。持续时间的网络窥探可能有助于了解该持续时间内所有节点的行为。
我计划采取的一种方法是使用网络嗅探器、tcpdump、ngrep、wireshark 等监控 SCTP 重新传输,每 1-2 分钟将 15-30 秒的数据转储到文件中,并检查重新传输是否高于某个值阈值然后触发上述动作。此外,我想监控任何异常情况,例如更高的重传、长时间的延迟、丢包等,并在事情真正失败之前采取一些措施(可能是我在这里过于乐观)
上述方法的一个主要问题是每隔几分钟就会运行一次,不能保持运行,因为它也会消耗资源并可能影响应用程序性能,还是我们有性能影响非常低的嗅探器?当嗅探器不运行时,可能会出现波动。
监控网络和波动听起来像是其他人可能已经解决过的常见问题,希望得到一些指示以节省一些时间:)