Enhancing DTN capacity with Throwboxes (work-in-progress) Wenrui Zhao, Yang Chen, Mostafa Ammar, Mark Corner, Brian Levine, Ellen Zegura Georgia Institute of Technology University of Massachusetts Amherst Delay Tolerant Networks (DTN) DTNs: non-Internet-like networks Intermittent connectivity Large delays High loss rates Examples of DTNs Tactical networks, disaster relief, peacekeeping Interplanetary networks, rural village networks Underwater acoustic networks DTN features Store-Carry-and-forward Message switching Capacity Limitation in DTNs DTNs are intermittently connected Potentially low throughput, large delay Question: enough capacity for applications? What if not? Enhancing DTN Capacity Use radios with longer range Deploy a mesh network as infrastructure Message ferrying MF M S D This presentation: Throwboxes Our Work on MF/DTN Ferry Route Design Problem [FTDCS 03] MF with Mobile Nodes [MobiHoc 04] Efficient use of Multiple Ferries [INFOCOM 05] The V3 Architecture: V2V Video Streaming [PerCom 05] Ferry Election/Replacement [WCNC 05] MF as a power-savings device [PerCom 05] Multipoint Communication in DTNs/MF [WDTN 05, WCNC 06] Power Management Schemes in DTNs/MF [SECON 05, PerCom 05] Road-side to Road-side relaying using moving vehicles [WCNC 06] Throwboxes Basic idea: add new devices to enhance data transfer capacity between nodes Deploy throwboxes to relay data between mobile nodes Throwboxes are: small, inexpensive, possibly dispensable, batterypowered wireless devices Some processing and storage capability Easy to deploy and replenish Throwboxes Processor Intel PXA255 400MHz Memory 64MB SDRAM 32MB Flash Power consumption < 500mA Size 3.5’’ x 2.5’’ Weight 47g Example: DTN w/out Throwboxes Example: DTN w/ Throwboxes UMassDiesel DTN Example 25000 throw-box Bus 30 Bus 31 Bus 34 Bus 35 Bus 36 Bus 38 Bus 39 Bus 39e Bus 45 20000 Y 15000 10000 5000 w/out TB w/ TB Total contact duration (sec) 631 11927 Effective capacity (Kbps) 3.5 66.3 63012 3120 Delay (sec) 0 0 5000 10000 15000 20000 25000 X Data transmission between bus 38 and bus 45 A single throwbox achieves an improvement factor of 19 for both capacity and delay Main Question How to best deploy ‘s Where? How to route through them? When? -- Later work Throwbox Deployment & Routing Framework Objective: throughput enhancement Important to deliver data May improve delay too Deployment issue Where to place throw-boxes? Routing issue How data are forwarded? Contact-oblivious Contact-based Traffic and Contact based Single path routing Multi-path routing Epidemic routing Network Model DTN consists of mobile nodes Relative traffic demand between nodes bij b ij 1 i, j Total throughput λ Given inherent capacity (w/out TBs) as a function of: Contacts – dictated by mobility patterns Data rate Throwbox Assumptions Sufficient energy supplies No interaction between throwboxes Deployed to a given set of potential locations Center of Grid Cells Deployment Vector (0/1 vector) Throwbox Deployment & Routing Framework Deployment approach Traffic & Contact based Contact based Contact oblivious Random or Regular Deployment Multi-path routing Single path routing Epidemic routing Routing approach Throwbox Deployment & Routing Framework Deployment approach Traffic & Contact based Contact based Contact oblivious Random or Regular Deployment Multi-path routing Single path routing Epidemic routing Routing approach Multi-Path Routing – Traffic and Contact-Aware Deployment Need to determine Deployment locations of throwboxes Routing paths and traffic load on each path Performance objective Given m throwboxes, maximize total throughput λ such that traffic load λbij is supported from node i to j Multi-Path Routing – Traffic and Contact-Aware Deployment Formulated as an 0/1 linear programming problem Throwbox deployed at location 1 Solution also gives optimal flow vector describing use of multiple paths NP-hard to solve optimally Greedy Heuristic Deploy throwboxes one by one (1) for i=1 to m do (2) find location L that maximizes λ (3) deploy a throwbox at location L (4) end (5) compute routing Given throwbox locations, (2) is a concurrent flow problem Solved by network flow techniques or linear programming tools Throwbox Deployment & Routing Framework Deployment approach Traffic & Contact based Contact based Contact oblivious Random or Regular Deployment Multi-path routing Single path routing Epidemic routing Routing approach Multi-Path Routing – Contact-Based Deployment Throwbox deployment is based on contact information, but not traffic information Benefits varying traffic patterns May not be optimal for specific traffic Maximize Absolute contact enhancement Maximize absolute enhancement of contact between nodes Relative contact enhancement Maximize relative enhancement of contact between nodes Throwbox Deployment & Routing Framework Deployment approach Traffic & Contact based Contact based Contact oblivious Random or Regular Deployment Multi-path routing Single path routing Epidemic routing Routing approach Single Path Routing Single path routing Data for a S-D pair follow a single path Adapt greedy algorithm for multi-path routing by enforcing the “single path” requirement Throwbox Deployment & Routing Framework Deployment approach Traffic & Contact based Contact based Contact oblivious Random or Regular Deployment Multi-path routing Single path routing Epidemic routing Routing approach Epidemic Routing Epidemic routing (ER) Difficult to characterize traffic load among nodes because of flooding ER exploits all paths to propagate data Multi-path heuristic Proportional allocation heuristic Performance Evaluation traffic demand node mobility deployment/routing computation throwbox locations routing path/load ns simulation Objectives Utility of throwboxes in performance enhancement Performance impact of various routing and deployment approaches Simulation Settings Node mobility models Predictable/constrained: UMass model based on measured bus trace Random/unconstrained: Random waypoint model Random/constrained: Manhattan model Simulation Parameters 9 nodes in a 25Km x 25 Km area 802.11 MAC, radio range: 250m, bandwidth: 1Mbps 20 source-destination pairs, message size is 1500 bytes, Poisson message arrival with same data rate FIFO buffer, buffer size is 50000 messages Delivery Ratio vs. Number of Throwboxes 0.8 T &C Aware AbsoluteContact RelativeContact Random Grid Multi-path routing Message delivery ratio 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 1 2 3 4 5 Number of throw-boxes 6 7 8 Delivery Ratio vs. Number of Throwboxes 0.45 Single path routing Message delivery ratio 0.4 0.35 0.3 0.25 0.2 0.15 T & C Aware 0.1 AbsoluteContact RelativeContact Random Grid 0.05 0 0 1 2 3 4 5 Number of throw-boxes 6 7 8 Delivery Ratio vs. Number of Throwboxes 0.35 Epidemic routing Message delivery ratio 0.3 0.25 0.2 0.15 MultiPath Proportional AbsoluteContact RelativeContact Random Grid 0.1 0.05 0 0 1 2 3 4 5 Number of throw-boxes 6 7 8 Delay vs. Number of Throwboxes (High Traffic Load) 14000 Multi-path routing Message delay (second) 12000 10000 8000 6000 4000 T&C AbsoluteContact RelativeContact Random Grid 2000 0 0 1 2 3 4 5 6 Number of throw-boxes 7 8 Delay vs. Number of Throwboxes (Low Traffic Load) Multi-path routing Message delay (second) 6000 5000 4000 3000 2000 T&C AbsoluteContact RelativeContact Random Grid 1000 0 0 1 2 3 4 5 Number of throw-boxes 6 7 8 Summary of Simulation Results UMass mobility Throughput improvement Delay improvement (high traffic load) Manhattan mobility Delay improvement (low traffic load) RWP mobility Multi-path routing Single path routing Epidemic routing Summary of Simulation Results (2) High T&C/ Contact based T&C Throughput improvement Contact based T & C/ Contact based Low Contact oblivious Multi-path routing Contact oblivious Single path routing Contact oblivious Epidemic routing Routing approach Summary Study the use of throwboxes for capacity enhancement in mobile DTNs Develop algorithms for throwbox deployment and routing Routing: multi-path, single path, epidemic Deployment: traffic and contact, contact-based, contact-oblivious Evaluate the utility of throwboxes and various routing/deployment approaches Throwboxes are effective in improving throughput and delay, especially for multi-path routing and predictable node mobility Questions? Message Ferrying MF S S M MF D M D