首页> 中国专利> HTTP主动测量中仿真真实用户负载的方法及系统

HTTP主动测量中仿真真实用户负载的方法及系统

摘要

本发明公开了一种HTTP主动测量中仿真真实用户负载的方法及系统,方法包括:步骤1,从主页开始抓取待测量网站的每个网页;步骤2,计算所述待测量网站的每个网页的网页级别值;步骤3,模拟多个客户端,并令所述客户端根据所述网页级别值随机选择所述待测量网站的网页进行随机游走主动访问,从而对所述待测量网站的所述每个网页分别产生仿真真实用户访问的不同权值大小的负载。由此,可以对待测量网站的HTTP业务性能进行准确和全面的分析。

著录项

  • 公开/公告号CN103678544A

    专利类型发明专利

  • 公开/公告日2014-03-26

    原文格式PDF

  • 申请/专利权人 中国科学院计算技术研究所;

    申请/专利号CN201310641674.5

  • 发明设计人 张骏;张广兴;谢高岗;徐川;

    申请日2013-12-03

  • 分类号G06F17/30;

  • 代理机构北京律诚同业知识产权代理有限公司;

  • 代理人祁建国

  • 地址 100190 北京市海淀区中关村科学院南路6号

  • 入库时间 2023-12-17 01:00:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-09-07

    授权

    授权

  • 2014-04-23

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20131203

    实质审查的生效

  • 2014-03-26

    公开

    公开

说明书

技术领域

本发明涉及计算机网络测量领域,特别涉及一种网页随机游走主动 测量方法及系统。

背景技术

由于万维网业务在因特网应用中的重要地位,Web流量的特征和 HTTP协议的性能分析一直以来就是研究的热点。常用的HTTP业务性 能分析方法包括被动分析法和主动测量法:被动分析法是通过分析服务 器或客户端收集的大量包记录,从而建立HTTP业务不同层次相关参数 的特征模式,如网页连接数、连接大小等;主动测量法是通过主动探测 的方法来模拟不同负载与协议实现的HTTP业务,从而比较不同协议选 项的性能差异,改进协议设计与协议实现。由于被动分析方法主要使用 服务器或客户端日志信息和包记录,因而对于检验HTTP协议性能和 Web流量特征有很多好处,但对端到端路径HTTP业务性能分析以及故 障发现来说,缺乏足够的灵活性。而使用主动测量法可以灵活地模拟 HTTP业务过程,通过HTTP业务响应及时地给出当前网络的HTTP性 能变化,检测可能出现的性能异常并及时做出调整。

传统的HTTP主动测量技术往往是简单地重复对服务器的上一个 或多个资源的请求,其业务流量的形式单一,对服务器产生的负载压力 比较片面。而真实用户的业务请求有一定的规律,比如:高质量的网页 会获得比低质量的网页更多的请求。但传统的测量技术不能仿真出这种 真实的业务负载,而是片面地产生单一的资源负载来衡量HTTP业务性 能,因而并不能准确反映在真实用户负载下的HTTP业务性能的情况。 因此,需要有一种更好的能仿真真实用户负载的HTTP主动测量技术, 来准确地反映HTTP业务性能。

本发明用于对一指定网站进行HTTP测量。只需要输入网站的主 页,通过本方法就可以对该网站的各个网页分别产生近似于真实用户访 问的不同权值大小的负载,从而能对HTTP业务性能进行准确和全面的 分析。以下对本发明所用的一些技术做简要介绍。

网络爬虫是搜索引擎的关键技术之一,它是一种计算机程序,不停 地从互联网中下载网页,分析并抽取链接,并根据一定的爬行算法来维 护下载队列以发现和搜集信息。网络爬虫是通过网页的链接地址来寻找 网页,从网站某一个网页(通常是首页)开始,读取网页的内容,找到 在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这 样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整 个互联网当成一个网站,那么网络爬虫就可以用这个原理把互联网上所 有的网页都抓取下来。

著名的PageRank算法(以下称为网页级别算法)是L.Page,S.Brin 提出的,网页级别算法的基本思想是:一个网页的重要性由它被引用的 次数相关,被其他网页特别是那些已经被认定为“重要”的网页引用的 次数越多也就重要。该算法在Google搜索引擎对查询结果排序的应用 中有着重要的地位。

网页级别除了考虑到入链数量的影响,还参考了网页质量因素,两 者相结合获得了更好的网页重要性评价标准。如果一个网页节点接收到 的其他网页指向的入链数量越多,那么这个网页越重要。指向网页的入 链质量不同,质量高的网页会通过链接向其他网页传递更多的权重。所 以越是质量高的网页指向某网页,则该网页越重要。网页级别算法刚开 始赋予每个网页相同的重要性得分,通过迭代递归计算来更新每个网页 节点的网页级别得分,直到得分稳定为止。

互联网用户在上网时,往往有类似的网络行为:输入网址,浏览网 页,然后顺着网页的链接不断打开新的网页。随机游走模型就是针对浏 览网页的用户行为建立的抽象概念模型。

在最初阶段,用户打开浏览器浏览第1个网页,用户在看完网页后, 对网页内某个链接指向的网页感兴趣,于是点击该链接,进入第2个网 页。用户不断重复以上过程,在相互有链接指向的网页之间跳转。如果 对于某个网页所包含的所有链接,用户都没有兴趣继续浏览,则可能会 在浏览器中输入另外一个网址,直接到达该网页,这个行为称为远程跳 转。随机游走模型就是一个对直接跳转和远程跳转两种用户浏览行为进 行抽象的概念模型。

发明内容

在HTTP主动测量中,针对传统测量方式不能有效仿真真实用户负 载的问题,本发明的目的在于,提供一种基于网页级别算法的HTTP主 动测量中仿真真实用户负载的方法,能对某网站的各个网页分别产生近 似于真实用户访问的不同权值大小的负载,从而能对HTTP业务性能进 行准确和全面的分析。

为实现上述目的,本发明所提出的HTTP主动测量中仿真真实用户 负载的方法,其特征在于,包括以下步骤:

步骤1,从主页开始抓取待测量网站的每个网页,记录所述每个网 页的超链接的第一类URL和内嵌资源对象的第二类URL,其中,所述 第一类URL用于计算所述每个网页的网页级别值,所述第二类URL用 于请求所述每个网页的所有内嵌资源对象;

步骤2,赋予所述每个网页顺序的ID及相同分值,将所述分值按 ID顺序排列并以向量R表示,设置矩阵A,若存在从网页i到网页j 的所述第一类URL,则所述矩阵A的元素aij的值为网页i所包含的所 述第一类URL的数目的倒数,若不存在从网页i到网页j的所述第一类 URL,则所述矩阵A的元素aij的值为0,计算AR作为网页级别值,并 通过迭代计算来更新所述网页级别值,进而计算出所述每个网页的最终 网页级别值;

步骤3,模拟多个客户端,并令所述客户端根据所述最终网页级别 值随机选择所述待测量网站的网页进行随机游走主动访问,且所述随机 游走主动访问都是先请求容器页面对象,再根据所述第二类URL并发 地请求内嵌资源对象,从而对所述待测量网站的所述每个网页分别产生 仿真真实用户访问的不同权值大小的负载。

本发明所提出的HTTP主动测量中仿真真实用户负载的方法,其特 征在于,所述步骤1具体为:

步骤11,设置并初始化线性表1、线性表2,所述线性表1用于保 存需要遍历的URL,所述线性表2用于保存已遍历过的URL,将所述 待测量网站的主页的URL加入所述线性表1,初始化所述线性表2为 空;

步骤12,选择所述线性表1中的所述待测量网站的主页的URL, 将该URL作为已遍历过的URL,从所述线性表1离开并加入所述线性 表2;

步骤13,根据所述待测量网站的主页的URL解析相应的网页,获 取该网页所包含的所述第一类URL和所述第二类URL;

步骤14,设置链表1、链表2,所述第二类URL存入所述链表2, 对于所述第一类URL,判断其是否属于所述待测量网站,若不属于, 则丢弃,若属于,则将所述第一类URL存入所述链表1;

步骤15,对于未丢弃的所述第一类URL,若其不在所述线性表1 中也不在所述线性表2中,则加入所述线性表1中;

步骤16,判断所述线性表1、所述线性表2的现有状态是否已满足 结束条件,若满足,则进入步骤2,若不满足,则转步骤12,其中,所 述结束条件可以是所述线性表1为空,或所述第一类、第二类URL的 数量超过设定阈值。

本发明所提出的HTTP主动测量中仿真真实用户负载的方法,其特 征在于,所述步骤2具体为:

步骤21,设置调整向量E=0.15×[α,(1–α)/(n–1),...,(1–α)/(n–1)]T, 用于对所述网页级别值进行人为调整,参数α代表主页的重要性,初始 化R0=[1/n,...,1/n]T

步骤22,计算ARi作为新的网页级别向量Ri+1

步骤23,计算迭代偏差d为║Ri1–║Ri+11

步骤24,修正Ri+1为Ri+1+dE;

步骤25,计算估计误差δ为║Ri+1–Ri1

步骤26,若误差δ小于目标误差ε,则进入步骤3,否则,转步骤 22,其中,所述目标误差ε默认为0.001。

本发明所提出的HTTP主动测量中仿真真实用户负载的方法,其特 征在于,所述步骤3具体为:

步骤31,设置用户耐心系数p,0≤p≤1,以及用户的终止条件, 初始化当前网页为所述待测量网站的主页;

步骤32,访问该当前网页,先请求容器页面对象,待该容器页面 对象响应完毕后再根据所述第二类URL并发地请求内嵌资源对象,

步骤33,产生一个0到1的随机数x,若x>p,设置当前网页为 所述待测量网站的主页,转步骤32,若x≤p,转步骤34;

步骤34,计算当前网页的所有所述第一类URL所对应的网页的网 页级别值的加权比例作为概率pk

步骤35,产生一个0到1的随机数y,若y<p1,设置当前网页为 第一个所述第一类URL所对应的网页;若p1≤y<p1+p2,设置当前网 页为第二个所述第一类URL所对应的网页;若p1+p2≤y<p1+p2+p3,设 置当前网页为第三个所述第一类URL所对应的网页,并依此类推;

步骤36,判断当前状态是否满足结束条件,若满足,则结束,若 不满足,则转步骤32,其中,所述结束条件为预设定的仿真时间或访 问次数。

本发明还涉及一种HTTP主动测量中仿真真实用户负载的系统,其 特征在于,包括以下模块:

网页抓取模块,用于从主页开始抓取待测量网站的每个网页,记录 所述每个网页的超链接的第一类URL和内嵌资源对象的第二类URL, 其中,所述第一类URL用于计算所述每个网页的网页级别值,所述第 二类URL用于请求所述每个网页的所有内嵌资源对象;

网页级别值计算模块,用于赋予所述每个网页顺序的ID及相同分 值,将所述分值按ID顺序排列并以向量R表示,设置矩阵A,若存在 从网页i到网页j的所述第一类URL,则所述矩阵A的元素aij的值为 网页i所包含的所述第一类URL的数目的倒数,若不存在从网页i到网 页j的所述第一类URL,则所述矩阵A的元素aij的值为0,计算AR 作为网页级别值,并通过迭代计算来更新所述网页级别值,进而计算出 所述每个网页的最终网页级别值;

测量模块,用于模拟多个客户端,并令所述客户端根据所述最终网 页级别值随机选择所述待测量网站的网页进行随机游走主动访问,且所 述随机游走主动访问都是先请求容器页面对象,再根据所述第二URL 并发地请求内嵌资源对象,从而对所述待测量网站的所述每个网页分别 产生近似于真实用户访问的不同权值大小的负载。

本发明所提出的HTTP主动测量中仿真真实用户负载的系统,其特 征在于,所述网页抓取模块具体包括:

线性表初始化模块,用于设置并初始化线性表1、线性表2,所述 线性表1用于保存需要遍历的URL,所述线性表2用于保存已遍历过 的URL,将所述待测量网站的主页的URL存入所述线性表1,初始化 所述线性表2为空;

URL选择模块,用于选择所述线性表1中的所述待测量网站的主 页的URL,并将该URL作为已遍历过的URL,加入所述线性表2中;

网页解析模块,用于根据所述待测量网站的主页的URL解析相应 的网页,并获取该网页所包含的所述第一类URL和所述第二类URL;

链表处理模块,用于设置链表1、链表2,以及将所述第二类URL 存入所述链表2,并判断所述第一类URL是否属于所述待测量网站, 若不属于,则丢弃,若属于,则将所述第一类URL存入所述链表1;

第一迭代调整模块,当未丢弃的所述第一类URL不在所述线性表 1中也不在所述线性表2中时,用于将该未丢弃的所述第一类URL加 入所述线性表1;

第一迭代控制模块,用于判断所述线性表1、所述线性表2的现有 状态是否已满足结束条件,若满足,则进入所述网页级别计算模块,若 不满足,则进入所述URL选择模块,其中,所述结束条件可以是所述 线性表1为空,或所述第一类、第二类URL的数量超过设定阈值。

本发明所提出的HTTP主动测量中仿真真实用户负载的系统,其特 征在于,所述网页级别计算模块具体包括:

向量初始化模块,用于设置调整向量E=0.15×[α, (1–α)/(n–1),...,(1–α)/(n–1)]T,该调整向量E用于对所述网页级别值进行 人为调整,参数α代表主页的重要性,初始化R0=[1/n,...,1/n]T

网页级别向量计算模块,用于计算ARi,并将ARi作为新的网页级 别向量Ri+1

迭代偏差计算模块,用于计算迭代偏差d,计算公式为║Ri1–║ Ri+11

第二迭代调整模块,用于修正Ri+1,修正公式为Ri+1+dE;

估计误差计算模块,用于计算估计误差δ,计算公式为║Ri+1–Ri1

第二迭代控制模块,用于判断误差δ,若该误差δ小于目标误差ε, 则进入所述测量模块,否则,转网页级别向量计算模块,其中,所述目 标误差ε默认为0.001。

本发明所提出的HTTP主动测量中仿真真实用户负载的系统,其特 征在于,所述测量模块具体包括:

初始化设置模块,用于设置用户耐心系数p,0≤p≤1,以及设置 用户的终止条件,并初始化当前网页为所述待测量网站的主页;

负载产生模块,用于访问该当前网页,且先请求容器页面对象,待 该容器页面对象响应完毕后再根据所述第二类URL并发地请求内嵌资 源对象,

第三迭代调整模块,用于产生一个0到1的随机数x,若x>p,设 置当前网页为所述待测量网站的主页,转负载产生模块,若x≤p,转 概率计算模块;

概率计算模块,用于计算当前网页的所有超链接的第一类URL所 对应的网页的网页级别值的加权比例作为概率pk

URL随机选择模块,用于产生一个0到1的随机数y,若y<p1, 设置当前网页为第一个所述第一类URL所对应的网页;若p1≤y< p1+p2,设置当前网页为第二个所述第一类URL所对应的网页;若p1+p2≤y<p1+p2+p3,设置当前网页为第三个所述第一类URL所对应的网页, 并依此类推;

第三迭代控制模块,用于判断当前状态是否满足结束条件,若满足, 则结束,若不满足,则转负载产生模块,所述结束条件为预设定的仿真 时间或访问次数。

相较与传统的HTTP主动测量方法,本方法的优点在于能很好地仿 真真实用户的负载。第一,仿真用户浏览网页的跳转过程基于网页级别 算法的网页随机游走;第二,仿真用户访问网页时的资源载入过程都是 先请求容器页面对象,再并发地请求内嵌资源对象。

附图说明

图1是本发明的网页抓取阶段流程图

图2是本发明的网页级别值计算阶段流程图

图3是本发明的一个网页级别值计算实例

图4是本发明的测量阶段流程图

具体实施方式

本发明所提出的网页随机游走主动测量方法,该方法共分为三个步 骤:网页抓取、计算网页级别值和测量。

步骤1,网页抓取。采用爬虫算法从主页开始抓取带测量网站的所 有网页,记录下所述每个网页的超链接的URL(第一类URL)和内嵌 资源对象的URL(第二类URL),其中,所述第一类URL用于计算所 述每个网页的网页级别值和随机游走,所述第二类URL用于在测试时 主动请求所述每个网页的所有内嵌资源对象而不需要解析HTML文件。

步骤2,计算网页级别值。开始时,给每个网页设置相同的网页级 别值,通过若干轮的计算,会得到每个网页所获得的最终网页级别值。 随着每一轮的计算进行,网页当前的网页级别值会不断得到更新。在一 轮更新的网页的网页级别值的计算中,每个网页将其当前的网页级别值 平均分配到本网页包含的出链上,这样每个链接即获得了相应的权值。 而每个网页将所有指向本网页的入链所传入的权值求和,即可得到新的 网页级别值。当每个网页都获得了更新后的网页级别值,就完成了一轮 网页级别计算。

步骤3,测量。模拟多个客户端,每个客户端根据网页的网页级别 值随机选择一个网页开始访问,然后重复地从原网页的出链上根据网页 级别值随机选择下一个网页进行访问。对每个网页的访问都是先请求容 器页面对象,待容器页面对象响应完毕后再并发地请求内嵌资源对象。 这样就可以对该网站的每个网页分别产生近似于真实用户访问的不同 权值大小的负载。

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附 图对本发明的网页随机游走主动测量方法进行进一步详细说明。应当理 解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发 明。

下面对本发明方法的三个步骤分别进行详细阐述。

步骤1,网页抓取,如图1所示,首先说明保存本方法所需的对应 网页信息的数据结构。保存网页相关信息的结构体称为网页节点。网页 节点用其URL唯一标识,可以通过URL进行检索。网页节点包含两个 链表,链表L1保存其包含的超链接的URL(第一类URL),链表L2 保存其包含的内嵌资源对象的URL(第二类URL)。

网页抓取从用户给定的网站主页作为种子的URL出发,沿着该 URL所对应的网络图节点上的出链,按照一定的搜索策略来遍历该网 站的网络图,其具体工作流程如下:

步骤11,初始化用于保存URL的线性表。这里需要两个线性表 Q1、Q2,Q1用于保存需要遍历的URL,Q2用于保存已遍历过的URL。 将用户给定的网站主页种子的URL存入Q1,初始化Q2为空。

步骤12,按照搜索策略选择出线性表Q1的URL,其中,若选择 宽度优先搜索,则队首节点出队;若选择深度优先搜索,则栈顶节点出 栈。将该URL作为当前抓取的URL,并存入线性表Q2。

步骤13,根据URL解析相应的网页。获取该网页所包含的超链接 和内嵌资源对象的第一类、第二类URL。

步骤14,内嵌资源对象的第二类URL存入对应网页节点的链表L2。 对于超链接的第一类URL,判断其是否属于该网站,可以看域名是否 一致,若不属于,则丢弃;若属于,则将该第一类URL存入对应网页 节点的链表L1。

步骤15,对于未丢弃的超链接的第一类URL,若其不在Q1中也 不在Q2中,则加入Q1。

步骤16,判断线性表的现有状态是否已满足结束条件,例如:Q1 为空,总的URL数量超过设定阈值。若满足,则退出网页抓取,进入 步骤2;若不满足,则转步骤12。

步骤2,计算网页级别值,如图2所示,为每个网页赋予顺序的ID (ID为上述网页抓取步骤发现该网页的序号,ID只是为了使计算的每 个网页级别值与实际的每个网页对应,即可以通过ID唯一标识一个网 页即可,没有其它意义,故其他顺序也可以接受。),主页的ID为1。 将每个网页的网页级别值ri按网页节点ID顺序排列,以一个向量R(R =[r1,r2,…,rn]T)表示。令一个矩阵A,其每个元素的行号和列号对应 于网页ID。如果有一条从网页i到网页j的超链接,则aij为1/Ni,Ni为网页i包含的超链接数目;若没有这样的超链接,则aij为0。另外, 还有一个调整向量E(E=0.15×[α,(1–α)/(n–1),…,(1–α)/(n–1)]T), 调整向量E用于对网页级别结果进行人为的调整,参数α(0≤α≤1) 可以进行设置,代表主页的重要性。若网站的主页仅仅起向导作用,用 户在之后很少会访问主页,则α可设置为接近0;若网站的主页包含丰 富的内容和摘要,用户会经常访问,则α可设置为接近1。

图3是在不考虑调整向量E的情况下,收敛后的网页级别值的一个 实例。网页框内的数据是每个网页的网页级别值,每个箭头表示一个超 链接,其上的数据是每个网页向其指向的网页平均分配的网页级别值。 以网页1为例,其收敛后的网页级别值为0.304,它一共有5个出链, 故将其网页级别值平均分配给其指向的每个网页,每个网页得到 0.304/5=0.061。再看其入链,网页2、3、5、6都指向了网页1,向其分 配的网页级别值为

0.166+0.071+0.045+0.023=0.305,

因小数误差而与0.304不一致,将数据保留多位小数后可以得到

0.166+0.0705+0.04475+0.0225=0.30375。

为了表述的方便,之后会用到矩阵的1范数:

║A║1=max{∑|ai1|,∑|ai2|,……,∑|ain|},即每一列元素绝对值 之和的最大值。

对于向量,则有║R║1=∑|ri|。可以看到,有║E║1=0.15。

计算网页级别具体工作流程如下:

步骤21:初始化R0=[1/n,…,1/n]T。设置α的值,默认为0.618。 可以看到,有║R01=1,║E║1=0.15。

步骤22:计算新的网页级别向量Ri+1为ARi,即矩阵A乘以原网 页级别向量Ri

步骤23:计算迭代偏差d为║Ri1–║Ri+11

步骤24:修正Ri+1为Ri+1+dE。

步骤25:计算估计误差δ为║Ri+1–Ri1

步骤26:若误差δ小于目标误差ε,默认ε为0.001,则退出计算 网页级别步骤,进入步骤3;否则,转步骤22。

步骤3,测量,如图4所示,这里只描述仿真单个用户的测量步骤 流程。仿真大量用户时,可以在仿真单个用户的基础上,利用事件驱动 的I/O多路复用技术实现。这个通用的技术比较常见,这里不作多余的 叙述,只集中说明仿真单个用户的方法。

首先引入一个用户耐心系数p(0≤p≤1),表示用户继续浏览该网 站的耐心。在每个网页访问结束后,用户将以p的概率点击超链接的第 一类URL进行访问,以(1–p)的概率返回主页,其中,返回主页可以 视为用户重新开始从主页访问,也可以视为原用户离开了网站而一个新 用户开始访问。

测量步骤的具体工作流程如下:

步骤31:设置用户耐心系数p,以及用户的终止条件,如:持续访 问时间,总的请求数等。初始化当前网页为网站主页。

步骤32:访问该当前网页,先请求容器页面对象,待该容器页面 对象响应完毕后再根据所述第二类URL并发地请求内嵌资源对象。

步骤33:产生一个0到1的随机数x,若x>p,设置当前网页为 网站主页,转步骤32;若x≤p,转步骤34。

步骤34:对于该当前网页的所有所述第一类URL,计算其加权比 例作为概率pk,其计算公式为,

pk=rk/(r1+…+rm),

其中,r1…rm为当前网页所有所述第一类URL所对应网页的网页 级别值。

步骤35:产生一个0到1的随机数y,若y<p1,设置当前网页为 第1个超链接的第一类URL所对应的网页;若p1≤y<p1+p2,设置当 前网页为第2个超链接的第一类URL所对应的网页;若p1+p2≤y< p1+p2+p3,设置当前网页为第3个超链接的第一类URL所对应的网页, 并依此类推。

步骤36:判断现在的状态是否已满足结束条件,若满足,则对该 用户行为的仿真结束;若不满足,则转步骤32。

本发明还涉及一种HTTP主动测量中仿真真实用户负载的系统,包 括以下模块:

网页抓取模块,用于从主页开始抓取待测量网站的每个网页,记录 所述每个网页的超链接的第一类URL和内嵌资源对象的第二类URL, 其中,所述第一类URL用于计算所述每个网页的网页级别值,所述第 二类URL用于请求所述每个网页的所有内嵌资源对象;

网页级别值计算模块,用于赋予所述每个网页顺序的ID及相同分 值,将所述分值按ID顺序排列并以向量R表示,设置矩阵A,若存在 从网页i到网页j的所述第一类URL,则所述矩阵A的元素aij的值为 网页i所包含的所述第一类URL的数目的倒数,若不存在从网页i到网 页j的所述第一类URL,则所述矩阵A的元素aij的值为0,计算AR 作为网页级别值,并通过迭代计算来更新所述网页级别值,进而计算出 所述每个网页的最终网页级别值;

测量模块,用于模拟多个客户端,并令所述客户端根据所述最终网 页级别值随机选择所述待测量网站的网页进行随机游走主动访问,且所 述随机游走主动访问都是先请求容器页面对象,再根据所述第二URL 并发地请求内嵌资源对象,从而对所述待测量网站的所述每个网页分别 产生近似于真实用户访问的不同权值大小的负载。

本发明所提出的HTTP主动测量中仿真真实用户负载的系统,其 中,所述网页抓取模块具体包括:

线性表初始化模块,用于设置并初始化线性表1、线性表2,所述 线性表1用于保存需要遍历的URL,所述线性表2用于保存已遍历过 的URL,将所述待测量网站的主页的URL存入所述线性表1,初始化 所述线性表2为空;

URL选择模块,用于选择所述线性表1中的所述待测量网站的主 页的URL,并将该URL作为已遍历过的URL,加入所述线性表2中;

网页解析模块,用于根据所述待测量网站的主页的URL解析相应 的网页,并获取该网页所包含的所述第一类URL和所述第二类URL;

链表处理模块,用于设置链表1、链表2,以及将所述第二类URL 存入所述链表2,并判断所述第一类URL是否属于所述待测量网站, 若不属于,则丢弃,若属于,则将所述第一类URL存入所述链表1;

第一迭代调整模块,当未丢弃的所述第一类URL不在所述线性表 1中也不在所述线性表2中时,用于将该未丢弃的所述第一类URL加 入所述线性表1;

第一迭代控制模块,用于判断所述线性表1、所述线性表2的现有 状态是否已满足结束条件,若满足,则进入所述网页级别计算模块,若 不满足,则进入所述URL选择模块,其中,所述结束条件可以是所述 线性表1为空,或所述第一类、第二类URL的数量超过设定阈值。

本发明所提出的HTTP主动测量中仿真真实用户负载的系统,其 中,所述网页级别计算模块具体包括:

向量初始化模块,用于设置调整向量E=0.15×[α, (1–α)/(n–1),...,(1–α)/(n–1)]T,该调整向量E用于对所述网页级别值进行 人为调整,参数α代表主页的重要性,初始化R0=[1/n,...,1/n]T

网页级别向量计算模块,用于计算ARi,并将ARi作为新的网页级 别向量Ri+1

迭代偏差计算模块,用于计算迭代偏差d,计算公式为║Ri1–║ Ri+11

第二迭代调整模块,用于修正Ri+1,修正公式为Ri+1+dE;

估计误差计算模块,用于计算估计误差δ,计算公式为║Ri+1–Ri1

第二迭代控制模块,用于判断误差δ,若该误差δ小于目标误差ε, 则进入所述测量模块,否则,转网页级别向量计算模块,其中,所述目 标误差ε默认为0.001。

本发明所提出的HTTP主动测量中仿真真实用户负载的系统,其 中,所述测量模块具体包括:

初始化设置模块,用于设置用户耐心系数p,0≤p≤1,以及设置 用户的终止条件,并初始化当前网页为所述待测量网站的主页;

负载产生模块,用于访问该当前网页,且先请求容器页面对象,待 该容器页面对象响应完毕后再根据所述第二类URL并发地请求内嵌资 源对象,

第三迭代调整模块,用于产生一个0到1的随机数x,若x>p,设 置当前网页为所述待测量网站的主页,转负载产生模块,若x≤p,转 概率计算模块;

概率计算模块,用于计算当前网页的所有超链接的第一类URL所 对应的网页的网页级别值的加权比例作为概率pk

URL随机选择模块,用于产生一个0到1的随机数y,若y<p1, 设置当前网页为第一个所述第一类URL所对应的网页;若p1≤y< p1+p2,设置当前网页为第二个所述第一类URL所对应的网页;若p1+p2≤y<p1+p2+p3,设置当前网页为第三个所述第一类URL所对应的网页, 并依此类推;

第三迭代控制模块,用于判断当前状态是否满足结束条件,若满足, 则结束,若不满足,则转负载产生模块,所述结束条件为预设定的仿真 时间或访问次数。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号