[发明专利]基于互联网协议地址的地区查找方法及装置有效
申请号: | 201910688369.9 | 申请日: | 2019-07-29 |
公开(公告)号: | CN110266834B | 公开(公告)日: | 2022-08-26 |
发明(设计)人: | 卢健;沈晓敏;黄红艳 | 申请(专利权)人: | 中国工商银行股份有限公司 |
主分类号: | H04L45/7453 | 分类号: | H04L45/7453;H04L101/69;H04L101/604 |
代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 王涛;任默闻 |
地址: | 100140 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 互联网 协议 地址 地区 查找 方法 装置 | ||
1.一种基于互联网协议地址的地区查找方法,其特征在于,包括:
接收地区查找指令,其中,该地区查找指令中包含有目标互联网协议地址;
将所述目标互联网协议地址转化为预设长整型的数值格式,得到所述目标互联网协议对应的目标字符串;
其中,所述将所述目标互联网协议地址转化为预设长整型的数值格式,得到所述目标互联网协议对应的目标字符串包括:对所述目标互联网协议地址的不足3位数的地址段补齐3位,并去掉中间的分隔点;所述目标互联网协议地址的以0开头的不足3位数的第一个地址段不补零;
在预设的哈希表中查找与所述目标字符串匹配的地区编号;
其中,所述哈希表中存储有各个所述互联网协议地址对应的索引与地区编号之间的对应关系;
输出所述目标字符串匹配的地区编号以根据该地区编号确定所述目标互联网协议地址所在的地区;
在所述接收地区查找指令之前,还包括:
获取各个地区编号以及各个所述地区编号各自对应的至少一个互联网协议地址;
应用所述各个地区编号以及各个所述地区编号各自对应的至少一个互联网协议地址,生成对应的哈希表;
所述应用所述各个地区编号以及各个所述地区编号各自对应的至少一个互联网协议地址,生成对应的哈希表,包括:
根据预设的第二字符串转化规则,将各个所述互联网协议地址均转化为对应的字符串;
确定每一个地区编号对应的起始互联网协议地址的字符串和结束互联网协议地址的字符串;
按照数值由小到大的顺序,对各个所述起始互联网协议地址的字符串或各个所述结束互联网协议地址的字符串进行排序,并根据对应的排序结果生成对应的第二有序三维数组;
其中,所述第二有序三维数组中的每一行均存储有一个所述地区编号、该地区编号分别对应的起始互联网协议地址的字符串和结束互联网协议地址的字符串;
将所述第二有序三维数组中的各个所述字符串均转化为对应的数字段,其中,所述数字段由四段数字组成,且每段中的数字小于或等于三位数;
应用所述数字段,根据预设的索引建立规则生成各个所述地区编号各自对应的至少一个地址索引,并生成包含有各个所述索引的哈希表;包括:选择一地区编号作为当前的目标地区编号;
执行地址索引的获取步骤:在目标地区编号对应的起始互联网协议地址和结束互联网协议地址各自对应的数字段中,以从左向右的顺序选取起始互联网协议地址或结束互联网协议地址中的第一个出现数值与彼此不同的段,并将该第一个出现数值与彼此不同的段确定为所述目标地区编号对应的目标段;以及,从所述目标地区编号对应的起始互联网协议地址和结束互联网协议地址各自对应的数字段中的倒数第一段开始,应用所述目标段依次获取所述目标地区编号对应的全部的地址索引;
更新作为当前的目标地区编号的地区编号,并重新执行所述地址索引的获取步骤,直至获取得到各个所述地区编号各自对应的至少一个地址索引;
所述预设的索引建立规则包括:
S1:从第四段开始倒序判断目标地区编号对应的起始互联网协议地址的当前段和结束互联网协议地址中的当前段是否为所述目标段;
若是,则执行步骤S2;
若否,且目标地区编号对应的起始互联网协议地址的第三段和结束互联网协议地址中的第三段为所述目标段,则执行步骤S5;
若否,且目标地区编号对应的起始互联网协议地址的第二段和结束互联网协议地址中的第二段为所述目标段,则执行步骤S13;
S2:判断所述目标地区编号对应的起始互联网协议地址的当前段的数值是否不等于0,且所述结束互联网协议地址中的当前段的数值是否不等于255;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值不为0的同时,满足所述结束互联网协议地址中的当前段的数值不等于255,则执行S3;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值为0,且所述结束互联网协议地址中的当前段的数值等于255,则执行S4;
S3:将所述目标地区编号对应的起始互联网协议地址的当前段与结束互联网协议地址中的当前段中的全部数值对应的包含有全部四段的四段互联网协议地址段均作为当前目标地区编号的互联网协议地址索引;
S4:将所述目标地区编号对应的起始互联网协议地址的当前段和结束互联网协议地址中的当前段均删除,并将剩余的起始互联网协议地址或者结束互联网协议地址中的包含有前三段的三段互联网协议地址段作为当前目标地区编号的互联网协议地址索引;
S5:判断所述目标地区编号对应的起始互联网协议地址的当前段的数值以及结束互联网协议地址中的当前段的数值分别与0和255之间的大小关系;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值不为0且小于255,且若所述目标地区编号对应的结束互联网协议地址的当前段的数值不为255且不为0,则执行S6;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值为0,且若所述目标地区编号对应的结束互联网协议地址的当前段的数值为255,则执行S10;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值为255,且若所述目标地区编号对应的结束互联网协议地址的当前段的数值也为255,则执行S11;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值为0,且若所述目标地区编号对应的结束互联网协议地址的当前段的数值也为0,则执行S12;
S6:对所述目标地区编号对应的起始互联网协议地址的当前段的当前数值到255之间的数值对应的包含有全部四段的四段互联网协议地址段均作为当前目标地区编号的第一互联网协议地址索引子组,并执行S7;
S7:对所述目标地区编号对应的结束互联网协议地址的当前段的0至当前数值之间的数值对应的包含有全部四段的四段互联网协议地址段均作为当前目标地区编号的第二互联网协议地址索引子组,而后执行S8;
S8:删除所述起始互联网协议地址的当前段和结束互联网协议地址中的当前段,并对所述目标地区编号对应的起始互联网协议地址的当前段的前一段的数值加1后,得到对应的包含有第一至第三段的起始三段互联网协议地址段,以及,将所述目标地区编号对应的结束互联网协议地址中的当前段的前一段的数值减1后,得到对应的包含有第一至第三段的结束三段互联网协议地址段,而后,将包含有所述起始三段互联网协议地址段至结束三段互联网协议地址段的全部三段互联网协议地址段均作为当前目标地区编号的第三互联网协议地址索引子组,而后执行S9;
S9:将S7至S8中的第一互联网协议地址索引子组、第二互联网协议地址索引子组和第三互联网协议地址索引子组组成当前的目标地区编号对应的互联网协议地址索引;
S10:删除所述起始互联网协议地址的当前段和结束互联网协议地址中的当前段,生成包含有起始互联网协议地址的第一至第三段的起始三段互联网协议地址段,以及,生成包含有结束互联网协议地址的第一至第三段的结束三段互联网协议地址段,而后,将包含有所述起始三段互联网协议地址段至结束三段互联网协议地址段的全部三段互联网协议地址段均作为当前目标地区编号的互联网协议地址索引;
S11:将所述起始互联网协议地址的当前段对应的四段互联网协议地址段作为当前目标地区编号的互联网协议地址索引之一,并删除所述起始互联网协议地址的当前段和结束互联网协议地址中的当前段,并对所述目标地区编号对应的起始互联网协议地址的当前段的前一段的数值加1后,得到对应的包含有第一至第三段的起始三段互联网协议地址段,以及,将所述目标地区编号对应的结束互联网协议地址的第一至第三段的结束三段互联网协议地址段,而后,将包含有所述四段互联网协议地址段、起始三段互联网协议地址段至结束三段互联网协议地址段的全部三段互联网协议地址段均作为当前目标地区编号的互联网协议地址索引;
S12:将所述结束互联网协议地址中的当前段对应的四段互联网协议地址段作为当前目标地区编号的互联网协议地址索引之一,并删除所述起始互联网协议地址的当前段和结束互联网协议地址中的当前段,并得到起始互联网协议地址的对应的包含有第一至第三段的起始三段互联网协议地址段,以及,对所述目标地区编号对应的结束互联网协议地址的当前段的前一段的数值减1后,得到对应的结束互联网协议地址的第一至第三段的结束三段互联网协议地址段,而后,将包含有所述四段互联网协议地址段、起始三段互联网协议地址段至结束三段互联网协议地址段的全部三段互联网协议地址段均作为当前目标地区编号的互联网协议地址索引;
S13:判断所述目标地区编号对应的起始互联网协议地址的当前段的数值以及结束互联网协议地址中的当前段的数值分别与0和255之间的大小关系;
若所述目标地区编号对应的起始互联网协议地址的当前段的数值不为0且小于255,且若所述目标地区编号对应的结束互联网协议地址的当前段的数值不为255且不为0,则执行S14;
S14:对所述目标地区编号对应的起始互联网协议地址的当前段的当前数值到255之间的数值对应的包含有全部四段的四段互联网协议地址段均作为当前目标地区编号的第一互联网协议地址索引子组,并执行S15;
S15:对所述目标地区编号对应的结束互联网协议地址的当前段的0至当前数值之间的数值对应的包含有全部四段的四段互联网协议地址段均作为当前目标地区编号的第二互联网协议地址索引子组,而后执行S16;
S16:删除所述起始互联网协议地址的当前段和结束互联网协议地址中的当前段,并对所述目标地区编号对应的起始互联网协议地址的当前段的前一段的数值加1,得到对应的包含有第一至第三段的起始三段互联网协议地址段,以及,将所述目标地区编号对应的结束互联网协议地址中的当前段的前一段的数值减1后,得到对应的包含有第一至第三段的结束三段互联网协议地址段,而后,将起始三段互联网协议地址段和结束三段互联网协议地址段组成新的起始互联网协议地址和结束互联网协议地址,此时,新的起始互联网协议地址和结束互联网协议地址均只包含有第一段至第三段的内容,而后对所述新的起始互联网协议地址和结束互联网协议地址执行前述步骤S6至S12的内容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国工商银行股份有限公司,未经中国工商银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910688369.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:IP地址管理方法及边缘集群
- 下一篇:一种具有全面屏的移动终端