Ahh ... é aqui que é importante para um servidor entender o que está por trás. Como isso tem dois anos, acho que ele já resolveu. No entanto, para a posteridade ou qualquer pessoa com um problema semelhante, o que ele provavelmente encontrou foi esse
(Tamanho da janela TCP * 8bits / RTT em milissegundos) = Taxa de transferência máxima de TCP em bps
Embora você possa ter uma rede Gigabit, um único fluxo TCP provavelmente não será tão alto.
Aqui está uma tabela simples, supondo que você tenha o tamanho da janela TCP 65535Byte padrão no Vista
RTT 10 ms => Taxa de transferência TCP = 52428000 bps = 52Mbps
RTT 20 ms => Taxa de transferência TCP = 26214000 bps = 26Mbps
RTT 50 ms => Taxa de transferência TCP = 10485600 bps = 10 Mbps
RTT 100 ms => Taxa de transferência TCP = 5242800 bps = 5,2 Mbps
RTT 150 ms => Taxa de transferência TCP = 3495200 bps = 4.3Mbps
RTT 200 ms => Taxa de transferência TCP = 2621400 bps = 2.5Mbps
RTT 300 ms => Taxa de transferência TCP = 1747600 bps = 1.7Mbps
RTT 500 ms => Taxa de transferência TCP = 1048560 bps = 1Mbps
A 20Mbytes / s ou 160Mbits / s, sua latência de ida e volta é da ordem de 3 milissegundos. A única outra maneira de acelerar isso é usar otimizadores de TCP que diminuam a conexão ou dividem fragmentos em pacotes maiores. Em uma LAN que provavelmente não vai render muito para você. Se você estiver usando equipamentos SoHo como o Linksys ou o Netgear, sua latência provavelmente será introduzida pela falta de buffers compartilhados no switch. Se for um switch maior como uma porta 24, tente garantir que os dois dispositivos estejam conectados ao mesmo ASIC. Isso ajudará o atraso da serialização, mas não muito. Se você pudesse reduzi-lo para 2ms, obteria um aumento de aproximadamente 31-32Mbytes / s. Se eles estiverem em dois comutadores diferentes, não há muito o que fazer sem um novo hardware.