DPDK Thash: Principles and Appliances
summary
DPDK thash implements a way to force RSS to deliver specific flows by computing minimal bit flips in a tuple and installing a crafted RSS key; the library precomputes a reverse complementary table mapping every ephemeral port to the XOR mask and uses a bitmap plus a flow-redirection table to avoid expensive per-connection hash loops. Integration with an F-stack/FreeBSD TCP stack shows much better scaling (tested up to 16 workers, 64-entry redirect table example) and near-linear throughput compared with the fallback that collapses under many threads.
AI-written summary · about
chapters (17)
- 0:00Introduction to DPDK Thash
- 1:04Problems in multi-threaded environments
- 2:11How RSS technology works
- 3:15Predictable RSS and its use
- 5:27Source NAT example
- 7:35Why predictable RSS works
- 8:19Ongoing work in DPDK Thash
- 9:02Inferring RXQ from local port
- 12:11FST project overview
- 13:37Using Thash for local port hash
- 16:26Building reverse complementary table
- 17:33Reserving local ports in FST
- 19:41Flow table for redirection
- 20:44Solving three key problems
- 21:08Performance results with IPv4/IPv6
- 22:17Real-world example with Nginx
- 23:37Q&A on RSS security
related talks
15mIsolation Mechanisms for High-Speed Packet-Processing Pipelines
19mStarfish: A Topology-Routing Co-Design for Small-Scale Data Centers
17mPerformance Interfaces for Network Functions
16mRuntime Programmable Switches
12mAccelerating Software Development for High Performance Chiplet...
01h 16mPolymorphism, Cohesion, and Coupling in C++
24mUndermining Information Hiding (and What to Do about It)
19mPineapple: Unifying Multi-Paxos and Atomic Shared Registers
