CN115623535B - 一种在智能网卡/dpu内实现基于p4部署5gupf的方法 - Google Patents
一种在智能网卡/dpu内实现基于p4部署5gupf的方法 Download PDFInfo
- Publication number
- CN115623535B CN115623535B CN202211388155.8A CN202211388155A CN115623535B CN 115623535 B CN115623535 B CN 115623535B CN 202211388155 A CN202211388155 A CN 202211388155A CN 115623535 B CN115623535 B CN 115623535B
- Authority
- CN
- China
- Prior art keywords
- upf
- data plane
- user plane
- dpu
- network card
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出了一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,在P4可编程的数据平面的基础上,通过增加P4可编程数据平面的模块,把5G UPF用户面功能做为基于P4的应用映射到P4的数据平面中,这样可以实现P4与5G UPF数据平面的资源复用,节省最多46.08%的逻辑资源,同时可以实现智能网卡DPU对5G UPF用户面功能的快速卸载以加速5G核心网软件的性能。
Description
技术领域
本发明涉及5G UPF技术领域,特别涉及一种在智能网卡/DPU内实现基于P4部署5GUPF的方法。
背景技术
通过P4语言,可以实现网络数据平面的可编程化,用户可以更灵活的对数据平面进行编程。5G UPF(User Plane Function)用户面功能是3GPP 5G 核心网系统架构的重要组成部分,主要负责在5G核心网内,用户面数据包的路由和转发等相关功能。 相对过去4G,5G在面向多用户场景下,对时延,带宽,可靠性有不同的需求,而UPF 在5G面向低时延、大带宽的边缘计算和网络切片技术上发挥着举足轻重的作用,针对核心网中高带宽转发能力的要求,目前通常通过扩展计算资源规模,用多核处理器的方式来分担对转发能力的需求,或者采用智能网卡/DPU(Data Processing Unit)来实现转发能力的提升。
基于服务器及软件的5G UPF用户面功能,需要多核处理器的参与,消耗大量CPU资源并且在收发性能上存在瓶颈。使用智能网卡/DPU来实现5G UPF用户面功能的卸载可以加速5G核心网软件的性能,提高吞吐量,同时还可以用业界标准的APIs接口来保持配置的标准化。但是,在智能网卡/DPU内实现5G UPF的数据平面需要硬件逻辑的实现,需要巨大的工作量,并且会占用智能网卡/DPU的大量逻辑资源。
如图1, P4模块内所示,根据P4 数据平面的标准及智能网卡/DPU的需求,整个P4可编程数据平面由解析报文模块,多级匹配和动作模块,及重组报文模块组成。其中多级匹配模块实现了多级查找匹配,每级分别包括基于哈希运算的完全匹配和基于三态内容寻址存储器的模糊匹配组成。
5G UPF用户面功能如图2所示,5G UPF用户面主要功能可以分解为流处理包括流解析、流匹配,流速控制,DSCP (Differentiated Services Code Point)不同服务标记码,NAT(Network Address Translation)网络地址转换及流镜像。
基于图1和图2,5G UPF用户面功能不能直接下发到基于P4的数据平面中,因为1.需要智能网卡/DPU内的P4数据平面的Metadata(元数据)新增并支持基于5G UPF用户面的随流数据2. P4数据平面不支持流速控制,不能实现5G UPF用户面所必须的功能。
发明内容
本发明的目的在于提供一种在智能网卡/DPU内实现基于P4部署5G UPF的方法,以克服现有技术中的不足。
为实现上述目的,本发明提供如下技术方案:
本申请公开了一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,具体包括如下步骤:
S1、根据5G UPF用户面的功能需求的数量,确定P4数据平面的程序编写;
S2、将5G UPF用户面的流管理映射到P4数据平面的报文解析及匹配模块上,所述流管理包括流解析和流匹配;
S3、将5G UPF用户面的服务标记码添加到P4数据平面的元数据Metadata对应的寄存器中;
S4、按照5G UPF用户面的其余功能需求对P4数据平面的每一层级的匹配动作分别进行映射及设置;
S5、当报文进入智能网卡/DPU,对报文进行解析;按照报文的所需的5G UPF用户面的功能需求在P4数据平面内进行处理,对处理后的报文进行重组。
作为优选,步骤S1具体操作如下:在P4数据平面中增加5G UPF映射模块,所述5GUPF映射模块按照5G UPF用户面的功能动作的需求数量,确定P4数据平面内所需匹配动作的层级数量。
作为优选,步骤S2具体操作如下:在P4数据平面中增加5G UPF功能映射模块,通过5G UPF功能映射模块将5G UPF用户面的流管理映射到P4数据平面的报文解析及匹配模块上。
作为优选,步骤S4中所述5G UPF功能映射模块按照5G UPF用户面的其余功能需求对P4数据平面的每一层级的匹配动作分别进行映射及设置。
作为优选,步骤S4中其余功能需求包括网络地址转换、流镜像、流速控制。
作为优选,步骤S4中包括如下操作:在P4数据平面中增加用于支持流速控制的缓存及定时发包模块;在元数据Metadata中增加流速控制标志位。
作为优选,步骤S5通过数据Metadata中的流速控制标志位,判断是否需要进行流速控制的处理。
本发明的有益效果:
本发明在P4可编程的数据平面的基础上,通过增加P4可编程数据平面的模块,把5G UPF用户面功能做为基于P4的应用映射到P4的数据平面中,这样可以实现P4及5G UPF数据平面的资源复用,可以节省最多46.08%的逻辑资源,同时可以实现智能网卡/DPU对5GUPF用户面功能的快速卸载以加速5G核心网软件的性能。
本发明的特征及优点将通过实施例结合附图进行详细说明。
附图说明
图1是智能网卡/DPU的数据平面的示意图;
图2是5G UPF用户面功能的示意图;
图3是本发明5G UPF功能到P4可编程数据平面的映射的示意图;
图4是本发明的一种在智能网卡/DPU内实现基于P4部署5G UPF的方法。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面通过附图及实施例,对本发明进行进一步详细说明。但是应该理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
参阅图4,本发明一种在智能网卡/DPU内用P4部署5G UPF的方法,具体包括如下步骤:
S1、根据5G UPF用户面的功能需求的数量,确定P4数据平面的程序编写;
S2、将5G UPF用户面的流管理映射到P4数据平面的报文解析及匹配模块上,所述流管理包括流解析和流匹配;
S3、将5G UPF用户面的服务标记码添加到P4数据平面的元数据Metadata对应的寄存器中;
S4、按照5G UPF用户面的其余功能需求对P4数据平面的每一层级的匹配动作分别进行映射及设置;
S5、当报文进入智能网卡/DPU,对报文进行解析;按照报文的所需的5G UPF用户面的功能需求在P4数据平面内进行处理,对处理后的报文进行重组。
在一种可行的实施例中,步骤S1具体操作如下:在P4数据平面中增加5G UPF映射模块,所述5G UPF映射模块按照5G UPF用户面的功能动作的需求数量,确定P4数据平面内所需匹配动作的层级数量。
在一种可行的实施例中,步骤S2具体操作如下:在P4数据平面中增加5G UPF功能映射模块,通过5G UPF功能映射模块将5G UPF用户面的流管理映射到P4数据平面的报文解析及匹配模块上。
在一种可行的实施例中,步骤S4中所述5G UPF功能映射模块按照5G UPF用户面的其余功能需求对P4数据平面的每一层级的匹配动作分别进行映射及设置。
在一种可行的实施例中,步骤S4中其余功能需求包括网络地址转换、流镜像、流速控制。
在一种可行的实施例中,步骤S4中包括如下操作:在P4数据平面中增加用于支持流速控制的缓存及定时发包模块;在元数据Metadata中增加流速控制标志位。
步骤S5通过数据Metadata中的流速控制标志位,判断是否需要进行流速控制的处理。
参阅图3,本发明为了可以满足5G UPF用户面在智能网卡/DPU内借用P4数据平面来部署,在实现P4数据平面时为解决上述两个问题,增加设置了支持5G UPF用户面DSCP服务标记码的Metadata,以解决DSCP服务标记码需要随报文流流动的问题;同时增加了5GUPF功能映射模块以及支持流速控制的动作模块,由于P4动作模块需要与P4语言相匹配,因此借助P4 动作模块中原有的meter模块,扩展现有meter功能,增加缓存及定时发包模块以支持流速控制,同时为了meter模块也可以用做原有功能,增加Metadata中流速控制标志位,来告知meter模块是否需要支持流速控制。当应用为5G UPF用户面卸载时,首先根据5GUPF用户面所要实现的功能,确定P4数据平面,比如有几个需要动作的功能就要设置P4数据平面几个层级的匹配动作流水线做为5G UPF用户面流水线,其余级匹配动作流水线仍作为P4数据平面给其他应用使用;然后把5G UPF用户面需要随报文流流动的服务标记码添加到Metadata对应的寄存器中;把5G UPF的不同功能对应不同层级的匹配动作流水线中,比如NAT,流镜像,流速控制等都可以对应到对应的匹配规则及动作中,其中流速控制模块为本发明新增的模块。这样可以基于P4的数据平面实现5G UPF用户面功能的卸载。
根据此发明的在智能网卡/DPU内实现方式及流程如下:
在基于P4数据平面的智能网卡/DPU内,根据5G UPF用户面需要实现的功能进行P4程序的编写,以实现可以搭载5G UPF用户面的P4可编程数据平面。例如需要支持NAT,DSCP标记,流镜像,流速控制功能。编写P4程序,设置Metadata为DSCP标记,同时实现三级匹配及动作以满足NAT,流镜像,流速控制功能的映射需求。P4输入文件则按照5G UPF用户面功能的定义,需要调用的动作模块有no_op, drop, modify_field, count, meter, clone_ingress_pkt_to_egress 等
按照5G UPF用户面所要实现的功能,首先进行P4数据平面的Metadata设置。例如报文DSCP标记功能需设置Metadata,如果匹配目的地址为192.168.0.1的报文DSCP值为1,则设置Metadata的DSCP为1,Metadata随报文一起流动。
其次,按照5G UPF用户面功能进行匹配及P4流水线数据平面的第一级设置。例如报文NAT功能映射到P4动作模块的修改IP地址动作,如果流入报文目的IP地址为192.168.0.2,修改为192.168.1.2。
然后,按照5G UPF用户面功能进行匹配及P4模块的第二级设置。例如报文流镜像功能需设置P4动作模块为镜像匹配。如果目的地址为192.168.0.3的报文做镜像至2,3队列,即复制192.168.0.3的报文至2,3队列。
之后,按照5G UPF用户面功能进行匹配及P4模块的第三级设置。例如报文流速控制功能需设置P4动作模块为新增的流速控制模块。如果匹配目的地址为192.168.0.4的报文流速控制在2Gbps,则在随192.168.0.4的报文流的Metadata中设置流速控制标志位为1,通过P4的Meter动作时,由于Metadata中流速控制标志位为1,因此P4的Meter动作为流量控制,调用流量控制模块实现控制192.168.0.4的报文流速在2Gbps。
最后,如果还有其他5G UPF用户面功能进行匹配则进行其他匹配,如果没有,则完成P4配置,并按照相应配置处理流入的报文。
参阅下表,以实现三级P4数据平面,每级1K匹配为例,所占用资源如表中所示。其中5G UPF占用逻辑资源在使用本发明中的映射方式后可以完全释放,因此映射后可以节省大约40%的逻辑资源。
逻辑资源 | P4占用个数 | 5G UPF占用个数 | 映射后节省 |
LUT 查找表 | 157050 | 134232 | 46.08% |
FF 寄存器 | 38930 | 26380 | 40.50% |
BRAM 存储器 | 372 | 302 | 44.81% |
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换或改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于,具体包括如下步骤:
S1、根据5G UPF用户面的功能动作的需求数量,确定P4数据平面内所需匹配动作的层级数量;
S2、将5G UPF用户面的流管理映射到P4数据平面的报文解析及匹配模块上,所述流管理包括流解析和流匹配;
S3、将5G UPF用户面的服务标记码添加到P4数据平面的元数据Metadata对应的寄存器中;
S4、按照5G UPF用户面的其余功能需求对P4数据平面的每一层级的匹配动作分别进行映射及设置;
S5、当报文进入智能网卡/DPU,对报文进行解析;按照报文的所需的5G UPF用户面的功能需求在P4数据平面内进行处理,对处理后的报文进行重组。
2.如权利要求1所述的一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于,步骤S1具体操作如下:在P4数据平面中增加5G UPF映射模块,所述5G UPF映射模块按照5G UPF用户面的功能动作的需求数量,确定P4数据平面内所需匹配动作的层级数量。
3.如权利要求1所述的一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于,步骤S2具体操作如下:在P4数据平面中增加5G UPF功能映射模块,通过5G UPF功能映射模块将5G UPF用户面的流管理映射到P4数据平面的报文解析及匹配模块上。
4.如权利要求3所述的一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于,步骤S4中所述5G UPF功能映射模块按照5G UPF用户面的其余功能需求对P4数据平面的每一层级的匹配动作分别进行映射及设置。
5.如权利要求1所述的一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于,步骤S4中其余功能需求包括网络地址转换、流镜像、流速控制。
6.如权利要求5所述的一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于,步骤S4中包括如下操作:在P4数据平面中增加用于支持流速控制的缓存及定时发包模块;在元数据Metadata中增加流速控制标志位。
7.如权利要求6所述的一种在智能网卡/DPU内实现基于P4部署5GUPF的方法,其特征在于:步骤S5通过数据Metadata中的流速控制标志位,判断是否需要进行流速控制的处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211388155.8A CN115623535B (zh) | 2022-11-08 | 2022-11-08 | 一种在智能网卡/dpu内实现基于p4部署5gupf的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211388155.8A CN115623535B (zh) | 2022-11-08 | 2022-11-08 | 一种在智能网卡/dpu内实现基于p4部署5gupf的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115623535A CN115623535A (zh) | 2023-01-17 |
CN115623535B true CN115623535B (zh) | 2023-03-10 |
Family
ID=84879364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211388155.8A Active CN115623535B (zh) | 2022-11-08 | 2022-11-08 | 一种在智能网卡/dpu内实现基于p4部署5gupf的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115623535B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10511669B2 (en) * | 2018-04-26 | 2019-12-17 | Verizon Patent And Licensing Inc. | Programmable user plane function |
US10992968B2 (en) * | 2019-07-15 | 2021-04-27 | At&T Intellectual Property I, L.P. | Method and apparatus for an enhanced data pipeline |
PL3820117T3 (pl) * | 2019-11-08 | 2022-04-04 | Deutsche Telekom Ag | Implementacja rozproszonej upf dla sieci 5g |
EP3860048A1 (en) * | 2020-01-31 | 2021-08-04 | InterDigital CE Patent Holdings | Method for instantiating a network service and corresponding apparatus |
US11431621B2 (en) * | 2020-07-15 | 2022-08-30 | Verizon Patent And Licensing Inc. | Systems and methods for user plane function (“UPF”) offload at configurable routing fabric |
CN113806403B (zh) * | 2021-09-22 | 2022-03-15 | 浙江锐文科技有限公司 | 一种在智能网卡/dpu内降低查找匹配逻辑资源的方法 |
CN113986560B (zh) * | 2021-12-27 | 2022-03-25 | 浙江锐文科技有限公司 | 一种在智能网卡/DPU内实现P4与OvS逻辑复用的方法 |
-
2022
- 2022-11-08 CN CN202211388155.8A patent/CN115623535B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115623535A (zh) | 2023-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114189571B (zh) | 用于实施加速网络分组处理的装置和方法 | |
CN108768866B (zh) | 组播报文跨卡转发方法、装置、网络设备及可读存储介质 | |
CN102377640B (zh) | 一种报文处理装置和报文处理方法、及预处理器 | |
US20100083259A1 (en) | Directing data units to a core supporting tasks | |
US20190044889A1 (en) | Coalescing small payloads | |
US20150304124A1 (en) | Message Processing Method and Device | |
CN110809048B (zh) | 一种数据中转方法、装置和计算机可读存储介质 | |
CN114285781B (zh) | Srv6业务流量统计方法、装置、电子设备及介质 | |
CN105282057B (zh) | 流表更新方法、控制器及流表分析设备 | |
CN105681426A (zh) | 异构系统 | |
CN113986560B (zh) | 一种在智能网卡/DPU内实现P4与OvS逻辑复用的方法 | |
Gao et al. | OVS-CAB: Efficient rule-caching for Open vSwitch hardware offloading | |
US20210176302A1 (en) | Apparatus and method for establishing connection and clat aware affinity (caa)-based scheduling in multi-core processor | |
CN115623535B (zh) | 一种在智能网卡/dpu内实现基于p4部署5gupf的方法 | |
CN110737678B (zh) | 一种数据查找方法、装置、设备和存储介质 | |
CN114079634A (zh) | 一种报文转发方法、装置及计算机可读存储介质 | |
CN115499889B (zh) | 基于vpp的upf转发面实现方法、装置、系统及相关设备 | |
CN114189368B (zh) | 一种多推理引擎兼容的实时流量检测系统和方法 | |
CN109845199B (zh) | 合并网络设备架构中的读取请求 | |
US7725886B2 (en) | Merger of tables storing protocol data unit related data | |
CN106603426A (zh) | 报文丢弃方法及装置 | |
JP2020088517A (ja) | 通信装置、通信装置の制御方法およびプログラム | |
CN109302353B (zh) | 一种分配报文缓存空间的方法及装置 | |
CN114338529A (zh) | 五元组规则匹配方法及装置 | |
US20070061808A1 (en) | Scheduler for a network processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |