webrtc - cloud communications alliance|...low-latency, p2p audio, video, and data anything and...

Post on 17-Jul-2020

5 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

WebRTC A Practical Introduction

Cloud Communications Alliance June 2015 Alan Quayle alan@alanquayle.com www.alanquayle.com/blog www.tadhack.com www.tadsummit.com

6/22/15 1

Objectives

•  Introduction to WebRTC for the technically minded lay-person.

•  Dangerous WebRTC Demos.

•  What do developers think?

•  Where’s the money in WebRTC?

•  Where is WebRTC going?

6/22/15 2

What The Technology Geeks Say Open, Nothing Proprietary

No Plugs-Ins

Multi Platform / Device

What The Standards Geeks Say

(Media)

(Signaling)

(Signaling)

“Set or RTC APIs for Web Browsers”

“New protocol profile”

WebRTC standards

http://webrtcbook.com

5

Real-time stuff in browser / app with no plug-ins

M2M and Telematics

Surveillance & Monitoring

Lots & Lots & Lots of Devices

Embedding Communications

Everywhere!

Embedded communications

Copyright Disruptive Analysis Ltd 2015June 2015

In-app In-Browser In-Thing

Codec Wars

Opus, VP8

G.711, AMR-WB,

EVS, H.264

There’s No Approval Process

Every Browser Gives you a Different Experience

Original “web” vision of WebRTC (2012 view)

Copyright Disruptive Analysis Ltd 2015June 2015

Web server

Javascript APIs W3C(connect, use cam/mic, send

data)

IETF RTCWeb Protocols(codecs, transport, security

etc)

Browser

P2P VoiceVideo

Realtime Data

No pre-defined signalling, IDs etc

Javascript APIs W3C(connect, use cam/mic, send

data)

IETF RTCWeb Protocols(codecs, transport, security

etc)

Browser

Open-source, no plug-ins Open-source, no plug-ins

Built-into apps / OS

And in 2015: Technology purists need not apply

Copyright Disruptive Analysis Ltd 2015June 2015

“WebRTC” is more a philosophy than a fixed standard

Javascript WebRTC APIs W3C

IETF RTCWeb Protocols

Browser

IETF RTCWeb Protocols (+maybe modifications)

3rd party APIs & cloud platforms

Plug-ins

ORTC APIORCA API

IETF RTCWeb Protocols

Browser + ???

??

Gateways

IMS

UC

Call centre

etc

WebRTC on >6bn devices by 2019

Million WebRTC devices worldwide,

year-end

Source: Disruptive Analysis 2014 Edition WebRTC Report

0

1000

2000

3000

4000

5000

6000

7000

2011 2012 2013 2014 2015 2016 2017 2018 2019

Other (TV+M2M/IoT)

Smartphones

Tablets

PCs

Copyright Disruptive Analysis Ltd 2015June 2015

The WebRTC Train has left the station and it isn’t going to wait for You

WebRTC is a car without wheels!

WebRTC Triangle

•  Both browsers running the same web application from web server •  Peer Connection media session is established between them •  Signaling is not standardized, could be SIP, Jingle, proprietary.

Uses HTTP or WebSockets for transport

Web Server (Application)

Browser M (Running HTML5 Application

from Web Server)

Browser L (Running HTML5 Application

from Web Server)

Peer Connection (Audio, Video, and/or Data)

26

The wheels!

What WebRTC Means to Enterprises

DEMO TIME

appear.in/alanquayle

appear.in/alanquayle

https://youtu.be/SxF9aohhAsY

Let’s all go back to 2010

ENTERPRISE COMMUNICATION PROBLEM #1: THE DESKTOP PHONE IS A DINOSAUR

Why is it still around? •  Call quality •  Conference calling

•  Incumbency of

vendors •  Transfers/internal

call routing

What will kill the desktop phone? •  Expensive $50 per month?

•  People are increasingly not at their desks. •  Mobile phones are with people all

day and now have the potential to kill the desktop phone with

XYZ’s help.

Most communication (56%) happens when people are

NOT at their desk – source XYZ market research

ENTERPRISE COMMUNICATION PROBLEM #2: USERS ARE PRISONERS OF CHOICE

Desktop Phone call

Mobile Phone

call

SMS

EMS

MMS Desktop

IM

Mobile IM

Mobile Voicemail

Desktop Voicemail

Video Call

Desktop Email

Mobile Email

Fax

Push to Talk

Push to X

MeetMe Conference

Colleague’s Phone

Business or Personal Numbers

Web Conference

VoIP Client

Skype

Yahoo! IM

MSN IM

Calling isn’t working: 70 percent of calls are forwarded to voicemail, less than 16% leave

a message and less than 5% are returned

Unified Communications has made the problem worse: Human latency is now costing the US economy $1T per year

XYZ solves this problem and improves productivity by 45 mins per day

– source XYZ market research

The secret sauce of this start-up. (which never came to pass as it was

painfully too early to market)

Lesson 1: History of WebRTC

camera mic network speaker screen

Vidyo/On2 GIPS GIPS O3D

libjingle

Google Talk/Hangouts

signalling

raw

low-level libraries

high-level library

app

server

Lesson 1: History of WebRTC

camera mic network speaker screen

WebRTC

Your appyour signalling

your server

Lesson 1: History of WebRTC

5 years agoLarge gap

Innovation slow

NowSmall gap

Innovation faster

Lesson 2: WebRTC is Powerful

Takes care ofICE, STUN, TURN, IPv6, DTLS, DTLS-SRTP, RTP, audio codecs, video codecs, RTCP, BWE, AGC, AEC, jitter, error concealment, audio levels, FEC, RTX, SCTP, SDP, and lots more I can't remember right now...

So you don't have to

(as much)

Lesson 2: WebRTC is Powerful

A BHello?

Hello

Magic!

A B

Bootstrap To secure, robust, low-latency, p2p audio, video, and data

Anything and everything

This is the F@$&ing Cool Bit everyone gets

Lesson 4: How to use WebRTC

Your Job:1. Exchange "bootstrap" info2. Choose transport parameters3. Choose media to send/recv, and when4. Debug, debug, debug

(Don't let legacy "signalling" confuse you)

Debugging??? WTF!

Debug, debug, debug

RTC bugs can be really toughhigh expectations, low reproducibility, highly variable conditions, hardware failures, lots and lots of complexity, user misunderstandings .... get blamed for ISP problems :).

Very common bug report "They can't hear me"

Put on your detective hat :)

This is were you loose people

Lesson 5: How to do RTC Well1. Logging!2. Stats3. Learn the stack (so you can debug)4. Handle events (error, state changes)5. Don't forget: TURN, ICE restarts, device selection, mute state,

resolution changes, audio-only mode, bandwidth usage6. Watch stats: connect rate, "call" length, time to connect, time to

first audio, time to first video, estimated bandwidth, sent bandwidth, received bandwidth, sent resolution, recieved resolution

So what you’re saying is I need to understand the guts to be able to debug L

Spain, 49

Sri Lanka, 35

Mexico, 15 USA, 14

Hungary, 5 Slovakia, 2

Netherlands, 5

Belgium, 7

India, 6

Russia, 3

Philippines, 17

Nigeria, 2

Germany, 3 Tunisia, 2 UK, 5

Singapore, 2

Pakistan, 2 Japan, 3 Italy, 2

Brasil, 2

Canada, 2 Malaysia, 5

47

TADHack Survey (June) Country based

We used the TADHack Survey respondents from June to better understand what people other than the choir thought about WebRTC

TADHack Survey (June) What’s their Business?

35

75

16

4

16

18

24

Student

App Developer

Telco

Consulting

Platform Provider

System Integrator

Tech Vendor

Total of 188 Responses

App developers and Students were the top 2 targets for TADHack. We engaged with the Illinois Institute of Technology Real Time Communications Lab as well as the Universidad Rey Juan Carlos ICT Department which bumped up student developer numbers.

49

42.6%

68.1%

44.7% 53.2% 48.9%

55.3% 51.1%

0.0% 10.0% 20.0% 30.0% 40.0% 50.0% 60.0% 70.0% 80.0%

Tele

com

app

serv

ers (

in c

all

serv

ices

)

Tele

com

API

s Co

mm

unic

atio

ns (c

allin

g an

d m

essa

ging

)

Tele

com

API

s Pay

men

ts

Tele

com

API

s Pro

file

(Loc

atio

n, d

evic

e in

fo,

subs

crip

tion

info

)

FOSS

(Fre

e an

d O

pen

Sour

ce S

oftw

are)

Web

RTC

Dev

elop

men

t too

ls

Pre-Event Results: What Tech are of most interest to your projects?

Then we did some unscientific analysis – we asked the people who are NOT interested in WebRTC what they thought about it – because lets face it all telecom application developers should be interested in WebRTC

So we asked them (60) some questions

•  Have you played with WebRTC? o  Yes 50 o  No 10

•  What did you think? – just a few of the quotes… o  Outside of Chrome to Chrome we could not get it to work most of the time, so gave up o  Using WebRTC video on mobile phones seriously eats the battery life, we love it, but for

our application its not viable with WebRTC

o  Isn’t WebRTC still in development? o  Its much more complex than just the browser specification, there are many WebRTC API

providers, other service vendors, and SDK vendors that you have to be an expert to even understand their offer never mind comparing the offers

o  We use WebRTC data channel in two of our experimental applications, its good, it does

requires constant maintenance as browsers get updated, so we’ve not included it in any of our commercial offers yet. Once things get more stabilized we’ll think about it.

Early Explorers Wild West Civil War Progressive Era Modern Era

My view on where we are with WebRTC. We’re in the wild west after the early explorers have mapped some of the landscape, with the privacy and security issues

better managed, we’ll see the big guys war it out, and with the market deciding we’ll enter a progressive era where the dominant innovations from the war are consolidated into standards. All ending in the modern era where WebRTC is

ubiquitous and no longer really mentioned, its just there.

A view on where we are with WebRTC

Question: Would you base a service or business model entirely on CSS or HTML5 (of which WebRTC is part)?

•  No, that would be silly, its just a technology

•  You generally need more than WebRTC

•  For extending existing businesses and services you need partners to

manage away the complexity away

•  For hardcore blue-sky innovation – knock yourself out, as WebRTC

has the potential to do amazing hacks when mashed up

$100B Ecosystem!

top related