English

pForest: In-Network Inference with Random Forests

Networking and Internet Architecture 2022-09-08 v2

Abstract

When classifying network traffic, a key challenge is deciding when to perform the classification, i.e., after how many packets. Too early, and the decision basis is too thin to classify a flow confidently; too late, and the tardy labeling delays crucial actions (e.g., shutting down an attack) and invests computational resources for too long (e.g., tracking and storing features). Moreover, the optimal decision timing varies across flows. We present pForest, a system for "As Soon As Possible" (ASAP) in-network classification according to supervised machine learning models on top of programmable data planes. pForest automatically classifies each flow as soon as its label is sufficiently established, not sooner, not later. A key challenge behind pForest is finding a strategy for dynamically adapting the features and the classification logic during the lifetime of a flow. pForest solves this problem by: (i) training random forest models tailored to different phases of a flow; and (ii) dynamically switching between these models in real time, on a per-packet basis. pForest models are tuned to fit the constraints of programmable switches (e.g., no floating points, no loops, and limited memory) while providing a high accuracy. We implemented a prototype of pForest in Python (training) and P4 (inference). Our evaluation shows that pForest can classify traffic ASAP for hundreds of thousands of flows, with a classification score that is on-par with software-based solutions.

Keywords

Cite

@article{arxiv.1909.05680,
  title  = {pForest: In-Network Inference with Random Forests},
  author = {Coralie Busse-Grawitz and Roland Meier and Alexander Dietmüller and Tobias Bühler and Laurent Vanbever},
  journal= {arXiv preprint arXiv:1909.05680},
  year   = {2022}
}

Comments

update results and text

R2 v1 2026-06-23T11:13:31.166Z