UDP vs TCP Packet Loss in Voice Calls
When participating in a voice-over-IP (VoIP) call, network packet loss is inevitable, but the protocol handling that data dictates what the user actually hears. The choice between User Datagram Protocol (UDP) and Transmission Control Protocol (TCP) creates fundamentally different user experiences during packet loss: UDP sacrifices audio completeness for real-time speed, whereas TCP sacrifices real-time speed to ensure no data is lost.
Dropped UDP Packets: Brief Glitches with Real-Time Flow
UDP is a connectionless protocol that sends data continuously without waiting for acknowledgment or resending lost packets. Because of this “fire-and-forget” approach, a dropped UDP packet results in:
- Minor Audio Artifacts: The listener usually experiences a subtle pop, a robotic blip, a dropped syllable, or a micro-second of silence.
- Preserved Conversational Timing: Because the system simply ignores the missing packet and plays the next one that arrives, the conversation stays strictly in real time.
- Brain Adaptation: Human cognition easily fills in missing micro-gaps in spoken language, meaning minor UDP loss often goes unnoticed or causes minimal disruption to the flow of dialogue.
Modern voice codecs also use Packet Loss Concealment (PLC) to interpolate and mask these tiny gaps, making occasional UDP drops nearly invisible to the user.
Dropped TCP Packets: Freezes, Lag, and Conversational Collisions
TCP is a connection-oriented protocol built for reliability, meaning it guarantees that every single packet arrives in exact sequential order. When a TCP packet drops during a voice call, the following occurs:
- Audio Freezes and Buffering: The audio stream halts completely due to “head-of-line blocking.” The receiving application cannot process subsequent packets until the missing packet is requested, retransmitted, and received.
- Accumulating Latency: Waiting for retransmissions introduces delay. As more packets drop, this delay compounds, pushing the audio further behind real time.
- Talk-Over Effect: The artificial delay disrupts human interaction dynamics. Users begin talking over each other because they respond to statements heard seconds after they were actually spoken.
- Sped-Up Audio Bursts: Once the retransmitted data finally arrives, the system may play the backlogged audio in a fast, rushed burst to try and catch up to real time.
Summary
In a voice call, a dropped UDP packet creates a brief, localized audio imperfection while keeping the conversation synchronized and natural. In contrast, a dropped TCP packet creates disruptive latency and pauses, making natural two-way conversation difficult or impossible. For this reason, nearly all real-time voice applications rely on UDP.