Welcome to Francis Academic Press

Academic Journal of Computing & Information Science, 2021, 4(5); doi: 10.25236/AJCIS.2021.040508.

Structure optimization and optimal pipeline placement in programmable data plane virtualization scheme


Yuxin Zhao

Corresponding Author:
Yuxin Zhao

Tongji University Shanghai 200333 China


Virtualization of the programmable data plane allows multiple virtual pipelines to be placed on the same physical programmable device, enabling more flexible network function composition, debugging, etc. Existing proposals like HyPer4 and HyperVDP realize virtualization with a hypervisor-like program to emulate customers' programs, which becomes the mainstream of the current methods. Despite the progress achieved, their designs still have problems from inefficient structure to waste of resources. At the same time, they do not consider how to reasonably place the pipeline of different customers on the hypervisor which may cause unnecessary recirculations. So, in this paper, we present HyperSwitch, an efficient data plane hypervisor with several new techniques to optimize its structure design and reduce the resource consumption. We also model the multiple pipeline placement problem into an integer linear programming problem so that it can have the optimal solution. Compared to existing work, HyperSwitch acquires a decreasing delay by 26.3\% on average and avoids almost all happenings of recirculation.


Structure, programmable

Cite This Paper

Yuxin Zhao. Structure optimization and optimal pipeline placement in programmable data plane virtualization scheme. Academic Journal of Computing & Information Science (2021), Vol. 4, Issue 5: 48-57. https://doi.org/10.25236/AJCIS.2021.040508.


[1] [n.d.].NPL 1.3 Specification. https://github.com/nplang/NPL-Spec

[2] [n.d.].The P4 Language Consortium. https://p4.org

[3] [n.d.].P4 Tutorial. https://github.com/p4lang/tutorials

[4] Pat Bosshart, Glen Gibb, Hun-Seok Kim, George Varghese, Nick McK-eown, Martin Izzard, Fernando Mujica, and Mark Horowitz.(2013). Forwarding Metamorphosis: Fast Programmable Match-Action Pro-cessing in Hardware for SDN.43, 4 (Aug. 2013), 99–110. https://doi.org/10.1145/2534169.2486011

[5] Sharad Chole, Andy Fingerhut, Sha Ma, Anirudh Sivaraman, Shay Var-gaftik, Alon Berger, Gal Mendelson, Mohammad Alizadeh, Shang-Tse Chuang, Isaac Keslassy, Ariel Orda, and Tom Edsall. (2017). DRMT: Dis-aggregated Programmable Switching. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (Los Ange-les, CA, USA)(SIGCOMM ’17). Association for Computing Machinery, New York, NY, USA, 1–14. https://doi.org/10.1145/3098822.3098823

[6] David Hancock and Jacobus van der Merwe. (2016). HyPer4: Using P4to Virtualize the Programmable Data Plane (CoNEXT’16). Association for Computing Machinery, New York, NY, USA, 35–49. https://doi.org/10.1145/2999572.2999607

[7] Lavanya Jose, Lisa Yan, George Varghese, and Nick McKeown. (2015).Compiling Packet Programs to Reconfigurable Switches. In 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI 15). USENIX Association, Oakland, CA, 103–115. https://www.usenix.org/conference/nsdi15/technical-sessions/presentation/jose

[8] Hardik Soni, Thierry Turletti, and Walid Dabbous. (2017). P4Bricks: Enabling multiprocessing using Linker-based network data plane ar-chitecture. (Nov. 2017). https://hal.inria.fr/hal-01632431 workingpaper or preprint.

[9] Cheng Zhang, Jun Bi, Yu Zhou, and Jianping Wu. (2019). HyperVDP:High-Performance Virtualization of the Programmable Data Plane.IEEE Journal on Selected Areas in Communications37, 3 (2019), 556–569.https://doi.org/10.1109/JSAC.2019.2894308

[10] Peng Zheng, Theophilus Benson, and Chengchen Hu. (2018). P4Visor: Lightweight Virtualization and Composition Primitives for Buildingand Testing Modular Programs. In Proceedings of the 14th International Conference on Emerging Networking EXperiments and Technologies (Her-aklion, Greece) (CoNEXT’18). Association for Computing Machinery,New York, NY, USA, 98–111. https://doi.org/10.1145/3281411.3