ECE 598HH: Special Topics in Wireless Networks and Mobile Systems

Similar documents
CE693: Adv. Computer Networking

CS 268: Computer Networking. Taking Advantage of Broadcast

Wireless Internet Routing. Learning from Deployments Link Metrics

Geographic and Diversity Routing in Mesh Networks

Routing in Wireless Mesh Networks. Feb. 22, 2006

Making Friends with Broadcast. Administrivia

Challenge: high throughput despite loss. Roofnet has >30% loss probability. 4 Computer Networks Course (15-744), CMU, 2012.

Wireless Mesh Networks

Typical rooftop view

Wireless (Internet) Routing. Opportunistic Routing, Network Coding, TCP over Wireless

Link Estimation and Tree Routing

XORs in the Air: Practical Wireless Network Coding

Outdoor Wi Fi Mesh Routing Protocol. Akshata Danivasa Alphonse Hansel Anthony Mani Pandian Vikas Iyer Vinesh Pallen

Architecture and Evaluation of an Unplanned b Mesh Network

DISCOVERING OPTIMUM FORWARDER LIST IN MULTICAST WIRELESS SENSOR NETWORK

Mobile Routing : Computer Networking. Overview. How to Handle Mobile Nodes? Mobile IP Ad-hoc network routing Assigned reading

High-Throughput Multicast Routing Metrics in Wireless Mesh Networks

Lecture 7: Flow Control"

The Importance of Being Opportunistic

Network Layer: Non-Traditional Wireless Routing Localization Intro

CCACK: Efficient Network Coding Based Opportunistic Routing Through Cumulative Coded Acknowledgments

Multicasting in ad hoc networks: Energy efficient

XORs in The Air: Practical Wireless Network Coding

Fast, Efficient, and Robust Multicast in Wireless Mesh Networks

ECE 598HH: Advanced Wireless Networks and Sensing Systems. Lecture 8: MIMO Part 1 Haitham Hassanieh

15-441: Computer Networking. Lecture 24: Ad-Hoc Wireless Networks

Review. Some slides are in courtesy of J. Kurose and K. Ross

Measurement and Analysis of Real-World Mesh Networks

Pacifier: High-Throughput, Reliable Multicast Without Crying Babies in Wireless Mesh Networks

Lecture 13: Routing in multihop wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 3, Monday

Lecture 7: Flow & Media Access Control"

CHAPTER 7 SIMULATION OBSERVATIONS

A Measurement Study of Multiplicative Overhead Effects in Wireless Networks

Lecture 10: Link layer multicast. Mythili Vutukuru CS 653 Spring 2014 Feb 6, Thursday

WIRELESS networks suffer from low throughput and

A High-Throughput Path Metric for Multi-Hop Wireless Routing

Multiple Access Protocols

WIRELESS mesh networks (WMNs) are increasingly

CSE 123: Computer Networks Alex C. Snoeren. HW 1 due NOW!

Performance Evaluation of Wireless Network Coding under Practical Settings

ExOR: Opportunistic Multi-Hop Routing for Wireless Networks

CAR: Coding-Aware Opportunistic Routing in Wireless Mesh Networks

Reminder: Datalink Functions Computer Networking. Datalink Architectures

Routing: Collection Tree Protocol. Original slides by Omprakash Gnawal

Computer Communications

3. Evaluation of Selected Tree and Mesh based Routing Protocols

CHAPTER 5 PROPAGATION DELAY

Outline. Lecture 16: Wireless Networking. Physical Layer (Layer 1) Ethernet: Wireless is Different. Attenuation Over Space

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

Lecture 4: CRC & Reliable Transmission. Lecture 4 Overview. Checksum review. CRC toward a better EDC. Reliable Transmission

Homework 1. Question 1 - Layering. CSCI 1680 Computer Networks Fonseca

Sanjit Zubin Biswas. Master of Science. at the. March Certified by... Robert Morris Associate Professor Thesis Supervisor

Wireless Challenges : Computer Networking. Overview. Routing to Mobile Nodes. Lecture 25: Wireless Networking

Direct Link Networks (II)

Wireless TCP Performance Issues

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

ECE697AA Lecture 3. Today s lecture

Symbol-level Network Coding for Wireless Mesh Networks

CCACK: Efficient Network Coding Based Opportunistic Routing Through. Cumulative Coded Acknowledgments

Lecture 19. Principles behind data link layer services Framing Multiple access protocols

Wireless MACs: MACAW/802.11

1158 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 18, NO. 4, AUGUST Coding-oblivious routing implies that routing decisions are not made based

An Analysis of Wireless Network Coding for Unicast Sessions: The Case for Coding-Aware Routing

ECSE 414 Fall 2014 Final Exam Solutions

Basic Reliable Transport Protocols

Last Lecture. Network Architecture: Layers. This Lecture. In the sending host (2) In the sending host

CS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

Efficiency through Eavesdropping: Link-layer Packet Caching

Design of Link and Routing Protocols for Cache-and- Forward Networks. Shweta Jain, Ayesha Saleem, Hongbo Liu, Yanyong Zhang, Dipankar Raychaudhuri

A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols. Broch et al Presented by Brian Card

DTN Interworking for Future Internet Presented by Chang, Dukhyun

Lecture 16: Wireless Networking

Reliable Transport I: Concepts and TCP Protocol

Opportunistic Overlay Multicast in Wireless Networks

Data Link Layer: Overview, operations

Computer Network Fundamentals Spring Week 3 MAC Layer Andreas Terzis

Energy-Efficient Forwarding Strategies for Geographic Routing in Lossy Wireless Sensor Networks

PRESENTED BY SARAH KWAN NETWORK CODING

A Novel Multi-ACK Based Data Forwarding Scheme in Wireless Sensor Networks

Announcements / Wireless Networks and Applications Lecture 9: Wireless LANs Wireless. Regular Ethernet CSMA/CD.

IPv6 Stack. 6LoWPAN makes this possible. IPv6 over Low-Power wireless Area Networks (IEEE )

Networking Applications

Many-to-Many Beam Alignment in Millimeter Wave Networks

Delay Tolerant Networks

High-throughput multicast routing metrics in wireless mesh networks

1-800-OVERLAYS: Using Overlay Networks to Improve VoIP Quality. Yair Amir, Claudiu Danilov, Stuart Goose, David Hedqvist, Andreas Terzis

Computer Networking Lecture 5 Data link Layer Access Control. Based on slides by Peter Steenkiste Copyright, Carnegie Mellon

ECE 4450:427/527 - Computer Networks Spring 2017

Outline. Multi-Channel Reliability and Spectrum Usage in Real Homes Empirical Studies for Home-Area Sensor Networks. Smart Grid

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

O3: Optimized Overlay-based Opportunistic Routing

Energy Balancing Routing Schemes for Low-Power Wireless Networks

Subject: Adhoc Networks

Multipath TCP with Network Coding for Wireless Mesh Networks

AN exam March

Mobile Transport Layer Lesson 10 Timeout Freezing, Selective Retransmission, Transaction Oriented TCP and Explicit Notification Methods

RECOMMENDATION ITU-R BT.1720 *

Wireless Sensor Networks, energy efficiency and path recovery

Implementation of Optimization of Latency in Wireless Mesh Network

Transcription:

ECE 598HH: Special Topics in Wireless Networks and Mobile Systems Lecture 21: Opportunistic Routing Haitham Hassanieh *These slides are courtesy of Dina Katabi 1

Lecture Outline Single Path Routing Opportunistic Routing with ExOR Intra-Flow Network Coding with MORE 2

Traditional Single Path Routing Represent the wireless network as a graph Two nodes have an edge if they can communicate (i.e., are within radio range) Each edge is labeled with a weight (where a smaller weight indicates a preferred edge) Run shortest path algorithm on the graph (e.g., Dijkstra) Produce the minimum weight path between every pair of nodes How do you pick the edge weights? i.e., what metric should shortest path minimize? 3

A straw-man route metric (1): Assign all edges the same weight à Minimize number of hops Reasoning: Links in route share radio spectrum Extra hops reduce throughput Throughput = 1 Throughput = 1/2 Throughput = 1/3 But is not good enough because different edges many have very different packet loss rates 4

Challenge: links are lossy and asymmetric Broadcast delivery ratios in both link directions. Very asymmetric link. Different links have different loss rates Further, the loss rate may be different in each direction 5

A straw-man route metric (2): Maximize bottleneck throughput B Delivery ratio = 100% 50% A C 51% 51% Bottleneck throughput: D A-B-C = 50% A-D-C = 51% Actual throughput: A-B-C : ABBABBABB = 33% A-D-C : AADDAADD = 25% Key Idea: In a shared medium links are not independent 6

A straw-man metric (3): Maximize end-to-end delivery ratio 100% B 51% A End-to-end delivery ratio: 50% C A-B-C = 51% A-C = 50% Actual throughput: A-B-C : ABBABBABB = 33% A-C : AAAAAAAA = 50% Key Idea: Again, links are not independent 7

Wireless routing metric: ETX Minimize total transmissions per packet (ETX, Expected Transmission Count ) Link throughput» 1/ Link ETX Delivery Ratio 100% 50% 33% Link ETX 1 2 3 Throughput 100% 50% 33% 8

Route ETX Route ETX = Sum of link ETXs Route ETX 1 2 2 3 5 Throughput 100% 50% 50% 33% 20% 11

ETX Properties ETX predicts throughput for short routes (1, 2, and 3 hops) ETX quantifies loss ETX quantifies asymmetry 12

ETX Caveats It is really hard to measure link quality/loss Ø Changes as a function of load Ø Changes with time ETX ignores differences in bit-rate and packet size ETT = ETX *(pkt_size/link-bit-rate) ETX ignores spatial re-use (i.e., assumes all links interfere) 13

Lecture Outline Single Path Routing Opportunistic Routing with ExOR Intra-Flow Network Coding with MORE 14

Context: Roofnet 1 kilometer Dense 802.11-based multi-hop network Goal is high-throughput in the presence of lossy links 15

Traditional routing packet A packet B packet src dst C Identify a route, forward over links Abstract radio to look like a wired link 16

Radios aren t wires A B 1 2 3 4 56 6 src dst C Every packet is broadcast Receptions are probabilistic and independent (Spatial diversity) 17

ExOR Idea: exploit probabilistic broadcast packet A B packet src dst C Decide who forwards after reception Goal: for each packet, receiver closest to the destination should forward Challenge: agree efficiently on which node should forward, and avoid duplicate transmissions 18

Why ExOR might increase throughput (1) Delivery Prob. 33% src 100% R 100% Delivery Prob. Delivery Prob. dst Traditional routing picks the path via R à on average 2 tx per packet Throughput @ 1 / # transmissions Traditional routing ignores that 33% of the packets make it to the destination in one transmission ExOR exploits these opportunistic receptions à 1.67 tx per packet 19

Why ExOR might increase throughput (2) src 25% Delivery Prob. 25% 25% 25% N1 N2 N3 N4 Delivery Prob. 100% 100% 100% 100% dst Traditional routing: 1 / 0.25 + 1 = 5 tx ExOR: 1 /(1 (1 0.25) 4 ) + 1 = 2.5 transmissions 20

The ExOR Protocol Sends packets in batches Order the nodes according to their distance to destination Go in rounds until all packets in batch are delivered In each round, Starting from the node closest to the destination, each node forwards the received packets that no node closer to the destination has received Nodes learn what other nodes have received using acksummaries 21

ExOR batching src tx: @ 100 12 N1 rx: 88 99 tx: @ 31 N2 rx: 57 85 tx: 57-23 @ 24 N3 N4 rx: 23 53 tx: 23 rx: 040 tx: 0 dst rx: 022 Challenge: finding the closest node to have rx d Send batches of packets for efficiency Node closest to the destination sends first Other nodes listen, send remaining packets in turn Repeat schedule until destination has whole batch 22

Reliable summaries tx: {2, 4,... 97, 98} summary: {1,2,4,6,... 97, 98, 99} src N2 N4 dst N1 N3 tx: {1, 6, 7... 91, 96, 99} summary: {1, 6, 7... 91, 96, 99} Repeat summaries in every data packet (as meta data) Summaries are cumulative, i.e., a summary reports what all downstream nodes rx d Repetition and accumulation ensure that upstream nodes learn what downstream nodes received and do not forward those packets 23

ExOR Evaluation Does ExOR increase throughput? When/why does it work well? 24

65 Roofnet node pairs 1 kilometer 25

65 Node pairs 1.0MByte file transfer 1 Mbit/s 802.11 bit rate 1 KByte packets Evaluation Details Traditional Routing 802.11 unicast with link-level retransmissions Hop-by-hop batching UDP, sending as MAC allows ExOR 802.11 broadcasts 100 packet batch size 26

ExOR: 2x overall improvement Cumulative Fraction of Node Pairs 1.0 0.8 0.6 0.4 0.2 ExOR Traditional 0 0 200 400 600 800 Throughput (Kbits/sec) Median throughputs: 240 Kbits/sec for ExOR, 121 Kbits/sec for Traditional 27

25 Highest throughput pairs 3 Traditional Hops 2.3x 2 Traditional Hops 1.7x 1 Traditional Hop 1.14x Throughput (Kbits/sec) 1000 800 600 400 200 0 ExOR Traditional Routing Node Pair 28

25 Lowest throughput pairs Throughput (Kbits/sec) 1000 800 600 400 200 0 ExOR Traditional Routing Longer Routes 4 Traditional Hops 3.3x Node Pair Gain is typically higher for the worst node pairs 29

ExOR uses links in parallel Traditional Routing 3 forwarders 4 links ExOR 7 forwarders 18 links 30

Limitations of ExOR Does not account for the fact that different links can support different bitrates Batching is ineffective with short flows or realtime traffic Only one node can transmit at any point in time, even if no contention occurs between nodes Requires global coordination of the nodes in the network 31

Lecture Outline Single Path Routing Opportunistic Routing with ExOR Intra-Flow Network Coding with MORE 32

Sender Is in a Bad Spot src 50% Loss 50% 50% R1 R2 R3 0% Loss 0% 0% dst 50% 0% R4 Best single path à Prob. of loss 50% 33

Use Opportunistic Routing src 50% Loss 50% 50% R1 R2 R3 0% Loss 0% 0% dst 50% 0% R4 Best single path à Prob. of loss 50% Opportunistic Routing can do better Any router can forward packet à Prob. of loss 0.5 4 = 6% 34

Challenge Overlap in received packets à Routers forward duplicates 35

Challenge Overlap in received packets à Routers forward duplicates R1 P 1 P 2 P 1 P 2 src dst P 10 R2 P 1 P 2 ExOR imposes a global scheduler: Nodes have to agree on who transmits what Only one nodetransmits at a time, others listen 36

Limitations of ExOR Dst Src Learning who received what à too much overhead Forcing only one transmitter at a time à prevents spatial reuse of the medium 37

Limitations of ExOR Dst Src Learning who received what à too much overhead Forcing only one transmitter at a time à prevents spatial reuse of the medium Can we eliminate these problems? 38

Solution: Random Network Coding Each router forwards random combinations of packets 39

Solution: Random Network Coding Each router forwards random combinations of packets P 1 P 2 R1 3 P 1 + 7 P 2 src dst P 1 P 2 R2 2 P 1 + 4 P 2 Randomness prevents duplicates No need to know who received what Can exploit spatial reuse 40

Network Coding Also Benefits Multicast P 1 P 2 P 3 P 4 src 8 P 1 + 6 P 2 + P 3 + P 4 7 P 1 +2 P 2 +3 P 3 +4 P 4 dst1 dst2 dst3 P 1 P1 P1 P 2 P 2 P2 P3 P 3 P 3 P4 P4 Without coding à source has to retransmit all 4 packets With network coding à 2 packets are sufficient P 4 41

MORE An opportunistic routing protocol that reduces overhead and enables spatial reuse It is based on network coding, where routers code packets together before forwarding them» 42

How Does MORE Work? Source sends packets in batches Forwarders keep all heard (innovative) packets in a buffer Nodes transmit linear combinations of buffered packets a P1 + b P2 + c P3 = a,b,c src A B dst P1 P2 P3 4,1,3 0,2,1 4,1,3 4 P1 + 1 P2 + 3 P3 = 4,1,3 0 P1 + 2 P2 + 1 P3 = 0,2,1 43

How Does MORE Work? Source sends packets in batches Forwarders keep all heard (innovative) packets in a buffer Nodes transmit linear combinations of buffered packets a P1 + b P2 + c P3 = a,b,c src A B dst P1 P2 P3 4,1,3 0,2,1 4,1,3 8,4,7 8,4,7 2 4,1,3 + 1 0,2,1 = 8,4,7 44

How Does MORE Work? Source sends packets in batches Forwarders keep all heard (innovative) packets in a buffer Nodes transmit linear combinations of buffered packets Destination decodes once it receives enough combinations Say batch is 3 packets 1 5 4 P1 + 3 P2 + 2 P3 = P1 + 4 P2 + 5 P3 = P1 + 5 P2 + 5 P3 = 1,3,2 5,4,5 4,5,5 Decoding is solving linear equations Once it decoded a batch, the destination acks the batch and the source moves to next batch 45

Dealing with Interference MORE uses the 802.11 MAC as it is In contrast to ExOR where a node has to wait for downstream nodes to deliver their packets, any node that senses the medium available can transmit Thus, it allows spatial reuse 46

But How Do We Get the Most Throughput? Naïve approach transmits whenever it can Inefficient L A If A and B have same information, it is more efficient for B to send it B dst Need to control how much a node transmits 47

Probabilistic Forwarding e1 e2 Src P1 P2 0% Loss A 50% Loss B e1 dst 48

Probabilistic Forwarding How many packets should I forward? 50% of buffer e1 e2 A dst Src P1 P2 0% Loss 50% Loss B e1? Need to know the fraction of overlap, not which packets overlap 49

Probabilistic Forwarding e1 e2 Src P1 P2 0% Loss Pr = 0.5 A 50% Loss Pr = 1 B e1 dst Compute forwarding probabilities without coordination using loss rates 50

ExOR Can t Do It P1 P2 Pr = 0.5 A P1 dst Without coding duplicate probability is 50% Pr = 1 B P1 51

Testbed 20-node testbed over three floors 52

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

Does MORE Improve Wireless Throughput? Avg. Throughput over 180 src-dst pairs [pkts/s] 80 ExOR MORE 40 Traditional MORE s throughput is double current routing and is 22% better than ExOR 54

Throughput of All Source-Destination Pairs CDF of 180 source-destination pairs 1 0.8 0.6 0.4 0.2 0 Traditional ExOR MORE 0 50 100 150 200 Throughput [packets/s] 55

0.6 Zoom in on the worst 10% 0.5 0.4 0.3 0.2 0.1 0 5x Traditional ExOR MORE 0 50 100 Similarly to ExOR, Throughput the gains [packets/s] are large for the worst connections MORE 56

Network Coding Requires less coordination No scheduler More flexibility One framework for unicast and multicast More throughput 22% more than ExOR and 95% more than current shortest path routing 57

Limitations of MORE Similarly to ExOR, does not deal with the fact that different links can support different bit rates Batching is undesirable though the batch size is smaller in MORE 58