开发者

Suggestions to Increase tcp level throughput

we have an application requirement where we'll be receiving messages from around 5-1开发者_开发百科0 clients at a rate of 500KB/sec and doing some internal logic then distrubuting the received messages among 30-35 other network entities.

What all the tcp level or thread level optimizations are suggested ?


Sometimes programmers can "shoot themselves in the foot". One example is attempting to increase a linux user-space application's socket buffer size with setsockopt/SO_RCVBUF. On recent Linux distributions, this deactivates auto-tuning of the receive window, leading to poorer performance than what would have been seen had we not pulled the trigger.


~4Mbits/sec (8 x 500KB/sec) per TCP connection is well within the capability of well written code without any special optimizations. This assumes, of course, that your target machine's clock rate is measured in GHz and isn't low on RAM.

When you get into the range of 60-80 Mbits/sec per TCP connection, then you begin to hit some bottlenecks that might need profiling and countermeasures.

So to answer your question, unless you're seeing trouble, no TCP or thread optimizations are suggested.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜