数据关联方法及装置与流程

文档序号:15594116发布日期:2018-10-02 19:18阅读:217来源:国知局
本公开涉及通信
技术领域
,尤其涉及一种数据关联方法及装置。
背景技术
:目前,在学校、场馆和城市等场所部署无线网络和网络行为审计设备,在给用户提供上网服务的同时,监控无线网络覆盖下的用户的网络行为。通过大数据分析,从而实现为用户提供更优质的网络服务或安防保障等。其中,网络行为审计设备可以指能够对网络覆盖下的用户的网络行为进行监控的设备,例如dpi(deeppacketinspection,深度报文检测)设备。例如,网络行为审计设备可以安装在主网络出口,用于对主网络出口的用户的网络行为进行监控。相关技术中,无线网络采用dhcp(dynamichostconfigurationprotocol,动态主机配置协议)自动为用户分配ip(internetprotocol,网络协议)地址,因此用户每次登录无线网络时都会被分配到不同的ip地址。由于用户与ip地址不具有长久的对应关系,将会造成网络行为审计设备只能对每个ip地址的网络行为进行监控,而无法对每个用户的网络行为进行监控。目前,可以将网络行为审计设备连接认证系统,实现将用户与ip地址进行关联,从而实现对用户的网络行为进行监控。但是流量日志的数据量较大,离线关联的效率较低,因此造成离线关联的时效性较差,无法实时将用户与ip地址进行关联。此外,即使实现将用户与ip地址进行关联,也无法确定用户的位置。技术实现要素:有鉴于此,本公开提出了一种数据关联方法及装置,以解决相关技术中用户、用户在无线网络下的位置和网络行为关联效率低的问题。根据本公开的一方面,提供了一种数据关联方法,所述方法包括:按照第一频率获取用户认证数据和终端在线数据,并将包括相同的标识的所述用户认证数据和所述终端在线数据进行整合处理,得到用户在线数据,将所述用户在线数据持久化到用户在线数据表中;实时获取流量日志,并对所述流量日志进行流式数据处理,得到网络行为数据,将所述网络行为数据持久化到网络行为数据表中;按照第二频率,从所述用户在线数据表、所述网络行为数据表和接入设备位置数据表中,将包括相同的标识的所述用户在线数据、所述网络行为数据和接入设备位置数据进行关联。根据本公开的另一方面,提供了一种数据关联装置,所述装置包括:第一处理模块,用于按照第一频率获取用户认证数据和终端在线数据,并将包括相同的标识的所述用户认证数据和所述终端在线数据进行整合处理,得到用户在线数据,将所述用户在线数据持久化到用户在线数据表中;第二处理模块,用于实时获取流量日志,并对所述流量日志进行流式数据处理,得到网络行为数据,将所述网络行为数据持久化到网络行为数据表中;数据关联模块,用于按照第二频率,从所述用户在线数据表、所述网络行为数据表和接入设备位置数据表中,将包括相同的标识的所述用户在线数据、所述网络行为数据和接入设备位置数据进行关联。根据本公开的另一方面,提供了一种数据关联装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述方法。根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。本公开的数据关联方法及装置,按照第一频率获取用户认证数据和终端在线数据,并将包括相同的标识的用户认证数据和终端在线数据进行整合处理,得到用户在线数据,将用户在线数据持久化到用户在线数据表中,实时获取流量日志,并对流量日志进行流式数据处理,得到网络行为数据,将网络行为数据持久化到网络行为数据表中,按照第二频率,从用户在线数据表、网络行为数据表和接入设备位置数据表中,将包括相同的标识的用户在线数据、网络行为数据和接入设备位置数据进行关联,由此能够将用户、用户在无线网络下的位置以及网络行为快速及时地关联起来,为分析用户的网络行为提供数据支持,从而实现为用户提供更优质的网络服务或安防保障等。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。附图说明包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。图1示出根据本发明一实施例的数据关联的示意图。图2示出根据本公开一实施例的数据关联方法的流程图。图3示出根据本发明一实施例的数据关联的示意图。图4示出根据本公开一实施例的数据关联装置的框图。图5示出根据本公开一实施例的数据关联装置的框图。图6示出根据本发明一实施例的数据关联装置的框图。具体实施方式以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。为了使本
技术领域
的人员更好地理解本发明实施例中的技术方案,下面先对本发明实施例中涉及的部分技术术语进行简单说明。流量日志可以指网络行为审计设备对网络覆盖下的用户的网络行为进行监控产生的日志文件。其中,网络行为审计设备可以指能够对网络覆盖下的用户的网络行为进行监控的设备,例如dpi设备。网络行为可以指通过网络进行的各种操作,包括访问网站、收发邮件、上传/下载、即时通信和网络游戏等,本公开对此不作限制。通过对流量日志进行流式数据处理,能够得到网络行为数据。网络行为数据表可以指用于存储网络行为数据的数据库。网络行为数据可以指记录用户的网络行为的数据。表1示出根据本发明一实施例的网络行为数据。如表1所示,网络行为数据包括但不限于以下内容:账号名(username)、用户ip地址(userip)、应用名称(appname)、上传流量(up)、下载流量(down)、统计开始时间(createtime)和统计结束时间(endtime)。需要说明的是,无线网络采用dhcp自动为用户分配ip地址,用户每次登录无线网络时都会被分配到不同的ip地址。因此,如表1所示,虽然网络行为数据包括账号名和用户ip地址,但是账号名并没有包含真正的账号名,而是采用用户ip地址进行代替。由此网络行为数据仅能够对应于用户ip地址,而无法对应于具体的用户。表1字段字段名称说明username账号名默认为用户ip地址userip用户ip地址用户使用网络获取的ip地址appname应用名称使用应用名称up上传流量用户的上传流量down下载流量用户的下载流量createtime统计开始时间统计开始时间endtime统计结束时间统计结束时间………………用户认证数据可以指记录用户的认证情况的数据。aaa(authenticationauthorizationaccounting,验证、授权和记账)服务器可以指能够处理用户访问请求、提供验证授权以及帐户服务的设备。aaa服务器对用户进行验证、授权和记账,并将用户认证数据存储至通用的关系型数据库中,例如mysql或oracle等。通过aaa服务器可以获取用户认证数据。表2示出根据本发明一实施例的用户认证数据。如表2所示,用户认证数据包括但不限于以下内容:账号名(username)、用户姓名(fullname)、终端mac地址(usermac)、用户ip地址(framedip)、接入开始时间(onlinetimestart)和接入结束时间(onlinetimeend)。表2字段字段名称说明username账号名登陆网络的账号fullname用户姓名账号的真实姓名usermac终端mac地址用户终端mac地址framedip用户ip地址用户使用网络获取的ip地址onlinetimestart接入开始时间账号登陆的时间onlinetimeend接入结束时间账号退出的时间………………终端在线数据可以指记录终端的在线情况的数据。网络管理设备可以指能够对网络进行规划、控制和监视以保证网络正常运行的设备。接入设备可以指能够为用户提供接入网络服务的设备,例如ap(wirelessaccesspoint,无线网络访问节点)。网络管理设备将终端在线数据存储至通用的关系型数据库中,例如mysql或oracle等。通过网络管理设备可以获取终端在线数据。表3示出根据本发明一实施例的终端在线数据。如表3所示,终端在线数据包括但不限制于以下内容:账号名(username)、终端mac地址(usermac)、用户ip地址(userip)、服务集标识(ssid,servicesetidentifier)、信道(channel)、ap的序列号(apserialid)和ap的ip地址(apip)。表3字段字段名称说明username账号名通常在在线和认证联动时才会有该数据字段usermac终端mac地址用户终端mac地址userip用户ip地址用户ip地址ssid服务集标识服务集标识channel信道信道apserialidap的序列号ap的序列号apipap的ip地址ap的ip地址………………需要说明的是,如表3所示,虽然终端在线数据包括帐号名,但是只有在用户认证数据和终端在线数据联动的情况下,帐号名才包含真正的帐号名。如果用户认证数据和终端在线数据未联动,则帐号名为空,或者终端在线数据不包括帐号名。用户上下线是不固定的,aaa服务器根据用户的上下线生成用户认证数据,网管设备根据用户的上下线生成终端在线数据。图1示出根据本发明一实施例的数据关联的示意图。如图1所示,用户认证数据包括用户ip地址、终端mac地址和账号名(如表2所示),终端在线数据包括用户ip地址、终端mac地址和ap的序列号(如表3所示)。由此将包括相同的用户ip地址或相同的终端mac地址的用户认证数据和终端在线数据进行整合处理,得到用户在线数据,并将用户在线数据持久化到用户在线数据表中。用户在线数据表可以指用于存储用户在线数据的数据库。用户在线数据可以指记录用户的在线情况的数据。通过用户在线数据表可以获取用户在线数据。表4示出根据本发明一实施例的用户在线数据。如表4所示,用户在线数据包括但不限制于以下内容:账号名(username)、用户ip地址(userip)和ap的序列号(apserialid)。通过用户在线数据,能够确定用户通过哪个ap接入网络,由此可以通过确定ap的位置确定用户的位置。表4字段字段名称说明username账号名登陆网络的账号userip用户ip地址用户使用网络获取的ip地址apserialidap的序列号ap的序列号………………接入设备位置数据表可以指用于存储接入设备位置数据的数据库。接入设备位置数据可以指记录接入设备位置的数据。其中,接入设备位置可以指能够表示接入设备所处位置的信息。接入设备位置可以通过经纬度进行描述,例如(22°42′09″n,112°13′19″e);也可以通过文字进行描述,例如北京市丰台区xx街道xx号院,本公开对此不作限制。表5示出根据本发明一实施例的接入设备位置数据。如表5所示,接入设备位置数据包括但不限于以下内容:接入设备序列号和接入设备位置。在接入设备为ap的情况下,ap位置数据包括但不限于以下内容:ap的序列号(apserialid)和ap的位置(aplocation)。通过ap位置数据,能够确定各个ap的位置,由此可以通过ap的位置确定用户的位置。表5apserialidaplocation001(22°42′09″n,112°13′19″e)002(31°14′36″n,115°33′19″e)003(33°20′36″n,110°32′10″e)004(24°20′02″n,101°32′10″e)…………图2示出根据本公开一实施例的数据关联方法的流程图。如图2所示,该方法包括以下步骤。在步骤s21中,按照第一频率获取用户认证数据和终端在线数据,并将包括相同的标识的用户认证数据和终端在线数据进行整合处理,得到用户在线数据,将用户在线数据持久化到用户在线数据表中。其中,第一频率可以指单位时间内获取用户认证数据和终端在线数据的次数。例如,每间隔5分钟或10分钟获取用户认证数据和终端在线数据。第一频率的取值可以根据经验进行设定,本公开对此不作限制。在一种实现方式中,按照第一频率获取用户认证数据和终端在线数据,包括:按照第一频率,通过api(applicationprogramminginterface,应用程序编程接口)分别获取用户认证数据和终端在线数据。在一种实现方式中,将包括相同的标识的用户认证数据和终端在线数据进行整合处理,得到用户在线数据,包括:将包括相同的用户ip地址的用户认证数据和终端在线数据进行整合处理,得到用户在线数据;用户在线数据包括:用户ip地址、帐号名和接入设备序列号。需要说明的是,尽管以包括相同的用户ip地址作为示例介绍了将用户认证数据和终端在线数据进行整合处理如上,但本领域技术人员能够理解,本公开应不限于此。本领域技术人员可以根据实际应用场景灵活设定如何将用户认证数据和终端在线数据进行整合处理。例如,将包括相同的终端mac地址的用户认证数据和终端在线数据进行整合处理,得到用户在线数据。在步骤s22中,实时获取流量日志,并对流量日志进行流式数据处理,得到网络行为数据,将网络行为数据持久化到网络行为数据表中。其中,流量日志的实时性较高,一般情况下每秒数据量在1~10万条甚至更多。流量日志以udp(userdatagramprotocol,用户数据报协议)报文广播,形成流数据,该流数据经过流式数据处理后得到网络行为数据。其中,流数据可以指由数千个数据源持续生成的数据,其具有数据实时持续不断到达、到达次序独立、数据来源众多格式复杂和数据规模大等特点。流式数据处理可以指针对流数据的实时处理过程,一般包括数据实时采集,数据实时处理,实时查询服务等过程。在本公开的数据关联方法中,针对流量日志采用流式数据处理,能够实现减小计算性能的消耗,提高数据的时效性,实现针对亿级数据量的数据进行关联。在一种实现方式中,对流量日志进行流式数据处理,得到网络行为数据,包括:将实时获取的流量日志分发到消息队列,并根据解析协议对消息队列输出的流量日志进行解析处理,得到网络行为数据。其中,消息队列可以指在消息的传输过程中保存消息的容器。例如,消息队列可以为kafka,kafka是一种高吞吐量的分布式发布订阅消息系统。在步骤s23中,按照第二频率,从用户在线数据表、网络行为数据表和接入设备位置数据表中,将包括相同的标识的用户在线数据、网络行为数据和接入设备位置数据进行关联。其中,第二频率可以指单位时间内获取用户在线数据、网络行为数据和接入设备位置数据的次数。例如,每间隔10分钟或15分钟获取用户在线数据、网络行为数据和接入设备位置数据。第二频率的取值可以根据经验进行设定,本公开对此不作限制。在一种实现方式中,第二频率小于或等于第一频率。可以理解的是,生成用户在线数据的频率可以约等于第一频率,即获取用户认证数据和终端在线数据的频率。由此将第二频率设置为小于或等于第一频率,能够保证在每次获取用户在线数据、网络行为数据和接入设备位置数据时,存在可以被获取的用户在线数据,从而提高用户在线数据和网络行为数据的匹配率。在一种实现方式中,将包括相同的标识的用户在线数据、网络行为数据和接入设备位置数据进行关联,包括:将包括相同的用户ip地址的用户在线数据和网络行为数据进行关联;将包括相同的接入设备序列号的用户在线数据和接入设备位置数据进行关联。图3示出根据本发明一实施例的数据关联的示意图。如图3所示:imc(intelligentmanagementcenter)平台可以同时具有aaa服务器和网络管理设备的功能。按照第一频率由api获取imc平台产生的用户认证数据和终端在线数据,并将包括相同的用户ip地址的用户认证数据和终端在线数据进行整合处理,得到用户在线数据,将用户在线数据持久化到用户在线数据表中。持久化后的用户在线数据可以随时被读取或调用。dpi设备产生的流量日志以udp报文广播,形成流数据。logstash实时采集流量日志,并根据kafka包括的各个队列当前的负载,将实时采集的流量日志分发到kafka进行缓存。sparkstreaming根据解析协议对kafka输出的流量日志进行解析处理,得到网络行为数据。将网络行为数据持久化到网络行为数据表中。持久化后的网络行为数据可以随时被读取或调用。sparkstreaming按照第二频率,从用户在线数据表、网络行为数据表和接入设备位置数据表中,将包括相同的用户ip地址的用户在线数据和网络行为数据进行关联,将包括相同的接入设备序列号的用户在线数据和接入设备位置数据进行关联,并将关联后的用户在线数据、网络行为数据和接入设备位置数据存储到es(elasticsearch)中。其中,logstash为开源日志采集解析软件。logstash的处理性能可以达到7000条/秒。在流量日志的数据量超过7000条/秒的量级时,可以考虑采用专门的采集程序采集流量日志。kafka为开源的消息队列软件。kafka可以进行集群部署,集群的应用能够大大提高可处理的数据量。kafka将队列中的数据传输给sparkstreaming来进行批处理,通过sparkstreaming的移动窗口进行批次大小的调试,以达到最优的处理性能。通过微批量数据的关联,大大增加了数据的吞吐量。当sparkstreaming处理速度超过程序的接收速度10~15%上下性能达到最优,并且即便数据发送出现高峰期,也能通过kafka的缓冲作用,使得sparkstreaming能够及时处理kafka中的数据。es是一个基于lucene的搜索服务器,能够提供分布式多用户能力的全文搜索引擎,具有实时搜索、稳定可靠、快速便捷等优点。本公开的数据关联方法,由于流量日志实时性较高,一般情况下每秒数据量在1~10万条甚至更多。如果每收到一条流量日志就请求一次用户认证数据和终端在线数据,那么网络管理设备和aaa服务器无法完成如此高频的请求。因此将包括相同的标识的用户认证数据和终端在线数据进行整合处理,得到用户在线数据,然后再将包括相同的标识的用户在线数据、网络行为数据和接入设备位置数据进行关联。由此能够增加用户在线数据和网络行为数据匹配的效率,在误差允许范围内是非常高效的处理方式。作为一个示例,按照第一频率获取到用户认证数据{username:zhangsan,fullname:张三,usermac:mac1,framedip:1.1.1.1,onlinetimestart:10:02:00,onlinetimeend:11:12:00},终端在线数据{username:zhangsan,usermac:mac1,userip:1.1.1.1,ssid:ssid1,channel:channel1,apserialid:002,apip:2.2.2.2}。由此将包括相同用户ip地址{userip:1.1.1.1}的用户认证数据和终端在线数据进行整合处理,得到用户在线数据{userip:1.1.1.1,username:zhangsan,apserialid:002}。网络行为数据表中的网络行为数据{username:1.1.1.1,userip:1.1.1.1,appname:weibo,up:50m,down:100m,createtime:10:12:00,endtime:10:22:00}。按照第二频率将包括相同用户ip地址{userip:1.1.1.1}的用户在线数据和网络行为数据进行关联,将包括相同ap的序列号{apserialid:002}的用户在线数据和ap位置数据(如表5所示)进行关联,得到{username:zhangsan,userip:1.1.1.1,appname:weibo,up:50m,down:100m,createtime:10:12:00,endtime:10:22:00,apserialid:002,aplocation:(31°14′36″n,115°33′19″e)}本公开的数据关联方法,能够将用户、用户在无线网络下的位置和网络行为快速及时地关联起来,为分析用户的网络行为提供数据支持,从而实现为用户提供更优质的网络服务或安防保障等。图4示出根据本公开一实施例的数据关联装置的框图。如图4所示,该装置包括:第一处理模块41,用于按照第一频率获取用户认证数据和终端在线数据,并将包括相同的标识的所述用户认证数据和所述终端在线数据进行整合处理,得到用户在线数据,将所述用户在线数据持久化到用户在线数据表中;第二处理模块42,用于实时获取流量日志,并对所述流量日志进行流式数据处理,得到网络行为数据,将所述网络行为数据持久化到网络行为数据表中;数据关联模块43,用于按照第二频率,从所述用户在线数据表、所述网络行为数据表和接入设备位置数据表中,将包括相同的标识的所述用户在线数据、所述网络行为数据和接入设备位置数据进行关联。图5示出根据本公开一实施例的数据关联装置的框图。如图5所示:在一种实现方式中,所述第一处理模块41包括:采集子模块411,用于按照所述第一频率,通过应用程序编程接口api分别获取所述用户认证数据和所述终端在线数据。在一种实现方式中,所述第二处理模块42包括:解析子模块421,用于将实时获取的所述流量日志分发到消息队列,并根据解析协议对所述消息队列输出的流量日志进行解析处理,得到所述网络行为数据。在一种实现方式中,所述用户认证数据包括用户ip地址和帐号名;所述终端在线数据包括用户ip地址和接入设备序列号;所述网络行为数据包括用户ip地址、应用名称、上传流量、下载流量、统计开始时间和统计结束时间;所述接入设备位置数据包括接入设备序列号和对应的接入设备位置。在一种实现方式中,所述第一处理模块41包括:整合子模块412,用于将包括相同的用户ip地址的所述用户认证数据和所述终端在线数据进行整合处理,得到所述用户在线数据;所述用户在线数据包括:用户ip地址、帐号名和接入设备序列号。在一种实现方式中,所述数据关联模块43包括:第一关联子模块431,用于将包括相同的用户ip地址的所述用户在线数据和所述网络行为数据进行关联;第二关联子模块432,用于将包括相同的接入设备序列号的所述用户在线数据和所述接入设备位置数据进行关联。本公开的数据关联装置,能够将用户、用户在无线网络下的位置和网络行为快速及时地关联起来,为分析用户的网络行为提供数据支持,从而实现为用户提供更优质的网络服务或安防保障等。图6示出根据本发明一实施例的数据关联装置的框图。参照图6,该装置900可包括处理器901、存储有机器可执行指令的机器可读存储介质902。处理器901与机器可读存储介质902可经由系统总线903通信。并且,处理器901通过读取机器可读存储介质902中与数据关联逻辑对应的机器可执行指令以执行上文所述的数据关联方法。本文中提到的机器可读存储介质902可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本
技术领域
的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本
技术领域
的其它普通技术人员能理解本文披露的各实施例。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1