一种高频IP地址获取方法、系统、存储介质及终端设备与流程

文档序号:22436679发布日期:2020-10-02 10:29阅读:55来源:国知局
一种高频IP地址获取方法、系统、存储介质及终端设备与流程

本发明涉及数据处理技术领域,特别涉及一种高频ip地址获取方法、系统、存储介质及终端设备。



背景技术:

应用程序通过网络数据与服务器交互,ip地址是网络数据的重要标识,可以帮助手机等设备从大量的网络数据中筛选出目标ip地址对应发送的网络数据,从而有助于对目标网络数据进行各种处理优化行为,例如对目标网络数据进行优先处理等。

然而,ip地址经常是变化的,即使是同一个应用程序时间不同,业务不同使用的ip地址也不相同,即使通过协议、长度等等特征条件将满足特定条件的ip地址筛选出来,所筛选出来的ip地址依然是大量且多变的,如果把所有这些满足特定条件的ip地址都提取出来并对其均进行处理优化就会有资源的浪费,甚至在资源不足的时候无法正确的分配资源,达不到预期的处理效果。



技术实现要素:

基于此,本发明的目的是提供一种高频ip地址获取方法、系统、存储介质及终端设备,以从大量的网络数据中获取出高频ip地址,这样后续设备就可以仅对高频ip地址对应的数据进行处理优化,从而避免造成资源的浪费。

根据本发明实施例的一种高频ip地址获取方法,所述方法包括:

获取满足预设条件的网络数据包,并从所述网络数据包中提取出ip地址;

判断所述ip地址是否在第一ip地址队列中;

若不在所述第一ip地址队列中,则将所述ip地址添加到所述第一ip地址队列中;

若在所述第一ip地址队列中,则将所述ip地址从所述第一ip地址队列中移除;

将所述ip地址添加到第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址。

另外,根据本发明上述实施例的一种高频ip地址获取方法,还可以具有如下附加的技术特征:

进一步地,在将所述ip地址从所述第一ip地址队列中移除的步骤之后,还包括:

判断所述ip地址是否在所述第二ip地址队列中;

若不在所述第二ip地址队列中,则执行将所述ip地址添加到所述第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址的步骤。

进一步地,在判断所述ip地址是否在第一ip地址队列中的步骤之前,还包括:

判断所述ip地址是否在所述第二ip地址队列中;

若不在所述第二ip地址队列中,则执行判断所述ip地址是否在第一ip地址队列中的步骤。

进一步地,在判断所述ip地址是否在所述第二ip地址队列中的步骤,还包括:

若在所述第二ip地址队列中,则将所述ip地址移至所述第二ip地址队列的队尾。

进一步地,在将所述ip地址从所述第一ip地址队列中移除的步骤之前,还包括:

判断所述ip地址的出现次数是否达到预设次数;

若是,则执行将所述ip地址从所述第一ip地址队列中移除的步骤。

进一步地,将所述ip地址添加到所述第一ip地址队列中的步骤包括:

判断所述第一ip地址队列中是否存在空位;

若是,则将所述ip地址添加到所述第一ip地址队列的空位中;

若否,则将所述ip地址添加到所述第一ip地址队列的队尾。

进一步地,所述第一ip地址队列为固定长度的队列,在将所述ip地址添加到所述第一ip地址队列的队尾的步骤之后,还包括:

移除所述第一ip地址队列的队首ip地址。

进一步地,在将所述ip地址确定为新增的高频ip地址的步骤之后,还包括:

上报所述新增的高频ip地址。

进一步地,将所述ip地址添加到所述第二ip地址队列中的步骤包括:

将所述ip地址添加到所述第二ip地址队列的队尾。

进一步地,所述第二ip地址队列为固定长度的队列,在将所述ip地址添加到所述第二ip地址队列的队尾的步骤之后,还包括:

判断所述第二ip地址队列的队列长度是否超出固定长度;

若是,移除所述第二ip地址队列的队首ip地址并上报。

根据本发明实施例的一种高频ip地址获取装置,所述装置包括:

地址提取模块,用于获取满足预设条件的网络数据包,并从所述网络数据包中提取出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为本发明实施例中提供的手机的结构示意图;

图2为本发明第一实施例中的高频ip地址获取方法的流程图;

图3为本发明第二实施例中的高频ip地址获取方法的流程图;

图4为本发明第三实施例中的高频ip地址获取方法的流程图;

图5为本发明第四实施例中的高频ip地址获取装置的结构示意图;

图6为本发明第五实施例中的终端设备的结构示意图。

以下具体实施方式将结合上述附图进一步说明本发明。

具体实施方式

为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。

需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

本申请实施例提供的高频ip地址获取方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmentedreality,ar)/虚拟现实(virtualreality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、上网本、个人数字助理(personaldigitalassistant,pda)等终端设备上,本申请实施例对终端设备的具体类型不作任何限制。

以所述终端设备为手机为例。图1示出的是与本申请实施例提供的手机的部分结构的框图。参考图1,手机包括:射频(radiofrequency,rf)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(wirelessfidelity,wifi)模块170、处理器180、以及电源190等部件。本领域技术人员可以理解,图1中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图1对手机的各个构成部件进行具体的介绍:

rf电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,rf电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte))、电子邮件、短消息服务(shortmessagingservice,sms)等。

存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元130可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元140可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图1中,触控面板131与显示面板141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在手机移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路160、扬声器161,传声器162可提供用户与手机之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经rf电路110以发送给比如另一手机,或者将音频数据输出至存储器120以便进一步处理。

wifi属于短距离无线传输技术,手机通过wifi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了wifi模块170,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理单元;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。

手机还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头。可选地,摄像头在手机的上的位置可以为前置的,也可以为后置的,本申请实施例对此不作限定。

可选地,手机可以包括单摄像头、双摄像头或三摄像头等,本申请实施例对此不作限定。

例如,手机可以包括三摄像头,其中,一个为主摄像头、一个为广角摄像头、一个为长焦摄像头。

可选地,当手机包括多个摄像头时,这多个摄像头可以全部前置,或者全部后置,或者一部分前置、另一部分后置,本申请实施例对此不作限定。

另外,尽管未示出,手机还可以包括蓝牙模块等,在此不再赘述。

以下实施例可以在具有上述硬件结构的手机上实现。以下实施例将以手机为例,对本申请实施例提供的高频ip地址获取方法进行说明。

请参阅图2,所示为本发明第一实施例中的高频ip地址获取方法,作为示例而非限定,该方法可以应用于上述手机中,所述手机可通过软件和/或硬件来实现所述方法,所述高频ip地址获取方法具体包括步骤s01-步骤s05。

步骤s01,获取满足预设条件的网络数据包,并从所述网络数据包中提取出ip地址。

其中,所述预设条件可以包括但不限于协议、长度、大小、数据所属的进程等,即通过协议、长度、大小、数据所属的进程等设定条件来筛选出满足特定条件的网络数据包。在获取得到网络数据包后,通过对网络数据包进行解析,以获得该网络数据对应的ip地址。

在具体实施时,手机等终端设备可以实时或定时地通过预设的协议、长度、大小、数据所属的进程等设定条件来对所接收到的网络数据包进行筛选,以筛选出当前满足特定条件的网络数据包,并解析出其ip地址。

步骤s02,判断所述ip地址是否在第一ip地址队列中。

其中,当判断到所述ip地址在第一ip地址队列中时,执行步骤s04;当判断到所述ip地址不在第一ip地址队列中时,执行步骤s03。

步骤s03,将所述ip地址添加到所述第一ip地址队列中。

步骤s04,将所述ip地址从所述第一ip地址队列中移除,并判断所述ip地址是否在第二ip地址队列中。其中,当判断到所述ip地址不在第二ip地址队列中时,执行步骤s05。

其中,第一ip地址队列优选为固定长度的队列,即第一ip地址队列中只能排列固定个数的ip地址,例如当固定长度为10时,则第一ip地址队列中最多排列10个ip地址。

需要说明的是,在步骤s04当中,ip地址从第一ip地址队列中移除后,该ip地址在第一ip地址队列中所占的队位将被标置为空位,后续过来的ip地址(步骤s01新获取得到的ip地址)可添加到第一ip地址队列中的空位中,当第一ip地址队列中不存在空位时,ip地址可添加到第一ip地址队列的队尾,由于第一ip地址队列为固定长度的队列时,在将ip地址添加到第一ip地址队列的队尾后,第一ip地址队列的队列长度将超出固定长度,此时可将第一ip地址队列的队首的ip地址移除;

作为另一种实现方式,无论第一ip地址队列中是否存在空位,都可以将后续过来的ip地址添加到第一ip地址队列的队尾,这样第一ip地址队列中的ip地址将按时间先后顺序进行排列,这样所移除的队首ip地址为当前队列中最前获取到的ip地址。

基于步骤s02-步骤s04,在本实施例当中,同一ip地址需要先后打中第一ip地址队列2次,才能进入到第二ip地址队列的判定环节。例如,当目标ip地址a被提取出时,此时若第一ip地址队列中不存在目标ip地址a,目标ip地址a将被添加到第一ip地址队列中,随后当目标ip地址a被再次提取出时,若第一ip地址队列中的目标ip地址a未被移除,则将目标ip地址a从第一ip地址队列中移除,并进入到第二ip地址队列的判定环节;而若经过很长一段时间,目标ip地址a才被再次提取出,由于目标ip地址a会在第一ip地址队列中逐渐移至队首,最终被移除,此时第一ip地址队列中不存在目标ip地址a,目标ip地址a又将被添加到第一ip地址队列中。

步骤s05,将所述ip地址添加到所述第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址。

其中,第二ip地址队列中排列的ip地址均为通过第一ip地址队列筛选出的高频ip地址,当步骤s04判断到所述ip地址在第二ip地址队列中时,代表所述ip地址之前已被确定为高频ip地址,不属于新增的高频ip地址。当步骤s04判断到所述ip地址不在第二ip地址队列中时,代表所述ip地址之前未被确定为高频ip地址,则将所述ip地址添加到第二ip地址队列中,并将ip地址确定为新增的高频ip地址。当然,本发明不限于此,在一些可选实施例当中,经过第一ip地址队列筛选出的高频ip地址也可以不经过第二ip地址队列的判断,即在将ip地址从第一ip地址队列中移除之后,直接将ip地址添加到第二ip地址队列中,并将ip地址确定为新增的高频ip地址。同样地,第二ip地址队列也优选为固定长度的队列,即第二ip地址队列中只能排列固定个数的ip地址,例如当固定长度为10时,则第二ip地址队列中最多排列10个ip地址。在具体实施时,当步骤s04判断到所述ip地址不在第二ip地址队列中时,可将所述ip地址添加到第二ip地址队列的队尾,若此时第二ip地址队列的队列长度超出固定长度,可将第二ip地址队列的队首的ip地址移除;由于每次确定的新增高频ip地址都排到队尾,使得第二ip地址队列中的高频ip地址将按时间先后顺序进行排列,这样所移除的队首ip地址为当前队列中最前被确定的高频ip地址。

综上,本发明上述实施例当中的高频ip地址获取方法,通过设置预设条件、第一ip地址队列和第二ip地址队列来逐级对ip地址进行筛选,只有同时满足数据满足预设条件、ip地址在第一ip地址队列中、以及ip地址不在第二ip地址队列中三个设定条件,才会被确定为新增的高频ip地址,从而能够在大量的网络数据中获取出高频ip地址,这样后续设备就可以仅对高频ip地址对应的数据进行处理优化,从而避免造成资源的浪费。

请参阅图3,所示为本发明第二实施例中的高频ip地址获取方法,作为示例而非限定,该方法可以应用于上述手机中,所述手机可通过软件和/或硬件来实现所述方法,所述方法具体包括步骤s11至步骤s17。

步骤s11,通过预设的协议、长度、大小和数据所属的进程来筛选出满足特定条件的网络数据包,并从所述网络数据包中提取出ip地址。

在具体实施时,手机等终端设备可以实时或定时地通过预设的协议、长度、大小、数据所属的进程等设定条件来对所接收到的网络数据包进行筛选,以筛选出当前满足特定条件的网络数据包,并解析出其ip地址。

步骤s12,判断所述ip地址是否在第一ip地址队列中。

其中,当步骤s12判断到所述ip地址不在第一ip地址队列中时,执行步骤s13;当步骤s12判断到所述ip地址在第一ip地址队列中时,执行步骤s14。

步骤s13,将所述ip地址添加到所述第一ip地址队列中。

其中,步骤s13具体包括:

判断所述第一ip地址队列中是否存在空位;

若是,则将所述ip地址添加到所述第一ip地址队列的空位中;

若否,则将所述ip地址添加到所述第一ip地址队列的队尾。

在一些可选实施例当中,当所述第一ip地址队列为固定长度的队列时,在将所述ip地址添加到所述第一ip地址队列的队尾的步骤之后,所述方法还可以包括:

移除所述第一ip地址队列的队首ip地址。由于第一ip地址队列中只能排列固定个数的ip地址,在ip地址排满的情况下,再将新的ip地址添加到第一ip地址队列的队尾,则第一ip地址队列的队首ip地址将被移除,此移除过程,实际是将ip地址队列整体往前挪一位,不产生空位,队首ip地址被移除后,原本排在第二位的ip地址变为队首ip地址。

步骤s14,判断所述ip地址的出现次数是否达到预设次数。

其中,当步骤s14判断到所述ip地址的出现次数达到预设次数时,执行步骤s15;当步骤s14判断到所述ip地址的出现次数未达到预设次数时,则不动作或返回执行步骤s11,以提取新的ip地址进行分析。

具体地,所述预设次数≥2,即同一ip地址需要先后打中第一ip地址队列至少2次,才能进入到第二ip地址队列的判定环节。例如,假设预设次数为3,当目标ip地址a被提取出时,此时第一ip地址队列中不存在目标ip地址a,目标ip地址a将被添加到第一ip地址队列中,随后目标ip地址a还需要先后被提取出两次,且这两次都需要满足目标ip地址a在第一ip地址队列中未被移除,则目标ip地址a才会从第一ip地址队列中移除,并进入到第二ip地址队列的判定环节,从而提高了第一ip地址队列的筛选门槛,进而提高了高频ip地址的筛选门槛。

在具体实施时,所述预设次数可以根据高频ip地址的筛选要求进行设置,所述预设次数越大,所筛选出的高频ip地址的出现频率越高。

步骤s15,将所述ip地址从所述第一ip地址队列中移除,并判断所述ip地址是否在第二ip地址队列中。其中,当所述ip地址从所述第一ip地址队列中移除后,所述ip地址的出现次数会被清零。

其中,当步骤s15判断到所述ip地址在第二ip地址队列中时,执行步骤s17;当步骤s15判断到所述ip地址不在第二ip地址队列中时,执行步骤s16。

步骤s16,将所述ip地址添加到所述第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址,并上报所述新增的高频ip地址。

具体地,在步骤s16当中,将所述ip地址添加到所述第二ip地址队列中的步骤具体包括:

将所述ip地址添加到所述第二ip地址队列的队尾。

其中,所述第二ip地址队列为固定长度的队列,在将所述ip地址添加到所述第二ip地址队列的队尾的步骤之后,还包括:

判断所述第二ip地址队列的队列长度是否超出固定长度;

若是,移除所述第二ip地址队列的队首ip地址并上报。由于第二ip地址队列中只能排列固定个数的ip地址,在ip地址排满的情况下,再将新的高频ip地址添加到第二ip地址队列的队尾,则第二ip地址队列的队首ip地址将被移除,此移除过程,实际是将ip地址队列整体往前挪一位,不产生空位,队首ip地址被移除后,原本排在第二位的ip地址变为队首ip地址。由于所述队首ip地址为在此之前所确定的高频ip地址,将队首ip地址删除后进行上报,有利于手机等终端设备的处理器及时获知所删除的高频ip地址,从而及时停止对删除的高频ip地址进行的处理优化行为,从而进一步避免处理器的资源被浪费。

步骤s17,将所述ip地址移至所述第二ip地址队列的队尾,不上报任何消息。

可以理解的,当步骤s15判断到所述ip地址在第二ip地址队列中时,代表所述ip地址之前已被确定为高频ip地址,不属于新增的高频ip地址,则不上报任何消息,使手机等终端设备的处理器保持对现有所确定的高频ip地址进行处理优化。同时,将所述ip地址移至所述第二ip地址队列的队尾的目的在于,使新确定的高频ip地址始终排在第二ip地址队列的队尾,这样被移除的始终是在前被确定的高频ip地址。

其中,步骤s17中的ip地址移动过程具体为:例如,当目标ip地址a在第二ip地址队列的第二位时,则将目标ip地址a从第二位移至队尾,原本处于第三位的ip地址上升至第二位,依次类推,此移动过程不产生空位。

请参阅图4,所示为本发明第三实施例中的高频ip地址获取方法,作为示例而非限定,该方法可以应用于上述手机中,所述手机可通过软件和/或硬件来实现所述方法,所述方法具体包括步骤s21至步骤s27。

步骤s21,获取满足预设条件的网络数据包,并从所述网络数据包中提取出ip地址。

步骤s22,判断所述ip地址是否在所述第二ip地址队列中。

其中,当步骤s22判断到所述ip地址在第二ip地址队列中时,执行步骤s23;当步骤s22判断到所述ip地址不在第二ip地址队列中时,执行步骤s24。

步骤s23,将所述ip地址移至所述第二ip地址队列的队尾,不上报任何消息。

步骤s24,判断所述ip地址是否在第一ip地址队列中。

其中,当步骤s24判断到所述ip地址不在第一ip地址队列中时,执行步骤s25;当步骤s24判断到所述ip地址在第一ip地址队列中时,执行步骤s26-s27。

步骤s25,将所述ip地址添加到所述第一ip地址队列中。

步骤s26,将所述ip地址从所述第一ip地址队列中移除。

步骤s27,将所述ip地址添加到所述第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址。

需要说明的是,本实施例当中的各个步骤的具体实施过程、作用及效果可参见上述第一实施例和第二实施例中的相应内容,在此不再赘述。

本实施例相比于第一实施例和第二实施例,通过在从网络数据包中提取出ip地址之后就先判断ip地址是否在第二ip地址队列中,若在第二ip地址队列中,则直接跳过第一ip地址队的筛选,加快对ip地址的筛选,节约处理器资源,从而提高高频ip地址的获取效率。

本发明另一方面还提供一种高频ip地址获取装置,请查阅图5,所示为本发明第四实施例中的高频ip地址获取装置,示例而非限定,所述装置可应用于上述手机中,所述装置具体可以为手机的处理器,所述装置具体包括:

地址提取模块11,用于获取满足预设条件的网络数据包,并从所述网络数据包中提取出ip地址;

第一判断模块12,用于判断所述ip地址是否在第一ip地址队列中;

第一处理模块13,用于当判断到所述ip地址不在所述第一ip地址队列中时,将所述ip地址添加到所述第一ip地址队列中;

地址移除模块14,用于当判断到所述ip地址在所述第一ip地址队列中时,将所述ip地址从所述第一ip地址队列中移除;

第二处理模块15,用于将所述ip地址添加到所述第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址。

进一步地,在本发明一些可选实施例当中,所述高频ip地址获取装置还可以包括:

第二判断模块,用于在将所述ip地址从所述第一ip地址队列中移除之后,判断所述ip地址是否在所述第二ip地址队列中;若不在所述第二ip地址队列中,则第二处理模块15将所述ip地址添加到所述第二ip地址队列中,并将所述ip地址确定为新增的高频ip地址。

进一步地,在本发明一些可选实施例当中,所述高频ip地址获取装置还可以包括:

第三判断模块,用于在判断所述ip地址是否在第一ip地址队列中的步骤之前,判断所述ip地址是否在所述第二ip地址队列中;若不在所述第二ip地址队列中,则第一判断模块12判断所述ip地址是否在第一ip地址队列中。

进一步地,在本发明一些可选实施例当中,所述高频ip地址获取装置还可以包括:

ip移动模块,用于当判断到所述ip地址在所述第二ip地址队列中时,将所述ip地址移至所述第二ip地址队列的队尾。

进一步地,在本发明一些可选实施例当中,所述高频ip地址获取装置还可以包括:

次数判断模块,用于判断所述ip地址的出现次数是否达到预设次数;

当所述次数判断模块判断到所述ip地址的出现次数达到预设次数时,所述地址移除模块14将所述ip地址从所述第一ip地址队列中移除。

进一步地,在本发明一些可选实施例当中,所述第一处理模块13可以包括:

空位判断单元,用于判断所述第一ip地址队列中是否存在空位;

第一添加单元,用于当判断到所述第一ip地址队列中存在空位时,将所述ip地址添加到所述第一ip地址队列的空位中;以及

第二添加单元,用于当判断到所述第一ip地址队列中不存在空位时,将所述ip地址添加到所述第一ip地址队列的队尾。

进一步地,在本发明一些可选实施例当中,所述第一ip地址队列为固定长度的队列,所述第一处理模块13还可以包括:

移除单元,用于移除所述第一ip地址队列的队首ip地址。

进一步地,在本发明一些可选实施例当中,所述高频ip地址获取装置还可以包括:

信息上报模块,用于上报所述新增的高频ip地址。

进一步地,在本发明一些可选实施例当中,所述第二处理模块15可以包括:

第三添加单元,用于将所述ip地址添加到所述第二ip地址队列的队尾。

进一步地,在本发明一些可选实施例当中,所述第二ip地址队列为固定长度的队列,所述第二处理模块15还可以包括:

长度判断单元,用于判断所述第二ip地址队列的队列长度是否超出固定长度;

移除上报单元,用于当判断到所述第二ip地址队列的队列长度超出固定长度时,移除所述第二ip地址队列的队首ip地址并上报。

上述各模块、单元被执行时所实现的功能或操作步骤与上述方法实施例大体相同,在此不再赘述。

综上,本发明上述实施例当中的高频ip地址获取装置,通过设置预设条件、第一ip地址队列和第二ip地址队列来逐级对ip地址进行筛选,只有同时满足数据满足预设条件、ip地址在第一ip地址队列中、以及ip地址不在第二ip地址队列中三个设定条件,才会被确定为新增的高频ip地址,从而能够在大量的网络数据中获取出高频ip地址,这样后续设备就可以仅对高频ip地址对应的数据进行处理优化,从而避免造成资源的浪费。

本发明另一方面还提出一种终端设备,请参阅图6,所示为本发明第五实施例当中的终端设备,包括存储器120、处理器180以及存储在存储器上并可在处理器上运行的计算机程序30,所述处理器180执行所述程序30时实现如上述的高频ip地址获取方法。

其中,处理器180在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器120中存储的程序代码或处理数据,例如执行访问限制程序等。

其中,存储器120至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器120在一些实施例中可以是终端设备的内部存储单元,例如该终端设备的硬盘。存储器120在另一些实施例中也可以是终端设备的外部存储装置,例如终端设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器120还可以既包括终端设备的内部存储单元也包括外部存储装置。存储器120不仅可以用于存储安装于终端设备的应用软件及各类数据,还可以用于暂时地存储已经输出或者将要输出的数据。

需要指出的是,图6示出的结构并不构成对终端设备的限定,在其它实施例当中,该终端设备可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

综上,本发明上述实施例当中的终端设备,通过设置预设条件、第一ip地址队列和第二ip地址队列来逐级对ip地址进行筛选,只有同时满足数据满足预设条件、ip地址在第一ip地址队列中、以及ip地址不在第二ip地址队列中三个设定条件,才会被确定为新增的高频ip地址,从而能够在大量的网络数据中获取出高频ip地址,这样后续设备就可以仅对高频ip地址对应的数据进行处理优化,从而避免造成资源的浪费。

本发明实施例还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述的高频ip地址获取方法。

本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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