Title: Inter-agent communication in a distributed mobile agent system
1Inter-agent communication in a distributed mobile
agent system
2Outline
- Introduction
- Different inter-agent communication mechanism
- Implementation plan and future works
- References
3Introduction
- 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.
4Challenges 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
5Different inter-agent communication mechanisms
- Home-based approach
- Mailbox-based approach
- Multicast-based approaches
6Home-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
7Home-based approach (2/2)
Sender
8Mailbox-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.
9Mailbox-based approach (2/2)
Sender
Context
10Multicast-based approaches
- Group communication and coordination
- Well-known approaches
- IP multicast-based
- There is a multicast tree formed by mobilet
contexts where agents 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.
11IP multicast between mobile agents
Context
12Application-level multicast between mobile agents
13Comparison of different inter-agent communication
mechanisms
- Home-based approach
- Location Transparency
- Asynchrony
- Mailbox-based approach
- Location Transparency
- Asynchrony
- Multicast-based approaches
- Asynchrony
14Adaptive 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 the host B. - Adv. claims receiver agent is alive, but actually
it is dead or offline.
15Adaptive 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 hm0ha0
- 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)
16Adaptive 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
17Migrating
Receiver
Receiver
Receiver
MB
MB
MB
(2)DEREGISTER
(3)REPLY
(1)MVMB
(4)REGISTER
Receiver
Receiver
Receiver
18Message-forwarding
Sender
(2) send back a UPDATE message to the sender
to refresh its cache about MAs current location
- send message
Receiver
Receiver
MB
MB
(2) forward the message To MAs current address
19Adaptive 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.
20Patterns 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 Hosts message forwarding and
the Mailboxs migration - Synchronizing the Mailboxs message forwarding
and the Agents 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
21Efficiency 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
22Implementation 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
23References (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.
24References (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)