Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implementing Simple Replication Protocols using CORBA Portable Interceptors and Java Serialization T. Bennani, L. Blain, L. Courtes, J.-C. Fabre, M.-O.

Similar presentations


Presentation on theme: "Implementing Simple Replication Protocols using CORBA Portable Interceptors and Java Serialization T. Bennani, L. Blain, L. Courtes, J.-C. Fabre, M.-O."— Presentation transcript:

1 Implementing Simple Replication Protocols using CORBA Portable Interceptors and Java Serialization T. Bennani, L. Blain, L. Courtes, J.-C. Fabre, M.-O. Killijian, E. Marsden, F. Taïani DSN-2004, Florence, Italy, July 1 st Toulouse, France

2 2 DSN’04 Outline 1. Motivation 2. Background information Reflection FT-CORBA 3. Architecture and protocol Primary-backup replication mechanism 4. Performance evaluation 5. Conclusion Limits observed

3 3 DSN’04 Motivation Reflection as a means to implement FT  Transparent for application  Separation of concerns Reflection has been introduced into middleware  CORBA Portable Interceptors  Java Serialization COTS based systems are cheaper  Increasing COTS software for critical systems è Experiment using COTS reflective mechanisms for implementing FT

4 4 DSN’04 Principles of Reflection  separating fault-tolerance from functional concerns "the ability of a system to think and act about itself" original system fault-tolerance meta-interfaces meta-level base-level observationcontrol

5 5 DSN’04 From FRIENDS To DAISY Base Object Meta Object Interception  :  EVENTS Introspection  :  STATE Intercession  :  ACTION Source-to-source trans.  C++ classes  Add reflective features MetaObject Protocol  Object life cycle  Requests life cycle  State handling Limits  Language dependent  Access to source code  External state  Determinism

6 6 DSN’04 From FRIENDS To DAISY Java CORBA Object FT Portable Interceptor Interception  :  EVENTS Introspection  :  STATE Intercession  :  ACTION Source-to-source trans.  C++ classes  Add reflective features MetaObject Protocol  Object life cycle  Requests life cycle  State handling Limits  Language dependent  Access to source code  External state  Determinism  DAISY COTS

7 7 DSN’04 FT-CORBA Augment CORBA with FT capabilities  Object Group Addressing (IOGRs) Transparent reference to group of servers  Extensions to failover semantic Unique request’s Ids and Retries upon request failures  Replication Management Creation, modification of groups  Fault Management Faults detection, report  Recovery Management State handling and checkpointing Very few implementations yet  not a COTS

8 8 DSN’04 The DAISY Platform Java based Object Request Broker Server Client ORB JVM ORB JVM IIOP Requests

9 9 DSN’04 Server Client ORB JVM ORB JVM IIOP Requests PIC PIS REQUES T The DAISY Platform CORBA Portable Interceptors  Observe, delay and retarget out/in requests/exceptions  Cannot modify requests/replies (bad for SWIFI)

10 10 DSN’04 The DAISY Platform Java Serialization Server Client ORB JVM ORB JVM IIOP Requests PIC PIS State of Server Serialization  Save and restore state of Java objects

11 11 DSN’04 The DAISY Platform Dependable Adaptive Interceptors & Serialization-based sYstem Primar y Server Client ORB JVM ORB JVM PIC PIS Backu p Server ORB JVM PIS

12 12 DSN’04 The DAISY Platform Dependable Adaptive Interceptors & Serialization-based sYstem Primar y Server Client ORB JVM ORB JVM PIC PIS Backu p Server ORB JVM PIS FT Algorith m

13 13 DSN’04 Primary Server Client ORB JVM ORB JVM PIC PIS Backup Server ORB JVM PIS Algorithm Overview Primary-backup strategy PIC responsible for  ID requests  Managing faults PIS responsible for  Requests handling  State Management  Replica Management

14 14 DSN’04 Primary Server Client ORB JVM ORB JVM PIC PIS Backup Server ORB JVM PIS Client Side Fault Handling Main role: « detecting faults » Simple detection scheme Transient communication faults Upon exception  ForwardRequest trick  N retries  Switch to backup Exceptions

15 15 DSN’04 Primary Server ORB JVM PIS Backup Server ORB JVM PIS Primary Side Main role: « handling requests » Upon request  Invoke the request  Obtain server’s state  Forwards to backup  Request Info  Reply message  State

16 16 DSN’04 Primary Server ORB JVM PIS Backup Server ORB JVM PIS Backup Side Main role: « recover primary failures » Buffer and manage  « Primary packets »  Request Info  Reply message  State  Apply previous one Upon request reception  Ping primary  Enter recovery mode ?

17 17 DSN’04 Recovery Primary Server ORB JVM PIS Backup Server ORB JVM PIS Crash occures when 1. Primary idle 2. Handling request 3. Primary packet delivered but not the reply Case 1 & 2  Apply buffered state  Handle request Case 3  Discard buffered state  Re-execute request Multi-client more complex

18 18 DSN’04 Performance Evaluation Simple banking application  Account management  Withdrawal, deposit, etc. Testbed  I686 1Ghz  Linux 2.4  100 Mb/s Ethernet 1000 experiments 1000 operations

19 19 DSN’04 PI Drawbacks Can’t modify input params  Prohibit mechanisms  E.g. ciphering Can’t modify output params  Cannot forge replies  Complexifies implementation Must invoke every requests  Cannot prevent invocation  Must raise exceptions  PB for some mechanisms  E.g. leader-follower Not CORBA objects  Cannot implement easily non-functional interface  Not transparent for the application Don’t have a thread  No “I am alive” messages Cannot reorder requests  Limit complexity of strategies

20 20 DSN’04 Conclusion Middleware standards embbed  Simple reflective mechanisms  CORBA Portable Interceptors  Java Serialization  Useful for implementing  simple FT mechanisms  Simple wrapping techniques –IIOP level CRC32 –Synchronization interface (libc) But new generation of Portable Interceptors  More complex mechanisms (active replication)  Better implementation  Without being too intrusive

21 Implementing Simple Replication Protocols using CORBA Portable Interceptors and Java Serialization T. Bennani, L. Blain, L. Courtes, J.-C. Fabre, M.-O. Killijian, E. Marsden, F. Taïani DSN-2004, Florence, Italy, July 1 st Toulouse, France


Download ppt "Implementing Simple Replication Protocols using CORBA Portable Interceptors and Java Serialization T. Bennani, L. Blain, L. Courtes, J.-C. Fabre, M.-O."

Similar presentations


Ads by Google