首页> 外文会议>IEEE International Conference on High Performance Computing and Communications >StackPool: A High-Performance Scalable Network Architecture on Multi-core Servers
【24h】

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

机译:StackPool:多核服务器上的高性能可扩展网络架构

获取原文

摘要

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 Stack Pool, a novel high-performance scalable network architecture on multi-core servers. Stack Pool 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 Stack Pool direct packets of different flows to several virtual lanes based on packet headers. We have implemented a Stack Pool prototype to show that the approach is promising. The Stack Pool outperforms standard Linux protocol stack with approximately 7 times throughput of UDP or 3 times that of TCP in a single virtual lane. Moreover, Stack Pool performance accrues linearly when scale to multiple cores, e.g., 1- .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 Stack Pool is approximated only 1/4 than that on native Linux stack.
机译:运营商网络中有许多专有电器。这些设备消耗了大量电力和充足的空间来部署,这导致运营商的高运费(OPEX)。介绍了网络功能虚拟化(NFV)以解决此问题。 NFV将许多网络设备整合到网络应用程序中,该应用程序可以在行业商品服务器上运行。这些设备与路由器不同,因为它们必须处理上述网络层的协议处理,并将套接字API提供给各种应用程序,这需要仅需要完整的协议栈支持而不是分组转发。不幸的是,尽管越来越高速带宽高达10Gbps或甚至40Gbps的商品多核服务器上,网络协议处理的瓶颈被识别,例如可以通过不通过内核的数量,或堆栈处理延迟扩展太长对于一些应用,在本文中,系统地分析了软件中堆叠性能(特别是性能可扩展性和堆栈过程等待时间)的原因。基于改进此类分析结果,我们提出堆栈池,这是多核服务器上的新型高性能可扩展网络架构。堆栈池由多个隔离的虚拟通道构成。每个虚拟通道包含一个独立的协议堆栈实例,NIC中的几对硬件队列,以及位于堆栈实例中的套接字实例。每个逻辑CPU核心负责在虚拟通道中处理数据包。在NIC和Lane选择器中的流程导演在堆栈池中的不同流量的直接数据包基于数据包标题的多个虚拟通道。我们已经实施了一个堆栈池原型,以表明该方法是有前途的。堆栈池优于标准Linux协议栈,其UDP的吞吐量大约为7倍,或者在单个虚拟通道中的TCP的3倍。此外,堆叠池性能在分别为UDP的6个核心上缩放到多个核心,例如,在6个UDP发送和接收的核心上,以及6个逻辑核心的6.5倍的TCP吞吐量。与此同时,堆栈池上的数据包延迟仅近1/4,而不是本机Linux堆栈。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号