Traditional cloud live streaming

Traditional video streaming uses media servers on the cloud to distribute the video. In this model, streams are sent to the media server and are relayed to the clients from the server. Most popular media server-based live streaming protocols use HLS, DASH, RTMP, and RTP/RTSP servers. The media servers would either transcode the streams from sources on the go or pass-thru as it is, based on the client requirement.

Scalability is the major challenge for a media server-based video relay streaming solution as every video data is passed through the cloud. A good quality video stream requires high bandwidth. As the number of clients increases the bandwidth must proportionally increase.

Disadvantages of traditional media server-based streaming:

  • High Cloud maintenance cost
  • High latency
  • High bandwidth utilization
  • Not suitable for one to one live streaming
  • Not designed for two-way VoIP application

How Peer to Peer streaming can solve the above problems

To overcome the problems with the media server-based approach, Peer to Peer networking has emerged as a new paradigm. In P2P video streaming, the data is not transferred to an intermediate media server but given directly to the destination. This can effectively eliminate the need for a central server and the entire live stream can be sent by the P2P network only. But this architecture still will need a cloud server for initial handshakes and signaling.

However, using P2P networks in the live streaming world can be a bit challenging as it lacks standardization, latency problems, proprietary software costs and many other technical issues. While there are some great P2P live streaming networks with protocols such as HLS, DASH, RTMP and RTP/RTSP, there are still a lot of challenges that need to be overcome.

That is where WebRTC gained its prominence. WebRTC-enabled communication has solved many of the biggest technical challenges of P2P. Specifically, P2P technologies can be used without any plugins, without adding any latency to a stream, and without degrading user experience at all.

WebRTC: All you need to know

WebRTC can be used for multiple tasks, but real-time multimedia communications between peer to peer is the primary benefit. For real time communication with another peer

  • Each peer must locate one another
  • Accept to begin communication
  • Bypass firewall protections, and
  • Transmit all multimedia communications.

A Process that exchanges the protocols and codec information between peer devices is called Signaling in WebRTC which initiates video streaming.

The biggest challenge associated with peer-to-peer communications is locating and establishing a network socket connection with another device for bidirectional multimedia data transmission. When a user enters a web address and visits a web site, a HTTP request is made to a known and easily locatable server that responds by providing the web pages in HTML, CSS, and JavaScript format

Firewalls and NAT Traversal

Most of the users access the internet from work or home-based network and therefore our computers are not assigned a static public IP address. A Network Access translator (NAT) device typically translates private IP addresses from inside a firewall to public-facing IP addresses.

For WebRTC to send audio and video data to peer, a request for public facing IP address is sent through STUN (Session Traversal Utilities for NAT) and TURN (Traversal Using Relays around NAT) servers.

STUN and TURN Servers

NATs provide a device with an IP address for use within a private local network that cannot be used externally. To solve this problem, a STUN server is used to discover their public IP and type of NAT they are behind to establish a connection for WebRTC peers to communicate.

STUN can bridge P2P connections for most NATs except the few cases where it has unpredictable port mapping. In such cases, the two peers simply cannot talk 1-on-1 directly, and all their traffic is relayed through a TURN server. TURN stands for Traversal Using Relay NAT that has public addresses, so they can be contacted by peers even if the peers are behind firewalls or proxies. It can be used as a fallback, relaying audio/video/data streaming between peers just like a traditional media server-based architecture.

Advantages of WebRTC

  • Less expensive
  • Opensource
  • End-to-End encryption
  • Low latency
  • Peer to peer streaming
  • Platform and device-independent
  • Advanced voice and video quality
  • Secure voice and video
  • Adaptive to network conditions
  • Cuts down cloud bandwidth costs

Major WebRTC Applications

When WebRTC started, it was just another VoIP protocol specification that just targeted at browsers, and now it is everywhere. Here are major applications that are making use of WebRTC:

  1. Smart Home: Many Smart devices like the smart mailbox, video doorbell uses WebRTC for audio/video communication with Mobile or Web Application which helps to communicate with visitors or family members so that no urgency remains unnoticed
  2. Healthcare: Real-time communication is prevailing in the health care industry for teleconferencing appointments, clinical meetings, remote observation of patients, and remote group therapy sessions.
  3. Industrial: Enables the administrator to monitor Real-time video feeds of company assets along with a variety of control, playback and recording options
  4. eCommerce and Retail: Many e-commerce sites looking for Pre and Post-sales support and customers looking for virtual shopping along with post-sales support
  5. Customer Service: Organizations looking for Chatbot live video, center inquiries though video, and Pre / Post-sales support

VVDN Capabilities in WebRTC

VVDN has designed and implemented multiple two-way communication projects in the past which have sub 1sec latency using WebRTC for various projects like Smart doorbells, IoT cameras, Smart Home, VoIP applications for different clients. It helped give the best user experience without hampering the quality.

VVDN has a hand on experience with different WebRTC architectures like SFU, MCU, and MESH. VVDN have compiled and customized reusable WebRTC SDKs for all platforms which will help OEMs with the benefit of:

  • Easy & fast deployment
  • Faster time to market
  • Unparalleled user experience

VVDN has built multiple camera solutions including live 360° video camera streaming over WebRTC. With a large vault of frameworks and libraries which can be customized and reused, VVDN can develop and integrate any WebRTC based streaming solution in no time.

Our capabilities in WebRTC can enable our client to take advantage of our best in class results using WebRTC

  • Advanced voice and video quality
  • Secure & Stable multimedia communication
  • Adaptive to network conditions

For more details, write to us at info@vvdntech.com

Vinoy Raghu

Author

Vinoy Raghu

Sr. Director - Cloud & Mobile Apps