EP18: NPC: Rethinking Dataplane through Network-aware Packet Classification, Sep. 24, 2025

Paper: NPC: Rethinking Dataplane through Network-aware Packet Classification
Authors: Xinyi Zhang, Qianrui Qiu, Zhiyuan Xu, Peng He, Xilai Liu, Kavé Salamatian, Changhua Pei, Gaogang Xie
Presenter: Boling Zhai, University of Chinese Academy of Sciences
Guest of Honor: Xinyi Zhang, Computer Network Information Center, Chinese Academy of Sciences

Q: Has MPC been compared with learning-based solutions such as NeuroCuts?

A: MPC only compared with traditional packet classification schemes like HiCuts and HyperCuts. Our main idea is bringing traffic pattern into decision tree construction, so we do not use artificial intelligence techniques and haven’t compared with learning-based solutions like NeuroCuts.

Q: From a throughput and memory footprint perspective, when might MPC outperform NeuroCuts or vice versa?

A: Our method is more lightweight because we don’t use AI techniques, making construction faster and more adaptable to network changes. We haven’t compared performance metrics like throughput because we didn’t run their code, making it difficult to definitively say which performs better.

Q: Is MPC heavily coupled with Sketch-based measurement or could a resource learning-based agent be used for traffic measurements?

A: Sketch is only used to collect traffic patterns. Our method doesn’t rely specifically on Sketch - we could use other methods including artificial intelligence to predict and collect traffic. We used Sketch because no one had combined Sketch research with packet classification before.

Q: What are the most timely and important aspects of packet classification that need resolution today?

A: Making solutions lighter and easier to adapt to network changes, traffic patterns, and application characteristics. Many people try to optimize using AI techniques, but it’s hard to train models and deploy them on online systems. Another important aspect is adapting to hardware applications like DPU.

Q: Were there implementation challenges when implementing on programmable devices?

A: Yes, we tried implementing on DPU but couldn’t design the DPU itself, making it difficult to obtain traffic information to guide data structure construction. The biggest challenge was designing the workflow, which is why collaboration with companies is important.

Q: What type of DPU did you implement on?

A: We tried to use Bluefield DPU but are still working on this implementation. In this paper, we implemented with OpenWaySwitch, not DPU.

Q: How does MPC adapt to rapidly changing network traffic patterns?

A: MPC tracks both traffic and rule sets, counting rule changes in time windows. If too many changes occur, we rebuild the data structure. For traffic, we compare top K-flows between windows and rebuild if heavy hitters change significantly. We use an A-B switching strategy where one structure remains active for lookups while the other is rebuilt, avoiding packet loss and performance degradation.

Q: What contributes most to MPC’s performance gain?

A: Utilizing traffic patterns to position popular packets closer to the root in the decision tree, reducing memory access time. We use traffic information to guide decision tree construction and reduce memory accesses.

Q: What’s the next step after MPC? What future work do you envision?

A: Redesigning the whole data plane by integrating information from different components, making it aware of traffic patterns and application classification to be more intelligent. We plan to use AI techniques to predict traffic and other information.

Q: What was the most challenging part of developing MPC?

A: Making the system lightweight and fully utilizing traffic information when building the decision tree - bringing traffic information into each step of our work. The challenge is making the system fully traffic-aware.

Q: What makes your algorithm unique compared to other packet classification algorithms?

A: Unlike other algorithms that build data structures based only on rule set characteristics (like HiCuts, HyperCuts), MPC brings in traffic pattern information, recognizing that traffic distribution is highly skewed.

Q: For new students, what’s the best way to get started in packet classification?

A: Read source code like OpenWaySwitch, which uses tuple space search. Understanding how the system works - how packets are received, parsed, processed, and stored - is the best way to get started. Using OVS is beneficial because you can perform experiments on your laptop.