Why it matters

Zoom, Meet, Discord all use WebRTC. Understanding it is essential for building real-time media apps.

Advertisement

The architecture

Signaling: how peers exchange session descriptions (SDP). WebRTC doesn't specify signaling — apps use WebSocket, HTTP, whatever.

NAT traversal: STUN discovers public IP; TURN relays when direct fails; ICE combines candidates and picks working one.

WebRTC setup phasesSignalingexchange SDPSTUN + TURN + ICENAT traversalMedia / data channelpeer-to-peerDirect P2P works in most cases; TURN fallback for restrictive NATs (~10% typically)
WebRTC connection stack.
Advertisement

How it works end to end

Media: audio + video codecs (Opus, VP8/9, H.264, AV1). Negotiated during setup.

Data channels: SCTP over DTLS. Reliable or unreliable. Great for game state, low-latency messaging.

Encryption: mandatory. DTLS for data, SRTP for media.