© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable...

21
© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper November 20, 2001 Gowri V Pai, Graduate Student Computer Engineering Department Wayne State University
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    214
  • download

    0

Transcript of © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable...

Page 1: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1

Reliable Communication for Highly Mobile Agents

ECE 7995: Term PaperNovember 20, 2001

Gowri V Pai, Graduate Student Computer Engineering Department

Wayne State University

Page 2: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Authors Authors

Amy L Murphy

Gian Pietro Picco

Page 3: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

IntroductionIntroduction

• Mobile Agent

Program that can migrate from machine to machine in a heterogeneous network

Page 4: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Topic of DiscussionTopic of Discussion

• Current Message Delivery Approaches

• Proposed Algorithm

• Application

• Interactive Close

Page 5: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Need for Reliable CommunicationNeed for Reliable Communication

• Asynchronous nature of message passing

• Asynchronous nature of agent migration

• Prevent any data loss

Page 6: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Current Message Delivery ApproachesCurrent Message Delivery Approaches

• Spanning Tree Broadcasting

Spanning tree broadcasting

Concept

Message broadcast using spanning tree of network nodes

Limitation

Message delivery fails when the agent and the message cross in the channel

Page 7: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Current Message Delivery ApproachesCurrent Message Delivery Approaches

• Forwarding

Forwarding

Concept

Home agent maintains a pointer to the mobile agent

Upon migration, mobile agent informs the home agent

Limitation

Message delivery fails when sent between migration and update, agent moved before message reached the destination

Retransmission not fool proof

Excessive communication

Page 8: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Enabling Reliable CommunicationEnabling Reliable Communication

• Filling in the gaps

Spanning tree broadcasting

Store Message

at nodes until

delivery is complete

Limitation

This guarantees delivery, but nodes will have to store messages for arbitrary lengths of time

Message is continually forwarded to new location, agent runs away and message never catches up

Page 9: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Proposed SolutionProposed Solution

• Phase I (Exactly once delivery) Network of nodes and channels is known in advance

Only one message is present in the system at a time

• Phase II (At least once delivery) Phase I results extended to concurrent multiple message

delivery

Page 10: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Proposed SolutionProposed Solution

• Model– Nodes represent servers willing to host agents

– Edges represent directional FIFO channels along which agents

can migrate and messages passed

– A path exists between every pair of nodes

– A channel does not necessarily exist between every pair of

nodes

– Mobile agent server tracks hosting agent

– Every agent has a globally unique identifier – direct message

Page 11: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Static Network GraphDelivery in a Static Network Graph

• Single Message Delivery

– Algorithm uses ideas from Snapshot Algorithm [Chandy et al ]

– Goal is to record the local state of the nodes and channels in

order to construct a consistent global state

– Initially all channels are “Open”

– A “Flushed” state of the channel implies all agents on that

channel ahead of the message have been forced out

– When all incoming channels of a node are “Flushed”, the

message copy at that node is deleted

Page 12: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Static Network GraphDelivery in a Static Network Graph

• Single Message Delivery

Network partitioned into three regions

Finished Processing

Processing

Not Yet Processing

Page 13: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Static Network GraphDelivery in a Static Network Graph

• Multiple Message Delivery

– Need for Concurrent flow of multiple messages

• To allow a source to transmit a burst of messages with out

waiting for the delivery of the first one to complete

• To allow multiple sources to transmit at the same time

– Message tagged with the identifier of the host that sent it

– A sequence number and “Buffering” state to address the case of

a message burst coming from a single source

– A vector of states and buffers is maintained to address

concurrent copies of message delivery by multiple sources.

Page 14: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Dynamic Network GraphDelivery in a Dynamic Network Graph

• Limitations of Static Message Delivery

– Necessitates knowing the network of neighbours

– Insensitive to which nodes have been active

• Objectives of Dynamic Message Delivery

– Flush channels and trap agents in regions of the network where

the message will propagate

– To allow network graph used for the delivery process to grow

dynamically as the agents migrate

Page 15: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Dynamic Network GraphDelivery in a Dynamic Network Graph

• Illustration - Destination ahead of source

- X is the sender of all messages (only active node)

- X sends burst of messages 1.. 4 to Y (X, Y active)

- X sends a second burst of messages 5..8

- Before message 5 arrives at Y, if an agent is sent from Y to Z, it is put on hold

- Only after messages 5..8 are received, these messages are delivered to the detained agent without broadcasting them to the neighboring nodes (X, Y, and Z active)

Page 16: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Dynamic Network GraphDelivery in a Dynamic Network Graph

• Illustration - Source ahead of Destination

- X is the sender of all messages (only active node)

- X sends burst of messages 1.. 4 to Y (X, Y active)

- X sends a second burst of messages 5..8

- Before message 5 arrives at Y, if an agent is sent from Z to Y, activation of channel (Z, Y) is delayed

- Only after message 8 is processed at Y, channel (Z,Y) is activated

Page 17: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Dynamic Network GraphDelivery in a Dynamic Network Graph

• Channel States

Closed Channels are not active in message delivery

Open Channel is waiting to participate in a message delivery

Flushed Current message being delivered has arrived on this channel

Buffering (j) Source is ahead of the destination Messages are buffered until j is processed

Holding (j) Destination is ahead of the sourceAgents are held until j arrives.

Page 18: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Delivery in a Dynamic Network GraphDelivery in a Dynamic Network Graph

• Multiple Message Sources

– Nodes can deliver n messages concurrently, at most one for

each node

Multiple instances of single message source algorithm

superimposed on the network

A vector of size n represents the state of incoming channel

Channel state associated with the node where the message

originated is used to process each message

All links are bi-directional to enable any node to originate a

message

Page 19: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Analysis of the Proposed MechanismAnalysis of the Proposed Mechanism

• Implementation Issues

– FIFO property must be maintained for every message and agent

travelling through the channel

– The mechanism assumes that the runtime support maintains

some state about the network graph and the messages being

exchanged

• Applicability

– Generates considerable overall traffic (compared to a forwarding

scheme)

Page 20: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

Analysis of the Proposed MechanismAnalysis of the Proposed Mechanism

Tradeoffs

Guaranteed Delivery

Multicast Capable

Delivery Overhead

Knowledge Maintained

Forwarding No No One indirection

Agent location

Broadcast No Yes(no guarantees)

One msg / spanning tree edge

Spanning tree

Static Snapshot

Yes Yes One msg / edge

Neighbors(known in advance)

Dynamic Snapshot

Yes Yes One msg / traversed

edge

Neighbors(discovered)

Page 21: © nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.

Reliable Communication for a Highly Mobile Agent

ConclusionsConclusions

• Mobility makes message delivery inherently difficult

• Limitations of available techniques

– Do not guarantee message delivery

– Constrain movement or connectivity of mobile agents

• Proposed solution

– Uses distributed snapshot concept

– Complements available techniques

– Trades reliability for bandwidth consumption