浏览全部资源
扫码关注微信
1. 中国科学院声学研究所国家网络新媒体工程技术研究中心,北京 100190
2. 中国科学院大学,北京 100049
[ "唐鑫新(1995- ),男,中国科学院大学博士生,主要研究方向为可编程数据平面、协议无关交换机、高性能数据包处理" ]
[ "曾学文(1968- ),男,博士,中国科学院声学研究所研究员,主要研究方向为网络安全、软件定义网络和多媒体通信" ]
[ "凌致远(1997- ),男,中国科学院大学博士生,主要研究方向为软件定义网络、协议无关交换机" ]
[ "宋磊(1986- ),男,博士,中国科学院声学研究所研究员,主要研究方向为可编程数据平面、信息安全" ]
网络出版日期:2023-04,
纸质出版日期:2023-04-20
移动端阅览
唐鑫新, 曾学文, 凌致远, 等. 可编程数据平面技术综述[J]. 电信科学, 2023,39(4):1-16.
Xinxin TANG, Xuewen ZENG, Zhiyuan LING, et al. Overview of programmable data plane technology[J]. Telecommunications science, 2023, 39(4): 1-16.
唐鑫新, 曾学文, 凌致远, 等. 可编程数据平面技术综述[J]. 电信科学, 2023,39(4):1-16. DOI: 10.11959/j.issn.1000-0801.2023093.
Xinxin TANG, Xuewen ZENG, Zhiyuan LING, et al. Overview of programmable data plane technology[J]. Telecommunications science, 2023, 39(4): 1-16. DOI: 10.11959/j.issn.1000-0801.2023093.
在软件定义网络中,可编程数据平面提供的编程能力是网络功能虚拟化的基石。可编程数据平面技术的核心是可编程能力与数据包处理性能。首先从数据平面的可编程性出发,探讨现有数据平面的数据包处理抽象。然后,分别对数据平面实施的目标平台与对应平台上的主要流表算法进行介绍,详细论述现有数据平面技术。最后,探讨了高性能数据平面技术存在的关键挑战。
In software defined network
the programmability provided by the programmable data plane is the cornerstone of network function virtualization.The core of programmable data plane technology is programmability and packet processing performance.Firstly
the packet processing abstraction of existing data planes from the programmability of data planes was explored.Then
the existing data plane related technologies were discussed in detail in terms of the target platforms and related algorithms for data plane implementation
respectively.Finally
the key challenges of high-performance data plane technologies were discussed.
HORPÁCSI D , LAKI S , VÖRÖS P , et al . Asynchronous extern functions in programmable software data planes [C ] // Proceedings of 2019 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS) . Piscataway:IEEE Press , 2019 : 1 - 2 .
GAO Y , WANG Z L . A review of P4 programmable data planes for network security [J ] . Mobile Information Systems , 2021 , 2021 : 1 - 24 .
BIFULCO R , RÉTVÁRI G . A survey on the programmable data plane:abstractions,architectures,and open problems [C ] // Proceedings of 2018 IEEE 19th International Conference on High Performance Switching and Routing (HPSR) . Piscataway:IEEE Press , 2019 : 1 - 7 .
MASOUDI R , GHAFFARI A . Software defined networks:a survey [J ] . Journal of Network and Computer Applications , 2016 ( 67 ): 1 - 25 .
DORIA A , SALIM J H , HAAS R , et al . Forwarding and control element separation (ForCES) protocol specification:RFC 5810 [R ] . 2010 .
WANG Z , TSOU T , HUANG J , et al . Analysis of comparisons between OpenFlow and ForCES:draft-wang-forces-compareopenflow-forces-01 [R ] . 2012 .
MCKEOWN N , ANDERSON T , BALAKRISHNAN H , et al . OpenFlow [J ] . ACM SIGCOMM Computer Communication Review , 2008 , 38 ( 2 ): 69 - 74 .
KANNAN P G , CHAN M C . On programmable networking evolution [J ] . CSI Transactions on ICT , 2020 , 8 ( 1 ): 69 - 76 .
BOSSHART P , DALY D , GIBB G , et al . P4 [J ] . ACM SIGCOMM Computer Communication Review , 2014 , 44 ( 3 ): 87 - 95 .
LI S R , HU D Y , FANG W J , et al . Protocol oblivious forwarding (POF):software-defined networking with enhanced programmability [J ] . IEEE Network , 2017 , 31 ( 2 ): 58 - 66 .
FEAMSTER N , REXFORD J , ZEGURA E . The road to SDN:an intellectual history of programmable networks [J ] . ACM SIGCOMM Computer Communication Review , 2014 , 44 ( 2 ): 87 - 98 .
FARHAD H , LEE H , NAKAO A . Data plane programmability in SDN [C ] // Proceedings of 2014 IEEE 22nd International Conference on Network Protocols . Piscataway:IEEE Press , 2014 : 583 - 588 .
ZILBERMAN N , WATTS P M , ROTSOS C , et al . Reconfigurable network systems and software-defined networking [J ] . Proceedings of the IEEE , 2015 , 103 ( 7 ): 1102 - 1124 .
STEVENS W P , MYERS G J , CONSTANTINE L L . Structured design [J ] . IBM Systems Journal , 1974 , 13 ( 2 ): 115 - 139 .
ABADI M , BARHAM P , CHEN J M , et al . TensorFlow:a system for large-scale machine learning [C ] // Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation . New York:ACM Press , 2016 : 265 - 283 .
KOHLER E , MORRIS R , CHEN B J , et al . The click modular router [J ] . ACM Transactions on Computer Systems , 2000 , 18 ( 3 ): 263 - 297 .
BARACH D , LINGUAGLOSSA L , MARION D , et al . Batched packet processing for high-speed software data plane functions [C ] // Proceedings of IEEE INFOCOM 2018 - IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS) . Piscataway:IEEE Press , 2018 : 1 - 2 .
MARTINS J , AHMED M , RAICIU C , et al . ClickOS and the art of network function virtualization [C ] // Proceedings of 11th USENIX Symposium on Networked Systems Design and Implementation . Berkeley:USENIX Association , 2014 : 459 - 473 .
BARBETTE T , SOLDANI C , MATHY L . Fast userspace packet processing [C ] // Proceedings of 2015 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS) . Piscataway:IEEE Press , 2015 : 5 - 16 .
HAN S J , JANG K , PANDA A , et al . SoftNIC:a software NIC to augment hardware [R ] . 2015 .
PANDA A , HAN S J , JANG K , et al . NetBricks:taking the V out of NFV [C ] // Proceedings of the 12th USENIX Conference on Operating Systems Design and Implementation . New York:ACM Press , 2016 : 203 - 216 .
HALPERN J , SALIM J H . Forwarding and control element separation (ForCES) forwarding element model [R ] . 2010 .
RAMIREZ P L G , LLORET J , CORDERO S M , et al . Design and implementation of ForCES protocol [J ] . Network Protocols and Algorithms , 2017 , 9 ( 1-2 ): 1 - 27 .
LAUFER R , GALLO M , PERINO D , et al . CliMB [J ] . ACM SIGCOMM Computer Communication Review , 2016 , 46 ( 4 ): 17 - 22 .
LI B J , TAN K , LUO L , et al . ClickNP:highly flexible and high performance network processing with reconfigurable hardware [C ] // Proceedings of the 2016 ACM SIGCOMM Conference . New York:ACM Press , 2016 : 1 - 14 .
JING L N , CHEN X , WANG J L . Design and implementation of programmable data plane supporting multiple data types [J ] . Electronics , 2021 , 10 ( 21 ): 2639 .
PFAFF B , PETTIT J , KOPONEN T , et al . The design and implementation of Open vSwitch [C ] // Proceedings of 12th USENIX Symposium on Networked Systems Design and Implementation . Berkeley:USENIX Association , 2015 : 117 - 130 .
SUN X Y , NG T S E , WANG G H . Software-defined flow table pipeline [C ] // Proceedings of 2015 IEEE International Conference on Cloud Engineering . Piscataway:IEEE Press , 2015 : 335 - 340 .
RÉTVÁRI G , MOLNÁR L , ENYEDI G , et al . Dynamic compilation and optimization of packet processing programs [Z ] . 2017 .
耿俊杰 , 颜金尧 . 基于可编程数据平面的网络体系架构综述 [J ] . 中国传媒大学学报(自然科学版) , 2019 , 26 ( 5 ): 38 - 43 .
GENG J J , YAN J Y . Overview of network architecture based on programmable data plane [J ] . Journal of Communication University of China (Science and Technology) , 2019 , 26 ( 5 ): 38 - 43 .
KOZANITIS C , HUBER J , SINGH S , et al . Leaping multiple headers in a single bound:wire-speed parsing using the kangaroo system [C ] // 2010 Proceedings IEEE INFOCOM . Piscataway:IEEE Press , 2010 : 1 - 9 .
LU G H , SHI Y F , GUO C X , et al . CAFE:a configurable packet forwarding engine for data center networks [C ] // Proceedings of the 2nd ACM SIGCOMM Workshop on Programmable Routers for Extensible Services of Tomorrow . New York:ACM Press , 2009 : 25 - 30 .
申涓 , 段通 , 兰巨龙 . 面向全可编程网络数据平面的资源优化方法 [J ] . 电子学报 , 2018 , 46 ( 10 ): 2423 - 2429 .
SHEN J , DUAN T , LAN J L . The resource optimization towards fully-programmable network dataplane [J ] . Acta Electronica Sinica , 2018 , 46 ( 10 ): 2423 - 2429 .
SONG H Y . Protocol-oblivious forwarding:unleash the power of SDN through a future-proof forwarding plane [C ] // Proceedings of the 2nd ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking . New York:ACM Press , 2013 : 127 - 132 .
YU J Z , WANG X Z , SONG J , et al . Forwarding programming in protocol-oblivious instruction set [C ] // Proceedings of 2014 IEEE 22nd International Conference on Network Protocols . Piscataway:IEEE Press , 2014 : 577 - 582 .
GUREVICH V . Programmable data plane at terabit speeds [Z ] . 2017 .
林耘森箫 , 毕军 , 周禹 , 等 . 基于 P4 的可编程数据平面研究及其应用 [J ] . 计算机学报 , 2019 , 42 ( 11 ): 2539 - 2560 .
LIN Y S X , BI J , ZHOU Y , et al . Research and applications of programmable data plane based on P4 [J ] . Chinese Journal of Computers , 2019 , 42 ( 11 ): 2539 - 2560 .
WANG H , SOULÉ R , DANG H T , et al . P4FPGA:a rapid prototyping framework for P4 [C ] // Proceedings of the Symposium on SDN Research . New York:ACM Press , 2017 : 122 - 135 .
BUDIU M H , DODD C . The P416 programming language [J ] . ACM SIGOPS Operating Systems Review , 2017 , 51 ( 1 ): 5 - 14 .
O’LOUGHLIN D , COFFEY A , CALLALY F , et al . Xilinx vivado high level synthesis:case studies [Z ] . 2014 .
KAUR S , KUMAR K , AGGARWAL N . A review on P4-programmable data planes:architecture,research efforts,and future directions [J ] . Computer Communications , 2021 ( 170 ): 109 - 129 .
ZILBERMAN N , AUDZEVICH Y , COVINGTON G A , et al . NetFPGA SUME:toward 100 Gbps as research commodity [J ] . IEEE Micro , 2014 , 34 ( 5 ): 32 - 41 .
CONSORTIUM P L . Behavioral model (BMv2) [EB ] . 2018 .
KALJIC E , MARIC A , NJEMCEVIC P , et al . A survey on data plane flexibility and programmability in software-defined networking [J ] . IEEE Access , 2019 ( 7 ): 47804 - 47840 .
SIVARAMAN A , CHEUNG A , BUDIU M H , et al . Packet transactions:high-level programming for line-rate switches [C ] // Proceedings of the 2016 ACM SIGCOMM Conference . New York:ACM Press , 2016 : 15 - 28 .
DUNCAN R , JUNGCK P . packetC language for high performance packet processing [C ] // Proceedings of the 2009 11th IEEE International Conference on High Performance Computing and Communications . New York:ACM Press , 2009 : 450 - 457 .
BREBNER G , JIANG W R . High-speed packet processing using reconfigurable computing [J ] . IEEE Micro , 2014 , 34 ( 1 ): 8 - 18 .
凌致远 , 陈晓 , 宋磊 . 基于匹配动作表模型的可编程数据平面流表归并 [J ] . 计算机与现代化 , 2022 ( 7 ): 74 - 78 , 84 .
LING Z Y , CHEN X , SONG L . Flow table merging on programmable data planes based on MAT model [J ] . Computer and Modernization , 2022 ( 7 ): 74 - 78 , 84 .
DOBRESCU M , ARGYRAKI K , RATNASAMY S . Toward predictable performance in software packet-processing platforms [C ] // Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation . New York:ACM Press , 2012 :11.
SHARMA N K , KAUFMANN A , ANDERSON T , et al . Evaluating the power of flexible packet processing for network resource allocation [C ] // Proceedings of the 14th USENIX Conference on Networked Systems Design and Implementation . New York:ACM Press , 2017 : 67 - 82 .
WANG W M , DONG L G , ZHUGE B , et al . Design and implementation of an open programmable router compliant to IETF ForCES specifications [C ] // Proceedings of Sixth International Conference on Networking (ICN’07) . Piscataway:IEEE Press , 2007 :82.
KATTA N , ALIPOURFARD O , REXFORD J , et al . CacheFlow:dependency-aware rule-caching for software-defined networks [C ] // Proceedings of the Symposium on SDN Research . New York:ACM Press , 2016 : 1 - 12 .
HAMADI S , SNAIKI I , CHERKAOUI O . Fast path acceleration for open vSwitch in overlay networks [C ] // Proceedings of 2014 Global Information Infrastructure and Networking Symposium (GIIS) . Piscataway:IEEE Press , 2014 : 1 - 5 .
HAN S J , JANG K , PARK K , et al . PacketShader:a GPU-accelerated software router [C ] // Proceedings of the ACM SIGCOMM 2010 Conference . New York:ACM Press , 2010 : 195 - 206 .
MOLNÁR L , PONGRÁCZ G , ENYEDI G , et al . Dataplane specialization for high-performance OpenFlow software switching [C ] // Proceedings of the 2016 ACM SIGCOMM Conference . New York:ACM Press , 2016 : 539 - 552 .
RIZZO L . Netmap:a novel framework for fast packet I/O [C ] // Proceedings of the 2012 USENIX Conference on Annual Technical Conference . Berkeley:USENIX Association , 2012 : 101 - 112 .
ZHU H Q . Data plane development kit (DPDK) [EB ] . 2020 .
FD . io - the universal dataplane [EB ] . 2022 .
HØILAND-JØRGENSEN T , BROUER J D , BORKMANN D , et al . The eXpress data path:fast programmable packet processing in the operating system kernel [C ] // Proceedings of the 14th International Conference on Emerging Networking Experiments and Technologies . New York:ACM Press , 2018 : 54 - 66 .
TANG X X , ZENG X W , SONG L . A forwarding latency optimization method for software data plane based on spin-polling [J ] . Applied Sciences , 2022 , 12 ( 17 ): 8758 .
SHANKAR D , LU X Y , PANDA D K D . SimdHT-bench:characterizing SIMD-aware hash table designs on emerging CPU architectures [C ] // Proceedings of 2019 IEEE International Symposium on Workload Characterization (IISWC) . Piscataway:IEEE Press , 2020 : 178 - 188 .
LING Z Y , CHEN X , SONG L . Flow processing optimization with accelerated flow actions on high speed programmable data plane [J ] . IEICE Transactions on Communications , 2023 , E106.B ( 2 ): 133 - 144 .
BOSSHART P , GIBB G , KIM H S , et al . Forwarding metamorphosis:fast programmable match-action processing in hardware for SDN [C ] // Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM . New York:ACM Press , 2013 : 99 - 110 .
VARGA P , KOVÁCS L , TÓTHFALUSI T . C-GEP:100 Gbit/s capable,FPGA-based,reconfigurable networking equipment [C ] // Proceedings of 2015 IEEE 16th International Conference on High Performance Switching and Routing (HPSR) . Piscataway:IEEE Press , 2016 : 1 - 6 .
FORENCICH A , SNOEREN A C , PORTER G , et al . Corundum:an open-source 100-Gbps NIC [C ] // Proceedings of 2020 IEEE 28th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM) . Piscataway:IEEE Press , 2020 : 38 - 46 .
SHA M , GUO Z C , GUO Y F , et al . A high-performance and flexible architecture for accelerating SDN on the MPSoC platform [J ] . Micromachines , 2022 , 13 ( 11 ): 1854 .
HUANG X Y , GUO Z C , SONG M G , et al . AccelSDP:a reconfigurable accelerator for software data plane based on FPGA SmartNIC [J ] . Electronics , 2021 , 10 ( 16 ): 1927 .
张昕怡 , 潘恒 , 谢高岗 . 可编程网络数据平面技术进展 [J ] . 电信科学 , 2022 , 38 ( 6 ): 42 - 50 .
ZHANG X Y , PAN H , XIE G G . Progress in programmable network data plane [J ] . Telecommunications Science , 2022 , 38 ( 6 ): 42 - 50 .
METREVELI Z , ZELDOVICH N , KAASHOEK M F . Cphash [J ] . ACM SIGPLAN Notices , 2012 , 47 ( 8 ): 319 - 320 .
PAGH R , RODLER F F . Cuckoo hashing [J ] . Journal of Algorithms , 2004 , 51 ( 2 ): 122 - 144 .
ZHOU D , FAN B , LIM H , et al . Scalable,high performance Ethernet forwarding with CuckooSwitch [C ] // Proceedings of the 9th ACM Conference on Emerging Networking Experiments and Technologies . New York:ACM Press , 2013 : 97 - 108 .
SHI S Q , QIAN C . Ludo hashing:compact,fast,and dynamic key-value lookups for practical network systems [J ] . Proceedings of the ACM on Measurement and Analysis of Computing Systems , 2020 , 4 ( 2 ): 1 - 32 .
PONTARELLI S , REVIRIEGO P , MAESTRO J A . Parallel d-pipeline:a cuckoo hashing implementation for increased throughput [J ] . IEEE Transactions on Computers , 2016 , 65 ( 1 ): 326 - 331 .
YANG Y , KUPPANNAGARI S R , SRIVASTAVA A , et al . FASTHash:FPGA-based high throughput parallel hash table [C ] // Proceedings of the 2020 International Conference on High Performance Computing . Cham:Springer , 2020 : 3 - 22 .
MICHEL O , BIFULCO R , RÉTVÁRI G , et al . The programmable data plane:abstractions,architectures,algorithms,and applications [J ] . ACM Computing Surveys , 2022 , 54 ( 4 ): 1 - 36 .
曾理 , 叶晓舟 , 王玲芳 . DPDK技术应用研究综述 [J ] . 网络新媒体技术 , 2020 , 9 ( 2 ): 1 - 8 .
ZENG L , YE X Z , WANG L F . Survey of research on DPDK technology application [J ] . Journal of Network New Media , 2020 , 9 ( 2 ): 1 - 8 .
IRFAN M , SANKA A I , ULLAH Z , et al . Reconfigurable content-addressable memory (CAM) on FPGAs:a tutorial and survey [J ] . Future Generation Computer Systems , 2022 ( 128 ): 451 - 465 .
ABDELHADI A M S , LEMIEUX G G F , SHANNON L . Modular block-RAM-based longest-prefix match ternary content-addressable memories [C ] // Proceedings of 2018 28th International Conference on Field Programmable Logic and Applications (FPL) . Piscataway:IEEE Press , 2018 : 243 - 2437 .
IRFAN M , YANTıR H E , ULLAH Z , et al . Comp-TCAM:an adaptable composite ternary content-addressable memory on FPGAs [J ] . IEEE Embedded Systems Letters , 2022 , 14 ( 2 ): 63 - 66 .
GUPTA P , MCKEOWN N . Packet classification on multiple fields [C ] // Proceedings of the Conference on Applications,Technologies,Architectures,and Protocols for Computer Communication - SIGCOMM’99 . New York:ACM Press , 1999 : 147 - 160 .
LAKSHMAN T V , STILIADIS D . High-speed policy-based packet forwarding using efficient multi-dimensional range matching [J ] . ACM SIGCOMM Computer Communication Review , 1998 , 28 ( 4 ): 203 - 214 .
BABOESCU F , VARGHESE G . Scalable packet classification [J ] . IEEE/ACM Transactions on Networking , 2005 , 13 ( 1 ): 2 - 14 .
SRINIVASAN V , SURI S , VARGHESE G . Packet classification using tuple space search [J ] . ACM SIGCOMM Computer Communication Review , 1999 , 29 ( 4 ): 135 - 146 .
YINGCHAREONTHAWORNCHAI S , DALY J , LIU A X , et al . A sorted-partitioning approach to fast and scalable dynamic packet classification [J ] . IEEE/ACM Transactions on Networking , 2018 , 26 ( 4 ): 1907 - 1920 .
GUPTA P , MCKEOWN N . Classifying packets with hierarchical intelligent cuttings [J ] . IEEE Micro , 2000 , 20 ( 1 ): 34 - 41 .
SINGH S , BABOESCU F , VARGHESE G , et al . Packet classification using multidimensional cutting [C ] // Proceedings of the 2003 Conference on Applications,Technologies,Architectures,and Protocols for Computer Communications . New York:ACM Press , 2003 : 213 - 224 .
VAMANAN B , VOSKUILEN G , VIJAYKUMAR T N . EffiCuts [J ] . ACM SIGCOMM Computer Communication Review , 2010 , 40 ( 4 ): 207 - 218 .
TANG X X , ZENG X W , SONG L . Accelerating protocol oblivious forwarding programmable data plane with flow cache [J ] . IEEE Transactions on Network and Service Management , 2023 , 20 ( 1 ): 578 - 594 .
ZHANG C , BI J , ZHOU Y , et al . B-cache:a behavior-level caching framework for the programmable data plane [C ] // Proceedings of 2018 IEEE Symposium on Computers and Communications (ISCC) . Piscataway:IEEE Press , 2018 : 84 - 90 .
YANG J L , LI T , YAN J L , et al . PipeCache:high hit rate rule-caching scheme based on multi-stage cache tables [J ] . Electronics , 2020 , 9 ( 6 ): 999 .
AHMED O , AREIBI S , FAYEK D . PCIU:an efficient packet classification algorithm with an incremental update capability [C ] // Proceedings of the 2010 International Symposium on Performance Evaluation of Computer and Telecommunication Systems (SPECTS’10) . Piscataway:IEEE Press , 2010 : 81 - 88 .
LI Y F , WANG J L , CHEN X , et al . ITOC:an improved trie-based algorithm for online packet classification [J ] . Applied Sciences , 2021 , 11 ( 18 ): 8693 .
BIFULCO R , MATSIUK A . Towards scalable SDN switches [J ] . ACM SIGCOMM Computer Communication Review , 2015 , 45 ( 4 ): 343 - 344 .
SHRIVASTAV V , . Stateful multi-pipelined programmable switches [C ] // Proceedings of the ACM SIGCOMM 2022 Conference . New York:ACM Press , 2022 : 663 - 676 .
KIM C , SIVARAMAN A , KATTA N , et al . In-band network telemetry via programmable dataplanes [C ] // Proceedings of the 2015 ACM Conference on SIGCOMM . New York:ACM Press , 2015 .
0
浏览量
684
下载量
0
CSCD
关联资源
相关文章
相关作者
相关机构