4 ms·
Reliable UDP is the best of both worlds (http://tools.ietf.org/html/draft-ietf-sigtran-reliable-udp-00 http://tools.ietf.org/html/draft-ietf-sigtran-reliable-ud
by drawkbox 13y ago
Reliable UDP is the best of both worlds (http://tools.ietf.org/html/draft-ietf-sigtran-reliable-udp-00 http://tools.ietf.org/html/draft-ietf-sigtran-reliable-udp-0...), and most decent networking libraries use that over TCP. You can make reliable and unreliable requests as needed and very required for any close to real-time game.
Enet is an open source version (http://enet.bespin.org/ http://enet.bespin.org/). But lots of industry platforms use it like Photon if using Unity or RakNet native direct. A network library not built on reliable and unreliable capablities (RUDP since running TCP and UDP same time is overkill) is going to be slow and overkill and you'll have to rewrite it (unless you are doing turn based). HTTP/S access also needed for other basic messages for states and setup etc.
RUDP is the best base of multiuser virtual environments that we have so far until protocols like SCTP (http://tools.ietf.org/html/rfc2960 http://tools.ietf.org/html/rfc2960) but those probably won't happen widespread, so RUDP it is on top of UDP and you don't need to write a library/toolkit/server, there are plenty. It is like writing TCP only you can pick and choose which messages are important/reliable/prioritized.