StackPool: A High-Performance Scalable Network Architecture on Multi-core Servers

被引:0
|
作者
Gu, Qiang [1 ]
Wen, Liufei [1 ]
Dai, Fen [1 ]
Gong, Hao [1 ]
Yang, Yongqiang [1 ]
Xu, Xiangyang [1 ]
Feng, Zexi [1 ]
机构
[1] Huawei Technol Co Ltd, Shannon Lab, Shenzhen, Peoples R China
关键词
network protocol stack; scalability; parallelism; performance; multi-core servers;
D O I
10.1109/HPCC.and.EUC.2013.13
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
There are numerous proprietary appliances in operators' networks. These appliances consume a lot of electricity and plenty of space to deploy, which lead to high operating expense (OPEX) for operators. Network Function Virtualisation (NFV) is introduced to solve this problem. NFV consolidates many network devices into network applications, which can be running on industry commodity servers. Those appliances are different from routers, because they have to handle protocol processing above network layer and provide socket APIs to various applications, which need full protocol stack support instead of packet forwarding only. Unfortunately, despite increasingly high speed bandwidth up to 10Gbps or even 40Gbps on commodity multi-core servers, network protocol processing bottlenecks are identified, such as throughput does not scale by the number of cores, or stack processing latency is too long for some applications, etc. In this paper, the reasons for poor stack performance (especially performance scalability and stack process latency) in software are systematically analyzed. And based on improving such analysis results, we propose StackPool, a novel high-performance scalable network architecture on multi-core servers. StackPool is constituted by multiple isolated virtual lanes. Each virtual lane contains an independent protocol stack instance, several pairs of hardware queues in NICs, as well as socket instances located in the stack instance. Each logical CPU core is responsible to process packets in a virtual lane. Flow director in NIC and lane selector in StackPool direct packets of different flows to several virtual lanes based on packet headers. We have implemented a StackPool prototype to show that the approach is promising. The StackPool outperforms standard Linux protocol stack with approximately 7 times throughput of UDP or 3 times that of TCP in a single virtual lane. Moreover, StackPool performance accrues linearly when scale to multiple cores, e.g., 10.7 and 17.2 times on 6 cores of UDP transmit and receive respectively, and 6.5 times of TCP throughput on 6 logical cores. At the same time, packet latency on StackPool is approximated only 1/4 than that on native Linux stack.
引用
收藏
页码:17 / 28
页数:12
相关论文
共 50 条
  • [1] A high-performance and scalable multi-core aware software solution for network monitoring
    Dashtbozorgi, Mahdi
    Azgomi, Mohammad Abdollahi
    [J]. JOURNAL OF SUPERCOMPUTING, 2012, 59 (02): : 720 - 743
  • [2] A high-performance and scalable multi-core aware software solution for network monitoring
    Mahdi Dashtbozorgi
    Mohammad Abdollahi Azgomi
    [J]. The Journal of Supercomputing, 2012, 59 : 720 - 743
  • [3] Performance characteristics of multi-core and CMT servers
    Nowostawski, Mariusz
    McKenzie, Callum
    Lipoth, Andras
    [J]. 2007 AUSTRALASIANTELECOMMUNICATION NETWORKS AND APPLICATIONS CONFERENCE, 2007, : 494 - +
  • [4] NFV Performance Profiling on Multi-core Servers
    Zheng, Peng
    Feng, Wendi
    Narayanan, Arvind
    Zhang, Zhi-Li
    [J]. 2020 IFIP NETWORKING CONFERENCE AND WORKSHOPS (NETWORKING), 2020, : 91 - 99
  • [5] High-Performance Packet Classification on Multi-Core Network Processing Platforms
    亓亚烜
    薛一波
    李军
    [J]. Tsinghua Science and Technology, 2011, 16 (04) : 432 - 439
  • [6] Towards High-performance Pattern Matching on Multi-core Network Processing Platforms
    Qi, Yaxuan
    Zhou, Zongwei
    Wu, Yiyao
    Xue, Yibo
    Li, Jun
    [J]. 2010 IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE GLOBECOM 2010, 2010,
  • [7] High-Performance Video Based Fire Detection Algorithms Using a Multi-core Architecture
    Kim, Yongmin
    Kang, Myeongsu
    Kim, Jong-Myon
    [J]. ADVANCED INTELLIGENT COMPUTING THEORIES AND APPLICATIONS: WITH ASPECTS OF ARTIFICIAL INTELLIGENCE, 2012, 6839 : 476 - 483
  • [8] MULTI-CORE SOFTWARE ARCHITECTURE FOR THE SCALABLE HEVC DECODER
    Hamidouche, Wassim
    Raulet, Mickael
    Deforges, Olivier
    [J]. 2014 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING (ICASSP), 2014,
  • [9] A HIGH PERFORMANCE MULTI-CORE NETWORK PROCESSING SYSTEM
    Zha, Qiwen
    Zhang, Wu
    Zeng, Xuewen
    Song, Yi
    [J]. 2011 3RD INTERNATIONAL CONFERENCE ON COMPUTER TECHNOLOGY AND DEVELOPMENT (ICCTD 2011), VOL 1, 2012, : 439 - 443
  • [10] Asteroid: Scalable Online Memory Diagnostics for Multi-core, Multi-socket Servers
    Musfiq Rahman
    Bruce R. Childers
    [J]. International Journal of Parallel Programming, 2016, 44 : 949 - 974