webrtc - bridging web and sip worlds
DESCRIPTION
WebRTC - Bridging Web and SIP Worlds Shambhu Dayal Rai - Distinguished Solution Architect, Sonus NetworksTRANSCRIPT
WebRTC - Bridging Web and SIP Worlds
Shambhu Dayal Rai
Distinguished Solution Architect,
Sonus Networks
2
WebRTC: Transforming Communications
Free, open Project to
enable browser with
RTC capabilities via JS API
ITS EASY for developers,
users & businesses
RTC Media engine build
in the browser,
voice/video codecs, ICE, DTLS-SRTP
Enable RTC on web apps No client or
plug-in required, JS on Webpage defines the
client behavior
What? Why? How? Value?
3
Real time communication System
• User registry, presence, location
• User profiles, preferences, Services
User management
• Establish, update and terminate sessions and services,
• Multimodal sessions, IM, voice, video, file share etc.
Session Management
• Interconnecting various communication islands
• Interwork Signaling and media
• NAT traversal
Inter-connection
• High Availability
• Session Rehydration for failures
• mobility
QoS & Reliability
• DOS, policing,
• Authorization & Call admission controls,
• Routing and Media policy
Policy & Security
An use case..
5
myBank has call center & WebSite
Employee
Customers
Partners
Authorization DB
IMS Core / PSTN
Mybank Call center
myBank.com
However, Website and call
center are not connected,
leading to disjointed user
experience !!
6
WebRTC at myBank.com
SBC
Employee
Customers
Partners
Identity Provider
IMS Core / PSTN
Call center
WebRTC GW
myBank.com
• WebRTC Cloud enables
RTC on mybank.com.
• Agent added to the
multimodal Web Session.
• Rich user experience
Connecting WebRTC with the World..
8
WebRTC - A World of Triangles
Non-real Time Traffic
e.g. Web Pages, Pictures,
Preformatted Video
Web World Web RTC
RT Voice RT Video RT Data
• With WebRTC any
Website can become a
“stand alone”
communication provider
for its community
• Each Service is an Island
• PSTN is NOT needed if
endpoints are both on the
same application
RT Media
9
Communicating Beyond the Web Domain
Web RTC Web World Rest of World (Telco World)
Non-standardized (potentially custom) signaling needs to map to SIP
Media profile for WebRTC is “incompatible” with general telco VoIP and Video
Signalling
Media
Incompatible Domains
From Triangles to Trapezoids
10
Tech Divide : WebRTC vs Telco
IPv4 / IPv6 Network
Media
Transport
Media
Description
Signaling
Transport
Signaling
Protocol
Codecs
Identity
Media Plane
Control Plane
11
WebRTC at myBank.com
TURN Server
SBC
Policy DB
Employee
Customers
Partners
Identity Provider
IMS Core / PSTN
TURN Server
Call center
WebRTC GW
myBank.com
User loads mybank.com
and loads webRTC client
Mybank authorize users
provides WebRTC client
WebSocket connection
established,
12
WebRTC at myBank.com
TURN Server
SBC
Policy DB
Employee
Customers
Partners
Identity Provider
IMS Core / PSTN
TURN Server
Call center
WebRTC GW
myBank.com
User
decides to
make call
• Interwork Web to SIP signaling
• Inter work Web to Telco IDs
• Enforce enterprise policy for
media, applications, Auth etc
• STUN/ICE for NAT
• Interwork DTLS-SRTP to RTP
• Transcoding
• DOS, Policing, LI, recording.
13
WebRTC – Media Paths
TURN Server
SBC
Policy DB
Enterprise - A
Enterprise - B
Enterprise - C
Identity Provider
IMS Core / PSTN
TURN Server
Call center
WebRTC GW
WebRTC Access to UC System.
15
User Registration based on Web Authentication
UE
1. HTTPS to web server,
returning auth grant
assertion
2. Open secure WebSocket (CORS)
3. LOGIN request with ID assertion
5. OK response OK
4. SIP
REGISTER
SBC PBXWeb
ServerWebRTC
GW
Validate Web Server assigned
ID is used by subscriber.
4. SIP
REGISTER
OK
AD
LDAP (Authentication)
Web Server Allocates or fetch the User-ID for User .
SBC registers the User to PBX, At this point user is registered and ready to make receive sessions.
Reliability and Quality over Internet..
17
Overall latency
Length of path (speed of light)
Number of nodes in path
Available bandwidth
Type of access
End-to-end bandwidth
“Quality of the stream”
Packet delays
Packet drops
WebRTC over Internet
VoIP Engineered
Network
Deterministic
Engineered
Predictable
Internet
Variable
Contended
Variable
WebRTC use general purpose Internet access n/w on PC/phone for RTC
18
Reliability
• Reestablish WebSocket and sessions
• Browser refresh
• Loss of IP connectivity
• HTTP server crash
Session
rehydration
• HA for WebRTC GW failure
• HA for SBC failure
• HA for browser, proxy failures,
High Availability
• Least Cost /latency routing
• Route to Transcoder / MCUs
• Failure detection and Routing fallback
Intelligent session routing
Browser refresh may result in loss of sessions
19
QoS on WebRTC sessions
Monitor QoS
Analyze Policy
Actions
• WebRTC Endpoint reports
• Media relay (i.e.SBC) reports
• CAC - reject new session
• Adapt sessions - to lower bit rate
• Fallback to audio only call
• Trigger Policy Action once
threshold breached
Network conditions are unpredictable and dynamic
Security and Policy..
21
Fine grained Policy Controls
• Partitioning of access, policy and user data,
• Customization of policy data as per enterprise needs
Multi-tenancy
• Social networks like Google, Facebook - Oauth,
• Enterprise Active directory - LDAP,
• Operators subscriber DB,
• SIP registrars
User Authentication
• Enterprise Session limits
• User session limits
• Subscribed Applications
Admission Control
22
Securing the communication Signaling
• Secure WebSocket
• Hardened Connex-IP platform (same OS as SBC)
• Vend out ephemeral TURN credentials
User Authentication
• User Authentication with multiple ID providers.
• Oauth 2.0 - Google, Face book
• LDAP - Enterprise Active directory
• SIP - SIP PBX
SBC - Media
• Encrypted media stream (DTLS-SRTP),
• Wire rate policing of Media streams
• DOS, BW theft protection
• Lawful Intercept, blacklisting of misbehaving endpoints
TURN Server – Media
• Validate Users ephemeral TURN credentials Allocated by WebRTC GW
Concluding Remarks
24
Concluding Remarks
You should pick a carrier grade, secure, reliable WebRTC solution for you business needs.
WebRTC is browser technology, It has similar challenges as the earlier real-time communications
like VoIP
You should consider WebRTC for you communication needs.
25
Interconnecting WebRTC and the World
Rest Of World (PBX, PSTN, Video Room)
Any Interworking
INTERWORKING
Media
Server (Data)
Web
Server (Signaling)
INTERWORKING
Media
Server
Incompatible Domains
Sonus Confidential
Web
Server
26
Interconnecting WebRTC and the World
Rest Of World (PBX, PSTN, Video Room)
Carrier Grade Interworking
INTERWORKING
Media
Server (Data)
Web
Server (Signaling)
Carrier-Grade Web
INTERWORKING
POLICY
SECURITY
SBC Media Server
Incompatible Domains
Sonus Confidential