HTML5 & WebRTC: New Horizons for P2P streaming

19
www.streamroot.io Pierre-Louis Théron Nikolay Rodionov Axel Delmas

description

Presentation by StreamRoot

Transcript of HTML5 & WebRTC: New Horizons for P2P streaming

Page 1: HTML5 & WebRTC: New Horizons for P2P streaming

www.streamroot.io

Pierre-Louis Théron Nikolay Rodionov Axel Delmas

Page 2: HTML5 & WebRTC: New Horizons for P2P streaming

Video streaming limits

2

8 Millions simultaneous viewers

Huge traffic peak managed by Google and Akamai

QoS issues

Page 3: HTML5 & WebRTC: New Horizons for P2P streaming

It is time to re-decentralize the Web

3

4K is coming

2015 2013 2014

50%

75%

The global traffic is growing quickly More Mobile users

P2P advantages

• Relieve the network’s bottlenecks

• Manage traffic peaks with millions of users

• Improve the user experience

Page 4: HTML5 & WebRTC: New Horizons for P2P streaming

60

WebRTC

4

New IETF protocol that facilitates web real time communications :

• Peer-To-Peer Connections • Very low Latencies • Video, Audio and Data !

Open-Source C++ lib : • iOS, Android • Smart TVs • Set Top Boxes…

In-Browser JS API standard =

NO PLUGIN !

60% Of browsers

1 000 000 000 Compatible clients

Page 5: HTML5 & WebRTC: New Horizons for P2P streaming

WebRTC Datachannel API

5

WebRTC DataChannel Enables raw data transmissions directly between peers

• Simple JavaScript API (similar to WebSockets) • Low latencies • Communications encrypted by default (DTLS) • Can work in « TCP » or « UDP » mode

BUT : doesn’t manage the “peers signaling” (you need a signaling server)

Page 6: HTML5 & WebRTC: New Horizons for P2P streaming

WebRTC Datachannel API : Applications

• Chat / private Messaging service

• Multi-player video game with low latencies (FPS)

• P2P file sharing

• Distributed Computing

• CDN for static data

• BitTorrent in the browser

• LIVE & VOD Peer Assisted Streaming (Video et Audio)

6

An infinite number of applications !

BananaBread

ShareFest.me

PeerServer

PeerCDN

WebTorrent

Page 7: HTML5 & WebRTC: New Horizons for P2P streaming

StreamRoot

7

www.streamroot.io

Page 8: HTML5 & WebRTC: New Horizons for P2P streaming

StreamRoot Solution

8

P2P video delivery solution for VOD & Live Streaming

Easy Integration : JavaScript Snippet

Real time analytics

Page 9: HTML5 & WebRTC: New Horizons for P2P streaming

9

StreamRoot advantages

Bandwidth costs reduction by up to 90%

Efficient handle of traffic peaks

A better user experience

Page 10: HTML5 & WebRTC: New Horizons for P2P streaming

How does it work : 1) Initialization

10

Server

/ CDN

CDN initiates

the streaming

The user initiates the streaming from the CDN

Page 11: HTML5 & WebRTC: New Horizons for P2P streaming

How does it work : 2) Connection to the tracker

11

Tracker

Connection to the

tracker

Server

/ CDN

He automatically connects to the StreamRoot tracker

Page 12: HTML5 & WebRTC: New Horizons for P2P streaming

How does it work : 3) Signalization & Connection

12

Tracker

Peer matching

Peer pool Server

/ CDN

The tracker establishes the connection with

the most useful peers

Page 13: HTML5 & WebRTC: New Horizons for P2P streaming

How does it work : 4) Peer-to-Peer streaming

13

Server

/ CDN

Tracker

P2P download

The user downloads most of the stream

from the other peers

Peer pool

Page 14: HTML5 & WebRTC: New Horizons for P2P streaming

StreamRoot Player JavaScript lib

Adaptive Streaming :

MPEG-DASH

Bitrate auto-switch

Playback intelligence :

Smart Buffering (P2P First, CDN if P2P is too weak)

HTML5 Fallbacks and Flash non compatible browsers

Transparent user experience

Optimized for high definition: HD and 4K

14

Page 15: HTML5 & WebRTC: New Horizons for P2P streaming

StreamRoot Tracker

15

Primary function : Signaling server • lists and manages Peers

• Smart signaling : (GeoIP, ISP, available bandwidth…)

• Dynamically analyses each peer performances

More features:

• Analytics and Push Server

• Centralized service : peers and content integrity validation

• Not blocking : if the server is down, the user can still watch the video

• Scalable

Page 16: HTML5 & WebRTC: New Horizons for P2P streaming

VOD StreamRoot demo

16

demo.streamroot.io

Page 17: HTML5 & WebRTC: New Horizons for P2P streaming

17

1 video 1h30

1000 Kbps bitrate

400 simultaneous viewers Very scattered population

45%

Of bandwidth reduction

Other results :

Some « super-seeders » ( Ratio Up/Down > 3 ) The peer connection is not optimized for long videos Very low transfer latencies between peers (<1s)

Total P2P

Feedbacks : VOD deployment

Page 18: HTML5 & WebRTC: New Horizons for P2P streaming

Live Streaming Demo

18

LIVE STREAMING DEMO : World premiere

Workflow :

RTMP Live MPEG-DASH Transcoding HTML5 player

in Chrome

Page 19: HTML5 & WebRTC: New Horizons for P2P streaming

Demo : demo.streamroot.io

19

@StreamRoot