Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

A Machine Learning-Based Toolbox for P4 Programmable Data-Planes

Published: 16 May 2024 Publication History

Abstract

Intelligent data-planes (IDPs) can enhance network service performance and adaptation speed by executing one or more machine learning (ML) models directly on the served flows. The real-time ML inference enables line-speed decision-making for some traffic management functionalities. Due to the inherent scarcity of both the computational and memory resources and the strict high-speed per-packet processing demands, existing IDP deployments either realize only a limited set of ML models such as decision trees, or require substantial modifications in the switch hardware. In this paper, we propose INQ-MLT, a novel ML-based management toolbox to address the aforementioned limitations. INQ-MLT delegates the task of training various ML models to the control-plane. The latter adopts a tailored quantization-aware training process to compensate for the effect of precision loss resulting from quantization. The toolbox then employs a quantization mechanism to transform the trained ML model parameters (e.g., weights and activations) from floating-point representations to compact low-precision fixed integer values that can be easily processed and stored in the data-plane. Finally, the trained model is deployed into the IDP pipeline by restricting all its inference operations to basic arithmetic operations. To analyze the performance of INQ-MLT, we quantify the accuracy loss resulting from the quantization step through rigorous theoretical analysis. A proof-of-concept implementation of the proposed toolbox is developed using P4-based software switches. Experiments on two use-cases demonstrate that the deployed quantized models have almost no loss of accuracy when compared to their floating-point counterparts.

References

[1]
M. Abbasi, A. Shahraki, and A. Taherkordi, “Deep learning for network traffic monitoring and analysis (NTMA): A survey,” Comput. Commun., vol. 170, pp. 19–41, Mar. 2021.
[2]
P. Poullie, T. Bocek, and B. Stiller, “A survey of the state-of-the-art in fair multi-resource allocations for data centers,” IEEE Trans. Netw. Service Manag., vol. 15, no. 1, pp. 169–183, Mar. 2017.
[3]
Y. Yu et al., “Fault management in software-defined networking: A survey,” IEEE Commun. Surveys Tuts., vol. 21, no. 1, pp. 349–392, 1st Quart., 2019.
[4]
R. Boutaba et al., “A comprehensive survey on machine learning for networking: Evolution, applications and research opportunities,” J. Internet Services Appl., vol. 9, no. 1, pp. 1–99, 2018.
[5]
D. Kreutz, F. M. V. Ramos, P. E. Verissimo, C. E. Rothenberg, S. Azodolmolky, and S. Uhlig, “Software-defined networking: A comprehensive survey,” Proc. IEEE, vol. 103, no. 1, pp. 14–76, Jan. 2015.
[6]
Y.-C. Wang and S.-Y. You, “An efficient route management framework for load balance and overhead reduction in SDN-based data center networks,” IEEE Trans. Netw. Service Manag., vol. 15, no. 4, pp. 1422–1434, Dec. 2018.
[7]
P. Bosshart et al. “P4: Programming protocol-independent packet processors,” ACM SIGCOMM Comput. Commun. Rev., vol. 44, no. 3, pp. 87–95, 2014.
[8]
A. Liatifis, P. Sarigiannidis, V. Argyriou, and T. Lagkas, “Advancing SDN from openflow to P4: A survey,” ACM Comput. Surveys, vol. 55, no. 9, pp. 1–37, 2023.
[9]
N. McKeown, “Pisa: Protocol independent switch architecture,” in P4 Workshop, pp. 1–22, 2015.
[10]
v1model.” Accessed: Jan. 14, 2024. [Online]. Available: https://github.com/p4lang/p4c/blob/main/p4include/v1model.p4
[11]
(P4.org Architect. Working Group, Santa Clara, CA, USA). P416 Portable Switch Architecture (PSA). Accessed: Jan. 14, 2024. [Online]. Available: https://p4.org/p4-spec/docs/PSA-v1.2.html
[12]
(P.a Work. Group, Stanford, CA, USA). Initial Draft Specification for P4 Runtime, P4 Language Consortium. Oct. 2017. [Online]. Available: https://p4.org/p4-runtime/
[13]
T. Osi´nski, H. Tarasiuk, P. Chaignon, and M. Kossakowski, “A runtimeenabled p4 extension to the open vSwitch packet processing pipeline,” IEEE Trans. Netw. Service Manag., vol. 18, no. 3, pp. 2832–2845, Sep. 2021.
[14]
R. Parizotto, B. L. Coelho, D. C. Nunes, I. Haque, and A. Schaeffer-Filho, “Offloading machine learning to programmable data planes: A systematic survey,” ACM Comput. Surveys, vol. 36, no. 1, pp. 1–34, 2023.
[15]
B. M. Xavier, R. S. Guimarães, G. Comarela, and M. Martinello, “MAP4: A pragmatic framework for in-network machine learning traffic classification,” IEEE Trans. Netw. Service Manag., vol. 19, no. 4, pp. 4176–4188, Dec. 2022.
[16]
B. Coelho and A. Schaeffer-Filho, “Backorders: Using random forests to detect DDoS attacks in programmable data planes,” in Proc. 5th Int. Workshop P4 Eur., 2022, pp. 1–7.
[17]
K. Zhang, N. Samaan, and A. Karmouch, “A two-stage confidence-based intrusion detection system in programmable data-planes,” in Proc. IEEE Global Commun. Conf. GLOBECOM, 2023, pp. 1–6.
[18]
X. Zhang, L. Cui, F. P. Tso, and W. Jia, “pHeavy: Predicting heavy flows in the programmable data plane,” IEEE Trans. Netw. Service Manag., vol. 18, no. 4, pp. 4353–4364, Dec. 2021.
[19]
C. Zheng, B. Rienecker, and N. Zilberman, “QCMP: Load Balancing via In-network Reinforcement Learning,” in Proc. 2nd ACM SIGCOMM Workshop Future Internet Rout. Address., 2023, pp. 35–40.
[20]
C. Busse-Grawitz, R. Meier, A. Dietmüller, T. Bühler, and L. Vanbever, “pForest: In-network inference with random forests,” 2019, arXiv:1909.05680.
[21]
G. Xie et al., “Empowering in-network classification in programmable switches by binary decision tree and knowledge distillation,” IEEE/ACM Trans. Netw., vol. 32, no. 1, pp. 382–395, Feb. 2024.
[22]
Z. Xiong and N. Zilberman, “Do switches dream of machine learning? Toward in-network classification,” in Proc. 18th ACM Workshop Hot Topics Netw., 2019, pp. 25–33.
[23]
G. Siracusano et al., “Re-architecting traffic analysis with neural network interface cards,” in Proc. 19th USENIX Symp. Netw. Syst. Design Implement. (NSDI 22), 2022, pp. 513–533.
[24]
Q. Qin, K. Poularakis, K. K. Leung, and L. Tassiulas, “Line-speed and scalable intrusion detection at the network edge via federated learning,” in Proc. IFIP Netw. Conf. (Networking), 2020, pp. 352–360.
[25]
D. C. Li, M. R. Maulana, and L.-D. Chou, “NNSplit-SøREN: Supporting the model implementation of large neural networks in a programmable data plane,” Comput. Netw., vol. 222, Feb. 2023, Art. no.
[26]
Z. Zhong et al., “IOI: In-network optical inference,” in Proc. ACM SIGCOMM Workshop Opt. Syst., 2021, pp. 18–22.
[27]
T. Swamy, A. Rucker, M. Shahbaz, I. Gaur, and K. Olukotun, “Taurus: A data plane architecture for per-packet ML,” in Proc. 27th ACM Int. Conf. Architect. Support Program. Lang. Oper. Syst., 2022, pp. 1099–1114.
[28]
M. Jose, K. Lazri, J. François, and O. Festor, “Stateful InREC: Stateful in-network real number computation with recursive functions,” IEEE Trans. Netw. Service Manag., vol. 20, no. 1, pp. 830–845, Mar. 2023.
[29]
P. Cui et al., “Enabling in-network floating-point arithmetic for efficient computation offloading,” IEEE Trans. Parallel Distrib. Syst., vol. 33, no. 12, pp. 4918–4934, Dec. 2022.
[30]
K. Zhang, N. Samaan, and A. Karmouch, “An intelligent data-plane with a quantized ML model for traffic management,” in Proc. IEEE/IFIP Netw. Oper. Manag. Symp. (NOMS), 2023, pp. 1–9.
[31]
Behavioral model version 2.” Accessed: May 22, 2022. [Online]. Available: https://github.com/p4lang/behavioral-model
[32]
J.-H. Lee and K. Singh, “SwitchTree: In-network computing and traffic analyses with random forests,” Neural Comput. Appl., 2020, to be Published.
[33]
C. Zheng et al., “IIsy: Hybrid in-network classification using programmable switches,” IEEE/ACM Trans. Netw., early access, Feb. 16, 2024. 10.1109/TNET.2024.3364757.
[34]
C. Zheng and N. Zilberman, “Planter: Seeding trees within switches,” in Proc. Poster Demo Sessions (SIGCOMM ‘21), New York, NY, USA, 2021, pp. 12–14.
[35]
C. Zheng et al., “Planter: Rapid prototyping of in-network machine learning inference,” ACM SIGCOMM Comput. Commun. Rev., 2024, to be Published.
[36]
G. Zhou, Z. Liu, C. Fu, Q. Li, and K. Xu, “An efficient design of intelligent network data plane,” in Proc. 32nd USENIX Security Symp. (USENIX Security 23), 2023, pp. 1–18.
[37]
C. Zheng, X. Hong, D. Ding, S. Vargaftik, Y. Ben-Itzhak, and N. Zilberman, “In-network machine learning using programmable network devices: A survey,” IEEE Commun. Surveys Tuts., early access, Dec. 19, 2023. 10.1109/COMST.2023.3344351.
[38]
T. Swamy, A. Zulfiqar, L. Nardi, M. Shahbaz, and K. Olukotun, “Homunculus: Auto-generating efficient data-plane ML pipelines for datacenter networks,” in Proc. 28th ACM Int. Conf. Architect. Support Program. Lang. Oper. Syst., 2023, pp. 329–342.
[39]
A. T.-J. Akem, M. Gucciardo, and M. Fiore, “Flowrest: Practical flowlevel inference in programmable switches with random forests,” in Proc. INFOCOM IEEE Conf. Comput. Commun., 2023, pp. 1–10.
[40]
E. Papadogiannaki and S. Ioannidis, “A survey on encrypted network traffic analysis applications, techniques, and countermeasures,” ACM Comput. Surveys, vol. 54, no. 6, pp. 1–35, 2021.
[41]
S. Rezaei and X. Liu, “Deep learning for encrypted traffic classification: An overview,” IEEE Commun. Mag., vol. 57, no. 5, pp. 76–81, May 2019.
[42]
T. T. T. Nguyen and G. Armitage, “A survey of techniques for Internet traffic classification using machine learning,” IEEE Commun. Surveys Tuts., vol. 10, no. 4, pp. 56–76, 4th Quart., 2008.
[43]
C. Xu, S. Chen, J. Su, S.-M. Yiu, and L. C. K. Hui, “A survey on regular expression matching for deep packet inspection: Applications, algorithms, and hardware platforms,” IEEE Commun. Surveys Tuts., vol. 18, no. 4, pp. 2991–3029, 4th Quart., 2016.
[44]
J. Hypolite, J. Sonchack, S. Hershkop, N. Dautenhahn, A. DeHon, and J. M. Smith, “Deepmatch: Practical deep packet inspection in the data plane using network processors,” in Proc. 16th Int. Conf. Emerg. Netw. Exp. Technol., 2020, pp. 336–350.
[45]
C. Liu, L. He, G. Xiong, Z. Cao, and Z. Li, “FS-Net: A flow sequence network for encrypted traffic classification,” in Proc. IEEE INFOCOM Conf. Comput. Commun., 2019, pp. 1171–1179.
[46]
T. Shapira and Y. Shavitt, “FlowPic: A generic representation for encrypted traffic classification and applications identification,” IEEE Trans. Netw. Service Manag., vol. 18, no. 2, pp. 1218–1232, Jun. 2021.
[47]
T.-L. Huoh, Y. Luo, P. Li, and T. Zhang, “Flow-based encrypted network traffic classification with graph neural networks,” IEEE Trans. Netw. Service Manag., vol. 20, no. 2, pp. 1224–1237, Jun. 2023.
[48]
Y. Wang, H. He, Y. Lai, and A. X. Liu, “A two-phase approach to fast and accurate classification of encrypted traffic,” IEEE/ACM Trans. Netw., vol. 31, no. 3, pp. 1071–1086, Jun. 2023.
[49]
X. Yun, Y. Wang, Y. Zhang, C. Zhao, and Z. Zhao, “Encrypted TLS traffic classification on cloud platforms,” IEEE/ACM Trans. Netw., vol. 31, no. 1, pp. 164–177, Feb. 2023.
[50]
R. Doriguzzi-Corin, S. Millar, S. Scott-Hayward, J. M.-d. Rincon, and D. Siracusa, “Lucid: A practical, lightweight deep learning solution for DDoS attack detection,” IEEE Trans. Netw. Service Manag., vol. 17, no. 2, pp. 876–889, Jun. 2020.
[51]
R. Vinayakumar, M. Alazab, K. P. Soman, P. Poornachandran, A. Al-Nemrat, and S. Venkatraman, “Deep learning approach for intelligent intrusion detection system,” IEEE Access, vol. 7, pp. 41525–41550, 2019.
[52]
L. Yang and A. Shami, “A transfer learning and optimized CNN based intrusion detection system for Internet of Vehicles,” in Proc. IEEE Int. Conf. Commun. (ICC), 2022, pp. 2774–2779.
[53]
S. Longari, D. H. Nova Valcarcel, M. Zago, M. Carminati, and S. Zanero, “CANnolo: An anomaly detection system based on LSTM autoencoders for controller area network,” IEEE Trans. Netw. Service Manag., vol. 18, no. 2, pp. 1913–1924, Jun. 2021.
[54]
I. Akbari et al., “A look behind the curtain: Traffic classification in an increasingly encrypted Web,” Proc. ACM Meas. Anal. Comput. Syst., vol. 5, no. 1, pp. 1–26, 2021.
[55]
S. Gupta, D. Gosain, M. Kwon, and H. B. Acharya, “Deep4r: Deep packet inspection in P4 using packet recirculation,” in Proc. IEEE INFOCOM Conf. Comput. Commun., 2023, pp. 1–10.
[56]
L. Tan et al., “In-band network telemetry: A survey,” Comput. Netw., vol. 186, Feb. 2021, Art. no.
[57]
R. B. Basat, S. Ramanathan, Y. Li, G. Antichi, M. Yu, and M. Mitzenmacher, “Pint: Probabilistic in-band network telemetry,” in Proc. Annu. Conf. ACM Special Interest Group Data Commun. Appl., Technol., Architec., Protocols Comput. Commun., 2020, pp. 662–680.
[58]
S. Tang, D. Li, B. Niu, J. Peng, and Z. Zhu, “Sel-INT: A runtimeprogrammable selective in-band network telemetry system,” IEEE Trans. Netw. Service Manag., vol. 17, no. 2, pp. 708–721, Jun. 2020.
[59]
A. Gholami, S. Kim, Z. Dong, Z. Yao, M. W. Mahoney, and K. Keutzer, “A survey of quantization methods for efficient neural network inference,” 2021, arXiv:2103.13630.
[60]
B. Jacob et al., “Quantization and training of neural networks for efficient integer-arithmetic-only inference,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., 2018, pp. 2704–2713.
[61]
J. Yan et al., “Brain-on-switch: Towards advanced intelligent network data plane via NN-driven traffic analysis at line-speed,” 2024, arXiv:2403.11090.
[62]
M. Ghashami, E. Liberty, J. M. Phillips, and D. P. Woodruff, “Frequent directions: Simple and deterministic matrix sketching,” SIAM J. Comput., vol. 45, no. 5, pp. 1762–1792, 2016.
[63]
K. Razavi, G. Karlos, V. Nigade, M. Mühlhäuser, and L. Wang, “Distributed DNN serving in the network data plane,” in Proc. 5th Int. Workshop P4 Eur., 2022, pp. 67–70.
[64]
D. Koeplinger et al. “Spatial: A language and compiler for application accelerators,” in Proc. 39th ACM SIGPLAN Conf. Program. Lang. Design Implement., 2018, pp. 296–311.
[65]
D. Blalock and J. Guttag, “Multiplying matrices without multiplying,” in Proc. Int. Conf. Mach. Learn., 2021, pp. 992–1004.
[66]
Y. Jeon, B. Park, S. J. Kwon, B. Kim, J. Yun, and D. Lee, “BiQGEMM: Matrix multiplication with lookup table for binary-coding-based quantized DNNs,” in Proc. Int. Conf. High Perform. Comput., Netw., Stor. Anal. (SC20), 2020, pp. 1–14.
[67]
C. Sakr, Y. Kim, and N. Shanbhag, “Analytical guarantees on numerical precision of deep neural networks,” in Proc. Int. Conf. Mach. Learn., 2017, pp. 3007–3016.
[68]
C. Caraiscos and B. Liu, “A roundoff error analysis of the LMS adaptive algorithm,” IEEE Trans. Acoust., Speech, Signal Process., vol. 32, no. 1, pp. 34–41, Feb. 1984.
[69]
J. L. Holt and J.-N. Hwang, “Finite precision error analysis of neural network hardware implementations,” IEEE Trans. Comput., vol. 42, no. 3, pp. 281–290, Mar. 1993.
[70]
I. Sharafaldin, A. H. Lashkari, and A. A. Ghorbani, “Toward generating a new intrusion detection dataset and intrusion traffic characterization,” in Proc. ICISSp, 2018, pp. 108–116.
[71]
G. Draper-Gil, A. H. Lashkari, M. S. Islam Mamun, and A. A. Ghorbani, “Characterization of encrypted and VPN traffic using time-related,” in Proc. 2nd Int. Conf. Inf. Syst. Security Privacy (ICISSP), 2016, pp. 407–414.
[72]
O. Aouedi, K. Piamrat, and B. Parrein, “Ensemble-based deep learning model for network traffic classification,” IEEE Trans. Netw. Service Manag., vol. 19, no. 4, pp. 4124–4135, Dec. 2022.
[73]
M. D. Mauro, G. Galatro, and A. Liotta, “Experimental review of neuralbased approaches for network intrusion management,” IEEE Trans. Netw. Service Manag., vol. 17, no. 4, pp. 2480–2495, Dec. 2020.
[74]
G. Siracusano and R. Bifulco, “In-network neural networks,” 2018, arXiv:1801.05731.
[75]
A. Alowa and T. Fevens, “Towards minimum inter-controller delay time in software defined networking,” Procedia Comput. Sci., vol. 175, pp. 395–402, Aug. 2020.
[76]
J. Xing, K.-F. Hsu, M. Kadosh, A. Lo, Y. Piasetzky, A. Krishnamurthy, and A. Chen, “Runtime programmable switches,” in Proc. 19th USENIX Symp. Netw. Syst. Design Implement. (NSDI 22), 2022, pp. 651–665.
[77]
Y. Feng et al., “Enabling in-situ programmability in network data plane: From architecture to language,” in Proc. 19th USENIX Symp. Netw. Syst. Design Implement. (NSDI 22), 2022, pp. 635–649.
[78]
T. Liang, J. Glossner, L. Wang, S. Shi, and X. Zhang, “Pruning and quantization for deep neural network acceleration: A survey,” Neurocomputing, vol. 461, pp. 370–403, Oct. 2021.
[79]
F. Hauser et al., “A survey on data plane programming with P4: Fundamentals, advances, and applied research,” J. Netw. Comput. Appl., vol. 212, Mar. 2023, Art. no.

Index Terms

  1. A Machine Learning-Based Toolbox for P4 Programmable Data-Planes
    Index terms have been assigned to the content through auto-classification.

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Network and Service Management
    IEEE Transactions on Network and Service Management  Volume 21, Issue 4
    Aug. 2024
    1268 pages

    Publisher

    IEEE Press

    Publication History

    Published: 16 May 2024

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 0
      Total Downloads
    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 16 Nov 2024

    Other Metrics

    Citations

    View Options

    View options

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media