一种网络协议地址‑地域信息减少重复匹配的方法及系统与流程

文档序号:11180816阅读:337来源:国知局
一种网络协议地址‑地域信息减少重复匹配的方法及系统与流程

本发明涉及通信技术领域,尤其涉及一种网络协议地址-地域信息减少重复匹配的方法及系统。



背景技术:

ip(internetprotocol,网络协议地址)是为计算机网络相互连接进行通信而设计的协议,是为了使连接到因特网上的所有计算机实现相互通信的一套规则。每个连接在因特网上的一台计算机都会被分配一个或多个ip地址用于在网络上进行通讯。ip地址不仅是主机在因特网上的一个标签,同时也可以作为识别主机的地域信息的一个重要参考标准。

包含地域信息的ip库是用来查询每个ip地址的地域信息的数据库,通常由若干个ip段组成。每个ip段均包含一个起始ip地址、一个结束ip地址和一个地域信息,表明落在此ip段之中的所有ip地址均属于此地域信息指明的地域。网络服务提供商使用包含地域信息的ip库来对互联网上的每一个ip地址进行地域定位以提供地域定向服务。

路由器上报给服务器的海量上行文件来源于世界各个地区,当对上行文件中的数据包按区域进行划分则价值就会成倍增加。而对数据进行地域信息匹配的机制,是通过源ip信息在第三方运营商提供的ip库进行匹配。但是一个上行文件中,往往会出现成千上万条连续重复的数据日志。如果顺序对这些数据进行地域信息匹配,每条数据都进行一次地域信息匹配,就会对成千上万个连续重复的数据日志进行成千上万次地域信息匹配,这样大量重复性的操作大大降低了匹配效率。

发明专利cn103164475a公开了一种多个ip地域信息库的合并方法及系统,其具体公开了根据所有原始ip库的ip段划分确定整合ip库的ip段划分;按照所有地理位置稳定的用户机的用户日志统计整合ip库中ip段之间的转移频次,根据所统计出的转移频次分别计算整合ip库中各ip段在各原始ip库中的地域信息的置信度,再将整合ip库中的各ip段在各原始ip库中所计算出的置信度最高的地域信息作为整合ip库中该ip段的最终地域信息。该方法利用置信度确认整合后的最终地域信息,得到一个优于原始ip库,具有最全、最精准地域信息的整合ip库。但该方法只是改进优化了ip库,但未解决连续重复数据进行重复性地域信息匹配的问题。

发明专利cn101902442a公开了一种获取ip地理位置信息的方法、系统及位置信息服务器,其具体公开了接收应用程序发起的ip地理位置查询请求,所述请求中包括ip地址;将所述ip地址转换成全称域名,并封装成相应的第一dns查询请求;依据所述第一dns查询请求,定位目标级dns权威服务器;由所述目标级dns权威服务器重定向所述全称域名,获得映射的isp所属dns权威服务器的信息;将重定向的全称域名封装成相应的第二dns查询请求,并发送至所述isp所属dns权威服务器,由所述isp所属dns权威服务器依据私有策略返回对应的txt格式的地理位置信息;将所述地理位置信息转换成xml格式的信息,返回给所述应用程序。该方法可以保证获取地理位置信息的准确度,但未对用户ip匹配地域信息的匹配效率做出改进。



技术实现要素:

本发明针对现有技术存在的问题,提出了一种匹配效率成倍提高的网络协议地址-地域信息减少重复匹配的方法及系统。

本发明采用临时变量标记前一行日志用于匹配的用户网络协议地址和地域信息,在对当前一行日志信息进行地域信息匹配时,首先将本行日志中的用户网络协议地址与;临时变量标记的用户网络协议地址进行比较,如果相同则本行日志的用户网络协议地域信息为临时变量标记的用户网络协议地域地址,否则启动网络协议地址-地域信息匹配机制,重新对本行地域信息进行匹配,并更新临时变量标记的用户网络协议地址和临时变量标记的用户网络协议地域地址,从而成倍减少网络协议地址-地域信息匹配操作。

本发明是通过以下技术方案得以实现的:

一种网络协议地址-地域信息减少重复匹配的方法,包括如下步骤:

步骤s1,获取结果日志集文本文件;

步骤s2,读取文本文件中的一条日志记录;

步骤s3,获取本条日志记录中的用户网络协议地址,将本条日志记录中的用户网络协议地址与临时变量标记的用户网络协议地址进行匹配:若匹配成功,则本条日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址,返回步骤s2读取下一条日志记录,直至结束;否则,进行步骤s4;

步骤s4,对本条日志记录中的用户网络协议地址进行地域信息匹配,并更新临时变量标记的用户网络协议地址和临时变量标记的用户网络协议地域地址,返回步骤s2读取下一条日志记录,直至结束;

其中,初次匹配时的临时变量标记的用户网络协议地址、临时变量标记的用户网络协议地域地址为预设值。

作为优选,所述步骤s2具体包括:当读取日志记录为空时,结束操作,否则继续执行。

作为优选,所述步骤s3具体包括:

步骤s31获取本条日志记录中的用户网络协议地址;

步骤s32将本条日志记录中的用户网络协议地址与临时变量标记的用户网络协议地址进行比较,若两者相等,则匹配成功,本条日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址;否则,进行步骤4。

作为优选,所述步骤s3还包括,在执行步骤s32之前,当本条日志记录中的用户网络协议地址为空时,则返回步骤s2,直至结束,否则进行步骤s32。

作为优选,所述步骤s3还包括,在执行步骤s32之前,当本条日志记录中的用户网络协议地址为空或乱码时,将本条日志记录中的用户网络协议地域信息匹配为错误变量标记的用户网络协议地域地址,返回步骤s2,直至结束,否则进行步骤s32。

作为优选,所述步骤s4具体包括:

步骤s41,对本条日志记录中的用户网络协议地址进行地域信息匹配,获得匹配后的本条日志记录中的用户网络协议地域信息;

步骤s42,将临时变量标记的用户网络协议地址更新为本条日志记录中的用户网络协议地址,将临时变量标记的用户网络协议地域地址更新为本条日志记录中的用户网络协议地域信息。

作为优选,本条日志记录中的用户网络协议地址进行的地域信息匹配是在地理信息地域编码表中进行。

一种网络协议地址-地域信息减少重复匹配的系统,包括:

日志集文本文件获取模块;

日志信息读取模块,用于读取所述日志集文本文件获取模块中文本文件的日志记录;

用户网络协议地址匹配模块,用于获取所述日志信息读取模块中日志记录的用户网络协议地址,并将读取的日志记录的用户网络协议地址与临时变量标记的用户网络协议地址进行匹配,若匹配成功,则将日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址,若匹配不成功,由地域信息匹配模块重新进行地域信息匹配;

地域信息匹配模块,根据日志记录的用户网络协议地址进行地域信息匹配,并更新临时变量标记的用户网络协议地址和临时变量标记的用户网络协议地域地址;以及

地域信息存储模块,用于存储临时变量标记的用户网络协议地址、临时变量标记的用户网络协议地域地址、由所述用户网络协议地址匹配模块获得的日志记录中的用户网络协议地址和日志记录中的用户网络协议地域信息、由所述地域信息匹配模块获得的日志记录中的用户网络协议地址和日志记录中的用户网络协议地域信息。

作为优选,所述用户网络协议地址匹配模块包括:

获取用户网络协议地址单元,

用户网络协议地址比较单元,用于比较所述获取用户网络协议地址单元内的用户网络协议地址和临时变量标记的用户网络协议地址。

作为优选,地域信息匹配模块包括:

匹配单元,对日志记录中的用户网络协议地址进行地域信息匹配,获得匹配后的日志记录中的用户网络协议地域信息;

更新单元,将临时变量标记的用户网络协议地址更新为日志记录中的用户网络协议地址,将临时变量标记的用户网络协议地域地址更新为日志记录中的用户网络协议地域信息。

本发明具有以下有益效果:

本发明一种网络协议地址-地域信息减少重复匹配的方法及系统,其对连续重复性的数据日志仅在首次进行地域信息匹配机制,之后按记忆性处理将后第二条起重复的数据日志直接匹配第一条数据日志的地域信息,大大提高了海量数据包用户网络协议-地域信息的匹配效率。

附图说明

图1为本发明一种网络协议地址-地域信息减少重复匹配的方法的总流程图;

图2为图1中步骤s3的流程图;

图3为图1中步骤s4的流程图;

图4为本发明一种网络协议地址-地域信息减少重复匹配的系统的原理框图;

图5为图4中用户网络协议地址匹配模块的原理框图;

图6为图4中地域信息匹配模块的原理框图。

具体实施方式

以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。

实施例一

如图1-3,本发明一种网络协议地址-地域信息减少重复匹配的方法,包括以下步骤:

步骤s1,获取结果日志集文本文件。

路由器上报给服务器的海量上行文件很多,下述以cathpkt为例进行说明。一个cathpkt文件中有几百万个数据包,每个数据包通过协议解析后对应txt文件(文本文件)中的一条日志记录,且每条日志记录内包含用户ip。也就是说,一个txt文件包含cathpkt文件解析后的几百万个数据包的日志记录。

步骤s2,读取文本文件中的一条日志记录。

本发明按顺序读取日志记录,每次读取一条,进行匹配。当读取日志记录为空时,结束操作,否则继续执行该匹配方法。

步骤s3,获取本条日志记录中的用户网络协议地址,将本条日志记录中的用户网络协议地址与临时变量标记的用户网络协议地址进行匹配:若匹配成功,则本条日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址,返回步骤s2读取下一条日志记录,直至结束;否则,进行步骤s4。

具体为:

步骤s31,获取本条日志记录中的用户网络协议地址;

步骤s32将本条日志记录中的用户网络协议地址与临时变量标记的用户网络协议地址进行比较,若两者相等,则匹配成功,本条日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址;否则,进行步骤4。

在进行匹配前,预先设置临时变量标记的用户网络协议地址和临时变量标记的用户网络协议地域地址。进行首次匹配时,将获取的第一条日志记录中的用户网络协议地址与临时变量标记的用户网络协议地址进行比较,若相等,则将第一条日志记录中的用户网络协议地域信息匹配为预先设置的临时变量标记的用户网络协议地域地址;不相等,则进行步骤4。之后的匹配,将获取的本条日志记录中的用户网络协议地址ip_now与临时变量标记的用户网络协议地址ip_tag比较,此时临时变量标记的用户网络协议地址ip_tag一般为前一条日志记录中的临时变量标记的用户网络协议地址ip_last,若相等ip_now==ip_tag,则将本条日志记录中的用户网络协议地域信息匹配为前一条日志记录中的用户网络协议地域地址ip_last_locate_tag。

为了避免获取的用户网络协议地址为空时,造成多余无效重复匹配操作,在执行步骤s32之前,当本条日志记录中的用户网络协议地址为空时,则返回步骤s2,直接进入下条记录读取操作,直至结束,否则进行步骤s32。

为了核准地域地址,对获取的用户网络协议地址为空或乱码的情况,进行特殊处理。在执行步骤s32之前,当本条日志记录中的用户网络协议地址为空或乱码时,将本条日志记录中的用户网络协议地域信息匹配为错误变量标记的用户网络协议地域地址ip_error_tag,返回步骤s2,直至结束,否则进行步骤s32。之后核准时,通过ip_error_tag重新确定地域信息。也避免错误执行不必要流程,当匹配为ip_error_tag后,直接进入下条记录读取操作。

步骤s4,对本条日志记录中的用户网络协议地址进行地域信息匹配,并更新临时变量标记的用户网络协议地址和临时变量标记的用户网络协议地域地址,返回步骤s2读取下一条日志记录,直至结束。

具体为:

步骤s41,对本条日志记录中的用户网络协议地址进行地域信息匹配,获得匹配后的本条日志记录中的用户网络协议地域信息。

利用第三方运营商提供的ip库,或利用发明专利cn103164475a中公开的合并ip库,启动地域信息匹配机制。

步骤s42,将临时变量标记的用户网络协议地址更新为本条日志记录中的用户网络协议地址,将临时变量标记的用户网络协议地域地址更新为本条日志记录中的用户网络协议地域信息。

对数据进行地域信息匹配后,获得本条日志记录中的用户网络协议地域信息。则将本条日志记录中的用户网络协议地域信息作为下一条记录进行匹配时的临时变量标记的用户网络协议地域地址;并将本条日志记录中的用户网络协议地址作为下一条记录进行匹配时的临时变量标记的用户网络协议地址。

为此,每次进行地域信息匹配前,都将当前记录与前一条记录进行记忆性比对,对连续重复的记录,直接记忆匹配,无需重复一个新的地域信息匹配过程。

其中,本条日志记录中的用户网络协议地址进行的地域信息匹配是在地理信息地域编码表中进行。该地理信息地域编码表可设计为高频使用地域编码表和低频使用地域编码表。如将使用频率大于等于10万次/每天的网络协议地址列入高频使用地域编码表中,将网络协议地址-地域信息编码表中使用频率小于10万次/每天的网络协议地址列入低频使用地域编码表中。依次查询高频使用地域编码表和低频使用地域编码表,以提高地域信息匹配速度。更进一步,还可对高频使用地域编码表内的网络协议地址再按照频率从高到低排序,将低频使用地域编码表内的网络协议地址也按照频率从高到低排序。

实施例二

如图4-6,本发明一种网络协议地址-地域信息减少重复匹配的系统包括日志集文本文件获取模块、日志信息读取模块、用户网络协议地址匹配模块、地域信息匹配模块、地域信息存储模块。所述日志集文本文件获取模块依次连接所述日志信息读取模块、所述用户网络协议地址匹配模块、地域信息匹配模块。所述用户网络协议地址匹配模块和所述地域信息匹配模块分别连接所述地域信息存储模块。

所述地域信息存储模块,用于存储临时变量标记的用户网络协议地址、临时变量标记的用户网络协议地域地址、由所述用户网络协议地址匹配模块获得的日志记录中的用户网络协议地址和日志记录中的用户网络协议地域信息、由所述地域信息匹配模块获得的日志记录中的用户网络协议地址和日志记录中的用户网络协议地域信息。

日志集文本文件获取模块,用于获取文件协议解析处理后的结果日志集txt文件。路由器上报给服务器的海量上行文件很多,下述以cathpkt为例进行说明。一个cathpkt文件中有几百万个数据包,每个数据包通过协议解析后对应txt文件(文本文件)中的一条日志记录,且每条日志记录内包含用户ip。也就是说,一个txt文件包含cathpkt文件解析后的几百万个数据包的日志记录。

日志信息读取模块,用于读取所述日志集文本文件获取模块中文本文件的日志记录。该模块每次读取一条日志记录。当读取日志记录为空时,再重新读取下一条日志记录。

用户网络协议地址匹配模块,用于获取所述日志信息读取模块中日志记录的用户网络协议地址,并将读取的日志记录的用户网络协议地址与临时变量标记的用户网络协议地址进行匹配,若匹配成功,则将日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址,若匹配不成功,由地域信息匹配模块重新进行地域信息匹配。

进一步,所述用户网络协议地址匹配模块包括获取用户网络协议地址单元和用户网络协议地址比较单元。所述用户网络协议地址单元将获得的用户网络协议地址送入所述用户网络协议地址比较单元,所述比较单元比较所述获取用户网络协议地址单元内的用户网络协议地址和存储在所述地域信息存储模块内的临时变量标记的用户网络协议地址。若两者相等,则匹配成功,本条日志记录中的用户网络协议地域信息匹配为临时变量标记的用户网络协议地域地址,并将本条日志记录中的用户网络协议地域信息存储在所述地域信息存储模块中;否则,通过所述地域信息匹配模块进行地域信息匹配。

为了核准地域地址,对获取的用户网络协议地址为空或乱码的情况,进行特殊处理。则所述用户网络协议地址匹配模块还包括错误标识单元。当本条日志记录中的用户网络协议地址为空或乱码时,所述错误标识单元将本条日志记录中的用户网络协议地域信息匹配为错误变量标记的用户网络协议地域地址ip_error_tag,之后进行下一条记录读取操作。以后需要核准ip地域信息时,对已标记有ip_error_tag的信息重新确定地域信息,这样避免错误执行不必要的流程。

地域信息匹配模块,根据日志记录的用户网络协议地址进行地域信息匹配,并更新临时变量标记的用户网络协议地址和临时变量标记的用户网络协议地域地址。

进一步,所述地域信息匹配模块包括匹配单元和更新单元。所述匹配单元对日志记录中的用户网络协议地址进行地域信息匹配,获得匹配后的日志记录中的用户网络协议地域信息,将匹配后的日志记录中的用户网络协议地域信息存入地域信息存储模块中。更新单元将临时变量标记的用户网络协议地址更新为日志记录中的用户网络协议地址,将临时变量标记的用户网络协议地域地址更新为日志记录中的用户网络协议地域信息。更新后的值在所述地域信息存储模块内反应。

所述匹配单元在地理信息地域编码表中进行。该地理信息地域编码表可设计为高频使用地域编码表和低频使用地域编码表。如将使用频率大于等于10万次/每天的网络协议地址列入高频使用地域编码表中,将网络协议地址-地域信息编码表中使用频率小于10万次/每天的网络协议地址列入低频使用地域编码表中。依次查询高频使用地域编码表和低频使用地域编码表,以提高地域信息匹配速度。更进一步,还可对高频使用地域编码表内的网络协议地址再按照频率从高到低排序,将低频使用地域编码表内的网络协议地址也按照频率从高到低排序。所述匹配单元也可在第三运营商提供的ip库内进行,或利用如发明专利cn103164475a中公开的合并ip库,启动地域信息匹配机制。

本发明系统可在实施例一的方法下实现减少重复匹配过程。

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

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