The User Datagram Protocol (UDP) is one of the Internet’s core transport protocols. Unlike TCP (Transmission Control Protocol), which builds a connection before sending data, UDP is connectionless — it sends data instantly, without waiting for confirmation.
This makes UDP faster but less reliable — it doesn’t guarantee that data packets arrive in order or even arrive at all. Still, for many real-time applications, speed matters more than perfection.
UDP’s job is simple: move data from one device to another — quickly.
Unlike TCP, UDP doesn’t perform a handshake before sending data. It simply sends “datagrams” to the target device, skipping connection setup and delivery checks.
If a datagram gets lost or corrupted, UDP doesn’t resend it. This trade-off allows for minimal delay — perfect for time-sensitive communications like streaming or gaming.
Here’s how UDP and TCP differ in purpose and behavior:
Connection:
UDP is connectionless — no handshake, no waiting.
TCP is connection-oriented — it first establishes a secure link.
Reliability:
UDP doesn’t guarantee delivery or order.
TCP ensures data arrives correctly and in sequence.
Speed:
UDP is extremely fast, with minimal processing.
TCP adds latency due to checks and retransmissions.
Use Cases:
UDP is ideal for real-time applications — streaming, VoIP, gaming, and DNS.
TCP is better for reliable transfers — web pages, emails, and file downloads.
UDP shines when speed and low latency are more important than perfect accuracy:
Voice and video calls (VoIP)
Live streaming
Online games
DNS lookups
Real-time updates and sensor data
In short, UDP trades reliability for raw speed, making it essential for the modern, real-time Internet.