一种基于PowerPC硬件架构的网络数据包过滤方法

文档序号:7812217阅读:867来源:国知局
一种基于PowerPC硬件架构的网络数据包过滤方法
【专利摘要】本发明公开了一种基于PowerPC硬件架构的网络数据包过滤方法,属于网络数据包过滤【技术领域】,本发明要解决目前在内核空间进行数据包过滤所带来的效率差、容易导致系统崩溃、过滤策略不方便加载、不便于调试一系列问题。技术方案为:PowerPC硬件架构采用PowerPC多核网络处理器,PowerPC多核网络处理器采用DPAA技术,包括如下步骤:在操作系统用户空间获取网络数据包;根据过滤匹配列表对网络数据包进行过滤处理;管理用户能够通过过滤规则配置模块对过滤匹配列表内容进行配置修改,保证过滤匹配内容的及时性。
【专利说明】—种基于PowerPC硬件架构的网络数据包过滤方法

【技术领域】
[0001]本发明涉及一种网络数据包过滤【技术领域】,具体地说是一种基于PowerPC硬件架构的网络数据包过滤方法。

【背景技术】
[0002]PowerPC是一种RISC架构的CPU,PowerPC处理器有非常强的嵌入式表现,因为它具有优异的性能、较低的能量损耗以及较低的散热量。PowerPC处理器有32个(32位或64位)GPR (通用寄存器)以及诸如PC (程序计数器,也称为IAR /指令地址寄存器或NIP /下一指令指针)、LR (链接寄存器)、CR (条件寄存器)等各种其它寄存器,还有32个64位FPR (浮点寄存器)。
[0003]传统的网络数据包过滤方法大都采用在操作系统内核态收发网络数据包的模式,然后交给内核协议栈进行过滤处理。这种处理方式由于在内核空间进行,存在效率差、容易导致系统崩溃、过滤策略不方便加载、不便于调试等一系列问题。


【发明内容】

[0004]本发明的技术任务是针对以上不足之处,提供一种解决目前在内核空间进行数据包过滤所带来的效率差、容易导致系统崩溃、过滤策略不方便加载、不便于调试一系列问题的一种基于PowerPC硬件架构的网络数据包过滤方法。
[0005]本发明解决其技术问题所采用的技术方案是:
一种基于PowerPC硬件架构的网络数据包过滤方法,PowerPC硬件架构采用PowerPC多核网络处理器,PowerPC多核网络处理器采用DPAA技术,包括如下步骤:
步骤一、在操作系统用户空间获取网络数据包;
步骤二、根据过滤匹配列表对网络数据包进行过滤处理;
步骤三、管理用户能够通过过滤规则配置模块对过滤匹配列表内容进行配置修改,保证过滤匹配内容的及时有效性。
[0006]步骤一具体包括如下步骤:
(1)、对操作系统进行配置,使PowerPC的数据通道加速架构DPAA能够正常工作;
(2)、申请一大块物理地址连续的内存用于用户空间USDPAA收发网络数据包,并且通过mmap映射到用户空间,实现零拷贝,保证在用户空间快速高效获取网络数据包。
[0007]步骤二具体包括如下步骤:
(I )、将网络数据包交由过滤规则匹配模块进行判断;
(2)、过滤规则匹配模块将网络数据包与自身所存储的过滤匹配列表内容进行匹配,并将匹配结果和匹配策略通知数据过滤模块;
(3)、数据过滤模块根据匹配结果和匹配策略来决定网络数据包是否通过,并且记录相关日志信息。
[0008]PowerPC硬件架构米用飞思卡尔公司推出的PowerPC多核网络处理器。飞思卡尔公司推出的一系列PowerPC多核网络处理器,由于采用数据通道加速架构(DatapathAccelerat1n Architecture, DPAA)技术,能够极大的提高网络数据包发送、处理速度,并且利用用户空间USDPAA技术,可以实现在用户空间以零拷贝的方式获取网络数据包,并结合用户空间的过滤规则匹配模块和数据过滤模块,能够实现网络数据包的快速、高效过滤。这种实现方式由于在用户空间进行,具备容易调试、过滤策略方便加载、不影响系统稳定运行等优点。
[0009]DPAA,为英文Data path Accelerat1n Architecture 的简称,翻译为数据通道加速架构。
[0010]USDPAA,也简称为UPAA,翻译为用户空间数据通道加速架构。
[0011]本发明的一种基于PowerPC硬件架构的网络数据包过滤方法和现有技术相比,能够在操作系统用户空间实现网络数据包高速、高效过滤,解决目前在内核空间进行数据包过滤所带来的效率差、容易导致系统崩溃、过滤策略不方便加载、不便于调试等一系列问题。

【专利附图】

【附图说明】
[0012]下面结合附图对本发明进一步说明。
[0013]附图1为一种基于PowerPC硬件架构的网络数据包过滤方法的结构架构图。

【具体实施方式】
[0014]下面结合附图和具体实施例对本发明作进一步说明。
[0015]实施例1:
本发明的一种基于PowerPC硬件架构的网络数据包过滤方法,PowerPC硬件架构采用PowerPC多核网络处理器,PowerPC多核网络处理器采用DPAA技术,包括如下步骤:
步骤一、在操作系统用户空间获取网络数据包;
步骤二、根据过滤匹配列表对网络数据包进行过滤处理;
步骤三、管理用户能够通过过滤规则配置模块对过滤匹配列表内容进行配置修改,保证过滤匹配内容的及时有效性。
[0016]步骤一具体包括如下步骤:
(1)、对操作系统进行配置,使PowerPC的数据通道加速架构DPAA能够正常工作;
(2)、申请一大块物理地址连续的内存用于用户空间USDPAA收发网络数据包,并且通过mmap映射到用户空间,实现零拷贝,保证在用户空间快速高效获取网络数据包。
[0017]步骤二具体包括如下步骤:
(I )、将网络数据包交由过滤规则匹配模块进行判断;
(2)、过滤规则匹配模块将网络数据包与自身所存储的过滤匹配列表内容进行匹配,并将匹配结果和匹配策略通知数据过滤模块;
(3)、数据过滤模块根据匹配结果和匹配策略来决定网络数据包是否通过,并且记录相关日志信息。
[0018]实施例2:
本发明的一种基于PowerPC硬件架构的网络数据包过滤方法,PowerPC硬件架构采用PowerPC多核网络处理器,PowerPC多核网络处理器采用DPAA技术,包括如下步骤:
步骤一、在操作系统用户空间获取网络数据包;
步骤二、根据过滤匹配列表对网络数据包进行过滤处理;
步骤三、管理用户能够通过过滤规则配置模块对过滤匹配列表内容进行配置修改,保证过滤匹配内容的及时有效性。
[0019]步骤一具体包括如下步骤:
(1)、对操作系统进行配置,使PowerPC的数据通道加速架构DPAA能够正常工作;
(2)、申请一大块物理地址连续的内存用于用户空间USDPAA收发网络数据包,并且通过mmap映射到用户空间,实现零拷贝,保证在用户空间快速高效获取网络数据包。
[0020]步骤二具体包括如下步骤:
(I )、将网络数据包交由过滤规则匹配模块进行判断;
(2)、过滤规则匹配模块将网络数据包与自身所存储的过滤匹配列表内容进行匹配,并将匹配结果和匹配策略通知数据过滤模块;
(3)、数据过滤模块根据匹配结果和匹配策略来决定网络数据包是否通过,并且记录相关日志信息。
[0021]PowerPC硬件架构采用飞思卡尔公司推出的PowerPC多核网络处理器。
[0022]实施例3:
本发明的一种基于PowerPC硬件架构的网络数据包过滤方法,包含获取网络数据包、对网络数据包进行过滤处理、对过滤匹配列表进行维护三部分,具体如下:
一、在操作系统用户空间获取网络数据包:
I)对操作系统进行配置,使PowerPC的数据通道加速架构DPAA (DatapathAccelerat1n Architecture)能够正常工作;
DPAA主要包括BMan、QMan、FMan、RMan四个模块,BMan提供了内存缓存池功能,可以减轻软件对内核管理的负载,QMan为网络接口硬件加速模块,为CPU内核之间提供了数据队列的功能,FMan用于解析、分类和分发书包,RMan用于网络数据包的Rapid1接口高速传输。要使这四个模块能够正常工作,需要进行以下操作:
a)在内核编译选项选中对以上模块的支持;
b)在dts文件中加入对以上模块的支持;
c)在文件系统中加入对fmc等DPAA配置工具以及usdpaa_policy_hash_ipv4.xml等DPAA配置文件的支持。
[0023]d)重新编译内核和文件系统,并将其烧写到PowerPC主板中。
[0024]e)系统启动后,运行fmc配置工具,对DPAA进行配置,使DPAA可以正常工作。
[0025]2)申请一大块物理地址连续的内存用于用户空间UPAA (USDPAA)收发网络数据包,并且通过mmap映射到用户空间,实现零拷贝,保证在用户空间快速高效获取网络数据包;
使用Π0 (Userspace 1/0)技术,能够映射DPAA寄存器到用户空间,从而使接口层的FMan, QMan, RMan接口直接与驱动层的FMan、QMan, RMan驱动进行通信,避免之前采用的1ctl接口频繁从用户空间到内核空间的这种低效率调用方式,从而保证在应用程序层能够快速高效的获取网络数据包。
[0026]二、根据过滤匹配列表对网络数据包进行过滤处理:
I)将网络数据包交由过滤规则匹配模块进行判断;
应用程序通过调用接口层QMan接口获取网络数据包,并将其交给过滤规则匹配模块进行过滤匹配。
[0027]2)过滤规则匹配模块将网络数据包与自身所存储的过滤匹配列表内容进行匹配,并将匹配结果和匹配策略通知数据过滤模块;
过滤规则信息内容包括IP五元组、应用协议类型/内容、时间、QOS等其他网络属性信息以及采用白名单、黑名单何种规则匹配模式。
[0028]3)数据过滤模块根据匹配结果和匹配策略来决定网络数据包是否通过,并且记录相关日志信息;
数据过滤模块从过滤规则匹配模块得到匹配结果(匹配成功/失败)和匹配策略(允许/禁止数据包通过、是否需要记录日志信息等),如果允许网络数据包通过,调用接口层QMan接口、RMan接口实现网络数据包转发,否则在数据过滤模块丢弃网络数据包。
[0029]三、对过滤匹配列表进行维护:
管理用户可通过过滤配置模块对过滤匹配列表内容进行配置修改,保证过滤匹配内容的及时有效性。
[0030]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种基于PowerPC硬件架构的网络数据包过滤方法的权利要求书的且任何所属【技术领域】的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【权利要求】
1.一种基于PowerPC硬件架构的网络数据包过滤方法,其特征在于PowerPC硬件架构采用PowerPC多核网络处理器,PowerPC多核网络处理器采用DPAA技术,包括如下步骤: 步骤一、在操作系统用户空间获取网络数据包; 步骤二、根据过滤匹配列表对网络数据包进行过滤处理; 步骤三、管理用户能够通过过滤规则配置模块对过滤匹配列表内容进行配置修改,保证过滤匹配内容的及时性。
2.根据权利要求1所述的一种基于PowerPC硬件架构的网络数据包过滤方法,其特征在于步骤一具体包括如下步骤: (1)、对操作系统进行配置,使PowerPC的数据通道加速架构DPAA能够正常工作; (2)、申请一大块物理地址连续的内存用于用户空间USDPAA收发网络数据包,并且通过mmap映射到用户空间,实现零拷贝,保证在用户空间快速高效获取网络数据包。
3.根据权利要求1所述的一种基于PowerPC硬件架构的网络数据包过滤方法,其特征在于步骤二具体包括如下步骤: (I )、将网络数据包交由过滤规则匹配模块进行判断; (2)、过滤规则匹配模块将网络数据包与自身所存储的过滤匹配列表内容进行匹配,并将匹配结果和匹配策略通知数据过滤模块; (3)、数据过滤模块根据匹配结果和匹配策略来决定网络数据包是否通过,并且记录相关日志信息。
4.根据权利要求1所述的一种基于PowerPC硬件架构的网络数据包过滤方法,其特征在于PowerPC硬件架构采用飞思卡尔公司推出的PowerPC多核网络处理器。
【文档编号】H04L12/861GK104202315SQ201410420248
【公开日】2014年12月10日 申请日期:2014年8月25日 优先权日:2014年8月25日
【发明者】李岩 申请人:山东超越数控电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1