The preconference workshop I did at Informa's WebRTC Global Summit in London, 31st of March 2014
It is targeted at bringing people up to speed with what WebRTC is, how people and vendors are using it today and placing it also in the context of the telecom world (which is the focus of this specific conference).
2. About Me
• Too many years in the telecom industry. Mainly VoIP
• Developer, Product Manager, CTO
• Had my share of standardization and patents
• Write about WebRTC and other topics
• Published the WebRTC for Business People report
• Consulting
3/31/2014 2
Tsahi Levent-Levi
tsahil@bloggeek.me
@tsahil
3. From Basics to Telco with WebRTC
1. What is (and isn’t) WebRTC
History, specification, browsers and mobile
2. WebRTC vs VoIP
How does WebRTC compare to other VoIP protocols?
3. The WebRTC Ecosystem
Vendor types, trends and use cases
4. Telecom and WebRTC
IMS, RCS and the real opportunities
5. Open Discussion and Q&A
3/31/2014 3
4. What is (and isn’t WebRTC)
1. What is WebRTC?
2. History of WebRTC
3. The WebRTC Specification
4. Browser support
5. Mobile and WebRTC
3/31/2014 4
11. Key Features
• MediaStreams – access to the user’s camera
and mic
• PeerConnection – easy audio/video calls
• DataChannels – p2p application data transfer
11
12. What does it provide?
• Real-time
• Voice, video and data
• Browser based
• No plugins
• Secured
• Interoperable (between browsers)
12
13. So What?
3/31/2014 13
No Plugins No Downloads No Installations No App Store
No SignalingFree (as in BSD) No Patents No Media Eng.
20. Standardization
• IETF – “network”
• W3C – “api”
• Based on existing standards
• Large vendors involved: Google, Cisco,
Mozilla, Microsoft, AT&T, Ericsson, etc.
20
21. Main IETF Documents
21
Document Title Reference
Overview Overview: Real Time Protocols for Brower-
based Applications
draft-ietf-rtcweb-overview
Use cases and
requirements
Web Real-Time Communication Use-cases and
Requirements
draft-ietf-rtcweb-use-cases-and-
requirements
RTP usage Web Real-Time Communication (WebRTC):
Media Transport and Use of RTP
draft-ietf-rtcweb-rtp-usage
Security
architecture
WebRTC Security Architecture draft-ietf-rtcweb-security-arch
Threat model Security Considerations for WebRTC draft-ietf-rtcweb-security
Data channel RTCWeb Data Channels draft-ietf-rtcweb-data-channel
JSEP Javascript Session Establishment Protocol draft-ietf-rtcweb-jsep
Audio WebRTC Audio Codec and Processing
Requirements
draft-ietf-rtcweb-audio
Quality of service DSCP and other packet markings for RTCWeb
QoS
draft-dhesikan-tsvwg-rtcweb-
qos-02
23. Transport
• Media transport based on SRTP
• No RTP at all – only encrypted media
• “Latest and greatest” of RTP got mandated
• AVPF
• Multiplexing
• Etc.
3/31/2014 23
24. Media
• No Mandatory To Implement (MTI) video codec yet
3/31/2014 24
Codec Use Specification
G.711 Narrow band, selected for
PSTN and VoIP interworking
RFC 3551
Opus New flexible audio codec.
Narrow to wideband
support; Support for Speech
& Music
RFC 6716
DTMF Telephone events RFC 4733
VP8 Google’s open source codec RFC 6386
H.264 Video codec (MPEG-LA
licensing)
RFC 6184
25. NAT traversal
• “Almost” like SIP
• STUN – Enables announcing your public IP addresses
during the negotiation phase of a session
• TURN – Relays all media via a TURN server that is
visible to all parties in the session
• ICE – Decide on the best solution to send media (direct,
STUN or TURN)
• Trickle ICE – Speed up the process of the ICE
protocol by parallelizing its handling of candidates
• New specification, implemented in WebRTC
• Slowly trickling into SIP and XMPP
3/31/2014 25
28. Solving Browser Support
1. Ignore
• Offer the service on supporting browsers only
• Either don’t show WebRTC capabilities or block un supporting browsers
• Videodesk.com isn’t showing the capabilities
• popexperts blocks such browsers from access to the actual service
2. Plugin
• Build a plugin for non-supporting browsers
• AddLive and Weemo do that
3. Downgrade to “Flash”
• Use Flash where WebRTC doesn’t work (and have interoperability
headaches)
• Requestec and Apidaze took this route
4. Don’t use WebRTC at all
28
31. Mobile is Tricky
3/31/2014 31
• People don’t install a browser on their phones
• People use apps to access communications
features
• WebRTC isn’t really available on mobile
32. Progress in Mobile
• Android KitKat
• Migration towards Chrome-based WebView
• In 2014
• WebRTC in WebView (Android)
• Opus 1.1
• Echo cancellation optimizations (Android)
• Better bandwidth estimation
• Video for iOS devices
3/31/2014 32
33. 4 Routes to Mobile
1. Ignore mobile
2. Only on supported browsers
3. Port and pack in an app
4. Wait
3/31/2014 33
34. WebRTC vs VoIP
1. Anatomy of a VoIP solution
2. SIP versus WebRTC
3. XMPP or SIP signaling for WebRTC?
4. Interoperability with legacy VoIP deployments
3/31/2014 34
35. Anatomy of a VoIP solution
WebRTC vs VoIP
3/31/2014 35
36. TheAnatomy of a VoIP Solution
3/31/2014 36
Infrastructure
Signaling
Media Processing
Codecs
Source:
39. But What about SIP (and IMS)?
3/31/2014 39
Protocol WebRTC SIP
Market Websites and web apps
Voice and IMS
deployments
Media SRTP RTP or SRTP
NAT traversal STUN, TURN, ICE STUN, TURN, ICE
Media negotiation SDP SDP
Voice codecs G.711, Opus
G.711, G.7xx, AMR-xx,
Speex, SILK, Opus, …
Video codecs VP8 H.263, H.264
API Java Script Unspecified
40. APIs or Interoperability?
3/31/2014 40
Software
Professionals
Academia
Hobbyists &
Enthusiasts
Mobile
Developers
Device
Manufacturers
Infrastructure
Vendors
WebRTC Traditional VoIP
41. AChange in Mindset
Brain: How are going to get the Earth to lose weight?
Pinky: I know! We can get everyone to go on a diet!
Brain: Diets don't work.
Pinky: Not even if you call them 'A Whole New Way of
Eating?‘
Brain: No.
3/31/2014 41
42. Interoperability
• All products use the same
network interface
• Targeted at 100’s of
vendors
• Requires much IOT testing
API
• All developers use the
same programming
interface
• Targeted at building a
developer ecosystem
• Built on a small set of
base implementations
• Each vendor has his own
island of a service
42
API versus Interoperability
43. XMPP or SIP signaling for WebRTC?
WebRTC vs VoIP
3/31/2014 43
45. Signaling Options in WebRTC
45
Technique Advantages Server Side Requirements
WebSocket No signaling infrastructure
required
WebSocket server with proprietary
protocol implementation
XHR No signaling infrastructure
required
Web server with proprietary
protocol implementation
SIP over WebSocket Easy path to SIP
interoperability (and PSTN
connectivity)
SIP Registrar/Proxy server with
support of SIP over WebSocket
XMPP/Jingle Easy interoperability with
XMPP clients
XMPP server with support of XMPP
WebSocket transport
Data Channel Low latency signaling and
improved privacy
WebSocket or web server with
proprietary implementation to
establish the Data Channel
46. SIP over WebSockets
• RFC 7118 – Fresh from the oven
• Nothing to write home about. Think TCP (or UDP)
and now replace with WebSocket
• Already existing implementations:
• Server side
• Asterisk
• FreeSWITCH
• Client side
• jsSIP
• sipML
• …
46
47. WebSockets + Fallback
• WebSockets don’t always work
• Not supported by all browsers
• Not all web proxies can handle them
• Web servers not always implement them
• Fallback to XHR/SSE/Flash/Whatever
• Best options in town:
• Socket.IO (http://socket.io/)
• SockJS (http://sockjs.org)
47
49. 3 Points of Entry to Our Networks
1. Put WebRTC in the MCU
• Any video call from WebRTC into the enterprise goes
through the MCU
• Takes up ports, and doesn’t realize the power of
WebRTC
2. Put WebRTC in the SBC
• A gateway of sorts, but with “improved” security
• Still not using the power of WebRTC
• Also – WebRTC doesn’t have any real use for an SBC
3. Use a Gateway for WebRTC
• Works, but still – not using the power of WebRTC
3/31/2014 49
51. Gatewaying: Client Included
Gateway/SBC vendor offers the client side
(SDK/Widget/Other)
3/31/2014 51
HTML5 Client
WebRTC
JS SIP / Other
SRTP
WebSocket
SIP / IMS
PSTN
GW
52. Gatewaying: Programmable
• Gateway vendor offers control API
• Customer build the client as he sees fit, interfacing
with the gateway’s APIs from his own web server
3/31/2014 52
My-service
HTML5 Client
WebRTC
?
SIP / IMS
PSTN
SRTP
GW
63. Vendor Types in the Ecosystem
3/31/2014 63
2nd Market
Vendors
Tooling
WebRTC
Core
Repurpose
64. Core: The Browser Vendors
3/31/2014 64
2nd Market
Vendors
Tooling
WebRTC
Core
Repurpose
• Google & Mozilla
• But also Vidyo
• Contributed SVC to the
WebRTC ecosystem
• & Cisco…
• OpenH264 for WebRTC
• Microsoft & Apple missing
• How does it affect WebRTC’s
future?
• How does it affect IE & Safari
market share?
66. The “Vendors”
3/31/2014 66
2nd Market
Vendors
Tooling
WebRTC
Core
Repurpose
• Providing services based on
WebRTC
• Develop either directly on top
of WebRTC or via tooling
vendors
• Target the end users via a
multitude of use cases
67. 2nd Market
3/31/2014 67
2nd Market
Vendors
Tooling
WebRTC
Core
Repurpose
• Vendors adopting other
vendor’s end user solutions
• TNW Academy’s story
73. Business Models in “Search Mode”
Subscription Unknown Device
selling
Project
based
Pay as you
go
None Freemium Licensing Revenue
sharing
Support
Mar ‘14
74. Telecom and WebRTC
1. Possible routes Telcos can take
2. What vendors “sell” to carriers?
3. What are carriers doing?
3/31/2014 74
81. Internal Consumption
• Remodel the contact center
• Enabling web dialing with context
• Enable app dialing with context
• Add video – a la Kindle Mayday button
Find a vendor/technology stack that fits
3/31/2014 81
82. CDN & Streaming
• Augment “broadcasting” requirements with a P2P
technology
• Make use of WebRTC’s data channel
• Suitable for VOD, IPTV, CDN, Caching
• Multiple vendors in this domain
All early stage. Follow this domain to build a
strategy
3/31/2014 82
83. IMS/RCS Extension
• Web-front to RCS
• Technology of an OTT play of a Telco
• Boring, but required – most NEPs here
Offer regardless of IMS/RCS deployment
3/31/2014 83
84. 3/31/2014 84
We are
here IMS
Service
Provider
WebRTC
Shameless copy from Victor Pascual Avila
This is
more
interesting
88. Ericsson
• Focus on IMS Gateway domain
• AT&T Foundry deployment
• Supports both voice and video (video not via AT&T
Foundry)
• Launched Bowser
• The first WebRTC supporting mobile browser
• Proof of concept of the possibility to run WebRTC
on mobile
• Failure in adoption terms
3/31/2014 88
89. Alcatel Lucent
• Focus on IMS domain
• Push Telcos to offer web-based RCS clients by
using WebRTC
• Showed a startup use case @WebRTC
Conference (Atlanta)
• Vobi - Connecting the web to a telco IMS
3/31/2014 89
90. Huawei
• Two routes for WebRTC:
• An announced IMS Gateway to WebRTC ALU
strategy
• Ongoing partnership with Tropo (Voxeo Labs)
Telefonica strategy
3/31/2014 90
91. Oracle
• Acquired ACME Packet
• Has WebRTC SBC capabilities
• Launched an SBC @ Oracle OpenWorld
• Working on integrating WebRTC into their core
offerings
3/31/2014 91
92. GENBAND
• Launched their own WebRTC Gateway
(SPiDR)
• Pouring marketing/sales $$ into it & pushing
towards Tier-1 SPs
• Acquired Fring – Israeli VoIP OTT
• Plans on offering Telco OTT solutions
• In such a case, WebRTC becomes the desktop
browser client
3/31/2014 92
94. Telcos & WebRTC
3/31/2014 94
“Everyone talks about the
weather, but no one does
anything about it.
Mark Twain
95. Telefonica
• Acquired an API platform: TokBox
• Focus is on external innovation with no relation to
Telefonica’s existing assets (yet)
About TokBox
• 33 developers on acquisition
• Below $50M acquisition
• $26M funding raised
• Focused on Video APIs (Flash & WebRTC)
• Left “independent” – for now
95
96. AT&T
• Plays with WebRTC in the San Jose Foundry
(jointly with Ericsson)
• Platform based on Ericsson, Phono and lately
&yet
• Makes the link between AT&T phone numbers
to WebRTC calling capabilities
• See https://js.att.io/
96
97. CenturyLink
• Third largest telecom company in the US
• Started using WebRTC to deliver services directly
to its customers
• Using it to reduce the reliance on Telecom vendors
• Viewing it as a way to “write once run anywhere”
• First commercial service to launch during H1 2014
97
98. Vonage
• Wanted to penetrate mobile & offer video
• Ported WebRTC to iOS & Android
• Added SIP signaling
• Replaced voice codecs to meet their deployment
• Used VP8 as the video codec
• 1-5M downloads on Google Play
3/31/2014 98
• US Vendor
• Provides phone
service via broadband
connection
• 2.3M subscribers
• Unlimited calling to
over 60 countries
99. The Rest of the Pack
• Initiating hackathons around RCS… and WebRTC
• Thinking of what to do with it
• Playing in their CTO labs
• There are more opportunities in the carrier space
than just IMS access
99
101. Wrap up
3/31/2014 101
1. What is (and isn’t) WebRTC
History, specification, browsers and mobile
2. WebRTC vs VoIP
How does WebRTC compare to other VoIP protocols?
3. The WebRTC Ecosystem
Vendor types, trends and use cases
4. Telecom and WebRTC
IMS, RCS and the real opportunities
5. Open Discussion and Q&A