Why UDP Is Called a Fire and Forget Protocol
The User Datagram Protocol (UDP) is fundamentally defined by the “fire and forget” networking model, where data packets are transmitted without establishing a connection or verifying that they reach their destination. Unlike connection-oriented protocols that manage reliability, UDP prioritizes speed and efficiency by sending data immediately and relinquishing any responsibility for delivery confirmation, error recovery, or packet ordering.
The Mechanism of “Fire and Forget”
In networking, “fire and forget” refers to a communication method where a sender transmits a message (the “fire”) and moves on immediately without waiting for an acknowledgment or tracking the message’s state (the “forget”).
UDP applies this concept through several key architectural features:
- No Handshake: UDP is connectionless. It transmits data without performing a preliminary multi-step handshake (such as the three-way handshake in TCP) to establish a formal session between the sender and receiver.
- No Acknowledgments (ACKs): Once a UDP packet—called a datagram—is sent, the sender does not expect or listen for a confirmation receipt. The sender has no awareness of whether the packet arrived intact, arrived corrupted, or was lost entirely in transit.
- No Retransmission: Because there are no delivery receipts, UDP does not detect dropped packets and will never automatically retransmit lost data.
- No Ordering or Flow Control: UDP does not track the sequence of packets. Datagrams may arrive out of order or follow different routing paths, and the protocol does not reorder them for the receiving application.
Why Systems Use the “Fire and Forget” Approach
While omitting reliability checks might seem disadvantageous, the “fire and forget” nature of UDP removes significant protocol overhead and eliminates latency caused by waiting for acknowledgments and retransmissions.
This model is ideal for scenarios where timeliness is more critical than absolute data integrity:
- Real-Time Audio and Video (VoIP, Live Streaming): In live communications, dropping an occasional audio frame is preferable to pausing the stream to wait for retransmitted packets.
- Online Multiplayer Gaming: Fast, continuous state updates (like player coordinates) must be processed immediately. Stale data from retransmissions is useless by the time it arrives.
- Simple Query-Response Services (DNS): For lightweight transactions where a request fits inside a single packet, the overhead of establishing and tearing down a connection is unnecessary. If a response is not received, the application layer can simply handle retries on its own.