UDP (User Datagram Protocol) is a connectionless protocol. This means that it doesn't establish a dedicated connection between the sender and receiver before transmitting data. It simply sends packets (called datagrams) without any prior setup.
Because it's connectionless, UDP doesn't guarantee delivery. Packets can be lost, arrive out of order, or be duplicated. There are no mechanisms for acknowledgments, retransmissions, or flow control.
UDP is predominantly used for applications like streaming and video games, where speed and low latency are more critical than guaranteed delivery.
In many streaming and gaming scenarios, losing a few packets is acceptable. For example, a dropped frame in a video stream might cause a brief visual glitch, but it's often preferable to a pause or delay caused by retransmitting the lost packet. In games, losing a minor update might mean a slight visual discrepancy, but it's better than delaying the entire game state.
Online Multiplayer Games: Games like first-person shooters and MOBAs rely heavily on UDP for sending real-time updates about player positions, actions, and game state.
Live Video Streaming: Platforms that stream live video content, such as Twitch or YouTube Live, often use UDP for its speed and low latency.
Voice over IP (VoIP): Applications like Skype or Zoom use UDP for transmitting voice data, as a small amount of packet loss is usually not noticeable in voice conversations.
****
A) Guarantees packet delivery through acknowledgments: This is a characteristic of TCP (Transmission Control Protocol), not UDP. TCP uses acknowledgments and retransmissions to ensure reliable delivery.
B) Requires handshake before sending data: This is also a characteristic of TCP. TCP uses a three-way handshake to establish a connection before data transmission.
C) Always maintains packet sequence order: TCP maintains packet order using sequence numbers. UDP does not guarantee any specific order of packet arrival.