欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 科技论文 > 计算机论文

基于Petri网的Web服务组合流程的验证

时间:2011-04-23  作者:秩名

论文导读:过程验证器将组合服务转换为对应的Petri网,并通过检查PN模型的活跃度来判断是否存在死锁(详见第三节)。Web服务组合被看作是一个组合的过程,根据一定的控制结构连接一些原子过程。
关键词:Web服务,面向服务的计算,服务组合,Petri网
 

1、序言

近年来,面向服务的计算(SOC)[1]已经成为分布式环境下(如网格或对等网络)解决集成异构应用问题的主要方法。SOC下的服务作为软件实体被定义,研究主要集中在一个服务如何与其它服务协作完成某个应用任务上。因而服务组合被作为面向服务计算下构建应用的主要方式。Internet的异构和动态的特性要求基于Web的服务能够按要求实现服务,即现有的服务能够协同工作以满足用户的要求[2]。

目前关于服务组合的研究项目,包括HP实验室的eFlow[3],加利福尼亚伯克利大学的Ninja[4]服务组合,斯坦福大学的SWORD[5],都只是典型的加强服务编制,忽略了用户和服务的上下文。另外,请求者也许会由于上述方法中的缺乏组合服务的过程验证而得到无效的组合结果。因此,本文提出了一种基于Petri网组合服务建模机制[6],同时引入一种验证算法以验证服务组合流程的正确性。

2、过程验证器

过程验证器的主要功能是验证中介注册代理生成的服务执行队列是否可行,并检查队列中是否存在服务之间的不兼容。

定义1. 一个假定的事件是一条XML消息产生的。如果Web服务WS1要求输入事件消息X在输出事件消息Y之前,而Web服务WS2要求输入事件消息Y在输出事件消息X之前,这样一个顺序关系将导致WS1和WS2之间的无效组合。这种现象称之为服务组合的不兼容性。

过程验证器将组合服务转换为对应的Petri网,并通过检查PN模型的活跃度来判断是否存在死锁(详见第三节)。如果存在死锁,服务执行层将用中介层返回的服务列表中的可供选择的兼容服务替换掉服务A或服务B或是AB都替换掉。如果当前列表中没有可替换的服务,则服务执行层将向中介层请求新的服务或报告失败。最后将验证执行计划发送给执行引擎。

3、验证组合服务流程

过程验证器利用Petri网对组合服务建模,并基于模型的模拟观察服务的行为属性,包括安全性,可达性,死锁及冗余。Petri网对于以下特征的信息处理系统是一种很强的建模和分析工具,如协同并发式、异步式、分布式、平行式、非确定式、随机式。

3.1、用Petri对组合服务建模

定义2. Petri网是一个四元PN=(P,T,F,M0),其中

①P={p1,p2,…,pm}是一组有限的位置;

②T={t1,t2, …,tn}是一组有限的转换;

③F属于(P×T)∪(T×P)是一组有向弧;

④M0:P→{0,1,2,3,…}是一个初始标记。每一个标记代表着一个令牌的分配。如果M是一个标记,则M(p)代表在位置p∈P处的令牌数。

定义3. 一个服务流网是一个六元 SFN=(P,T,F,M0,pi,p0),其中

①(P,T,F,M0)是一个PN;

②pi 是关于·pi ={x∈P∪T︱(x,pi) ∈F}=Φ的输入位置;

③ p0 是关于p0·={x∈P∪T︱(p0,x) ∈F}=Φ的输出位置;

④如果通过添加从t*到T、(pi,t*)及(t*,pi)到F的转换,则SFN*是强连通。

定义4. 一个组合的服务是一个四元的CS=(N,D,E,SFN),其中

①N是CS的名称,用来作为组合服务的唯一标识;

②D是CS的描述,它概括了组合服务提供的内容;

③E是组成CS的一组子服务,可以是一个基本服务也可以是一个组合的服务;

④SFN是由Petri网描述的服务流模型。

Web服务组合被看作是一个组合的过程,根据一定的控制结构连接一些原子过程。因此,下列pi位置将被分解成多个代表不同的服务过程的位置点。根据服务的描述,分解将基于图1所示的不同的控制结构来执行。当所有的组合过程被分解后,CS建模也就完成了。模型可以用来进行死锁、无穷循环及冗余等错误的分析和模拟。

图1 基于控制结构的Petri

3.2、模型验证

组合服务的过程可以通过分析对应的Petri网模型以及各种可以被Petri网应用的分析方法[8](包括可达树、状态方程、映射矩阵)来检查。本文采用可达树来执行一个流程模型的验证,通过将构造可达树与合法性验证相结合来实现。

可达树是用来描述所有从初始状态开始的可达状态。在可达树中,代表M0和它所有可达的后继节点中:M0代表树的根结点;叶子节点对应系统的最终状态;弧代表相关的转换。从根结点到一个确定的节点的路径代表一个可执行的序列。符号ω代表某个节点位置处的有效令牌数为无穷。本文的方法是通过检查流程网的状态和某个位置节点的有效令牌数,来实现构造可达树过程中的CS模型的验证。

 

查看相关论文专题
加入收藏  打印本文
上一篇论文:基于PANDA框架的非线性静力学有限元
下一篇论文:基于protel的单管放大电路的仿真计算
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
    无相关信息
最新计算机论文
读者推荐的计算机论文