SOCKMAP - TCP splicing of the future
11 hours ago
- #eBPF
- #Linux Kernel
- #TCP Splicing
- TCP socket splicing via SOCKMAP in Linux kernel reduces userspace load and enables efficient data forwarding.
- Existing syscalls like sendfile, splice, and vmsplice avoid copying data to userspace but remain specialized and synchronous.
- Key problems in data forwarding: syscall cost, wakeup latency, and copying cost.
- SOCKMAP uses eBPF to allow zero-copy TCP splicing entirely in kernel space, avoiding userspace wakeups.
- Benchmarks show SOCKMAP currently slower with higher jitter and bugs, but promising for future offloading.
- SOCKMAP can pipe data across multiple sockets and integrate with strparser and kTLS for advanced use cases.