IP地址信息的存储、IPv4地址的查询的方法及系统与流程

文档序号:14392099阅读:234来源:国知局
本公开涉及ip地址领域,尤其涉及一种ip地址信息的存储方法及装置、ipv4地址的查询方法及系统。
背景技术
::一般来说,现有技术在存储ip地址时,都是通过将ip地址转换为无符数字类型存储,在一定程度降低了字符串类型所占用的数据库空间(降低程度有限),以及提高了int型的查询效率,但是针对归属地等额外信息无优化。此外,还通过ip地址聚合的方式降低存数数据量,降低了存储空间,但是降低了基于精细查询的粒度,同时查询效率未做优化。目前,没有关于ip地址和归属地等额外信息做出优化和改进的技术方案。技术实现要素:(一)要解决的技术问题本公开的目的在于提供一种ip地址信息的存储方法及装置、ipv4地址的查询方法及系统,以解决上述的至少一项技术问题。(二)技术方案本公开的一方面,提供了一种ip地址信息的存储方法,所述ip地址信息包括第一ipv4地址和第一归属信息,该方法包括:将各第一ipv4地址分成4段,对每一段第一ipv4地址进行处理,确定并存储每一段第一ipv4地址的第一ip校验和;以及对所述第一归属信息进行处理,确定并存储各第一归属信息的第一归属校验和。在本公开的一些实施例中,所述第一归属信息包括第一运营商信息和/或第一地理位置信息。在本公开的一些实施例中,所述对每一段第一ipv4地址进行处理确定每一段第一ipv4地址的第一ip校验和,以及所述对所述第一归属信息进行处理确定各第一归属信息的第一归属校验和,均是通过adler32算法或者crc算法实现的。本公开的另一方面,还提供了一种ip地址信息的存储装置,包括:存储器,用于存储操作指令;以及处理器,用于根据所述操作指令执行前述的ip地址信息的存储方法。本公开的再一方面,还提供了一种ipv4地址的查询方法,包括前述的ip地址信息的存储方法,从而确定所述第一ip校验和与第一归属校验和,还包括步骤:确定待查询ip地址信息中的第二ipv4地址的4段第二ip校验和;或者确定待查询ip地址信息中的第二归属信息的第二归属校验和;以及判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同,若不完全相同,则停止判断,即不能精确查询与待查询ip地址信息相关的已存储ip地址信息;若完全相同,则能够精确查询与待查询ip地址信息相关的已存储ip地址信息。在本公开的一些实施例中,在判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同的步骤中,还包括:若前3段第一ip校验和与前3段第二ip校验和都相同,第4段第一ip校验和与第4段第二ip校验和不相同,则能够模糊查询与待查询ip地址信息相关的已存储ip地址信息,所述模糊查询指查询到与所述待查询ip地址信息地理位置相近的已存储ip地址信息。在本公开的一些实施例中,通过哈希表判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同。本公开的又一方面,还提供了一种ipv4地址的查询系统,包括前述的ip地址信息的存储装置,用于确定所述第一ip校验和、第一归属校验和、待查询ip地址信息的第二ip校验和/第二归属校验和,其中,还包括:判断单元,用于判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同,若不完全相同,则停止判断,即不能精确查询与待查询ip地址信息相关的已存储ip地址信息;若完全相同,则能够精确查询与待查询ip地址信息相关的已存储ip地址信息。在本公开的一些实施例中,所述判断单元还用于:若前3段第一ip校验和与前3段第二ip校验和都相同,第4段第一ip校验和与第4段第二ip校验和不相同,则能够模糊查询与待查询ip地址信息相关的已存储ip地址信息,所述模糊查询指查询到与所述待查询ip地址信息地理位置相近的已存储ip地址信息。在本公开的一些实施例中,还包括哈希表,用于判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同。(三)有益效果本公开的ip地址信息的存储方法及装置、ipv4地址的查询方法及系统,相对于现有技术,至少具有以下优点:1、将ip地址信息中的ipv4地址和归属信息转换成校验和,有效地降低了ip地址信息的存储空间。2、判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同,当前段的第一ip校验和与第二第一ip校验和不相等时,即可放弃查询,大大提高了查询效率,同时,在进行ip查询时还能具有高精度和粒度定位ip的特征。3、通过哈希表进行逐段判断,能够加快判断速度、减少判断误差。附图说明图1为本公开实施例的ip地址信息的存储方法的步骤示意图。图2为本公开实施例的ip地址信息的存储装置的结构示意图。图3为本公开实施例的ipv4地址的查询方法的步骤示意图。图4为本公开实施例的ipv4地址的查询系统的结构示意图。具体实施方式基于现有技术没有关于ip地址(互联网协议地址)和归属地等额外信息做出优化和改进的技术方案,本公开提供了一种ip地址信息的存储方法及装置、ipv4地址的查询方法及系统,将ip地址信息中的ipv4地址和归属信息转换成校验和,有效地降低了ip地址信息的存储空间,提高了存储效率和查询效率。为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。本公开的一方面,提供了一种ip地址信息的存储方法,所述ip地址信息包括第一ipv4地址和第一归属信息。图1为本公开实施例的ip地址信息的存储方法的步骤示意图,如图1所示,所述存储方法包括:步骤s11、将各第一ipv4地址分成4段,对每一段第一ipv4地址进行处理,确定并存储每一段第一ipv4地址的第一ip校验和。步骤s12、将所述第一归属信息进行处理,确定并存储各第一归属信息的第一归属校验和。一般来说,第一归属信息可以包括第一运营商信息和/或第一地理位置信息,第一运营商信息包括但不限于电信、联通、移动、铁通等运营商,地理位置信息可以包括国家、省市、县区、甚至更详细的地理位置。举例来说,将一个ipv4地址为十进制的118.123.15.102转换成4段8位二进制的01110110011110110000111101100110,再对转换后的二进制进行计算第一ip校验和,并将每一段的校验和存储于数据表中。同理,对第一归属信息也进行类似操作,得到第一归属校验和,存入该数据表中。本公开将ip地址信息中的ipv4地址和归属信息转换成校验和进行存储,有效地降低了ip地址信息的存储空间。需要声明的是,4段十进制ipv4地址的形式包括但不限于二进制、八进制和十六进制,可以根据实际需求进行选择。可以理解的是,确定第一ip校验和与第一归属校验和的方法包括但不限于adler32算法和crc(循环冗余校验码)算法,一般来说,adler32算法相较于crc算法具有更快速的计算效果,最终可以得到ascii码(美国信息交换标准代码)形式的第一ip校验和和第一归属校验和。本公开的另一方面,还提供了一种ip地址信息的存储装置,图2为本公开实施例的ip地址信息的存储装置的结构示意图,如图2所示,该存储装置包括:存储器21,用于存储操作指令;处理器22,用于根据存储器21中的操作指令执行如前述的ip地址信息的存储方法。如此,便能将ip地址信息中的ipv4地址和归属信息转换成校验和,有效地降低了ip地址信息的存储空间。本公开实施例的再一方面,还提供了一种ipv4地址的查询方法,图3为本公开实施例的ipv4地址的查询方法的步骤示意图,该查询方法包括前述的步骤s31、ip地址信息的存储方法,从而确定第一ip校验和与第一归属校验和,其中,步骤s31包括图1中所示的步骤s11和步骤s12,另外,该查询方法还包括步骤:s32、确定待查询ip地址信息中的第二ipv4地址的4段第二ip校验和;或者待查询ip地址信息中的第二归属信息的第二归属校验和。s33、判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同,若不完全相同,则停止判断,即不能精确查询与待查询ip地址信息相关的已存储ip地址信息;若完全相同,则能够精确查询与待查询ip地址信息相关的已存储ip地址信息。也就是说,可以根据待查询ip地址信息的第二ip校验和或者第二归属校验和,与已经存储在数据表中的第一ip校验和和第二归属校验和进行匹配,即可实现ipv4地址的查询。接着,对逐段判断4段第一ip校验和是否与4段第二ip校验和相同,进行详细说明:当逐段判断4段第一ip校验和是否与4段第二ip校验和相同时,其过程大致为:若当前段第一ip校验和与当前段第二ip校验和不相同时,则停止判断,即不能精确查询与待查询ip地址信息相关的已存储ip地址信息;若每一段第一ip校验和与每一段第二ip校验和都相同,则能够精确查询与待查询ip地址信息相关的第一ip地址信息,其中,所述精确查询指待查询ip地址信息与所述ip地址信息完全相同。如此,在查询ipv4地址时,通过逐段判断的方式,若当前段第一ip校验和与当前段第二ip校验和不相同,则停止判断;若当前段第一ip校验和与当前段第二ip校验和相同,则继续判断下一段,直至判断完4段ipv4地址,因此在当前段的第一ip校验和与第二第一ip校验和不相等时,即可放弃查询,大大提高了查询效率,减少判断失误,同时在进行ip查询时还能具有高精度和粒度定位ip的特征。在一些实施例中,步骤s33还可以包括步骤:s331、若前3段第一ip校验和与前3段第二ip校验和都相同,第4段第一ip校验和与第4段第二ip校验和不相同,则能够模糊查询与待查询ip地址信息相关的已存储ip地址信息,所述模糊查询指查询到与所述待查询ip地址信息地理位置相近的已存储ip地址信息。因为ipv4地址的前3段8位二进制就可以判断出其较大范围的地理位置,因此,步骤s331的模糊查询能够得到该待查询ip地址信息的较大范围的地理位置。另外,为了能够进一步加快判断速度、减少判断误差,可以通过哈希表(hashtable)逐段判断4段第一ip校验和或者4段第一归属校验和是否分别与4段第二ip校验和或者4段第二归属校验和相同。本公开的又一方面,还提供了一种ipv4地址的查询系统,图4为本公开实施例的ipv4地址的查询系统的结构示意图,如图4所示,该查询系统包括:前述的ip地址信息的存储装置2,如图2所述,其包括存储器21和处理器22。该ip地址信息的存储装置2用于确定所述第一ip校验和、第一归属校验和、待查询ip地址信息的第二ip校验和/第二归属校验和,并将第一ip校验和与第一归属校验和存入一数据表中;判断单元42,判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同,若不完全相同,则停止判断,即不能精确查询与待查询ip地址信息相关的已存储ip地址信息;若完全相同,则能够精确查询与待查询ip地址信息相关的已存储ip地址信息。在本公开的一些实施例中,所述判断单元42还用于:判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同,若不完全相同,则停止判断,即不能精确查询与待查询ip地址信息相关的已存储ip地址信息;若完全相同,则能够精确查询与待查询ip地址信息相关的已存储ip地址信息。另外,为了进一步加快判断速度、减少判断误差,还可以包括哈希表,用于判断第一归属校验和与第二归属校验和是否相同、或者逐段判断4段第一ip校验和是否与4段第二ip校验和相同。综上,本公开的ip地址信息的存储方法及装置、ipv4地址的查询方法及系统,能够将ip地址信息中的ipv4地址和归属信息转换成校验和,有效地降低了ip地址信息的存储空间。另外,还采取了逐段查询第一地址信息校验和与第二地址信息校验和的方式,当前段的第一地址信息校验与第二地址信息校验不相等时,即可放弃查询,大大提高了查询效率,同时,在进行ip查询时还能具有高精度和粒度定位ip的特征。附图中各部件的形状和尺寸不反映真实大小和比例,而仅示意本公开实施例的内容。另外,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。除非有所知名为相反之意,本说明书及所附权利要求中的数值参数是近似值,能够根据通过本公开的内容所得的所需特性改变。具体而言,所有使用于说明书及权利要求中表示组成的含量、反应条件等等的数字,应理解为在所有情况中是受到“约”的用语所修饰。一般情况下,其表达的含义是指包含由特定数量在一些实施例中±10%的变化、在一些实施例中±5%的变化、在一些实施例中±1%的变化、在一些实施例中±0.5%的变化。再者,单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。说明书与权利要求中所使用的序数例如“第一”、“第二”、“第三”等的用词,以修饰相应的元件,其本身并不意味着该元件有任何的序数,也不代表某一元件与另一元件的顺序、或是制造方法上的顺序,该些序数的使用仅用来使具有某命名的一元件得以和另一具有相同命名的元件能做出清楚区分。以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1