Network Processing Development Kit Based on Self-Described Buffer
Author:
Affiliation:

Fund Project:

National High-Tech R&D Program of China (863) (2015AA010201); National Natural Science Foundation of China (61202483, 61202485)

  • Article
  • | |
  • Metrics
  • |
  • Reference [9]
  • |
  • Related
  • | | |
  • Comments
    Abstract:

    Incremental performance gain, especially in terms of higher I/O bandwidth and more complex packet processing capability, has made general purpose and multicore processors a preferable option building network devices in core networks, which brings unprecedented flexibility and universality into forwarding plane. However, challenges still exist because of lagging processing and forwarding performance. Firstly, with network link rate continuing booming, the multicore processor needs to offer corresponding higher processing throughput. Secondly, the increasing complexity of network services and applications will introduce more packet processing overhead inside network devices in forwarding and processing processes, indirectly resulting in higher requirements on pure I/O capabilities. Self-Described Buffer (SDB) is a hardware-based buffer management mechanism proposed in this paper which features low overhead in hardware and high performance in software. Furthermore, NPDK, a general network processing development environment has been designed and built based on SDB. It adopts zero interrupt and zero copy technology, provides kernel space and user space drivers and can be applied for general purposes and multicore systems. NPDK is not only easy to implement, flexible to program, feasible to deploy, but it also supports per-CPU-based hierarchical packet processing programmability in the kernel space, as well as monopolistic multi-threaded and shared multi-process programming in the user space. Experimental results show that NPDK can reach near line rate forwarding under 10Gbps link rate. Specifically 7.49Gbps for 64 Bytes packets. Currently NPDK has already been deployed and applied in Click routers, OpenFlow switches and network probing applications.

    Reference
    [1] Kohler E, Morris R, Chen BJ, Jannotti J, Kaashoek MF. The click modular router. In:Proc. of the ACM Symp. on Operating Systems Principles (SOSP). 1999. 217-231.
    [2] Koponen T, Amidon K, Balland P, Casado M, Chanda A, Fulton B, Ganichev I, Gross J, Gude N, Ingram P, Jackson E, Lambeth A, Lenglet R, Li SH, Padmanabhan A, Pettit J, Pfaff B, Ramanathan R, Shenker S, Shieh A, Stribling J, Thakkar P, Wendlandt D, Yip A, Zhang RH. Network virtualization in multi-tenant datacenters. In:Proc. of the 11th USENIX Symp. on Networked Systems Design and Implementation (NSDI). 2014. 203-214.
    [3] Rizzo L. Netmap:A novel framework for fast packet I/O. In:Proc. of the USENIX Annual Technical Conf. 2012. 101-112.
    [4] Han SJ, Jang K, Park KS, Moon S. Packet shader:A GPU-accelerated software router. In:Proc. of the ACM SIGCOMM. 2010. 195-206
    [5] Liao G, Znu X, Bnuyan L. A new server I/O architecture for high speed networks. In:Proc. of IEEE the 17th Int'l Symp. on High Performance Computer Architecture (HPCA). 2011. 255-265.
    [6] Intel. Intel data plane development kit (Intel DPDK). http://www.dpdk.org
    [7] Tang L, Sun ZG, Li T. Self-Described buffer management method for software high-speed packet. In:Proc. of the High Performance Computing. 2014(in Chinese with English abstract).
    附中文参考文献:
    [7] 唐路,孙志刚,李韬.面向高速软件分组转发的自描述缓冲区管理技术.见:2014全国高性能计算学术年会论文集.2014.
    Related
    Cited by
    Comments
    Comments
    分享到微博
    Submit
Get Citation

唐路,徐东来,吕高锋,李韬,孙志刚.基于自描述缓冲区的网络处理开发环境.软件学报,2016,27(S2):25-34

Copy
Share
Article Metrics
  • Abstract:
  • PDF:
  • HTML:
  • Cited by:
History
  • Received:May 31,2015
  • Revised:January 05,2016
  • Online: January 10,2017
You are the first2038300Visitors
Copyright: Institute of Software, Chinese Academy of Sciences Beijing ICP No. 05046678-4
Address:4# South Fourth Street, Zhong Guan Cun, Beijing 100190,Postal Code:100190
Phone:010-62562563 Fax:010-62562533 Email:jos@iscas.ac.cn
Technical Support:Beijing Qinyun Technology Development Co., Ltd.

Beijing Public Network Security No. 11040202500063