1 / 14

A Formal Model for Supporting Frameworks of Dynamic Service Update Based on OSGi

A Formal Model for Supporting Frameworks of Dynamic Service Update Based on OSGi. Junqing Chen, Linpeng Huang, Siqi Du and Wenjia Zhou Reliable Adaptive Distributed Systems Laboratory, Shanghai Jiao Tong University, China Dec. 30, 2010. Outlines. Introduction Background

finola
Download Presentation

A Formal Model for Supporting Frameworks of Dynamic Service Update Based on OSGi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Formal Model for Supporting Frameworks of Dynamic Service Update Based on OSGi Junqing Chen, Linpeng Huang, Siqi Du and Wenjia Zhou Reliable Adaptive Distributed Systems Laboratory, Shanghai Jiao Tong University, China Dec. 30, 2010

  2. Outlines • Introduction • Background • Dynamic service update • Type-safe analysis • Implementation and applications • Conclusion and future work

  3. Introduction • To address changing business requirements, the maintenance and evolution of service-oriented applications become more and more frequent. • Many mission-critical applications such as nuclear power plants and patient life-support monitoring, are required to provide services continuously for 24/7 to support persistent tasks. • These services cannot be stopped for a moment; otherwise, this temporary unavailability may cause significant damages and even lose many lives. • Dynamic service updating • updating the cooperating services on the fly • without stopping the whole application • without interrupting the service consumer

  4. Background (1) • OSGi service platform • an OSGi framework • a set of standard service definitions • Defining OSGi services • Registering OSGi services • Accessing to OSGi services

  5. Background (2) • Service-oriented framework relies on • A strict separation between service interfaces and service implementations • Service dependency — services’ collaboration • Adaptable to dynamically replace a service • Not supporting dynamic updates in OSGi • Losing all the states of current service • Shutting down other dependent services (i.e. both services B and C) • Restarting the replaced service

  6. Dynamic service update (1) • There are three features used to support dynamic service update: • Update Manager——coordinating behavior of dynamic updates (by synchronization mechanisms), detecting whether a service’s new version and deciding update points • Delegate ——playing a role resembling as the proxy, linking to an updatable service class and redirecting to its new version after updates • State Transfer —— moving service states from a service’s old version to its new one by a State Transfer Function (STF) • Update process • To guarantee the correctness of dynamic updates, we need to check • Dynamic service update framework’s properties • Type-safe analysis

  7. Dynamic service update (2) • Formal method — Finite State Process (FSP) • Providing a set of operators to define a process model representation • Often used to describe an interaction behavior between a server and a client

  8. Dynamic service update (3) • Formally describing all the framework’s components • Service interface • Service implementation, i.e. CurrentService (CS) and NewService (NS) • Another three feature: UpdateManager, Delegate and StateTransfer

  9. Dynamic service update (4) • Model checking tool — LTSA • Framework properties: • deadlock-freedom: checking its safety • client transparency • server correctness

  10. Type-safe analysis • System upgrade may change the type of service interfaces or the relation of service dependency • Formally analyzing type-safe update • Service • Services dependency • Type • Type of service • Valid update service • Type safety • Theorem 1. (Type-safe update) • Updating an application P to P’ with valid update service, if P is type-safe, then P’ is also type-safe

  11. Implementation and applications • Our implementation (GFTP) is built on the dynamic service update framework. • TransferLow service : low speed (i.e. 10kbps) • TransferParallel service: high speed (i.e.150kbps) • Update manager: controlling the update process

  12. A Type Checking Tool Checking valid updates by our tool (type-safe Update Checker) Checking service interface type checkingservice dependency relationship

  13. Conclusion and future work • Current work • Presenting a framework for supporting dynamic service update in service-oriented applications • A formal model for our framework by using FSP • Verifying some properties of our framework • Formally proving type-safe update • Future work • Improving the performance of our tool and checking another properties • Considering dynamic update’s more requirements such as limited resource and update failure recovery.

  14. Thank you for all attendance!

More Related