PTYPE Matching as a Fast Way to Steer Traffic
summary
DPDK adds an RTE_FLOW_ITEM_TYPE_PTYPE that encodes L2/L3/L4 and tunnel types in the mbuf so hardware can match by packet type instead of stacked items, collapsing thousands of stacked combinations into single rules. Milano driver implements it since 23.11. Benchmarks show linear table traversal causes up to ~10x extra misses on deep stacks; PTYPE reduces rule count to one for cases like inner UDP, supports masking including “absence of header”, and cuts datapath misses.
AI-written summary · about
chapters (6)
- 0:00Introduction
- 1:07Flow API overview
- 3:40Pattern matching challenges
- 8:41Packet type matching solution
- 11:15Implementation and benefits
- 12:17Real-world use case
related talks
01h 07mLibtpa Introduction
31mFlow-based Packet Processing Framework on DPDK and VPP
22mDependently-Typed Data Plane Programming
22mMonitoring 400G Traffic in DPDK Using FPGA-Based SmartNIC with RTE Flow
14mMTP: Transport for In-Network Computing
38mTelecom Packet Processing and Correlation Engine Using DPDK
16mGRO Library Enhancements
36mOffloading Network Traffic Classification to Hardware
