Network: Non Traditional Routing

Slides:



Advertisements
Similar presentations
Opportunistic Routing Is Missing Its Opportunities! Sachin Katti & Dina Katabi.
Advertisements

Symbol Level Network Coding By Sachin Katti, Dina Katabi, Hari Balakrishnan, Muriel Medard Sigcomm 2008.
ExOR : Opportunistic Multi-hop Routing for Wireless Networks Sanjit Biswas and Robert Morris M.I.T. Computer Science and Artificial Intelligence Laboratory.
Aruna Balasubramanian, Ratul Mahajan Arun Venkataramani, Brian N Levine, John Zahorjan Interactive WiFi Connectivity from Moving Vehicles University of.
XORs in the air: Practical Wireless Network Coding Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft SIGCOMM ‘06 Presented.
ExOR:Opportunistic Multi-Hop Routing For Wireless Networks
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.
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.
CS 577 / EE 537 Advanced Computer Networks Fall ExOR: Opportunistic Multi-Hop Routing for Wireless Networks Sanjit Biswas and Robert Morris M.I.T.
Comparison of Routing Metrics for Static Multi-Hop Wireless Networks Richard Draves, Jitendra Padhye and Brian Zill Microsoft Research Presented by Hoang.
Network Layer: Non-Traditional Wireless Routing Localization Intro Y. Richard Yang 12/4/2012.
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
CIS 725 Wireless networks. Low bandwidth High error rates.
Efficient Network-Coding-Based Opportunistic Routing Through Cumulative Coded Acknowledgments Dimitrios Koutsonikolas, Chih-Chun Wang and Y. Charlie Hu.
QoS-Aware In-Network Processing for Mission-Critical Wireless Cyber-Physical Systems Qiao Xiang Advisor: Hongwei Zhang Department of Computer Science Wayne.
Wireless Sensor Networks COE 499 Energy Aware Routing
Revisiting the Contract Between Layers Sachin Katti Dina Katabi, Hari Balakrishnan, Muriel Medard.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
15-744: Computer Networking L-12 Wireless Broadcast.
TCP with Variance Control for Multihop IEEE Wireless Networks Jiwei Chen, Mario Gerla, Yeng-zhong Lee.
Trading Coordination For Randomness Szymon Chachulski Mike Jennings, Sachin Katti, and Dina Katabi.
ExOR: Opportunistic Multi- hop routing for Wireless Networks by; Sanjit Biswas and Robert Morris, MIT Presented by; Mahanth K Gowda Some pictures/graphs.
1 UFlood: High-Throughput Wireless Flooding Jayashree Subramanian Collaborators: Robert Morris, Ramakrishna Gummadi, and Hari Balakrishnan.
Trading Structure for Randomness in Wireless Opportunistic Routing Szymon Chachulski, Michael Jennings, Sachin Katti and Dina Katabi MIT CSAIL SIGCOMM.
Performance Comparison of Ad Hoc Network Routing Protocols Presented by Venkata Suresh Tamminiedi Computer Science Department Georgia State University.
Non-Traditional Routing, Transport and Localization Y. Richard Yang 3/3/2009.
Routing Metrics for Wireless Mesh Networks
Delay-Tolerant Networks (DTNs)
Routing Metrics for Wireless Mesh Networks
Transport Layer CS 381 3/7/2017.
Chapter 3 outline 3.1 transport-layer services
Multicast Outline Multicast Introduction and Motivation DVRMP.
TCP Vegas: New Techniques for Congestion Detection and Avoidance
ECE 544 Protocol Design Project 2016
Wireless Transport.
Chapter 3 outline 3.1 Transport-layer services
Xors in the air Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft.
Ad-hoc Transport Layer Protocol (ATCP)
Introduction of Transport Protocols
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
15-744: Computer Networking
Network Layer: Non-Traditional Wireless Routing Localization Intro
Network Routing: Link Metrics and Non-Traditional Routing
Routing Metrics for Wireless Mesh Networks
Hidden Terminal Decoding and Mesh Network Capacity
Network: Location Management
A Probabilistic Routing Protocol for Mobile Ad Hoc Networks
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks
Opportunistic Routing in Multi-hop Wireless Networks
Taking Advantage of Broadcast
IT351: Mobile & Wireless Computing
COMP/ELEC 429/556 Introduction to Computer Networks
Advanced Computer Networks
The Impact of Multihop Wireless Channel on TCP Performance
A Probabilistic Routing Protocol for Mobile Ad Hoc Networks
ExOR:Opportunistic Multi-Hop Routing For Wireless Networks
Distributed Systems CS
Javad Ghaderi, Tianxiong Ji and R. Srikant
Routing.
ExOR: Opportunistic Multi-hop routing for Wireless Networks
The Transport Layer Reliability
Opportunistic Routing in Multi-hop Wireless Networks*
Transport Layer: Congestion Control
Computer Networks Protocols
Review of Internet Protocols Transport Layer
Impact of transmission errors on TCP performance
Distributed Systems CS
Presentation transcript:

Network: Non Traditional Routing Y. Richard Yang 4/4/2011

Recap: Traditional Routing Protocols Proactive protocols distance vector e.g., DSDV link state link reversal e.g., partial link reversal, TORA Reactive (on-demand) protocols DSR AODV A E D C B F 2 1 3 5

Summary: Traditional Routing Implicit assumptions in traditional routing a graph representation of underlying network point-to-point graph, edges with costs select a lowest-cost route for a src-dest pair commit to a specific route before forwarding each node forwards a received packet as it is to next hop

Motivating Scenarios

Motivating Scenario Src A sends 1 packet to dst B; src B sends packet 3 to dst A The network needs to transmit 4 packets Motivating question: can we do better? p1 p1 1 2 3 p3 p3

Key Question How to explore path diversity and wireless broadcast opportunities?

Outline Admin. Non-traditional routing motivation network coding: exploiting network broadcast

Opportunistic Network Coding If R has both packets 1 and 3, it can combine them and explore coding and broadcast nature of wireless p1 p1 1 2 3 p3 p3

Opportunistic Coding: Basic Idea Each node looks at the packets available in its buffer, and those its neighbors’ buffers It selects a set of packets, computes the XOR of the selected packets, and broadcasts the XOR

Opportunistic Coding

Outline Admin. Non-traditional routing motivation network coding: exploiting network broadcast opportunistic routing: broadcast and path div.

Key Issue in Opportunistic Routing Key Issue: opportunistic forwarding may lead to duplicates.

Extreme Opportunistic Routing (ExOR) Basic idea: avoid duplicates by scheduling Instead of choosing a fix sequential path (e.g., src->B->D->dst), the source chooses a list of forwarders (a forwarder list in the packets) using ETX-like metric a background process collects ETX information via periodic link-state flooding Forwarders are prioritized by ETX-like metric to the destination

ExOR: Forwarding Group packets into batches The highest priority forwarder transmits when the batch ends The remaining forwarders transmit in prioritized order each forwarder forwards packets it receives yet not received by higher priority forwarders status collected by batch map

Batch Map Batch map indicates, for each packet in a batch, the highest-priority node known to have received a copy of that packet

ExOR: Example N2 N0 N3 N1

ExOR: Stopping Rule A nodes stops sending the remaining packets in the batch if its batch map indicates over 90% of this batch has been received by higher priority nodes the remaining packets transferred with traditional routing

Evaluations 65 Node pairs 1.0MByte file transfer 1 Mbit/s 802.11 bit rate 1 KByte packets EXOR bacth size 100 1 kilometer

Evaluation: 2x Overall Improvement 1.0 0.8 0.6 Cumulative Fraction of Node Pairs 0.4 0.2 ExOR Traditional spend a little more time on the 240 x. 121. say this is just for the median, and it’s a factor of 2! 200 400 600 800 Throughput (Kbits/sec) Median throughputs: 240 Kbits/sec for ExOR, 121 Kbits/sec for Traditional

OR uses links in parallel possible question – why are there only 7 forwarders.(just say we thin out...) ExOR 7 forwarders 18 links Traditional Routing 3 forwarders 4 links

OR moves packets farther 58% of Traditional Routing transmissions 0.6 ExOR Traditional Routing Fraction of Transmissions 0.2 25% of ExOR transmissions 0.1 lower is better. right circle – using lots of longer links, sum them up and it’s 25%. so, like ex 1, using lots of long links. zeros: before many packets made no progress, with exor at least some. 100 200 300 400 500 600 700 800 900 1000 Distance (meters) ExOR average: 422 meters/transmission Traditional Routing average: 205 meters/tx

Comments: ExOR Pros Cons takes advantage of link diversity (the probabilistic reception) to increase the throughput does not require changes in the MAC layer can cope well with unreliable wireless medium Cons scheduling is hard to scale in large networks overhead in packet header (batch info) batches increase delay

Outline Admin. Non-traditional routing motivation network coding: exploiting network broadcast opportunistic routing ExOR MORE

MORE: MAC-independent Opportunistic Routing & Encoding Basic idea: Replace node coordination with network coding Trading structured scheduler for random packets combination Previous network coding technique is for inter-flow MORE is for intra-flow network coding

Basic Idea: Source Chooses a list of forwarders (e.g., using ETX) Breaks up file into K packets (p1, p2, …, pK) Generate random packets MORE header includes the code vector [cj1, cj2, …cjK] for coded packet pj’

Basic Idea: Forwarder Check if in the list of forwarders Check if linearly independent of new packet with existing packet Re-coding and forward

Basic Idea: Destination Decode Send ACK back to src if success

Key Practical Question: How many packets does a forwarder send? Compute zi: the expected number of times that forwarder i should forward each packet

Computes zs Єij: loss probability of the link between i and j Compute zs so that at least one forwarder that is closer to destination is expected to have received the packet :

Compute zj for forwarder j Only need to forward packets that are received by j sent by forwarders who are further from destination not received by any forwarder who is closer to destination

Compute zj for forwarder j To guarantee at least one forwarder closer to d receives the packet

Evaluations 20 nodes distributed in a indoor building Path between nodes are 1 ~ 5 hops in length Loss rate is 0% ~ 60%; average 27%

Throughput

Summary: Opportunistic Routing Basic idea: Take advantage of spatial diversity Key issue Avoid redundancy and interference Techniques ExOR: coordination MORE: coordination -> random network coding

Opportunistic Routing  50 transmissions Problem of MORE R1 99% (10-3 BER) Loss 0% S D Loss 0% 99% (10-3 BER) R2 Opportunistic Routing  50 transmissions

MIXIT: Revisiting Link/ Network API PHY + LL Deliver correct symbols to higher layer Network Forward correct symbols to destination R1 S P1 P1 P2 R2 P2 P1 P2

Key Question: What Should Each Router Forward? P1 P1 P2 R2 P2 P1 P2

Key Question: What Should Each Router Forward? P1 P2 P1 P1 P2 R2 P2 P1 P2 P1 P2 Forward everything  Inefficient

Symbol Level Network Coding P1 P2 P1 R2 P2 P1 P2 Forward random combinations of correct symbols

Symbol Level Network Coding … … D R2 … … Routers create random combinations of correct symbols

Symbol Level Network Coding … D R2 … Solve 2 equations Destination decodes by solving linear equations

Symbol Level Network Coding … … D R2 … … Routers create random combinations of correct symbols

Symbol Level Network Coding … D R2 … Solve 2 equations Destination decodes by solving linear equations

Problem: Mixed Correct and Incorrect Symbols Original Packets

Destination needs to know which combinations it received Use run length encoding Original Packets Coded Packet

Destination needs to know which combinations it received Use run length encoding Original Packets Coded Packet

Destination needs to know which combinations it received Use run length encoding Original Packets Coded Packet

Destination needs to know which combinations it received Use run length encoding Original Packets Coded Packet

Destination needs to know which combinations it received Use run length encoding

Evaluation Implementation on GNURadio SDR and USRP Zigbee (IEEE 802.15.4) link layer 25 node indoor testbed, random flows Compared to: Shortest path routing based on ETX MORE: Packet-level opportunistic routing

Throughput Comparison CDF 2.1x MIXIT 3x MORE Shortest Path Throughput (Kbps)

Outline Admin. Non-traditinoal routing Transport overview

Transport Layer vs. Network Layer Provide logical communication between app’ processes Transport protocols run in end systems Transport vs. network layer services: network layer data transfer between end systems transport layer data transfer between processes relies on, enhances, network layer services application transport network data link physical network data link physical network data link physical network data link physical logical end-end transport network data link physical network data link physical application transport network data link physical

Transport Layer Services and Protocols Transport services multiplexing/demultiplexing flow control reliable data transfer congestion/rate control Transport protocols in the Internet UDP TCP

Key Challenge in Transport: Rate /Congestion Control router 3 router 5 flow 1 5 Mbps 20 Mbps 10 Mbps flow 2 (5 Mbps) 20 Mbps 5 Mbps router 1 router 2 router 4 router 6 Assume flow 2 fixed at 5 Mbps no retransmission the link from router 1 to router 2 has finite buffer sending rate by flow 1 (Mbps) throughput of flows 1 & 2 (Mbps) 5 10 when packet dropped at the link from router 2 to router 5, the upstream transmission from router 1 to router 2 used for that packet was wasted!

TCP Reliability/Rate Control End-to-end, sliding window-based reliability Use the AIMD algorithm to adjust the sliding window size dynamically after receiving an ACK for a packet, increase cwin by 1/cwin if any loss, reduce cwin to half cwnd w

TCP/Reno: Cwin Q: Is TCP rate control effective in wireless networks? cwnd Loss Loss Time congestion avoidance congestion avoidance congestion avoidance Q: Is TCP rate control effective in wireless networks?

TCP/Reno Throughput as a Function of Loss Rate Given mean packet loss rate p, mean round-trip time RTT, packet size S

Example Assume a TCP flow with S = 1000 bits, RTT = 10 ms Assume the link bandwidth is 11 Mbps If there is only one flow, then the (congestion) loss rate to fully utilize the link Assume a wireless network with packet (corruption) loss rate of 4%, then the maximum achievable rate using TCP/Reno is 700 Kbps If we increase RTT = 200 ms (satellite) the rate is 35 Kbps

Discussion Does TCP perform really that bad in wireless? mobile host base station “wired“ Internet

Wireless Networking: Summary send receive status info info/control The ability to communicate is a foundational support of wireless mobile networks Unfortunately, the capacity of such networks using current techniques is limited Much progress has been made, but still more are coming.