30-07-2008, 08:53 PM
Dragoons Master Wrote:I am using TCP, but somehow they are not. That's reeeealy weird.
Impossible. If you are dropping or receiving messages out of order in TCP, your implementation is flawed.
As for Nagling, it is nothing more than a buffer for queueing data to send. It will increase latency but also decrease bandwidth since it results in less headers (which is 40 bytes for TCP/IPv4). Ideally you want to create your own buffering. Have every "send" to a user queue the message instead of sending it to Winsock. Then define your own way of deciding when to send. You can do it once per server tick, once every X ms, etc. vbGORE uses a combination of a maximum queue time combined with message priorities to decide when to send. A message will always be sent in