CN101909079B - 一种骨干网链路中用户上网行为数据采集方法和系统 - Google Patents

一种骨干网链路中用户上网行为数据采集方法和系统 Download PDF

Info

Publication number
CN101909079B
CN101909079B CN 201010232794 CN201010232794A CN101909079B CN 101909079 B CN101909079 B CN 101909079B CN 201010232794 CN201010232794 CN 201010232794 CN 201010232794 A CN201010232794 A CN 201010232794A CN 101909079 B CN101909079 B CN 101909079B
Authority
CN
China
Prior art keywords
url
user
website page
pattern feature
internet behavior
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN 201010232794
Other languages
English (en)
Other versions
CN101909079A (zh
Inventor
张雁冰
胡平
刘军
王强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changshu intellectual property operation center Co.,Ltd.
Original Assignee
BEIJING MAXIT TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING MAXIT TECHNOLOGY Co Ltd filed Critical BEIJING MAXIT TECHNOLOGY Co Ltd
Priority to CN 201010232794 priority Critical patent/CN101909079B/zh
Publication of CN101909079A publication Critical patent/CN101909079A/zh
Application granted granted Critical
Publication of CN101909079B publication Critical patent/CN101909079B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开一种骨干网链路中用户上网行为数据采集方法,该方法包括:捕获骨干网链路中包含HTTP请求报文的数据包,采用并行处理从数据包中根据HTTP协议解析提取用户访问的网站页面URL、以及反映用户上网行为的HTTP字段信息;根据URL模式特征树过网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL;以异步方式抓取所述过滤后的网站页面URL的页面内容。通过本发明的方法和系统,能够实时截获万兆链路中包含HTTP请求报文的原始数据包;实现了从原始数据包中实时提取用户IP地址、网站页面URL地址、和其它相关的用户上网信息数据;实现了对海量网站页面URL地实时过滤和对页面内容的准实时抓取。

Description

一种骨干网链路中用户上网行为数据采集方法和系统
技术领域
本发明涉及网络技术,尤其涉及一种骨干网链路中用户上网行为数据采集方法和系统。
背景技术
基于统计、应用等各个方面的需求,需要在例如电信运营商骨干网络的传输链路上对互联网用户的网上行为活动数据进行全面的采集和获取。通常来说,电信运营商骨干网络大多采用万兆带宽(即10Gbps)网络传输链路,如何从电信运营商骨干网络传输链路中迅速实时地获得到网络用户上网行为数据,从技术上存在很大的挑战和困难。目前业界还没有基于电信运营商骨干网络层面的用户上网行为数据采集解决方案。
本申请人在申请号为200910143895.3的申请中,提供了一种媒体技术平台(Media Technology Platform,以下简称MTP)。MTP是一个基于互联网宽带用户上网行为的为互联网网站提供根据用户偏好进行内容定制的智能化信息服务技术平台。MTP需要获得电信运营商中心的所有互联网宽带用户的全部网上行为活动数据,为互联网网站提供根据用户偏好进行内容定制的智能化信息服务。由于电信运营商骨干网络大多采用万兆带宽网络传输链路,即10Gbps,因此MTP数据采集子系统需要能够直接从万兆链路中获取真实的用户上网行为数据并提供给数据分析子系统。MTP数据采集子系统需要解决的问题是如何从电信运营商省级中心的万兆网络传输链路中实时地获得到宽带用户上网行为数据,以供MTP的数据分析及数据驱动子系统使用。
发明内容
本发明要解决的一个技术问题是提供一种骨干网链路中用户上网行为数据采集方法,能够实现对骨干网络链路中用户上网数据的采集,效率高。
根据本发明的一个方面,提供一种骨干网链路中用户上网行为数据采集方法,包括:
捕获骨干网链路中包含HTTP请求报文的数据包
采用并行处理从数据包中根据HTTP协议解析提取用户访问的网站页面URL、以及反映用户上网行为的HTTP字段信息;
根据URL模式特征树对网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL;
以异步方式抓取所述过滤后的网站页面URL的页面内容;
其中,所述根据URL模式特征树对网站页面URL进行过滤的步骤包括:
将网站页面URL与非主页面URL模式特征树索引表和已抓取过的URL模式特征树索引表进行比较,过滤掉不需要抓取的网站页面URL,以及已经抓取过的页面。
根据本发明的方法的一个实施例,该用户上网行为数据采集方法还包括步骤:采用基于状态机的多模匹配方法将网站页面URL与过滤规则进行比较,以过滤掉不需要抓取的网站页面URL。
根据本发明的方法的一个实施例,该用户上网行为数据采集方法还包括步骤:将URL页面内容的可获取状态实时动态地反馈回URL模式特征树。
根据本发明的方法的一个实施例,还包括步骤:
从数据包中根据TCP/IP协议解析提取用户的IP地址;
根据用户IP地址查询数据库中用户IP-UserID映射服务,以获得用户的UserID。
本发明提供的骨干网链路中用户上网行为数据采集方法,从骨干网链路中捕获数据包,从数据包中解析获得URL地址,对获得的URL地址进行根据URL模式特征树进行过滤,对过滤后的URL进行页面内容抓取,大大提高了对URL页面内容抓取的速度,满足了在骨干网络中提取大量用户访问页面的内容提取要求。对URL进行过滤,可以剔除大量的不需要抓取内容的URL,大大提高了处理效率。
本发明要解决的一个技术问题是提供一种骨干网链路中用户上网行为数据采集系统,能够实现对骨干网络链路中用户上网数据的采集,效率高。
根据本发明的另一方面,提供一种用户上网行为数据采集系统,包括:
数据包捕获设备,用于捕获骨干网链路中包含HTTP请求报文的数据包;
URL提取设备,用于从数据包中根据HTTP协议解析提取用户访问的网站页面URL、以及反映用户上网行为的HTTP字段信息;
URL过滤设备,用于根据URL模式特征树对提取的网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL;
页面内容抓取设备,用于准实时地抓取所述过滤后的网站页面URL的页面内容;
其中,URL过滤设备将网站页面URL与非主页面URL模式特征树和已抓取过的URL模式特征树索引表做比较,过滤掉不需要抓取的网站页面URL,以及已经抓取过的页面。
根据本发明的系统的一个实施例,该系统还包括:经验规则过滤设备,用于采用基于状态机的多模匹配方法将网站页面URL与经验规则表中的过滤规则进行比较,以过滤掉不需要抓取的网站页面URL。
根据本发明的系统的一个实施例,该系统还包括:特征树反馈设备,用于将URL页面内容的可获取状态实时动态地反馈到URL模式特征树。
根据本发明的系统的一个实施例,该系统还包括:用户ID获取设备,用于从数据链路帧中根据TCP/IP协议解析提取用户的IP地址,根据用户IP地址查询数据库中用户IP-UserID映射服务获得用户的UserID。
本发明提供的骨干网链路中用户上网行为数据采集系统,通过数据包捕获设备从骨干网链路中捕获数据包,通过URL提取设备从数据包中解析获得URL地址,通过URL过滤设备对获得的URL地址进行根据URL模式特征树进行过滤,通过页面内容抓取设备对过滤后的URL进行页面内容抓取,大大提高了对URL页面内容抓取的速度,满足了在骨干网络中提取大量用户访问页面的内容提取要求。对URL进行过滤,可以剔除大量的不需要抓取内容的URL,大大提高了处理效率。
附图说明
图1示出本发明的骨干网链路中用户上网行为数据采集方法的一个实施例的流程图;
图2示出本发明的一个URL模式特征树的图示;
图3示出本发明的骨干网链路中用户上网行为数据采集方法的另一个实施例的流程图;
图4示出Lucene的索引文件的概念结构;
图5示出本发明的Lucene的索引文件结构;
图6示出本发明的实施例中网站页面URL过滤和抓取的图示;
图7示出本发明的骨干网链路中用户上网行为数据采集方法的另一个实施例的图示;
图8示出本发明的用户上网行为数据采集系统的一个实施例的结构图;
图9示出本发明的用户上网行为数据采集系统的另一个实施例的结构图;
图10示出本发明的用户上网行为数据采集系统的又一个实施例的结构图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。
图1示出本发明的骨干网链路中用户上网行为数据采集方法的一个实施例的流程图。
如图1所示,在步骤102,捕获骨干网链路中包含HTTP(Hypertext Transfer Protocol,超文本传输协议)请求报文的数据包。例如,在低速骨干网网络链路上可以采用系统中断方式从网卡设备中获得串行网络链路帧数据流,在高速骨干网网络链路上可以采用软件轮询方式从网卡设备中获得高速串行网络链路帧数据流,以DMA(Direct Memory Access,直接内存访问)方式将网络链路帧数据存储到多个内存缓存区内。
在步骤104,从数据包中根据HTTP协议解析提取用户访问的网站页面URL(Uniform Resource Locator,统一资源定位符)、以及反映用户上网行为的HTTP字段信息。采用并行化方法处理捕获到的包含HTTP请求的数据帧,例如采用多线程方式并行处理数据帧,解析HTTP协议,提取出用户所访问的网站页面URL地址、用户在该网站上的HTTP Cookie、本次用户访问的Referrer等信息。在一个实施例中,还从捕获的数据包中解析TCP/IP协议提取用户的IP(InternetProtocol,因特网协议)地址、用户访问的网站IP地址、和访问时间;根据用户IP地址查询基于例如电信运营商RADIUS(RemoteAuthentication Dial In User Service,远程用户拨号认证系统)数据库的用户IP-UserID(用户标识)映射服务,以获得用户的UserID。
在步骤106,根据URL模式特征树对网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL。URL模式特征树根据网站页面URL的结构特征构建,以反映URL的层级属性关系。例如,将网站页面的URL与分布式的非主页面URL模式特征树和/或已抓取过的URL模式特征树做比较,快速过滤掉不需要抓取的网站页面的URL。稍后将对URL模式特征树进行介绍和说明。
在步骤108,以异步方式抓取过滤后的网站页面URL的页面内容。例如,实时获取网站页面URL,采用异步方式抓取页面内容,并以分布式方法解析页面内容,提取出页面包含的文本信息,实现准实时地抓取URL页面内容。
下面对URL模式特征树进行介绍。字符串模式是指对一个具有特定顺序的字符序列(即字符串)的命名,通常可以用该字符串作为其模式名称。URL模式就是指该URL的字符序列。URL模式特征树是将若干URL字符串按照它们的字符序列组织成一个树型结构。举一个URL模式特征树的简单例子,根据URL字符串baidu、gaogle、和sioa可构建的URL模式特征树如图2所示。在图2中,URL模式特征树中的每个节点结构包括标签(label)、深度(depth)、字符(ch)、孩子节点(Pattern_Tree_Node childs)、孩子节点个数(nchild)等域;其中标签表示这个节点在哪个模式串中,深度表示该节点在树中深度;字符表示该节点的实际字符,孩子节点表示256个子孩子节点(ASCII码0),孩子节点个数表示孩子节点中的孩子节点的个数。根据垃圾URL模式构建非主页面URL模式特征树,根据已经抓取过的URL模式构建已抓取过的URL模式特征树。
在上述实施例中,从骨干网链路中捕获数据包,从数据包中解析获得URL地址,对获得的URL地址进行根据URL模式特征树进行过滤,对过滤后的URL进行页面内容抓取,大大提高了对URL页面内容抓取的速度,满足了在骨干网络中提取大量用户访问页面的内容提取要求。对于骨干网络捕获的数据包,分配到多个缓冲区中并行处理,提高了处理的速度和效率。而对URL进行过滤,可以剔除大量的不需要抓取内容的URL,大大提高了后续处理效率。采用异步方式抓取页面内容,并以分布式方法解析页面内容,可以做到页面内容抓取的准实时性。
图3示出本发明的骨干网链路中用户上网行为数据采集方法的另一个实施例的流程图。
如图3所示,在步骤302,在高速网络链路上采用软件轮询方式从网卡设备中获得高速串行网络链路帧数据流。
在步骤304,例如以DMA方式将高速串行网络链路帧数据存储到多个内存缓存区内。
在步骤306,采用多线程方式并行处理各个内存缓冲区内的数据帧,解析获得用户IP地址和网站页面URL。例如,解析TCP/IP协议,提取出用户的IP地址、用户访问的网站IP地址、和访问时间;解析HTTP协议,提取出用户所访问的网站页面URL地址、用户在该网站上的HTTP Cookie、本次用户访问的Referrer等信息。
在步骤308,根据用户IP地址查询基于MTP基于电信运营商RADIUS数据库的用户IP-UserID映射服务,以获得用户的UserID。
在步骤310,采用基于状态机的多模匹配方法将需要过滤的URL与经验规则列表中的所有过滤规则做一次性比较,快速过滤掉不需要抓取的URL。一个基于状态机的多模式匹配方法的例子是AC-BM(Aho_Corasick-Boyer-Moore算法的缩写),下面将对AC-BM进行更具体的介绍。
在步骤312,将需要过滤的URL与分布式的非主页面URL模式特征树索引表和已抓取过的URL模式特征树索引表做比较,快速过滤掉不需要抓取的URL。非主页面URL模式特征树用于判断一个URL判断是不是垃圾URL,如果是,则不需要对其页面内容进行抓取,如果不是,则通过已抓取过的URL特征树索引表来判断该URL是已经被抓取还是没有被抓取,如果是已经抓取,则把这URL对应的页面信息关联起来并保存,不需要提供给后面的页面抓取模块,如果没有被抓取,则提供给后面的页面抓取模块进行页面内容的抓取。URL模式特征树索引表与URL模式特征树的功能相似,但是由于已抓取过的URL数量巨大,通常不会以URL模式特征树的方式在内存中建立庞大的树型结构,而是在外部存储上以文件索引形式来实现。下面将结合图4和图5介绍URL模式特征树索引表的具体实现。
在步骤314,页面抓取程序采用非阻塞方式发送网站页面URL后立即返回,然后以异步I/O方式等待网站相应并获得相应页面内容。此外,对所发送的页面URL的DNS解析结果进行缓存,以供重复使用。
需要指出,步骤308、310和312之间的顺序关系并不限定为上述实施例所示,可以根据需要进行调整。
下面对AM-BM进行介绍。在本发明中的实施例中,AM-BM算法用于对给定一个URL判断在此URL中是否能找到URL模式树中的字符串,返回的是个真假值,而URL模式树包含了需要过滤的字符串,比如flash、jpg、flv、myyouxi等。
BM跳(下称“坏字符跳”)是指当某个字符匹配不上时应该怎么跳,并用一个长度为256的整型数组来保存256个字符在失配时的离模式树根的距离。
坏字符跳数组的初始化步骤如下:
(1)每次失配跳的最大长度应该小于所有模式串中最短的模式串的长度;
(2)先把256个字母的坏字符跳初始化为最短的模式串的长度;
(3)根据所有的模式串的前最短的模式串的长度的字母来覆盖一下这个字母的坏字符跳。
首先对坏字符跳数组进行初始化,所有初始化完毕,举个例子来完成一次从后向前匹配过程:
待匹配的字符串
http://www.vsabancl.com/ebaircgooeh3si9489.flvygaogleuxia.jeg
每次比较跳动的长度:11111113
比较过程的详细描述如下:
从待匹配的字符串的后长度为最小模式串长度的字符开始比较,在本例中是从a.jeg中的a开始比较,a跟模式树比较失配a字母的坏字符跳为4,而失配的是第一个字母所以只跳一步,接着比较ia.jeg,依此类推直到gleuxia.jeg,此时字母g匹配,当前位置前进一位,下个字母为l,比较失配,l字母的坏字符跳是4,当前位置前进了一位,所以这跳的步伐为:4-1=3
当坏字符跳减去当前位置前进的数为负数时,只跳一步。
下面对URL模式特征树索引表进行说明。图4示出Lucene的索引文件的概念结构。如图4所示,Lucene索引index由若干段(segment)组成,每一段由若干的文档(document)组成,每一个文档由若干的域(field)组成,每一个域由若干的项(term)组成。项是最小的索引概念单位,它直接代表了一个字符串以及其在文件中的位置、出现次数等信息。域是一个关联的元组,由一个域名和一个域值组成,域名是一个字串,域值是一个项,比如将“标题”和实际标题的项组成的域。文档是提取了某个文件中的所有信息之后的结果,这些组成了段,或者称为一个子索引。子索引可以组合为索引,也可以合并为一个新的包含了所有合并项内部元素的子索引。可以看出,Lucene的索引结构在概念上为传统的倒排索引结构。
从概念上映射到结构中,索引(index)被处理为一个目录(文件夹),其中含有的所有文件即为其内容,这些文件按照所属的段不同分组存放,同组的文件拥有相同的文件名,不同的扩展名。此外还有三个文件,它们分别是segments,deletable和lock文件,都没有扩展名,分别用来保存所有的段的记录、保存已删除文件的记录和控制读写的同步。每个段(例如,segment1)包含一组文件,它们的文件扩展名不同,但是文件名均为记录在文件segments中段的名字。具体情况参见如下的结构图5。
在图5中,每个段的文件中,主要记录了两大类的信息:域集合与项集合。这两个集合中所含有的文件在图5中均有表明。由于索引信息是静态存储的,域集合与项集合中的文件组采用了一种类似的存储办法:一个小型的索引文件,运行时载入内存;一个对应于索引文件的实际信息文件,可以按照索引中指示的偏移量随机访问;索引文件与信息文件在记录的排列顺序上存在隐式的对应关系,即索引文件中按照“索引项1、索引项2...”排列,则信息文件则也按照“信息项1、信息项2...”排列。比如在图5所示文件中,segment1.fdx与segment1.fdt之间,segment1.tii与segment1.tis、segment1.prx、segment1.frq之间,都存在这样的组织关系。而域集合与项集合之间则通过域的在域记录文件(比如segment1.fnm)中所记录的域记录号维持对应关系,在图5中segment1.fdx与segment1.tii中就是通过这种方式保持联系。这样,域集合和项集合不仅仅联系起来,而且其中的文件之间也相互联系起来。
此外,标准化因子文件和被删除文档文件则提供了一些程序内部的辅助设施(标准化因子用在评分排序机制中,被删除文档是一种伪删除手段)。这样,整个段的索引信息就通过这些文档有机的组成。
下面对根据非主页面URL模式特征树和已抓取的URL模式特征索引表对URL进行过滤进行介绍。该过滤过程具体步骤如下:
(1)为非主页面URL(垃圾URL)和已抓取过的URL分别创建各自的分布式URL模式特征索引表文件:
1.1.选择值域范围均匀的哈希(Hash)函数,并根据值域范围确定用来存储URL模式特征索引表节点的分布式节点数目,以及每个节点对应的哈希值范围;
1.2.用哈希函数对输入的URL生成哈希值;
1.3.根据输入的URL的哈希值对该URL建立索引,并将索引文件存放至对应的分布式节点上;
(2)将需要过滤的URL与分布式的非主页面URL和已抓取过的URL的URL模式特征索引表比较,确定该URL是否需要抓取:
2.1.用哈希函数对需要过滤的URL生成哈希值;
2.2.根据待过滤的URL的哈希值确定与其最相似的URL所在的分布式节点,并将该URL发送至相应节点处理;
2.3.收到待过滤的URL的节点将该URL与该节点上存储的已有URL比较,确定该URL是否已存在,如果存在则过滤掉该URL,如果不存在确认该URL的内容需要被抓取。需要抓取的URL通过后面的页面内容抓取程序进行抓取。
在网页内容被抓取后,根据本发明的一个实施例,将URL页面内容的可获取状态实时动态地反馈URL模式特征树。图6示出本发明的实施例中网站页面URL过滤和抓取的图示。如图6所示,网站页面URL经过网站页面URL过滤器,过滤掉不需要抓取的网站页面URL,将需要抓取的网站页面URL发送给网站页面URL爬虫,网站页面URL爬虫对网站页面URL的页面内容进行抓取;如果抓取到相应页面内容,则一方面将页面内容发送给多个分布式的HTTP协议解析器,并提取出用户浏览过的页面文本内容数据,另一方面将该网站页面URL反馈回已抓取过的URL模式特征树;如果抓取不到页面内容,则将网站页面URL反馈回给非主页面URL模式特征树。例如,设置了一个定时器,每隔一分钟会把反馈来的已抓取过的URL添加到已抓取过的URL模式特征树索引表文件中,如果抓不到页面内容则判定该URL为垃圾URL,对它的处理同样是定时地把它反馈并添加到垃圾URL模式特征树索引表文件中。
图7示出本发明的骨干网链路中用户上网行为数据采集方法的另一个实施例的图示。如图7所示,从骨干网网络设备接口捕获串行网络链路帧数据流,并存储于多个数据缓冲区1、2、3、...、n内;多线程并行化处理多个缓冲区1、2、3、...、n内的网络链路帧数据,从中提取出包括网站页面URL在内的用户页面访问信息;过滤网站页面URL,抓取过滤后的网站页面URL对应的页面内容,解析页面内容;将页面内容抓取过程中已经抓取和无法抓取的网站页面URL反馈URL过滤模块。
下面具体介绍本发明的方法的一个应用例。在该应用例中,通过本发明的方法,在万兆网络链路中实时地捕获包含HTTP请求报文的原始数据链路帧,捕获速度达到每秒2万个数据帧,约为平均200(介于150到300之间)次的网站页面访问请求;从原始数据链路帧中根据TCP/IP和HTTP协议实时地解析提取用户访问过的网站页面URL地址、以及其它反映用户上网行为的HTTP字段信息,用户上网记录生成速度达到每秒2万个;根据URL模式特征树实时地筛选出需要获取相应页面内容的网站页面URL,过滤速度达到每秒10万个URL;以异步方式从互联网上快速抓取大量URL页面内容,并将URL页面内容的可获取状态实时动态地反馈URL模式特征树,抓取速度达到每秒80-100个网站页面,实现了准实时地对页面内容进行抓取。
虽然上述应用例中提供了一个本发明的方法在万兆网络链路中的性能,但是,本领域的技术人员应当理解,通过提高硬件性能或者其它方式,本发明的方法可以获得更高的性能,可以用于更高带宽的网络链路中用户上网数据的采集。同样,根据具体硬件或者应用环境的不同,实现性能也可能低于上述应用例的性能。
通过本发明的方法,实现了实时截获万兆链路中包含HTTP请求报文的原始数据包;实现了从原始数据包中实时提取用户IP地址、网站页面URL地址、和其它相关的用户上网信息数据;实现了对海量网站页面URL地实时过滤和对页面内容的准实时抓取。
需要指出,虽然在实施例和应用例中介绍了本发明的方法在万兆骨干网络链路中的实现和应用,但是,本领域的技术人员应当理解,上述实施例仅为解释说明本发明,并不用于限定本发明。本发明的方法同样可以用于更高或者较低带宽的网络链路中。
图8示出本发明的用户上网行为数据采集系统的一个实施例的结构图。如图8所示,该数据采集系统实施例包括数据包捕获设备81、URL提取设备82、URL过滤设备83和页面内容抓取设备84。其中,数据包捕获设备81用于捕获骨干网链路中包含HTTP请求报文的数据包;URL提取设备82用于从数据包中根据HTTP协议解析提取用户访问的网站页面URL、以及反映用户上网行为的HTTP字段信息;URL过滤设备83用于根据URL模式特征树对提取的网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL;页面内容抓取设备84用于准实时地抓取过滤后的网站页面URL的页面内容。根据本发明的一个实施例,数据包捕获设备81在高速骨干网上采用软件轮询方式从网卡设备中获得高速串行网络链路帧数据流,以DMA方式将高速串行网络链路帧数据存储到多个缓冲区中;URL提取设备82采用多线程并行处理方式从数据包中根据HTTP协议解析提取用户访问的网站页面URL。根据本发明的一个实施例,URL过滤设备83将网站页面URL与非主页面URL模式特征树和已抓取过的URL模式特征树索引表做比较,过滤掉不需要抓取的网站页面URL。
图9示出本发明的用户上网行为数据采集系统的另一个实施例的结构图。在该实施例中,除了数据包捕获设备81、URL提取设备82、URL过滤设备83和页面内容抓取设备84,还可选地包括用户ID获取设备95和特征树反馈设备96。其中,用户ID获取设备95用于从数据链路帧中根据TCP/IP协议解析提取用户的IP地址,根据用户IP地址查询数据库中用户IP-UserID映射服务获得用户的UserID。特征树反馈设备96用于将URL页面内容的可获取状态实时动态地反馈到URL模式特征树。
图10示出本发明的用户上网行为数据采集系统的又一个实施例的结构图。该实施例和图8的实施例相比,除了包括数据包捕获设备81、URL提取设备82、URL过滤设备83和页面内容抓取设备84,还包括经验规则过滤设备105。经验规则过滤设备105用于采用基于状态机的多模匹配方法将网站页面URL与经验规则表中的过滤规则进行比较,以过滤掉不需要抓取的网站页面URL。
本领域的技术人员应当理解,本发明提供的系统中的各个设备,可以分别作为单独的装置存在,或者一个设备集成在一个装置上存在。
本发明上述实施例的用户上网行为数据采集系统用框示出以说明它们的功能。这些功能块可以用硬件、软件、固件、中间件、微代码、硬件描述语音或者它们的任意组合来实现。
例来说,一个或者两个功能块都可以利用运行在微处理器、数字信号处理器(DSP)或任何其他适当平台上的代码实。代码可以表示过程、功能、子程序、程序、例行程序、子例行程序、模块或者指令、数据结构或程序语句的任意组合。
代码可以位于计算机可读介质中。计算机可读介质可以包括一个或者多个存储设备,例如,包括RAM存储器、闪存存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或本领域公知的其他任何形式的存储介质。计算机可读介质还可以包括编码数据信号的载波。
可选地,或者除此之外,一个或者两个功能模块都可以利用专用集成电路(ASIC)、控制器、微控制器、状态机、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、离散门或者晶体管逻辑、离散硬件部件、或者它们的任意组合实现。
本领域技术人员将意识到硬件、固件和软件配置在这些情况下的可替换性,以及如何最好地实现每个特定应用地所述功能。
本发明提供的骨干网链路中用户上网行为数据采集系统,通过数据包捕获设备从骨干网链路中捕获数据包,通过URL提取设备从数据包中解析获得URL地址,通过URL过滤设备对获得的URL地址进行根据URL模式特征树进行过滤,通过页面内容抓取设备对过滤后的URL进行页面内容抓取,大大提高了对URL页面内容抓取的速度,满足了在骨干网络中提取大量用户访问页面的内容提取要求。对URL进行过滤,可以剔除大量的不需要抓取内容的URL,大大提高了处理效率。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

Claims (12)

1.一种骨干网链路中用户上网行为数据采集方法,其特征在于,包括:
捕获骨干网链路中包含超文本传输协议HTTP请求报文的数据包;
采用并行处理从数据包中根据HTTP协议解析提取用户访问的网站页面统一资源定位符URL、以及反映用户上网行为的HTTP字段信息;
根据URL模式特征树对网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL;
以异步方式抓取所述过滤后的网站页面URL的页面内容;
其中,所述根据URL模式特征树对网站页面URL进行过滤的步骤包括:
将网站页面URL与非主页面URL模式特征树索引表和已抓取过的URL模式特征树索引表进行比较,过滤掉不需要抓取的网站页面URL,以及已经抓取过的页面。
2.根据权利要求1所述的用户上网行为数据采集方法,其特征在于,还包括:
采用基于状态机的多模匹配方法将网站页面URL与过滤规则进行比较,以过滤掉不需要抓取的网站页面URL。
3.根据权利要求1或2所述的用户上网行为数据采集方法,其特征在于,
所述将网站页面URL与非主页面URL模式特征树索引表和已抓取过的URL模式特征树索引表进行比较,过滤掉不需要抓取的网站页面URL包括:
(1)为非主页面URL和已抓取过的URL分别创建各自的分布式URL模式特征索引表文件:
选择值域范围均匀的哈希函数,并根据值域范围确定用来存储URL模式特征索引表节点的分布式节点数目,以及每个节点对应的哈 希值范围;
用哈希函数对输入的URL生成哈希值;
根据输入的URL的哈希值对该URL建立索引,并将索引文件存放至对应的分布式节点上;
(2)将需要过滤的URL与分布式的非主页面URL和已抓取过的URL的URL模式特征索引表比较,确定该URL是否需要抓取:
用哈希函数对需要过滤的URL生成哈希值;
根据待过滤的URL的哈希值确定与其最相似的URL所在的分布式节点,并将该URL发送至相应节点处理;
收到待过滤的URL的节点将该URL与该节点上存储的已有URL比较,确定该URL是否已存在,如果存在则过滤掉该URL,如果不存在确认该URL的内容需要被抓取。
4.根据权利要1所述的用户上网行为数据采集方法,其特征在于,还包括:
将URL页面内容的可获取状态实时动态地反馈回URL模式特征树。
5.根据权利要求1所述的用户上网行为数据采集方法,其特征在于,
所述捕获骨干网链路中包含HTTP请求报文的数据包的步骤包括:
在高速骨干网上采用软件轮询方式从网卡设备中获得高速串行网络链路帧数据流;
以直接内存访问方式将高速串行网络链路帧数据存储到多个缓冲区中;
和/或
所述从数据包中根据HTTP协议解析提取用户访问的网站页面URL的步骤包括:
采用多线程并行处理方式从数据包中根据HTTP协议解析提取用户访问的网站页面URL。
6.根据权利要求1所述的用户上网行为数据采集方法,其特征在 于,还包括:
从数据包中根据TCP/IP协议解析提取用户的IP地址;
根据用户IP地址查询数据库中用户IP-UserID映射服务,以获得用户的用户标识。
7.一种用户上网行为数据采集系统,其特征在于,包括:
数据包捕获设备,用于捕获骨干网链路中包含HTTP请求报文的数据包;
统一资源定位符URL提取设备,用于从数据包中根据超文本传输协议HTTP协议解析提取用户访问的网站页面URL、以及反映用户上网行为的HTTP字段信息;
URL过滤设备,用于根据URL模式特征树对提取的网站页面URL进行过滤,获得需要抓取页面内容的网站页面URL;
页面内容抓取设备,用于准实时地抓取所述过滤后的网站页面URL的页面内容;
其中,所述URL过滤设备将网站页面URL与非主页面URL模式特征树和已抓取过的URL模式特征树索引表做比较,过滤掉不需要抓取的网站页面URL,以及已经抓取过的页面。
8.根据权利要求7所述的用户上网行为数据采集系统,其特征在于,还包括:
经验规则过滤设备,用于采用基于状态机的多模匹配方法将网站页面URL与经验规则表中的过滤规则进行比较,以过滤掉不需要抓取的网站页面URL。
9.根据权利要求7或8所述的用户上网行为数据采集系统,其特征在于,所述URL过滤设备为非主页面URL和已抓取过的URL分别创建各自的分布式URL模式特征索引表文件:选择值域范围均匀的哈希函数,并根据值域范围确定用来存储URL模式特征索引表节点的分布式节点数目,以及每个节点对应的哈希值范围,用哈希函数对输入的URL生成哈希值,根据输入的URL的哈希值对该URL建立索引,并将索引文件存放至对应的分布式节点上;将需要过滤的URL与分布式的 非主页面URL和已抓取过的URL的URL模式特征索引表比较,确定该URL是否需要抓取:用哈希函数对需要过滤的URL生成哈希值,根据待过滤的URL的哈希值确定与其最相似的URL所在的分布式节点,并将该URL发送至相应节点处理,收到待过滤的URL的节点将该URL与该节点上存储的已有URL比较,确定该URL是否已存在,如果存在则过滤掉该URL,如果不存在确认该URL的内容需要被抓取。
10.根据权利要求7所述的用户上网行为数据采集系统,其特征在于,还包括:
特征树反馈设备,用于将URL页面内容的可获取状态实时动态地反馈到URL模式特征树。
11.根据权利要求7所述的用户上网行为数据采集系统,其特征在于,
所述数据包捕获设备在高速骨干网上采用软件轮询方式从网卡设备中获得高速串行网络链路帧数据流,以直接内存访问方式将高速串行网络链路帧数据存储到多个缓冲区中;
和/或
URL提取设备采用多线程并行处理方式从数据包中根据HTTP协议解析提取用户访问的网站页面URL。
12.根据权利要求7所述的用户上网行为数据采集系统,其特征在于,还包括:
用户ID获取设备,用于从数据链路帧中根据TCP/IP协议解析提取用户的IP地址,根据用户IP地址查询数据库中用户IP-UserID映射服务获得用户的用户标识。 
CN 201010232794 2010-07-15 2010-07-15 一种骨干网链路中用户上网行为数据采集方法和系统 Active CN101909079B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010232794 CN101909079B (zh) 2010-07-15 2010-07-15 一种骨干网链路中用户上网行为数据采集方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010232794 CN101909079B (zh) 2010-07-15 2010-07-15 一种骨干网链路中用户上网行为数据采集方法和系统

Publications (2)

Publication Number Publication Date
CN101909079A CN101909079A (zh) 2010-12-08
CN101909079B true CN101909079B (zh) 2013-04-24

Family

ID=43264396

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010232794 Active CN101909079B (zh) 2010-07-15 2010-07-15 一种骨干网链路中用户上网行为数据采集方法和系统

Country Status (1)

Country Link
CN (1) CN101909079B (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102065147A (zh) * 2011-01-07 2011-05-18 深圳市易聆科信息技术有限公司 一种基于企业应用系统获取用户登录信息的方法及装置
CN102955795A (zh) * 2011-08-24 2013-03-06 句容今太科技园有限公司 Web信息采集系统
CN102364897A (zh) * 2011-09-30 2012-02-29 北京亿赞普网络技术有限公司 一种网关级在线网络报文检测过滤方法及装置
CN102694802B (zh) * 2012-05-22 2015-10-21 中国联合网络通信集团有限公司 网络访问信息记录方法和装置
CN103546514B (zh) * 2012-07-13 2016-12-21 阿里巴巴集团控股有限公司 一种处理延迟发送的日志数据的方法和系统
CN103685327B (zh) * 2012-08-30 2017-12-22 百度在线网络技术(北京)有限公司 代理云环境中的用户抓取外部网页的方法和装置
CN103152387B (zh) * 2013-01-30 2016-01-20 中兴通讯股份有限公司 一种获取http用户行为轨迹的装置与方法
CN103078876B (zh) * 2013-01-31 2015-07-15 北京集奥聚合科技有限公司 Http报文隐私保护方法和装置
CN103220274B (zh) * 2013-03-25 2016-06-15 北京东方网信科技股份有限公司 一种用于运营商网络出口的网络报文模式匹配方法及系统
CN103995773B (zh) * 2014-02-28 2019-11-22 上海斐讯数据通信技术有限公司 一种url过滤功能的自动测试方法
CN103957154B (zh) * 2014-04-11 2017-12-05 国家计算机网络与信息安全管理中心 网络数据包url过滤方法
CN105204983B (zh) * 2014-06-16 2018-07-06 北京基调网络系统有限公司 Java Web应用性能诊断方法及装置
CN105337932A (zh) * 2014-06-30 2016-02-17 杭州迪普科技有限公司 一种web应用防护方法及装置
CN104158698B (zh) * 2014-08-06 2017-07-28 厦门天锐科技股份有限公司 一种网页浏览记录统计方法及系统
CN104270358B (zh) * 2014-09-25 2018-10-26 同济大学 可信网络交易系统客户端监控器及其实现方法
CN104361061B (zh) * 2014-11-03 2018-02-16 南京烽火星空通信发展有限公司 一种web页面信息感知采集方法
CN105808606B (zh) * 2014-12-31 2020-05-15 北京奇虎科技有限公司 一种移动设备上的搜索方法和装置
CN105099829B (zh) * 2015-08-30 2018-04-10 大连理工大学 一种基于http协议的电子资源服务可用性自动化监测方法
CN105357118A (zh) * 2015-10-23 2016-02-24 上海斐讯数据通信技术有限公司 一种基于规则的流量分类方法和系统
CN108228663A (zh) * 2016-12-21 2018-06-29 杭州海康威视数字技术股份有限公司 一种分页检索方法及装置
CN108023767A (zh) * 2017-11-29 2018-05-11 四川无声信息技术有限公司 上网行为追踪方法、装置及服务器
CN110943873B (zh) * 2018-09-21 2021-08-17 中移(杭州)信息技术有限公司 一种报文流的处理方法、装置和可读介质
CN112019449B (zh) * 2020-08-14 2022-06-17 四川电科网安科技有限公司 流量识别抓包方法和装置
CN113220652B (zh) * 2021-05-06 2022-02-11 北京连山科技股份有限公司 一种基于压缩处理的多链路并发传输方法和系统
CN114900487B (zh) * 2022-05-27 2023-12-19 深圳铸泰科技有限公司 基于内存设计优化流量抓取方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1798147A (zh) * 2004-12-28 2006-07-05 华为技术有限公司 一种统一资源定位符的匹配方法
CN101404666A (zh) * 2008-10-06 2009-04-08 赵洪宇 一种基于Web页无限层采集方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8122129B2 (en) * 2008-09-09 2012-02-21 Actiance, Inc. Hash-based resource matching

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1798147A (zh) * 2004-12-28 2006-07-05 华为技术有限公司 一种统一资源定位符的匹配方法
CN101404666A (zh) * 2008-10-06 2009-04-08 赵洪宇 一种基于Web页无限层采集方法

Also Published As

Publication number Publication date
CN101909079A (zh) 2010-12-08

Similar Documents

Publication Publication Date Title
CN101909079B (zh) 一种骨干网链路中用户上网行为数据采集方法和系统
CN101035128B (zh) 基于中文标点符号的三重网页文本内容识别及过滤方法
CN104022920B (zh) 一种lte网络流量识别系统及方法
CN107025296B (zh) 基于科技服务信息智能抓取系统数据收集方法
CN104077402B (zh) 数据处理方法和数据处理系统
CN103218431B (zh) 一种能识别网页信息自动采集的系统
CN104750704B (zh) 一种网页url地址分类识别方法及装置
US10216848B2 (en) Method and system for recommending cloud websites based on terminal access statistics
CN104951448B (zh) 一种为用户推送订阅类别的消息的方法和服务器
US20150095359A1 (en) Volume Reducing Classifier
CN105718590A (zh) 面向多租户的SaaS舆情监控系统及方法
CN104899323B (zh) 一种用于idc有害信息监测平台的爬虫系统
CN103532944B (zh) 一种捕获未知攻击的方法和装置
JP3802813B2 (ja) ウェブページ検索方法、ウェブページ検索装置、プログラム、および記録媒体
CN107092639A (zh) 一种搜索引擎系统
CN101694658A (zh) 基于新闻去重的网页爬虫的构建方法
CN104391978B (zh) 用于浏览器的网页收藏处理方法及装置
CN102984161B (zh) 一种可信网站的识别方法和装置
CN104615627B (zh) 一种基于微博平台的事件舆情信息提取方法及系统
CN105843965A (zh) 一种基于url主题分类的深层网络爬虫表单填充方法和装置
CN104899324A (zh) 一种基于idc有害信息监测系统的样本训练系统
CN104239582A (zh) 基于特征向量模型识别钓鱼网页的方法及装置
CN103324886A (zh) 一种网络攻击检测中指纹库的提取方法和系统
JP5364012B2 (ja) データ抽出装置、データ抽出方法、および、データ抽出プログラム
CN106528805A (zh) 基于用户的移动互联网恶意程序url智能分析挖掘方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100080 Beijing City, Haidian District Haidian street, No. 38 Silver Branch building room 701

Patentee after: Beijing xiaochinatang Culture Communication Co., Ltd.

Address before: 100080 Beijing City, Haidian District Haidian street, No. 38 Silver Branch building room 701

Patentee before: Beijing Maxit Technology Co., Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201116

Address after: 215500 No.13, Caotang Road, Changshu, Suzhou, Jiangsu Province

Patentee after: Changshu intellectual property operation center Co.,Ltd.

Address before: 100080 Beijing City, Haidian District Haidian street, No. 38 Silver Branch building room 701

Patentee before: Beijing xiaochinatang Culture Communication Co.,Ltd.

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 215500 5th floor, building 4, 68 Lianfeng Road, Changfu street, Changshu City, Suzhou City, Jiangsu Province

Patentee after: Changshu intellectual property operation center Co.,Ltd.

Address before: No.13 caodang Road, Changshu City, Suzhou City, Jiangsu Province

Patentee before: Changshu intellectual property operation center Co.,Ltd.