Chepko Danil - Fotolia
What factors influence WebRTC performance?
Understanding the potential issues that could affect the performance of WebRTC apps starts with knowing which factors to look at and how they function.
Part one of this Ask the Expert response discusses the two factors that influence Web Real-Time Communications performance. In part two, our expert Tsahi Levent-Levi will explain how to measure these factors to ensure the performance of WebRTC services.
In many ways, measuring WebRTC performance is similar to measuring the performance of any other voice-over-IP-related protocol. The underlying media transport protocol used by WebRTC is the same one used for other VoIP-related protocols. WebRTC uses Secure Real-Time Transport Protocol for its media transport, and most VoIP services also use STRP to send encrypted media.
When measuring WebRTC performance, you should focus on two factors: percentage of successful session connections and media quality.
Successfully connecting WebRTC sessions
The percentage of successful session connections can be attributed to two factors: the application's signaling doing what it should and interactive connectivity establishment (ICE) in WebRTC.
WebRTC does not have signaling technology built into it, but signaling can affect whether sessions connect. Check the configuration of the signaling protocol you chose for your WebRTC application to check its connectivity.
WebRTC uses ICE negotiation in order to connect an SRTP stream from one device to another, be it browsers, applications or media servers. ICE figures out the best available option for connecting these devices based on the current location, the devices and their network makeup. At times, ICE will connect the devices through the Traversal Using Relay NAT protocol, while other times it will use a peer-to-peer connection.
You'll want to measure how often failures occur. Failures can result from signaling connection issues, ICE failures or receiving only one-sided media.
Using media quality to support WebRTC performance
The next thing to check in relation to WebRTC performance is the media quality, which is affected by the network. The leading quality metrics to consider are bitrate, jitter, latency and packet loss. This information can be gleaned from Real-Time Transport Control Protocol, which is part of how SRTP works.
As a rule of thumb, when packet loss, jitter and latency are higher, media quality will be lower. Lower bitrate can also result in lower media quality.
Different scoring methods can be used to measure quality. Mean opinion score is the most common method, though it can be inaccurate. Sometimes, you will want to dig deeper and analyze the media stream itself to measure quality.
Do you have a question for Tsahi Levent-Levi or any other experts? Ask your enterprise-specific questions today! (All questions are treated anonymously.)