Surviving the Network: Loss, Congestion, and Jitter
Assessment contract
90 minutes. Part A (code): jitter buffer against an unseen trace, dual-metric graded; integrated overuse-detector + rate-controller run; live StatsSampler hitting derived-metric assertions; watchdog vs three synthetic state-event failure schedules plus one real far-peer-close kill (state-based window, per m6-l5). Part B (scenarios): a full forensic case — multi-minute stats capture + SDP + ICE log from a failing call, producing a structured diagnosis (root cause, evidence metric, remediation) graded field-by-field; two webrtc-internals graphs — which direction is congested and what will GCC do next. Part C (concepts): delay-gradient vs loss ordering, REMB vs transport-cc, concealment-latency tradeoff, PLI vs FIR.
The examination rewards working code and discriminating evidence. Each assertion gives local feedback; the scorecard combines the code problems with the concept review. Reference answers remain available after a serious attempt.
Choose repair inside the playout deadline. Separate retransmission, forward repair, concealment, and decoder refresh by deadline and failure scope.
Lab 1
Choose repair inside the playout deadline
Graded in the browser against 3 assertions; the editor and harness require JavaScript.
Detect the delay gradient. Classify clean, draining, and queue-building traces without firing on ordinary jitter.
Lab 2
Detect the delay gradient
Graded in the browser against 3 assertions; the editor and harness require JavaScript.
Set an adaptive playout target. Compute a bounded target from observed variation rather than fixing a buffer that only works for one trace.
Lab 3
Set an adaptive playout target
Graded in the browser against 3 assertions; the editor and harness require JavaScript.
Drive the connection watchdog. Debounce transient disconnection, restart ICE, and escalate only when the recovery window expires.
Lab 4
Drive the connection watchdog
Graded in the browser against 3 assertions; the editor and harness require JavaScript.
Check your understanding
Auto-graded check
5 auto-graded questions with an explanation for every wrong answer. Requires JavaScript. (m6-exam-quiz)
Examination score
The scorecard totals this page’s graded work as you go. It requires JavaScript.
WebRTC: From First Principles · Module 6 Examination