c - Multiple TCP streams interfere with each other -


i have client connects nfs server , writes data. multiprocess application creates many tcp connections there processes. problem if try 1 process, socket blocks on write little (that poll() not pause). if increase number of processes 8 or more, find myself being blocked poll() on each socket 30% of time. isn't purpose of using multiple tcp streams having independent send/receive buffers , should not block this? why having multiple streams interfering each other? link far saturation (as tested iperf).

my thoughts on nfs server create socket per tcp connection, , have own receive buffers. know i'm making separate tcp sockets each process, should have own send buffers. if i'm not saturating link, why sockets blocking?

you're assuming network has infinite bandwidth, , server has infinite capacity service requests you're sending. doesn't, in either case. increasing number of tcp connections linearly doesn't increase performance linearly. there 1 network; 1 server; has many cpus; , has many disks. sooner or later network fill, or server bog down, reflected write stall.


Comments

Popular posts from this blog

jquery - How can I dynamically add a browser tab? -

node.js - Getting the socket id,user id pair of a logged in user(s) -

keyboard - C++ GetAsyncKeyState alternative -