[Twisted-Python] Unreliable UDP

Mike Wyatt mwyatt at wi.rr.com
Thu Oct 19 20:08:11 MDT 2006


Check out Q3 and Q4 in the GameDev.net "Multiplayer & Network 
Programming" Forum FAQ:  
http://www.gamedev.net/community/forums/showfaq.asp?forum_id=15

The problem with TCP is summed up nicely in Q4:  /"...to make this 
guarantee, TCP must suspend all packet delivery to the receiving end, if 
one packet is lost, until that packet can be detected as lost and 
re-sent."/  You can also check out this classic multiplayer design 
article:  http://www.gamasutra.com/features/19990903/lincroft_05.htm.  
The author is *very* against TCP.  Apparently the X-Wing vs. TIE Fighter 
developers were seeing pings of up to 50 seconds using TCP.

On the other hand, Q3 of GameDev's forum FAQ recommends TCP for 
real-time strategy games, or UDP in "extreme" cases.  This makes me more 
comfortable with using TCP, at least for early development, since 
testing on my LAN shouldn't have any problems with dropped packets.

The collective experience of the game development community seems to 
/lean /towards UDP for most game development.  I'm not against using 
TCP, but if I can find a solution that makes UDP equally easy, I'd like 
to use that. <http://www.gamasutra.com/features/19990903/lincroft_05.htm>
> Really, truly, honestly, this doesn't make sense. You want *both*
> reliability *and* guaranteed delivery order: that is precisely what
> TCP does. Why do you want to use anything else? If you don't want to
> reinvent the wheel, use TCP.
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20061019/ffbf127c/attachment.html>


More information about the Twisted-Python mailing list