网段查找方法及装置制造方法及图纸

技术编号:21484724 阅读:57 留言:0更新日期:2019-06-29 06:31
本申请实施例提供了一种网段查找方法及装置,通过多个已知地址网段预先创建树形结构,所述树形结构中每一子节点表示地址网段中至少一个比特位的位号,每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻,子节点连接的第二类孩子节点存储有:所述多个已知地址网段中前缀长度等于子节点所表示位号的网段;所述方法包括:获取待匹配地址网段;从所述树形结构中,查找所表示位号与所述待匹配地址网段的前缀长度一致的目标节点;判断所述待匹配地址网段是否与所述目标节点连接的第二类孩子节点存储的地址网段匹配。应用本申请实施例提供的方案能够提高查找效率。

【技术实现步骤摘要】
网段查找方法及装置
本申请涉及信息处理
,特别是涉及一种网段查找方法及装置。
技术介绍
安全策略是根据报文的属性信息对报文进行转发控制和深度报文检测的防控策略,其实质是根据安全策略中规定的网段规则的具体内容来对报文进行过滤。具体的,网段规则中会对需要过滤的IP(InternetProtocol,网络之间互连的协议)地址的网段进行限定,基于此,在基于网段规则进行报文过滤时,一般需要判断网段规则中限定的地址网段是否与已知报文中包括的IP地址匹配,若匹配,过滤上述已知报文,若不匹配,则放行上述已知报文。又由于各安全策略一般是按照一定顺序排列的,所以基于网段规则进行报文过滤时,需要按照安全策略的排列顺序,从前到后逐个判断每一安全策略中规定的网段规则所限定地址网段是否与已知报文中包括的IP地址匹配,查找效率较低。尤其是在实际应用中安全策略多达几万条的情况,应用上述方式查找与已知报文包括的IP地址是否与网段规则规定的地址网段相匹配时,查找效率极低。
技术实现思路
有鉴于此,本申请提供了一种网段查找方法及装置,以提高网段的查找效率。具体技术方案如下:第一方面,本申请提供了一种网段查找方法,通过多个已知地址网段预先创建树形结构,所述树形结构中每一子节点表示地址网段中至少一个比特位的位号,每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻,子节点连接的第二类孩子节点存储所述多个已知地址网段中前缀长度等于子节点所表示位号的网段;所述方法包括:获取待匹配地址网段;从所述树形结构中,查找所表示位号与所述待匹配地址网段的前缀长度一致的目标节点;判断所述待匹配地址网段是否与所述目标节点连接的第二类孩子节点存储的地址网段匹配。结合第一方面,在第一种可能的实现方式中,所述子节点表示至少两个位号;所述子节点连接的第二类孩子节点存储所述多个已知地址网段中前缀长度等于至少两个位号中第一位号的网段;所述第一位号为至少两个位号中与子节点连接的第一类孩子节点所表示位号相邻的位号。结合第一方面或第一种可能的实现方式,在第二种可能的实现方式中,所述获取待匹配地址网段之前,所述方法还包括:按照一个比特位与一个子节点一一对应的方式,将地址网段包括的比特位的位号存储至子节点中,得到树形结构,所述树形结构中每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻;获取第一已知地址网段,从所述树形结构中,查找所表示位号与所述第一已知地址网段包括的前缀长度一致的子节点;为查找到的子节点增加与子节点连接的第二类孩子节点,并将所述第一已知地址网段存储至增加的第二类孩子节点中;从与所述树形结构包括的根节点连接的第一层子节点或第一孩子节点中,确定起始合并节点,并以第一子节点为结束合并节点,所述第一子节点为具有第二类孩子节点的子节点,第一孩子节点为与第一子节点连接的第一类孩子节点;对每一对起始合并节点和结束合并节点之间的子节点进行节点合并。结合第二种可能的实现方式,在第三种可能的实现方式中,所述获取第一已知地址网段之前,还包括:以前缀长度为第一优先级,按照升序方式对多个已知地址网段进行排序;当存在多个已知地址网段具有相同的第一优先级时,以地址网段的IP地址为第二优先级,按照升序方式,对具有相同第一优先级的多个已知地址网段进行排序,获得所述多个已知地址网段的排序结果;所述获取第一已知地址网段,从所述树形结构中,查找所表示位号与所述第一已知地址网段包括的前缀长度一致的子节点,包括:从所述排序结果中获得第一已知地址网段;从所述树形结构中第二子节点的下一层子节点开始,查找所表示位号与所述第一已知地址网段的前缀长度一致的子节点,所述第二子节点为所述树形结构中所表示位号与第二已知地址网段的前缀长度一致的子节点,第二已知地址网段为所述排序结果中所述第一已知地址网段的前一地址网段。第二方面,本申请提供了一种网段查找装置,通过多个已知地址网段预先创建树形结构,所述树形结构中每一子节点表示地址网段中至少一个比特位的位号,每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻,子节点连接的第二类的孩子节点存储所述多个已知地址网段中前缀长度等于子节点所表示位号的网段;所述装置包括:网段获取模块,用于获取待匹配地址网段;节点查找模块,用于从所述树形结构中,查找所表示位号与所述待匹配地址网段的前缀长度一致的目标节点;网段判断模块,用于判断所述待匹配地址网段是否与所述目标节点连接的第二类孩子节点存储的地址网段匹配。结合第二方面,在第四种可能的实现方式中,所述子节点表示至少两个位号;所述子节点连接的第二类孩子节点存储所述多个已知地址网段中前缀长度等于至少两个位号中第一位号的网段;所述第一位号为至少两个位号中与子节点连接的第一类孩子节点所表示位号相邻的位号。结合第二方面或第四种可能的实现方式,在第五种可能的实现方式中,在所述网段获取模块获取所述待匹配地址网段之前,所述装置还包括:树创建模块;其中,所述树创建模块,包括:树获得单元,用于按照一个比特位与一个子节点一一对应的方式,将地址网段包括的比特位的位号存储至子节点中,得到树形结构,所述树形结构中每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻;节点查找单元,用于获取第一已知地址网段,从所述树形结构中,查找所表示位号与所述第一已知地址网段包括的前缀长度一致的子节点;网段存储单元,用于为查找到的子节点增加与子节点连接的第二类孩子节点,并将所述第一已知地址网段存储至增加的第二类孩子节点中;节点确定单元,用于从与所述树形结构包括的根节点连接的第一层子节点或第一孩子节点中,确定起始合并节点,并以第一子节点为结束合并节点,所述第一子节点为第二类孩子节点的子节点,第一孩子节点为与第一子节点连接的第一类孩子节点;节点合并单元,用于对每一对起始合并节点和结束合并节点之间的子节点进行节点合并。结合第五种可能的实现方式,在第六种可能的实现方式中,所述树创建模块还包括:网段排序单元,用于在所述节点查找单元查找所表示位号与已知地址网段的前缀长度一致的子节点之前,以前缀长度为第一优先级,按照升序方式对多个已知地址网段进行排序;当存在多个已知地址网段具有相同的第一优先级时,以地址网段的IP地址为第二优先级,按照升序方式,对具有相同第一优先级的多个已知地址网段进行排序,获得所述多个已知地址网段的排序结果;所述节点查找单元,具体用于:从所述排序结果中获得第一已知地址网段;从所述树形结构中第二子节点的下一层子节点开始,查找所表示位号与所述第一已知地址网段的前缀长度一致的子节点,所述第二子节点为:所述树形结构中所表示位号与第二已知地址网段的前缀长度一致的子节点,第二已知地址网段为:所述排序结果中所述第一已知地址网段的前一地址网段。第三方面,本申请提供了一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现本申请实施例所述的方法步骤。第四方面,本申请提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现本申请实施例所述的方法步骤。由以上可见,应用本申请实施例提供的方案查找本文档来自技高网...

【技术保护点】
1.一种网段查找方法,其特征在于,通过多个已知地址网段预先创建树形结构,所述树形结构中每一子节点表示地址网段中至少一个比特位的位号,每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻,子节点连接的第二类孩子节点存储所述多个已知地址网段中前缀长度等于子节点所表示位号的网段;所述方法包括:获取待匹配地址网段;从所述树形结构中,查找所表示位号与所述待匹配地址网段的前缀长度一致的目标节点;判断所述待匹配地址网段是否与所述目标节点连接的第二类孩子节点存储的地址网段匹配。

【技术特征摘要】
1.一种网段查找方法,其特征在于,通过多个已知地址网段预先创建树形结构,所述树形结构中每一子节点表示地址网段中至少一个比特位的位号,每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻,子节点连接的第二类孩子节点存储所述多个已知地址网段中前缀长度等于子节点所表示位号的网段;所述方法包括:获取待匹配地址网段;从所述树形结构中,查找所表示位号与所述待匹配地址网段的前缀长度一致的目标节点;判断所述待匹配地址网段是否与所述目标节点连接的第二类孩子节点存储的地址网段匹配。2.根据权利要求1所述的方法,其特征在于,所述子节点表示至少两个位号;所述子节点连接的第二类孩子节点存储所述多个已知地址网段中前缀长度等于至少两个位号中第一位号的网段;所述第一位号为至少两个位号中与子节点连接的第一类孩子节点所表示位号相邻的位号。3.根据权利要求1或2所述的方法,其特征在于,所述获取待匹配地址网段之前,所述方法还包括:按照一个比特位与一个子节点一一对应的方式,将地址网段包括的比特位的位号存储至子节点中,得到树形结构,所述树形结构中每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻;获取第一已知地址网段,从所述树形结构中,查找所表示位号与所述第一已知地址网段包括的前缀长度一致的子节点;为查找到的子节点增加与子节点连接的第二类孩子节点,并将所述第一已知地址网段存储至增加的第二类孩子节点中;从与所述树形结构包括的根节点连接的第一层子节点或第一孩子节点中,确定起始合并节点,并以第一子节点为结束合并节点,所述第一子节点为具有第二类孩子节点的子节点,第一孩子节点为与第一子节点连接的第一类孩子节点;对每一对起始合并节点和结束合并节点之间的子节点进行节点合并。4.根据权利要求3所述的方法,其特征在于,所述获取第一已知地址网段之前,还包括:以前缀长度为第一优先级,按照升序方式对多个已知地址网段进行排序;当存在多个已知地址网段具有相同的第一优先级时,以地址网段的IP地址为第二优先级,按照升序方式,对具有相同第一优先级的多个已知地址网段进行排序,获得所述多个已知地址网段的排序结果;所述获取第一已知地址网段,从所述树形结构中,查找所表示位号与所述第一已知地址网段包括的前缀长度一致的子节点,包括:从所述排序结果中获得第一已知地址网段;从所述树形结构中第二子节点的下一层子节点开始,查找所表示位号与所述第一已知地址网段的前缀长度一致的子节点,所述第二子节点为所述树形结构中所表示位号与第二已知地址网段的前缀长度一致的子节点,第二已知地址网段为所述排序结果中所述第一已知地址网段的前一地址网段。5.一种网段查找装置,其特征在于,通过多个已知地址网段预先创建树形结构,所述树形结构中每一子节点表示地址网段中至少一个比特位的位号,每一子节点所表示的位号与子节点连接的第一类孩子节点所表示的位号相邻,子节点连接的第二类的孩子节点存储所述多个已知地址网段中前缀长度等于子节点所...

【专利技术属性】
技术研发人员:李保国
申请(专利权)人:新华三信息安全技术有限公司
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1