Multiplexing
Understand multiplexing and demultiplexing — from toy-track intuition to practical computer networking, I/O multiplexing, HTTP/2 streams, WebSocket multiplexing, and real-time systems.
Mission
Learn to explain multiplexing and demultiplexing to a six-year-old, recognize problems they solve in computer networking and operating systems, and build a practical real-world use case — one shared transport for many logical channels — using WebSocket, event loop concurrency, and application-layer framing.
Roadmap
0 of 8 lessons completed
- One Road, Many Conversations — multiplexing and demultiplexing with labels, frames, shared medium analogy.
- Fair Turns on One Road — head-of-line blocking, scheduling algorithms, fair queuing, round-robin.
- Address Labels: Ports and Sockets — OS demultiplexing by protocol, IP, and port; TCP and UDP sockets.
- One Guard, Many Doors — I/O multiplexing with select, poll, epoll, kqueue; blocking vs non-blocking I/O, readiness model.
- Event Loop: Callbacks from Readiness — event loop concurrency, readiness events, task queue, microtask queue, asynchronous I/O.
- HTTP/2 Streams and Frames — stream IDs, binary framing, HTTP/2 multiplexing, HTTP/3 and QUIC.
- Media Time Slices — timestamped audio/video packets, jitter buffers, real-time transport, RTP and WebRTC.
- Build a Mini Multiplexed Chat — practical app-channel protocol over one transport; real-time chat with WebSocket multiplexing.
Reference
Final project — Multiplexed WebSocket Chat
Run a real-time WebSocket multiplexing demo where one TCP socket carries chat messages, presence indicators, and file chunk transfers using an application-layer multiplexed protocol with channel IDs and framing.