WebRTC Conference and Expo (May 2013) - Making the Right Signalling Choice

15
Making the Right Signalling Choice Session: D1-3 Erik Linask Group Editorial Director TMC [email protected]

description

A presentation by Erik Linask (Group Editorial Director, TMC), Peter Dunkley (Technical Director, Crocodile RCS Ltd), Steven Northridge (Director SDP Product Marketing, Oracle), Erik Lagerway (Co-founder, Hookflash). Presentation date 25-Jun-2013.

Transcript of WebRTC Conference and Expo (May 2013) - Making the Right Signalling Choice

Page 1: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Making the Right Signalling Choice

Session: D1-3Erik LinaskGroup Editorial [email protected]

Page 2: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Session Presenters• Peter Dunkley

– Technical Director– Crocodile RCS Ltd

• Steven Northridge– Director SDP Product Marketing Oracle

• Erik Lagerway– Co-founder– Hookflash

Page 3: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Peter DunkleyTechnical DirectorCrocodile RCS [email protected]

Page 4: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

• Signalling is required to discover endpoints to communicate with

• There are many options• Proprietary

– RESTful– BOSH– WebSockets

• Standards based– XMPP over BOSH/WebSockets– SIP over WebSockets

Signalling Options

Page 5: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Open standards are usually best• Promotes interoperability• Many years of development have solved most

resilience and scaling problems– SIP: ~17 years of development– XMPP: ~14 years of development

• Stand on the shoulders of giants• Existing server infrastructure can be reused with little

or no modification• Usually many open-source options to get started with

Page 6: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

SIP has many advantages• Less complicated than most people think• The widest used, standard, session initiation protocol

in the world• Many open-source SIP over WebSocket

implementations, including– Servers: Asterisk, Kamailio, OverSIP, reSIProcate– Clients: jain-sip.javascript, JsSIP, QoffeeSIP, sipml5

• SDP and SIP work well together

Page 7: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Steve NorthridgeDirector SDP Product [email protected]

Page 8: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

WebRTC Landscape

Interoperate

RTC becomes part of the Web experience

Existing communications extended to the Web

Communications islandsinteroperate

Page 9: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Signaling Options• REST API

• Client/Server not Bidirectional• XMPP/Websockets

• XMPP – IETF standard• Jingle

• Draft extension to XMPP• Variation used by GoogleTalk

• SIP • SIP – IETF standard• Used by SIP phones

• JSON/Websockets• Applications can define their own

communications between the broswer and server

WEB SERVER(WEBRTC CONTROL)

PEER CONNECTION(AUDIO, VIDEO, DATA)

WEB SERVER(WEBRTC CONTROL)

INTEROPERATESIGNALING

BROWSERSIGNALING

Page 10: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Striking the Balance• Server to Server

• SIP• Standards based• Widely accepted / used• Enables Interoperability

• Server to Browser• JSON/Websockets

• Allows Application Flexibility• Promotes Innovations

• SIP/Websockets• Allow existing SIP applications to

seamlessly extend to the Web

WEB SERVER(WEBRTC CONTROL)

PEER CONNECTION(AUDIO, VIDEO, DATA)

WEB SERVER(WEBRTC CONTROL)

INTEROPERATESIGNALING

BROWSERSIGNALING

Innovation Interoperability

Page 12: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

ProblemHow does Bob communicate with Alice when they are on different networks?

12

Bob’s logged in via .

Alice is logged in via 1-604-555-1212 .

Bob is connected with Alice via

1-604-555-1212

Alice:facebook.com/alice.albertslinkedin.com/in/alice.alberts

twitter.com/alicedomain.com/alice

phone:1-604-555-1212email:[email protected]

Bob:linkedin.com/in/bob.burnsphone:1-905-555-1111email:[email protected]

Page 13: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

SolutionFederated Identities

Social, Local, or even 3rd party identities are mapped via Open Peer, allowing disparate users to locate each other no matter what Identity they are currently using.

Peer Peer

IdentityLookup

IdentityLookup

Finder Finder

P2P Signaling

- Initiating- Ringing- Connecting- In Progress- Disconnect- Transfer- Hold- Conference- Join- Split- Hand-off- Send file- Poke- Kick- BanAdd yours here ^^

&

1-604-555-1212

Signaling & Media

Page 14: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Open Peer

Security• All communication (signaling and media) is encrypted P2P• Servers do not know encryption keys• No man-in-the-middle attacks• Identity Assertion/Validation

OTT (Over The Top) has already won • Open Peer = P2P, no server for signaling (unlike SIP, XMPP, Jingle, etc)• Open Peer is a complete solution purpose-built for real-time p2p communications• Open Peer will soon be WebRTC Interoperable (eg. http://webrtc.hookflash.me)

Open• Open Specification: OpenPeer.org• Open Source (iOS, BB10, JS / Browsers, android): Github.com/OpenPeer/

Supported by premium cloud service providers (eg. Hookflash)• Identity Lookups & Mapping, Presence, STUN/TURN, Enterprise Analytics

Page 15: WebRTC Conference and Expo (May 2013)  - Making the Right Signalling Choice

Questions1. What are the critical factors to consider when choosing a

signalling protocol? 2. What are the relative capabilities of each signalling choice?3. Should you consider changing the signalling you use based on

circumstances?4. Are there any issues with specific signalling choices?5. Why shouldn't we all just use SIP?6. If I am just doing a triangle and not interfacing to other servers

is the choice easier?