34
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | WebRTC Workshop What is (and isn't WebRTC) Stefano Gioia Master Principal Solution Specialist November 2014

WebRTC Workshop - What is (and isn't WebRTC)

  • Upload
    oracle

  • View
    244

  • Download
    0

Embed Size (px)

Citation preview

Page 1: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

WebRTC Workshop What is (and isn't WebRTC)

Stefano Gioia Master Principal Solution Specialist November 2014

Page 2: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Stefano Gioia, Master Principal Solutions Architect, Oracle

2

1

2

3

4

Expert in Service Delivery Platforms

Focused on WebRTC in EMEA

Customer advocate on Sales team

SDP Lead at Oracle – API, SIP, IMS, LTE

SDP Lead at BEA – APIs, SIP, VoIP,

Based in Rome – Covers all of Europe

5

6

Page 3: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

What is (and isn't WebRTC)

1

2

3

4

History of WebRTC

The WebRTC specification

Browser support

Mobile and WebRTC

VoIP versus WebRTC

Oracle Confidential – Internal/Restricted/Highly Restricted 3

5

Page 4: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Once upon a time...

• Internet was without form and void. And dark.

• Publishing and finding content on the Internet was an ancient and dark matter, only know by powerful Jedi Master (aka geek)

• Suddenly everything changed

Oracle Confidential – Internal/Restricted/Highly Restricted 4

Pictures from http://evolutionofweb.appspot.com/

Page 5: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Forever

Oracle Confidential – Internal/Restricted/Highly Restricted 5

Pictures from http://evolutionofweb.appspot.com/

Page 6: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

There was a time...

• Where we use to see video by using plug-ins and external software

• Instant Messaging was delivered using the same concepts and Voice = Telephony

Oracle Confidential – Internal/Restricted/Highly Restricted 6

Page 7: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

There was a time...

• Where we use to see video by using plug-ins and external software

• Instant Messaging was delivered using the same concepts and Voice = Telephony

• Suddenly everything changed

Oracle Confidential – Internal/Restricted/Highly Restricted 7

Page 8: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

WebRTC @ Glance

WebRTC offers real time communication natively from a web browser 61%

WebRTC capable browser * share, including Mobile, Tablet and desktop

API WebRTC is a “Media Engine” with javascript API

WebRTC is a technology, NOT a solution AND open source projects too

8 Oracle Confidential – Internal/Restricted/Highly Restricted

Page 9: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

So, what is WebRTC - Technically Speaking? • Collaborative W3C and IETF standardization

• A built-in application program interface that enables browser-to-browser applications for:

– voice calling

– video chat

– peer to peer of any data

• Media engine in the browser, accessed by JavaScript, downloaded from web-server

• No defined signaling mechanism

• No MTI coded media

• WebRTC is a Standard Specification and an opensource project

Oracle Confidential – Internal/Restricted/Highly Restricted 9

WEB SERVER

(WEBRTC CONTROL

PEER CONNECTION

(AUDIO, VIDEO, DATA)

WEB SERVER

(WEBRTC CONTROL

PEER CONNECTION

(AUDIO, VIDEO, DATA) GATEWAY

Page 10: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Where we are now?

Oracle Confidential – Internal/Restricted/Highly Restricted 10

Source: Crossing the chasm, by Geoffrey A. Moore

Page 11: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Program Agenda

1

2

3

4

History of WebRTC

The WebRTC specification

Browser support

Mobile and WebRTC

VoIP versus WebRTC

Oracle Confidential – Internal/Restricted/Highly Restricted 11

5

Page 12: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

WebRTC Babel Standard & Engagement

12

Page 13: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

The WebRTC Tree

13

IMS, LTE

VoIP

WWW

Page 14: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Introduce webRTC & Standard

• Standardization by:

– W3C: Web Real-Time Communications Working Group, is to define client-side APIs to enable Real-Time Communications in Web browsers

– IETF: RTCWeb is taking care of the underlying protocols

• Browser side:

– WebRTC Initiative from Google (mozilla)

– CU-RTC-Web proposed and pushed by Microsoft

– Evolution to WebRTC 1.1 / ORTC promoted by Google, Microsoft and others

– OpenWebRTC release by Ericsson

14

Pictures from http://webrtchacks.com/signalling-options-for-webrtc-applications/

Page 15: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

I’m confused... What are we talking about? • WebRTC WG

– Mission: to define client-side APIs to enable Real-Time Communications in Web browsers

• WebRTC 1.0 Spec

– First Public Working Draft: 27 October 2011

– Last Call Working Draft: re-scheduled for Q4 2014

– Candidate Recommendation: initially scheduled for Q4 2012, but delayed probably until Q2 2015

• RTCWeb

– Mission: to specify a set of protocols that will allow an implementation to communicate with another implementation using audio, video and data sent along the most direct possible path between the participants.

• RTC Spec

– Define MTI AudioCodes OPUS and G.711

– Codes negotiated with SDP O/A

– MTI Security on DTSL/SRTP

– STUN/TURN/ICE

– Datachannel

• ORTC

– Mission: to define Object-centric APIs (client-side at first) to enable Real-Time Communications in Web browsers, Mobile endpoints and Servers.

– It is also a mandate that Object RTC be compatible with WebRTC.

– Original positioned as an alternative to WebRTC Spec

• ORTC Spec

– Community Group published the ORTC API Public Draft on August 20, 2014

15

Page 16: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

And the Telco ....

• 3GPP Spec TS 23.228

– Specifies SIP over WebSockets as signalling between the UE to the network based

– SDP offer/answer exchange is the mechanism used for media plane feature negotiation.

– The architecture does not support media multiplexing that is defined

– Options other than SoWS, such as XMPP RESTful based interface, etc. are allowed but not described.

16

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

Page 17: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Signalling – The Two Approach

SIP over WebSockets JSON/XMPP over WebSockets

17

Page 18: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Why JSON, XMPP, * and not SIP?

• Much more easy

• There are more developers

• Language of the web

• And it’s natively supported by browser

• Drives more SIP into the network

18

Page 19: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Great, ORTC as WebRTC 1.1

• The good

– ORTC positioned as successor of existing webRTC 1.0 API not as an alternative

– The first ORTC Public Draft Specification has been published, authored by Hookflash, Microsoft, and Google. This specification extends WebRTC 1.0

– No webRTC 1.0 implementation from MS and Apple

– OPUS, G7x codec will be implemented

• The bad

– At least 6-12 months to standard approvals and fruition

– H264 the supported codec, interoperability issue

– Adaption is required for existing application

19

Page 20: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Program Agenda

1

2

3

4

History of WebRTC

The WebRTC specification

Browser support

Mobile and WebRTC

VoIP versus WebRTC

Oracle Confidential – Internal/Restricted/Highly Restricted 20

5

Page 21: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

WebRTC Browser Support: Desktop

21

Source from http://caniuse.com/

Page 22: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

WebRTC Regional Browser Support: Desktop

63,05

98,59

48,93

48,46

51,88

76,65

50,75

0 10 20 30 40 50 60 70 80 90 100

Europe

Antarctica

Asia

North America

Oceania

South America

Africa

Support

Support

22

Source from http://caniuse.com/

Page 23: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

A new Sheriff in town

• August 20, 2014. Microsoft published a blog post publicly supporting the ORCT draft.

Page 24: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Audio & Video Codecs War

24

G.711, Opus

VP8, VP9

G.711, Opus

VP8, H.264

G.711, G.722, Opus

H.264

G.711, G.722, Opus

H.264, H.265

Source from http://iswebrtcreadyyet.com/

Page 25: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Program Agenda

1

2

3

4

History of WebRTC

The WebRTC specification

Browser support

Mobile and WebRTC

VoIP versus WebRTC

Oracle Confidential – Internal/Restricted/Highly Restricted 25

5

Page 26: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

WebRTC Browser Support: Mobile

26

Source from http://caniuse.com/

Page 27: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Consideration

• Lack of WebRTC Support

– SDK/library for Windows Phone and IOS devices

• Hardware support for Mobile Phone

– Software encoding & decoding will kill your battery for VP8

• New device will benefits from power processor

– Snapdragon 800 4

– nVidia Tegra 4

• Operators want more audio codecs to support LTE & Legacy interoperability

27

Page 28: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Program Agenda

1

2

3

4

History of WebRTC

The WebRTC specification

Browser support

Mobile and WebRTC

VoIP versus WebRTC

Oracle Confidential – Internal/Restricted/Highly Restricted 28

5

Page 29: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

VoIP and WebRTC Similarities & difference

• Use RTP and SDP Offer/Answer model

• Audio codec G.711

• Run over IP networks

• Transmission of communication datat between users in real time

29

Page 30: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

So what I can do?

• Your SIP client or infrastructure actually...

– Use SIP or H.323 as signalling

– Use plain RTP rather than SRTP

– Don’t know anythign about STUN, ICE and ICE

– Use different codecs

– Use different identity mechanism

– Security SDES/DTLS

30

ignore? Built your own?

Page 31: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Maybe use a simple Gateways

• SIP over WebSocket Gateway

• Web API to SIP Gateway

• Media gateway

• X-Coding gateway

31

Page 32: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

What we learned?

Different flavour of WebRTC

Media & Signalling are not compatible with existing operator’s network

WebRTC API is here, don’t wait to start building services

32

1

2

3

Page 33: WebRTC Workshop - What is (and isn't WebRTC)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Page 34: WebRTC Workshop - What is (and isn't WebRTC)