CN103209102A - Web服务质量的分布式测量***和方法 - Google Patents

Web服务质量的分布式测量***和方法 Download PDF

Info

Publication number
CN103209102A
CN103209102A CN2013100765297A CN201310076529A CN103209102A CN 103209102 A CN103209102 A CN 103209102A CN 2013100765297 A CN2013100765297 A CN 2013100765297A CN 201310076529 A CN201310076529 A CN 201310076529A CN 103209102 A CN103209102 A CN 103209102A
Authority
CN
China
Prior art keywords
node
service
coordinate
user
measured
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.)
Granted
Application number
CN2013100765297A
Other languages
English (en)
Other versions
CN103209102B (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201310076529.7A priority Critical patent/CN103209102B/zh
Publication of CN103209102A publication Critical patent/CN103209102A/zh
Application granted granted Critical
Publication of CN103209102B publication Critical patent/CN103209102B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种Web服务的服务质量QoS分布式测量***和方法,***设有:中心节点和多个测量节点;它是根据Web服务QoS估测模型,利用网络定位技术分别计算用户主机、多个测量节点和Web服务部署主机、即服务部署节点在抽象的网络坐标系中的网络坐标,再计算用户主机与测量节点的相似度,以便估测用户能够获得的QoS属性值。本发明能快速、准确地估测不同地域和/或不同网络环境下用户端能够获得的包括响应时间和可靠性的Web服务QoS。测量方法的实时性强,不依赖用户的历史QoS数据,不给用户增加额外负担,且估测过程透明。创新点是将网络***映射到多维坐标系中,结合测量节点与用户主机的相似性,估测用户端能够获得的Web服务的响应时间和可靠性,数据真实、可信。

Description

Web服务质量的分布式测量***和方法
技术领域
本发明涉及一种Web服务质量QoS的分布式测量***和方法,特别是涉及一种基于分布式架构的Web服务质量测量的方法和***,属于计算机和网络通信的技术领域。
背景技术
Web服务是一种面向服务架构(Service-Oriented Architecture)的技术,通过标准的Web协议提供服务,保证不同平台的应用服务可以互操作,其通信协议主要基于SOAP,通过UDDI来发现和获得服务的元数据。由于因特网的动态性和不可预知性,相同服务在不同的用户端的呈现结果差异较大,同时网络中功能相同或相似的Web服务众多,如何针对不同地域、不同网络环境的用户选择合适的服务已经成为一个关键问题。
现有技术中,有关Web服务QoS测量或估测的主要有以下实现方式:
文献《Distributed QoS evaluation for real-world Web Services》(刊于:In Proc.8th IEEE International Conference on Web Services(ICWS2010),2010,)介绍了一种分布式的Web服务QoS自动测量方法,其设计目的是为基于QoS的Web服务技术和模型提供真实世界的QoS数据集。该方法对Web服务的可靠性、响应时间和吞吐量进行了测量。首先,通过分布在不同地域的用户调用Web服务,利用各个用户的测量结果计算Web服务的总体可靠性。其次,利用用户对服务的实际调用直接为QoS集提供数据。该技术方案中,用户需要参与实际的Web服务调用过程,增加了用户的负担;且提供的数据集属于原始数据,对于服务QoS属性的总体计算方法没有考虑到服务QoS与地域相关的特点,仅仅是综合所有用户的测量数据,而不是Web服务在用户端呈现的QoS,其结果对于用户的实际意义不大。
文献《a scalable hybrid collaborative filtering algorithm for personalized WebService recommendation》(刊于:RegionKNN:In Proc.8th IEEE InternationalConference on Web Services(ICWS2010),2010)介绍的内容:用户端QoS估测技术主体是基于协同过滤算法实现的:先计算用户相似度和Web服务相似度,分析找出与被测用户具有一定相似度的用户,作为相似邻居。最后,通过相似Web服务的QoS属性和相似邻居的QoS历史记录来估算目标用户端能够获得的服务QoS属性值。该文献考虑了Web服务QoS地域的相关特性,并在此基础上改进了协同过滤算法:先依据用户的地理位置和用户历史QoS数据的相似度将用户按照地域进行分割,再利用协同过滤算法估测用户端能够获得的QoS属性值。该方法需要用户向***提供个人调用Web服务获得的QoS数据历史记录。因此,其QoS数据集的来源是用户使用Web服务时获得的QoS历史数据。由于Web服务QoS属性值是动态变化的,因此依赖于用户的QoS历史数据会降低QoS估测的准确率。同时获取QoS数据的途径不可靠,获取的标准不统一,所以难以应用于实际***当中。
文献《WSP A Network Coordinate based Web Service Positioning Frameworkfor Response Time Prediction.》(刊于:In Proc.19th IEEE International Conferenceon Web Services(ICWS2012),2012)提出的***与方法是一种基于网络坐标的分布式框架,用于估测用户端能够获得的服务响应时间:利用网络坐标距离与网络延时的对应关系计算用户端能够获得的服务响应时间。该方法中网络坐标的计算是基于一种集中式的网络坐标算法—GNP算法。该方法结合了网络坐标定位技术和传统的协同过滤方法,提高了响应时间计算的精确度。其采用的网络坐标算法是基于GNP方法,这种集中式坐标算法与其***采用的分布式框架不一致,分布式部署的节点测量得到的网络延时都要传送给一个中心节点,由中心节点完成网络坐标的计算,这样影响了可扩展性以及计算结果的实时性。
发明内容
有鉴于此,本发明的目的是提供一种能够解决现有技术缺陷的Web服务质量的分布式测量***和方法,用于为不同地域和/或不同网络环境下的用户快速、准确地提供各种Web服务在用户端呈现的QoS属性值(包括响应时间和可靠性);同时,该QoS的估测过程对用户透明,用户不需要安装任何客户端模块。且QoS估测所用数据不依赖用户历史数据,能够保证估测的准确度。
为了达到上述目的,本发明提供了一种Web服务的服务质量QoS分布式测量***,其特征在于:该***根据Web服务QoS估测模型,利用网络定位技术分别计算用户主机、多个测量节点和Web服务部署主机、即服务部署节点在抽象的网络坐标系中的坐标,即网络坐标,再计算用户主机与测量节点的相似度,以便估测用户能够获得的QoS属性值。设有:中心节点和多个测量节点,其中:
中心节点,负责接受和处理用户主机的请求、对各个测量节点分别执行测量任务的调度、用户主机与测量节点的相似度计算和测量结果分析;设有四个部件:任务调度模块、结果分析器、相似度计算模块和数据库;
多个测量节点,分布式部署于该***,负责接收中心节点发送的命令,获取和解析描述Web服务与其接口信息、以及如何与Web服务通信的XML语言WSDL(Web Services Description Language)文件、进行自身和各测量节点的定位、测量用户主机及服务部署节点坐标和测量Web服务QoS;设有:测量节点控制模块、节点定位更新模块、WSDL文件解析模块、服务QoS测量模块和数据库连接模块共五个部件。
为了达到上述目的,本发明还提供了一种采用本发明分布式测量***的测量方法,其特征在于:所述方法包括下列操作步骤:
步骤1,周期测量阶段:
每个测量节点的WSDL文件解析模块解析该Web服务部署节点的IP地址,节点定位更新模块向该IP地址周期发送ping消息和计算从自身节点和服务部署节点之间传递SOAP消息的网络时延;再以服务部署节点为目标节点,采用设定的节点坐标更新方法更新该服务部署节点的坐标;测量节点的服务QoS测量模块通过调用Web服务获取响应时间,并记录调用是否成功;
步骤2,实时测量阶段:
中心节点接收到用户的服务QoS估测请求时,向各个测量节点转发该请求;各个测量节点收到请求后,分别更新自身的网络坐标和用户坐标;
中心节点的相似度计算模块再计算用户与各测量节点的相似度,以供任务调度模块选取与用户相似度最大的K个测量节点;
该K个测量节点再次更新用户和服务部署节点坐标,并测量服务的响应时间和计算当前服务部署节点的处理时间;
中心节点的结果分析器计算用户能够获得的服务响应时间和可靠性。
本发明的关键技术是:基于分布式架构的Web服务质量的测量***及其测量方法能够快速地、准确地估测不同地域和/或不同网络环境下用户端可以获得的Web服务QoS(包括响应时间和可靠性),本发明方法的实时性强,不依赖用户的历史QoS数据,又不给用户增加额外的负担,且估测过程全透明。本发明方法的创新点是将网络***映射到多维坐标系中,结合测量节点与用户主机的相似性,推测在用户端呈现的Web服务的响应时间和可靠性,数据真实、可信。
与现有技术相比较,本发明的优点是:提出一种基于网络坐标模型以及节点之间相似度的QoS估测方法,本发明***与方法利用分布式的测量节点对基于WSDL的Web服务QoS进行测量,然后根据测量数据对Web服务在用户端呈现的服务质量进行实时估测,即在实际测量数据的基础上进行QoS估测,估测过程对用户透明,也不依赖于用户的QoS历史数据,且用户没有增加任何负担,对用户的唯一要求是能接收和响应ping消息,提高了测量***的可扩展性。
本发明还考虑了服务QoS动态变化的特性,同时解决了获取QoS数据的途径不可靠,获取的标准不统一的问题,保证了QoS估测的准确度。再者,本发明采用的网络坐标算法是一种分布式算法,各测量节点的测量过程独立、互不影响,易于添加新的测量节点;并且,网络坐标根据网络距离的实时测量值而发生相应变化,实时性强,能够满足用户对获取服务实时质量属性的需求。此外,本发明引入的节点之间相似度概念,用于选取测量节点和计算结果,节省了***开销,保证测量的准确性。因此,本发明具有很好的推广应用前景。
附图说明
图1是Web服务QoS的分布式测量***结构组成示意图。
图2是Web服务QoS的估测模型示意图(其中Web服务部署节点代表服务部署主机在几何空间中的位置)。
图3是Web服务QoS估测方法操作步骤流程图。
图4是Web服务QoS实时估测阶段时序图;
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
参见图1,介绍本发明Web服务QoS分布式测量***的结构组成:
该***是根据Web服务QoS估测模型,利用网络定位技术分别计算用户主机、多个测量节点和Web服务部署主机(即服务部署节点)在抽象的网络坐标系中的坐标,再计算用户主机与测量节点的相似度,以便估测用户能够获得的QoS属性值。***设有:中心节点和多个测量节点。其中:
中心节点,负责接受和处理用户主机的请求、对各个测量节点分别执行测量任务的调度、用户主机与测量节点的相似度计算和测量结果分析;设有四个部件:任务调度模块、结果分析器、相似度计算模块和数据库。各个部件功能简介如下:
任务调度模块:作为该中心节点的控制枢纽,负责各个测量节点的注册,接收用户主机、即用户QoS的估测请求并作出响应,以及整个***测量任务的分配:接收到用户包括其IP地址,需要测量的Web服务在***中的标识的QoS估测请求时,该任务调度模块就向测量节点发送测量命令,将该用户的IP地址分发给***中所有测量节点,并分配测量任务;完成QoS估测后,将结果返回给用户。
结果分析器:用于根据测量到的用户和服务部署节点的网络坐标,以及用户与各测量节点的相似度,计算用户能够得到的包括响应时间和可靠性的服务QoS属性值,并将计算结果存储于数据库;
相似度计算模块:负责从数据库中获取用户和各测量节点的网络坐标,根据用户到每个测量节点之间的网络距离,计算用户与各个测量节点的相似度,以供任务调度模块和结果分析器分别利用该相似度值选择测量节点和计算用户能够获得的QoS属性值;该***中用户与各测量节点的相似度取决于两者之间的网络距离:距离越近,相似度越高;反之,即距离越远,则相似度越低;
数据库:用于存储包括用户、测量节点和服务部署节点的最近更新的网络坐标,以及各测量节点测量得到服务QoS历史数据。
多个测量节点,分布式部署于该***,负责接收中心节点发送的命令,获取和解析描述Web服务与其接口信息、以及如何与Web服务通信的XML语言WSDL(Web Services Description Language)文件、进行自身和各测量节点的定位、测量用户主机及服务部署节点坐标和测量Web服务QoS;设有:测量节点控制模块、节点定位更新模块、WSDL文件解析模块、服务QoS测量模块和数据库连接模块共五个部件。各个部件功能说明如下:
测量节点控制模块:用于接收中心节点的命令,与中心节点的任务调度模块交互通信,调用和控制测量节点的各个模块完成各项测量操作。
节点定位更新模块:用于在测量Web服务QoS前,根据该测量节点与其他测量节点之间的网络传输时延,更新自身节点的网络坐标;并分别测量该测量节点到服务部署节点和用户的传输时延,以更新两者的网络坐标,保证测量结果的精准度。
WSDL文件解析模块:用于对***中已获得Web服务的WSDL文件进行解析,并生成调用服务所需的客户端代码,并将得到的包括服务名称、服务操作名称、操作参数名称与类型,以及服务地址的解析结果序列化处理后,存储在测量节点中,以供测量服务QoS时使用。
服务QoS测量模块:利用WSDL文件解析模块解析得到的服务信息和自动生成的客户端代码,得到Web服务操作的参数类型并赋值,再对Web服务进行实际调用,获取包括服务的响应时间与调用是否成功的服务QoS数值。
数据库连接模块:用于连接数据库,以供测量节点控制模块、节点定位更新模块和服务QoS测量模块调用,完成对数据库中数据的读写、添加和更新。
本发明***的网络坐标是一种用于预测具有可扩展性的互联网距离的坐标,该网络坐标是由节点的当前坐标值及当前误差所组成。在网络***中,每个节点只需经过少量测量就能够得到该节点的网络坐标;再按照预设的计算方法,利用任意两个节点的网络坐标,就能够预测两者之间的网络距离。
参见图2,介绍本发明***的Web服务QoS估测模型所选取的以欧几里得空间描述的多维坐标网络的简况(图示为三维坐标***)。整个***设有:中心节点、测量节点、服务部署节点和用户,其中每个节点分别与该多维坐标空间中的一个坐标点相对应,且该多维坐标网络的维数与测量节点个数相同。对***中的全部N个测量节点分别按照顺序逐个编号,并设定其中第k个测量节点的第k维坐标初始值为0,其余各维坐标初始值均为随机值,且其各个坐标值都随着网络状态的变化而动态更新(其中,N和k都为自然数,且k小于等于N)。如上所述建立的该网络坐标系,能够通过目标用户节点、服务部署节点、测量节点的不同坐标,计算用户与各测量节点的相似度,并对目标用户能够获得的Web服务QoS属性值(用户最关注的是服务响应时间和可靠性)进行估测,本发明就是用于测量和估测这两个Web服务QoS属性数值,下面简要说明这两个参数:
(A)响应时间:它是衡量服务性能的最重要指标,且具有与地域相关和端到端等特点。Web服务调用需要经由网络传递SOAP消息来完成服务请求和响应的传送,而SOAP消息的传递时间则和网络时延相关;同时,服务响应时间还与服务端的负载有关。所以,对服务调用的响应时间进行了分解:响应时间Tr=Tl+Tp,式中,Tl是用户调用服务传递SOAP消息的网络往返传输时间,Tp是服务的处理执行时间。也就是说,响应时间是结果分析器从数据库获取用户坐标和服务部署节点坐标,计算两者之间的网络距离、即简单对象访问协议SOAP(Simple Object Access Protocol)消息在用户和服务部署主机之间的网络传输时延Tl,再加上该服务的处理时间Tp之和。
分析发现,测量节点和用户主机调用服务的过程是完全相同的,也就是说,它们之间具有相似性,当用户与测量节点的距离越近,相似度越高;两者越远,则相似度越低。首先对***中的全部N个测量节点分别编号为{1,2,...,N},通过计算某个测量节点a(a∈{1,2,...,N})到其他测量节点i(i∈{1,2,...,N}且i≠a,即除去a的其余测量节点)的网络距离La,i和用户u到测量节点i的网络距离Lu,i,就可以计算出测量节点a和用户u的相似度。例如,采用皮尔逊相关系数计算相似度的公式: Sim ( u , a ) = Σ i ( L u , i - L u ‾ ) ( L a , i - L a ‾ ) Σ i ( L u , i - L u ‾ ) 2 Σ i ( L a , i - L a ‾ ) 2 计算两者相似度;其中,Sim(u,a)是节点a和用户u的相似度,
Figure BDA00002904144300072
是Lu,i的平均值,
Figure BDA00002904144300073
是La,i的平均值。要说明的是,利用网络距离计算相似度的公式并不限于皮尔逊相关系数,此处只是举例说明。
相似度在用户的Web服务QoS估测中起到非常重要的作用。本发明***是根据计算得到的相似度对所有测量节点排序,从所有测量节点中选取与用户相似度最高的K个节点,用于对用户和服务部署节点的坐标进行更新。这样既节省了***资源的消耗,也保证了测量得到的用户和服务部署节点坐标的准确性。
根据更新后的用户坐标和服务部署节点坐标,通过欧几里得空间中的距离计算方法计算两者之间的网络距离,即SOAP消息在该用户和该Web服务之间的传输时间Tl,再根据Tr=Tl+Tp计算用户能够获得服务的响应时间。
(B)可靠性:Web服务的可靠性是用户成功调用Web服务的概率。由于不同网络环境、不同地域的用户可能获得的服务可靠性不同,所以某个测量节点测量得到的可靠性,或者所有测量节点得到的总体的可靠性都不能代表用户可以获得的服务可靠性。本发明***依然利用用户与服务测量节点的相似度对可靠性进行估测。
可靠性是结果分析器根据数据库中存储的设定时段内的服务调用结果,计算该时段内每个测量节点调用该服务的成功次数与其总调用次数之比,就是每个测量节点获得该服务的可靠性数值,再利用各个测量节点与用户的相似度计算该用户能够获得该服务的可靠性数值。
假设测量节点k获取服务的可靠性为Pk,则该用户获取该服务的可靠性P的计算公式为:
Figure BDA00002904144300081
式中,Wk为测量节点k与该用户的相似度在所有K个测量节点与该用户相似度之和中占的比重。
参见图3,介绍本发明分布式测量***估测QoS方法流程的两个操作步骤:
步骤1,周期测量阶段:每个测量节点的WSDL文件解析模块解析该Web服务部署节点的IP地址,节点定位更新模块向该IP地址周期发送ping消息和计算从自身节点和服务部署节点之间传递SOAP消息的网络时延;再以服务部署节点为目标节点,采用设定的节点坐标更新方法更新该服务部署节点的坐标(该坐标更新算法不仅用于更新服务部署节点的网络坐标,还用于更新某个用户和某个测量节点的网络坐标);测量节点的服务QoS测量模块通过调用Web服务获取响应时间,并记录调用是否成功。
该步骤1中,测量节点执行下述具体操作内容:
(11)WSDL文件解析模块获取Web服务部署节点的IP地址。
(12)节点定位更新模块向该IP地址周期发送ping消息,并记录该消息在网络中的往返时间,再将该往返时间作为SOAP消息在测量节点和服务部署节点之间的往返传输时间。
(13)节点定位更新模块以服务部署节点为目标节点,采用***设定的节点坐标更新方法,即根据实测的测量节点和目标节点间的网络时延和测量节点的当前坐标值进行迭代运算,更新该服务部署节点的坐标。
其中,节点定位更新模块采用的节点坐标更新方法包括下述具体内容:
(13a)计算目标节点当前坐标在误差和计算时的权重
Figure BDA00002904144300091
再由该目标节点和测量节点的当前坐标,采用计算欧几里得空间距离的方法计算两者的当前距离distance;式中,e和en分别为目标节点和测量节点的当前坐标的当前误差。
(13b)根据计算的两者当前距离和实测的网络距离数值计算该目标节点坐标的相对误差
Figure BDA00002904144300092
并据此更新该目标节点的坐标误差:e=relativeError×Ce×weight+e×(1-Ce×weight),式中,latency为实测的从测量节点到目标节点间的网络时延,即实测的两者当前距离,Ce是计算过程中控制收敛速度的系数。
(13c)利用该目标节点和测量节点的坐标,计算该目标节点坐标的移动方向,该移动方向应与该目标节点和测量节点的坐标连线方向平行,且使es数值减小;再计算该目标节点坐标的移动值ratio=Cc×weight×distance-latency,式中,Cc为控制算法的收敛参数。
(13d)利用步骤(13c)的计算结果更新该目标节点的当前坐标。
(13e)判断该目标节点当前坐标的误差值是否小于设定阈值,若否,则返回步骤(13a)执行相应操作;若是,则停止对该目标节点坐标的更新。
(14)服务部署节点的网络坐标更新完成后,服务QoS测量模块通过调用Web服务获取响应时间,并记录调用是否成功,为估测用户端的服务响应时间和可靠性做好数据准备。
步骤2,实时测量阶段:
中心节点接收到用户的服务QoS估测请求时,向各个测量节点转发该请求;各个测量节点收到请求后,分别更新自身的网络坐标和用户坐标;
中心节点的相似度计算模块再计算用户与各测量节点的相似度,以供任务调度模块选取与用户相似度最大的K个测量节点;
该K个测量节点再次更新用户和服务部署节点坐标,并测量服务的响应时间和计算当前服务部署节点的处理时间;
中心节点的结果分析器计算用户能够获得的服务响应时间和可靠性。
参见图4,介绍步骤2的具体操作内容:
(21)用户向中心节点发送包括该用户的IP地址、其需要测量的Web服务在***中标识的Web服务QoS估测请求。
(22)中心节点的任务调度模块将接收到的该用户请求中的用户IP地址分发给***中的所有测量节点。
(23)每个测量节点的节点定位更新模块分别更新自身坐标和用户坐标:
每个测量节点收到该测量命令后,在其***控制模块控制下,先在各个测量节点之间相互发送ping消息,进行自身定位而完成自身坐标更新;所有测量节点都完成自身网络坐标的更新后,每个测量节点分别向该用户发送ping消息,并测量其自身节点与该用户之间的往返网络时延,同样根据所述节点坐标更新方法法完成对该用户坐标的估测;再将该用户坐标更新到数据库中。该步骤包括下述具体操作内容:
(23a)由当前需要更新自身坐标的测量节点通过节点定位更新模块向***中所有其它测量节点分别发送ping消息,并记录该消息在网络中的往返时间,再将该往返时间作为两个测量节点之间的网络时延;
(23b)从数据库中获取所有测量节点的网络坐标,然后将这些网络坐标和步骤(23a)得到的网络时延作为节点坐标更新算法的输入数据,然后,以当前测量节点为目标节点,利用节点坐标更新方法计算得到当前每个测量节点的新网络坐标;
(23c)用该新网络坐标更新数据库中测量节点原来存储的网络坐标;
(23d)节点定位更新模块采用上述步骤(23a)~(23c)同样方法更新该用户的坐标。
(24)中心节点的相似度计算模块计算相似度:
所有测量节点都完成步骤(23)后,中心节点的相似度计算模块从数据库中分别取出该用户和各测量节点的更新后的坐标,计算该用户与各个测量节点之间网络距离,用于计算该用户与各个测量节点的相似度;
(25)中心节点的任务调度模块选取测量节点,并发送测量命令:根据计算的相似度,任务调度模块选取与该用户相似度最大的K个节点,向该K个测量节点发送继续测量的命令;
(26)测量节点的节点定位更新模块更新用户和服务部署节点的坐标:当该K个测量节点接收到测量命令后,分别更新用户和服务部署节点的坐标,以保证QoS估测的实时性和准确性;
(27)测量节点的服务QoS测量模块测量服务的响应时间:根据WSDL文件解析模块获取的解析服务操作名称和参数名称与类型,服务QoS测量模块自动调用Web服务操作,并记录服务调用是否成功,同时记录该测量节点调用该服务的响应时间Tr;再根据公式Tr=Tl+Tp计算服务处理时间Tp,并存储于数据库,以供结果分析时使用;式中,Tl为SOAP消息在该测量节点和该服务部署节点之间的传输时间,即由测量节点和服务部署节点的坐标计算得到的网络距离;
(28)中心节点的结果分析器分别估算该服务的响应时间和可靠性:
根据数据库中的用户坐标和服务部署节点坐标,通过欧几里得空间中的距离计算方法计算两者之间的网络距离,即SOAP消息在该用户和该Web服务之间的传输时间Tl,再根据Tr=Tl+Tp计算用户能够获得服务的响应时间;
根据数据库中的存储的设定时间段内的服务调用结果,计算每个测量节点k获取该服务的可靠性Pk,该Pk的数值是设定时间段内测量节点k调用该服务的成功次数与总调用次数之比;再利用该用户与该K个测量节点的相似度,依据公式
Figure BDA00002904144300111
计算用户能够获得的服务的可靠性,式中,Wk为测量节点k与该用户的相似度在所有K个测量节点与该用户相似度之和中占的比重;
(29)将估算结果,包括响应时间和可靠性,返回给用户。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种Web服务的服务质量QoS分布式测量***,其特征在于:该***根据Web服务QoS估测模型,利用网络定位技术分别计算用户主机、多个测量节点和Web服务部署主机、即服务部署节点在抽象的网络坐标系中的坐标,即网络坐标,再计算用户主机与测量节点的相似度,以便估测用户能够获得的QoS属性值;设有:中心节点和多个测量节点,其中:
中心节点,负责接受和处理用户主机的请求、对各个测量节点分别执行测量任务的调度、用户主机与测量节点的相似度计算和测量结果分析;设有四个部件:任务调度模块、结果分析器、相似度计算模块和数据库;
多个测量节点,分布式部署于该***,负责接收中心节点发送的命令,获取和解析描述Web服务与其接口信息、以及如何与Web服务通信的XML语言WSDL文件、进行自身和各测量节点的定位、测量用户主机及服务部署节点坐标和测量Web服务QoS;设有:测量节点控制模块、节点定位更新模块、WSDL文件解析模块、服务QoS测量模块和数据库连接模块共五个部件。
2.根据权利要求1所述的分布式测量***,其特征在于:所述中心节点的各个部件功能如下:
任务调度模块,作为该中心节点的控制枢纽,负责各个测量节点的注册,接收用户主机、即用户QoS的估测请求并作出响应,以及整个***测量任务的分配:接收到用户包括其IP地址,需要测量的Web服务在***中的标识的QoS估测请求时,该任务调度模块就向测量节点发送测量命令,将该用户的IP地址分发给***中所有测量节点,并分配测量任务;完成QoS估测后,将结果返回给用户;
结果分析器,用于根据测量到的用户和服务部署节点的网络坐标,以及用户与各测量节点的相似度,计算用户能够得到的包括响应时间和可靠性的服务QoS属性值,并将计算结果存储于数据库;
相似度计算模块,负责从数据库中获取用户和各测量节点的网络坐标,根据用户到每个测量节点之间的网络距离,计算用户与各个测量节点的相似度,以供任务调度模块和结果分析器分别利用该相似度值选择测量节点和计算用户能够获得的QoS属性值;该***中用户与各测量节点的相似度取决于两者之间的网络距离:距离越近,相似度越高;反之,即距离越远,则相似度越低;
数据库,用于存储包括用户、测量节点和服务部署节点的最近更新的网络坐标,以及各测量节点测量得到服务QoS历史数据。
3.根据权利要求2所述的分布式测量***,其特征在于:
所述响应时间是结果分析器从数据库获取用户坐标和服务部署节点坐标,计算两者之间的网络距离、即简单对象访问协议SOAP消息在用户和服务部署主机之间的网络传输时延L,再加上该服务的处理时间,就是该服务的响应时间;
所述可靠性是结果分析器根据数据库中存储的设定时段内的服务调用结果,计算该时段内每个测量节点调用该服务的成功次数与其总调用次数之比,就是每个测量节点获得该服务的可靠性数值,再利用各个测量节点与用户的相似度计算该用户能够获得该服务的可靠性数值;所述设定时段是由用户自行设定的。
4.根据权利要求1所述的分布式测量***,其特征在于:所述测量节点的各个部件功能如下:
测量节点控制模块,用于接收中心节点的命令,与中心节点的任务调度模块交互通信,调用和控制测量节点的各个模块完成各项测量操作;
节点定位更新模块,用于在测量Web服务QoS前,根据该测量节点与其他测量节点之间的网络传输时延,更新自身节点的网络坐标;并分别测量该测量节点到服务部署节点和用户的传输时延,以更新两者的网络坐标,保证测量结果的精准度;
WSDL文件解析模块,用于对***中已获得Web服务的WSDL文件进行解析,并生成调用服务所需的客户端代码,并将得到的包括服务名称、服务操作名称、操作参数名称与类型,以及服务地址的解析结果序列化处理后,存储在测量节点中,以供测量服务QoS时使用;
服务QoS测量模块,利用WSDL文件解析模块解析得到的服务信息和自动生成的客户端代码,得到Web服务操作的参数类型并赋值,再对Web服务进行实际调用,获取包括服务的响应时间与调用是否成功的服务QoS数值;
数据库连接模块,用于连接数据库,以供测量节点控制模块、节点定位更新模块和服务QoS测量模块调用,完成对数据库中数据的读写、添加和更新。
5.根据权利要求1所述的分布式测量***,其特征在于:所述***的网络坐标是一种用于预测具有可扩展性的互联网距离的坐标,其由节点的当前坐标值及当前误差所组成;在网络***中,每个节点只需经过少量测量就能够得到该节点的网络坐标;再按照预设的计算方法,利用任意两个节点的网络坐标,就能够预测两者之间的网络距离;
所述***的Web服务QoS估测模型是以欧几里得空间描述的多维坐标网络,其中包括中心节点、测量节点、服务部署节点和用户的每个节点分别与该多维坐标空间中的一个点相对应,且该多维坐标网络的维数与测量节点个数相同;对***中的全部N个测量节点分别按照顺序逐个编号,并设定其中第k个测量节点的第k维坐标初始值为0,其余各维坐标初始值均为随机值,且其各个坐标值都随着网络状态的变化而动态更新,如此建立的该网络坐标系,能够通过目标用户节点、服务部署节点、测量节点的不同坐标,计算用户与各测量节点的相似度,并对目标用户能够获得的包括服务响应时间和可靠性的服务QoS属性值进行估测,其中,N和k都为自然数,且k小于等于N。
6.一种根据权利要求1所述的分布式测量***的测量方法,其特征在于:所述方法包括下列操作步骤:
步骤1,周期测量阶段:
每个测量节点的WSDL文件解析模块解析该Web服务部署节点的IP地址,节点定位更新模块向该IP地址周期发送ping消息和计算从自身节点和服务部署节点之间传递SOAP消息的网络时延;再以服务部署节点为目标节点,采用设定的节点坐标更新方法更新该服务部署节点的坐标;测量节点的服务QoS测量模块通过调用Web服务获取响应时间,并记录调用是否成功;
步骤2,实时测量阶段:
中心节点接收到用户的服务QoS估测请求时,向各个测量节点转发该请求;各个测量节点收到请求后,分别更新自身的网络坐标和用户坐标;
中心节点的相似度计算模块再计算用户与各测量节点的相似度,以供任务调度模块选取与用户相似度最大的K个测量节点;
该K个测量节点再次更新用户和服务部署节点坐标,并测量服务的响应时间和计算当前服务部署节点的处理时间;
中心节点的结果分析器计算用户能够获得的服务响应时间和可靠性。
7.根据权利要求6所述的测量方法,其特征在于:所述步骤1中,测量节点执行下述操作内容:
(11)WSDL文件解析模块获取Web服务部署节点的IP地址;
(12)节点定位更新模块向该IP地址周期发送ping消息,并记录该消息在网络中的往返时间,再将该往返时间作为SOAP消息在测量节点和服务部署节点之间的往返传输时间;
(13)节点定位更新模块以服务部署节点为目标节点,采用***设定的节点坐标更新方法,即根据实测的测量节点和目标节点间的网络时延和测量节点的当前坐标值进行迭代运算,更新该服务部署节点的坐标;
(14)服务部署节点的网络坐标更新完成后,服务QoS测量模块通过调用Web服务获取响应时间,并记录调用是否成功,为估测用户端的服务响应时间和可靠性做好数据准备。
8.根据权利要求7所述的测量方法,其特征在于:所述步骤(13)中,节点定位更新模块采用的节点坐标更新方法包括下述具体操作内容:
(13a)计算目标节点当前坐标在误差和计算时的权重
Figure FDA00002904144200041
再由该目标节点和测量节点的当前坐标,采用计算欧几里得空间距离的方法计算两者的当前距离distance;式中,e和en分别为目标节点和测量节点的当前坐标的当前误差;
(13b)根据计算的两者当前距离和实测的网络距离数值计算该目标节点坐标的相对误差
Figure FDA00002904144200042
并据此更新该目标节点的坐标误差:e=relativeError×Ce×weight+e×(1-Ce×weight),式中,latency为实测的从测量节点到目标节点间的网络时延,即实测的两者当前距离,Ce是计算过程中控制收敛速度的系数;
(13c)利用该目标节点和测量节点的坐标,计算该目标节点坐标的移动方向,该移动方向应与该目标节点和测量节点的坐标连线方向平行,且使es数值减小;再计算该目标节点坐标的移动值ratio=Cc×weight×distance-latency,式中,Cc为控制算法的收敛参数;
(13d)利用步骤(13c)的计算结果更新该目标节点的当前坐标;
(13e)判断该目标节点当前坐标的误差值是否小于设定阈值,若否,则返回步骤(13a)执行相应操作;若是,则停止对该目标节点坐标的更新。
9.根据权利要求6所述的测量方法,其特征在于:所述步骤2包括下述操作内容:
(21)用户向中心节点发送包括该用户的IP地址、其需要测量的Web服务在***中标识的Web服务QoS估测请求;
(22)中心节点的任务调度模块将接收到的该用户请求中的用户IP地址分发给***中的所有测量节点;
(23)每个测量节点的节点定位更新模块分别更新自身坐标和用户坐标:
每个测量节点收到该测量命令后,在其***控制模块控制下,先在各个测量节点之间相互发送ping消息,进行自身定位而完成自身坐标更新;所有测量节点都完成自身网络坐标的更新后,每个测量节点分别向该用户发送ping消息,并测量其自身节点与该用户之间的往返网络时延,同样根据所述节点坐标更新方法法完成对该用户坐标的估测;再将该用户坐标更新到数据库中;
(24)中心节点的相似度计算模块计算相似度:
所有测量节点都完成步骤(23)后,中心节点的相似度计算模块从数据库中分别取出该用户和各测量节点的更新后的坐标,计算该用户与各个测量节点之间网络距离,用于计算该用户与各个测量节点的相似度;
(25)中心节点的任务调度模块选取测量节点,并发送测量命令:根据计算的相似度,任务调度模块选取与该用户相似度最大的K个节点,向该K个测量节点发送继续测量的命令;
(26)测量节点的节点定位更新模块更新用户和服务部署节点的坐标:当该K个测量节点接收到测量命令后,分别更新用户和服务部署节点的坐标,以保证QoS估测的实时性和准确性;
(27)测量节点的服务QoS测量模块测量服务的响应时间:根据WSDL文件解析模块获取的解析服务操作名称和参数名称与类型,服务QoS测量模块自动调用Web服务操作,并记录服务调用是否成功,同时记录该测量节点调用该服务的响应时间Tr;再根据公式Tr=Tl+Tp计算服务处理时间Tp,并存储于数据库,以供结果分析时使用;式中,Tl为SOAP消息在该测量节点和该服务部署节点之间的传输时间,即由测量节点和服务部署节点的坐标计算得到的网络距离;
(28)中心节点的结果分析器分别估算该服务的响应时间和可靠性:
根据数据库中的用户坐标和服务部署节点坐标,通过欧几里得空间中的距离计算方法计算两者之间的网络距离,即SOAP消息在该用户和该Web服务之间的传输时间Tl,再根据Tr=Tl+Tp计算用户能够获得服务的响应时间;
根据数据库中的存储的设定时间段内的服务调用结果,计算每个测量节点k获取该服务的可靠性Pk,该Pk的数值是设定时间段内测量节点k调用该服务的成功次数与总调用次数之比;再利用该用户与该K个测量节点的相似度,依据公式
Figure FDA00002904144200061
计算用户能够获得的服务的可靠性,式中,Wk为测量节点k与该用户的相似度在所有K个测量节点与该用户相似度之和中占的比重;
(29)将估算结果,包括响应时间和可靠性,返回给用户。
10.根据权利要求9所述的测量方法,其特征在于:所述步骤(23)包括下述具体操作步骤:
(23a)由当前需要更新自身坐标的测量节点通过节点定位更新模块向***中所有其它测量节点分别发送ping消息,并记录该消息在网络中的往返时间,再将该往返时间作为两个测量节点之间的网络时延;
(23b)从数据库中获取所有测量节点的网络坐标,然后将这些网络坐标和步骤(23a)得到的网络时延作为节点坐标更新算法的输入数据,然后,以当前测量节点为目标节点,利用所述节点坐标更新方法计算得到当前每个测量节点的新网络坐标;
(23c)用该新网络坐标更新数据库中测量节点原来存储的网络坐标;
(23d)节点定位更新模块采用上述步骤(23a)~(23c)同样方法更新该用户的坐标。
CN201310076529.7A 2013-03-11 2013-03-11 Web服务质量的分布式测量***和方法 Expired - Fee Related CN103209102B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310076529.7A CN103209102B (zh) 2013-03-11 2013-03-11 Web服务质量的分布式测量***和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310076529.7A CN103209102B (zh) 2013-03-11 2013-03-11 Web服务质量的分布式测量***和方法

Publications (2)

Publication Number Publication Date
CN103209102A true CN103209102A (zh) 2013-07-17
CN103209102B CN103209102B (zh) 2015-11-04

Family

ID=48756194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310076529.7A Expired - Fee Related CN103209102B (zh) 2013-03-11 2013-03-11 Web服务质量的分布式测量***和方法

Country Status (1)

Country Link
CN (1) CN103209102B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103840985A (zh) * 2014-02-28 2014-06-04 浙江大学 基于用户邻域的Web Service服务质量预测方法及装置
CN104579850A (zh) * 2015-01-27 2015-04-29 北京邮电大学 移动互联网环境下Web服务的服务质量QoS预测方法
CN104811477A (zh) * 2015-03-26 2015-07-29 广东睿江科技有限公司 网络距离自动测量的方法及装置
CN106972986A (zh) * 2017-04-14 2017-07-21 福建省天晴互动娱乐有限公司 Idc机房网络质量的检测方法及其***
CN110445652A (zh) * 2019-08-08 2019-11-12 北京众享比特科技有限公司 网络距离预测方法、装置、终端主机和介质
CN113949646A (zh) * 2021-10-15 2022-01-18 安徽大学 一种基于深度学习的Web服务QoS预测方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101557395A (zh) * 2009-02-19 2009-10-14 李艳丽 一种基于QoS的Web服务查找方法
US20110119373A1 (en) * 2009-11-17 2011-05-19 Asia Optical Co., Inc. Service workflow generation apparatus and method
CN102158533A (zh) * 2011-01-28 2011-08-17 浙江大学 基于QoS的分布式web服务选择方法
CN102170449A (zh) * 2011-04-28 2011-08-31 浙江大学 一种基于协同过滤的Web服务QoS预测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101557395A (zh) * 2009-02-19 2009-10-14 李艳丽 一种基于QoS的Web服务查找方法
US20110119373A1 (en) * 2009-11-17 2011-05-19 Asia Optical Co., Inc. Service workflow generation apparatus and method
CN102158533A (zh) * 2011-01-28 2011-08-17 浙江大学 基于QoS的分布式web服务选择方法
CN102170449A (zh) * 2011-04-28 2011-08-31 浙江大学 一种基于协同过滤的Web服务QoS预测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周顺冬: "《中国优秀硕士学位论文全文数据库》", 20 December 2012 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103840985A (zh) * 2014-02-28 2014-06-04 浙江大学 基于用户邻域的Web Service服务质量预测方法及装置
CN104579850A (zh) * 2015-01-27 2015-04-29 北京邮电大学 移动互联网环境下Web服务的服务质量QoS预测方法
CN104811477A (zh) * 2015-03-26 2015-07-29 广东睿江科技有限公司 网络距离自动测量的方法及装置
CN104811477B (zh) * 2015-03-26 2019-02-22 广东睿江云计算股份有限公司 网络距离自动测量的方法及装置
CN106972986A (zh) * 2017-04-14 2017-07-21 福建省天晴互动娱乐有限公司 Idc机房网络质量的检测方法及其***
CN106972986B (zh) * 2017-04-14 2019-09-03 福建省天晴互动娱乐有限公司 Idc机房网络质量的检测方法及其***
CN110445652A (zh) * 2019-08-08 2019-11-12 北京众享比特科技有限公司 网络距离预测方法、装置、终端主机和介质
CN113949646A (zh) * 2021-10-15 2022-01-18 安徽大学 一种基于深度学习的Web服务QoS预测方法
CN113949646B (zh) * 2021-10-15 2023-06-13 安徽大学 一种基于深度学习的Web服务QoS预测方法

Also Published As

Publication number Publication date
CN103209102B (zh) 2015-11-04

Similar Documents

Publication Publication Date Title
CN111027736B (zh) 多目标优化下的微服务组合部署与调度方法
CN103209102A (zh) Web服务质量的分布式测量***和方法
CN112132447A (zh) 一种基于区块链的算力网络信任评估与保障算法
CN101902505B (zh) 一种分布式dns查询日志的实时统计装置及方法
CN113037877B (zh) 云边端架构下时空数据及资源调度的优化方法
US20170142177A1 (en) Method and system for network dispatching
Sun et al. The cost-efficient deployment of replica servers in virtual content distribution networks for data fusion
CN110809317B (zh) 多源动态格网化网络rtk定位方法、***、终端及存储介质
CN110380891A (zh) 一种边缘计算服务资源配置方法、装置与电子设备
CN104539681A (zh) 分布式gis加速***和gis服务的处理方法
CN110519090B (zh) 一种fpga云平台的加速卡分配方法、***及相关组件
CN114513488B (zh) 资源访问方法、装置、计算机设备和存储介质
CN110461037B (zh) 一种动态格网化网络rtk定位方法及***
CN113256163B (zh) 智慧城市政务云平台网外运算方法及***
CN108900314B (zh) 一种网络加速服务的请求数计费方法和装置
CN110830604A (zh) Dns调度方法、装置
CN104468257A (zh) 基于移动用户时空行为的云应用可用性预测方法与***
CN113347275A (zh) 一种基于用户终端地理坐标的边缘节点调度方法和***
Li et al. Data collection and node counting by opportunistic communication
CN110460987B (zh) 一种写卡方法、装置、服务器和存储介质
CN109581280A (zh) 终端自适应在线定位方法、***及装置
CN115858672A (zh) 电力终端管理方法、装置、电子设备及存储介质
CN114900438A (zh) 通信网络数据建模实现方法、装置、存储介质及设备
CN112035760B (zh) 一种任务分配方法及计算机设备
CN116074331A (zh) 区块数据同步方法及相关产品

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
CB03 Change of inventor or designer information

Inventor after: Zhao Yao

Inventor after: Zhou Shundong

Inventor after: Li Jun

Inventor after: Yang Fangchun

Inventor after: Zou Hua

Inventor after: Zhang Wentao

Inventor after: Niu Kun

Inventor after: Wan Neng

Inventor after: Sun Qibo

Inventor after: Lin Rongheng

Inventor before: Zhao Yao

Inventor before: Li Jun

Inventor before: Zhou Shundong

Inventor before: Yang Fangchun

Inventor before: Zou Hua

Inventor before: Sun Qibo

Inventor before: Lin Rongheng

COR Change of bibliographic data
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151104

Termination date: 20170311

CF01 Termination of patent right due to non-payment of annual fee