77
WebRTC Intro and Standards update (December 2014) Victor Pascual Avila [email protected] @victorpascual

Upperside WebRTC conference - WebRTC intro

Embed Size (px)

Citation preview

Page 1: Upperside WebRTC conference - WebRTC intro

WebRTC Intro and Standards update (December 2014)

Victor  Pascual  Avila  [email protected]                @victorpascual    

Page 2: Upperside WebRTC conference - WebRTC intro

Technology, Innovation & Strategy Consultant Main focus: help make WebRTC happen – involved in WebRTC standardization, development and first industry deployments (on-going RFX's, PoC's and field trials) Other activities: - Chief Strategy Officer (CSO) - IETF contributor (SIP, Diameter and WebRTC areas) - IETF STRAW WG co-chair - SIP Forum WebRTC Task Group co-chair - WebRTCHacks.com co-founder and blogger - Independent Expert at European Commission

- Adjunct Professor at Universitat Pompeu Fabra

About Me

Page 3: Upperside WebRTC conference - WebRTC intro

Disclaimer:  All  opinions  and  nonsense  expressed  are  my  own  

3  

Page 4: Upperside WebRTC conference - WebRTC intro

4  

Page 5: Upperside WebRTC conference - WebRTC intro

12/15/14   5  

Page 6: Upperside WebRTC conference - WebRTC intro

What is WebRTC?

A browser-embedded media engine

Page 7: Upperside WebRTC conference - WebRTC intro

7  

Page 8: Upperside WebRTC conference - WebRTC intro

Any  good  defini,on  for  ‘media  engine’?

8  

Page 9: Upperside WebRTC conference - WebRTC intro

9  

Page 10: Upperside WebRTC conference - WebRTC intro

Once  upon  a  ,me…

10  

Page 11: Upperside WebRTC conference - WebRTC intro

11  

Page 12: Upperside WebRTC conference - WebRTC intro

12  

Page 13: Upperside WebRTC conference - WebRTC intro

13  

Page 14: Upperside WebRTC conference - WebRTC intro

14  

Page 15: Upperside WebRTC conference - WebRTC intro

15  

Page 16: Upperside WebRTC conference - WebRTC intro

16  

Page 17: Upperside WebRTC conference - WebRTC intro

17  

Page 18: Upperside WebRTC conference - WebRTC intro

(Media)

(Signaling)

(Signaling)

“Set or RTC APIs for Web Browsers”

“New protocol profile”

WebRTC standards

Page 19: Upperside WebRTC conference - WebRTC intro

- Audio codecs – G.711, Opus - Video codecs – H.264, VP8 (oh, well…) - Media codecs are negotiated with SDP (for now at least) - Requires Secure RTP (SRTP) – DTLS-SRTP (SDES is prohibited) - Requires Peer-2-peer NAT traversal tools (STUN, TURN, ICE) – trickle ICE - Multiplexing: RTPs & RTP+RTCP - Tools for firewall traversal - DataChannel - Etc.

NEW PROTOCOL PROFILE FOR MEDIA

RTCWeb WG (and other)

Page 20: Upperside WebRTC conference - WebRTC intro

RTCWeb WG

Page 21: Upperside WebRTC conference - WebRTC intro

21  

Page 22: Upperside WebRTC conference - WebRTC intro

22  

Page 23: Upperside WebRTC conference - WebRTC intro

23  

Page 24: Upperside WebRTC conference - WebRTC intro

24  

Page 25: Upperside WebRTC conference - WebRTC intro

25  

Page 26: Upperside WebRTC conference - WebRTC intro

Don’t panic, it’s not a bad thing!

WebRTC Doesn’t Define Signaling

Page 27: Upperside WebRTC conference - WebRTC intro

Some discussion on the topic: http://webrtchacks.com/signalling-options-for-webrtc-applications/

Signaling Plane •  WebRTC has no defined signaling method •  JavaScript app downloaded from web server •  Popular choices are:

•  SIP over Websockets -  Standard mechanism (RFC7118): Extend SIP directly into the browser by

embedding a SIP stack directly into the webpage – typically based on JavaScript

-  WebSocket create a full-duplex channel right from the web browser

-  Popular examples are jsSIP, sip-js, QoffeeSIP, or sipML5

•  Call Control API -  proprietary signaling scheme based on more traditional web tools and techniques

-  “standard” APIs enhanced to include WebRTC support

•  Other alternatives based on XMPP, JSON or f00b4r

Page 28: Upperside WebRTC conference - WebRTC intro

Interworking Towards Legacy VoIP?

•  A browser-embedded media engine •  Best-of-breed echo canceler •  Video jitter buffer, image enhancer •  Audio codecs – G.711, Opus are MTI •  Video codecs – H.264 vs. VP8 (MTI TBD - IPR discussion) •  Media codecs are negotiated with SDP (for now at least) •  Requires Secure RTP (SRTP) – DTLS •  Requires Peer-2-peer NAT traversal tools (STUN, TURN, ICE) –

trickle ICE •  Multiplexing: RTPs & RTP+RTCP

•  Yes, your favorite SIP client implementation is compatible with most of this. But, the vast majority of deployments

•  Use plain RTP (and SDES if encrypted at all) •  Do not support STUN/TURN/ICE •  Do not support multiplexing (ok, not really an issue) •  Use different codecs that might not be supported on the WebRTC

side

Page 29: Upperside WebRTC conference - WebRTC intro

WebRTC signaling and media is NOT compatible with existing VoIP/IMS

deployments – gateways are required to bridge the two worlds

Page 30: Upperside WebRTC conference - WebRTC intro

Some discussion on the topic: http://webrtchacks.com/cisco-openh264/

The Video Codec Battle

Page 31: Upperside WebRTC conference - WebRTC intro
Page 32: Upperside WebRTC conference - WebRTC intro

Room participants: 30/50 in favor of H.264 Remote participants (minority): 75/25 in favor of VP8 → No clear consensus

No decision Some discussion on the topic: http://webrtchacks.com/ietf-finally-made-decision-mandatory-implement-mti-video-codec-webrtc/

Result of The Discussion? November  2013  

Page 33: Upperside WebRTC conference - WebRTC intro

33  

Page 34: Upperside WebRTC conference - WebRTC intro

34  

Page 35: Upperside WebRTC conference - WebRTC intro

35  hJp://blogs.cisco.com/collaboraLon/ciscos-­‐openh264-­‐now-­‐part-­‐of-­‐firefox/  

Page 36: Upperside WebRTC conference - WebRTC intro

36  

Page 37: Upperside WebRTC conference - WebRTC intro

37  

Page 38: Upperside WebRTC conference - WebRTC intro

38  

Page 39: Upperside WebRTC conference - WebRTC intro

39  

Page 40: Upperside WebRTC conference - WebRTC intro

40  

Page 41: Upperside WebRTC conference - WebRTC intro

41  

Page 42: Upperside WebRTC conference - WebRTC intro

42  

Page 43: Upperside WebRTC conference - WebRTC intro

43  

Page 44: Upperside WebRTC conference - WebRTC intro

44  

etc.  

Page 45: Upperside WebRTC conference - WebRTC intro

45  

Page 46: Upperside WebRTC conference - WebRTC intro

Photo  taken  by  Dan  York   46  

Page 47: Upperside WebRTC conference - WebRTC intro

Consensus!

47  

November  2014  

Page 48: Upperside WebRTC conference - WebRTC intro

But…

48  

Page 49: Upperside WebRTC conference - WebRTC intro

49  

WebRTC-­‐compaLble  

Page 50: Upperside WebRTC conference - WebRTC intro

Consensus!

50  

Page 51: Upperside WebRTC conference - WebRTC intro

VP9  vs.  H.265  

51  

Page 52: Upperside WebRTC conference - WebRTC intro

19  Nov  2014   52  

Page 53: Upperside WebRTC conference - WebRTC intro

53  

Page 54: Upperside WebRTC conference - WebRTC intro

54  

Page 55: Upperside WebRTC conference - WebRTC intro

55  

Page 56: Upperside WebRTC conference - WebRTC intro

56  

Page 57: Upperside WebRTC conference - WebRTC intro

57  

“I  also  do  not  support  the  dra-  proposal  for  the  following  reasons:    1.  The  proposal   imposes  a  dual  MTI  obligaLon  on  devices  and  applicaLons.    We  should   expect   this   recommendaLon   to  be  widely   ignored   in   pracLce  because   it  offers   no   interoperability   benefits,   while   increasing   footprint   and   adding  unnecessary  liability/fees.  The  RFC  6919  "MUST  (BUT  WE  KNOW  YOU  WON'T)"  is  appropriate  here.    DefiniLon:          The  phrase  "MUST  (BUT  WE  KNOW  YOU  WON'T)"  is  used  to  indicate        requirements  that  are  needed  to  meet  formal  review  criteria  (e.g.,        mandatory-­‐to-­‐implement  security  mechanisms),  when  these  mechanisms        are  too  inconvenient  for  implementers  to  actually  implement.        2.  The  codec  standardizaLon  process  is  important  from  a  legal  and  IPR  disclosure  point  of  view.    VP8  has  not  yet  completed  this  process.”  

“I  don’t  support  the  proposed  text  either”  

“we  can  not  support  this  dra-,  due  to  the  existence  of  “unwilling  to  license"  declaraLon  on  a  technology  required  for  compliance”  

Page 58: Upperside WebRTC conference - WebRTC intro

Consensus?

58  

Page 59: Upperside WebRTC conference - WebRTC intro

59  

Page 60: Upperside WebRTC conference - WebRTC intro

60  

Page 61: Upperside WebRTC conference - WebRTC intro

iswebrtcreadyyet.com

Browser Support

Page 62: Upperside WebRTC conference - WebRTC intro

62  

Wait  aier  the  coffee  break!  

Page 63: Upperside WebRTC conference - WebRTC intro

http://webrtchacks.com/ims-approach-webrtc/

WebRTC Access to IMS (r12)

Page 64: Upperside WebRTC conference - WebRTC intro

Adding New Wheels to IMS with WebRTC

Page 65: Upperside WebRTC conference - WebRTC intro

3GPP TS 23.228 V12.5.0 (2014-06)

Page 66: Upperside WebRTC conference - WebRTC intro

P C E F

N A T

I P - C A N

WWSF

W1

W2

UE

WIC I / S - CSCF

eIMS - AGW

Iq

Mw eP - CSCF

H / V - PCRF

Gx

Rx

W3

IMS - ALG

WAF W4

W5

Reference Architecture

Page 67: Upperside WebRTC conference - WebRTC intro

codec 1

SRTP

IP IP UDP IP

UDP UDP UDP IP

UE eIMS - AGW peer

SRTP RTP

codec 1 codec 2

RTP

codec 2

BFCP

SCTP DTLS

IP

SCTP DTLS

IP

TCP

IP UDP UDP

BFCP

TCP

IP

UE eIMS - AGW peer

MSRP SCTP DTLS

IP

MSRP SCTP DTLS

IP

MSRP

TCP IP

UDP UDP

MSRP

TCP IP

UE eIMS - AGW peer

Interworking Towards Legacy IMS

Page 68: Upperside WebRTC conference - WebRTC intro

“the initial focus of the Task Group is to determine what the needs are for successful interoperability of WebRTC-to-SIP deployments” cover ing both Enterprises and Service Providers “recommendations, Reference Architecture Documents, Certifications, and/or White Papers”

SIP Forum WebRTC Task Group

Page 69: Upperside WebRTC conference - WebRTC intro

Alliance for Telecom Solutions

Page 70: Upperside WebRTC conference - WebRTC intro

70  

Page 71: Upperside WebRTC conference - WebRTC intro

“focuses on interoperability issues relating to the use of WebRTC” “the group is focused on enterprise WebRTC , interworking of WebRTC and other carrier technologies, and other existing videoconferencing systems” “develop an interoperability test framework and prepare for IOT events”

WebRTC Interop Activity Group

Page 72: Upperside WebRTC conference - WebRTC intro

RESTful Network API for WebRTC Signaling v.1.0 (Feb 2014)

OMA

Page 73: Upperside WebRTC conference - WebRTC intro

How does WebRTC relate to VoLTE and RCS?

GSMA

Page 74: Upperside WebRTC conference - WebRTC intro

This  slide  might  be  outdated   74  

Page 75: Upperside WebRTC conference - WebRTC intro

75  

Page 76: Upperside WebRTC conference - WebRTC intro

76  

hJp://www.gsma.com/newsroom/wp-­‐content/uploads//WebRTC-­‐Whitepaper-­‐v13.pdf  

Page 77: Upperside WebRTC conference - WebRTC intro

Thank You!

Victor  Pascual  Avila  [email protected]                @victorpascual