I am facing a problem, where running the same application on different servers, yields unexpected performance results. For example, running the application on a particular faster server (faster cpu, more memory), with no load, yields slower performance than running on a less powerful server on the same network.

I am suspecting that either OS or TCP is causing the slowness on the faster server. I cannot use IPerf , unless i modify it, because the "performance" in my application is defined as Component A sends a message to Component B. Component B sends an ACK to component A and ONLY then Component A would send the next message. So it is different from what IPerf does, which to my knowledge, simply tries to push as many messages as possible.

Is there a tool that can look at OS and TCP configuration and suggest the cause of slowness?


With a "ping-pong" type of protocol like that, I think I would start by looking at latency between the two endpoints. If you can only have a single message in-flight, small changes in latency can have pretty large impact on total throughput.

I don't know of a particular tool that I would use to benchmark the particular sort of behavior that you have. A packet capture, as always, might be illuminating.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.