Improve Your WebRTC Server With a Better Network

Jun 30, 2021By Mo Nezarati

TL;DR

WebRTC drives much of today’s rising tide surrounding real-time communication applications, but research shows that the underlying network can limit WebRTC performance. Quality of service can depend on having a network designed for modern WebRTC metrics and forward-looking needs.

Estimated read time: 6 minutes


Before the pandemic, video calls were a “nice-to-have” option. Then, suddenly, they were mandatory. Perhaps to cope with the isolation of quarantine, people and businesses shunned voice-only phone calls and real-time video became essential. Today, as we emerge from the pandemic into a new normal, there seems to be little sign of shedding our online real-time communication (RTC) affinity. If anything, developers are seeking ever more ways to build RTC into their applications.

Going forward, a strong RTC implementation may be vital to an application or platform’s success, and the WebRTC protocol is one of the best vehicles for providing RTC functionality. However, WebRTC is only as good as the network architecture supporting it. Let’s dig into WebRTC and examine how it can fulfill your application’s present and future needs.

WebRTC: Origins and limitations

In 2010, Google acquired Global IP Solutions, a firm responsible for developing many core requirements that enable RTC to this day. Then in mid-2011, Google released an open source project for browser-based RTC: WebRTC; it became an official standard in 2021.

We can now enable WebRTC-based communications across different browsers and achieve very impressive real-time results with fluid frame rates and professional-level reliability. However, this is assuming those communications can travel across a persistently performant and optimized network.

While WebRTC was designed for real-time communications, the underlying public internet was not. The internet was made for resilience and to ensure that somehow, no matter how slowly, data packets would make it from sender to recipient. All those years ago, the idea of high-resolution, real-time communications over the network was the stuff of fever dreams and science fiction. Honestly, it’s a testament to the genius of network engineers that the public internet handles WebRTC at all. But “just working” isn’t a consolation to users when they’re faced with low frame rates, distorted audio, buffering, and drops.

WebRTC performance can be measured by analyzing media quality, which relies on metrics including jitter, latency, packet loss, and bit rate. This information is provided by the RTP Control Protocol (RTCP), which allows systems to adjust the quality of service parameters on the fly. When you conduct even a cursory study of WebRTC performance, it becomes clear that the underlying network plays a critical role. Researchers at Columbia University detailed this in a paper: “Performance Evaluation of WebRTC-based Video Conferencing.” In their conclusion, the authors state, “Our evaluations in synthetic, yet typical, network scenarios show that WebRTC is sensitive to variations in RTT packet round-trip time and packet losses. Further, our evaluations on real wired and wireless networks show that bursty packet losses and retransmissions over long RTTs can especially lead to poor video performance.”

You can’t change the public internet. But that doesn’t mean your WebRTC users have to suffer.

Setting WebRTC free

Like when you switch from a cracked and pothole-ridden road to a freshly paved highway, migrating applications to a newer, optimized network can make very noticeable differences in WebRTC applications. In particular, gaming benefits considerably from running on an improved network. Lower latency means a lot less frame dropping and rubber banding and broader geographic reach at fluid play speeds. Combined with faster connectivity, players can enjoy bigger, better matchmaking pools and reduced join-time for getting from lobby to gameplay. Audio quality improves in fidelity and/or reliability. And because an intelligent, well-managed network can adapt to changing conditions in real-time, players don’t run into traffic congestion that kills their gameplay.

The technical benefits experienced with gaming often cross over into voice and video calling. On the surface, faster group call connections mean less waiting, but this is made possible by enhancements to the network that manifest in quantifiable performance improvements across factors such as latency, jitter, and packet loss. These quality of service (QoS)-oriented metrics feed into the rating factor (R-factor) and mean opinion score (MOS) measurements used by call centers to determine voice-over-IP (VoIP) call quality. Especially given the workplace and load transitions experienced by voice and video networks since the COVID pandemic, call center platforms, and similar WebRTC-type group communications applications can easily scale to meet rising demand with a well-architected, lightning-quick network.

Note that with network bottlenecks removed, much more of WebRTC’s potential can be unleashed. With no need for signaling, applications can ring multiple endpoints simultaneously, which means colleagues can join conferences instantly. Conferencing software can still optimize streams for bandwidth, resolution, and frame rate, but the need for this is reduced when the network is running at its full potential.

Gaming, voice, and videoconferencing gather the most attention, but there are plenty of other WebRTC applications. RTCDataChannel, for example, is a WebRTC API that enables bi-directional, peer-to-peer data transfer of any type. You can have WebRTC media servers, website hosting servers, and application servers. In all cases, the lower latency, faster connections, better user experiences, and enhanced security of a mature but highly performant network all contribute to the best WebRTC experiences users can achieve today.

The network is the key

No doubt, you’ve noticed a theme by now. Subspace offers the next-generation network that modern, real-time entertainment and interactive media applications need, but that’s because we built Subspace from the ground up to be purpose-built for real-time communications. The company was born from years of founders and key engineers struggling with public internet shortcomings and how they impacted online software. We all know that the technology that brought us to today won’t take us to the tomorrow we want.

So, Subspace fixed these problems without taking away any of the internet’s benefits. We created a parallel network that addresses the internet’s shortcomings and adds to its greatness, and we make it easy for developers to plug right into our solution via an API. Today’s real-time world needs WebRTC applications to run better. Subspace simply lets them run at their best, in the fast lane via Subspace GlobalTURN: a solution that provides global TURN services for WebRTC-based applications.

Instead of having to test out options to find the best server pairing, GlobalTURN provides TURN as a service. By eliminating the need for multiple TURN servers, as well as the traffic bottlenecks that can occur from routing traffic through a single relay point, GlobalTURN does away with latency issues that often slow real-time apps and prevent them from fully delivering on their promise. Additionally, GlobalTURN avoids hairpinned media through servers. It's architecture makes TURN connections feel like peer-to-peer connections.

Want to start building on Subspace today? Sign up here.


Related Articles