一种网站质量多层钻取系统和方法与流程

文档序号:14914471发布日期:2018-07-11 00:20阅读:253来源:国知局

本发明涉及网络安全技术领域,更具体地,涉及一种网站质量多层钻取系统和方法。



背景技术:

目前主流的网站质量分析方案有主动拨测技术和被动监测分析两种方式。

主动监测分析通过模拟终端拨测的方式记录相关的数据,按照对应的算法整理成对应的指标,可方便快捷的得到一个网站的指标情况,指标接近用户的主观感受。主动监测系统,如各地大量建设的自动拨测系统。

被动监测主要通过报文分析等技术手段,采集网络出口的数据报文进行分析,因报文数据是零散的,并未直接对应到一个网站,而多数系统无法关联网站元素,只能分析采集到的各URL的指标,个别系统通过Referer手段去关联网站元素,但因Referer技术本身缺陷,无法实现网站元素的准确关联。因此,现有被动监测系统主要还是分析各个元素或各个服务器IP的相关指标,如时延、成功率等。被动监测方式如通用的上网行为分析系统。

主动拨测技术虽然可以提供部分感知指标,但不具备普遍性,受拨测内容和拨测环境影响较大,无法准确反映网络质量,无法进一步钻取分析,只能从宏观上得到一个网站的好和坏,无法为故障定位提供参考数据。被动监测技术可以提供相关的指标情况,但只能提供网站中各元素的指标,无法提供整个网站的整体感知指标。



技术实现要素:

本发明提供一种克服上述问题或者至少部分地解决上述问题的网站质量多层钻取方法和系统,通过Referer和智能模板库匹配技术关联网站元素,解决网站元素关联的完整性和准确性问题,通过DPI(Deep Packet Inspection深度包检测)设备进行网络报文深入分析,通过KQI指标和KPI指标,建立一套垂直的多层次的网站/元素质量评价体系,基于完备的网站元素关联关系通过多层钻取技术实现故障精准定位。

根据本发明的一个方面,提供一种网站质量多层钻取方法,包括以下步骤:

S1、定期获取目标网站的所有元素,建立并更新网站的智能模板库;

S2、采集待分析网络链路中全量用户数据,生成网站中各元素的记录,并根据智能模板库将元素关联到对应的网站;

S3、制定关键质量指标和关键绩效指标,建立网站端到端的质量评估模型,并根据采集到的海量元素,从SP、Host、Url和服务器IP多层级对网站质量进行客观评价。

作为优选的,所述步骤S1具体包括:

S11、扫描网站及其首页HOST记录,逐一登录访问网站首页并加载所有网站首页的页面元素;

S12、采用多线程技术,通过监控线程获取主进程逐一加载的所有页面元素;

S13、建立网站SP、首页HOST值与这些页面元素URL之间的关联关系;

S14、定期获取最新网站资源URL信息,更新至智能模板库中。

作为优选的,所述步骤S13具体包括:关联关系先保存的作为智能模板库,通过合并更新方式,插入没有的关联关系,更新已有的关联关系,删除过期的关联关系记录,合并更新同时记录最后更新时间信息。

作为优选的,所述步骤S14具体包括:分析流控网站访问话单时,若发现话单记录Referer为空,则将话单记录Referer与智能模板库进行对比,匹配成功时补全该话单记录的Referer为网站首页的HOST值,更正部分资源元素的统计归属。

作为优选的,所述步骤S2具体包括:

S21、采用DPI设备,通过串接或镜像方式接入链路中,采集链路中全量用户数据,生成标准的业务记录,即为网站中各个元素的记录;

S22、结合智能模板库记录的Referer,将上述元素通过Referer技术进行网站和元素关联。

作为优选的,所述步骤S22具体包括:

S221、利用五元组和用户访问时间,将每个用户的每次访问网站的会话记录分类提取出来,并通过Referer技术匹配网站,将某个用户本地访问的全部会话记录进行关联,得到用户本次访问的具体网站,并初步分析该网站中包含的元素;

S222、对于没有Referer字段的会话记录,通过该会话记录中的url查找智能模板库中保存的该记录,并且通过智能模板库中记录的Referer能够找到该url的上级url最终确定其所属网站;

S223、当一个url对应多个Referer,分析流控话单时,基于用户标识+时间段框定多条话单记录,该多条话单记录视为同一会话Session,该组话单记录中发起访问最早的即为首GET,在匹配智能模板库时同时比较首GET与智能模板库中的网站SP首页HOST值,若一致则认为匹配成功。

作为优选的,所述步骤S3中,所述步骤S3中,所述质量模型用于将各关键质量指标指标按照一定的权重进行加权,得到一个网站的总体评分,还用于通过多层钻取技术,实现从SP、Host、Url和服务器IP等多层级的质量分析,为最终的故障定位和质量提升提供故障排除和资源引入提供指导意见。

一种网站质量多层钻取系统,包括数据采集层、数据挖掘层和业务层;

所述数据采集层用于模拟浏览器访问网站,通过网络抓包方式获取所有Response响应,将获取到的一个网站所有会话记录入库,形成该网站的智能模板库;

所述数据挖掘层用于采用DPI设备,通过串接或镜像方式接入网站链路中,采集链路中全量用户数据,生成网站中各个元素的记录,并结合网站的智能模板库和Referer技术将得到的元素关联到对应的网站;并通过制定关键质量指标,建立网站端到端的质量评估模型,对网站质量进行多层次分析;

所述业务层用于进行系统管理,并进行任务定义、模型定义、用户识别,将评估结果以报表形式展现。

作为优选的,所述数据采集层包括话单采集模块、Nat日志采集模块和网站资源采集模块;

所述网站资源采集模块用于模拟浏览器去访问网站的网站首页,逐一登录访问网站首页并加载所有网站首页的页面元素,并建立网站的智能模板库;

所述话单采集模块用于采用多线程技术,启动其它线程实时监控主进程的页面元素加载动作,获取主进程加载的所有页面元素的HTTP Request请求的URL链接地址;

所述Nat日志采集模块用于定期获取最新网站资源URL信息,更新至本地配置中。

作为优选的,所述数据挖掘层包括数据提取模块、数据统计模块、数据分析模块和质量评估模块;

所述数据提取模块用于采集用户流量,通过DPI设备的DPI和DFI技术将采集到用户流量进行解析,生成逐条的会话记录;

所述数据统计模块用于利用五元组和用户访问时间,将每个用户的每次访问网站的会话记录分类提取出来;

所述数据分析模块用于把通过Referer关联到的元素与通过智能模板库匹配的元素结合,实现网站元素的完整和准确关联;

所述质量评估模块用于建立网站端到端的质量评估模型,并根据采集到的海量元素,从SP、Host、Url和服务器IP多层级对网站质量进行客观评价。

本申请提出一种网站质量多层钻取方法和系统,定期采集相关网站,形成网站的静态资源库,之后在实际网站质量钻取分析过程中,采用电信级DPI设备,通过串接或镜像方式接入链路中,采集链路中全量用户数据,生成标准的业务记录,即网站中各个元素的记录。再将这些元素通过Referer技术关联到对应的网站的过程中,可结合网站的静态资源库记录的Referer,以实现网站关联元素关联的准确性和完整性。并提供垂直的多层钻取技术实现网站质量的深度分析,既可从宏观和主观感知上评价一个网站的好坏,又可通过基础的TCP层指标,准确定位网站好与坏的根本原因;会建立科学合理的网站质量评估模型,提供反映整个网站的总体质量评分、KQI指标和KPI指标等多层评分体系。总体质量评分主要是将各种KQI指标按照一定的权重进行加权,得到一个网站的总体评分。通过多层钻取技术,可实现从SP、Host、Url和服务器IP等多层级的质量分析,为最终的故障定位和质量提升提供故障排除和资源引入提供指导意见。

附图说明

图1为根据本发明实施例1的网站质量多层钻取方法流程图;;

图2为根据本发明实施例1的网站综合评分比较示意图;

图3为根据本发明实施例1的网站端到端时延指标示意图比较示意图;

图4为根据本发明实施例1的网页浏览按端到端时延倒序排序表格示意图;

图5为根据本发明实施例1的host端到端时延排序表格示意图;

图6位根据本发明实施例2的系统结构框图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

实施例1

图1示出了一种网站质量多层钻取方法,包括以下步骤:

S1、定期获取目标网站的所有元素,建立并更新网站的智能模板库;

S2、采集待分析网络链路中全量用户数据,生成网站中各元素的记录,并根据智能模板库将元素关联到对应的网站;

S3、制定关键质量指标和关键绩效指标,建立网站端到端的质量评估模型,并根据采集到的海量元素,从SP、Host、Url和服务器IP多层级对网站质量进行客观评价。

HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的。

但是,基于Referer技术无法100%关联网站元素,有少数会话记录并未携带Referer字段,我们就无法判断这部分记录属于哪个网站,也就是说,仅通过Referer技术无法完整关联用户一次访问网站的全部元素,也就无法准确地通过这些信息来评价网站质量。

鉴于Referer技术的缺陷,本发明通过智能模板库匹配技术进行网站元素关联技术。通过模拟浏览器访问网站,通过网络抓包方式获取所有Response响应,可以取到一个网站的所有会话记录,如图片、广告、内容等。将获取到的一个网站所有会话记录入库,就可以形成该网站的智能模板库。例如,要想得到新浪的智能模板库,可以定时(五分钟一次)访问新浪,获取到新浪的所有会话记录,形成新浪智能模板库,并标记该智能模板库适用的时间段。

作为优选的,所述步骤S1具体包括:

S11、扫描网站及其首页HOST记录,逐一登录访问网站首页并加载所有网站首页的页面元素;通过程序软件,扫描数据库中的重点网站及其首页HOST记录,逐一登录访问这些重点网站的首页,程序则会如IE浏览器相同的行为加载所有的页面元素;

S12、采用多线程技术,通过监控线程获取主进程逐一加载的所有页面元素;采用多线程技术,启动其它线程实时监控主进程的页面元素加载动作,获取主进程加载的所有页面元素的HTTP Request请求的URL链接地址(除主Get以外的所有Get请求)。这些元素包括广告、图片以及引用其它网站的资源等,主要是分析这些HTTP Request请求报文中的General的Request URL值。从这些信息中可提取页面元素的完整URL地址信息,对HTTP Request请求报文中Request Heads的Referer信息不作考察,因为这些Referer有些会指向重点网站首页,有些则指向其它网站如广告链接、跨域资源等,少数Referer信息为空。

S13、建立网站SP、首页HOST值与这些页面元素URL之间的关联关系;

S14、定期获取最新网站资源URL信息,更新至智能模板库中。

一般如新浪首页等门户网站可能对应几百个页面元素URL(一对多关系),作为优选的,所述步骤S13具体包括:关联关系先保存的作为智能模板库,通过合并更新方式,插入没有的关联关系,更新已有的关联关系,删除过期的关联关系记录,合并更新同时记录最后更新时间信息。

作为优选的,所述步骤S14具体包括:分析流控网站访问话单时,若发现话单记录Referer为空,则将话单记录Referer与智能模板库进行对比,匹配成功时补全该话单记录的Referer为网站首页的HOST值,更正部分资源元素的统计归属。定期获取数据库中的最新网站资源URL信息,更新到本地配置中,更新频率为一小时更新一次。在分析流控网站访问话单时,若发现话单一记录Referer为空时,则与智能模板库进行比对,匹配成功时补全该话单记录的Referer为网站首页的HOST值,这样就更正部分资源元素的统计归属。如新浪网站首页加载的他网广告也可统计到新浪SP下及新浪首页的页面质量下,否则这些他网广告只能记入其它网站名下了,如此可更加准确的考察网站及具体页面的端到端的时延等质量指标。

作为优选的,所述步骤S2具体包括:

S21、采用DPI设备,通过串接或镜像方式接入链路中,采集链路中全量用户数据,生成标准的业务记录,即为网站中各个元素的记录;我们通过DPI设备采集用户流量,通过DPI设备的DPI和DFI(Deep Flow Inspection,深度流检测)技术将采集到用户流量进行解析,生成逐条的会话记录。因DPI设备通常采用串接或镜像方式接到链路中,采集到的流量为该链路中全量的流量,所生成的会话记录也就是该链路中所有用户全部的会话记录。这是一个海量的数据,我们既不知道每条记录是哪个用户的,也不清楚每条记录归属于哪个网站,仅仅拿到这些记录,实际意义并不大,因此,需要将这些记录进行关联;

S22、结合智能模板库记录的Referer,将上述元素通过Referer技术进行网站和元素关联。

作为优选的,所述步骤S22具体包括:

S221、利用五元组和用户访问时间,将每个用户的每次访问网站的会话记录分类提取出来,针对NAT转换的情况,可结合NAT日志和Radius日志进行IP地址和账号还原;并通过Referer技术匹配网站,将某个用户本地访问的全部会话记录进行关联,得到用户本次访问的具体网站,并初步分析该网站中包含的元素;匹配网站则可以首先通过Referer技术,因大部分会话记录中都有Referer字段,告诉我们这条记录是属于哪个网站的,将某个用户本次访问的全部会话记录进行关联,就可以得到该用户本次访问了哪个网站,初步分析到这个网站中包含哪些元素;

S222、对于没有Referer字段的会话记录,通过该会话记录中的url查找智能模板库中保存的该记录,并且通过智能模板库中记录的Referer能够找到该url的上级url最终确定其所属网站;如当DPI设备采集到用户访问新浪网站的记录,并通过Referer关联后,同样可生成一个动态的新浪资源库,当DPI采集到的新浪网站的某个会话记录没有Referer字段,而基于该会话记录中的url查找静态库中有该记录,并且通过智能模板库中记录的Referer能够找到该url的上级url最终确定其属于新浪网,我们就可以把该记录作为新浪网站的一个元素,形成完整的新浪网站的元素。

S223、当一个url对应多个Referer,即可能属于多个网站时,需要其它辅助分析手段,进行精确的URL归属定位;分析流控话单时,基于用户标识(Radius认证账号或NAT转换日志)+时间段框定多条话单记录,该多条话单记录视为同一会话Session,该组话单记录中发起访问最早的即为首GET,在匹配智能模板库时同时比较首GET与智能模板库中的网站SP首页HOST值,若一致则认为匹配成功。

进行质量分析时,把通过Referer关联到的元素与通过智能模板库匹配的元素结合,就可实现网站元素的完整和准确关联,补充Referer关联不完整的问题。因一个网站的元素是在不断变化的,模板库也需要不断的进行更新,因此,网站资源采集模块每五分钟会采集一次网站库,采集后自动更新模板库并记录该模板库的适用时间,并实时和Referer关联的网站元素结合(或者在事后与该模板适用时间采集到的网站会话记录相结合)。

在本实施例中,具体的,在所述步骤S3中,我们可以通过制定若干基于感知的客观指标,也就是KQI(Key Quality Indicators关键质量指标)指标。因为网站的好和坏直观感受是打开网站的快慢和显示的内容是否能完整。对此,我们建立了网页浏览端到端时延、网页浏览端到端速率、网页浏览端到端成功率和网页浏览端到端完整率4个KQI指标,其中,网页浏览端到端时延和网页浏览端到端速率反映的是打开网站的快慢,网页浏览端到端成功率和网页浏览端到端完整率反映网站内容是否成功和完整显示。将这几个关键指标进行一定的加权,就可以基于KQI指标和海量会话记录对一个网站的质量进行客观评价,得到一个结论说新浪好、搜狐不太好。

因为一个网站(Sp)是由多个Host组成的,一个host又是由多个url组成的,而每个url又对应一批服务器IP,分别对这几个维度制定相应的指标,进行质量评价分析,就可以实现对一个网站的垂直的多层次的质量分析,直到最后分析到网站服务器IP的质量,才真正可以为一个“不好”的网站质量定位和优化提供决策依据。

基于Host的分析和基于SP的分析类似,同样可通过端到端的KQI指标进行评估。但基于Url和服务器IP的分析,就只有KPI(Key Performance Indicator,关键绩效指标)指标了,如应答时延、应答成功率、重传丢包率等。因这几个维度是有层级关系的,并且通过上述步骤已经获得了绝大部分url的Sp、Host、Url的层级关联关系,因此当我们发现一个网站KQI分数较低时,就可以通过层层钻取,从Sp、Host、Url,一直钻取到网站服务器IP(在向下钻取过程中采用KPI指标,如应答时延、应答成功率、重传丢包率等),最终找到影响网站质量的根本原因,即定位至某一个或多个服务器IP。通过这种垂直多层次的钻取分析,可有效实现网站故障定位、为网站质量提升提供决策依据。

下面结合本方案功能和实例来介绍垂直多层钻取分析的分析的整个过程:

1、网站质量总体打分/网站关键指标质量分析

在对网站质量进行打分时,可以建立一套完整评分模型体系,对每个网站进行打分,评分规则是将网站的4个KQI指标根据一定的权重进行综合评定,给出0-100分的分数。打分有助于对质量进行直观评价,可以基于某个网站、全部网站或根据区域关系分别进行评分。如下图就是几个常见网站的得分。从图2可知,分别对163、sina、百度、腾讯、搜狐和淘宝网站进行综合评分,得到这几个网站中淘宝的综合得分最高,总体质量最好。

在对网站质量进行打分时,除可以综合评分外,我们还可以对网站的某个关键指标进行分析,对多个网站进行对比分析,找出质量较差的网站,再通过钻取技术进一步分析。下图就是比较了这几个网站的端到端时延指标,从图3可以看出,淘宝的端到端时延最小,该指标最好。

2、垂直多层钻取分析过程

在基于KQI评分模型或者关键指标对某网站进行质量评价后,选出质量较差的网站进行钻取分析。以网页浏览端到端时延最差的网站为例进行钻取分析,从报表中我们可以按端到端时延倒序排序,选择端到端时延较大的eastmoney(东方财富),如图4中所述的表格图片。

进一步钻取到host,从图5中所述的表格图片中可以看出,host为“hqguba1.eastmoney.com”的端到端时延最大:

进一步钻取到服务器IP,查看服务器IP的各个指标,如下表所示:

从上图可以看出,IP为140.207.213.99的服务器,应答时延有302.72秒,而正常范围一般在0.3-1秒左右,由此可以判断,造成该网站时延较大的原因是该时间段内该服务器应答时延较大。

可见在基于KQI对网站进行评价后,钻取定位具体影响网络的服务器IP时,需要完备的Sp、Host、Url层级关联关系,否则无法准确定位导致网站质差的具体原因。

实施例2

如图6所示,本发明还示出了一种网站质量多层钻取系统,包括数据采集层、数据挖掘层和业务层;

所述数据采集层用于模拟浏览器访问网站,通过网络抓包方式获取所有Response响应,将获取到的一个网站所有会话记录入库,形成该网站的智能模板库;

所述数据挖掘层用于采用DPI设备,通过串接或镜像方式接入网站链路中,采集链路中全量用户数据,生成网站中各个元素的记录,并结合网站的智能模板库和Referer技术将得到的元素关联到对应的网站;并通过制定关键质量指标,建立网站端到端的质量评估模型,对网站质量进行多层次分析;

所述业务层用于进行系统管理,并进行任务定义、模型定义、用户识别,将评估结果以报表形式展现。具体包括系统管理模块、数据定义模块和报表呈现模块;所述系统管理模块用于用户对系统进行操作管理,所述数据定义模块用于定义任务、策略、模型、地市配置和用户识别;所述报表模块用于将分析结果以报表形式进行展现。

作为优选的,所述数据采集层包括话单采集模块、Nat日志采集模块和网站资源采集模块;

所述网站资源采集模块用于模拟浏览器去访问网站的网站首页,逐一登录访问网站首页并加载所有网站首页的页面元素,并建立网站的智能模板库;

所述话单采集模块用于采用多线程技术,启动其它线程实时监控主进程的页面元素加载动作,获取主进程加载的所有页面元素的HTTP Request请求的URL链接地址;

所述Nat日志采集模块用于定期获取最新网站资源URL信息,更新至本地配置中。

作为优选的,所述数据挖掘层包括数据提取模块、数据统计模块、数据分析模块和质量评估模块;

所述数据提取模块用于采集用户流量,通过DPI设备的DPI和DFI技术将采集到用户流量进行解析,生成逐条的会话记录;

所述数据统计模块用于利用五元组和用户访问时间,将每个用户的每次访问网站的会话记录分类提取出来;

所述数据分析模块用于把通过Referer关联到的元素与通过智能模板库匹配的元素结合,实现网站元素的完整和准确关联;

所述质量评估模块用于建立网站端到端的质量评估模型,并根据采集到的海量元素,从SP、Host、Url和服务器IP多层级对网站质量进行客观评价。

本申请提出一种网站质量多层钻取方法和系统,定期采集相关网站,形成网站的静态资源库,之后在实际网站质量钻取分析过程中,采用电信级DPI设备,通过串接或镜像方式接入链路中,采集链路中全量用户数据,生成标准的业务记录,即网站中各个元素的记录。再将这些元素通过Referer技术关联到对应的网站的过程中,可结合网站的静态资源库记录的Referer,以实现网站关联元素关联的准确性和完整性。并提供垂直的多层钻取技术实现网站质量的深度分析,既可从宏观和主观感知上评价一个网站的好坏,又可通过基础的TCP层指标,准确定位网站好与坏的根本原因;会建立科学合理的网站质量评估模型,提供反映整个网站的总体质量评分、KQI指标和KPI指标等多层评分体系。总体质量评分主要是将各种KQI指标按照一定的权重进行加权,得到一个网站的总体评分。通过多层钻取技术,可实现从SP、Host、Url和服务器IP等多层级的质量分析,为最终的故障定位和质量提升提供故障排除和资源引入提供指导意见。

最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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