一种报文IP地址匹配电路及方法与流程

文档序号:12729511阅读:529来源:国知局

本发明涉及网络报文数据处理领域,具体的说是一种报文IP地址匹配电路及方法。



背景技术:

IP地址(Internet Protocol Address,网际协议地址)是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP报文中通常包含报文源IP和目的IP等信息,通过与策略中的IP地址信息进行比较匹配,可实现报文规则转发或存储。

作为网络报文数据交换的必要步骤,报文IP地址匹配在硬件资源占用和处理时间消耗上都有较大影响,IP地址的比较匹配效率将影响整个报文处理及后续各模块的运行。而通常情况下策略中的IP地址具有较多的比特位,在比较匹配过程中会占用一部分带宽和硬件电路,且数据冗余量较大,额外占用一定的存储资源。



技术实现要素:

本发明针对目前技术发展的需求和不足之处,提供一种报文IP地址匹配电路及方法。

本发明所述一种报文IP地址匹配电路及方法,解决上述技术问题采用的技术方案如下:所述一种报文IP地址匹配电路,通过采用哈希映射的方法,同时设置两级判断模块,形成流水复用,实现对子网掩码形式或起止地址形式表示的报文IP地址进行快速高效的比较匹配运算;所述报文IP地址匹配电路包括哈希处理模块、哈希冲突模块、IP规则哈希存储模块、一级判断模块、模式一匹配模块、模式二匹配模块和二级判断模块;

所述哈希处理模块,用于对策略中源IP地址高16位部分、目的IP高16位部分进行哈希运算处理,所得结果输出至所述哈希冲突模块;同时对实时报文中IP地址高16位部分、目的IP高16位部分进行哈希运算处理,所得结果输出至所述哈希冲突模块;

所述哈希冲突模块,用于对策略中发生冲突的哈希结果进行标识和记录,其输出送至所述IP规则哈希存储模块;同时对报文中发生冲突的哈希结果进行标识和记录,其输出送至所述一级判断模块;

所述IP规则哈希存储模块,用于存储策略中高位IP地址的哈希结果,并根据哈希结果将相应地址的存储内容送至所述一级判断模块;

所述一级判断模块用于比较经哈希处理的策略IP地址和实时报文IP地址,若有条目匹配上,则将结果经模式选择分别送入所述模式一匹配模块或模式二匹配模块,否则直接输出未匹配标志;

所述模式一匹配模块,用于对模式一方式表示的IP地址进行比较匹配;所述模式二匹配模块,用于对模式二方式表示的IP地址进行比较匹配;二者输出结果送至二级判断模块;

所述二级判断模块用于综合前级结果,并根据报文是否存在双向IP地址将结果送入所述哈希处理模块或输出。

一种报文IP地址匹配方法,其具体实现过程如下:

第一,策略中高位IP地址经哈希运算、哈希冲突处理,与低位IP地址、IP地址模式、子网掩码或终止IP地址、处理策略存入IP规则哈希存储模块,用于一级判断;

第二,实时报文中IP地址经哈希运算和哈希冲突处理,与IP规则哈希存储模块中的数据经一级判断模块比较,根据不同IP地址模式,送入模式一匹配模块或模式二匹配模块进行比较匹配;

第三,将第二步骤两种模式匹配模块的结果送入二级判断模块,根据报文是否是双向IP地址、交换源IP地址和目的IP地址重新进行第二步骤,或将匹配结果输出至后级,完成报文IP匹配。

本发明所述一种报文IP地址匹配电路及方法,与现有技术相比具有的有益效果是:本发明通过采用哈希映射的方法,降低IP地址需要比较的同步位数,提高时序;同时设置两级判断模块,形成流水复用,节约硬件资源,可实现对子网掩码形式或起止地址形式表示的报文IP地址进行快速高效的比较匹配运算。

附图说明

附图1为报文IP地址匹配电路的示意框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本发明所述一种报文IP地址匹配电路及方法进一步详细说明。

实施例:

本实施例所述一种报文IP地址匹配电路,通过采用哈希映射的方法,同时设置两级判断模块,形成流水复用,实现对子网掩码形式或起止地址形式表示的报文IP地址进行快速高效的比较匹配运算。

如附图1所示,所述报文IP地址匹配电路包括哈希处理模块、哈希冲突模块、IP规则哈希存储模块、一级判断模块、模式一匹配模块、模式二匹配模块和二级判断模块。

所述哈希处理模块,用于对策略中源IP地址高16位部分、目的IP高16位部分进行哈希运算处理,所得结果经所述哈希冲突模块存入所述IP规则哈希存储模块,用于一级判断;同时对实时报文中IP地址高16位部分、目的IP高16位部分进行哈希运算处理,所得结果输出至所述哈希冲突模块。

本实施例所述报文IP地址匹配电路,采用MD5算法实现哈希映射电路。

所述哈希冲突模块,用于对策略中发生冲突的哈希结果进行标识和记录,其输出送至所述IP规则哈希存储模块;同时对报文中发生冲突的哈希结果进行标识和记录,其输出送至所述一级判断模块。

所述哈希冲突模块采用深度为16的双口RAM作为哈希冲突电路的基础电路,记录并处理冲突的哈希结果。

所述IP规则哈希存储模块,用于存储策略中高位IP地址的哈希结果,并根据哈希结果将相应地址的存储内容送至所述一级判断模块。

所述一级判断模块用于比较经哈希处理的策略IP地址和实时报文IP地址,若有条目匹配上,则将结果经模式选择分别送入所述模式一匹配模块或模式二匹配模块,否则直接输出未匹配标志。

所述模式一匹配模块,用于对模式一方式表示的IP地址进行比较匹配;所述模式二匹配模块,用于对模式二方式表示的IP地址进行比较匹配;二者输出送至二级判断模块。

所述二级判断模块用于综合前级结果,并根据报文是否存在双向IP地址将结果送入所述哈希处理模块或输出。

所述一级判断模块中模式选择包括模式一和模式二,模式一指使用IP地址和子网掩码方式表示当前IP地址;模式二指使用起始IP地址和终止IP地址方式表示当前IP地址。

所述模式一匹配模块对由低16位IP地址和低16位子网掩码共同决定的策略IP地址,以及由低16位IP地址和低16位子网掩码共同决定的实时报文IP地址进行比较匹配。

所述模式一匹配模块采用两数按位异或判断是否为0的方法进行大小比较。

所述模式二匹配模块首先对实时报文IP地址的低16位中的高8位与策略IP起始地址相应位进行比较匹配,然后对实时报文IP地址的低16位中的低8位与策略IP终止地址相应位进行比较匹配,可降低每次同步位数,提高时序。

通过上述报文IP地址匹配电路,实现一种报文IP地址匹配方法,该报文IP地址匹配方法的具体实现过程如下:

第一,策略中高位IP地址经哈希运算、哈希冲突处理,与低位IP地址、IP地址模式、子网掩码或终止IP地址、处理策略存入IP规则哈希存储模块;

第二,实时报文中IP地址经哈希运算和哈希冲突处理,与IP规则哈希存储模块中的数据经一级判断模块比较,根据不同IP地址模式,送入模式一匹配模块或模式二匹配模块进行比较匹配;

第三,将第二步骤两种模式匹配模块的结果送入二级判断模块,根据报文是否是双向IP地址、交换源IP地址和目的IP地址重新进行第二步骤,或将匹配结果输出至后级,完成报文IP匹配。

上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1