On 7/16/06, Stéphane Magnenat <[EMAIL PROTECTED]> wrote:
Exactly. With UDP, we are able to sustain some packet loss without affecting the game speed (as every order is sent twice in packet N an packet N+1). This won't be possible with TCP. Any packet loss will stall the game. Furthermore, as I said before, UDP is required to trick NAT and firewalls, look at that article for a scientific analysis : http://pdos.csail.mit.edu/papers/p2pnat.pdf So switching to TCP is not impossible, but it is a huge change and should definitively not happen before 1.0, and even after I think that, for today's network model, UDP is much better suited for the task. Now, I don't say we should not write a clean and well documented lib based on the previous article to encapsulate the UDP complexity and allow syntetic testing of network layer alone. Such a lib would be very usefull. Steph
Remember that packet loss isn't common thing. It would probably happen several times throughout a game, but recovery is generally quick. Anyway, all of the people I've talked to agree a switch to TCP would be good, adding allot of reliability. Your article also talks about TCP hole punching, saying its just as fast and reliable as UDP hole punching. I understand a switch to TCP is a very large amount of changes, probably more than I want to do. So, instead, we need to fix this 0-checksum bug a different way. I'll investigate it some more,hopefull tutning up better results. The 0-checksum only appears when one player is signifigantly lagged compared to the other players, in which he recieves a checksum of 0 and crashes. -- Start and finish, Bradley Arsenault _______________________________________________ glob2-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/glob2-devel
