This Article 
 Bibliographic References 
 Add to: 
Fault-Tolerant Mobile Agent Execution
February 2003 (vol. 52 no. 2)
pp. 209-222

Abstract—Mobile agents have attracted considerable interest in recent years. In the context of mobile agents, fault tolerance is crucial to enable the integration of mobile agent technology into today's business applications. This article identifies two important properties for fault-tolerant mobile agent execution: nonblocking and exactly-once. Nonblocking ensures that the agent execution can proceed despite a single failure of the agent or the machine, for instance. Replication is the generally adopted mechanism to prevent blocking, but may lead to multiple executions of the agent (i.e., a violation of the exactly-once property), which is undesirable with operations that have side effects. Hence, we propose that fault-tolerant mobile agent execution be modeled as a sequence of agreement problems. Our approach is nonblocking and ensures exactly-once execution. FATOMAS, our prototype fault-tolerant mobile agent system, implements our approach. Its performance evaluation illustrates the overhead of the replication mechanisms.

[1] M.K. Aguilera, W. Chen, and S. Toueg, “Quiescent Reliable Communication and Quiescent Consensus in Partitionable Networks,” Technical Report TR 97-1632, Cornell Univ., June 1997.
[2] M.K. Aguilera, W. Chen, and S. Toueg, “Failure Detection and Consensus in the Crash-Recovery Model,” Distributed Computing, vol. 13, no. 2, pp. 99-125, 2000.
[3] F.M. Assis Silva and R. Popescu-Zeletin, “An Approach for Providing Mobile Agent Fault Tolerance,” Proc. Second Int'l Workshop Mobile Agents (MA '98), K. Rothermel and F. Hohl, eds., pp. 14-25, Sept. 1998.
[4] A. Bieszczad, B. Pagurek, and T. White, “Mobile Agents for Network Management,” IEEE Comm. Surveys, Sept. 1998.
[5] N. Budhiraja, K. Marzullo, F.B. Schneider, and S. Toueg, “The Primary-Backup Approach,” Distributed Systems, S. Mullender, ed. Addison-Wesley, 1993.
[6] T.D. Chandra and S. Toueg, “Unreliable Failure Detectors for Reliable Distributed Systems,” J. ACM, vol. 43, no. 2, pp. 225–267, 1996.
[7] D. Chess, B. Grosof, C. Harrison, D. Levine, C. Parris, and G. Tsudik, “Itinerant Agents for Mobile Computing,” J. IEEE Personal Comm., vol. 2, no. 5, Oct. 1993.
[8] D. Chess, C.G. Harrison, and A. Kershenbaum, “Mobile Agents: Are They a Good Idea?” Mobile Agents and Security, G. Vigna, ed., pp. 25-47, Springer Verlag, 1998.
[9] X. Défago, A. Schiper, and N. Sergent, “Semi-Passive Replication,” Proc. 17th IEEE Symp. Reliable Distributed Systems (SRDS '98), pp. 43-50, Oct. 1998.
[10] M.J. Fischer, N.A. Lynch, and M.S. Paterson, “Impossibility of Distributed Consensus with One Faulty Process,” Proc. Second ACM SIGACT-SIGMOD Symp. Principles of Database Systems, pp. 1-7, Mar. 1983.
[11] H. Garcia-Molina and K. Salem, "Sagas," Proc. ACM SIGMOD Ann. Conf., pp. 249-259, May 1987.
[12] J. Gray, “The Transaction Concept: Virtues and Limitations,” Proc. Int'l Conf. Very Large Databases, pp. 144-154, 1981.
[13] J. Gray and A. Reuter, Transaction Processing: Concepts and Techniques, Morgan Kauffman, 1993.
[14] T. Gschwind, M. Feridun, and S. Pleisch, “ADK—Building Mobile Agents for Network and Systems Management from Reusable Components,” Proc. First Int'l Conf. Agent Systems and Applications/Mobile Agents (ASAMA '99), Oct. 1999.
[15] D. Johansen, K. Marzullo, F.B. Schneider, K. Jacobsen, and D. Zagorodnov, “NAP: Practical Fault-Tolerance for Itinerant Computations,” Proc. 19th Int'l Conf. Distributed Computing Systems (ICDCS '99), June 1999.
[16] D.B. Lange and M. Oshima, "Seven Good Reasons for Mobile Agents," Comm. ACM, vol. 42, no. 3, 1999, pp. 88-89.
[17] P. Maes, R.H. Guttman, and A. Moukas, "Agents That Buy and Sell," Comm. ACM, vol. 42, no. 3, Mar. 1999, pp. 81-91.
[18] A. Mohindra, A. Purakayastha, and P. Thati, “Exploiting Non-Determinism for Reliability of Mobile Agent Systems,” Proc. Int'l Conf. Dependable Systems and Networks (DSN '00), pp. 144-153, June 2000.
[19] ObjectSpace, Voyager: ORB 3.1 Developer Guide, 1999. / homes/savage/traceback.htmlhttp:/ /www.objectspace.comproducts.
[20] H. Pals, S. Petri, and C. Grewe, “FANTOMAS—Fault Tolerance for Mobile Agents in Clusters,” Proc. Int'l Parallel and Distributed Processing Symp. (IPDPS) 2000 Workshop, J.D.P. Rolim, ed., pp. 1236-1247, 2000.
[21] S. Pleisch and A. Schiper, “Modeling Fault-Tolerant Mobile Agent Execution as a Sequence of Agreement Problems,” Proc. 19th IEEE Symp. Reliable Distributed Systems (SRDS '00), pp. 11-20, Oct. 2000.
[22] S. Pleisch and A. Schiper, “FATOMAS: A Fault-Tolerant Mobile Agent System Based on the Agent-Dependent Approach,” Proc. Int'l Conf. Dependable Systems and Networks (DSN '01), pp. 215-224, July 2001.
[23] K. Rothermel and M. Strasser, “A Fault-Tolerant Protocol for Providing the Exactly-Once Property of Mobile Agents,” Proc. 17th IEEE Symp. Reliable Distributed Systems (SRDS '98), pp. 100-108, Oct. 1998.
[24] F.B. Schneider, “Replication Management Using the State Machine Approach,” Distributed Systems, S. Mullender, ed. Addison-Wesley, 1993.
[25] F.B. Schneider, “Towards Fault-Tolerant and Secure Agentry,” Proc. 11th Int'l Workshop Distributed Algorithms, invited paper, Sept. 1997.
[26] L.M. Silva, V. Batista, and J.G. Silva, “Fault-Tolerant Execution of Mobile Agents,” Proc. Int'l Conf. Dependable Systems and Networks (DSN '00), pp. 135-143, June 2000.
[27] M. Strasser and K. Rothermel, “Reliability Concepts for Mobile Agents,” Int'l J. Cooperative Information Systems, vol. 7, no. 4, pp. 355-382, 1998.
[28] K. Takashio, G. Soeda, and H. Tokuda, “A Mobile Agent Framework for Follow-Me Applications in Ubiquitous Computing Environment,” Proc. Int'l Workshop Smart Appliances and Wearable Computing (IWSAWC '01), pp. 202-207, Apr. 2001.
[29] W. Theilmann and K. Rothermel, Optimizing the Dissemination of Mobile Agents for Distributed Information Filtering IEEE Concurrency, vol. 8, no. 2, pp. 53-60, 2000.

Index Terms:
Mobile agents, fault tolerance, nonblocking execution, exactly-once execution, agreement problem.
Stefan Pleisch, André Schiper, "Fault-Tolerant Mobile Agent Execution," IEEE Transactions on Computers, vol. 52, no. 2, pp. 209-222, Feb. 2003, doi:10.1109/TC.2003.1176987
Usage of this product signifies your acceptance of the Terms of Use.