1 / 33

Exploiting Opportunism in Wireless Networks

Exploiting Opportunism in Wireless Networks. Aruna Balasubramanian Guest Lecture, CS 653 (Some slides borrowed from the ExOr and MORE presentations at SigComm 05 and 07). Broadcast medium makes the design of a wireless MAC protocol challenging. 802.11 MAC uses CSMA/CA

stamos
Download Presentation

Exploiting Opportunism in Wireless Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Exploiting Opportunism in Wireless Networks Aruna Balasubramanian Guest Lecture, CS 653 (Some slides borrowed from the ExOr and MORE presentations at SigComm 05 and 07)

  2. Broadcast medium makes the design of a wireless MAC protocol challenging • 802.11 MAC uses CSMA/CA • RTS/CTS used to avoid hidden terminals. • RTS/CTS does not always work • Cannot always stop collisions • Can stop transmissions even if will not cause collisions

  3. But, the broadcast medium also provides an opportunity 1 3 Intended next hop 4 2 How to exploit overheard packets opportunistically? Why, How and When? Multiple nodes overhear a packet. Any one of them can forward the packet to the next hop

  4. ExOR: Opportunistic routing for mesh networks Roofnet 1 kilometer Dense 802.11-based mesh Goal is maximize high-throughput  Minimize the number of transmissions

  5. Why is exploiting opportunism useful? (1 of 2) N1 25% 100% N2 25% 100% src dst 100% 25% N3 100% 25% N4 Assumption: Receiving probabilities are independent Traditional routing: 1/0.25 + 1 = 5 transmissions ExOR: 1/(1 – (1 – 0.25)4) + 1 = 2.5 transmissions

  6. Why is exploiting opportunism useful? (2 of 2) src N1 N2 N3 N4 N5 dst 75% 50% 25% • Best traditional route over 50% hops: 3(1/0.5) = 6 tx • Exploit opportunism to leverage lucky long receptions Assumption: Probability falls off gradually with distance

  7. ExOR design N2 N4 src dst N1 N3 • Goal: The closest node to the destination that overhears a packet, should forward the packet • Questions • What is “closest”? • When does a node decide to forward? • When should a node stop transmitting?

  8. ExOR questions Delivery rate 0.6 ETX = 1.6 N2 N4 src dst N1 N3 Delivery rate 0.4 ETX = 2.5 • When should a node forward an overheard packet? • Source decides on a forwarding list • Each node in the forwarding list has a timer to start forwarding • Packets are batched to amortize overhead of coordination • What is “closest”? • Using an ETX-like metric

  9. rx: 0 rx: 57 rx: 0 rx: 88 rx: 23 When to forward? rx: 45 tx:0 N2 N4 rx: 18 tx:100 tx:57 -23  34 tx:12 src dst N1 N3 tx: 31 tx:23 • Source estimates ETX between each node and the destination • Source decides on a list of forwarders and prioritizes the list. Let the list be (dst, N4, N3, N2, N1) • Node closest to the dst sends the overheard packet first • Other nodes listen, send remaining packets in turn

  10. When should a node stop transmitting A batch map is sent with each packet, marking nodes that have overheard the packet Packet 1: N1, N4 Packet 2: N1, N3 . . Packet 100: N1 If all packets in a batch are heard by some higher priority nodes, the node stops sending

  11. RoofNet results: 25 node-pairs with highest throughput 3 Traditional Hops 2.3x 2 Traditional Hops 1.7x 1 Traditional Hop 1.14x 1000 ExOR TraditionalRouting 800 600 Throughput (Kbits/sec) 400 200 0 Node Pair

  12. ExOR challenges Uses a structured scheduler with tight coupling between MAC and routing can hurt performance Does not work well when delay is a metric. Does not work well when the path loss may vary rapidly

  13. Problems with structured scheduler Hurts performance by disallowing spatial reuse Global coordination (by overhearing) is bound to cause errors Cannot easily extend to other traffic

  14. MORE: Network coding P1 R1 αP1+ßP2 P2 src dst P1 R2 γP1+δP2 P2 Similar to ExOR, except no tight coupling between MAC and routing Each router routes a random combination of packets

  15. How network coding works • Use matrix inversion to retrieve the packets • To decode k packets, you need k linear combinations Linear algebra

  16. src A B dst P1 P2 P3 4 a 0 + 2 + 1 + b + c + 1 + 3 = = = P1 P1 P1 P2 P2 P2 P3 P3 P3 a,b,c 0,2,1 4,1,3 MORE protocol • Source sends packets in batches • Forwarders keep all heard packets in a buffer • Nodes transmit linear combinations of buffered packets 0,2,1 4,1,3 4,1,3 0,2,1

  17. src A B dst P1 P2 P3 a + b + c = P1 P2 P3 a,b,c 2 2 + 1 + 1 = = 4,1,3 4,1,3 8,4,7 16,6,13 8,4,7 0,2,1 MORE • Source sends packets in batches • Forwarders keep all heard packets in a buffer • Nodes transmit linear combinations of buffered packets 0,2,1 4,1,3 4,1,3 8,4,7 0,2,1 8,4,7 16,6,13 16,6,13

  18. MORE details • When should a node stop forwarding? • Goal: limit the expected number of transmissions • When at least one node closer to the destination (in terms of ETX) receives

  19. Testbed • 20-node testbed over three floors Avg. loss 27%

  20. Does MORE Improve Wireless Throughput? Avg. Throughput over 180 src-dst pairs [pkts/s] MORE 80 ExOR Current 40 • MORE’s throughput is • 2x better than current routing • 22% better than ExOR

  21. When does ExOR not work? (revisited) • When tight coupling between MAC and routing can hurt performance • MORE solves this problem • When delay is a metric. • When path loss values may change frequently.

  22. Next step • Can we exploit opportunism • when delay is important and applications cannot tolerate batching • when loss rates can change rapidly • ViFi: Link level handoff protocol that exploits opportunism • Improves performance of interactive, delay-sensitive applications such as VoIP and TCP • Can be used for vehicular networks with rapidly changing loss rates

  23. ViFi: Target environment Internet • Challenge: • Packet loss between vehicle and the AP can change rapidly. • It is difficult to predict when to handoff

  24. Handoff policies Today’s 802.11 Exploiting opportunism

  25. VanLAN Testbed

  26. Why today’s handoff is bad Disruption 802.11 handoff Ideal opportunism experiment AP quality can change in short periods of time

  27. Leveraging overhearing in a decentralized environment Internet ViFi solution: Use probabilistic relaying • Goal 1: Few relays • Since bandwidth may be limited • To reduce collision • Goal 2: Fast and effective coordination

  28. ViFi protocol set up • Vehicle chooses anchor AP • Anchor responsible for vehicle’s packets • Vehicle chooses a set of APs in range to be auxiliaries • e.g., B, C and D can be chosen as auxiliaries • If B, C, or D overhears the packet, it will probabilistically forward to A • ViFi needs to coordinate between B, C and D A Internet B C D

  29. ViFi protocol • Source transmits a packet • If destination receives, it transmits an ack • If auxiliary overhears packet but not ack, it probabilistically relays to destination • If destination received relay, it transmits an ack • If no ack within retransmission interval, source retransmits Source Dest Downstream: Anchor to vehicle A A Dest B B D C D Source C Upstream: Vehicle to anchor

  30. Estimating relaying probabilities A Source Dest B C Tradeoff between Having too many relays : overload the network Having too few relays: No relaying

  31. Guidelines for probability computation • The probability should not be too high, because then there will be collisions • The probability should not be too low, because then opportunism will not be exploited • Probability computation should take into account the decisions made by other nodes • Goal: Make a collective relaying decision such that the sum expected number of relays by all auxiliaries is 1 • How to make a collective decision without coordination?

  32. How does B compute its relaying probability RB? • Step 1: • (a) Estimate prob that A is considering relaying • CA = P(A heard the packet) . P(A did not hear ack) • (b) Expected relays: E(A) = CA. RA • Step 2: • Solve the equation  E(X) = 1, for all neighbors • Step 3: • Set Rx proportional to P(X can deliver the packet) CA.RA + CB.RB + Cc.RC = 1 where RA, RB are Rc unknowns

  33. VanLAN results: ViFi improves VoIP performance • Workload: G.729 codec. 20-byte packet every 20 ms > 100% ViFi Today’s WiFi Metric: Average length of call before disruption (sec)

More Related