Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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?

share|improve this question

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.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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