Tutorial: Developing High-performance Networking Applications
summary
Covers concrete code and repo examples: an epoll/libevent echo server, liburing demos and an io_uring-based server that uses io_uring submission/completion rings to batch requests and avoid repeated syscall round trips, and discusses TCP zero-copy with the kernel selftest example showing that MSG_ZEROCOPY send only avoids copies but receive requires mmap + error-queue notifications. Compares kernel-bypass options with examples (DPDK, RDMA verbs, XDP maps), explains hardware requirements for true zero copy and practical tradeoffs observed in implementation.
AI-written summary · about
chapters (12)
- 0:00High-performance networking intro
- 1:03Session topics overview
- 7:16Socket API limitations
- 10:29Async socket APIs matter
- 13:41EPOLL deep dive
- 20:10User-space event loop
- 25:34Linux io_uring
- 35:11Zero copy critical
- 40:17TCP zero-copy improvements
- 56:27Kernel bypassing overview
- 1:08:24TCP protocol enhancements
- 1:19:35Summary
related talks
33mZero Copy Receive using io_uring
01h 01mStructured Networking
57mStructured Networking in C++
31mA Practical, Research‑Backed Introduction To Cloud‑Native Kernel‑Bypass Networking
52mIn the Kernel Trenches: Mastering Ethernet Drivers on Linux
12mPreview: Networking
50mThe case for zero-copy in containers: Accelerating...
17mRearchitecting the TCP Stack for I/O-Offloaded Content Delivery
