节点文献

面向服务的分布式操作系统及其上的服务组合关键技术研究

Study on Service Oriented Distributed Operating System and Key Issues in Service Composition

【作者】 陈香兰

【导师】 龚育昌;

【作者基本信息】 中国科学技术大学 , 计算机软件与理论, 2007, 博士

【摘要】 随着编程范型(Programming Paradigm)、分布式计算(Distributed Computing)以及业务计算(Business Computing)这三个领域的技术发展,面向服务的体系结构SOA(Service-Oriented Architecture)和面向服务的计算SOC(Service-OrientedComputing)得到了学界和业界广泛的关注和发展。SOA提出了一种松耦合的、基于服务来组织计算资源的软件系统架构风格。目前,在分布式计算领域,诸如分布式计算环境DCE、公共对象请求代理体系结构CORBA、分布式对象组件模型DCOM、EJB/J2EE以及Web服务等都正在朝基于“服务”的方向实现跨架构和跨企业的业务集成,以求使得各种异构系统能够在统一的“服务”平台上实现互操作(interoperation),也使得各遗留系统(Legacy System)可以继续得到应用,但是目前尚没有出现能够有效支持面向服务的操作系统。本论文首先针对现有SOA应用的体系结构进行了分析。分析表明,目前“服务”抽象是在SOA应用体系结构中较为中间的层次实现的,其底层却仍然依赖于传统的进程/线程抽象,不能直接有效地支持基于SOA的应用。针对这一现象,本论文提出如下问题:能否使操作系统或者分布式操作系统直接以“面向服务”这个统一的概念来实现它们之间或者与已有的分布式计算系统之间的互操作?针对这个问题,本论文对建立一种面向服务的分布式操作系统进行了系统、深入的研究与实践。建立面向服务的操作系统(无论是单机操作系统还是分布式操作系统)最关键也是最基本的问题是要给出服务在操作系统级上的抽象。本论文将服务的概念引入操作系统的基本抽象中,对本实验室提出的服务体/执行流模型进行了概念上的扩展,并依此提出了面向服务的操作系统的基本结构。在扩展后的服务体/执行流模型中,服务体是服务的载体,端口是服务通信和访问的接口,而小端口则是服务的实例。对于面向服务的分布式操作系统SODOS,本论文对如下几个方面的关键技术进行了深入的研究与探讨,主要包括SODOS的体系结构、具有单一系统映像的服务界面、服务的发布、远程服务请求的代理、命名和名字服务、多执行流调度、服务副本和服务实例迁移以及一致性维护等。从面向服务应用的需求看,除了要有一个面向服务的分布式操作系统来提供服务的发布与发现以及服务通信之外,还必须为SOA应用提供基础服务的部署方案,并为它提供服务组合路径优化方法。然而在这两个方面现有的研究大多是针对大规模网络的,如Internet、服务网格以及服务覆盖网络等,而不是针对局部密集服务环境的。在局部密集服务环境中,无论是服务部署还是服务通信,其系统特征都有别于上述大规模网络。据此,本论文对服务的部署和服务组合的路径优化问题分别进行了深入研究,提出了相应的算法并进行了模拟实验。本论文研究中所做出的新贡献如下:1)首次将“服务”这一概念引入到操作系统的基本抽象中,并对服务体/执行流模型SEFM进行了概念上的扩展,使其能够有效支持面向服务的计算;2)首次提出面向服务的分布式操作系统的概念,并对此进行了总体设计,深入研究了其中的透明的远程服务请求技术、位置无关的服务命名方法、名字空间的组织与管理等关键技术,并给出了解决方案;3)针对局部密集服务环境下所特有的服务局部分布特性和密集分布特性,本论文提出了一种静态的服务部署方法,该方法依次考虑了网络流量最小化、负载平衡以及服务最小分布这三个约束条件。4)针对局域分布式系统中节点间通信距离近似相等的特征,本文提出了一种服务组合路径优化算法。与大规模网络环境下不同,在局部密集环境中,服务组合路径的长度不再大于成员服务的个数,为此引入了两个新的参数来调整服务节点的选择,从而减少了服务路径的长度,进一步降低了系统的网络流量。

【Abstract】 With the technology development and progress such as programming paradigm, distributed computing and business computing, SOA (Service-Oriented Architecture) and SOC (Service-Oriented Computing) has got marked progress. More and more academics and industries are paying good deal of attention to this research field. Differenced from previous tightly coupled distributed computing technologies and software architectures, such as DCE, CORBA, DCOM, and EJB/J2EE, SOA presented a unified loosely coupled software architecture in which the computing resources are organized as "services".At present most of the abovementioned previous distributed computing technologies are trying to implement their cross-architecture, cross-company business integration based on "services", so that the heterogeneous systems can be interoperated with each other via a unified "service" platform, and the legacy systems can also be used continuously. But so far it seems that there is no operating system which can support SOC directly and effectively.In this dissertation, the architecture of current SOA applications is analyzed firstly. We notice that current abstraction of "service" is only at middle level of the SOA application architecture, and is still based on the traditional process/thread abstractions. So, here are the coming questions, "Can operating system support SOC directly and effectively", "Can operating system be directly interoperated with each other or with other distributed computing systems via the unified service abstraction"? To these goals, the dissertation made systemically and deeply study on how to building service oriented operating systems.The critical and significant problem of building service oriented operating system, whether distributed or not, is to construct the abstractions of services at the operating system level. Therefore, we introduce the service concept into the basic abstractions of operating system, and then lead the concepts into SEFM, an operating system construct model presented by professor Gong YuChang, etc. in USTC. In the extended SEFM, the servant is the carrier of the services; the port is the communication and access interface of the services; and the subport is the service instance.To construct SODOS, the service oriented distributed operating system, some other key issues are studied and discussed in detail, including the architecture of SODOS, the service interface with single system image, the publishing of services, the proxies of remote service request, naming and name services, scheduling method of multiply execution flows, the migration of service copies and service instances and the consistence maintaining, etc.Besides the construction of SODOS, for SOA applications, the deployment of the basic services and the method of service composition path selection are also very important. At present, most studies are for large-scaled networks such as internet, service grid and service overlay network, but not for LDS-env (a kind of Local and Dense Services environment) in which the characteristics of deployment and communication are much different. Therefore, two algorithms, a static service deploying algorithm and a service composition path optimizing algorithm, are proposed, analyzed, simulated and improved.The contributions of the dissertation are listed as follows:·It is the first time to introduce the concept of service into the abstractions of operating system, and to lead the concept into SEFM, a novel construction model of operating system.·It is also the first time to propose service oriented operating system, whether distributed or not. The architecture and some other key issues of SODOS were studied, discussed and solved.·For SOA applications, a static service deploying algorithm over LDS-env are presented, simulated and improved, considering the network traffic, load balance, service distribution degree and fault tolerance.·Also for SOA application, a service composition path optimizing algorithm over LDS-env are presented and simulated, considering the path length optimizing and load balance.

节点文献中: 

本文链接的文献网络图示:

本文的引文网络