WarsawJS Slides: Overview

We talk about JavaScript. Each month in Warsaw, Poland.

Speaker

Tomasz Rzeźnik

"WebRTC: Overview" PL

2017-05-09

rzeznik.tom@gmail.com

Overview

What is WebRTC

A set of JavaScript APIs in the browser to enable peer-to-peer, real-time media and data exchange.

What does WebRTC provide?

WebRTC across platforms

Supported browsers & platforms

Chrome

Firefox

Opera

Android

iOS

Adapter

Same code in all browsers adapter.js

WebRTC API

Three main RTC components

MediaStream (aka getUserMedia)

Example: simpl.info/getusermedia/

RTCPeerConnection

Example: simpl.info/rtcpeerconnection/

RTCDataChannel

Example: simpl.info/rtcdatachannel/

Signaling

WebRTC need these servers

Abstract Signaling

Signaling plane

JSEP architecture - JavaScript Session Establishment Protocol

Clarification

Clarification

Clarification

ICE / STUN / TURN

An ideal network

Reality. Network Address Translation (NAT)

Port Address Translation (PAT)

Session Traversal Utilities for NAT (STUN)

STUN

Traversal Using Relays around NAT (TURN)

TURN

Multi-party Confernecing

Peer-to-Peer Mesh with a Few Parties

Peer-to-Peer Mesh with Many Parties

Multipoint Control Unit (MCU)

Security

Secure pathways

Mandatory encryption for media and data

Thanks you for listening