当前位置:网站首页>1、 Summary and introduction
1、 Summary and introduction
2022-06-23 19:08:00 【Bachuan Xiaoxiaosheng】
P4 Overview of data plane programming : Basics 、 Progress and applied research
A Survey on Data Plane Programming with P4: Fundamentals, Advances, and Applied Research
Abstract
Programmable data plane allows users to define their own data plane algorithms for network devices , Include appropriate data planes api (application programming interface), It can be used for user-defined software to define the network (SDN) control . This provides great flexibility for network customization , Whether it is used for special commercial equipment , Such as 5G Or data center network , Or rapid prototyping for industrial and academic research . Programming protocol independent packet processors (P4) It has become the most extensive data plane programming abstraction 、 Programming languages and concepts . It is developed and standardized by an open community , It is supported by various software and hardware platforms .
In the first part of this article , We give a programming model about data plane 、P4 programing language 、 Architecture 、 compiler 、 Target and data plane api A tutorial for . We are also considering efforts to promote P4 technology . In the second part , We will base a lot on p4 The applied research literature is classified into different research fields , Summarize the contributions of these papers , And extract the prototype 、 Target platform and source code availability . For each research area , We analyzed how to benefit from P4 The core feature of . Last , We discussed possible next steps based on our findings .
brief introduction
Router 、 Traditional network devices such as switches use data plane algorithm and control plane algorithm to process messages . You can configure control plane properties and protocols , For example, through cli、web Interface or management api, But the underlying algorithm can only be changed by the vendor .SDN Breaking this limit , Data plane programming breaks this limitation .
SDN By introducing API Make network devices programmable , The API Allows the user to bypass the built-in control plane algorithm , Replace them with custom algorithms . These algorithms are represented by software , It usually runs in a with an overall view of the network SDN On the controller . therefore , Complex control plane algorithms designed for distributed control can be replaced by simple algorithms designed for centralized control . This requires flexibility 、 Use cases for efficiency and security are beneficial , for example , Large scale data centers or 5G The Internet .
Data plane programmable , Users can implement their own data plane algorithm on the forwarding device . user , For example, programmers 、 A practitioner or operator , New protocol headers and forwarding behaviors can be defined , This is in the absence of a programmable data plane , Only suppliers can achieve . They can also contribute to SDN Control adding data planes api.
Data plane programming has changed the capabilities of users , Because they can build customized network devices , Not in performance 、 Scalability 、 Make any compromises in terms of speed or capabilities on the appropriate platform . There are different data plane programming models , Each model has many implementations and programming languages . for example Click [1]、VPP[2]、NPL[3] and SDNet[4]
Programming protocol independent packet processors (P4) It is the most extensive abstraction in data plane programming 、 Programming languages and concepts . It's on 2014 year [5] First published as a research paper , Currently in P4 Language Alliance (P4 Language Consortium) Develop and standardize , Supported by various target platforms based on software and hardware , It has been widely used in academia and industry .
Hereunder , We clarify the contribution of this survey , Point out its novelty , Explain its organization , And provide a table with acronyms often used in this work .
contribution
The survey pursues two goals . First , Yes P4 A comprehensive introduction and Overview . secondly , The survey is based on P4 Publications on Applied Research of technology . Its main contributions are as follows :
- We use it P4 Explain the evolution of data plane programming , Compare it with the previous development ( Such as SDN) Connect , And compare it with other data plane programming models .
- We gave an overview of data plane programming P4. It includes P4 programing language 、 Architecture 、 compiler 、 Target and data plane api. These parts include not only the foundation , It also introduces the related progress 、 Extension or experience .
- We summed up the promotion P4 Research results of data plane . It mainly includes development deployment optimization 、 Testing and debugging 、P4 Objective study 、 Control surface operation progress, etc .
- We think about it based on p4 Application Research of , A large number of literatures are analyzed . We will 245 The research papers are classified into different application fields , Summarize their key contributions , And from the prototype 、 They are described in terms of target platform and source code availability . For each research area , We analyzed how to benefit from P4 The core feature of .
We are thinking about P4 Published on 2020 Paper at the end of the year , And from 2021 Selected papers since . Besides periodicals 、 Conference and seminar papers , We also include from the standard 、 Content of websites and source code repositories . The paper has 519 References , among 377 This is a scientific publication :73 From 2017 Years ago ,66 From 2018 year ,113 From 2019 year ,116 From 2020 year ,9 From 2021 year .
novel
2014 year [6,7],2015 year [8,9,10],2016 year [11,12] Published a lot about SDN The investigation of ,2014 year [13,14,15] Published about OpenFlow (OF) The investigation of . Only one of them [12] It is mentioned in one sentence that P4.P4 Shortly after release , It was published 2015 Two data plane programming surveys since [10,9],2018 A conference paper in [16] and 2019 year [17] A survey of , take P4 As one of the other data plane programming languages . Again ,Michel wait forsomeone [18] A general overview of data plane programming is given ,P4 Is one of the other abstractions and programming languages studied . Our investigation is only aimed at P4. It covers more about P4 The details of the , And more based on P4 Applied research papers , Most of these studies have appeared in the last two years .
[19] Published a report on P4 The latest survey report on data plane programming . This paper introduces the design of data plane programming P4 Method , This paper reviews from four research fields 33 Research results , The research problems are also discussed . Another recent technical report [20] Reviewed the 7 In a research field 150 Research papers . although P4 The typical research fields of , But other areas ( Such as industrial network 、 Novel routing and forwarding scheme 、 Time sensitive networks ) Not included in the literature review .P4 Different aspects of , Such as programming language 、 Architecture 、 compiler 、 The goal is 、 Data plane api, And their progress are not discussed in this article . And right P4 Compared with the two surveys , We cover in more detail P4 Technology and its progress , Our literature review is also more comprehensive .
Paper organization
chart 1 The structure of this paper is described , This paper is divided into two main parts :P4 Survey of overview and research publications .
[ Failed to transfer the external chain picture , The origin station may have anti-theft chain mechanism , It is suggested to save the pictures and upload them directly (img-LTWAuWNa-1655969970187)(image-20220623111551213.png)]
In the first part , The first 2 Section describes network programmability . Describes how to SDN The development process from network to data plane programming , Two most commonly used data plane programming models are given . In the 3 In the festival , We've given an example based on P4 The latest version P416 Technology oriented tutorials for . We will introduce P4 programing language , And describe the P4 How the program works in P4 Compile and execute on the target . The first 4 Section describes as P4 The middle layer between the program and the target P4 Concept of Architecture . We detailed the four most common architectures , And describes P4 compiler . In the 5 In the festival , We categorized and introduced the implementation P4 The platform of the program , The so-called software based 、fpga、 Application specific integrated circuit or npu Of P4 The goal is . The first 6 Section describes the data plane api. We described their functions , A feature is given , Introduced as SDN The four main functions of the controller interface P4 Data plane api, The controller use case pattern . In the 7 In the festival , We have concluded that the aim is to improve P4 Research results of data plane programming .
The second part of the thesis gives an overview based on p4 Research on communication network application based on . In the 8 In the festival , We are right. P4 The core features of , These characteristics make the implementation of data plane algorithm attractive . We will use these attributes in later chapters to effectively infer the implementation of various prototypes P4 Value . We give an overview of this research area , The collected publications are counted . Its superior research areas include monitoring ( The first 9 section )、 Traffic management and congestion control ( The first 10 section )、 Routing and forwarding ( The first 11 section )、 Advanced network ( The first 12 section )、 Network security ( The first 13 section ) And miscellaneous ( The first 14 section ), To cover other different topics . Each category contains a table , For a quick overview of what is being analyzed about the prototype implementation 、 Target platform and source code availability . At the end of each section , We will analyse how the work under review has benefited from P4 The core feature of
In the 15 In the festival , We discussed the insights from this survey , And the prospect of the potential next step is given . The first 16 Section ends the work .
List of abbreviations
The following acronyms are used in this article
ACL Access control list
ALU Arithmetic logic unit
API Application programming interface
AQM Active queue management
ASIC ASIC
AWW Adjust the broadcast window
bmv2 Behavioral model version 2
BGP Border gateway protocol
BPF Berkeley bag filter
CLI Command line interface
DAG Directed acyclic graph
DDoS Distributed denial of service
DPI Deep packet detection
DPDK Data plane development kit
Domain specific language eBPF Extended Berkeley packet filter
ECN Explicit congestion notification
FPGA Field programmable gate array
FSM Finite state machine
GTP GPRS Tunnel protocol
HDL Hardware description language
HLIR Senior and intermediate representatives
IDE Integrated development environment
IDL Intention defines language
IDS intrusion detection system
INT In band network telemetry
LDWG Language design working group
LPM longest-prefix matching
LUT Lookup table
MAT match-action- surface
ML machine learning
NDN Named data network
NF Network function
NFP Network flow processing
NFV Virtualization of network functions
NIC Network interface card
NPU Network processing unit
ODM Original design manufacturer
ODP Open data plane
OEM Original equipment manufacturing
边栏推荐
- qgis导入WMS OR WMTS
- [one by one series] identityserver4 (III) user name and password
- 杰理之无缝循环播放【篇】
- 学习编程只需要这三条建议!
- Comparison and evaluation of digicert and globalsign single domain ov SSL certificates
- Product design - Requirements Analysis
- 用户分析-AARRR模型(海盗模型)
- 杰理之添加定时器中断【篇】
- Programmable data plane (paper reading)
- Taolue biology rushes to the scientific innovation board: the actual controllers with annual losses of more than 100 million are Zhang Dawei and his wife, who are American nationals
猜你喜欢

Take out Jianghu will change, and meituan "big brother" is hard to be

Product design - Requirements Analysis

Principles of microcomputer Chapter VIII notes arrangement

Basic knowledge of penetration test

Yaxiang spice listed on Shenzhen Stock Exchange: with a market value of 4billion, Dinglong Bohui and Yongyao investment are shareholders

Task management of embedded development foundation (thread management)

How long do you need to prepare for the PMP Exam?

pmp考试需要备考多长时间?

halcon知识:区域(Region)上的轮廓算子(1)

Borui data attends Alibaba cloud observable technology summit, and digital experience management drives sustainable development
随机推荐
诺亚财富通过聆讯:年营收43亿 汪静波有49%投票权,红杉是股东
微机原理第六章笔记整理
(10) Binary tree
sed replace \tPrintf to \t//Printf
企业如何做好业务监控?
Shengke communication IPO meeting: annual revenue of 460million China Zhenhua and industry fund are shareholders
Dataease template market officially released
云安全日报220623:红帽数据库管理系统发现执行任意代码漏洞,需要尽快升级
NetCF总结
Shunted self attention | vit method for solving small target problems, which is derived from PVT and higher than PVT
Uniswap创始人:不会为Genie发行独立代币,Genie产品将集成至Uniswap界面
NLP 论文领读|改善意图识别的语义表示:有监督预训练中的各向同性正则化方法
golang set type implementation
Une fois que le port série de Jerry est réglé, le Code aléatoire est imprimé, et le cristal interne n'est pas étalonné [chapitre]
CV fully connected neural network
Requirements and precautions for applying for multi domain SSL certificate
Basic knowledge of assembly language (1)
杰理之添加定时器中断【篇】
[one by one series] identityserver4 (III) user name and password
Borui data attends Alibaba cloud observable technology summit, and digital experience management drives sustainable development