UDP doesn't guarantee delivery, doesn't retry failures, doesn't even care if your packets arrive. For video calls and online games, that's exactly what makes it work.
TCP requires multiple round trips before you can send a single byte. QUIC rebuilds reliable transport on UDP, achieving encrypted connections in one round trip and eliminating the head-of-line blocking that makes HTTP/2 stall.
Two devices behind firewalls can't talk—each waits for the other to reach out first. UDP hole punching solves this impossible standoff by having both reach out simultaneously, creating the openings they need to connect directly.
UDP doesn't recover lost packets because for real-time applications, old data arriving late is worse than no data at all. Here's how to detect loss with sequence numbers, recover selectively with acknowledgments, prevent loss with forward error correction, or hide it entirely through prediction.
Why does a 'reliable' protocol make real-time worse? Because in gaming, VoIP, and streaming, old data isn't late—it's wrong. UDP lets applications be smart about what to lose.
TCP solves the wrong problem for real-time applications. When a packet that arrives late is worse than one that never arrives, UDP's apparent weakness becomes its strength.
Was this page helpful?