460 likes | 595 Vues
A Message Ferrying Approach for Data Delivery in Sparse Mobile Ad Hoc Network. W. Zhao, M. Ammar and E. Zegura (Georgia Institute of Technology). Overview. Background and Problem Solved Node-Initiated Message Ferrying Ferry-Initiated Message Ferrying Performance Evaluation Discussion
E N D
A Message Ferrying Approach for Data Delivery in Sparse Mobile Ad Hoc Network W. Zhao, M. Ammar and E. Zegura (Georgia Institute of Technology)
Overview • Background and Problem Solved • Node-Initiated Message Ferrying • Ferry-Initiated Message Ferrying • Performance Evaluation • Discussion • Conclusion
S D S D carry Background • Routing Protocols for Ad hoc networks • Assume Network is “Connected” (i.e., there exists a path from any source to any destination) • Use store and forward routing paradigm • Partitioned ad hoc networks • Network could be “Disconnected” • Store-carry-forward routing paradigm • Wide deployment area, node mobility, limited radio range, physical obstacles…
Store-Carry-Forward • Store • Carry • Forward
Background • Sparse Mobile Ad Hoc Networks • Paths from one node to another may not exist at any one point in time. Mobile Node Radio transmission Range
Straightforward: Use longer range radio to maintain network connectivity Incurs excessive energy consumption Radio range is limited Mobility-Assisted: Node mobility is used for connectivity; store-carry-forward paradigm used Special nodes: Transport entities that are not necessarily sources or destinations. Approaches for Routing in Sparse Mobile Ad Hoc Networks
Reactive schemes Rely on inherent movement of nodes Contention for limited buffers due to a large number of redundant messages stored Low delivery rate and large delays Epidemic routing Proactive schemes Nodes modify their trajectories proactively Message Ferrying Overview of Mobility-Assisted Approaches
Overview of Epidemic Routing • Reactive, flood-style • Nodes propagate data to all nodes they meet. • Utilizes physical motion of devices to transport data • Uses Store-carry-forward paradigm • Nodes buffer and carry data when disconnected • Nodes exchange data when they meet • Data is replicated throughout the network
Epidemic Routing message is delivered…
Epidemic Routing • Pros: • Simple and robust to node failure • Cons: • A lot of redundant data, leads to poor scalability • Message duplication consumes limited resource of nodes • No guarantee for message delivery
Message Ferrying • Message Ferrying (MF) • Proactive mobility-assisted approach • Components • Message ferries • Are special nodes with responsibility for carrying data between regular nodes • Move around the deployed area along known routes • Limited resource constraints • Equipped with renewable power, large memory and powerful processors • Regular nodes • Do not carry data between nodes • Limited resource: battery, processing power and memory
Message Ferrying with Mobile Nodes • Proactive mobility-assisted approach • Nodes are mobile and have limited buffer, energy, etc. • Buffer overflow or timeout => message is dropped • Ferries • Ferries moves along well-known routes • No limitation on buffer size or energy for ferries • Timeout for message => message is dropped
MF with Mobile Nodes… • Two MF Schemes • Node-Initiated MF (NIMF) • Nodes periodically move to meet a ferry • Ferry-Initiated MF (FIMF) • Ferries move proactively to meet nodes
Node-Initiated MF • Assumption • Ferry is on a specific route (a well-known ferry route) • Nodes know this route • Messaging: • Node moves to a specific ferry route
Node-Initiated MF – Operations • Ferry Operations • Ferry moves along a well-known ferry route • The ferry route is periodically broadcast by ferry or conveyed by other out-of-band means • Broadcast short range Hello messages periodically • to detect each other when ferry and nodes are close • On reception of an Echo message from a node, the ferry exchanges messages with the node Hello
Node-Initiated MF - Operations • Node Operations • WORKING mode: • Moves according to assigned task • GO_TO_FERRY mode • When a node decides to meet the ferry • SEND/RECV mode • Exchanges messages with the ferry • GO_TO_WORK mode • Returns to its location prior to the detour after completing message exchange or after the ferry has moved out of range • Upon return to the prior location, the node enters WORKING mode • Switches to SEND/RECV mode from WORKING mode or GO_TO_WORK mode when nodes meet the ferry unintentionally without proactive movement
Node-Initiated Message Ferrying Meet the ferry? OK If no, keep working Working
Node-Initiated Message Ferrying Go to Ferry
Node-Initiated Message Ferrying Send/Recv Go to Work
Node-Initiated Message Ferrying Go to Work
Node-Initiated MF • Nodes need to meet the ferry to exchange messages. This has a negative impact on the work the mobile node is doing. • Goal: Minimize message drops (due to buffer overflow) while reducing the negative impact of proactive movement • Messages may be dropped in nodes because of buffer overflow or timeout; messages in ferry may be dropped because of timeout • Assumptions • Time is divided into fixed-length slots • All messages have same size and timeout value T • Go to ferry if • Work-time percentage(WTP) > threshold (WTP= percentage of time a node is free to work on assigned tasks) • and • Estimated message drop percentage > threshold
Node-Initiated MF … • Message Drops • Messages are dropped at a node when message times out or buffer overflows • Message drop rate for node i during time slot td, namely, Di(td)consists of two parts • Di(td) = Din(td) + Dif(td) where Din(td):node i’s own message drop rate during time slot td Dif(td) :drop rate in the ferry for node i during time slot td Di(td) :total drop rate for node i during time slot td • mi(td) -- msg. generation rate during time slot td; • If a node chooses not to move to the ferry during time slot td, it may incur message timeout in the future.
Di(t): msg. drop rate for node i during time slot t • mi(t): msg. generation rate during time slot t • G : msg. generation rate in node i • G : msg. arrival rate in the ferry for destination i • td : time slot in which the node is expected to meet the ferry after proactive movement • α : average time between a node’s visits to the ferry • β: predefined parameter • T: message timeout value in slots n i f i Node-Initiated MF … • Message Drops… • Move to ferry when • Ferry periodically broadcasts its Ferry_Status with message generation and drop rate to all nodes (1)
Node-Initiated MF … • How to calculate Din(t) • Drop rate due to message timeout at Regular node and message ferry • Assuming no buffer overflow, message timeout rate during time slot t a(t) = mi(ta), ta = t - T • Drop rate due to buffer overflow(assuming no timeout) at regular node • Drop rate during time slot t b(t) = mi(tb), • Message drop rate at node i: drop drop • Bi : node buffer size • Δ: length of a time slot
Node-Initiated MF … • Working Time Percentage (WTP) • Percentage of time a node is free to work on assigned tasks, Wi • the node is not detouring for message transmission or reception • Move to ferry when Wi > ω • Node imodifies its trajectory only when • (1) and (2)are both true (2) • ω: predefined threshold
Ferry-Initiated MF • Assumption • Ferry moves faster than nodes • Nodes are equipped with a long range radio for sending control messages • Ferry can broadcast messages to all nodes in the area. • Range of node’s long range radio < range of ferry’s long range radio • Messaging: • Ferry moves to node • Node’s long Range radio used to setup meet • Node’s short Range radio used for message transfers
Short radio transmission Long radio transmission : Ferry : Node : Ferry-Initiated MF … • Message Delivery in Ferry-Initiated MF Ferry route Ferry Location New route Service_Request (Node’s Location Info.) Location_Update (New Location) Send/recv msg.
Ferry-Initiated MF - Operations • Node Operations • DISASSOCIATED mode • Send Service_Request to the ferry • Node notification control mechanism • Service_Request contains node’s location information • ASSOCIATED mode • Send Location_Update to notify the ferry of node’s new location • Node notification control mechanism • On reception of a Hello message from the ferry, exchange messages with the ferry • In both mode, nodes can exchange messages with the ferry when nodes meet the ferry unintentionally
Ferry-Initiated MF - Operations • Ferry Operations • IDLE mode • Follow a specific default route • Periodically broadcast location info. to nodes via long range radio • WORKING mode • After reception of Service_Request from a node • Compute new ferry route whenever receiving Service_Request and Location_Update • Ferry trajectory control mechanism • On reception of an Echo message from a node, exchange messages with the node • In both modes, the ferry can exchange messages with a node when ferry meets the node unintentionally
Ferry-Initiated MF – Node Notification • Send Notification messages to Ferry • Notification messages includes: • Service_Request • Location_Update • Use Long Range Radio to setup meet • Goals: • consider energy constraints • minimize message drops
Ferry-Initiated MF – Node Notification… • Service_Request message • Message drops • Ferry location • df < • df : distance from a node to the ferry • : system parameter, < Rl • Rl : transmission range of node’s long range radios • Energy consumption • vi < • vi : notification message rate (NMR) Average number of notification messages sent per second • : predefined threshold • Send Service_Request message only when (1), (3) and (4) are true (1) F df (3) γ N Rl γ γ (4) λ λ
Ferry-Initiated MF – Node Notification.. F Location_Update df Rs • Location_Update message • Ferry location • df < Rl & dn > Rs • dn : node’s distance to the location it reported to the ferry • Rs: transmission range of node’s short range radio • Energy consumption • vi : notification message rate (NMR) Average number of notification messages sent per second • Sending Location_Update message only when (4) and (5) are both true N dn N (5) vi < λ (4)
Ferry-Initiated MF - Ferry Trajectory • Default Ferry Route • To maximize a chance to meet nodes at every location • Area is divided into a grid of square cells and the ferry scans through the cells in a row-by-row manner Deployment area F Default ferry route Rl N Rl : transmission range of node’s long range radio
Ferry-Initiated MF - Ferry Trajectory… • To decide the trajectory to meet nodes with the goal of minimizing message drops • Mathematical Model for ferry route • DP is the total message drop rate of all the requesting nodes with a ferry on the route P • Finding the route that minimizes DP • Din(t): node i’s own message drop rate during time slot t • Dif(t): drop rate in the ferry for destination i during time slot t • t0 : current time slot • si : latency for node i • k : number of requesting nodes
Ferry-Initiated MF - Ferry Trajectory… • Mathematical Model problem: • Becomes NP-hard, when Din(t) + Dif(t) =1 for all i • If nodes are mobile, DPis only a rough estimate of message drops. • Two heuristics • Nearest Neighbor (NN) • Ferry always visits the closest node • Traffic-aware (TA) • Ferry tries to minimize the expected message drops based on the location and message drop info. • 2H-opt: heuristics used for traveling salesperson problem (TSP). Ferry might miss a node in this approach since nodes are mobile (The authors claim that the chances are small for missing a node since Ferry moves much faster than the regular nodes)
Performance Evaluation… • Performance Metrics • Message delivery rate = # of successfully delivered messages / total generated messages • Message Delay = the average delay between the time a message is generated and the time the message is received at the destination • Energy Efficiency =Number of delivered messages per unit energy • Only count transmission energy in regular nodes
Performance Evaluation… • Methodology • Used ns network silmulator • Communication range • Short range radio • 802.11 DCF as MAC layer • 250m transmission range and 0.282W transmit power • Long range radio • Simplified model of no loss or delay • Transmission power for distance d is proportional to dk (k = 4) • Nodes • 40 nodes on 5000m x 5000m area • 25 source & destination nodes are randomly chosen every 20 sec. • Random waypoint mobility model • Maximum speed 5m/s and pause time 50 sec. • Buffer size 400 messages • For FIMF, long range radio 500kbps
Performance Evaluation… • Ferry • Speed 15m/s • Default route is a rectangle with (1250, 1250) and (3750, 3750) • Messages • 500 byte size msg. and timeout 8000 sec. • Evaluated Epidemic routing vs. Message Ferrying • Default parameter settings
Performance Evaluation… • Impact of Node Buffer Size
Performance Evaluation… • Impact of Node Mobility • Random way point (RW) • Randomly picked destination with a speed uniformly distributed [0, Smax] • Limited random (LRW) • Movement within 400x400 area • Limits the distance of each move • Area based (AB) • 10 nodes moving according to RW • Other nodes LRW
Performance Evaluation… • Impact of transmission range on FIMF
Discussion – Multiple Ferris • Multiple Ferries • Why multiple ferries? • Improve transport capacity • Robustness against ferry failures • Multiple ferries introduce new problems • Which ferry serves which node? • Interaction between ferries • Tradeoff between number of ferries and performance improvement
Conclusion • Efficient Data Delivery in Sparse Mobile Ad Hoc Networks • Message ferries: exploitation of non-randomness to help deliver data • By using ferry, source can send messages to destination even when there is no end-to-end path • Two variation of MF scheme • Node-Initiated MF (NIMF) • Ferry-Initiated MF (FIMF) • Improve date delivery and energy efficiency as compared to flooding-style routing (Epidemic routing) • Limits: • The work is limited to one ferry