pHeavy is a machine learning based scheme for predicting heavy flows directly on the programmable data plane. This repository contains the source code for our paper published on TNSM:
- Xiaoquan Zhang, Lin Cui, Fung Po Tso and Weijia Jia, "pHeavy: Predicting Heavy Flows in the Programmable Data Plane", IEEE Transactions on Network and Service Management, 18(4), pp.4353-4364.
The core is written by P416 running in programmable switches (i.e., Tofino AISC).
The Tofino-version code implements the prediction of TCP traffic via optional features (e.g., TCP flags, packet length and port) and memory management via registers.
If you find this code useful in your research, please cite the following papers:
- Xiaoquan Zhang, Lin Cui, Fung Po Tso and Weijia Jia, "pHeavy: Predicting Heavy Flows in the Programmable Data Plane", IEEE Transactions on Network and Service Management, 18(4), pp.4353-4364.
@article{zhang2021pheavy,
title={pHeavy: Predicting Heavy Flows in the Programmable Data Plane},
author={Zhang, Xiaoquan and Cui, Lin and Tso, Fung Po and Jia, Weijia},
journal={IEEE Transactions on Network and Service Management},
volume={18},
number={4},
pages={4353--4364},
year={2021},
publisher={IEEE}
}
- Xiaoquan Zhang, Lin Cui, Kaimin Wei, Fung Po Tso, Yangyang Ji, and Weijia Jia, "A survey on stateful data plane in software defined networks", Computer Networks, 184, p.107597.
@article{zhang2021survey,
title={A survey on stateful data plane in software defined networks},
author={Zhang, Xiaoquan and Cui, Lin and Wei, Kaimin and Tso, Fung Po and Ji, Yangyang and Jia, Weijia},
journal={Computer Networks},
volume={184},
pages={107597},
year={2021},
publisher={Elsevier}
}