A Novel Approach for Execution of Distributed Tasks on Mobile Ad Hoc Networks - PowerPoint PPT Presentation

About This Presentation
Title:

A Novel Approach for Execution of Distributed Tasks on Mobile Ad Hoc Networks

Description:

A Novel Approach for Execution of Distributed Tasks on Mobile Ad Hoc Networks Prithwish Basu, Wang Ke, and Thomas D.C. Little Dept. of Electrical and Computer ... – PowerPoint PPT presentation

Number of Views:135
Avg rating:3.0/5.0
Slides: 24
Provided by: Prash93
Category:

less

Transcript and Presenter's Notes

Title: A Novel Approach for Execution of Distributed Tasks on Mobile Ad Hoc Networks


1
A Novel Approach for Execution of Distributed
Tasks on Mobile Ad Hoc Networks
  • Prithwish Basu, Wang Ke, and Thomas D.C. Little
  • Dept. of Electrical and Computer Engineering,
  • Boston University.
  • Presented By
  • Prashant Punjabi

2
Overview
  • Introduction
  • Related work
  • Example Scenarios
  • Theoretical Foundations
  • Distributed Algorithm
  • Conclusion

3
Introduction
  • Most research on MANETs focuses on lower layer
    mechanisms
  • Channel access
  • Routing
  • Task Graph
  • Nodes classes of devices/services
  • Edges associations between the nodes for
    performing a the task
  • Distributed application framework based on Task
    Graphs
  • A distributed application is a complex task,
    consisting of smaller subtasks, that can be
    performed by specialized devices
  • Execution of such a task on a MANET involves
    several logical patterns of data flow
  • Data flow patterns induce dependencies between
    devices that need to cooperate, which yields a
    task graph

4
Introduction
  • Dynamic selection of specific devices that are
    needed to complete tasks
  • More than a single device in the network is
    capable of offering the same service
  • The user does not care which device is used
  • Embedding or Dynamic Task-based Anycasting
  • For each class of device needed, one suitable
    instance needs to be chosen
  • i.e. specific devices are instantiated, and made
    to communicate with each other
  • dynamic - choice of devices instances may change
    with time (due to mobility)

5
Example Scenario Music Service
Music Server
mp3 decoder device
mp3 data
Decoded signal
Speaker L
Speaker R
Proximity Sensing
Request
USER
Data flow edge
Proximity edge
6
Related Work
  • Service Discovery
  • SLP Jini - service providing computer registers
    itself with its attributes at a centralized
    directory server
  • MOCA - Jini for mobile devices
  • TG approach operates at a logical layer above
    service discovery, and can co-exist with any of
    these schemes
  • Similar Visions
  • INS (Intentional Naming System)
  • User intent abstracted in attribute-value pairs
  • Device that will perform the service will be
    selected by special entities called Intentional
    Name Resolvers
  • IBMs PIMA (Platform Independent Model for
    Applications)

7
Related Work
  • Parallel Computing
  • Task Graphs used for representing tasks that can
    be split temporally into sub-tasks
  • Homogenous processors, reduce total completion
    time
  • Task graphs for distributed task execution
  • Several heterogeneous devices that communicate
    with each other
  • No notion of minimizing total completion time

8
A Task Graph based Modeling Framework
  • Device
  • Physical entity that performs at least one
    particular function
  • Specialized device speakers, printers, monitors
  • Multipurpose device PDAs, laptops
  • Attributes
  • Capabilities of each device
  • Static or Dynamic
  • Service
  • Functionality provided by a device or a
    collection of co-operating devices
  • Multiple devices in the MANET can provide the
    same service

9
A Task Graph based Modeling Framework
  • Node
  • Abstract representation of a device or a
    collection of devices that can offer a particular
    service
  • Simple single physical device
  • Complex multiple simple nodes
  • Class, category or type principal attribute of
    a node
  • Edge
  • Association between two nodes with attributes
    that must be satisfied for the completion of a
    task

10
Tasks and Task Graphs
  • Task
  • Work executed by a node with a certain expected
    outcome
  • Work done by a component of a complex node is
    considered a sub-task of a bigger task
  • Atomic task Indivisible unit of work executed
    by a single node
  • Task Graph
  • Graph TG (VT, ET) where VT is the set of nodes
    that need to participate in the task and ET is
    the set of edges denoting data flow between
    participating nodes

11
An Example
  • A PDF printing service
  • PS printer connected to a print server running
    PDF to PS conversion software
  • Printer and the print server nodes together form
    a complex node that offers a PDF printing
    service

12
A Data-flow Tuple Architecture
  • Tuples
  • Represent task requirements in terms of data flow
    to and from the current device
  • Logical unit of data processing that is needed
    between the distributed components of an
    application
  • X A, B, C D, E node of class X receives
    data from nodes of classes A, B and C, and sends
    the processed data to nodes of classes D and E
  • Edges of a TG can have attributes (channel error
    rates, bandwidth) and requirements (proximity)
    which can be integrated in the TG via the tuple
    architecture

13
A Task Graph based Modeling Framework
  • Embedding Task Graphs onto networks
  • Discover appropriate devices in the network
  • Select from those suitable devices that are
    needed to execute the more complex application
  • Mathematically, embedding a TG (VT,ET) onto a
    MANET G (VG, EG) involves finding a pair of
    mappings (f, ?) such that f VT ? VG and ? ET
    ? PG, where the class of v ? VT is the same as
    that of f(v) and PG is the set of all
    source-destination paths in G
  • Instantiation
  • Process of device discovery, selection of a
    device from multiple instances of a devices in
    the same category, and the assignment of a
    physical device to a logical node in the task
    graph

14
  • Metrics for Performance Evaluation
  • Average Dilation
  • Edges in TG are mapped to paths in G
  • Average length of all such paths taken over all
    edges in TG
  • Large dilation implies long paths between
    directly communicating devices
  • Low Dilation results in better task throughput
  • Instantiation time
  • Time taken to instantiate a node in TG on G
  • Time taken to find a replacement device, during
    network failures
  • Average Effective throughput (AvgEffT)
  • Average number of application data units (ADUs)
    actually received at the instantiated data sinks
    divided by the number of ADUs that were supposed
    to be received at the intended targets, ideally

15
An Algorithm for Embedding Tree Task Graphs
  • Assumptions
  • The TG is a tree rooted at the user U
  • The node executing the algorithm has complete
    knowledge of the topology of the network at the
    given instant
  • Works by propagating a value function towards U
  • Principle of Optimality
  • Steps
  • Perform BFS traversal of the tree TG and assign a
    level L to each node starting from U, which has L
    0
  • Leaf nodes are given value v 0
  • For a non-leaf node X with child Y, for every
    instance Xi in G sweep through every instance of
    Y in G and choose instance Yj such that vYj
    w(Xi,Yj) is minimized
  • Complete this value assignment for all instances
    at one level before moving on to the next lower
    level

16
An Algorithm for Embedding Tree Task Graphs
  • Drawbacks
  • Centralized
  • High time complexity
  • Entire topology information needed
  • Not adaptable to mobility
  • Not applicable for graph TGs
  • Embedding problem is harder
  • Principle of optimality does not hold due to
    greater connectivity of a graph
  • Distributed greedy approach
  • Simpler, less time consuming, reasonably
    efficient in operation
  • Suboptimal

17
Distributed Task Embedding Approach
  • Why?
  • In a MANET of low power devices, none of them may
    have adequate computational power
  • MANET graph might change by the time the optimal
    dilation is calculated
  • Changes in topology difficult to track
  • Centralized node might not be always connected to
    the rest of the network
  • Although not always optimal, distributed approach
    is more robust and adaptive to mobility no
    single point of failure

18
Distributed Algorithm for Instantiation of Nodes
  • Goal
  • To produce an embedding of a TG onto a MANET with
    the objective of minimizing Davg
  • Assumptions
  • Each heterogeneous device provides a single type
    of service
  • All nodes in the network are simple
  • Presence of a MANET routing protocol (DSR, AODV)
    and a reliable transport protocol (TCP)
  • Background
  • All devices in network execute the same copies of
    the algorithm except the user node which executes
    a different algorithm as it acts as a state
    synchronizer
  • Any device can exist in states
    NOT_INSTANTIATED, WAIT_FOR_ACK or INSTANTIATED
  • Main coordinator TG_UNINSTANTIATED or
    TG_INSTANTIATED

19
Distributed Algorithm for Instantiation of Nodes
  • Steps
  • Initially, U is in state TG_UNINSTANTIATED and
    all other nodes are in state NOT_INSTANTIATED
  • A BFS through the TG is started from U inducing a
    Spanning Tree rooted at U, called BFS-Tree of TG
    (BFSTTG)
  • Starting from U, nodes in BFSTTG are mapped to
    nearest devices and the edges to shortest paths
    in G
  • Nodes are instantiated greedily by searching only
    the local space around an instantiated device for
    the next node

20
User node (Coordinator)
Broadcast Query
For type A
For type B
candidate
candidate
ACK
Broadcast Query
For type C
ACK
Node B
Conf
candidate
Conf
Node A
ACK
Collective subtree conf
Conf
TG_INSTANTIATED
Node C
BSF Tree Edges
Node B (Local Coordinator)
Coordinator Node
Node A
Node C
Non-BSF Tree Edges
UDP Flows
TCP Flows
21
Handling Mobility of devices
  • Detection of disconnections
  • Network Partitions or disconnections due to
    mobility may lead to instantiated devices being
    unable to communicate
  • Each instantiated device sends a periodic HELLO
    message to its local neighbor instances in TG,
    which reply with a HELLO-ACK
  • Each instantiated device specially keeps track of
    its BFS parent and BFS children
  • BFS parent device stops hearing from its BFS
    child, it un-instantiates the child and starts
    looking for a replacement
  • Child will stop hearing HELLO-ACKs from the
    parent and will un-instantiate itself
  • TCP re-transmissions after timeouts take a long
    time, leading to false conclusion that
    disconnection has taken place

22
Handling Mobility of devices
  • Re-instantiation and Bookkeeping
  • Re-instantiation process is same as the earlier
    described instantiation process but without the
    CN_CONFIRM step
  • Coordinator is not involved, BFS parent acts as
    the local coordinator
  • State maintenance after disconnections is done
    locally
  • Each device knows the address of its parents (BFS
    and non-BFS), its children, its childrens
    parents and its childrens children
  • Impact on the Application layer
  • BFS-parent device responsible for passing the
    application state to the newly instantiated
    replacement device
  • Devices in NOT_INSTANTIATED state after being
    disconnected drop old data packets still reaching
    them

23
Conclusion
  • A task-based framework for executing a
    distributed application on a network of
    specialized mobile devices
  • A scalable, robust algorithm for anycasting a TG
    onto a MANET, with local detection and repair for
    recovery from disruptions
  • Further work
  • Feedback based TCP for better performance
  • Reliable task execution with buffering and
    retransmissions
Write a Comment
User Comments (0)
About PowerShow.com