本申请涉及计算机技术领域,更具体地说,涉及一种共享上网检测方法、系统及一种电子设备和一种计算机可读存储介质。
背景技术:
随着科技的发展,各种终端都能够通过无线接入到网络共享资源,这极大地方便了用户的日常生活,但同时带来了一些安全隐患。一些企业为了防止泄密,有严格的上网安全要求,要求控制接入的终端数量和终端类型。
目前,对于共享上网检测主要有以下几种方法:
tcp协议分析方法(ttl值检测,ipid,tcp窗口大小):ttl值检测,通过统计协议特征值,来判断是否存在共享行为,由于不同系统间的初始ttl是不同的,且ttl在终端上可以被修改,导致对识别共享终端的数量作用非常有限;ipid值统计方法,同一个终端ipid值是连续变化的,但这些都是基于流量的,区分和统计非常困难,容易造成误判和漏判;tcp窗口大小,有一定的系统相关性,类似于ttl值检测。
user-agent检测方法:此方法基于ua中含有的系统或是型号信息来识别终端的系统或是具体类型的,达到粗略地统计出共享的终端数量。该方法的不足在于ua的非标准化容易造成误判,相同的系统和型号的终端共享时,基于ua的方法是无法识别出来的,导致漏判严重。
flashcookie检测方法(lso):此方法基于flash插件执行flash脚本,在终端用户pc上种植flashcookie值(lso),达到浏览器之间共享这个本地共享对象(lso)。该方法的不足在于lso的位置不是固定的,终端用户pc上存在多个种植目录,导致同一个pc设置和提供的lso对象并不唯一,容易造成误判。
终端时间检测方法:此方法是基于电脑终端的时钟差异,统计内网共享pc的数量。该方法的不足在于电脑时间的间隔不大,而且电脑上安装的一些软件具有同步时间的功能,导致该方法容易误判,且该方法随着共享电脑的数量增加检测效果会越来越差。
因此,如何解决共享上网检测时容易误判的问题是本领域技术人员需要重点关注的。
技术实现要素:
本申请的目的在于提供一种共享上网检测方法、系统及一种电子设备和一种计算机可读存储介质,以降低终端检测的误判率。
为实现上述目的,本申请提供了一种共享上网检测方法,包括:
获取http请求;
获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;
判断所述终端权值是否大于预设阈值;
如果是,则将所述目标终端判定为有效终端;
统计所有有效终端的终端类型和终端数量。
可选的,所述获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值,包括:
确定所述http请求所属的应用程序,并获取所述应用程序的预设提取规则;
利用所述预设提取规则确定所述目标终端的终端类型,并确定所述预设提取规则的规则权值;
将所述规则权值确定为所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
可选的,所述确定所述http请求所属的应用程序,包括:
抓取所述http请求中的http数据包至应用层;
利用所述应用层判断所述http数据包是否需要重组;
如果是,则等待所述http数据包重组完成后,对重组后http数据包进行数据提取,确定发起所述http请求的应用程序;
如果否,则直接对所述http数据包进行数据提取,确定所述http请求所属的应用程序。
可选的,在获取所述http请求对应的请求权值及目标终端的终端类型之后,还包括:
将所述终端类型、所述应用程序和对应的所述请求权值保存至第一预设列表中;
若预设时间范围内未接收到所述第一预设列表中所述应用程序发送的所述http请求,则将所述应用程序进行删除。
可选的,在将所述应用程序进行删除之后,还包括:
保留所述应用程序对应的所述请求权值,以使下次接收到所述应用程序发送的http请求后提取所述请求权值并进行累加计算。
可选的,所述获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值,包括:
获取所述http请求的预设权值以及所述目标终端的对应的终端类型,并确定所述http请求的总个数;
利用所述预设权值和所述总个数确定所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
可选的,在将所述目标终端判定为有效终端之前,还包括:
获取所述http请求对应的ua类型,并确定所述ua类型的类型个数;
判断所述类型个数是否大于预设类型个数;
如果是,则将所述目标终端判定为有效终端。
可选的,在获取所述http请求对应的ua类型之后,还包括:
将所述终端类型和所述ua类型保存至第二预设列表中。
可选的,在将所述目标终端判定为有效终端之后,还包括:
将更新指令下发至驱动层,以使所述驱动层更新当前用户对应的终端列表中所述目标终端的信息。
为实现上述目的,本申请提供了一种共享上网检测系统,包括:
请求获取模块,用于获取http请求;
权值确定模块,用于获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;
权值判断模块,用于判断所述终端权值是否大于预设阈值;
第一判定模块,用于判断所述目标终端的有效性,如果所述终端权值大于所述预设阈值,则将所述目标终端判定为有效终端;
终端统计模块,用于统计所有有效终端的终端类型和终端数量。
可选的,所述权值确定模块,包括:
规则获取子模块,用于确定所述http请求所属的应用程序,并获取所述应用程序的预设提取规则;
权值确定子模块,用于利用所述预设提取规则确定所述目标终端的终端类型,并确定所述预设提取规则的规则权值;
权值累加子模块,用于将所述规则权值确定为所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
可选的,所述规则获取子模块,包括:
数据包抓取单元,用于抓取所述http请求中的http数据包至应用层;
重组判断单元,用于利用所述应用层判断所述http数据包是否需要重组;
第一提取单元,在所述http数据包需要重组时,所述第一提取单元用于等待所述http数据包重组完成,并对重组后http数据包进行数据提取,确定发起所述http请求的应用程序;
第二提取单元,在所述http数据包无需重组时,所述第二提取单元用于直接对所述http数据包进行数据提取,确定所述http请求所属的应用程序。
可选的,还包括:
保存模块,在获取所述http请求对应的请求权值及目标终端的终端类型之后,所述保存模块用于将所述终端类型、所述应用程序和对应的所述请求权值保存至第一预设列表中;
删除模块,在预设时间范围内未接收到所述第一预设列表中所述应用程序发送的所述http请求之后,所述删除模块用于将所述应用程序进行删除。
可选的,所述权值确定模块,包括:
第一确定子模块,用于获取所述http请求的预设权值以及所述目标终端对应的终端类型,并确定所述http请求的总个数;
第二确定子模块,用于利用所述预设权值和所述总个数确定所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
可选的,还包括:
第二获取模块,在将所述目标终端判定为有效终端之前,所述第二获取模块用于获取所述http请求对应的ua类型,并确定所述ua类型的类型个数;
类型个数判断模块,用于判断所述类型个数是否大于预设类型个数;
第二判定模块,用于判断所述目标终端是否有效,如果所述类型个数大于预设类型个数,则将所述目标终端判定为有效终端。
可选的,还包括:
更新模块,用于将更新指令下发至驱动层,以使所述驱动层更新当前用户对应的终端列表中所述目标终端的信息。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现前述任一种共享上网检测方法。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一种共享上网检测方法。
通过以上方案可知,本申请提供的一种共享上网检测方法,包括:获取http请求;获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;判断所述终端权值是否大于预设阈值;如果是,则将所述目标终端判定为有效终端;统计所有有效终端的终端类型和终端数量。本申请通过预先设定相应的权值,能够在获取到http请求后获取目标终端的类型,并利用http请求对应的请求权值确定目标终端的终端权值,从而根据终端权值和预设阈值的大小比较结果判定终端是否有效,避免了由于信息的非标准、不统一或是终端数量的影响导致的误判,最终得到有效终端的类型及终端数量,实现共享上网检测,以降低终端检测的误判率。
本申请还公开了一种共享上网检测系统及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种共享上网检测方法的流程图;
图2为本申请实施例公开的另一种共享上网检测方法的流程图;
图3为本申请实施例公开的另一种共享上网检测方法的流程图;
图4为本申请实施例公开的另一种共享上网检测方法的流程图;
图5为本申请实施例公开的另一种共享上网检测方法的流程图;
图6为本申请实施例公开的又一种共享上网检测方法的流程图;
图7为本申请实施例公开的又一种共享上网检测方法的流程图
图8为本申请实施例公开的一种具体的共享上网检测方法的流程图;
图9为本申请实施例公开的一种具体示例中共享上网检测功能的实现示意图;
图10为本申请实施例公开的一种共享上网检测系统的结构图;
图11为本申请实施例公开的一种电子设备的结构图;
图12为本申请实施例公开的另一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在现有技术中,对于共享上网检测主要有以下几种方法:tcp协议分析方法,user-agent检测方法,flashcookie检测方法,以及终端时间检测方法。然而,上述方法容易造成误判和漏判。
因此,本申请实施例公开了一种共享上网检测方法,降低了终端检测的误判率。
参见图1,本申请实施例公开的一种共享上网检测方法的流程图,如图1所示,包括:
s101:获取http请求;
s102:获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;
本步骤中,在获取到http请求后,可以利用预设的ua识别引擎识别出http请求对应的请求权值,以及http请求对应的目标终端的终端类型,并在得到各个http请求对应的请求权值后进一步确定目标终端的终端权值,比如,可以将所得到的所有请求权值进行累加进而得到目标终端的终端权值,也可以利用请求权值中的一些预设特征值确定目标终端的终端权值,在本技术方案的启示下,本领域技术人员利用其他方式通过所述请求权值确定目标终端的终端权值的方法也在本公开所保护的范围内。
需要说明的是,ua(useragent,用户代理),指一串特殊的字符,字符串中往往包含客户端的操作系统及版本、cpu类型、终端类型和浏览器等相关信息。本实施例中提及的ua识别引擎,是指专门针对http请求的ua字段编写的算法,该算法建立的一个体系结构,能够对http请求进行识别,从而获取权值、终端类型信息。
s103:判断所述终端权值是否大于预设阈值;
s104:如果是,则将所述目标终端判定为有效终端;
进一步地,判断终端权值是否满足预设阈值,若终端权值大于预设阈值,则表示目标终端满足预设条件,将目标终端判定为有效终端。
s105:统计所有有效终端的所述终端类型和终端数量。
可以理解的是,共享上网是指多个终端之间通过代理共享的方式访问网络,例如,内网用户可以通过路由器代理多个终端来进行上网,或内网终端通过第三方工具将wifi共享给其他终端,达到共享上网的目的。而共享上网检测,即指确定当前共享上网的终端的类型和终端数量。本实施例通过对每个http请求进行识别,最终确定有效终端,统计有效终端的数量及对应的类型,得到共享上网检测结果。
通过以上方案可知,本申请提供的一种共享上网检测方法,包括:获取http请求;获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;判断所述终端权值是否大于预设阈值;如果是,则将所述目标终端判定为有效终端;统计所有有效终端的终端类型和终端数量。本申请通过预先设定相应的权值,能够在获取到http请求后获取目标终端的类型,并利用http请求对应的权值确定目标终端的终端权值,从而根据终端权值和预设阈值的大小比较结果判定终端是否有效,避免了由于信息的非标准、不统一或是终端数量的影响导致的误判,最终得到有效终端的类型及终端数量,实现共享上网检测,以降低终端检测的误判率。
在一种具体实施方式中,ua识别引擎利用应用程序权值确定终端权值。具体的:
参见图2,本申请实施例提供的另一种共享上网检测方法的流程图,如图2所示,包括:
s201:获取http请求;
s202:确定所述http请求所属的应用程序,并获取所述应用程序的预设提取规则;
在具体实施中,获取到http请求后,利用ua识别引擎识别http请求属于哪个应用程序,即是由哪个应用程序发起的,并获取应用程序的预设提取规则。
s203:利用所述预设提取规则确定所述目标终端的终端类型,并确定所述预设提取规则的规则权值;
本步骤中,每种应用程序的提取规则都预先设定了相应的规则权值,根据预设提取规则可以提取到对应的终端型号及规则权值。
具体地,本实施例中应用程序的规则权值可能为一个或多个,一个应用程序将会根据数据包的特征或类型提取得到对应不同的多个权值,本实施例中,为了能够更快的实现对终端的识别,将从上述多个权值中提取出最大的权值更新为当前应用程序对应的规则权值。
s204:将所述规则权值确定为所述请求权值,将所有所述请求权值进行累加,得到所述终端权值;
进一步地,也可以将所有规则权值直接进行累加,从而得到最终的终端权值。累加的过程需要注意,每个应用程序对应的规则权值只能累加一次,且为了有效的防止误判,至少2到3个应用程序才能识别出一个终端。
s205:判断所述终端权值是否大于预设阈值;
s206:如果是,则将所述目标终端判定为有效终端;
s207:统计所有有效终端的所述终端类型和终端数量。
本申请实施例公开了另一种共享上网检测方法,相对于上一实施例,本实施例对确定http请求所属的应用程序的过程作了进一步的说明和优化。具体的:
参见图3,本申请实施例提供的另一种共享上网检测方法的流程图,如图3所示,包括:
s301:获取http请求;
s302:抓取所述http请求中的http数据包至应用层;
本步骤中,当http请求经过ac设备时,针对http请求中get请求和post请求进行抓包,每个连接最多抓5包,并利用零拷贝的方式将http数据包发送至应用层。可以理解的是,本步骤利用零拷贝的方式将数据包抓取至应用层后再对数据包进行处理,使得处理更加的高效。
s303:利用所述应用层判断所述http数据包是否需要重组;
s304:如果是,则等待所述http数据包重组完成后,对重组后http数据包进行数据提取,确定发起所述http请求的应用程序;
s305:如果否,则直接对所述http数据包进行数据提取,确定所述http请求所属的应用程序;
可以理解的是,在应用层获取到数据包后,判断数据包是否为分包后的数据包,如果是,则先将数据包保留,直至重组完成后出包,对重组后数据包进行数据提取;如果否,则可以直接对http数据包进行数据提取,最终确定发起http请求的应用程序。
进一步地,上述对http数据包进行数据提取可以具体为:提取重组后http数据包的url、refer及user-agent字段,并对提取到的字段进行dfa解析,确定相应的应用程序。
s306:获取所述应用程序的预设提取规则,利用所述预设提取规则确定所述目标终端的终端类型,并确定所述预设提取规则的规则权值;
本步骤中,利用应用程序的信息查询预设规则表,获取当前应用程序对应的预设提取规则。其中,预设规则表中保存有每个应用程序的提取规则,能够通过提取规则获取http请求对应的终端类型和权值。
s307:将所述规则权值确定为所述请求权值,将所有所述请求权值进行累加,得到所述终端权值;
s308:判断所述终端权值是否大于预设阈值;
s309:如果是,则将所述目标终端判定为有效终端;
s310:统计所有有效终端的所述终端类型和终端数量。
本申请实施例公开了另一种共享上网检测方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
参见图4,本申请实施例提供的另一种共享上网检测方法的流程图,如图4所示,包括:
s401:获取http请求;
s402:确定所述http请求所属的应用程序、对应的请求权值及目标终端的终端类型,将所述终端类型、所述应用程序和对应的所述请求权值保存至第一预设列表中;
s403:利用所述第一预设列表中的所述请求权值确定所述目标终端的终端权值,并判断所述终端权值是否大于预设阈值;
s404:如果是,则将所述目标终端判定为有效终端;
s405:统计所有有效终端的所述终端类型和终端数量。
可以理解的是,本实施例中,在获取所述http请求对应的请求权值及目标终端的终端类型之后,进一步将获取得到的终端类型、应用程序和对应的请求权值保存至第一预设列表中,进而通过第一预设列表确定最终的终端权值,并基于终端权值和预设阈值判断目标终端是否为有效终端。
在上述实施例的基础上,作为一种优选实施方式,本申请实施例公开了另一种共享上网检测方法,相对于上一实施例,本实施例为了防止误判,进一步设置了超时机制。具体的:
参见图5,本申请实施例提供的另一种共享上网检测方法的流程图,如图5所示,包括:
s501:获取http请求;
s502:确定所述http请求所属的应用程序、对应的请求权值及目标终端的终端类型,将所述终端类型、所述应用程序和对应的所述请求权值保存至第一预设列表中;
s503:利用所述第一预设列表中的所述请求权值确定所述目标终端的终端权值,并判断所述终端权值是否大于预设阈值;
s504:如果是,则将所述目标终端判定为有效终端;
s505:统计所有有效终端的所述终端类型和终端数量;
s506:若预设时间范围内未接收到所述第一预设列表中所述应用程序发送的所述http请求,则将所述应用程序进行删除。
需要说明的是,本实施例设置了相应的超时机制,若在预设时间范围内未接收到第一预设列表中某一应用程序发送的http请求,则将应用程序进行删除,并随着时间将权值逐渐递减直至降为1,防止不停的累加误判包导致的共享上网检测误判。其中,预设时间范围可以在实施过程中视具体情况而定,本发明不做限定。
另外,本实施例将所述应用程序进行删除之后,将仍然保留所述应用程序对应的请求权值,以使下次若再次接收到该应用程序发送的http请求后,可以提取该请求权值并继续进行累加计算。
在另一种具体实施方式中,对于每个http请求,ua识别引擎并没有编写设定所有应用程序的提取规则,由于应用程序太多,完全覆盖将浪费大量的时间物力资源,所以对于没有设定提取规则的应用程序,将把该程序认作特殊的应用程序。但是由于这种特殊应用程序的权值相对较低,可能较难达到终端权值的预设阈值,所以本申请实施例提供了又一种共享上网检测方法,能够利用http请求的数量和预设权值确定请求权值进而确定终端权值,具体的:
参见图6,本申请实施例提供的又一种共享上网检测方法的流程图,如图6所示,包括:
s601:获取http请求;
s602:获取所述http请求的预设权值以及对应的所述终端类型,并确定所述http请求的总个数;
s603:利用所述预设权值和所述总个数确定所述请求权值,对所有所述请求权值进行累加,得到所述终端权值;
s604:判断所述终端权值是否大于预设阈值;
s605:如果是,则将所述目标终端判定为有效终端;
s606:统计所有所述有效终端的所述终端类型和终端数量。
本实施例中,为每个http请求设定相同的预设权值,在获取到http请求后,通过确定http请求的总个数,以及预设权值,即可确定所述请求权值,对所有所述请求权值进行累加,得到终端权值。例如,若http请求的预设权值为1,则每获取到一个http请求,则将请求权值加1,进而终端权值加1,最终得到终端权值,并判断终端权值是否大于预设阈值100,从而判定终端是否有效。
本申请实施例公开了又一种共享上网检测方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
参见图7,本申请实施例提供的又一种共享上网检测方法的流程图,如图7所示,包括:
s701:获取http请求;
s702:获取所述http请求的预设权值以及对应的所述终端类型,并确定所述http请求的总个数;
s703:利用所述预设权值和所述总个数确定所述请求权值,对所有所述请求权值进行累加,得到所述终端权值;
s704:获取所述http请求对应的ua类型,并确定所述ua类型的类型个数;
s705:判断所述终端权值是否大于预设阈值,并判断所述类型个数是否大于预设类型个数;
s706:如果是,则将所述目标终端判定为有效终端;
s707:统计所有有效终端的所述终端类型和终端数量。
本实施例中,在将目标终端判定为有效终端之前,进一步获取http请求对应的ua类型,通过判断终端权值是否大于预设阈值之外,进一步判断ua的类型个数是否大于预设类型个数,能够实现防止误判的效果。
另外,在上述实施例的基础上,获取所述http请求对应的ua类型之后,还可以进一步将终端类型和ua类型保存至第二预设列表中。
进一步地,将目标终端判定为有效终端之后,还可以将更新指令下发至驱动层,以使驱动层更新当前用户对应的终端列表中目标终端的信息。
需要说明的是,在上述实施例中,得到各个http请求对应的请求权值后进一步确定目标终端的终端权值时,上述任一实施例提供的方案都是本申请所要保护的方案,在本技术方案的启示下,本领域技术人员在不经过创造性的劳动下,利用其他方式通过所述请求权值确定目标终端的终端权值的方法也在本公开所保护的范围内。
参见图8,本申请实施例提供的一种具体的共享上网检测方法的流程图,如图8所示,包括:
首先,在http请求经过ac设备时,驱动对http的get请求和post请求进行抓包,每个连接最多抓5包,并通过零拷贝的方式发送给应用层;
进一步地,判断http数据包是否需要进行重组,如果需要重组的话就先把包进行保留,直到重组完成后出包,对重组好的http数据包进行数据提取,把http的url,refer,user-agent字段进行提取,根据提取到的字段进行dfa解析,判断出当前的http请求所属的app;
可以理解的是,通过上述得到的app信息,能够查询得到app正则表达式的规则表,并通过规则表得到终端类型和权值信息;
需要说明的是,本实施例根据终端类型和权值信息更新用户结构,每个用户维护三种结构,型号-app信息,型号-ua信息,型号-tree信息,其中,型号-app信息为前述实施例中利用应用程序的规则权值确定终端权值时对应需要维护的信息;型号-ua信息和型号-tree信息为为前述实施例中利用http请求的预设权值确定终端权值时对应需要维护的信息,最终得到终端权值,并判断是否达到指定值;
进一步地,根据终端权值判定终端有效之后,利用驱动层更新用户当前拥有的终端列表,并通知防共享模块更新用户的共享信息。
图9为本申请实施例提供的一种具体示例中共享上网检测功能的实现示意图,如图9所示,表明了共享上网检测功能在网络中的使用位置,在http请求经过路由器,到达ac设备时,利用ac设备对http请求中的每个http数据包进行处理,从而获取每个数据包对应的多个终端信息。
由上可知,本申请实施例提供的共享上网检测方法不受终端数量的限制,理论上来讲能够满足大量的终端数量识别,可以适用于大型共享上网场景中对终端数量和终端类型的检测控制。
下面对本申请实施例提供的一种共享上网检测系统进行介绍,下文描述的一种共享上网检测系统与上文描述的一种共享上网检测方法可以相互参照。
参见图10,本申请实施例提供的一种共享上网检测系统的结构图,如图10所示,包括:
请求获取模块100,用于获取http请求;
权值确定模块200,用于获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;
权值判断模块300,用于判断所述终端权值是否大于预设阈值;
第一判定模块400,用于判断所述目标终端是否有效,如果所述终端权值大于所述预设阈值,则将所述目标终端判定为有效终端;
终端统计模块500,用于统计所有有效终端的终端类型和终端数量。
在上述实施例的基础上,作为一种优选上述方式,所述共享上网检测系统中的权值确定模块,包括:
规则获取子模块,用于确定所述http请求所属的应用程序,并获取所述应用程序的预设提取规则;
权值确定子模块,用于利用所述预设提取规则确定所述目标终端的终端类型,并确定所述预设提取规则的规则权值;
权值累加子模块,用于将所述规则权值确定为所述请求权值,将所有所述请求权值进行累加,得到所述终端权值。
在上述实施例的基础上,作为一种优选上述方式,所述共享上网检测系统中的规则获取子模块,包括:
数据包抓取单元,用于抓取所述http请求中的http数据包至应用层;
重组判断单元,用于利用所述应用层判断所述http数据包是否需要重组;
第一提取单元,在所述http数据包需要重组时,所述第一提取单元用于等待所述http数据包重组完成,并对重组后http数据包进行数据提取,确定发起所述http请求的应用程序;
第二提取单元,在所述http数据包无需重组时,所述第二提取单元用于直接对所述http数据包进行数据提取,确定所述http请求所属的应用程序。
在上述实施例的基础上,作为一种优选上述方式,所述共享上网检测系统还可以包括:
保存模块,在获取所述http请求对应的请求权值及目标终端的终端类型之后,所述保存模块用于将所述终端类型、所述应用程序和对应的所述请求权值保存至第一预设列表中;
删除模块,在预设时间范围内未接收到所述第一预设列表中所述应用程序发送的所述http请求之后,所述删除模块用于将所述应用程序进行删除。
在上述实施例的基础上,作为一种优选上述方式,所述共享上网检测系统中的权值确定模块,包括:
第一确定子模块,用于获取所述http请求的预设权值以及所述目标终端对应的终端类型,并确定所述http请求的总个数;
第二确定子模块,用于利用所述预设权值和所述总个数确定所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
在上述实施例的基础上,作为一种优选上述方式,所述共享上网检测系统还可以包括:
第二获取模块,在将所述目标终端判定为有效终端之前,所述第二获取模块用于获取所述http请求对应的ua类型,并确定所述ua类型的类型个数;
类型个数判断模块,用于判断所述类型个数是否大于预设类型个数;
第二判定模块,用于判断所述目标终端是否有效,如果所述类型个数大于预设类型个数,则将所述目标终端判定为有效终端。
在上述实施例的基础上,作为一种优选上述方式,所述共享上网检测系统还可以包括:
更新模块,用于将更新指令下发至驱动层,以使所述驱动层更新当前用户对应的终端列表中所述目标终端的信息。
本申请还提供了一种电子设备,参见图11,本申请实施例提供的一种电子设备的结构图,如图11所示,包括:
存储器11,用于存储计算机程序;
处理器12,用于执行所述计算机程序时可以实现前述任一种共享上网检测方法。
具体的,存储器11包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,为电子设备提供计算和控制能力,执行所述存储器11中保存的计算机程序时,可以实现以下步骤:
获取http请求;获取所述http请求对应的请求权值及目标终端的终端类型,并利用所述请求权值确定所述目标终端的终端权值;判断所述终端权值是否大于预设阈值;如果是,则将所述目标终端判定为有效终端;统计所有有效终端的终端类型和终端数量。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:确定所述http请求所属的应用程序,并获取所述应用程序的预设提取规则;利用所述预设提取规则确定所述目标终端的终端类型,并确定所述预设提取规则的规则权值;将所述规则权值确定为所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:抓取所述http请求中的http数据包至应用层;利用所述应用层判断所述http数据包是否需要重组;如果是,则等待所述http数据包重组完成后,对重组后http数据包进行数据提取,确定发起所述http请求的应用程序;如果否,则直接对所述http数据包进行数据提取,确定所述http请求所属的应用程序。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:将所述终端类型、所述应用程序和对应的所述请求权值保存至第一预设列表中;若预设时间范围内未接收到所述第一预设列表中所述应用程序发送的所述http请求,则将所述应用程序进行删除。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:将所述应用程序进行删除之后,保留所述应用程序对应的所述请求权值,以使下次接收到所述应用程序发送的http请求后提取所述请求权值并进行累加计算。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:获取所述http请求的预设权值以及所述目标终端对应的终端类型,并确定所述http请求的总个数;利用所述预设权值和所述总个数确定所述请求权值,对所有所述请求权值进行累加,得到所述终端权值。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:获取所述http请求对应的ua类型,并确定所述ua类型的类型个数;判断所述类型个数是否大于预设类型个数;如果是,则将所述目标终端判定为有效终端。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:将所述终端类型和所述ua类型保存至第二预设列表中。
优选的,所述处理器12执行所述存储器11中保存的计算机子程序时,可以实现以下步骤:将更新指令下发至驱动层,以使所述驱动层更新当前用户对应的终端列表中所述目标终端的信息。
在上述实施例的基础上,作为优选实施方式,参见图12,所述电子设备还包括:
输入接口13,与处理器12相连,用于获取外部导入的计算机程序、参数和指令,经处理器12控制保存至存储器11中。该输入接口13可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元14,与处理器12相连,用于显示处理器12处理的数据以及用于显示可视化的用户界面。该显示单元14可以为led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。
网络端口15,与处理器12相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(mhl)、通用串行总线(usb)、高清多媒体接口(hdmi)、无线保真技术(wifi)、蓝牙通信技术、低功耗蓝牙通信技术、基于ieee802.11s的通信技术等。
图12仅示出了具有组件11-15的电子设备,本领域技术人员可以理解的是,图12示出的结构并不构成对电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本申请还提供了一种计算机可读存储介质,该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述任一种共享上网检测方法。
本申请通过预先设定相应的权值,能够在获取到http请求后获取目标终端的类型,并利用http请求对应的请求权值确定目标终端的终端权值,从而根据终端权值和预设阈值的大小比较结果判定终端是否有效,避免了由于信息的非标准、不统一或是终端数量的影响导致的误判,最终得到有效终端的类型及终端数量,实现共享上网检测,以降低终端检测的误判率。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。