15-744: Computer Networking L-21 Wireless Broadcast.

Slides:



Advertisements
Similar presentations
Mobility Increase the Capacity of Ad-hoc Wireless Network Matthias Gossglauser / David Tse Infocom 2001.
Advertisements

XORs in The Air: Practical Wireless Network Coding
Analog Network Coding Sachin Katti Shyamnath Gollakota and Dina Katabi.
Networking with Wi-Fi like Connectivity Victor Bahl, Ranveer Chandra, Thomas Moscibroda, Microsoft Research Rohan Murty*, Matt Welsh Harvard University.
White-Space Networking Nick Feamster CS 6250 Fall 2011 (slides from Rohan Murty)
1 XORs in the Air: Practical Wireless Network Coding Sachin Katti HariharanRahul, WenjunHu, Dina Katabi, Muriel Medard, Jon Crowcroft Presented by Lianmu.
XORs in the air: Practical Wireless Network Coding Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft SIGCOMM ‘06 Presented.
Wireless in the real world Gabriel Weisz October 8, 2010.
Radio Propagation Spring 07 CS 527 – Lecture 3. Overview Motivation Block diagram of a radio Signal Propagation  Large scale path loss  Small scale.
Cool Topics in Networking CS144 Review Session 8 November 20, 2009 Samir Selman.
ExOR:Opportunistic Multi-Hop Routing For Wireless Networks
1 Cross-Layer Design for Wireless Communication Networks Ness B. Shroff Center for Wireless Systems and Applications (CWSA) School of Electrical and Computer.
Exploiting Opportunism in Wireless Networks Aruna Balasubramanian Guest Lecture, CS 653 (Some slides borrowed from the ExOr and MORE presentations at SigComm.
Opportunistic Routing in Multi-hop Wireless Networks Sanjit Biswas and Robert Morris MIT CSAIL Presented by: Ao-Jan Su.
MIMO-CAST: A CROSS-LAYER AD HOC MULTICAST PROTOCOL USING MIMO RADIOS Soon Y. Oh*, Mario Gerla*, Pengkai Zhao**, Babak Daneshrad** *Computer Science Dept.,
Opportunistic Routing in Multi-hop Wireless Networks Sanjit Biswas and Robert Morris MIT CSAIL
ExOR: Opportunistic Multi-Hop Routing For Wireless Networks Sanjit Biswas & Robert Morris.
Making Friends with Broadcast CMU David Andersen.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
5-1 Data Link Layer r What is Data Link Layer? r Wireless Networks m Wi-Fi (Wireless LAN) r Comparison with Ethernet.
1 Algorithms for Bandwidth Efficient Multicast Routing in Multi-channel Multi-radio Wireless Mesh Networks Hoang Lan Nguyen and Uyen Trang Nguyen Presenter:
SourceSync: A Distributed Architecture for Sender Diversity Hariharan Rahul Haitham Hassanieh Dina Katabi.
ExOR: Opportunistic Multi-Hop Routing for Wireless Networks Sigcomm 2005 Sanjit Biswas and Robert Morris MIT Computer Science and Artificial Intelligence.
Ad Hoc Wireless Routing COS 461: Computer Networks
Networked Systems Practicum Lecture 9 – Next Gen Radio Technologies 1.
Efficient Network-Coding-Based Opportunistic Routing Through Cumulative Coded Acknowledgments Dimitrios Koutsonikolas, Chih-Chun Wang and Y. Charlie Hu.
Wireless Medium Access. Multi-transmitter Interference Problem  Similar to multi-path or noise  Two transmitting stations will constructively/destructively.
Signal Propagation Propagation: How the Signal are spreading from the receiver to sender. Transmitted to the Receiver in the spherical shape. sender When.
Ethernet. Problem In an Ethernet, suppose there are three stations very close to each other, A, B and C. Suppose at time 0, all of them have a frame to.
CSE 6590 Fall 2010 Routing Metrics for Wireless Mesh Networks 1 4 October, 2015.
Power Save Mechanisms for Multi-Hop Wireless Networks Matthew J. Miller and Nitin H. Vaidya University of Illinois at Urbana-Champaign BROADNETS October.
Wireless Sensor Networks COE 499 Energy Aware Routing
Wireless Network Coding Martin Xu. Outline Introduction New Solutions – COPE – ANC Conclusions.
Pushing the Limits of Wireless Networks Prof. Dina Katabi Jan 9, 2006.
Wireless and Mobility The term wireless is normally used to refer to any type of electrical or electronic operation which is accomplished without the use.
CSE 6590 Fall 2009 Routing Metrics for Wireless Mesh Networks 1 12 November, 2015.
15-744: Computer Networking L-12 Wireless Broadcast.
Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi.
Introduction to Wireless Networks Dina Katabi & Sam Madden MIT – – Spring 2014.
Wi-Fi. Basic structure: – Stations plus an access point – Stations talk to the access point, then to outside – Access point talks to stations – Stations.
Space Time Codes. 2 Attenuation in Wireless Channels Path loss: Signals attenuate due to distance Shadowing loss : absorption of radio waves by scattering.
a/b/g Networks Routing Herbert Rubens Slides taken from UIUC Wireless Networking Group.
SMAC: An Energy-efficient MAC Protocol for Wireless Networks
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
Wireless Networks Standards and Protocols & x Standards and x refers to a family of specifications developed by the IEEE for.
WLAN.
MIMO: Challenges and Opportunities Lili Qiu UT Austin New Directions for Mobile System Design Mini-Workshop.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
1 UFlood: High-Throughput Wireless Flooding Jayashree Subramanian Collaborators: Robert Morris, Ramakrishna Gummadi, and Hari Balakrishnan.
Optimization Problems in Wireless Coding Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
Trading Structure for Randomness in Wireless Opportunistic Routing Szymon Chachulski, Michael Jennings, Sachin Katti and Dina Katabi MIT CSAIL SIGCOMM.
Discovering Sensor Networks: Applications in Structural Health Monitoring Summary Lecture Wireless Communications.
1 A Coordinate-Based Approach for Exploiting Temporal-Spatial Diversity in Wireless Mesh Networks Hyuk Lim Chaegwon Lim Jennifer C. Hou MobiCom 2006 Modified.
The Importance of Being Opportunistic Sachin Katti Dina Katabi, Wenjun Hu, Hariharan Rahul, and Muriel Medard.
Routing Metrics for Wireless Mesh Networks
Routing Metrics for Wireless Mesh Networks
White Space Networking with Wi-Fi like Connectivity
Xors in the air Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft.
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
MIMO III: Channel Capacity, Interference Alignment
15-744: Computer Networking
Routing Metrics for Wireless Mesh Networks
Hidden Terminal Decoding and Mesh Network Capacity
Network: Non Traditional Routing
Opportunistic Routing in Multi-hop Wireless Networks
Taking Advantage of Broadcast
ExOR:Opportunistic Multi-Hop Routing For Wireless Networks
ExOR: Opportunistic Multi-hop routing for Wireless Networks
Opportunistic Routing in Multi-hop Wireless Networks*
Impact of transmission errors on TCP performance
Presentation transcript:

15-744: Computer Networking L-21 Wireless Broadcast

Overview Deployment patterns Reaction to interference Interference mitigation Mesh networks Architecture Measurements White space networks 2

3 Higher Frequency Wi-Fi (ISM)Broadcast TV

dbm Frequenc y “White spaces” 470 MHz 700 MHz What are White Spaces? 4 0 MHz 7000 MHz TV ISM (Wi-Fi) are Unoccupied TV Channels White Spaces Wireless Mic TV Stations in America 50 TV Channels Each channel is 6 MHz wide FCC Regulations* Sense TV stations and Mics Portable devices on channels

The Promise of White Spaces 5 0 MHz 7000 MHz TV ISM (Wi-Fi) Wireless Mic More Spectrum Longer Range Up to 3x of g at least 3 - 4x of Wi-Fi

White Spaces Spectrum Availability Differences from ISM(Wi-Fi) 6 Fragmentation Variable channel widths Each TV Channel is 6 MHz wide  Use multiple channels for more bandwidth Spectrum is Fragmented

White Spaces Spectrum Availability Differences from ISM(Wi-Fi) 7 Fragmentation Variable channel widths Location impacts spectrum availability  Spectrum exhibits spatial variation Cannot assume same channel free everywhere Spatial Variation TV Tower

White Spaces Spectrum Availability Differences from ISM(Wi-Fi) 8 Fragmentation Variable channel widths Incumbents appear/disappear over time  Must reconfigure after disconnection Spatial Variation Cannot assume same channel free everywhere Temporal Variation Same Channel will not always be free Any connection can be disrupted any time

Channel Assignment in Wi-Fi 9 Fixed Width Channels  Optimize which channel to use

Spectrum Assignment in WhiteFi Spatial Variation  BS must use channel iff free at client Fragmentation  Optimize for both, center channel and width Spectrum Assignment Problem Goal Maximize Throughput Include Spectrum at clients Assign Center Channel Width &

Accounting for Spatial Variation  = 

Intuition 12 BS Use widest possible channel Intuition Limited by most busy channel But  Carrier Sense Across All Channels  All channels must be free  ρ BS (2 and 3 are free) = ρ BS (2 is free) x ρ BS (3 is free) Tradeoff between wider channel widths and opportunity to transmit on each channel

Discovering a Base Station 13 Can we optimize this discovery time? Discovery Time =  (B x W) How does the new client discover channels used by the BS? BS and Clients must use same channels Fragmentation  Try different center channel and widths

SIFT, by example 14 ADC SIFT Time Amplitude 10 MHz5 MHz SIFT Pattern match in time domain Does not decode packets DataACK SIFS

Taking Advantage of Broadcast Opportunistic forwarding Network coding Assigned reading with Multiple Antennas for Dummies XORs In The Air: Practical Wireless Network Coding ExOR: Opportunistic Multi-Hop Routing for Wireless Networks 15

Outline MIMO Opportunistic forwarding (ExOR) Network coding (COPE) Combining the two (MORE) 16

How Do We Increase Throughput in Wireless? Wired world: pull more wires! Wireless world: use more antennas?

MIMO Multiple In Multiple Out N x M subchannels Fading on channels is largely independent Assuming antennas are separate ½ wavelength or more Combines ideas from spatial and time diversity, e.g. 1 x N and N x 1 Very effective if there is no direct line of sight Subchannels become more independent N transmit antennas M receive antennas

Why So Exciting? Method SISO Diversity (1xN or Nx1) Diversity (NxN) Multiplexing Capacity B log 2 (1 +  ) B log 2 (1 +  ) B log 2 (1 +   ) NB log 2 (1 +  )

No diversity: i x p T x h x p R = o Adding multi-path: i x p T x h(t) x p R = o TR TR Simple Channel Model

Transmit and Receive Diversity Revisited Receive diversity: i x H x P R = o Transmit diversity: i x P T x H = o TR TR

MIMO How Does it Work? Coordinate the processing at the transmitter and receiver to overcome channel impairments Maximize throughput or minimize interference Generalization of earlier techniques Combines maximum ratio combining at transmitter and receiver with sending of multiple data streams TR Channel Matrix Precoding from Nx1 Combining from 1xN I x P T x H x P R = O

An Example of Space Coding

A Math View

How do we pick P R ?  Need “Inverse” of H: H -1 Equivalent of nulling the interfering possible (zero forcing) Only possible if the paths are completely independent Noise amplification is a concern if H is non-invertible – its determinant will be small Minimum Mean Square Error detector balances two effects Effect of transmissionR = H * C + N M MxN N M DecodingO = P R * R C = I D DxM M N N ResultsO = P R * H * I + P R * N Direct-Mapped NxM MIMO

How do we pick P R and P T ? Effect of transmissionR = H * C + N M MxN N M Coding/decodingO = P R * R C = P T * I D DxM M N NxD D ResultsO = P R * H * P T * I + P R * N Precoded NxM MIMO

How do we pick P R and P T ? Singular value decomposition of H = U * S * V U and V are unitary matrices – U H *U = V H *V = I S is diagonal matrix Set P R and P T to U H and V H Similar to approach for transmit and receive MRC Equations suggest that we can view MIMO as a set of independent paths with strength given by the singular values of S Suggests giving more power to the stronger paths Water filling algorithm allocates power while maximizing throughput ResultsO = P R * H * P T * I + P R * N Precoded NxM MIMO

MIMO Discussion Need channel matrix H: use training with known signal MIMO is used in n in the 2.4 GHz band Can use two of the non-overlapping “WiFi channels” Raises lots of compatibility issues Potential throughputs of 100 of Mbps Focus is on maximizing throughput between two nodes Is this always the right goal?

Outline MIMO Opportunistic forwarding (ExOR) Network coding (COPE) Combining the two (MORE) 29

packet Initial Approach: Traditional Routing Identify a route, forward over links Abstract radio to look like a wired link src AB dst C 30

Radios Aren’t Wires Every packet is broadcast Reception is probabilistic src AB dst C 31

packet Exploiting Probabilistic Broadcast src AB dst C packet Decide who forwards after reception Goal: only closest receiver should forward Challenge: agree efficiently and avoid duplicate transmissions 32

Why ExOR Might Increase Throughput Best traditional route over 50% hops: 3( 1 / 0.5 ) = 6 tx Throughput  1 / # transmissions ExOR exploits lucky long receptions: 4 transmissions Assumes probability falls off gradually with distance srcdstN1N2N3N4 75% 50% N5 25% 33

Why ExOR Might Increase Throughput Traditional routing: 1 / = 5 tx ExOR: 1 / (1 – (1 – 0.25) 4 ) + 1 = 2.5 transmissions Assumes independent losses N1 srcdst N2 N3 N4 25% 100% 34

ExOR Batching Challenge: finding the closest node to have rx’d Send batches of packets for efficiency Node closest to the dst sends first Other nodes listen, send remaining packets in turn Repeat schedule until dst has whole batch src N3 dst N4 tx: 23 tx:  24 tx:  8 tx: 100 rx: 23 rx: 57 rx: 88 rx: 0 tx: 0 tx:  9 rx: 53 rx: 85 rx: 99 rx: 40 rx: 22 N1 N2 35

Reliable Summaries Repeat summaries in every data packet Cumulative: what all previous nodes rx’d This is a gossip mechanism for summaries src N1 N2 N3 dst N4 tx: {1, 6, , 96, 99} tx: {2, 4, , 98} batch map: {1,2,6,... 97, 98, 99} batch map: {1, 6, , 96, 99} 36

Priority Ordering Goal: nodes “closest” to the destination send first Sort by ETX metric to dst Nodes periodically flood ETX “link state” measurements Path ETX is weighted shortest path (Dijkstra’s algorithm) Source sorts, includes list in ExOR header src N1 N2 N3 dst N4 37

Using ExOR with TCP Node Proxy ExOR Gateway Web Proxy Client PC Web Server TCP ExOR Batches (not TCP) Batching requires more packets than typical TCP window 38

Discussion Exploits radio properties, instead of hiding them Scalability? Parameters – 10%? Overheads? 39

Outline MIMO Opportunistic forwarding (ExOR) Network coding (COPE) Combining the two (MORE) 40

Background Famous butterfly example: All links can send one message per unit of time Coding increases overall throughput 41

Background Bob and Alice Relay Require 4 transmissions 42

Background Bob and Alice Relay Require 3 transmissions XOR 43

Coding Gain Coding gain = 4/

Throughput Improvement UDP throughput improvement ~ a factor 2 > 4/3 coding gain

Coding Gain: more examples Without opportunistic listening, coding [+MAC] gain=2N/(1+N)  2. With opportunistic listening, coding gain + MAC gain  ∞

COPE (Coding Opportunistically) Overhear neighbors’ transmissions Store these packets in a Packet Pool for a short time Report the packet pool info. to neighbors Determine what packets to code based on the info. Send encoded packets 47

Opportunistic Coding B’s queueNext hop P1A P2C P3C P4D CodingIs it good? P1+P2Bad (only C can decode) P1+P3Better coding (Both A and C can decode) P1+P3+P4Best coding (A, C, D can decode) B A C D P4 P3 P3 P1 P4 P3 P2 P1 P4 P1

Packet Coding Algorithm When to send? Option 1: delay packets till enough packets to code with Option 2: never delaying packets -- when there’s a transmission opportunity, send packet right away Which packets to use for XOR? Prefer XOR-ing packets of similar lengths Never code together packets headed to the same next hop Limit packet re-ordering XORing a packet as long as all its nexthops can decode it with a high enough probability 49

Packet Decoding Where to decode? Decode at each intermediate hop How to decode? Upon receiving a packet encoded with n native packets find n-1 native packets from its queue XOR these n-1 native packets with the received packet to extract the new packet 50

Prevent Packet Reordering Packet reordering due to async acks degrade TCP performance Ordering agent Deliver in-sequence packets immediately Order the packets until the gap in seq. no is filled or timer expires 51

Summary of Results Improve UDP throughput by a factor of 3-4 Improve TCP by wo/ hidden terminal: up to 38% improvement w/ hidden terminal and high loss: little improvement Improvement is largest when uplink to downlink has similar traffic Interesting follow-on work using analog coding 52

Reasons for Lower Improvement in TCP COPE introduces packet re-ordering Router queue is small  smaller coding opportunity TCP congestion window does not sufficiently open up due to wireless losses TCP doesn’t provide fair allocation across different flows 53

Discussion Wired vs. wireless coding Traffic patterns Scale 54

Outline MIMO Opportunistic forwarding (ExOR) Network coding (COPE) Combining the two (MORE) 55

Best single path  loss prob. 50% In opp. routing [ExOR’05], any router that hears the packet can forward it  loss prob = 6% Use Opportunistic Routing Opportunistic routing promises large increase in throughput src R1 dst R4 R2 R3 50% 100% 50% 100% 50% 56

src R1 dst But Overlap in received packets  Routers forward duplicates R2 P1P1 P2P2 P 10 P1P1 P2P2 P1P1 P2P2 57

ExOR State-of-the-art opp. routing, ExOR imposes a global scheduler: Requires full coordination; every node must know who received what Only one node transmits at a time, others listen 58

Global coordination is too hard One transmitter  You lost spatial reuse! src dst Global Scheduling 59

MORE (Sigcomm07) Opportunistic routing with no global scheduler and no coordination Uses random network coding Experiments show that randomness outperforms both current routing and ExOR 60

src R1 dst Go Random 61 R2 α P 1 + ß P 2 γ P1+ δ P2γ P1+ δ P2 Each router forwards random combinations of packets Randomness prevents duplicates No scheduler; No coordination Simple and exploits spatial reuse P1P1 P2P2 P1P1 P2P2

src dst1dst2dst3 P1P1 P2P2 P3P3 P4P4 P1P1 P2P2 P2P2 P3P3 P3P3 P4P4 P3 P4 P1 P4 P1 P2 Random Coding Benefits Multicast Without coding  source retransmits all 4 packets 62

src dst1dst2dst3 P1P1 P2P2 P3P3 P4P4 P1P1 P2P2 P2P2 P3P3 P3P3 P4P4 8 P1+5 P2+ P3+3 P48 P1+5 P2+ P3+3 P4 7 P 1 +3 P 2 +6 P 3 + P 4 P3 P4 P1 P4 P1 P2 Random Coding Benefits Multicast Without coding  source retransmits all 4 packets With random coding  2 packets are sufficient Random combinations 63

MORE Source sends packets in batches Forwarders keep all heard packets in a buffer Nodes transmit linear combinations of buffered packets srcABdst P1 P2 P3 P1P2P3 =+ b+ ca a,b,c 4,1,3 0,2,1 4,1,3 P1P2P3 = ,1,3P1P2P3 = ,2,1 64

srcABdst P1 P2 P3 P1P2P3 =+ b+ ca a,b,c 4,1,3 0,2,1 4,1,3 = ,2,1 8,4,74,1,3 8,4,7 MORE Source sends packets in batches Forwarders keep all heard packets in a buffer Nodes transmit linear combinations of buffered packets 65

Destination decodes once it receives enough combinations o Say batch is 3 packets 1,3,2 5,4,5 4,5,5 P1P2P3 = P1P2P3 = P1P2P3 =+ 5 4 Destination acks batch, and source moves to next batch MORE Source sends packets in batches Forwarders keep all heard packets in a buffer Nodes transmit linear combinations of buffered packets 66

Summary Wireless behavior is not all bad Next lecture: Security: DDoS and Traceback Readings: Practical Network Support for IP Traceback Amplification Hell: Revisiting Network Protocols for DDoS Abuse 67

But How Do We Get the Most Throughput? Naïve approach transmits whenever allows If A and B have same information, it is more efficient for B to send it Need a Method to Our Madness A B dst 68

Probabilistic Forwarding 69 A B dst

Probabilistic Forwarding 70 e1e1 e1e1 e2e2 A B dst Src P1P1 P2P2 Loss rate 50% Loss rate 0%

Probabilistic Forwarding 71 e1e1 A B dst Src P1P1 P2P2 e1 ? 50% of buffer e1e1 e2e2 e1 How many packets should I forward?

Probabilistic Forwarding 72 e1e1 A B dst Src P1P1 P2P2 50% 0% e1 e1e1 e2e2 Pr = 0.5 Pr = 1 Compute forwarding probabilities without coordination using loss rates

A B dst Pr = 0.5 Pr = 1 Can ExOR Use Probabilistic Forwarding To Remove Coordination? 73 P1 P2 P1 Without random coding  need to know the exact packets to forward every time With random coding  need to know only the average amount of overlap Without random coding  need to know the exact packets to forward every time With random coding  need to know only the average amount of overlap Probability of duplicates is 50%

Adapting to Short-term Dynamics Need to balance sent information with received information MORE triggers transmission by receptions A node has a credit counter Upon reception, increment the counter using forwarding probabilities Upon transmission, decrement the counter Source stops  No triggers  Flow is done 74

Opportunistic Coding Three ways to get neighbor state Reception report Guess Based on ETX metric (delivery probability) Estimate the probability that packets are overheard The neighbor is the previous hop of the packet 75

COPE Design Pseudo Broadcast Cons of broadcast Unreliable due to no ACK Lack of backoff Piggy back on unicast Set one of intended node as Mac address List all others in COPE header (between MAC and IP header) Receiver: if it is on the list, decode the packet, else store the packet in its pool 76