Upgrade to Pro — share decks privately, control downloads, hide ads and more …

WebRTC Monitoring and Management

Varun Singh
December 18, 2014

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

More Decks by Varun Singh

Other Decks in Technology

Transcript

  1. 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
  2. Gameplan 1.  Do nothing 2.  Wait for feedback/emails customers 3. 

    Active Monitoring –  RTCP monitoring –  WebRTC StatsAPI 6
  3. 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
  4. 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/
  5. 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
  6. 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
  7. Management •  Endpoint –  Congestion control –  Simulcast/SVC –  DSCP

    markings •  WebRTC Infra management –  TURN server –  Conference server (MCU, SFU, …) •  Network Management –  DPI à SNMP –  SDN/NFV 17
  8. 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
  9. 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