什么会影响tcp或Os级别的吞吐率?

我遇到了一个问题,在不同的服务器上运行相同的应用程序,会产生意想不到的性能结果。 例如,在特定的更快的服务器(更快的cpu,更多的内存)上运行应用程序,无负载,比在同一networking上function不太强大的服务器上运行产生的性能要慢。

我怀疑操作系统或TCP导致速度更快的服务器缓慢。 我不能使用IPerf,除非我修改它,因为我的应用程序中的“性能”定义为组件A向组件B发送消息。组件B向组件A发送ACK,然后组件A将发送下一个消息。 所以它与IPerf的不同之处在于,据我所知,它只是试图推送尽可能多的信息。

有没有一种工具可以查看操作系统和TCPconfiguration,并提出缓慢的原因?

用这种“乒乓”types的协议,我想我会先看看两个端点之间的延迟。 如果只有一条消息正在传输,则延迟的小改动可能会对总吞吐量产生相当大的影响。

我不知道一个特定的工具,我会用来衡量你有什么样的行为。 数据包捕获一如既往,可能是照明。