System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于报文转发,尤其涉及一种基于dpdk的dsa报文转发加速方法。
技术介绍
1、dsa是指linux dsa(distributed switch architecture,分布式交换芯片架构),linux内核自带的一个交换芯片管理子系统,旨在使交换芯片可以通过标准的linux网络工具(如bridge、iproute2、ifconfig)直接进行配置和查询。
2、dpdk,是数据平面开发套件,是一种用户态的报文转发框架,提供了一种linux操作系统用户空间的网络设备驱动程序,这些驱动程序允许应用程序直接与网卡进行交互,绕过内核的网络协议栈,实现更快速和可定制的网络数据包处理。并且随着技术的发展dpdk被广泛应用于各种用户态上层软件部署。
3、现有技术中,交换芯片通过dsa框架接入内核,向用户空间提供网络接口,并使用常规的网卡物理接口作为数据通道;所有dsa接口数据报文必须经过物理主接口和内核协议栈,最终才能到达用户空间的应用程序。
4、然而,linux内核的网络协议栈是一个庞大的转发系统,性能方面存在天然的缺陷,具体的,对于需要对报文做高性能的分析处理的应用场景,现有方案存在较大的弊端,且现有dsa转发框架需要一个主接口,并且要求主接口必须是物理接口,这一限制也导致具备软件特性的虚拟接口无法融入与结合。因此,现有dsa具备网络配置高通用性、设备驱动高适应性、内核网络协议处理能力,但软件转发性能方面存在较大缺陷。
技术实现思路
1、本专利
2、为实现上述目的,本专利技术实施例提供如下技术方案:
3、一种基于dpdk的dsa报文转发加速方法,所述方法具体包括以下步骤:
4、进行dsa统一配置管理,提供配置同步接口,感知配置动作并进行配置处理;
5、通过交换芯片物理接口,进行报文收包,接收目标报文并传输;
6、提供报文特征库,基于所述报文特征库,对所述目标报文进行解析、查表和转发处理,得到处理报文;
7、将所述处理报文直接送到高性能应用处理队列,或者通过虚拟接口上送内核协议栈;
8、在dpdk部署多个高性能应用。
9、作为本专利技术实施例技术方案进一步的限定,所述通过dpdk对物理网卡进行驱动与管理,dpdk提供虚拟接口向内核通信具体包括以下步骤:
10、配置网络接口管理工具;
11、驱动物理交换芯片,对接linux操作系统的dsa协议栈框架,并记录同步dsa配置项,提供配置同步接口;
12、基于所述配置同步接口,实时感知所述网络接口管理工具的配置动作并进行配置处理。
13、作为本专利技术实施例技术方案进一步的限定,所述通过交换芯片物理接口,进行报文收包,接收目标报文并传输中,从物理网卡,采用dpdk的循环收包模型进行收包。
14、作为本专利技术实施例技术方案进一步的限定,所述提供报文特征库,基于所述报文特征库,对所述目标报文进行解析、查表和转发处理,得到处理报文具体包括以下步骤:
15、提供报文特征库,所述报文特征库中,包含多个特征集和对应的处理决策;
16、按照多个所述特征集和对应的处理决策,对所述目标报文进行解析、查表和转发处理,得到处理报文。
17、作为本专利技术实施例技术方案进一步的限定,多个所述处理决策包括:投递到高性能应用队列、投递到虚拟通道队列、投递回物理网卡、报文修改和报文丢弃。
18、作为本专利技术实施例技术方案进一步的限定,所述对所述目标报文进行解析中,根据多个所述特征集,解析所述目标报文的特征值,根据所述特征值匹配特征项,根据所述特征项匹配相应的处理决策。
19、作为本专利技术实施例技术方案进一步的限定,所述提供报文特征库,所述将所述处理报文直接送到高性能应用处理队列中,对所述处理报文进行分配、入队和/或出队处理。
20、作为本专利技术实施例技术方案进一步的限定,多个所述高性能应用包括防火墙应用和审计应用。
21、一种基于dpdk的dsa报文转发加速系统,所述系统包括统一配置管理单元、报文收包传输单元、报文解析查表转发单元、报文应用处理单元和应用dpdk部署单元,其中:
22、统一配置管理单元,用于进行dsa统一配置管理,提供配置同步接口,感知配置动作并进行配置处理;
23、报文收包传输单元,用于通过交换芯片物理接口,进行报文收包,接收目标报文并传输;
24、报文解析查表转发单元,用于提供报文特征库,基于所述报文特征库,对所述目标报文进行解析、查表和转发处理,得到处理报文;
25、报文应用处理单元,用于将所述处理报文直接送到高性能应用处理队列,或者通过虚拟接口上送内核协议栈;
26、应用dpdk部署单元,用于在dpdk部署多个高性能应用。
27、作为本专利技术实施例技术方案进一步的限定,所述统一配置管理单元具体包括:
28、工具配置模块,用于配置网络接口管理工具;
29、接口提供模块,用于驱动物理交换芯片,对接linux操作系统的dsa协议栈框架,并记录同步dsa配置项,提供配置同步接口;
30、配置处理模块,用于基于所述配置同步接口,实时感知所述网络接口管理工具的配置动作并进行配置处理。
31、与现有技术相比,本专利技术的有益效果是:
32、本专利技术实施例能够在dsa的报文转发路径上,可将需要高性能转发的应用部署到本框架下的dpdk中,实现高性能处理,少量需要网络协议处理的报文还可直接通过虚拟dsa通道上送内核协议栈,避免在dpdk进行大量的网络协议开发工作,交换芯片物理接口的dsa接口配置可实时同步到dpdk内,用户不需要感知dsa的底层转发差异,且dsa主接口由物理接口变成虚拟接口,物理接口层面可在dpdk内任意组合,因此dsa+dpdk的高性能转发框架可以在多种物理接口产品上快速部署。
本文档来自技高网...【技术保护点】
1.一种基于DPDK的DSA报文转发加速方法,其特征在于,所述方法具体包括以下步骤:
2.根据权利要求1所述的基于DPDK的DSA报文转发加速方法,其特征在于,所述通过DPDK对物理网卡进行驱动与管理,DPDK提供虚拟接口向内核通信具体包括以下步骤:
3.根据权利要求1所述的基于DPDK的DSA报文转发加速方法,其特征在于,所述通过交换芯片物理接口,进行报文收包,接收目标报文并传输中,从物理网卡,采用DPDK的循环收包模型进行收包。
4.根据权利要求1所述的基于DPDK的DSA报文转发加速方法,其特征在于,所述提供报文特征库,基于所述报文特征库,对所述目标报文进行解析、查表和转发处理,得到处理报文具体包括以下步骤:
5.根据权利要求4所述的基于DPDK的DSA报文转发加速方法,其特征在于,多个所述处理决策包括:投递到高性能应用队列、投递到虚拟通道队列、投递回物理网卡、报文修改和报文丢弃。
6.根据权利要求4所述的基于DPDK的DSA报文转发加速方法,其特征在于,所述对所述目标报文进行解析中,根据多个所述特征集,解析所述目
7.根据权利要求1所述的基于DPDK的DSA报文转发加速方法,其特征在于,所述提供报文特征库,所述将所述处理报文直接送到高性能应用处理队列中,对所述处理报文进行分配、入队和/或出队处理。
8.根据权利要求1所述的基于DPDK的DSA报文转发加速方法,其特征在于,多个所述高性能应用包括防火墙应用和审计应用。
...【技术特征摘要】
1.一种基于dpdk的dsa报文转发加速方法,其特征在于,所述方法具体包括以下步骤:
2.根据权利要求1所述的基于dpdk的dsa报文转发加速方法,其特征在于,所述通过dpdk对物理网卡进行驱动与管理,dpdk提供虚拟接口向内核通信具体包括以下步骤:
3.根据权利要求1所述的基于dpdk的dsa报文转发加速方法,其特征在于,所述通过交换芯片物理接口,进行报文收包,接收目标报文并传输中,从物理网卡,采用dpdk的循环收包模型进行收包。
4.根据权利要求1所述的基于dpdk的dsa报文转发加速方法,其特征在于,所述提供报文特征库,基于所述报文特征库,对所述目标报文进行解析、查表和转发处理,得到处理报文具体包括以下步骤:
5.根据权利要求4所述的基于d...
【专利技术属性】
技术研发人员:刘伟,姜先绪,魏自强,王超,
申请(专利权)人:深圳市楠菲微电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。