User Datagram Protocol (UDP) is a core communication protocol in the Internet protocol suite, operating at the transport layer. It is designed for fast, low-latency, and loss-tolerant connections between applications, making it especially suitable for time-sensitive transmissions such as video streaming, online gaming, voice over IP (VoIP), and DNS lookups.

Key Characteristics

• Connectionless: UDP does not establish a formal connection between sender and receiver before transmitting data. Instead, it simply sends packets—called datagrams—directly to the recipient without a handshake or confirmation process.
• Unreliable Delivery: UDP does not guarantee the delivery, order, or integrity of packets. Packets may arrive out of order, be duplicated, or get lost entirely. If reliability is needed, it must be handled by the application itself.
• Minimal Overhead: Because UDP skips connection establishment and error correction, it has less overhead and is generally faster than alternatives like TCP.
• Stateless: UDP does not maintain any state about the communication session, making it scalable for applications with many simultaneous clients, such as streaming media platforms.

How UDP Works

• Data to be sent is packaged into a UDP datagram.
• Each datagram includes a small header with four fields: source port, destination port, length, and checksum (for optional error checking).
• The datagram is sent to the recipient’s IP address and port. There is no guarantee of arrival or order, and no feedback is provided to the sender.

Typical Use Cases

UDP is preferred for applications where speed is more important than reliability or where the application can tolerate some data loss, such as:
• Real-time audio and video streaming
• Online gaming
• Voice over IP (VoIP)
• DNS lookups
• Network time synchronization (NTP)

Synonyms:
User Datagram Protocol