Feb 13, 2004
Keywords: Mobility, Mobile Agents, Scalability, CORBA, AspectIX
Abstract: Mobile agents are a promising approach to distributed software. The typical programming paradigm considers a mobile agent to be a mobile object or a group of objects migrating together. Important issues of this approach are abstraction, encapsulation, a well-defined interface, and the clear definition of a migration entity. Putting the whole functionality of an agent into one migration entity is not feasible for real world applications, because one important benefit of a mobile agent, namely the efficient communication at the destination site, does not compensate migration costs. FOAM, a fragmented object model for mobile agents, offers a solution to this problem. Agents are split into smaller and mobile fragments, which still belong to the same object and agent respectively. Agents can scale with respect to mobility as also just parts of the agent can migrate. Agents can have replicated components and have multiple points of presence. Finally, an agent can be fragmented according to the different phases of its task. This reduces migration costs if not all phases are needed for a certain run of the agent and increases the expenditure to spy out critical information of the agent.