Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I have a network application that needs to send messages at 60 times a second. The messages are usually 300-400 bytes, but can be as large as 1500. The default setting for SO_SNDBUF is too small and limits the number of message that can be sent if the network latency is anything greater then 100ms.

The naive solution is to just bump the SO_SNDBUF size to to something large. However, depending on the latency and the packet size that could be anywhere from 64K to 8MB.

One of Vista's new features is TCP autotuning. Autotuning monitors the tcp connection and dynamically adjust the buffer sizes to allow for optimal communication.

I would like to use auto tuning on our windows xp machine so I don't need to guess what my buffers sizes should be.

Is there a way to install either a microsoft or 3rd party tcp autotuner on windows xp?

share|improve this question

1 Answer 1

up vote 1 down vote accepted

Sounds like your probably sending data via TCP that should be sent via UDP, RTSP/RTP, or SCTP. TCP was not meant for live time-sensitive data streams, it's meant to guarantee delivery (eventually; or at least reports a delivery failure).

share|improve this answer
    
I completely agree. The messages are very time sensative which makes this an obvious choice for UDP. However, I didn't design the protocol, I'm just implementing it. –  deft_code Jun 3 '10 at 21:34
1  
Well I'd be stuck in the same boat. I don't know of any way to autotune the buffer size, and I suspect since it's part of the kernel space, there is no way. –  Chris S Jun 4 '10 at 0:41
    
I'm accepting your answer as "there is no way". –  deft_code Aug 25 '10 at 20:22

Your Answer

 
discard

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.