Sequence Number Gaps
Size of consecutive packet loss events — reveals burst loss magnitude that average loss statistics hide.
Sequence Number Gaps
| Property | Value |
|---|---|
| Key | sequence_number_gaps |
| Unit | Packets |
| Type | Gauge |
| Direction | Receive |
| RFC | RFC 3550 |
What It Measures
Sequence Number Gaps measures the size of individual burst loss events by counting how many consecutive RTP sequence numbers are missing. When packet 100 arrives followed by packet 105, there is a gap of 4 missing packets (101, 102, 103, 104).
While Packet Loss Rate tells you the overall percentage of packets lost, sequence gaps tell you whether that loss was spread evenly across the call (random loss) or concentrated in bursts (burst loss). This distinction matters because the same 2% total loss rate produces very different user experiences depending on the pattern.
Why It Matters
Burst loss and random loss have fundamentally different impacts:
- Random loss — One packet lost here, another there. Codec concealment algorithms handle this well. At 2% random loss, most users will not notice.
- Burst loss — Ten consecutive packets lost at once. That is 200ms of missing audio for a 20ms packetization stream. No concealment algorithm can hide a 200ms gap. The user hears an obvious dropout.
Sequence gaps give you the burst size, which directly predicts how noticeable each loss event will be:
| Gap Size | Duration (20ms ptime) | Impact |
|---|---|---|
| 1 packet | 20ms | Concealed by codec |
| 2-3 packets | 40-60ms | Minor glitch, often concealed |
| 5-10 packets | 100-200ms | Audible dropout |
| 10+ packets | 200ms+ | Obvious gap in conversation |
How CallMeter Measures It
CallMeter monitors the RTP sequence number progression and detects gaps where one or more expected sequence numbers are missing. The size of each gap (number of missing consecutive packets) is recorded as a gauge value, typically reflecting the largest gap observed in the current measurement window.
Thresholds
This metric does not have standard thresholds because acceptable gap size depends on codec and concealment capabilities. As a general guide:
| Gap Size | Severity |
|---|---|
| 1-2 packets | Normal — handled by concealment |
| 3-5 packets | Concerning — may be audible |
| 5+ packets | Critical — will cause audible dropouts |
What Causes Large Sequence Gaps
- Network congestion bursts — Queue overflow at a congested router drops multiple consecutive packets before the queue drains.
- Route flaps — During routing reconvergence, packets may be dropped for the duration of the convergence event (typically 50-200ms).
- Firewall state timeout — A stateful firewall dropping all packets until a new "connection" is established.
- WiFi channel contention — Extended contention periods on crowded WiFi channels can delay or drop multiple consecutive packets.
- Rate limiter bursts — Token bucket rate limiters that allow bursts followed by drops once the bucket empties.
How to Fix It
- Compare gap size with total loss. If total loss is 2% but gaps are large, you have burst loss. If total loss is 2% and gaps are always 1, you have random loss. The fix differs.
- Burst loss remediation — Focus on eliminating the burst source: route flap damping, firewall timeout tuning, QoS priority queuing.
- Random loss remediation — Focus on overall capacity: bandwidth upgrades, traffic prioritization, path optimization.
- Correlate with timing. Use CallMeter's per-second timeline to see when gaps occur and look for patterns (periodic, time-of-day, correlated with other events).
Gap Size vs Loss Rate
A single 10-packet gap in a 60-second call (3,000 packets) produces only 0.3% loss rate — well within "Good" thresholds. But that single gap is a 200ms dropout that the user absolutely noticed. Always check gap size alongside loss rate.
Related Metrics
- Packet Loss Rate — Overall loss percentage (hides burst patterns)
- Packets Lost — Total count of lost packets
- Sequence Jumps — Large sequence discontinuities (different from loss gaps)
- Out-of-Order Packets — Packets that appeared lost but arrived late