International Journal of Computer Applications (0975 8887) Volume 20No.2, April 2011 1 Fault-Tolerant Adaptive Mobile Agent System using Dynamic Role based Access Control P.Marikkannu Department of Information Technology Anna University of Technology Coimbatore J.J. Adri Jovin Department of Information Technology Anna University of Technology Coimbatore T.Purusothaman Department of CSE& IT Government College of Technology Coimbatore ABSTRACT With the advancement in the Mobile Agent Technology, the use of Mobile Agents has extended to a lot of applications, where a coordinated approach is required to achieve certain tasks. In a co-ordinated approach, the roles that are being held by a Mobile Agent play a vital role. There are chances that a mobile agent fails while performing an operation inside a system, due to various factors. The system must be tolerant enough to encounter such situations. This paper introduces a special category of Mobile Agent named Adaptive Mobile Agent, which is designed to accept additional roles, while working inside an environment. This paper also introduces the eXtended Volunteer Algorithm, which performs role assignment in an efficient manner, reducing the overload due to additional role- assignment. This helps the agent to accept roles under dynamic conditions, based on the rules in the agent environment which would help to achieve a fault-tolerant system. The experimental results obtained with the usage of eXtended Volunteer Algorithm over the Adaptive Mobile Agents prove to be more efficient in fault-tolerance. General Terms Security, Algorithm, Faut-tolerance. Keywords Adaptive Mobile Agent, Dynamic Role Based Access Control, Fault-tolerant systems. 1. INTRODUCTION Mobile Agents have started their reign in various distributed cooperative tasks. Mobile Agents, as a team are capable of accomplishing various tasks. While working as a team, each agent may be may be assigned some roles which is related to a work that is about to be handled by it. Based on the role, the mobile agent performs some actions and may gain access to some resources from the environment. Consider a circumstance, when one or more mobile agents fail due to some malicious attacks. At such a circumstance, in order to achieve a fault- tolerant mechanism, some mobile agents may have to share or take the roles of the failed mobile agent to accomplish the task. However, this is not possible under an ordinary environment. Hence, we device a context-aware environment which would perform the task of sharing and allocating the roles to the mobile agents present in the environment. The Mobile Agents are also designed to acquire the roles allotted by the environment. The environment generates the rules based on circumstances and the mobile agents acquire the roles based on the instructions given by the environment. Based on the roles that are acquired by the Mobile Agents, the agents are given access to various resources present in the environment to accomplish a task. The task of achieving this is not a simple one. The Mobile Agents may have been generated from various environments or from some other platform or system. Irrespective of the origin, the mobile agents must cooperate with one another and cooperate with the environment to acquire roles and accomplish various tasks. For this purpose, we have designed a special type of mobile agent named the „Adaptive Mobile Agent‟ and their performance and activities with regards to the external environment are discussed in this paper. Also, the technique of dynamic rule generation by the agent environment and dynamic role acquisition by the Mobile Agent are discussed in this paper. 2. BACKGROUND 2.1 Mobile Agent Agents are software modules which perform an activity on behalf of a user. A Mobile Agent is a special kind of software which possesses the ability of movement. A Mobile Agent is motile and can migrate from one system to another in order to perform a particular job. The mobility of the mobile agent makes it suitable to perform various tasks which require data from varied and diversified locations. The Mobile Agent may be a single module or a program as a whole. The mobile agents can successfully complete any task assigned to it by interacting with other agents present in the environment. The mobile agents are capable of carrying enormous volumes of data along with them while traveling through a network. The various advantages of using a mobile agent in a network are: Lowered network traffic Autonomous behavior Shortened network delay A Mobile Agent which is present as a team may possess even more functionalities such as Synchronous Decision Making Co-operative task accomplishment Mutual Understanding