首页> 中国专利> 具有时间约束的分布式软件可靠性评估系统

具有时间约束的分布式软件可靠性评估系统

摘要

本发明提供的一种具有时间约束的分布式软件可靠性评估系统,包括位于总控制端的可靠性评估器、位于分布式系统中各节点机上的节点机模拟器和分布式软件模拟器。可靠性评估器用于接收配置文件并进行初始配置,控制节点机模拟器对节点机的模拟等。节点机模拟器用于接收从可靠性评估器发来的检测信息,接收从分布式软件模拟器发送来的可执行程序和可用的数据文件等。分布式软件模拟器用于产生程序列表中的程序和文件列表中的数据文件,并将它们随机分配到节点机模拟器中等。本发明选取可靠度和平均无故障时间作为主要测试指标,具有安装简单、界面人性化、良好的可扩展性、测试参数可控、可连续多次测试和跨平台性等优点。

著录项

  • 公开/公告号CN1624664A

    专利类型发明专利

  • 公开/公告日2005-06-08

    原文格式PDF

  • 申请/专利权人 华中科技大学;

    申请/专利号CN200410061406.7

  • 申请日2004-12-20

  • 分类号G06F11/36;

  • 代理机构42201 华中科技大学专利中心;

  • 代理人曹葆青

  • 地址 430074 湖北省武汉市洪山区珞喻路1037号

  • 入库时间 2023-12-17 16:16:48

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2011-03-09

    未缴年费专利权终止 IPC(主分类):G06F11/36 授权公告日:20070117 终止日期:20100120 申请日:20041220

    专利权的终止

  • 2007-01-17

    授权

    授权

  • 2005-08-10

    实质审查的生效

    实质审查的生效

  • 2005-06-08

    公开

    公开

说明书

技术领域

本发明属于软件性能评估领域,为具有时间约束的分布式软件的可靠性评估提供了一种新的模型与方法。

背景技术

近年来,随着科学技术的快速发展,微电子和计算机技术开始渗透到各个领域,人们对电子信息技术的应用已经处于一个迅猛发展的新时期。由于具有时间约束的分布式软件系统一方面具有时间约束的特性,另一方面又具有程序和数据文件的冗余性,因此被广泛用运到军事、航空航天、航海和能量控制等领域。具有时间约束的分布式软件作为计算机系统的一部分,随着应用范围的扩大,其规模也不断扩大、功能不断增多、复杂性不断加深,在整个计算机技术和信息处理中开始占有重要的地位。具有时间约束的分布式软件规模的增大与复杂程度的提高,其发生差错率会越来越多。分布式软件的失效可能造成灾难性的后果迫使软件工程界和可靠性工程界对具有时间约束的分布式软件的可靠性问题给予充分重视,整个系统的主要问题已经从硬件逐步转向软件。

分布式软件的性能评估通常包含实时性、可靠性、稳定性、易用性和准确性等,在评估时,首先评估分布式软件各个子系统的质量。在保证软件子系统质量的基础上,选择一定的度量指标,对各子系统的实时性、可靠性、稳定性、易用性和准确性进行测量、评级和评估。对子系统的性能评估完毕后,再对整个系统的综合性能进行评估,看是否能够真正满足实际的需要。

分布式软件可靠性是衡量分布式软件质量最重要的指标,也是分布式软件开发的最终目标。分布式软件可靠性的评估是以可靠性模型为基础对软件的可靠性进行评估,以及对与可靠性直接相关的度量(如故障强度、故障率、故障前平均时间等)进行评估。对分布式软件可靠性评估的研究将会在度量软件的可靠性,评估软件的性能,控制和管理软件产品的研制、软件的生产过程,提高分布式软件的生产率等方面发挥重要的作用。

然而,当前分布式软件的评估模型侧重于分布式软件的可靠性,很少反映具有时间约束的特征;同时,可靠性评估所采用的指标通常是单一的,即每次评估时,只是针对软件可靠性的某一性能指标进行评估。

发明内容

本发明的目的在于克服现有分布式软件可靠性评估的缺陷,提供一种具有时间约束的分布式软件可靠性评估系统。该系统改变了将评估指标集中在单个指标上的问题,它能对最能反映具有时间约束的分布式软件可靠性的两个主要指标:可靠度和平均无故障时间同时进行评估。

本发明提供的一种具有时间约束的分布式软件可靠性评估系统,包括位于总控制端的可靠性评估器、位于分布式系统中各节点机上的节点机模拟器和分布式软件模拟器。可靠性评估器用于接收配置文件并根据配置文件进行初始设置,控制节点机模拟器对节点机的模拟,同时,向节点机模拟器发送所需检测的程序和数据文件信息并接收其反馈信息;控制分布式软件模拟器对分布式软件的模拟并接收其反馈信息;显示所有反馈信息;根据配置信息和反馈信息,利用具有时间约束的分布式软件可靠性评估模型,计算具有时间约束的分布式软件的可靠性值并显示其计算结果。节点机模拟器用于接收从可靠性评估器发来的检测信息;并接收从分布式软件模拟器发送来的可执行程序和可用的数据文件;将接收到可执行程序和可用的数据文件存放在指定的目录;运行接收到的检测命令并进行本机的信息检测;在界面上实时显示本机的信息;将检测的结果信息报告给可靠性评估器中;接收从可靠性评估器中发送来的“Clear”命令,清除本节点机上的可执行程序和可用的数据文件信息。分布式软件模拟器用于产生程序列表中的程序和文件列表中的数据文件,并将它们随机分配到各节点机上的节点机模拟器中;接收从总控制器发送来的“Send”命令并重新随机分发程序和数据文件。

上述可靠性评估器包括总控制界面模块、信息收集模块、评估算法模块、结果显示模块和分布式系统重启模块。总控制界面模块用于对系统进行初始化,实现对分布式系统重启模块、信息收集模块、评估算法模块和结果显示模块的控制。分布式系统重启模块用于在评估开始之前,重新启动分布式软件模拟器和所有的节点机模拟器,由分布式软件模拟器和所有的节点机模拟器重新进行程序的随机调度和文件的随机分发。信息收集模块用于接收从总控制界面模块发送来的控制信息并根据控制信息确定其运行方式;向节点机模拟器发送检测信息并接收其反馈信息,并将该反馈信息发送给总控制界面模块和评估算法模块。评估算法模块用于接收从总控制界面模块发送的配置信息和信息收集模块发送来的反馈信息,利用具有时间约束的分布式软件可靠性评估模型,计算具有时间约束的分布式软件可靠性,并将结果发送到结果显示模块。结果显示模块用于显示总控制界面模块和评估算法模块发送来的信息。

上述节点机模拟器包括建立套接字模块、信息处理模块和显示模块。建立套接字模块用于建立节点机模拟器与可靠性评估器及分布式软件模拟器之间的端口连接。信息处理模块用于接收从套接字模块发送来的程序、数据文件和检测信息,将程序和数据文件存放在指定的目录,将根据接收的检测信息对当前节点机上的程序和数据文件进行检测,判断其是否为可执行程序或是否为可用的数据文件,并将检测结果发送到建立套接字模块和显示模块,由显示模块加以显示。

上述分布式软件模拟器包括初始化模块、建立套接字模块以及程序和文件分发模块。初始化模块用于读入初始化文件,并将信息传送给建立套接字模块,建立套接字模块根据该信息建立节点机模拟器和分布式软件模拟器之间的连接,并将初始化文件转发给可执行的程序和可用的文件分发模块,由程序和文件分发模块将分布式软件的分程序随机地调度到节点机模拟器上运行,将数据文件随机地分发到节点机模拟器上。

本发明采用模块化的设计方法,以最大限度地降低评估软件系统自身因素对软件评估结果的影响;同时,亦采用了模拟器的设计方法,这样既能保证模拟器真实的模拟分布式软件运行的环境,又能使评估系统独立于被测的分布式软件系统之外,从而实现对具有时间约束的分布式软件可靠性的真实评估。总之,本发明具有以下技术效果:

1、采用了新的评估模型

本系统根据原有的分布式软件评估理论,在增加时间约束因子的基础上,推导出了一种新的适合具有时间约束的分布式软件可靠性评估的理论和模型。这种评估模型充分考虑了程序和数据文件的分布对具有时间约束的分布式软件可靠性的影响;采用广度优先、节点逐步扩展等方法,确保生成的文件生成树中没有重复路径。

2、良好的可扩展性

本系统可以采用从配置文件中读入被测分布式系统的拓扑结构信息,故本系统的配置比较灵活,能够对线性、星形、环形和网状等不同拓扑结构下的分布式系统的可靠性进行评估,同时它还不受分布式系统的拓扑结构和大小没有限制。

3、评估参数可控制性

本系统可以对配置文件中评估参数进行配置。系统程序员在进行设计前,可以利用该系统先对其可靠性进行评估,并对影响其性能的关键因素进行调整以达到用户要求,避免了由系统设计不合理所带来的不必要开销和麻烦。

4、评估的可连续性

节点机模拟器和分布式软件模拟器能够共同模拟任何被评估的分布式系统,通过总控制器2对具有时间约束的分布式软件的可靠性进行评估。当一次评估完毕时,可以从本系统软件中的总控制界面中重新启动的节点机模拟器和分布式软件模拟器,进行程序的随机调度和文件的随机分配,为下一次评估做准备。整个操作实现了自动化。

5、跨平台性。

该系统软件用Java语言编写,适用于Windows操作平台和Linux操作平台。

此外,本发明还具有安装简单方便和界面非常人性化的特点。

附图说明

图1为具有时间约束的分布式软件可靠性评估系统拓扑结构;

图2为可靠性评估模拟器的系统结构;

图3为节点机模拟器数据流程图;

图4为分布式软件模拟器数据流程图。

图5为一个测试实例的示意图。

具体实施方式

如图1所示,从评估系统的工作角度来说,本发明包括位于总控制器2内的可靠性评估器5、位于分布式系统1中各节点机4.1、4.2、……4.n上的节点机模拟器6.1、6.2、……、6.n(下面统称为6)和分布式软件模拟器7。

可靠性评估器5是整个评测系统的核心,它的主要功能是接收配置文件并根据配置文件进行初始的配置;控制节点机模拟器6对节点机的模拟,同时,向节点机模拟器6发送所需检测的程序和数据文件信息并接收其反馈信息;控制分布式软件模拟器对分布式软件的模拟并接收其反馈信息;显示所有反馈信息;根据配置信息和反馈信息,利用具有时间约束的分布式软件可靠性评估模型,计算具有时间约束的分布式软件的可靠性值并显示其计算结果。

其中,在具有时间约束的分布式软件可靠性评估模型中,采用了一系列算法,包括:度-1精简算法(Degree-1 Reduction Algorithm)、度-2精简算法(Degree-2 Reduction Algorithm)、文件生成树算法(File Spanning TreeAlgorithm)、传输时间评估算法(Transmission Time Evaluation Algorithms)和Markov模型。其具体的实现步骤为:

①、根据配置文件,确定分布式软件中的所有可执行的分布式程序,将它们组成一个集合{p1,p2,p3,…,pn}。(i=1,2,…,n)

②、根据配置文件,确定分布式程序pi(i=1,2,…,n)所需的所有数据文件,将它们组成一个集合{F1,F2,F3,…,Fm}。

③、根据配置文件和接收的所有反馈信息,确定分布式程序pi(i=1,2,…,n)所需的数据文件在分布式系统中位置。

④、根据配置文件和数据文件在节点机中的位置,利用度-1精简算法和度-2精简算法,对分布式系统图进行精简。

⑤、根据精简的分布式系统图、分布式程序pi(i=1,2,…,n)所需的数据文件和数据文件在系统中位置,利用文件生成树算法,生成分布式程序pi(i=1,2,…,n)执行时所需数据文件的所有传输路径。

⑥、根据分布式程序pi(i=1,2,…,n)执行时所需数据文件的所有传输路径,利用传输时间评估算法,计算出数据文件在传输路径上所需的传输时间,从而确定数据文件的响应时间。

⑦、根据分布式程序pi(i=1,2,…,n)执行时所需的数据文件、数据文件在分布式系统中的位置、每条链路的传输能力和可靠度,时间约束因子,利用马尔科夫模型和分布式程序可靠度的计算公式,计算出分布式程序pi(i=1,2,…,n)的可靠性。

⑧、根据分布式程序pi(i=1,2,…,n)的可靠性,计算出具有时间约束的分布式软件的可靠性。

节点机模拟器6是整个评测系统中分布式软件的运行环境。它的主要功能是接收从可靠性评估器5发来的检测信息;同时接收从分布式软件模拟器7发送来的可执行程序和可用的数据文件;将接收到可执行程序和可用的数据文件存放在指定的目录;运行接收到的检测命令并进行本机的信息检测;在界面上实时显示本机的信息;及时将检测的结果信息报告给可靠性评估器5中;同时,接收从可靠性评估器5中发送来的“Clear”命令,清除本节点机上的可执行程序和可用的数据文件信息。

分布式软件模拟器7的主要功能是产生程序列表中的程序和文件列表中的数据文件,并将它们随机分配到各节点机上的节点机模拟器6中;接收从总控制器2发送来的“Send”命令并重新随机分发程序和数据文件。

可靠性评估器5首先通过网络3向节点机4发送控制命令,命令节点机4中的各节点机模拟器6开始模拟工作;当所有的节点机模拟器6的模拟工作完成之后,可靠性评估器5再通过网络3向分布式软件模拟器7发送控制命令,分布式软件模拟器7根据控制命令向节点机4中的各节点机模拟器6进行分布式程序和数据文件的随机分发,完成对分布式软件的模拟;当分布式软件模拟器7完成对分布式软件的模拟后,可靠性评估器5再通过网络3向节点机4中的各节点机模拟器6发送检测信息。当节点机4中的各节点机模拟器6接收到检测信息后,按检测信息中的检测命令进行检测并将结果反馈到可靠性评估器5;可靠性评估器5根据配置信息和反馈信息,利用具有时间约束的分布式软件可靠性评估模型,计算出具有时间约束的分布式软件的可靠性值并显示其计算结果。

由于分布式系统的拓扑结构在形状上可能为线性、星形、环形或网状等形状,在网络分布上可能为同一个局域网也可能为广域网,而不同网络形状和不同网络分布的分布式系统对分布式软件的需求可能不同。同样,不同的分布式软件在运行时对分布式系统环境的需求也可能不同。因此,在对具有时间约束的分布式软件可靠性进行评估时,采用了模拟器的方法,使得它一方面能对不同的具有时间约束的分布式软件进行模拟,另一方面又能对分布式系统中的各节点机进行模拟。

下面结合图2为上述各部分的具体结构作进一步详细的说明。

一、总控制器中的可靠性评估器

可靠性评估器5包括总控制界面模块8、信息收集模块9、评估算法模块10、结果显示模块11和分布式系统重启模块12五部分。

总控制界面模块8的主要功能是:输入时间约束因子;读入分布式系统图G的配置文件、每条链路的传输能力和可靠度,对系统进行初始化;实现对分布式系统重启模块12、信息收集模块9、评估算法模块10和结果显示模块11的控制;向评估算法模块10和结果显示模块11发送配置信息。

分布式系统重启模块12的功能是:在评估开始之前,重新启动分布式软件模拟器7和所有的节点机模拟器6,重新进行程序的随机调度和文件的随机分发。

信息收集模块9的功能是:接收从总控制界面模块8发送来的控制信息并根据控制信息确定其运行方式;向节点机模拟器6发送检测信息并接收其反馈信息(每个节点机所有的可用程序集PA和可用数据文件集FA);向总控制界面模块8和评估算法模块10发送所接收的反馈信息。

评估算法模块10的功能是:接收从总控制界面模块8发送的配置信息和评估算法模块10发送来的反馈信息,根据这些信息,利用具有时间约束的分布式软件可靠性评估模型,计算具有时间约束的分布式软件可靠性并将其值发送到显示模块11。

结果显示模块11的功能是:接收评估算法模块10发送的评估结果;显示分布式系统图、评估结果图和评估结果日志文件。

结果显示模块11的功能是:接收从总控制界面模块8发送启动命令或停止命令;接收评估算法模块10发送的评估结果;向总控制界面模块8发送显示信息;将接收的评估结果进行显示。

可靠性评估器5的具体程序流程如下:

①、用户从总控制界面8输入时间约束因子,读入分布式系统示意图的描述文件、每条链路的传输能力和每条链路的可靠度,对系统进行初始化。

②、用户从总控制界面8向分布式系统重启模块12发送控制信息,分布式系统重启模块12根据控制信息先向节点机模拟器6发送重新启动命令,等节点机模拟器6模拟完毕后,再向分布式软件模拟器7发送启动命令。

③、信息收集模块9接收从总控制界面模块8发送来的控制信息,信息收集模块9根据控制信息先向节点机模拟器6发送检测信息,再接收节点机模拟器6发回的反馈信息,然后向评估算法模块10和总控制界面模块8发送接收的反馈信息。

④、评估算法模块10接收从信息收集模块9发送的反馈信息,同时亦接收从总控制界面模块8发送的配置信息。根据接收这些信息,利用具有时间约束的分布式软件可靠性评估模型,计算具有时间约束的分布式软件可靠性,最后将计算结果发送到结果显示模块11。

⑤、结果显示模块11接收评估算法模块10发送的计算结果,同时接收从总控制界面模块8发送来的显示命令和配置信息。结果显示模块11根据显示命令先向总控制界面模块8发送显示信息,再将接收的计算结果和配置信息进行显示。显示内容有三个:分布式系统图、评估结果图和评估日志文件。分布式系统图以直观的形式显示被评估的分布式系统中每一个节点的信息(节点名、IP地址、可用文件集和可用程序集)和节点之间的连接状况(链路的通讯能力和可靠度)。评估结果图以条形图的形式显示整个分布式软件的评估结果并显示每一个分程序可靠性评估的详细结果(对该程序进行精简后的分布式系统图和所有有效状态的平均无故障时间)。同时,以文本文件的形式显示评估日志,便于系统设计工程师分析和改进分布式系统和软件的可靠性。

⑥、分布式系统重启模块12在下一次开始之前重启分布式系统模拟器和所有的节点机,重新对可执行程序和可用的数据文件进行随机分发。这样,每次都有可能对不同的分布式系统进行评估,使评估更具一般性。

二、节点机模拟器

节点机模拟器6包括三个功能模块:建立套接字模块13、信息处理模块14和显示模块15。

建立套接字模块13在端口8189建立服务器套接字,并等待总控制器2中的可靠性评估器5和分布式软件模拟器7的连接;接收从总控制器2中的可靠性评估器5发送来的检测信息并将检测信息送入信息处理模块14;接收从分布式软件模拟器7发送来的可执行程序和可用的数据文件并将它们送入信息处理模块14;将检测到的信息报告给总控制器2中的可靠性评估器5;将连接信息分别返回给总控制器2中的可靠性评估器5和分布式软件模拟器7。

信息处理模块14接收从套接字模块13发送来的可执行程序和可用的数据文件,将接收到可执行程序和可用的数据文件存放在指定的目录;同时也接收从套接字模块13发送来的检测信息;根据接收的检测信息进行信息的检测,检测当前节点机上的程序和数据文件信息;将检测结果发送到建立套接字模块13和显示模块15。如上所述,套接字模块13将检测结果发送信息收集模块9。

信息处理模块14接收从套接字模块13的信息的过程描述如下:

①、若收到“FA”,表明接收的将是数据文件,信息处理模块14首先接收文件名,再将接收到的文件内容保存到以该文件名命名的文件中,将文件名信息保存到txt文件列表中。

②、若接收到“PA”,表明接收的将是可执行程序,信息处理模块14首先接收程序名,再将接收到的文件内容保存到以该程序名命名的文件中,并运行该程序,将文件名信息保存到exe文件列表中。

信息处理模块14进行信息检测的过程描述如下:

①从指定存放可执行程序和可用的数据文件目录中取出txt文件列表,从txt文件列表中读取“FA”后面的文件名,如果读取的文件名为空,则表示当前节点机上可用的数据文件为空,如果读取的文件名非空,则表示当前节点机上可用的数据文件非空。

②从指定存放可执行程序和可用的数据文件目录中取出exe文件列表,从exe文件列表中读取“PA”后面的文件名,如果读取的文件名为空,则表示当前节点机上的程序为空,如果读取的文件名非空,则表示当前节点机上的程序非空。

显示模块15接收从信息处理模块14发送的检测结果并将它进行显示,显示当前节点机上的程序和文件信息。

节点机模拟器6的数据流程如图3所示,其具体的程序流程如下:

(1)、新建服务器套接字,在特定的端口8189侦听,等待总控制器2中的可靠性评估器5和分布式软件模拟器7的连接。

(2)、判断是否接到“Begin”连接请求,如果是,则转到步骤(3),如果没有,则转到步骤(1)。

(3)、建立与总控制器2中的可靠性评估器5和分布式软件模拟器7的连接。

(4)、判断是否接到“Start”命令,如果是,则转到步骤(7),如果不是,则转到步骤(8)。

(5)、判断是否接到“Clear”命令,如果是,则转到步骤(6),如果不是,则转到(12)。

(6)、清除文本文件列表中的所有数据文件名;清除可执行程序列表中的所有程序名;更新显示界面,只显示节点机器名和节点IP地址;转到步骤(12)。

(7)、判断收到的信息是否是“PA”,如果是,表明将要收到可执行程序,于是,转到步骤(9),如果不是,则转到步骤(8)。

(8)、判断收到的信息是否收到“FA”,如果是,表明将要收到可用的数据文件,于是,转到步骤(10),如果不是,则转到步骤(5)。

(9)、接收程序的显示信息并接收程序,转到步骤(11)。

(10)、接收数据文件的显示信息并接收数据文件,转到步骤(11)。

(11)、显示接收到的数据文件和程序,并将此信息发送给总控制器2。

(12)、判断接收的是否是“End”命令,如果是,则停止,如果不是,则转到步骤(1)。

三、分布式软件模拟器

分布式软件模拟器7分为三个功能模块:初始化模块18、建立套接字模块16以及程序和文件分发模块17。

初始化模块18读入配置文件,包括各节点机的IP地址、程序列表和文件列表;建立套接字模块16在端口8188建立服务器套接字并等待连接;程序和文件分发模块17将分布式软件的分程序随机地调度到某个节点机上运行,将数据文件随机地分发到某个节点机上。

分布式软件模拟器7需要同时与节点机模拟器6和总控制器2中的可靠性评估器5进行通讯。分布式软件模拟器7的数据流程如图4所示,其流程如下:

(1)读取初始化文件。初始化文件中包含所需分发的节点集、程序集和文件集。

(2)新建服务器套接字,在特定的端口8188侦听。

(3)判断是否进行程序的分发,如果是,则转到步骤(4),如果不是,则转到步骤(5)。

(4)在节点集中随机的分配一个节点机,建立总控制端与节点机之间的连接。由总控制端发送程序在节点机上的显示信息并向节点机发送程序文件名和程序。进行完毕后,转到步骤(7)。

(5)判断是否进行数据文件的分发,如果是,则转到步骤(6),如果不是,则转到步骤(1)。

(6)在节点集中随机的分配一个节点机,建立总控制端与节点机之间的连接。由总控制端发送数据文件在节点机上的显示信息并向节点机发送数据文件名和数据文件。进行完毕后,转到步骤(7)。

(7)判断数据文件和程序是否发送完毕,如果发送完毕,则结束,否则转到步骤(3)。

为保证评估结果的精确,在开始记录评估数据之前要经过一段的试运行时间,通常为5分钟,当分布式系统中的节点机模拟器、总控制器2和分布式软件模拟器的运行趋于稳定时,才开始记录评估数据和评估结果。

下面举实例对本发明作进一步详细的说明。

本发明系统被安装在“互联网与集群计算中心”,测试环境如图5所示。使用“互联网与集群计算中心”的多台主机(内部网段为192.168.1.0),各自安装节点机模拟器程序并运行,作为分布式系统的可用资源。在另一台机器(如192.161.1.91)上安装分布式软件模拟器,运行模拟分布式软件,并将组成该软件的程序和程序所需的数据文件随机分发到已运行的节点机上,模拟一个分布式软件运行的实际环境。同时在机器(IP为192.168.1.79)上安装可靠性评估器,运行该评估器,从配置文件中读取当前分布式软件的结构信息,构造分布式软件系统图,收集分布式软件图中节点机上的可用信息(包括程序和程序所需文件),对该分布式软件进行测试。

具体的测试工程如下:

(1)安装并启动可靠性评估器。将初始化文件init.txt和可靠性评估器程序Reliability.exe拷贝到E:\Reliability\目录下,运行Reliability.exe启动可靠性评估器。

(2)安装并启动节点机模拟器。将节点机模拟器程序NodeEmulator.exe拷贝每个节点机到E:\Reliability\目录下。节点机模拟器在收到可靠性评估器发送来的控制命令“Start”时,运行NodeEmulator.exe,启动节点机模拟器。只有节点机程序运行正常,分布式软件模拟器分配的任务才有可用的处理机和内存资源来完成。模拟的被评估分布式系统中有几台节点机,就要安装相应数目的节点机模拟器。

(3)安装并启动分布式软件模拟器。将程序列表和文件列表文件list.txt和分布式软件模拟器程序DSEmulator.exe拷贝到E:\Reliability\目录下。分布式软件模拟器在收到可靠性评估器发送来的控制命令“Start”时,运行DSEmulator.exe,启动分布式软件模拟器,产生list.txt文件中的程序或文件,随机分配到分布式系统的节点机上。

(4)在可靠性评估器中,1)首先从总控制界面菜单中选择“Initialize→Restart DS”重启分布式系统,重新进行程序和文件的随机分配。2)从总控制界面菜单中选择“Initialize→From File”读取并编辑初始化文件init.txt得到分布式系统图,自动向节点机模拟器发送信息收集命令“Begin”,得到程序和文件分布信息;3)从总控制界面菜单中“Test→Property”改变时间约束因子,然后从菜单中选择“Test→Start”开始评估过程;4)评估结束后,从总控制界面菜单中选择“Display→System Graph”直观地显示该被测分布式软件的拓扑结构图和详细信息;或从菜单中选择“Display→Result Graph”以条形图显示本次评估的总结果,点击每个条形图下的数字,可显示每个分程序的可靠性评估图;也可以从菜单中选择“Display→LogFile”以文本形式显示本次测试的详细信息,便于分布式系统分析员进行评估结果的分析,对分布式系统和软件进行改进;5)用户可随时从总控制界面菜单中选择“Help”中获得帮助信息;6)一次评估结束后,可从总控制界面菜单中选择“Initialize→Restart DS”重启分布式系统,重新进行程序和文件的随机分配,跳转到步骤1)进行下一次评估过程,可反复评估。

上述测试的结果是使用了互联网与集群计算中心的六台主机作为节点机,一台主机作为分布式软件模拟器,一台主机作为可靠性评估器。通过节点机模拟器和分布式软件模拟器,对分布式软件运行的实际环境模拟。通过本评估系统,评估出一个时间约束为200毫秒(ms)的分布式软件的可靠性,测试结果如表一、表二所示。

                                         表.一具有时间约束的分布式软件中各程序在节点机上的

                                                 可执行状态和对应的平均故障时间(MTTF)

  state   MTTF(ms)  state   MTTF(ms)  state   MTTF(ms)  state   MTTF(ms) PA1∶P1    1   68.3333    2    55.0000    3    55.0000    4    66.6667    5   66.6667    6    25.0000    7    50.0000    8    50.0000    9   50.0000    10    50.0000    11    66.6667    12    50.0000    13   50.0000 PA2∶P2    1   131.6919    2    87.517624    3    87.517624    4    50.0000 PA2∶P3    1   68.60523    2    43.56223    3    55.11448    4    60.228912    5   35.545334    6    58.33334    7    25.316458    8    25.316458    9   33.333366    10    50.00003    11    25.316458    12    50.000065    13   25.316458    14    50.000065    15    50.00005 PA3∶P3    1   52.11494    2    30.430899    3    43.56223    4    35.545334    5   35.545334    6    33.333324    7    25.316458    8    25.316458    9   25.316458    10    25.316458    11    33.333366    12    25.316458 PA4∶P4    1   58.3333    2    38.333317    3    43.333313    4    43.333313    5   51.66664    6    38.333317    7    34.999985    8    33.333324    9   24.999987    10    33.333324    11    33.333324    12    24.999987    13   24.999987    14    33.333324    15    33.333324    16    24.999987    17   33.333324    18    24.999987    19    33.333366    20    33.333366 PA5∶P5    1   109.58438    2    51.281986    3    109.58433    4    51.28204    5   91.11619    6    51.281975    7    51.28202    8    51.28202    9   91.11615    10    51.282005 PA6∶P5      1   91.72598    2    25.316458    3    91.11619    4    91.1161    5   91.11615 PA6∶P6    1   56.392815    2    47.67582    3    25.316458    4    32.81376

                                       表二具有时间约束的分布式软件(TCDS)中程序的

                                                 可靠度和TCDS的可靠度

  程序所在的节点机可靠度TCDS中程序的可靠度   TCDS的可靠度    P1    x1 0.6941432    0.6937952    0.28401545    P2    x2 0.8777859    0.8777859    P3    x2 0.6941418    0.9064509    x3 0.69413894    P4    x4 0.693063    0.693063    P5    x5 0.7801325    0.9515709    x6 0.7797352    P6    x6 0.7797335    0.7797335

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号