论文部分内容阅读
当前,互联网不仅是信息传输的基础设施,而且是信息处理和服务共享的基础设施。以资源聚合和按需服务为主要理念的云计算的迅速发展,使未来的用户不必再关心如何根据自己的业务需求去购买服务器、软件和解决方案,而只需关心如何通过互联网来获取满足自己需求的云服务。面向服务的计算(Service-Oriented Computing,SOC)把服务作为构建软件应用系统的基本单元,为网络资源和服务共享提供了统一的技术规范。面向服务的体系架构(Service-Oriented Architecture,SOA)已成为新一代Web服务的基础架构。在这一架构下,开发者无需进行底层的程序实现,而只需编写服务组合脚本便可构建一个复杂的业务应用。以Web服务为代表的软件服务及服务协同正成为互联网应用的主流形态。但是,由于恶意客户或异常伙伴服务的存在,服务协同未必能正常完成。为此,需要以服务组合监控为目的,对Web服务组合过程中所有伙伴服务之间的交互行为建立定性分析模型。另一方面,考虑到网络传输速度和可靠性等环境因素对服务组合性能的影响,需要以环境优化为目的,引入定量化的环境因素,在前一模型基础上建立交互行为的量化模型。本文在分析国内外相关最新研究成果的基础上,从定性定量两个方面研究了Web服务组合的交互模型、交互行为检测算法、运行时监控机制和基于模型模拟的环境优化方法,主要成果包括:1.提出了一种基于有色Petri网的Web服务组合交互定性分析模型WS-PIM。目前,业务流程执行语言BPEL可以作为服务组合脚本语言用于描述服务组合的流程,而WS-PIM模型关注于服务组合过程中的服务之间的协同交互关系是否发生异常。在WS-PIM模型中,这种协同交互关系是基于有色Petri网描述的,该模型将服务组合流程所处的状态映射为有色Petri网的“令牌”(Token)在其“库所”(Place)中的分布,将流程状态的变化映射为“变迁”(Transition),将BPEL中用于装配流程的“活动”(Activity)映射为WS-PIM模型的基本模式,进而采用库所融合的方式实现模型基本模式的嵌套迭代和组合。本文还给出了WS-PIM模型的首、尾库所唯一性,后继状态可达性以及后继节点的出入度约束等重要性质。实验表明,该模型比同类模型更适合于描述服务组合过程中的协同交互关系。2.提出了一种基于时序属性一致性的Web服务组合交互行为检测算法。交互行为的时序属性包括偏序关系、活性、安全性等。在服务组合流程的实际执行过程中,消息是交互行为的唯一表征,代表交互过程的是实际发生的消息序列;另一方面,WS-PIM模型所描述的服务组合的流程状态变化过程是通过定性分析得到的变迁发生序列。两个序列所体现的时序属性必须是一致的。本文以一个BPEL描述的典型服务组合流程为实例,提出了一种基于时序属性一致性的Web服务组合交互行为检测算法。该算法将实际捕获到的交互行为序列与模型分析得到的变迁发生序列进行时序关系比对,便能判定服务组合执行是否存在异常。实验表明,该算法能有效检测服务组合过程中发生的服务异常。3.提出了一种基于Web服务组合交互行为检测算法的运行时监控机制。该机制由交互模型特征抽取器、交互行为捕获器以及时序属性一致性检测器三部分构成。交互模型特征抽取器能够自动将BPEL描述的服务组合映射为WS-PIM模型,并抽取出交互过程中的变迁发生序列及其必须遵循的时序属性。交互行为捕获器部署在负责处理交互行为的消息引擎中,实时捕获所有与被监控的服务组合进程相关的交互消息,并将消息转发给时序属性一致性检测器。时序属性一致性检测器运用Web服务组合交互行为检测算法,对捕获到的交互行为进行运行时检测。该检测器的判定逻辑所对应的软件代码是由交互模型特征提取器自动生成的。4.提出了一种基于广义随机Petri网的Web服务组合定量化交互模型WS-GIM。该模型聚焦于Web服务组合的性能与网络交互环境之间的关系,关注直接影响系统吞吐率性能的各个伙伴服务的执行时间和消息在网络中的传输速度以及它们的失效率。WS-GIM模型以WS-PIM模型为基础,增加服务的执行和消息的传输两个广义随机Petri网基本模式,并在泊松分布的假设下,通过设置服务的往返时间、失效率和分支流程执行概率等个体服务有关的均值参数,从而建立相应的定量化模型。通过实例的模型模拟和统计分析,可以得到整个服务组合的平均吞吐率、失效率等属性。该定量模型可用于评估网络交互环境因素对服务组合吞吐率性能的影响,进而给出了一种基于网络交互环境的服务组合性能优化的途径。同时,本文将该模型预测的平均吞吐率、失效率与组合服务部署代价、运营商信誉等属性聚合成决策矩阵,并赋予不同的权重,基于多属性效用理论,研究了组合服务的部署方案,从中选取偏好排序结果。