ALIVE

An innovative platform for real-time mission-critical distributed applications

ALIVE is a platform for:

Parallel processing for computationally intensive tasks.
Building redundant processing agents in fault tolerant systems.
Bridging together diverse hardware platforms.

CORBA
Common Object Request Broker Architecture:
A standard architecture for distributed object systems.
Allows a distributed, heterogeneous collection of objects to interoperate.
Independent of: O/S, Network, Language.
ORB Core: transparency, object location, implementation hiding, interoperability.
IDL: language independent interface definition, generating stubs and skeletons.
Object Adapter: Glue between servant and ORB.
Object registration, activation, reference generation, request demultiplexing.

 

 

Clients require quality of service (QoS) properties
Dependability: Objects should always behave according to the specification
Efficiency:       Low communication latencies must be guaranteed to allow objects to participate in a real-time environment
Predictability:  Possible states of all entities must be handled correctly.

Fault tolerance
Complex mission-critical systems, need to ensure that they will perform as specified, even under extreme conditions.
A fault tolerant computing system is required that
incorporates self-checking software, and attempts recovery upon a fault.
Fault tolerance features allow the system to keep executing with the presence of faults.

What does CORBA lack?
Fault tolerance.
Fault detection mechanisms that exist currently in CORBA are rudimentary, and mostly consist of returning either system or user-defined exceptions if an object or processor “dies”
Available fault tolerance techniques are not suited for CORBA.
Custom fault tolerance and recovery logic has to be implemented in CORBA applications.

Requirements
Transparency: fault tolerance, recovery and consistency should be handled transparently and not exposed to the programming model.
Persistence: Object state should be preserved after a successful recovery.
Instantiation and recovery of an object must be completely transparent to the clients.
Reliability: Requests originating from clients should be safeguarded against failures. The system should transparently resubmit them, up to a specified number of times.
Monitoring: A monitoring mechanism should poll each object after a specified time interval, to check whether it responds to messages.
Status report: Availability of a specific distributed object should be reported to the clients.
 

ALIVE is a platform based on an advanced multi-threaded server architecture, designed to address the above requirements.
It consists of the following elements:
   
Invocation Manager.
    Replication Manager.
    Fault detector.
    Logging.

Conclusions
ALIVE is a platform for providing fault tolerant services on top of CORBA.
ALIVE provides services for:
    Constantly monitoring the status of servers.
    Transparently resubmitting a request that failed.
    Notify clients when a service is permanently unavailable.
    Activate an unavailable service when possible.

        E.g. activate a control agent when the device it controls is switched on.
Several application areas need systems to maintain a correct (predictable) functionality in the presence of faults:
    Banking systems.
    Control systems.
    Manufacturing systems.
    Defence systems.

For a presentation of the project please contact us
 

 
 
 ØCompany Profile ØBilling and Rating ØMediation and Roaming ØDrivers and systems software ØDefence and security