WebRTC presentation
-
Upload
veselin-pizurica -
Category
Internet
-
view
311 -
download
3
description
Transcript of WebRTC presentation
WebRTC/Cloud Desktop/integration
Suggestin for Light C3Veselin Pizurica
WebRTC technology
• WebRTC is an industry and standards effort to put real-time communications capabilities into all browsers and make these capabilities accessible to web developers via standard [HTML5] tags and JavaScript APIs (Application Programming Interfaces).
• The underlying standards of WebRTC are being developed by the World Wide Web Consortium (W3C) and the Internet Engineering Task Force (IETF)
• Current WebRTC initiative is supported by Google, Mozilla and Opera.
WebRTC model
Necessary steps for browser to browser communication:
• Access to real time streaming data (audio, video) part of HTML5 API : getUserMedia()
• Signaling protocol: exchange information about media and client capabilities on both endpoints, such as resolution and codecs (aka ‘SDP’) . Not part of the WebRTC spec!
• Peer to peer streaming part of HTML5 API: RTCPeerConnection
• Video/audio encoding/decoding in browser, echo cancelation etc… implemented in browsers
WebRTC architecture
Comparison to VoIP
Classic VoIP WebRTC
Signaling SIP or H.323 in most cases Undefined
Media transport RTP/RTCP RTP/RTCP
Security SRTP in SIP,H.235 in H.323 SRTP
NAT traversalSTUN/TURN/ICE in SIP,H.450.x in H.323
STUN/TURN/ICE
Video codecs H.263, H.264 VP8
Voice codecs G.7xx series of codecs, .. G.711, iLBC, iSAC
E2E architecture – basic model
• The offer/answer architecture described above is called Javascript Session Establishment Protocol (JSEP)
Integration in Cloud Desktop
Signaling is the mechanism by which peers send control messages to each other for the purpose of establishing the communication protocol, channel, and method.
Signaling implementation requirements:– Discovery (who I have in my address book)– Presence (who from my circles is currently on line)– Placing a call
In our real communication solution, signaling is based on XMPP(jabber) protocol. XMPP provides all these capabilities out of the box. XMPP database (list of users) is integrated with AD server – which is also used for authentication and authorization for Cloud Desktop – no duplicate data, stateless server.
Cloud Desktop WebRTC architecture
AD server
Browser Browser
XMPP
BOSH wrapper
Signaling path:• ICE candidates• SDP information• Address book• Presence information
Signaling path
Peer2peer channel
Signaling path
NAT/firewall traversal
• STUN protocol and its extension TURN are used by the ICE framework to enable RTCPeerConnection to cope with NAT traversal and other network vagaries.
• ICE is a framework for connecting peers, such as two video chat clients. Initially, ICE tries to connect peers directly, with the lowest possible latency, via UDP. In this process, STUN servers have a single task: to enable a peer behind a NAT to find out its public address and port.
• If UDP fails, ICE tries TCP: first HTTP, then HTTPS. If direct connection fails—in particular, because of enterprise NAT traversal and firewalls—ICE uses an intermediary (relay) TURN server.
In other words, ICE will first use STUN with UDP to directly connect peers and, if that fails, will fall back to a TURN relay server. The expression 'finding candidates' refers to the process of finding network interfaces and ports.
WebRTC: ICE with STUN setup
Future of communication
From service to function
• Voice/video moving from service to function
Shift from “standalone” to “contextualized” communications
VoIP vs. WebRTC
• Most VoIP apps are standalone “calling” tools • Contextual / in-app opportunity slow & fragmented • Complexity for developers
– X number of platform– Rocket-science for SIP, acoustics etc. – Immaturity of voice/telephony APIs – “Telephony” model inflexible
WebRTC fit with HTML5/apps should enable “beyond the call” voice & video with less heavy lifting • HTML5 also comes with new features like realtime data
channel• Mashups + communication – new opportunity and threat for
many
WebRTC use cases
Plus: M2M, gaming, TV-based, data-centric & various others
Don’t just think about WebRTC in terms of today’s telephony. Think more adding communications to any company website or app
Enterprise benefits of WebRTC as platform
• Website becomes the call center
• New models for customer interaction (eg contextual support via video)
• Browser becomes flexible/updateable softphone
• Easier federation / interconnect between companies
• Slick web-based conferencing, inc. easier integration with web tools like LinkedIn & DropBox
• Easier 2-way comms within mobile apps
• Various new possibilities with realtime data sharing
Telcos?
Downsides• Voice & SMS saturation & cannibalisation• Regulation & competitive impacts• Weak content & VAS propositions• Economic pressures• Ecosystem competition
Upsides • Connecting the last unconnected • Smartphones & data growth • Better segmentation, pricing & promotion • Innovative services & enablers • Embracing & exploiting fragmentation
For telcos WebRTC is a catalyst
NOW
With WebRTC• Bigger opportunities • Worse threats • Faster speed of change
Examples
Deployment models
The WebRTC Triangle
The WebRTC Trapezoid [draft-ietf-rtcweb-overview]
WebRTC with SIP
WebRTC and Jingle
WebRTC and PSTN
Multi-Party Sessions in WebRTC
Single Peer Connection with Media Server
References
• [HTML5] http://www.w3.org/TR/html5
• [draft-ietf-rtcweb-overview] http://tools.ietf.org/html/draft-ietf-rtcweboverview
• [RFC3261] http://tools.ietf.org/html/rfc3261
• [XEP-0166] http://xmpp.org/extensions/xep-0166.html
• [RFC6120] http://tools.ietf.org/html/rfc6120
• [W3C] http://www.w3c.org
• [IETF] http://www.ietf.org
• [WEBRTC.ORG] http://www.webrtc.org
• [WEBRTC 1.0] http://www.w3.org/TR/webrtc