Tech

RTCP-XR

Published on:

July 22, 2013

Version 5.1 introduces a setting to disable RTCP-XR on trunks - not as a feature, but as a necessity. RTCP-XR provides detailed reports on call quality, including packet arrival times, jitter, and MOS scores, making it valuable for troubleshooting and service-level documentation. Many service providers, however, use equipment that rejects unknown SDP content, causing interoperability issues. Since most providers and devices don’t support RTCP-XR, the default setting now suppresses its advertisement, ensuring compatibility. If providers adopt it in the future, it can be selectively enabled. This change ensures smoother integration while maintaining call quality diagnostics where possible.

In version 5.1 we have introduced something that cannot be called a feature, a setting that disables RTCP-XR on trunks. This is sad, but we have to deal with reality.

What is RTCP-XR? RTCP stands for Real Time Control Protocol. It pairs with the RTP protocol, which is used for sending the audio and video real time media. While RTP deals with the media itself, RTCP deals with the stuff around it, thus the word "control." Control information may contain a name for the media, notifications for when the media gets disconnected, and also information about its performance.

Especially important are reports about how long it takes to send the media from the sender to the recipient. Other interesting information is how much jitter the media had, meaning how much the packet arrival time varied compared to the ideal arrival time. Over time, RTCP has evolved into an important tool for troubleshooting media transport problems.

That’s where RTCP-XR came in. The XR stands for "extended report." Because what RTCP could deliver was limited, the IETF working groups came up with something more elaborate. RTCP-XR can deliver a very detailed report on which packets actually made it and even what their receipt timestamps are. RTCP-XR can be seen as a recording solution for the packet delivery, thus documenting service level agreements. In times of big data, this sounds like an exciting way to ensure the services in the cloud perform well.

But RTCP-XR is also a lot about compressing the information. That’s where statistics comes in. On the lower layers, RTCP-XR deals with arrival statistics; it bursts when packets are completely missing and the codecs that have been used. The ultimate compression is giving the call as a whole a score. It's hard to describe how a person perceives audio quality, but RTCP-XR gives it a try and comes up with a mean opinion score (MOS). This is a number for how a caller would rate the call on a scale between 1 and 5 (you might have noticed the reports on the snom ONE web interface).

Because RTCP-XR is obviously not backward compatible, it must be negotiated between the sender and the receiver: the IETF document proposes adding a line to the SDP that's used to set the session up. There, both parties can negotiate if and what RTCP-XR information should be collected.

So far so good.

In the real world, there are only few devices that support RTCP-XR. snom introduced it a couple of years ago, and Polycom was amongst the first to offer it. Most devices don’t offer it, silently ignoring the line in the SDP as they should.

The problem is many service providers are using equipment that gets suspicious when they receive SDP content they don’t understand. And when they don’t understand something, they reject it. That’s when snom ONE customers start to complain that snom ONE doesn't work with service provider XYZ, while their free softphone does.

I am actually not aware of a single service provider that supports RTCP-XR; it seems customers compress the service provider quality essentially to the price, and not to its quality or reporting it.

The only way out here was to introduce a setting on the trunk that suppresses the advertisement of the extended reports and set it to suppress by default. Thanks to the drop-down menu we recently introduced, we can add it selectively back if certain service providers start supporting it.

Latest Articles

View All

Jitsi Video Conferencing in V70: A Controlled Approach to Privacy

Video conferencing is widely used, but rarely examined in terms of where it runs and who controls the infrastructure behind it. In many cases, video traffic is handled by external systems, introducing dependencies that are often overlooked. This piece explores how integrating Jitsi directly into the PBX brings video into the same environment as voice and communication management, giving organizations clearer boundaries, reduced reliance on third-party platforms, and greater control over how communication is handled.

April 21, 2026

Skills-Based Routing in V70: Match Calls to the Right Agent

Skills-based routing in V70 helps ensure incoming calls are matched with the most qualified available agents based on defined skills, language, and expertise. By combining IVR input with intelligent call distribution, organizations can reduce unnecessary transfers, improve first-contact resolution, and shorten handling time. With V70, skills can be defined directly within the PBX, allowing teams to set thresholds, prioritize expertise, and control how calls are routed across departments, queues, and different operational environments.

April 7, 2026

Snapshots in V70: Capture and Restore Your PBX with Confidence

PBX snapshots in V70 provide a reliable way to capture system state before changes are applied, enabling fast recovery, controlled rollback, and more predictable system management when updating configurations, testing call flows, or operating across multiple tenants. By preserving a point-in-time version of the system, administrators can reduce the risk of disruption, restore services quickly when issues arise, and maintain stability while making ongoing changes in complex communication environments.

March 31, 2026