L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Design et création · SKILL.md

systems-networking

systems-networking

Systems-level networking architecture: kernel-bypass (DPDK, io_uring, eBPF/XDP), zero-copy, the network stack data path, NIC offloads, congestion control, and high-connection-count (C10M) server design. Architect-level, not app HTTP. USE WHEN: designing high-throughput/low-latency networking, packet processing, "kernel bypass", "DPDK", "io_uring", "eBPF", …

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: systems-networking description: | Systems-level networking architecture: kernel-bypass (DPDK, io_uring, eBPF/XDP), zero-copy, the network stack data path, NIC offloads, congestion control, and high-connection-count (C10M) server design. Architect-level, not app HTTP.

USE WHEN: designing high-throughput/low-latency networking, packet processing, "kernel bypass", "DPDK", "io_uring", "eBPF", "XDP", "zero-copy", "C10M", "line rate", NIC offload, congestion control, software data plane.

DO NOT USE FOR: REST/GraphQL API design (use api-design skills); app websockets (use real-time skills); cloud LB config (use infrastructure skills). allowed-tools: Read, Grep, Glob

Systems Networking Architecture

The latency/throughput ladder (pick the lowest tier that meets needs)

TierMechanismThroughput/latencyCost/complexity
Sockets + epollClassic kernel stackGood; syscalls + copies dominateLowest
io_uringAsync, batched, shared ringsFewer syscalls/copiesModerate; Linux ≥5.x
eBPF/XDPRun code at the driver hookDrop/redirect at line rate before stackVerifier limits; per-packet logic
Kernel bypass (DPDK)Poll-mode driver in userspace10–100M pps, µs latencyHigh; burns cores, no kernel stack

Decision drivers: required pps/latency, CPU budget (DPDK busy-polls cores), need for the kernel stack (TLS, routing), and operational complexity.

Architectural levers

  • Zero-copy: avoid user/kernel copies (sendfile, splice, io_uring fixed buffers, DPDK mbufs). Copies are often the real bottleneck.
  • Per-core / shared-nothing: thread-per-core with RSS/affinity (Seastar model) to kill cross-core contention and cache bouncing.
  • NIC offloads: checksum, TSO/LRO, RSS, and increasingly full TCP/crypto offload; SmartNIC/DPU pushes the data plane off the host CPU.
  • Congestion control: choose per goal — CUBIC (throughput), BBR (latency/bufferbloat), DCTCP (datacenter). Matters for tail latency.
  • C10M: the bottleneck is per-connection kernel cost and copies → bypass + zero-copy + per-core state.

When to recommend what

  • API server, normal scale → sockets/epoll or io_uring; don't over-engineer.
  • Software router/firewall/LB at line rate → XDP/eBPF or DPDK.
  • µs-tail trading/telco data plane → DPDK + per-core + kernel-bypass, SmartNIC.
Skills enregistrées