Reliable mobile agents with transactional behaviour
The mobile agent systems are well suited for certain types of real world applications such as e-commerce and distributed transactions. However, this technology is not being used by many applications. This is due to the lack of infrastructures and methodologies that address fault tolerance and transactions. The basic requirements for fault-tolerant transactional mobile agent are: 1) non-blocking (i.e., a single failure does not prevent progress of the mobile agent execution); 2) exactly-once (i.e., multiple executions of the agent are prevented); 3) the execution atomicity (i.e., all tasks are committed or none at all). In this paper, we propose a mechanism for providing fault-tolerance capability based on the mobile agent replication and the backward process. The failure detection is not perfect. The replication may results in multiple executions of the agent. So, we defined a technique that detects multiple executions and allows only one agent to go on while the others are stopped. To ensure the execution atomicity of the distributed transaction we used a commit at destination approach.
mobile agent; fault tolerance; atomic commitment; distributed system; reliability; distributed transaction.