Why is UDP called "unreliable"?
UDP is called "unreliable" because it does not guarantee data delivery and does not control the transmission process in any way.
More simply: UDP sends data and does not check whether it arrived.
What exactly makes UDP "unreliable"
1. No delivery acknowledgments
UDP:
- does not wait for an ACK
- does not know whether the receiver got the message
If a packet is lost:
- the sender never finds out
2. No retransmission
UDP:
- does not resend lost packets
- does not try to recover the data
Once lost, it is lost forever.
3. No order guarantee
UDP:
- does not number messages
- does not assemble them in the correct sequence
Messages can arrive:
- in a different order
- or not arrive at all
4. No congestion control
UDP:
- does not reduce speed under network congestion
- may keep sending data
This can:
- worsen congestion
- lead to packet loss
5. No flow control
UDP:
- does not account for whether the receiver can keep up with processing the data
- may "flood" the application with messages
What UDP does still do
Important. UDP is not entirely "irresponsible":
- it preserves message boundaries
- it checks basic integrity (checksum)
- it delivers data on a best effort basis
But:
- if something goes wrong, UDP does not fix the situation
Why this is done on purpose
UDP is deliberately simple because that gives:
- minimal latency
- minimal overhead
- predictable delivery time
For many applications, this matters more than reliability.
Where "unreliability" is an advantage
UDP fits well when:
- reaction speed matters
- losses are acceptable
Examples:
- voice communication
- real-time video
- online games
- DNS
Short Answer
Interview readyPremium
A concise answer to help you respond confidently on this topic during an interview.