Decoding WebRTC

WebRTC burst onto the scene in 2011 and generated a huge buzz.  Everyone talked about how revolutionary it would be, how it was “going to explode,” and “change everything!” But a lot of the stuff I read didn’t explain how that was going to happen, or what WebRTC actually is. Now that it’s being implemented widely, I’ve noticed more discussion about it. Still, this discussion did little to provide clarity for users that weren’t developers. In today’s blog post I’m going to decode and explain WebRTC.

What is it?
WebRTC stands for Web Real Time Communications. Essentially, WebRTC is an API that allows users to make and receive voice and video calls through a web browser. This initiative is supported by Google, Mozilla, and Opera. Their joint mission statement, as quoted from their website is “To enable, rich, high-quality RTC applications to be developed for the browser, mobile platforms and IoT devices, and allow them all to communicate via a common set of protocols.” Like any revolutionary technology, there are a lot of challenges as well as benefits.

Decoding WebRTC

How does it work?
Without getting too technical and simply put, think of a voice or video call using WebRTC in terms of steps.

  1. Call is initiated by Side A
  2. Call needs to pass through Side A’s Firewall and NAT
  3. Call needs to find the person being called (Side B)
  4. Signal needs to pass through Side B’s Firewall and NAT
  5. Now the voice and video need to travel in both directions, in real time.

Essentially, there is a lot going on and a lot of pieces that need to work together. A WebRTC call is basically like getting from point “a” to point” b” by crawling under barbed wire and over a wall during a hail storm. The internet isn’t perfect. No one owns it, therefore there are few guarantees and not a lot that can be done to control the quality of service. This is what made WebRTC such a challenge.

Thanks to STUN, TURN, and ICE your WebRTC call will get through the hail storm and then some.  Session Traversal Utilities for NAT (STUN) helps find a host’s (caller or call recipient) IP address when it is behind a NAT/Firewall. When an incoming call comes it, STUN provides the public IP address, if this does not pass through then the Traversal Using Relay around NAT (TURN) comes in and establishes the connection. ICE simply refers to the standard that coordinates STUN and TURN.

What makes it great?
WebRTC is implemented using an API, so naturally this makes it easy to plug in regardless of web browser, operating system, or device. The API is also free and open source, so nothing needs to be created from scratch-saving developer’s time. However, it still requires a high-level of expertise and understanding to implement.

Feature-wise WebRTC has a lot to offer: one-click calling, encryption of voice and video (with SRTP). You can also hear everyone more clearly thanks to excellent noise cancellation.

IPVideoTalk: How Grandstream is making WebRTC work for you
WebRTC is a fascinating, convenient technology that makes meeting and connecting easier than ever. Grandstream Networks created IPVideoTalk, a video, audio, and web conferencing service allowing users to join from anywhere. Any meeting hosted on a GVC (video conferencing hardware system) can be turned into an online meeting that can be joined in one-click from a WebRTC capable browser.  Have a GVC and want to check it out? Start a free trial today! Sign up here.





Topics: Video Conferencing, Cloud Services