识别共享流量用户的方法、装置、设备及介质与流程

文档序号:14847221发布日期:2018-06-30 16:50阅读:236来源:国知局
识别共享流量用户的方法、装置、设备及介质与流程

本发明涉及通信技术领域,尤其涉及一种识别共享流量用户的方法、装置、设备及介质。



背景技术:

随着移动网络速度和手机终端的快速发展,用户流量需求也越来越高,针对客户流量需求各运营商推出了各种大流量套餐。然而其中很多订购大流量套餐的客户可能会将个人套餐内流量共享给其他客户使用,如何才能识别通过开通手机热点共享流量给他人使用的用户目前并没有很好的相关识别技术方案。



技术实现要素:

本发明提供了一种识别共享流量用户的方法、装置、设备及介质,通过测试个人手机热点共享流量上网,观察和分析,发现用户上网信令记录中采集到的浏览器信息能够包含绝大多数客户的手机终端型号,包括连接热点的客户终端型号。结合数据分析统计与文本挖掘字符串匹配算法,识别出开通手机热点共享流量的用户。

第一方面,本发明实施例提供了一种识别共享流量用户的方法,包括:

采集目标用户号码特定时间段内的上网信令清单数据;

从上网信令清单数据中提取终端信息,终端信息包括终端型号或操作系统版本;

对终端信息执行条件判定,满足条件的终端为共享流量用户,条件包括:

具有不同终端信息的终端数目为N个,其中N大于等于2;

终端在该特定时间段内使用目标用户号码上网。

第二方面,本发明实施例提供了一种识别共享流量用户的装置,装置包括:采集模块,所述采集模块用于采集目标用户号码特定时间段内的上网信令清单数据;

信息提取模块,所述信息提取模块用于从上网信令清单数据中提取终端信息,终端信息包括终端型号或操作系统版本;

判定模块,判定模块用于对所述终端信息执行条件判定,满足条件判定的终端为共享流量用户,条件包括:

终端为N个且所述终端的终端信息不同,其中N大于等于2;

终端在特定时间段内使用目标用户号码上网。

第三方面,本发明实施例提供了一种识别共享流量用户的设备,包括:至少一个处理器、至少一个存储器以及存储在存储器中的计算机程序指令,当计算机程序指令被处理器执行时实现如上述实施方式中第一方面的方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序指令,当计算机程序指令被处理器执行时实现如上述实施方式中第一方面的方法。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一个实施例提供的一种识别共享流量用户的方法的流程示意图;

图2为本发明实施例提供的一种KMP算法说明示意图;

图3为本发明一个实施例提供的又一种识别共享流量用户的方法流程示意图;

图4为本发明一个实施例提供的一种识别共享流量用户的装置的结构示意图;

图5为本发明一个实施例提供的识别共享流量用户的设备的硬件结构示意图。

具体实施方式

下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

图1为本发明一个实施例提供的一种识别共享流量用户的方法的流程示意图,如图1所示,该方法包括:

S1:采集目标用户号码特定时间段内的上网信令清单数据;

S2:从上网信令清单数据中提取终端信息,终端信息包括终端型号或操作系统版本;

S3:对终端信息执行条件判定,满足条件的终端为共享流量用户,条件包括:

具有不同终端信息的终端数目为N个,其中N大于等于2;

终端在特定时间段内使用目标用户号码上网。

本发明实施例中,通过对http协议的流量内容解析,采集目标用户号码在特定时间段内的上网信令清单数据,这里,特定时间段至少为一小时,通常为一天或多天,采集多天时间内目标用户号码的上网信令清单数据,进而从采集到的上网信令清单数据中来提取终端信息,终端可以包括手机、平板电脑等移动终端设备,或者其他采用数据流量进行上网的终端设备,上网信令清单数据通常包括海量字符串,从海量字符串中需要提取终端信息,终端信息包括终端型号或者操作系统版本的信息,通过终端型号的不同或者操作系统版本的不同来识别采用同一目标用户号码上网的共享流量用户。

本发明实施例中,对提取出的使用同一目标用户号码上网的终端型号或者操作系统版本执行条件判定,条件包括:

具有不同终端信息的终端数目为N个,其中N大于等于2;

终端在特定时间段内使用目标用户号码上网。

这里不同终端信息可以是指不同的终端型号或者不同的操作系统版本,并且具有不同的终端信息的终端数目至少为两个,并且该至少两个不同的终端在该特定时间段内使用了目标用户号码上网,此时认为目标用户号码存在共享流量用户,且该具有不同终端信息的终端即为共享流量用户。

业务受理协议规定,个人流量套餐套餐流量仅限本号码和本号码所安装的手机终端使用,本发明提出的识别共享流量用户的方法能够对共享流量用户有效进行识别,便于识别用户通过wifi共享,违规使用流量的行为。

业务受理协议规定,家庭流量套餐可以共享使用,本发明提出的识别共享流量用户的方法便于识别客户实际共享的交往圈,分析客户的社会关系。并且,能够识别基于无线互联网,通过wifi热点开展的黑客行为、危害国家和公共安全的网络犯罪行为。

以上是本发明识别共享流量用户的核心发明构思,下面将对各个步骤中的具体方法进行详尽的说明。

可选的,本发明实施例中,采集到特定时间段的上网信令清单数据之后,从上网信令清单数据中提取终端信息,具体方法为:对上网信令清单中的user_agent中含分号和BUILD且分号在BUILD之前的记录进行处理,从左往右取出第一个BUILD与BUILD前第一个分号间的字符串,该字符串即为安卓终端型号;和/或

对上网信令清单中的user_agent中含IPHONE和IOS且IPHONE在IOS前的记录进行处理,从左往右取出第一个括号与括号后第二个分号间的字符串,该字符串即为苹果终端的操作系统版本。

通常如果识别到安卓终端型号之后可以不再进行操作系统版本的识别,通过确定的终端型号即可以识别不同的共享流量用户,而由于苹果手机保密严格,苹果终端不向外传送终端型号字段,只传一个IPHONE字符和操作系统版本。因此苹果终端通常还需要结合操作系统来判断。

由于平均每个高流量客户每天产生5000条左右流量内容清单,市场上的终端型号有数万种,且命名不规范,客观条件使得准确文本挖掘分析存在困难。为了尽可能广泛地识别共享流量客户,克服海量脏数据的不利影响,本发明实施例中,对从所述上网信令清单中提取终端信息的步骤中还包括:对从上网信令清单数据中提取的终端信息进行数据清洗。

通过数据清洗能够有效剔除与所需信息不相关的脏数据,具体的数据清洗可以包括:剔除终端型号中含有NEXUS的记录,Nexus是Google公司的品牌,Nexus系列产品是Google公司研发的以原生Android为操作系统的智能手机、平板电脑等电子数码产品。同时,Nexus手机和平板电脑是Google为华为、三星、LG、HTC、MOTO、ASUS等合作厂商提供的Android官方设计标准。这个代表标准的关键词大量出现在流量内容字段中,容易被误认为是操作系统型号,所以剔除。

可选的,数据清洗的方式还可以包括剔除单条信令<10KB的记录,很多服务器、甚至微信、QQ软件都会自动地发送和接收一些小额数据,这种数据通常流量很小,这种数据在自动收发的时候,也自带了无线互联网中终端的型号和操作系统,在没有共享行为发生的时候,这些数据都是存在的。容易成为脏数据,影响判断。

可选的,数据清洗的方式还可以包括剔除单个终端使用流量<1MB的记录,对于共享流量用户的流量共享行为,通常是主动进行共享,经过登录密码等步骤,一般由此产生的共享流量行为,单个终端使用流量通常大于1MB,剔除单个终端使用流量<1MB的记录,同样为了避免小额数据的非自主产生影响共享流量用户的识别。

在经过上述一个或多个数据清洗步骤之后,可以进一步清洗之后的剩余数据去重,从而得到终端信息。

可选的,得到的终端信息可以包括终端型号或者操作系统版本,或者两者兼有的数据,进一步将终端信息与运营商的终端信息数据库进行匹配,去除一些命名不规范的终端型号或操作系统版本,提升信息提取的准确性,将通过匹配得到的相同的终端信息最终提取。这里所谓的匹配相同的终端信息是指经过上述数据清洗去重之后得到的终端信息存在于运营商的终端信息数据库中。进而将筛选匹配相同的终端信息执行条件判定,由此可以大幅度剔除不相关数据,完成对海量数据的提取和清洗,减小后续执行条件判断的复杂性。

对于将终端信息与运营商的终端信息数据库进行匹配,可以采用文本挖掘字符串匹配的智能算法,通过智能算法,共享流量客户的识别准确性和覆盖率将有明显提升。字符串模式匹配算法包括BM(Boyer-Moore)、KMP(The Knuth-Morris-Pratt Algorithm)、AC(AC multi-pattem matching algorithm)算法等。本发明中采用的是KMP算法。

KMP算法是一种高效的前缀匹配算法,在传统蛮力(BF)匹配算法的基础上改进的地方在于每次移动的距离不是1可以是更大,没有进行回溯,BF算法的时间复杂度是O(m*n),而KMP算法的时间复杂度是O(m+n)。kmp算法的核心即是计算字符串f每一个位置之前的字符串的前缀和后缀公共部分的最大长度(不包括字符串本身,否则最大长度始终是字符串本身)。获得f每一个位置的最大公共长度之后,就可以利用该最大公共长度快速和字符串O比较。当每次比较到两个字符串的字符不同时,我们就可以根据最大公共长度将字符串f向前移动(已匹配长度-最大公共长度)位,接着继续比较下一个位置。事实上,字符串f的前移只是概念上的前移,只要我们在比较的时候从最大公共长度之后比较f和O即可达到字符串f前移的目的。

图2为本发明实施例提供的一种KMP算法说明示意图,如图2所示,假设执行第i+1趟匹配时,如果比较模式串P中的第j个字符时不匹配,也就是有:

T[i,i+1,...,i+j-1]=P[0,1,...,j-1],T[i+j]≠P[j] (1)

BF算法下一趟是从目标的第i+1位置开始与模式串比较。如果匹配成功则有:

T[i+1,i+2,...,i+m]=P[0,1,...m-1] (2)

如果模式串P有如下特征:P[0,1,...j-2]=P[1,2,...j-1] (3)

由(1)可知

T[i+1,i+2,...,i+j+1]=P[1,2,...j-1] (4)

由(3)(4)可知

T[i+1,i+2,...,i+j+1]≠P[0,1,...j-2] (5)

故由T[i+1,i+2,....,i+m]≠P[0,1,...m-1]

所以第i+2趟是匹配可以不需要进行,因为一定不能匹配。

类似可以推得P[0,1,...k-1]=P[j-k-1,j-k,...j-1]

这时才有P[0,1,...k-1]=P[j-k-1,j-k,...j-1]=T[i+j-k,i+j-k+1,i+j-1]

模式串P从当前位置直接向右移动j-k位置,使模式串P的第k个字符P[k]与目标串T中的第i+j个字符对齐开始比较(前面k个已经匹配)。造成BF算法效率低的主要原因是在算法执行过程中有回溯,而这些回溯是可以避免的。KMP算法的关键是在匹配失败时,确定下一次匹配的位置,设next[j]=k,表示当模式串P中第j个字符与母串T相应字符不匹配时,模式串P中应当由第K个字符与目标串中将不匹配的字符对齐继续进行比较。

本实施例中将前述步骤中经过清洗上网信令清单数据得到的终端信息字段与运营商的终端信息数据库进行匹配,筛选匹配相同的终端信息字段,采用KMP算法能够大幅度提升文本字符串提取的准确度,对于本发明方法中包含的海量上网清单数据的提取提供了快捷精准的算法。

可选的,在本实施例中,对于不同终端信息的终端数目N的计算方式同样可以采用KMP算法,使用KMP算法在数据库中进行编程,使用游标来计算N的数值。

可选的,图3为本发明一个实施例提供的又一种识别共享流量用户的方法流程示意图,如图3所示,步骤S1和步骤S2与图1中实施例相同,为了进一步提升共享流量用户识别的准确度,考虑到目标用户号码在本方法提取上网信令清单数据的时间段内可能发生换机行为,即承载目标用户号码的载体从一个终端更换到另一个终端上,此时即使目标用户号码没有进行流量共享,仍然能够识别到两个不同的终端信息,如果对此种情况不做出特殊处理,将会产生错误判断,基于此,本发明实施例在执行步骤S3对终端信息条件判定前,可以首先执行步骤S4:对目标用户号码有无换机行为进行识别,当在特定时间段内,发生了换机行为,识别换机产生的终端信息,将所述换机产生的终端信息剔除,进而对剩余的终端信息进行条件判定,其中,换机行为、换机时间以及更换的终端信息可以通过IMEI的变化识别。

由此可以排除因目标用户号码换机行为产生的不同终端信息,避免因此带来的误判发生。

另外,结合图1描述的本发明实施例的识别共享流量用户的方法可以由识别共享流量用户的装置实现,图4为本发明一个实施例提供的识别共享流量用户的装置的结构示意图,如图4所示,包括:采集模块401,所述采集模块用于采集目标用户号码特定时间段内的上网信令清单数据;

信息提取模块402,所述信息提取模块用于从所述上网信令清单数据中提取终端信息,所述终端信息包括终端型号或操作系统版本;

判定模块403,所述判定模块用于对所述终端信息执行条件判定,满足所述条件判定的终端为共享流量用户,所述条件包括:

所述终端为N个且所述终端的终端信息不同,其中N大于等于2;

所述终端在同一时间使用目标用户号码上网。

可选的,本发明实施例中,信息提取模块具体实现终端信息提取的方法为:对上网信令清单中的user_agent中含分号和BUILD且分号在BUILD之前的记录进行处理,从左往右取出第一个BUILD与BUILD前第一个分号间的字符串,该字符串即为安卓终端型号;和/或

对上网信令清单中的user_agent中含IPHONE和IOS且IPHONE在IOS前的记录进行处理,从左往右取出第一个括号与括号后第二个分号间的字符串,该字符串即为苹果终端的操作系统版本。

可选的,本发明实施例所提供的识别共享流量用户的装置还包括:数据清洗模块404,通过数据清洗能够有效剔除与所需信息不相关的脏数据,具体的数据清洗可以包括:剔除终端型号中含有NEXUS的记录、剔除单条信令<10KB的记录、剔除单个终端使用流量<1MB的记录,上述数据清洗的方式可以则一、则二或者全部执行。在经过上述一个或多个数据清洗步骤之后,可以进一步清洗之后的剩余数据去重,从而得到终端信息。

可选的,得到的终端信息可以包括终端型号或者操作系统版本,或者两者兼有的数据,进一步将终端信息与运营商的终端信息数据库进行匹配,去除一些命名不规范的终端型号或操作系统版本,提升信息提取的准确性,将通过匹配得到的相同的终端信息最终提取。

可选的,本发明实施例所提供的识别共享流量用户的装置还包括换机行为识别模块405,用于对所述目标用户号码进行有无换机行为识别,当在所述特定时间段内,所述目标用户号码发生换机行为,识别换机产生的终端信息,将所述换机产生的终端信息剔除。

另外,结合图1描述的本发明实施例的识别共享流量用户的方法可以由识别共享流量用户的设备来实现。图5为本发明一个实施例提供的识别共享流量用户的设备的硬件结构示意图。

识别共享流量用户的设备可以包括处理器501以及存储有计算机程序指令的存储器502。

具体地,上述处理器501可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路。

存储器502可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器502可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器502可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器502可在数据处理装置的内部或外部。在特定实施例中,存储器502是非易失性固态存储器。在特定实施例中,存储器502包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。

处理器501通过读取并执行存储器502中存储的计算机程序指令,以实现上述实施例中的任意一种识别共享流量用户的方法。

在一个示例中,识别共享流量用户的设备还可包括通信接口503和总线510。其中,如图5所示,处理器501、存储器502、通信接口503通过总线510连接并完成相互间的通信。

通信接口503,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。

总线510包括硬件、软件或两者,将识别共享流量用户的设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线510可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。

另外,结合上述实施例中的识别共享流量用户的方法,本发明实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种识别共享流量用户的方法。

需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

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