460 likes | 582 Views
O3: Optimized Overlay Based Opportunistic Routing. Mi Kyung Han, Apurv Bhartia , Lili Qiu and Eric Rozner The University of Texas at Austin Presented by: Apurv Bhartia apurvb@cs.utexas.edu ACM Mobihoc 2011. Wireless Mesh Networks (WMN). Internet. Gateway. Gateway. Router.
E N D
O3: Optimized Overlay Based Opportunistic Routing Mi Kyung Han, ApurvBhartia, LiliQiu and Eric Rozner The University of Texas at Austin Presented by: ApurvBhartia apurvb@cs.utexas.edu ACM Mobihoc 2011
Wireless Mesh Networks (WMN) Internet Gateway Gateway Router Router WiFi Network Campus LAN
Routing Schemes in WMN • Traditional routing • Develops a variety of routing metrics to select the best path • Hop counts, ETX (expected # transmissions), ETT (expected transmission time), RSS, … • Opportunistic routing • Routing with inter-flow coding
Motivating Example (1/7) B F1: A→D F2: D→A 50% 50% A D 50% 50% C
Motivating Example (2/7) B 2 xmits 2 xmits F1: A→D F2: D→A 50% 50% A D 50% 50% C 2 xmits 2 xmits 8
Motivating Example (3/7) B 2 xmits F1: A→D F2: D→A 50% 50% A D 50% 50% 1.33 xmits C 8 6.66
Motivating Example (4/7) B 2 xmits 2 xmits F1: A→D F2: D→A 50% 50% P Q A D P Q 50% 50% P XOR Q C 8 6.66
Motivating Example (5/7) B F1: A→D F2: D→A 50% 50% 2 xmits A D P Q P XOR Q 50% 50% P XOR Q P XOR Q C Q P 8 6.66 6
Motivating Example (6/7) B F1: A→D F2: D→A 50% 50% A D 50% 50% 1.33 xmits 1.33 xmits C 8 6.66 6
Motivating Example (7/7) B F1: A→D F2: D→A 50% 50% 2 xmits A D 50% 50% C 8 6.66 6 4.66 Significant Performance Gains Possible!
The Big Question! How to achieve this opportunistic routing + inter-flow coding gain in practice?
Related Work • Protocols [Biswas05, Chachulski07] • Optimization frameworks [Lun06, Radunovic2008, Soldo10, Ho06] Opportunistic Routing • Co-ordinate to select forwarders [Koutsonikolas03, Yan08, Zhang08] • Evaluate only on toy topologies • Optimization framework ? • Practical protocol ? Opportunistic Routing + Inter-flow Coding • Protocols [Katti06, Das08, Le10] • Optimization frameworks [Chaporkar07, Scheuermann07] • Coding-aware traditional routing [Sengupta07] Inter-flow Coding
Challenges • Strong tension between opportunistic routing and inter-flow coding • Opportunistic routing spreads information across multiple nodes • Inter-flow coding opportunity decreases • Node itself receives less traffic limited coding choices • Next-hop receive less traffic hard to decode
Our Approach • Decouple the strong interactions between opportunistic routing and inter-flow coding • Solution lies in “abstraction” • Overlay Nodes → inter-flow coding • Reduce amount of overlay traffic generated • Underlay Nodes → opportunistic routing • Combat wireless losses provide reliable overlay links
O3: Understanding by Example Underlay Node Overlay Node Physical Node B F1: A→D F2: D→A Overlay Plane D A C B D A C Underlay Plane Opportunistic Routing
O3: Understanding by Example Underlay Node Overlay Node Physical Node B Overlay Plane D A C B D A C Underlay Plane Opportunistic Routing Inter-flow Coding
Contributions • Decouple the strong interdependency between opportunistic routing and inter-flow coding • Jointly optimize inter-flow coding, opportunistic routing, and rate limiting • Practical inter-flow coding aware opportunistic routing protocol; O3 • Study benefits of O3 and individual benefit of inter-flow coding, opportunistic routing and rate limiting
O3: The Big Picture… Topology details, traffic demands Overlay nodes and overlay paths Overlay-underlay link mapping Input O3Optimization Framework Output Underlay opportunistic forwarding Overlay node forwarding Source Rate Limiting Protocol Implementation
O3: Optimization Framework • Objective: Maximize total network throughput subjected to - • Overlay network constraints • Flow conservation constraints • Underlay network constraints • Flow conservation constraints • Opportunistic constraints • Overlay <-> underlay mapping constraints • Wireless interference constraints
Overlay Network Constraints (1/2) Flow conservation constraint for native traffic involved in coding Flow conservation constraint for coded traffic involved in coding : native-received traffic over that can participate in coding and sent over :same as above but with coded-received traffic :set of coding structures : traffic transmitted by node for flow over path
Overlay Network Constraints (2/2) Flow conservation constraint for total traffic received on and transmitted on transmits all traffic as native over all paths Flow conservation on total native traffic tx by transit node : native-received traffic over that can participate in coding and sent over :same as above but with coded-received traffic :set of coding structures : traffic transmitted by node for flow over path
Underlay Network Constraints (1/2) flow1 flow1 (inter-coded or native) : information from to for virtual flow : traffic transmitted from node for : traffic demand of virtual flow : probability of successfully transmission to node in : total overlay traffic sends for over all paths Underlay Node j i Overlay Node Underlay Link Overlay Link
Underlay Network Constraints (2/2) Flow Conservation Constraints Opportunistic constraints : information from to for virtual flow : traffic transmitted from node for : traffic demand of virtual flow : probability of successfully transmission to node in : total overlay traffic sends for over all paths
Underlay Network Constraints (2/2) j f1 f1 i k Opportunistic constraints : information from to for virtual flow : traffic transmitted from node for : traffic demand of virtual flow : probability of successfully transmission to node in : total overlay traffic sends for over all paths
Overlay <-> Underlay Constraints • The overlay traffic demand is imposed on the underlay • Native traffic • Coded traffic • The underlay honors the demand imposed by the overlay :total traffic from node : information from to for virtual flow : traffic transmitted from node for : traffic demand of virtual flow : total overlay traffic sends for over all paths
Interference Constraints • Interfering transmitters should not tx together • Overlay nodes broadcast over multiple overlay links simultaneously • Underlay nodes forward for a specific overlay link • Independent set constraints: nodes belonging to an independent set can be active simultaneously [Jain05]
O3: Revisiting the Big Picture... Overlay-underlay link mapping Topology details, traffic demands Overlay nodes and overlay paths Input O3Optimization Framework Output Underlay opportunistic forwarding Source Rate Limiting Overlay node forwarding Protocol Implementation
Protocol Implementation • Packet encoding and decoding algorithm • Flow source and destination • Forwarders
Packet Encoding and Decoding • divides packets into batches of size K • Intra-coded packet • Random linear combination of all packets from a batch • Inter-coded packet • Random linear combination of 2 different flows • Destination performs Gaussian elimination R1 • λP1+μP2 • νQ1 + ξQ2 • λP1+μP2+ νQ1 + ξQ2 A Q1 P1 B • κP1+θP2 ζQ1 + ρQ2 • κP1+θP2+ ζQ1 + ρQ2 Q2 P2 R2 • αP1+ßP2 • α‘Q1+ß’Q2 • γP1+δP2 • λ’P1+μ’P2+ ν’Q1 + ξ’Q2 • γ‘Q1+δ’Q2 • λ'P1+μ’P2 • νQ1+ ξ’Q2 • κ'P1+θ’P2+ ζ’Q1 + ρ’Q2 • κ'P1+θ’P2 • ζ’Q1+ ρ’Q2
Flow Source and Destination • Flow Source, • Never performs inter-flow coding • Includes all overlay paths the pkt may traverse • Multiple outstanding small-size batches • Support inter-flow coding • Reduce wait-time overhead • Flow Destination, • Generates ACK when entire batch is rx or threshold number of packets rx since last ACK
Forwarder Operation • Which flow-batch combination to forward? • Credits number of transmissions to generate [MORE] • Flow credits: tx rate for flow on a given overlay path • Batch credits: tx rate for batch within a given flow • Pick flow with max flow credit • Pick batch with max batch credit within the flow!
Evaluation Methodology • Qualnet Simulation for both (11a and 11b) • Protocols compared w/ O3 • Shortest-path routing (SPP) w/ ETX • SPP w/ rate limit (SPP-RL) • COPE; state of art inter-flow coding protocol • COPE w/ rate limit (COPE-RL) • MORE; state of art opportunistic routing protocol • O3-Intra (O3 w/o inter-flow coding) • Different topologies studied • Canonical, grid, random, testbeds ..
Canonical Topologies B 50% 50% 50% 100% 100% B A C A D C 50% 50% 2-hop Diamond O3 significantly outperforms all the other protocols!
Synthetic Topologies (802.11a) • 25 nodes placed in a random setting • UDP, bi-directional flows selected randomly • Loss distributed uniformly 0-30% (Low Loss) and 0-80% (High Loss) Throughput (Mbps) Throughput (Mbps) Number of flows Number of flows
Synthetic Topologies (802.11a) • O3 outperforms state-of-art protocols in all scenarios • Rate limiting is important: O3-Intra > MORE (18-286%), COPE-RL > COPE (6-239%), SPP-RL > SPP (45-211%) • High loss rate: Benefits of inter-flow coding decrease, OR increase Throughput (Mbps) Throughput (Mbps) Number of flows Number of flows
Testbed Topologies • Testbed traces depicting realistic scenarios • Random bi-directional flows • Roofnet (MIT) testbed – 35 nodes, UW testbed – 19 nodes UW (11a) Throughput (Mbps) Throughput (Mbps) Number of flows Number of flows
Testbed Topologies • O3 > O3-Intra (14-30%), COPE-RL (11-83%), SPP-RL (21- 46%), MORE (48-1000%), COPE (41-6100%), SPP (87-32600%) • O3-Intra > MORE ( 15-696%), COPE-RL > COPE (1-617%). UW (11a) Throughput (Mbps) Throughput (Mbps) Number of flows Number of flows
Future Work • Plan to explore other wireless applications where ‘overlay abstraction’ can be used • Solve linear constraints incrementally on slight network changes • Solve optimization based on decentralized information to enhance scalability
Conclusion • Optimize inter-flow coding in context of opportunistic routing • Jointly optimize opportunistic routing, rate limiting and inter-flow coding • Practical network protocol that achieves it • Reveal relative benefit of different schemes
Thank You! Questions? apurvb@cs.utexas.edu
Effects of Network Density Throughput (Mbps) Area (sq. m) 8 flows, high loss O3 out-performs the other protocols across all network densities
Complexity Analysis • Inputs • traffic demands, • link loss rates, and • conflict graph, • Outputs • Overlay credits, • Underlay credits,
Optimization Objective • Maximizing Total throughput where : set of traffic demands : -th flow’s throughput over path : set of paths used by -th flow Alternatively, we can also support other objectives, like proportional fairness, etc.
Interference Constraints • Overlay nodes broadcast over multiple overlay links simultaneously • Underlay nodes forward for a specific overlay link • Independent set constraints: nodes belonging to an independent set can be active simultaneously :total traffic from node : traffic transmitted from node for : traffic demand of virtual flow : total overlay traffic sends for over all paths
Using Credits in O3 (1/2) • Underlay Credits Fraction of useful information contained in each transmission from upstream node Amount of information received Amount of traffic received Redundancy ‘i’ should include to compensate loss to it’s forwarders Desirable sending rate Total information successfully delivered to all forwarders
Using Credits in O3 (2/2) • Underlay Credits • Overlay Credits • On receiving an native packet • On receiving an inter-coded packet