Effective Diagnosis of Network Problems with WebRTC Apps!

It discusses the key metrics to look at If you are experiencing issues where things work well on one network but not another. For Example: What happens when a video call works perfectly in one environment, but degrades rapidly in another?

It gives a brief on the key metrics to note like Bandwidth, Latency (Lag), Loss and Jitter.

  • Bandwidth

Bandwidth refers to the rate at which data can be transferred between two endpoints.

The symptoms of an overwhelmed/overloaded connection that exceeds the available bandwidth are:

Permanent video freezing, Permanent video frame-rate drops, Disrupted audio and dropped connections.

If you experience this it’s easy to test bandwidth. You can run quick bandwidth tests by simply hosting a large file on a server and seeing how much can be downloaded in a second or two. It’s a simple and highly effective method in troubleshooting a problematic network.

  • Latency

Latency is the amount of time it takes to get from one network interface to another.

Round-trip time (RTT) is closely related, as it is the time it takes to get from one network interface to another and then back again. If x is the latency from A to B and y is the latency from B to A, then the RTT is calculated as x + y.

A perfect video streaming relies heavily on the use of negative acknowledgements (NACKs) sent by the receiver to the sender whenever a packet is dropped. The sender has the opportunity to resend the missing packet by avoiding the need for a full frame refresh to be sent.

A high latency network reduces the effectiveness of the approach, since the round-trip time may exceed the length of time the receiver can wait.

While diagnosing a high-latency connection, we may find lag in audio/video playback, occasional video freezing, occasional video frame-rate drops and smooth audio.

  • Loss

Loss is the number, or percentage, of packets that are dropped or lost in a stream over a period of time.


Most media streams will drop a few packets, especially on WiFi networks. In a Real-Time media stream, packet loss is generally preferred as it allows the connected devices to drop data/frames rather than introducing lag into the playback.

A high amount of packet loss will result in the following symptoms frequent video freezing, frequent video frame-rate drops and disrupted audio.

  • Jitter

Jitter is a measure of the consistency of timing within a network stream. In other words, how much packet delivery deviates from the expected arrival time.

Jitter occurs in every connection. Networks with higher hop counts or higher latency networks are more likely to experience high levels of jitter.

Once a packet has been processed by the decoder, old packets must be discarded. This could very easily result in throwing out packets that could have improved audio quality or eliminated the need to retransmit a video packet.

A jitter buffer is responsible for delaying the processing of media packets just enough to smooth out delivery times and ensure correct packet order for the next stage in the processing pipeline.

The possibilities of high jitter will be, bursts of video freezing, bursts of video frame-rate drops, and bursts of disrupted audio.