一种网页服务细粒度的评估装置、评估方法和评估系统与流程
未命名
09-22
阅读:59
评论:0
1.本发明涉及互联网技术领域,尤其涉及一种网页服务细粒度的评估装置、评估方法和评估系统。
背景技术:
2.随着科学技术的发展,基于web的b/s架构系统在当前互联网时代中扮演着重要位置,人们的生活和各种需求依靠互联网得到了极大的满足。因此,与web应用相关的网页qoe评估便也变得相应重要起来。为满足网页类型质量评估实际业务需求,需要实现对多类型网络应用进行准确客观的服务质量评估。其中可用性便是用于衡量网页质量的一个重要方面。然而网页质量是一个由一系列相互依赖的因素所构成的多维概念。一些影响网页质量的因素是主观的,因素之间的关系更是复杂,仅仅只靠可用性将存在评价维度太低只有可用与不可用和评价细粒度粗等问题。建立合理的有关网页类型的qoe模型便尤为重要。
3.目前,国内外有关网页质量评估qoe评价模型的研究有很多,其中分为主观评价和客观评价。主观评价方法就是直接围绕用户感知为中心,从用户体验的角度对业务进行直接评价,所以主观评价方法是最有针对性的和准确性的。但其缺点是当考虑的因素过多时,其需要耗费的人力物力大,可移植性差。在一些现有技术例如国际电信联盟(itu)以语音业务为背景提出的平均评估分析法,其将用户对语音的体验分为5级,表示用户对语音质量的流畅感觉。客观评价方法就是通过测量网页的一些指标数据,来间接表示用户体验。其好处是客观、可重复、可量化。但缺陷是不能直接反应用户的体验。常用的客观方法大都以机器学习的方式,通过对大量样本用户数据进行学习,得到各个指标与网页qoe的映射关系。中便是一种基于深度神经网络的实时网页质量评估方法,通过对获取网页的相关信息,得到目标格式的指标数据,利用所述目标格式数据对网页质量评估webqmon.ai框架中基于深度神经网络的预设分类模型进行训练,使得模型能够预测网页的各项qoe指标并生成网页质量评估结果。
4.国际上也都在开展网页类型服务评估系统的研发与完善。lighthouse是谷歌浏览器推出的一款开源自动化工具,它可以搜集多个现代网页性能指标,分析web应用的性能并生成报告,为开发人员进行性能优化的提供了参考方向,其优点是本地节点运行,但其模板无法根据需求选择自定义服务评估。美国的webpagetest便是一款专业的web页面性能分析工具,它可以对检测分析的环境配置进行高度自定义化,内容包括测试节点的物理位置、设备型号、浏览器版本、网络条件和检测次数等,除此之外,它还提供了目标网站应用于竞品之间的性能比较,以及查看网络路由情况等多种维度下的测试工具。但webpagetest在面对国内用户性能和实时网络状况时存在数据量较小,单次数据不够稳定等问题。gtmetrix是由位于加拿大温哥华的托管公司gt.net的人员构建的免费性能测试工具。他们提供专用、集群和私有云托管解决方案,以及专用于性能的特定工具集。但是由于评价模型基本固定不公开,软件不自主可控,无法根据需要配置无国内节点。经过我们评测,这些工具都不能很好满足国内基本需求,无法完全照搬。为此,本发明为满足我国本地节点可定制、精细化
服务质量评估系统的需求而出现。同时,本发明具有多指标监测功能、服务质量分级评价模型构建功能、支持灵活配置功能,对提升网络性能,提高用户体验有重要意义。
技术实现要素:
5.本发明的实施例提供了一种网页服务细粒度的评估装置、评估方法和评估系统,用于解决现有技术中存在的问题。
6.为了实现上述目的,本发明采取了如下技术方案。
7.一种网页服务细粒度的评估装置,包括指标监测模块、数据监测处理模块、层次分析模块、指标打分模块和可视化交互模块;
8.所述指标监测模块用于:通过构建两级指标体系,对网页类型模板的指标进行定义评估;基于定义评估的指标,建立监测网页类型相关值的模型;设计网页爬虫程序,通过所述网页爬虫程序爬取网页数据;所述两级指标体系中,一级指标包括响应时间属性、传输速率属性和服务鲁棒性;
9.所述数据监测处理模块用于:基于爬取的网页数据,通过所述监测网页类型相关值的模型,获得网页指标真实数据;对所述网页指标真实数据进行处理,获得指标数据的分布情况,并根据所述指标数据的分布情况制定指标得分标准;
10.所述层次分析模块用于:通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重;基于所述两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵;计算所述对比矩阵的权重向量,检验所述权重向量的一致性;将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重;
11.所述指标打分模块用于:根据所述指标得分标准,制定指标得分模板;通过所述指标得分模板,结合指标得分函数和所述每级指标的权重,分别获得响应时间属性维度、传输速率属性维度和服务鲁棒性维度的评分,每个指标的评分,和总的性能的评分;
12.所述可视化交互模块用于:接收网页服务细粒度评估指令;将网页服务细粒度评估指令发送至所述指标监测模块;对所述指标打分模块获得的评分结果进行可视化输出。
13.优选地,所述两级指标体系中,二级指标包括:响应时间属性中的建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、网络延时和重定向时间;传输速率属性中的下载速度、最大内容绘制速率lcp和首次内容绘制速率fcp;服务鲁棒属性中的传输丢包率、时延抖动和http状态码;
14.所述的基于定义评估的指标,建立监测网页类型相关值的模型的过程包括:
15.通过pycurl库建立用于监测所述建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、重定向时间、http状态码的下载速度的模型;
16.通过lighthouse建立用于监测所述最大内容绘制速率lcp、首次内容绘制速率fcp的模型;
17.通过tshake工具监测待监测网站url在某段时间内重传的tcp包数与传输总的tcp包数之间的比率,获得所述服务鲁棒属性中的传输丢包率的指标;
18.通过python的ping3库监测监测网站url的信息,获得所述服务鲁棒属性中的时延抖动的指标和所述响应时间属性中的网络延时的指标。
19.优选地,所述的爬取网页数据包括爬取网页类型应用url数据,具体包括:
20.通过python的request库得到html文件内容;
21.通过python的beautifulsoup库对获得的html文件内容进行筛选,获得当前网页在a标签中的url与剩余网页数n;
22.获得剩余网页在a标签中的url;
23.所述的根据所述指标数据的分布情况制定指标得分标准的过程包括:
24.将所述指标数据的分布划分为10个等分区间,获得每一等分区间的端点指标值;
25.对每一等分区间的端点指标值进行线性映射,获得指标分数。
26.优选地,所述的将所述指标数据的分布划分为10个等分区间,获得每一等分区间的端点指标值的过程包括:
27.基于所述指标数据的分布的区间为0-100,将所述指标数据的分布划分为10个等分区间;
28.每一等分区间的端点指标值为该等分区间的端点的最大绝对值的百分数。
29.优选地,所述的通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重的过程包括:
30.确定一级指标的权重;
31.确定二级指标占一级指标的权重;
32.通过一级指标的权重乘以二级指标占一级指标的权重,获得所有指标权重;
33.所述的基于所述两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵,以及所述的计算所述对比矩阵的权重向量,检验所述权重向量的一致性的过程包括:
34.通过对所述指标响应时间属性、传输速率属性和服务鲁棒属性进行两两比对,构建第一对比矩阵;
35.通过对所述建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、网络延时和重定向时间进行两两对比,构建第二对比矩阵;
36.通过对下载速度、最大内容绘制速率lcp和首次内容绘制速率fcp进行两两对比,构建第三对比矩阵;
37.通过对所述传输丢包率和时延抖动进行对比,构建第四对比矩阵;
38.计算所述第一对比矩阵、第二对比矩阵、第三对比矩阵和第四对比矩阵的最大特征根λ和对应的特征向量w;
39.通过式
40.ci=λ-n/n-1
41.分别计算获得所述第一对比矩阵、第二对比矩阵、第三对比矩阵和第四对比矩阵的一致性指标ci;式中,λ为最大特征根,n为指标数;
42.通过式
43.cr=ci/ri
44.分别计算获得所述第一对比矩阵、第二对比矩阵、第三对比矩阵和第四对比矩阵的一致性比率cr;式中,ri为随机一致性指标;
45.若cr《0.1,则检验通过,将权重向量w作为特征向量;若cr》=0.1,则检验不通过,返回执行构造对比较阵的子步骤;
46.将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重。
47.第二方面,本发明提供一种网页服务细粒度的评估方法,包括:
48.通过构建两级指标体系,对网页类型模板的指标进行定义评估;基于定义评估的指标,建立监测网页类型相关值的模型;所述两级指标体系中,一级指标包括响应时间属性、传输速率属性和服务鲁棒性;设计网页爬虫程序,通过所述网页爬虫程序爬取网页数据;
49.基于爬取的网页数据,通过所述监测网页类型相关值的模型,获得网页指标真实数据;对所述网页指标真实数据进行处理,获得指标数据的分布情况,并根据所述指标数据的分布情况制定指标得分标准;
50.通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重;基于所述两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵;计算所述对比矩阵的权重向量,检验所述权重向量的一致性;将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重;
51.根据所述指标得分标准,制定指标得分模板;通过所述指标得分模板,结合指标得分函数和所述每级指标的权重,分别获得响应时间属性维度、传输速率属性维度和服务鲁棒性维度的评分,每个指标的评分,和总的性能的评分。
52.第三方面,本发明一种网页服务细粒度的评估系统,包括多个监测节点,以及分别控制该多个监测节点的总控节点;每个所述监测节点具有上述的评估装置。
53.由上述本发明的实施例提供的技术方案可以看出,本发明提供一种网页服务细粒度的评估装置、评估方法和评估系统,创造性的提出从响应时间属性、传输速率属性和服务鲁班属性这三个维度来展示网页性能和用户体验,并提出了分级指标体系;设计了待监测样本数据的采集方法、指标监测方法和指标数据的获取方法,实现网络状态精准探测感知;根据获取的指标数据分布情况,划分指标值的等级并制定指标打分标准;采用层次分析法确定分级指标权重,得到各级指标权重和总的一维指标权重;建立指标打分模板,灵活选择指标,实现细粒度、多样化的网页类型服务评估;网页可视化展示,实现用户对网页类型的细粒度评估系统的交互操作;灵活分布式部署,实现国内多节点对网页类型应用进行评估。本发明提供的评估装置、评估方法和评估系统还具有如下优点:与现有技术相比,本发明的方案监测的网页指标更多,根据连接时间、时延、错误码等指标多维度组合方式,构建了分级评估体系,实现了网页类型的细粒度评估。其中评估结果可从从响应时间属性、传输速率属性、服务鲁棒性三个维度评分、各个指标的评分和总的性能评分来看。同时网页评估模型指标可选,灵活模板配置,实现多样化网页类型的评估;本发明的方案监测节点以总节点-子节点的拓扑方式部署;其中节点中总节点用于数据存储与可视化,子节点用于不同地点的网页类型数据监测与评估。这种部署方式实现了国内节点的可部署、可扩展、可呈现、易使用等功能,同时方便维护与管理。
54.本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
55.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本
领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
56.图1为本发明提供的一种网页服务细粒度的评估装置的逻辑框图;
57.图2为本发明提供的一种网页服务细粒度的评估装置中爬取url的流程图;
58.图3为本发明提供的一种网页服务细粒度的评估装置中数据获取处理功能的流程图;
59.图4为本发明提供的一种网页服务细粒度的评估装置中层次分析确定指标权重流程图;
60.图5为本发明提供的一种网页服务细粒度的评估方法的处理流程图;
61.图6为本发明提供的一种网页服务细粒度的评估系统的框架图。
62.图中:
63.101.指标监测模块102.数据获取处理模块103.层次分析模块104.指标打分模块105.可视化交互模块。
具体实施方式
64.下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
65.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
66.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
67.为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
68.本发明提供一种网页服务细粒度的评估装置、评估方法和评估系统,用于解决现有技术中的如下技术问题。
69.谷歌浏览器提出的lighthouse是一款开源自动化工具,其通过设置指标分数及指标权重,通过加权平均法来估算网页性能。lighthouse的指标来自谷歌提出的“web指标”。在lighthouse10中,其选取的5个指标包括首次内容绘制时间(fcp)、速度指数(si)、最大内容绘制时间(lcp)、总阻塞时间(tbt)和累积布局偏移时间(cls)。其中指标的分数映射则来自谷歌用户体验报告提供的数据进行统计得到的分布函数确定,分数区间为0到100。其权重的设定没有说明的,但值分别为:10%、10%、25%、30%、25%。各项指标的说明参照谷歌
的“web指标”如下:fcp是页面从开始加载到页面内容的任何部分在屏幕上完成渲染的时间;si用于衡量内容在页面加载期间的视觉显示速度;lcp是测量感知加载速度的一个以用户为中心的重要指标,该项指标表示可视区域内可见的最大图像或文本块完成渲染的相对时间;tbt测量交互可靠性的重要指标,该项指标是fcp与可交互时间(tti)这期间主线程被阻塞的时间。cls测量视觉稳定性的一个以用户为中心的重要指标,该项指标有助于量化用户经历意外布局偏移的频率。
70.该现有技术的缺点在于:
71.(1)技术一模型的评估指标较少,网页的评估结果可能较为片面,评估粒度较粗;评估的模板固定,用户无法选择自己想要的指标,根据需求进行更改;网页评分个数只有一个,当需要测试的网页类型数量较多时,无法进行批量的测试。
72.(2)技术一中的指标权重确定的方案没有公开,直接公布了权重的结果,其打分结果可能不够精准,无法使人信服。
73.webpagetest是美国catchpoint公司推出的一款基于ipm规则的web页面性能分析工具,它可以对检测分析的环境配置进行高度自定义化,内容包括测试节点的物理位置、设备型号、浏览器版本、网络条件和检测次数等。除此之外,它还提供了目标网站应用于竞品之间的性能比较,以及查看网络路由情况等多种维度下的测试工具。
74.webpagetest中的各项指标与lighthouse一样,均来自谷歌提出的web指标,其性能的好坏不通过分数显示,而是通过分析各项指标数值以及页面元素标签的加载快慢好坏,从可用性、速度快慢、鲁棒性等多角度来报告。webpagetest除了包括首次内容绘制时间(fcp)、速度指数(si)、最大内容绘制时间(lcp)、总阻塞时间(tbt)和累积布局偏移时间(cls),还包括页面开始渲染时间(start render)、首字节到达时间(time to first byte)、页面大小(page weight)。
75.该现有技术的缺点在于:
76.(1)技术二是通过不同探测节点通过多次测试运行得到综合评价,其给出了不同指标的值,以及判断指标好坏的标准,但是没有对整个页面性能做出打分,无法较好的比较不同网页间性能和qoe的差距。
77.(2)技术二质量探测主要发起于大量的国外探测节点和部分国内节点,不能准确体现国内用户性能和实时网络状况。且探测的指标固定,模板固定,无法根据需求,自定义的进行设置。
78.有鉴于此,本项发明的目的为满足国内网页类型应用评估可定制、精细化的实际业务需求,实现对网页类型网络应用进行准确客观的服务质量评估。本发明要解决当前网页类型评估中评估手段粒度粗、评价模型固定不公开和探测节点主要发起于国外等技术问题。为此提供了一种网页类型服务评测系统和方法。针对评估结果粒度粗的问题,制定了多项指标,实现细粒度的网络状态精准探测感知;针对评价模型固定不公开的问题,多指标灵活选择构成不同模板,实现多样化服务的评估;针对探测节点主要发起于国外的问题,设计了总控节点与子节点结构的部署拓扑,实现系统在国内的灵活易扩展。
79.参见图1,本发明提供一种网页服务细粒度的评估装置,包括指标监测模块101、数据监测处理模块、层次分析模块103、指标打分模块104和可视化交互模块105。
80.指标监测模块101用于:通过构建两级指标体系,对网页类型模板的指标进行定义
评估;基于定义评估的指标,建立监测网页类型相关值的模型;设计网页爬虫程序并爬取足够的网页数据,用于监测网页指标,获得足够的指标数据;两级指标体系中,一级指标包括响应时间属性、传输速率属性和服务鲁棒性;
81.数据监测处理模块用于:基于爬取的网页数据,通过监测网页类型相关值的模型,获得网页指标真实数据;对获得的网页指标真实数据进行处理,获得指标数据的分布情况,并根据指标数据的分布情况制定指标得分标准;
82.层次分析模块103用于:通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重;基于两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵;计算对比矩阵的权重向量,检验权重向量的一致性;将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重;
83.指标打分模块104用于:根据指标得分标准,制定指标得分模板;通过指标得分模板,结合指标得分函数和每级指标的权重,分别获得响应时间属性维度、传输速率属性维度和服务鲁棒性维度的评分,每个指标的评分,和总的性能的评分;
84.可视化交互模块105用于:接收网页服务细粒度评估指令;将网页服务细粒度评估指令发送至指标监测模块101;对指标打分模块104获得的评分结果进行可视化输出。
85.在本发明提供的优选实施例中,各模块的具体处理过程如下。
86.指标监测模块
87.该模块的功能是定义评估网页类型模板的指标,并根据定义的指标设计能够监测其相关值的函数和程序;设计网页爬虫程序并爬取足够的网页数据,用于监测网页指标,获得足够的指标数据。
88.(1)网页类型指标体系确定
89.指标检测模块首先需要先确定进行网页的评分的指标,为此经过分析,我们设计选取了共13个指标的二级指标体系。其中一级指标为:响应时间属性、传输速率属性、服务鲁棒性。二级指标为一级指标下13个指标,包括响应时间属性中的建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、网络延时、重定向时间;传输速率属性中的下载速度、最大内容绘制速率lcp、首次内容绘制速率fcp;服务鲁棒属性中的传输丢包率、时延抖动、http状态码。二级指标体系如表1所示:
90.表1指标分级表
91.92.响应时间属性:页面加载速度快慢和一定时间内加载内容的多少
93.建立连接时间:统计客户端请求发出到收到服务器返回的tcp连接确认报文所花费时间。通过tcp报文中时间戳、ack、seq等字段信息,确定tcp连接建立完成时间。
94.首包时间:指从客户端开始发送http get请求到收到服务器端返回的第一个http协议数据包之间所需要的时间。
95.ssl握手时间:针对https业务请求,从客户端开始到与服务器完成ssl/ssh连接所花费的时间。
96.网络延时:数据包从客户端传输到服务器所花费的时间。
97.开始/结束时间:客户端与服务器在建立连接后,从开始传输到所有数据传输完毕所花费的总时间。
98.dns解析时间:客户端从开始向域名服务器发送dns请求报文,到成功接收对应的dns响应报文所花费时间。
99.传输速率属性:资源下载速度的快慢和页面内容加载的快慢
100.内容下载速率:客户端从服务器下载网站全部数据的平均下载速度。
101.最大内容绘制速率(lcp):是谷歌测量感知加载速度的一个以用户为中心的重要指标,记录页面的主要内容基本加载完成时,在页面加载时间轴中标记的时间点。
102.首次内容绘制速率(fcp):是谷歌测量感知加载速度的一个以用户为中心的重要指标,从用户首次在屏幕上看到任何内容时,在页面加载时间轴中标记出相应的点。
103.服务鲁棒属性:网页在网络环境较差情况下提供服务的性能
104.传输丢包率:改进原有基于ping包测试网络丢包的方法,重点考虑传输层以上丢包,通过统计tcp重传包的个数以及整个网站总的序列号来计算传输层丢包。
105.网络抖动:统计一段时间内网络时延多次检测的结果,将其前后做差求平均值。
106.http状态码:表示网页服务器http协议响应状态的数字代码
107.(2)指标监测函数实现
108.通过python的pycurl库中提供的方法,使用python可以实现探测web服务质量的情况,其中的指标包括建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、重定向时间、http状态码、下载速度这些指标可以用过pycurl库中的方法得到。
109.最大内容绘制速率lcp、首次内容绘制速率fcp这两个指标通过使用google的web指标的评分工具lighthouse的开源代码修改编写获得;
110.传输丢包率指标的实现通过tshake工具监测待监测网站url在一段时间内重传的tcp包数与传输总的tcp包数之间的比率得到的。
111.网络延时和时延抖动两个指标通过python的ping3库,ping待监测网站url得到的信息实现的。
112.(3)网页类型应用url爬取
113.设计网页爬虫程序,网页类型应用的url数据是通过例如爬取站长之家排行页中每页里排行的网站url内容获取的。其具体流程如图2所示,首先使用python通过request得到html文件内容;然后beautifulsoup库筛选其中的url和剩余页数n并保存得到的url;最后根据网页中剩余页数n循环得到所有页数的url,直到n为0将所有的url保存进行txt文件中。
114.数据获取处理模块
115.该模块的功能是获取大量指标数据,并根据指标数据的分布情况获得指标打分标准。其数据获取处理得到打分标准的流程是:首先依据指标监测模块101的指标监测函数,对指标监测模块101中获取的一条条url数据进行监测,得到每一条url指标数据。然后对得到的指标数据进行数据处理,剔除数据中存在离群值、异常值,减少对打分标准的影响。最后通过指标数据的分布情况确认划分指标值等级,制定指标得分标准,由于指标分数区间为[0-100],因此将数据分布划分为10等分,每一等分内的数据分数差在10分内,即第一等分的数据对应着0-10分,第二等分的数据对应着10-20分等以此类推。其中每一等分的分数区间端点的指标数据值取前各自10%的值(该等分区间的端点的最大绝对值的百分数),即端点分数为10分取数据分布中10%时的指标数据值,端点分数为20分取数据分布中20%时的指标数据值等,以此类推。每一等分内的数据分数映射则为根据端点的指标数据值和分数得到的线性映射。数据获取处理得到打分标准的流程如图3所示。
[0116]
层次分析模块
[0117]
该模块的功能是使用层次分析法确定权重,层次分析法确定各指标过程如下:
[0118]
1、建立层次结构模型。由于指标数量太多,因此要对指标进行层次分级。其中先对一级指标确定权重,再确定二级指标占一级指标的权重,最后所有指标权重就等于一级指标权重乘以二级指标占一级指标的权重。
[0119]
2、确定指标的成对比矩阵。由于指标分层,所以先对一级指标响应时间属性、传输速率属性、服务鲁棒属性进行两两比对,构建成对比矩阵;再对二级指标响应时间属性下的指标:建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、网络延时、重定向时间,构建成对比矩阵;对二级指标传输速率属性下的指标:下载速度、最大内容绘制速率lcp、首次内容绘制速率fcp构建成对比矩阵;对服务鲁棒属性中的传输丢包率、时延抖动构建成对比矩阵。
[0120]
3、计算权重向量并做一致性检验。对于上述的每一个成对比较阵计算最大特征根λ及对应特征向量w,利用一致性指标ci、随机一致性指标ri和一致性比率cr做一致性检验。其中ci=λ-n/n-1,式中λ为最大特征根,n为指标数;一致性比率的计算公式为:cr=ci/ri。ri为随机一致性指标,其数值可通过下表1获取。若cr《0.1,则检验通过,特征向量(归一化后)即为权重向量w;若cr》=0.1,则不通过,需重新构造成对比较阵。
[0121]
表1随机一致性指标ri
[0122]
n12345678
…
ri000.520.891.121.361.411.46
…
[0123]
4、组合各级权重向量。将一级指标的权重与二级指标占一级指标的权重进行组合,得到该系统所有指标没有分级时的指标权重并保存。
[0124]
其中层次分析确定指标权重得流程如图4所示。
[0125]
在另外一些实施例中,还可以采用机器学习的方法计算指标权重。
[0126]
机器学习是一门关于数据学习的科学技术,它能帮助机器从现有的复杂数据中学习规律,以预测未来的行为结果和趋势。为了确定网页类型的细粒度评估模型的分级指标的权重,还可以采取机器学习的方式,通过对数据进行归一化处理和对数据打标签,输入监测指标ti,输出指标权重wi,以此确定网页评分。网页三个维度的评分和总的评分可由以下
公式实现
[0127][0128]
其中s可表示为网页三个维度的评分和总的评分,ti表示为评分对应的指标i的分值、wi表示为评分对应的指标i的权重。
[0129]
建立机器学习模型的输入量有多种表述方法,如变量(variable)、特征(feature)、描述符(descriptor)等,其根据研究问题或目标量的需求而定。在本项目中,一般是获取连接时间、dns解析时间、下载速度和丢包率等从网页监测中获取的指标数据。通过数据清洗和数据归一化等方法对数据进行处理,同时还需对这些指标数据进行网页好坏的打标签处理。机器学习模型的输入量应为数据处理后的各项指标与其标签,其输出量应为以各项指标的权重。根据指标权重自然而然的可以得到分级指标系统的三维指标的权重,从而实现对于指标权重的确定。知道指标权重与指标分数,最终可以实现网页的性能评分。
[0130]
指标打分模块
[0131]
该模块的功能是制定打分模板,模板的功能有:根据数据获取处理模块102得到的打分标准,实现指标打分函数对指标值进行0-100的分数映射;根据提供的指标进行灵活选择和组合,实现多样化的评分模板;模板根据选择的指标监测数据,结合指标打分函数和指标权重,得到响应时间属性、传输速率属性、服务鲁棒性三个维度评分、各个指标的评分和总的性能评分,实现模板对网页类型服务的细粒度评估,并生成数据字典通过接口发送数据。能够根据用户选择的指标进行灵活组合,实习灵活多样化的网页类型服务评估。
[0132]
可视化交互模块
[0133]
该模块的功能是根据输入的网页url,对指标监测模块101得到的指标数据,以及指标模块得到的各级指标细粒度评分和总的性能评分进行可视化展示,同时实现用户对网页类型的细粒度评估系统的交互操作。可视化展示采用的是b/s结构网页的形式,用户具体的操作流程是:用户打开该系统可视化评分网页——用户输入待评测的网站url——用户可以选择评分指标、节点等选项,点击确定进行评测——系统监测到用户选择的指标进行评分后通过接口发送给可视化模块——该系统的可视化模块收到指标数据和评分数据,进行细粒度评分和性能总评分的图表展示。
[0134]
第二方面,本发明提供一种一种网页服务细粒度的评估方法,如图5所示,包括:
[0135]
通过构建两级指标体系,对网页类型模板的指标进行定义评估;基于定义评估的指标,建立监测网页类型相关值的模型;两级指标体系中,一级指标包括响应时间属性、传输速率属性和服务鲁棒性;设计网页爬虫程序,通过所述网页爬虫程序爬取网页数据;
[0136]
基于爬取的网页数据,通过所述监测网页类型相关值的模型,获得网页指标真实数据;对所述网页指标真实数据进行处理,获得指标数据的分布情况,并根据所述指标数据的分布情况制定指标得分标准;
[0137]
通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重;基于两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵;计算对比矩阵的权重向量,检验权重向量的一致性;将每级指标的权重进行组合,获得所有url指标数据未进行
层次分级的指标权重;
[0138]
根据指标得分标准,制定指标得分模板;通过指标得分模板,结合指标得分函数和每级指标的权重,分别获得响应时间属性维度、传输速率属性维度和服务鲁棒性维度的评分,每个指标的评分,和总的性能的评分。
[0139]
第三方面,本发明提供一种网页服务细粒度的评估系统,包括多个监测节点,以及分别控制该多个监测节点的总控节点。每个监测节点都具有上述的评估装置。具体可以如图6所显示的,其中总控节点用于系统的数据的存储与可视化,监测节点则用于不同地区网页类型的指标数据获取和评估。本系统灵活分布式部署,实现国内多节点对网页类型应用进行评估。其中灵活分布式部署采用的是总节点——子节点的拓扑,其中子节点分布各地,用于不同地区的网页性能评估,最后将评分数据发送给总结点;总节点用于对各子节点监测得到的数据和打分数据进行统一的可视化展示和保存。能够实现不同地区的网页类型应用服务的细粒度性能评估。
[0140]
综上所述,本发明提供一种网页服务细粒度的评估装置、评估方法和评估系统,创造性的提出从响应时间属性、传输速率属性和服务鲁班属性这三个维度来展示网页性能和用户体验,并提出了分级指标体系;设计了待监测样本数据的采集方法、指标监测方法和指标数据的获取方法,实现网络状态精准探测感知;根据获取的指标数据分布情况,划分指标值的等级并制定指标打分标准;采用层次分析法确定分级指标权重,得到各级指标权重和总的一维指标权重;建立指标打分模板,灵活选择指标,实现细粒度、多样化的网页类型服务评估;网页可视化展示,实现用户对网页类型的细粒度评估系统的交互操作;灵活分布式部署,实现国内多节点对网页类型应用进行评估。本发明提供的评估装置、评估方法和评估系统还具有如下优点:与现有技术相比,本发明的方案监测的网页指标更多,根据连接时间、时延、错误码等指标多维度组合方式,构建了分级评估体系,实现了网页类型的细粒度评估。其中评估结果可从从响应时间属性、传输速率属性、服务鲁棒性三个维度评分、各个指标的评分和总的性能评分来看。同时网页评估模型指标可选,灵活模板配置,实现多样化网页类型的评估;本发明的方案监测节点以总节点-子节点的拓扑方式部署;其中节点中总节点用于数据存储与可视化,子节点用于不同地点的网页类型数据监测与评估。这种部署方式实现了国内节点的可部署、可扩展、可呈现、易使用等功能,同时方便维护与管理。
[0141]
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
[0142]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0143]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为
分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0144]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
技术特征:
1.一种网页服务细粒度的评估装置,其特征在于,包括指标监测模块、数据监测处理模块、层次分析模块、指标打分模块和可视化交互模块;所述指标监测模块用于:通过构建两级指标体系,对网页类型模板的指标进行定义评估;基于定义评估的指标,建立监测网页类型相关值的模型;设计网页爬虫程序,通过所述网页爬虫程序爬取网页数据;所述两级指标体系中,一级指标包括响应时间属性、传输速率属性和服务鲁棒性;所述数据监测处理模块用于:基于爬取的网页数据,通过所述监测网页类型相关值的模型,获得网页指标真实数据;对所述网页指标真实数据进行处理,获得指标数据的分布情况,并根据所述指标数据的分布情况制定指标得分标准;所述层次分析模块用于:通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重;基于所述两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵;计算所述对比矩阵的权重向量,检验所述权重向量的一致性;将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重;所述指标打分模块用于:根据所述指标得分标准,制定指标得分模板;通过所述指标得分模板,结合指标得分函数和所述每级指标的权重,分别获得响应时间属性维度、传输速率属性维度和服务鲁棒性维度的评分,每个指标的评分,和总的性能的评分;所述可视化交互模块用于:接收网页服务细粒度评估指令;将网页服务细粒度评估指令发送至所述指标监测模块;对所述指标打分模块获得的评分结果进行可视化输出。2.根据权利要求1所述的评估装置,其特征在于,所述两级指标体系中,二级指标包括:响应时间属性中的建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、网络延时和重定向时间;传输速率属性中的下载速度、最大内容绘制速率lcp和首次内容绘制速率fcp;服务鲁棒属性中的传输丢包率、时延抖动和http状态码;所述的基于定义评估的指标,建立监测网页类型相关值的模型的过程包括:通过pycurl库建立用于监测所述建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、重定向时间、http状态码的下载速度的模型;通过lighthouse建立用于监测所述最大内容绘制速率lcp、首次内容绘制速率fcp的模型;通过tshake工具监测待监测网站url在某段时间内重传的tcp包数与传输总的tcp包数之间的比率,获得所述服务鲁棒属性中的传输丢包率的指标;通过python的ping3库监测监测网站url的信息,获得所述服务鲁棒属性中的时延抖动的指标和所述响应时间属性中的网络延时的指标。3.根据权利要求1所述的评估装置,其特征在于,所述的爬取网页数据包括爬取网页类型应用url数据,具体包括:通过python的request库得到html文件内容;通过python的beautifulsoup库对获得的html文件内容进行筛选,获得当前网页在a标签中的url与剩余网页数n;获得剩余网页在a标签中的url;所述的根据所述指标数据的分布情况制定指标得分标准的过程包括:将所述指标数据的分布划分为10个等分区间,获得每一等分区间的端点指标值;
对每一等分区间的端点指标值进行线性映射,获得指标分数。4.根据权利要求3所述的评估装置,其特征在于,所述的将所述指标数据的分布划分为10个等分区间,获得每一等分区间的端点指标值的过程包括:基于所述指标数据的分布的区间为0-100,将所述指标数据的分布划分为10个等分区间;每一等分区间的端点指标值为该等分区间的端点的最大绝对值的百分数。5.根据权利要求2所述的评估装置,其特征在于,所述的通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重的过程包括:确定一级指标的权重;确定二级指标占一级指标的权重;通过一级指标的权重乘以二级指标占一级指标的权重,获得所有指标权重;所述的基于所述两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵,以及所述的计算所述对比矩阵的权重向量,检验所述权重向量的一致性的过程包括:通过对所述指标响应时间属性、传输速率属性和服务鲁棒属性进行两两比对,构建第一对比矩阵;通过对所述建立连接时间、dns解析时间、开始/结束时间、首包时间、ssl握手时间、网络延时和重定向时间进行两两对比,构建第二对比矩阵;通过对下载速度、最大内容绘制速率lcp和首次内容绘制速率fcp进行两两对比,构建第三对比矩阵;通过对所述传输丢包率和时延抖动进行对比,构建第四对比矩阵;计算所述第一对比矩阵、第二对比矩阵、第三对比矩阵和第四对比矩阵的最大特征根λ和对应的特征向量w;通过式ci=λ-n/n-1分别计算获得所述第一对比矩阵、第二对比矩阵、第三对比矩阵和第四对比矩阵的一致性指标ci;式中,λ为最大特征根,n为指标数;通过式cr=ci/ri分别计算获得所述第一对比矩阵、第二对比矩阵、第三对比矩阵和第四对比矩阵的一致性比率cr;式中,ri为随机一致性指标;若cr<0.1,则检验通过,将权重向量w作为特征向量;若cr>=0.1,则检验不通过,返回执行构造对比较阵的子步骤;将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重。6.一种网页服务细粒度的评估方法,其特征在于,包括:通过构建两级指标体系,对网页类型模板的指标进行定义评估;基于定义评估的指标,建立监测网页类型相关值的模型;所述两级指标体系中,一级指标包括响应时间属性、传输速率属性和服务鲁棒性;设计网页爬虫程序,通过所述网页爬虫程序爬取网页数据;基于爬取的网页数据,通过所述监测网页类型相关值的模型,获得网页指标真实数据;对所述网页指标真实数据进行处理,获得指标数据的分布情况,并根据所述指标数据的分
布情况制定指标得分标准;通过建立层次结构模型,对url指标数据进行层次分级,确定每级指标的权重;基于所述两级指标体系,对url指标数据层级进行两两比对,构建对比矩阵;计算所述对比矩阵的权重向量,检验所述权重向量的一致性;将每级指标的权重进行组合,获得所有url指标数据未进行层次分级的指标权重;根据所述指标得分标准,制定指标得分模板;通过所述指标得分模板,结合指标得分函数和所述每级指标的权重,分别获得响应时间属性维度、传输速率属性维度和服务鲁棒性维度的评分,每个指标的评分,和总的性能的评分。7.一种网页服务细粒度的评估系统,其特征在于,包括多个监测节点,以及分别控制该多个监测节点的总控节点;每个所述监测节点具有如权利要求1至5任一所述的评估装置。
技术总结
本发明提供一种网页服务细粒度的评估装置、评估方法和评估系统,创造性的提出从响应时间属性、传输速率属性和服务鲁班属性这三个维度来展示网页性能和用户体验,并提出了分级指标体系;设计了待监测样本数据的采集方法、指标监测方法和指标数据的获取方法,实现网络状态精准探测感知;根据获取的指标数据分布情况,划分指标值的等级并制定指标打分标准;采用层次分析法确定分级指标权重,得到各级指标权重和总的一维指标权重;建立指标打分模板,灵活选择指标,实现细粒度、多样化的网页类型服务评估;网页可视化展示,实现用户对网页类型的细粒度评估系统的交互操作;灵活分布式部署,实现国内多节点对网页类型应用进行评估。实现国内多节点对网页类型应用进行评估。实现国内多节点对网页类型应用进行评估。
技术研发人员:司成祥 王亿芳 孙天艺 刘云昊 樊峰峰 廖元媛 张梦菲
受保护的技术使用者:国家计算机网络与信息安全管理中心
技术研发日:2023.07.14
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/