Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
WebRTC Monitoring and Management
Search
Varun Singh
December 18, 2014
Technology
2
1.5k
WebRTC Monitoring and Management
@callstats.io, Varun Singh
Upperside 2014, Paris (18.12.2014)
Terena WebRTC-TF Kickoff (15.12.2014)
Varun Singh
December 18, 2014
Tweet
Share
More Decks by Varun Singh
See All by Varun Singh
WebRTC Application interactions API
vr000m
0
82
XRBLOCK Yokohama: update to various drafts
vr000m
0
66
Statistics and Metrics in WebRTC
vr000m
0
740
Flexible FEC
vr000m
0
110
WebRTC Statistics Identifier
vr000m
0
56
Multipath RTP Updates
vr000m
0
63
Protocols and Algorithms for Adaptive Multimedia Systems
vr000m
0
100
Gearbox: Cache-friendly Congestion Control for DASH
vr000m
0
120
Flexible FEC Update
vr000m
0
76
Other Decks in Technology
See All in Technology
Long journey of Continuous Delivery at Mercari
hisaharu
0
190
データベースの引越しを Ora2Pg でスマートにやろう
jri_narita
0
190
SwiftUI Transaction を徹底活用!ZOZOTOWN UI開発での活用事例
tsuzuki817
1
690
從開發到架構設計的可觀測性實踐
philipz
0
210
Kafka vs. Pulsar: Performance Evaluation by Petabyte-Scale Streaming Platform Providers
lycorptech_jp
PRO
1
350
AWS と定理証明 〜ポリシー言語 Cedar 開発の舞台裏〜 #fp_matsuri / FP Matsuri 2025
ytaka23
8
2.1k
Eight Engineering Unit 紹介資料
sansan33
PRO
0
3.4k
Go Connectへの想い
chiroruxx
0
160
現場で役立つAPIデザイン
nagix
1
230
Monorepo Error Management: Automated Runbooks and Team-Targeted Alert Distribution
biwashi
1
140
Nonaka Sensei
kawaguti
PRO
3
540
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
130
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
42
7.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
640
A better future with KSS
kneath
239
17k
RailsConf 2023
tenderlove
30
1.1k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
The Cult of Friendly URLs
andyhume
79
6.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
Transcript
RTC Performance Monitoring and Management Varun Singh @vr000m, @callstatsio Paris,
15th December 2014 Paris, 18th December 2014
None
Latency kills http://geek-and-poke.com/ 3
4 The network burped
Gameplan • Do nothing à It is someone else’s problem
– Insufficient Capacity à upgrade plan – Misbehaving Browser à update or change – Or… NATs/Firewall – Other customer’s ISP 5
Gameplan 1. Do nothing 2. Wait for feedback/emails customers 3.
Active Monitoring – RTCP monitoring – WebRTC StatsAPI 6
Manual data gathering • Use chrome://webrtc-internals • User monitors their
session 7
RTCP Monitoring 8 Endpoint Endpoint Middlebox MCU, SFU, TURN, …
Monitor Monitor Monitor Third party Monitor Operations & Management System http://tools.ietf.org/html/rfc6792 https://tools.ietf.org/html/draft-ietf-xrblock-rtcweb-rtcp-xr-metrics Implement RTCP Extension Reports
WebRTC Stats API • pc.getStats() – ICE Transport metrics – Audio metrics
– Video metrics – Data channel metrics – … • Configure settings via RtpSender and RtpReceiver. 9 http://w3c.github.io/webrtc-stats/
Performance Monitoring – Annoyances – Call setup time, call failures, NAT traversal
• Transport quality – Relayed or not – Session throughput, delay and loss • Per-stream media quality – Quality Models, MoS, User feedback 10
Annoyances Your Infrastructure 11
Transport Metrics 12
13 Media Quality
Connectivity 14 NetradarActive measurement platform http://www.netradar.org/en
Adaptivity Sender Receiver RTP Media stream (coded media, FEC, repair)
RTCP Sender Reports • Timing, synchronization • Data rate, packet count • “Traffic characteristics” RTCP Receiver Reports • Long-term rough statistics • Detailed statistics • Instant event notifications • Congestion information • Dejittering, sync, playout • Monitoring + reporting • Instant event notifications • Local error concealment Short-term adaptation • Retransmissions • Adaptive FEC • Congestion control • Temporal scaling • Adaptive or switching video Long-term adaptation • Codec choice • Packetization size • Flexible FEC, interleaving • Simulcast Set 3rd Party “QoS” Monitor
Stream unusable Follow this work in RMCAT WG, https://tools.ietf.org/wg/rmcat/
Management • Endpoint – Congestion control – Simulcast/SVC – DSCP
markings • WebRTC Infra management – TURN server – Conference server (MCU, SFU, …) • Network Management – DPI à SNMP – SDN/NFV 17
Measurement Architecture 18 Browser Internals (WebRTC Stack) Browser Internals (WebRTC
Stack) WebRTC API WebRTC API APP APP WebRTC Server Signaling Protocol (e.g., SIP, Jingle, …) PeerConnection SRTP/DTLS/UDP Data/SCTP/DTLS/UDP Network Monitoring • TURN • Gateway Client Monitoring STATS API Monitoring Server HTTP or WebSockets HTTP, IPFIX, or NetFlow RTCP XR
19 Gather Report Analyze FIX Deploy? webrtc-internal? via email? Has
this been reported before? Did it solve the issue? Until next report? Collect Diagnose Fix Deploy
Scaling Infrastructure • Monitoring meets adaptivity • Docker or containers
for signaling, SFUs, TURN infrastructures
Follow us: @vr000m, @callstatsio https://www.facebook.com/callstats.io