PDF (2.8 MB)
Collect
Submit Manuscript
Open Access

Modeling and Analyzing the Performance of High-Speed Packet I/O

Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China.
Xi’an Research Institute of Hi-Tech, Xi’an 710025, China.
Show Author Information

Abstract

Recently, 10 Gbps or higher speed links are being widely deployed in data centers. Novel high-speed packet I/O frameworks have emerged to keep pace with such high-speed links. These frameworks mainly use techniques, such as memory preallocation, busy polling, zero copy, and batch processing, to replace costly operations (e.g., interrupts, packet copy, and system call) in native OS kernel stack. For high-speed packet I/O frameworks, costs per packet, saturation throughput, and latency are performance metrics that are of utmost concern, and various factors have an effect on these metrics. To acquire a comprehensive understanding of high-speed packet I/O, we propose an analytical model to formulate its packet forwarding (receiving-processing-sending) flow. Our model takes the four main techniques adopted by the frameworks into consideration, and the concerned performance metrics are derived from it. The validity and correctness of our model are verified by real system experiments. Moreover, we explore how each factor impacts the three metrics through a model analysis and then provide several useful insights and suggestions for performance tuning.

References

[1]
L. Rizzo, Netmap: A novel framework for fast packet I/O, in Proceedings of USENIX Annual Technical Conference, Boston, MA, USA, 2012, pp. 101-112.
[2]
E. Jeong, S. Woo, M. A. Jamshed, H. Jeong, S. Ihm, D. Han, and K. Park, mTCP: A highly scalable user-level TCP stack for multicore systems, in Proceedings of USENIX Symposium on Networked Systems Design and Implementation, Seattle, WA, USA, 2014, pp. 489-502.
[3]
Intel, Intel Data Plane Development Kit (DPDK), http://dpdk.org, 2012.
[5]
S. Han, K. Jang, K. Park, and S. Moon, Packetshader: A GPU-accelerated software router, in Proc. of ACM SIGCOMM Computer Communication Review, vol. 40, no. 4, pp. 195-206, 2010.
[6]
S. Gallenmüller, P. Emmerich, R. Schönberger, D. Raumer, and G. Carle, Building fast but flexible software routers, in Proceedings of ACM/IEEE Symposium on Architectures for Networking and Communications Systems, Beijing, China, 2017, pp. 101-102.
[7]
B. Pfaff, J. Pettit, T. Koponen, E. Jackson, A. Zhou, J. Rajahalme, J. Gross, A. Wang, J. Stringer, P. Shelar, et al., The design and implementation of open vSwitch, in Proceedings of USENIX Symposium on Networked Systems Design and Implementation, Oakland, CA, USA, 2015, pp. 117-130.
[8]
[9]
J. Martins, M. Ahmed, C. Raiciu, V. Olteanu, M. Honda, R. Bifulco, and F. Huici, Clickos and the art of network function virtualization, in Proceedings of USENIX Symposium on Networked Systems Design and Implementation, Seattle, WA, USA, 2014, pp. 459-473.
[10]
J. Hwang, K. Ramakrishnan, and T. Wood, Netvm: High performance and flexible networking using virtualization on commodity platforms, IEEE Transactions on Network and Service Management, vol. 12, no. 1, pp. 34-47, 2015.
[11]
P. Steve and R. David, Introduction to OpenOnload-building application transparency and protocol conformance into application acceleration middleware, http://www.moderntech.com.hk/sites/default/files/whitepaper/SF-105918-CD-1_Introduction_to_OpenOnload_White_Paper.pdf, 2011.
[12]
Snabb Switch: Fast open source packet processing, https://github.com/SnabbCo/snabbswitch, 2020.
[13]
L. Rizzo and G. Lettieri, Vale, a switched ethernet for virtual machines, in Proceedings of the 8th International Conference on Emerging Networking Experiments and Technologies, Nice, France, 2012, pp. 61-72.
[14]
Fd.io, https://fd.io/, 2018.
[15]
Cisco, Trex: Realistic traffic generator, https://trex-tgn.cisco.com/, 2015.
[16]
H. Lim, D. Han, D. G. Andersen, and M. Kaminsky, MICA: A holistic approach to fast in-memory key-value storage, in Proceedings of USENIX Symposium on Networked Systems Design and Implementation, Seattle, WA, USA, 2014, pp. 429-444.
[17]
S. Gallenmüller, P. Emmerich, F. Wohlfart, D. Raumer, and G. Carle, Comparison of frameworks for high-performance packet IO, in Proceedings of ACM/IEEE Symposium on Architectures for Networking and Communications Systems, Oakland, CA, USA, 2015, pp. 29-38.
[18]
P. Emmerich, D. Raumer, F. Wohlfart, and G. Carle, Assessing soft-and hardware bottlenecks in PC-based packet forwarding systems, in Proceedings of the 14th International Conference on Networks, Barcelona, Spain, 2015, pp. 78-83.
[19]
P. Emmerich, D. Raumer, S. Gallenmüller, F. Wohlfart, and G. Carle, Throughput and latency of virtual switching with open vswitch: A quantitative analysis, Journal of Network and Systems Management, vol. 26, no. 2, pp. 314-338, 2018.
[20]
M. Jarschel, S. Oechsner, D. Schlosser, R. Pries, S. Goll, and P. TranGia, Modeling and performance evaluation of an openflow architecture, in Proceedings of the 23rd International Teletraffic Congress, San Francisco, CA, USA, 2011, pp. 1-7.
[21]
R. Bolla, R. Bruschi, A. Carrega, and F. Davoli, Green networking with packet processing engines: Modeling and optimization, IEEE/ACM Transactions on Networking, vol. 22, no. 1, pp. 110-123, 2014.
[22]
Z. Su, B. Baynat, and T. Begin, A new model for DPDK-based virtual switches, in Proceedings of 2017 IEEE Conference on Network Softwarization, Bologna, Italy, 2017, pp. 1-5.
[23]
L. Zabala, A. Ferro, and A. Pineda, Modelling packet capturing in a traffic monitoring system based on linux, in Proceedings of 2012 International Symposium on Performance Evaluation of Computer & Telecommunication Systems, Genoa, Italy, 2012, pp. 1-6.
[24]
K. Salah, K. El-Badawi, and F. Haidari, Performance analysis and comparison of interrupt-handling schemes in gigabit networks, Computer Communications, vol. 30, no. 17, pp. 3425-3441, 2007.
[25]
F. Uyeda, L. Foschini, F. Baker, S. Suri, and G. Varghese, Efficiently measuring bandwidth at all time scales, in Proceedings of USENIX Symposium on Networked Systems Design and Implementation, Boston, MA, USA, 2011, pp. 71-84.
[26]
T. Benson, A. Anand, A. Akella, and M. Zhang, Understanding data center traffic characteristics, ACM SIGCOMM Computer Communication Review, vol. 40, no. 1, pp. 92-99, 2010.
[27]
P. Salvador, A. Pacheco, and R. Valadas, Modeling IP traffic: Joint characterization of packet arrivals and packet sizes using BMAPs, Computer Networks, vol. 44, no. 3, pp. 335-352, 2004.
[28]
A. Klemm, C. Lindemann, and M. Lohmann, Modeling IP traffic using the batch Markovian arrival process, Performance Evaluation, vol. 54, no. 2, pp. 149-173, 2003.
[29]
A. Erramilli, O. Narayan, and W. Willinger, Experimental queueing analysis with long-range dependent packet traffic, IEEE/ACM Transactions on Networking, vol. 4, no. 2, pp. 209-223, 1996.
[30]
W. Willinger, V. Paxson, and M. Taqqu, Self-similarity and heavy tails: Structural modeling of network traffic, A Practical Guide to Heavy Tails: Statistical Techniques and Applications, vol. 23, pp. 27-53, 1998.
[31]
M. Chaudhry and J. G. Templeton, A First Course in Bulk Queues. New York, NY, USA: Wiley, 1983.
[32]
R. Nelson, Probability, Stochastic Processes, and Queueing Theory: The Mathematics of Computer Performance Modeling. Berlin, Germany: Springer Science & Business Media, 2013.
[33]
P. Emmerich, S. Gallenmüller, D. Raumer, F. Wohlfart, and G. Carle, MoonGen: A scriptable high-speed packet generator, in Proceedings of the 2015 Internet Measurement Conference, Tokyo, Japan, 2015, pp. 275-287.
[34]
CAIDA, The CAIDA Anonymized Internet Traces 2016 Dataset-20160406, http://www.caida.org/data/passive/passive_2016_dataset.xml, 2016.
Tsinghua Science and Technology
Pages 426-439
Cite this article:
Li X, Ren F, Yang B. Modeling and Analyzing the Performance of High-Speed Packet I/O. Tsinghua Science and Technology, 2021, 26(4): 426-439. https://doi.org/10.26599/TST.2019.9010080
Metrics & Citations  
Article History
Copyright
Rights and Permissions
Return