Inter-agent communication in a distributed mobile agent systemInter-agent communication in a distributed mobile agent system
Ching-Feng Li
OutlineOutline
Introduction Different inter-agent communication
mechanism Implementation plan and future works References
IntroductionIntroduction
A mobile agent is able to move autonomously around the network during its execution.
In various situations mobile agents need to communicate with each other.
Remote inter-agent communication is thus a fundamental facility in mobile agent systems.
Challenges in design inter-agent communication mechanisms for mobile agent system
Challenges in design inter-agent communication mechanisms for mobile agent system
Location Transparency An agent can send messages to other agents without
knowing where they reside physically. Reliability
No matter how frequently the target agent migrates, messages can be routed to it in a bounded number of hops.
Asynchrony Asynchronous migration and asynchronous execution of
mobile agents Efficiency Adaptability
Different inter-agent communication mechanismsDifferent inter-agent communication mechanisms
Home-based approach Mailbox-based approach Multicast-based approaches
Home-based approach (1/2)Home-based approach (1/2)
Agent should update the new location to its home context when it migrates.
Messages to the receiver agent is sent to the home context of the receiver agent. The home context of the receiver agent should forward the
messages to the receiver agent.
The sender should know the home context of the receiver agent by some ways. Caching Discovery on demand
Home-based approach (2/2)Home-based approach (2/2)
Sender
ContextHome Context
Context
ReceiverReceiver (2’) Push messages
(1) Send messages
(2”) Pull messages
Mailbox-based approach (1/2)Mailbox-based approach (1/2)
Similar to home-based approach. Each receiver agent has a registered
mailbox Difference to home-base approach
The location of home context will not change even if the receiver agent migrates to other context.
The location of the mailbox maybe migrate to other context or stay at the current context when the receiver agent migrates.
Mailbox-based approach (2/2)Mailbox-based approach (2/2)
Context
Sender
Context MB
Context
ReceiverReceiver (2’) Push messages
(1) Send messages
(2”) Pull messages
Multicast-based approachesMulticast-based approaches
Group communication and coordination Well-known approaches
IP multicast-based There is a multicast tree formed by mobilet contexts where ag
ents execute the task. Application-level multicast-based
There is a multicast tree formed by mobile agents in the same group.
The construction and maintenance of the multicast will be an important issue.
IP multicast between mobile agentsIP multicast between mobile agents
Context agent
multicast
Context agent Context agent Context agent
Application-level multicast between mobile agentsApplication-level multicast between mobile agents
agent
agent
agent
agent
agentagent
agent
Comparison of different inter-agent communication mechanismsComparison of different inter-agent communication mechanisms
Home-based approach Location Transparency Asynchrony
Mailbox-based approach Location Transparency Asynchrony
Multicast-based approaches Asynchrony
Adaptive and reliable protocol for inter-agent communication (1/4)Adaptive and reliable protocol for inter-agent communication (1/4)
Adaptive and reliable protocol (ARP) is applied on mailbox-based communication
Agent is able to move autonomously during its execution.
The advertisement claims the existence or the current location of the receiver agent may provide outdated information. Adv. claims receiver agent is at the host A, but actually at th
e host B. Adv. claims receiver agent is alive, but actually it is dead or
offline.
Adaptive and reliable protocol for inter-agent communication (2/4)Adaptive and reliable protocol for inter-agent communication (2/4)
Definition 1 The migration path of a mobile agent A, denoted Patha(A), is an ordered
list of hosts (ha0, ha1,…, han) The set of hosts on the path is denoted Sa(A) = {hak | hak is on Patha(A)}.
Definition 2 The migration path of the mailbox of a mobile agent A, denoted Pathm
(A), is an ordered list of hosts (hm0, hm1,…, hmn) The set of hosts on the path is denoted Sm (A) = {hmk | hmk is on Pathm
(A)}. Sm (A) ⊆ Sa(A) and hm0=ha0
Definition 3 The function fA : Sa(A) → Sm(A) maps the location of a mobile agent A to
that of its mailbox such that for every hak ∈ Sa (A)
Adaptive and reliable protocol for inter-agent communication (3/4)Adaptive and reliable protocol for inter-agent communication (3/4)
In the ARP each host on Pathm(A) maintains the current address of the mailbox MA in an address table Attributes in a entry of the address table
the ID of MA
the current address of MA
a valid tag the number of messages mNum that have been forwarded to
MA
a message block queue for MA.
Defines the operations for two processes Migrating Message-forwarding
MigratingMigrating
Receiver Receiver Receiver
Receiver Receiver
MB MB
Receiver
(1)MVMB
(2)DEREGISTER(3)REPLY
MB
(4)REGISTER
Message-forwardingMessage-forwarding
MB
Sender
ReceiverReceiver
MB(2) forward the messageTo MA’s current address
(2’) send back a “UPDATE” messageto the sender to refresh itscache about MA’s current location
(1) send message
Adaptive and reliable protocol for inter-agent communication (4/4)Adaptive and reliable protocol for inter-agent communication (4/4)
In the ARP the mailbox MA of an agent A has to first deregister and then register with all the hosts on Pathm(A) for each migration.
The migration overhead will increase continuously without an upper bound as Pathm(A) becomes longer and longer.
A PATH PRUNING ALGORITHM is designed to reduce the overhead caused by long term agent migration. The cache maintained by the sender is updated whenever it
sends a message to an outdated address of MA.
Patterns to design ARP for different applicationsPatterns to design ARP for different applications
Mailbox Migration Frequency No Migration (NM) Full Migration (FM) Jump Migration (JM)
Mailbox-to-Agent Message Delivery Push (PS) Pull (PL)
Migration-Delivery Synchronization SHM/SMA
Synchronizing the Host’s message forwarding and the Mailbox’s migration
Synchronizing the Mailbox’s message forwarding and the Agent’s migration
Full Synchronization (FS) No Synchronization (NS)
A string of the format XX-YY-ZZ expresses a protocol XX : Mailbox Migration Frequency pattern YY : Mailbox-to-Agent Message Delivery pattern ZZ : Migration-Delivery Synchronization pattern
Efficiency of communication mechanismEfficiency of communication mechanism
The cost of a protocol is characterized by The number of messages sent The size of the messages The distance traveled by the messages
Implementation plan and future worksImplementation plan and future works
Different applications, different decisions. Use mailbox-based approach for inter-
agent communication. How the mailbox migrates and when the mailbox decide to
migrate?
Use application-level multicast approach to improve the performance of group communication and coordination. How to maintain the multicast tree more efficiently
References (1/2)References (1/2)
C. Ragusa, A. Liotta, G. Pavlou: "A Scalable Application-level Multicast Approach based on Mobile Agents". Proceedings of IEEE International Conference on Networks (ICON'03), Sydney, Australia, 28th Sept - 1st October 2003.
S. W. Shah, P. Nixon, and R. I. Ferguson: "On the Use of IP Multicast to Facilitate Group Communication between Mobile Agents". IEEE/WIC/ACM International conference on Intelligent Agent Technology. 2004. pp. 487-490.
Flávio M. Assis Silva, Raimundo J. A. Macêdo. "Reliable Communication for Mobile Agents with Mobile Groups". In the Proceedings of the Workshop on Software Engineering and Mobility (co-located with IEEE/ACM ICSE 2001). Toronto, Ontario, Canada. May 13-14, 2001.
Jorn Hartroth und Markus Hofmann: "Using IP multicast to improve communication in large scale mobile agent systems". In Proceedings of the 31st Hawaiian International Conference on System Sciences (HICSS'31), Kohala Coast, Hawaii, Jan. 6-9, 1998, Januar 1998.
References (2/2)References (2/2)
Jiannong Cao, Liang Zhang, Xinyu Feng, Sajal K. Das: "Path Pruning in Mailbox-based Mobile Agent Communications". J. Inf. Sci. Eng. 20(3): 405-424 (2004)
Jiannong Cao, Xinyu Feng, Jian Lu, Henry Chan, Sajal K. Das: "Reliable Message Delivery for Mobile Agents: Push or Pull". ICPADS 2002: 314-320
Jiannong Cao, Xinyu Feng, Jian Lu, Sajal K. Das: "Mailbox-"Based Scheme for Designing Mobile Agent Communication Protocols". IEEE Computer 35(9): 54-60 (2002)