Towards a Robust Protocol Stack for Diverse Wireless Networks Arun Venkataramani (in collaboration with Ming Li, Devesh Agrawal, Deepak Ganesan, Aruna Balasubramanian, Brian Levine, Xiaozheng Tie at UMass Amherst)
Wireless network landscape today! Diverse wireless networks coexist! Adapt TCP/IP stack in different ways WLAN Mesh Cellular MANET DTN Little mobility Some mobility High mobility 2
Interconnecting diverse networks?! Vision: A simple robust protocol stack to interconnect diverse wireless networks. WLAN Mesh Cellular MANET DTN Little mobility Some mobility High mobility 3
Why does TCP/IP not suffice?! E2E route disruptions cause unavailability WLAN Mesh Cellular MANET DTN Little mobility Some mobility High mobility 4
Why does TCP/IP not suffice?! Gap between what you buy vs. get WLAN Mesh Cellular MANET DTN Little mobility Some mobility High mobility Advertised capacity: 11Mbps 5
Principle: Design for high uncertainty! Observe what works at an extreme point in the design space--always-partitioned DTNs--for insights into a robust design. 6
Outline! Motivation! Block transport! Replication routing! Research challenges 7
1. E2E Transport! E2E rate control is error-prone! E2E retransmissions are wasteful Rate Control E2E Feedback Loss Rate RTT Source Congestion? Link loss? Dest 8
1. E2E Transport! E2E rate control is error-prone! E2E retransmissions are wasteful E2E Retransmissions P Source Redundant Transmissions Dest 9
1. E2E Transport! E2E rate control is error-prone! E2E retransmissions are wasteful! E2E route disruptions cause unavailability Route disruptions due to mobility 10
2. Packet as Unit of Control! Channel access! Link layer ARQ Listen Backoff RTS/CTS 11
2. Packet as Unit of Control! Channel access! Link layer ARQ Timeout Backoff Timeout Backoff 12
3. Complex Cross-Layer Interaction! Link-layer ARQ/backoff hurts TCP rate control Transport Rate Control Highly Variable RTT Link Link ARQ Link ARQ Link ARQ 13
Hop: Clean-Slate Transport Protocol! End-To-End! Packets! Complexity Hop-by-Hop Blocks Minimize interaction Block-switched networks: A new paradigm for wireless networks, Li et al. [NSDI 2009] 14
Hop Design Multi-hop Per-hop Virtual Retransmission ACK Withholding Backpressure Micro-block Prioritization Reliable Block Transfer 15
Reliable Per-Hop Block Transfer! Mechanisms! Burst mode (TXOP)! Block ACK based ARQ! Benefits! Amortizes control overhead B-SYN Request for B-ACK B-ACK Packet bitmap CSMA TXOP 16
Hop Design Multi-hop Per-hop Virtual Retransmission ACK Withholding Backpressure Micro-block Prioritization Reliable Block Transfer 17
Virtual Retransmission (VTX)! Mechanism! Leverages in-network caching! Re-transmits blocks only when unavailable in cache! Benefits! Fewer transmissions! Low overhead C! Simple A B-SYN B-ACK DATA B D E 18
Virtual Retransmission (VTX)! Mechanism! Leverages in-network caching! Re-transmits blocks only when unavailable in cache! Benefits! Fewer transmissions! Low overhead! Simple B-SYN VTX B-SYN with VTX flag set A B D VTX Timer B-SYN VTX B-ACK E 19
Hop Design Multi-hop Per-hop Virtual Retransmission ACK Withholding Backpressure Micro-block Prioritization Reliable Block Transfer 20
Backpressure! Mechanism! Limits outstanding blocks per-flow at forwarder Slow A B C D E Source B-SYN B-SYN B-SYN Hold B-ACK Limit on outstanding blocks=2 Dest 21
Backpressure! Mechanism! Limits outstanding blocks per-flow at forwarder! Benefits! Improves network utilization D A B C Source 20Mbps 10Mbps 20Mbps 20Mbps F 20Mbps 1Mbps E Dest G Dest Aggregate goodput without backpressure: 6Mbps 22
Backpressure! Mechanism! Limits #outstanding blocks per-flow at forwarder! Benefits! Improves network utilization D A B C Source 20Mbps 10Mbps 20Mbps 20Mbps F 20Mbps 1Mbps E Dest G Limit of Outstanding Blocks=1 Dest Aggregate goodput with backpressure: 10Mbps 23
Hop Design Multi-hop Per-hop Virtual Retransmission ACK Withholding Backpressure Micro-block Prioritization Reliable Block Transfer 24
Ack Withholding! Mechanism:! Receiver withholds all but one BACK! Benefit:! Low overhead! Less conservative! Simple A C B B-SYN B-ACK DATA B-SYN Withhold B-ACK B-ACK DATA 25
Hop Design Multi-hop Per-hop Virtual Retransmission ACK Withholding Backpressure Micro-block Prioritization Reliable Block Transfer 26
Micro-block Prioritization! Mechanisms! Sender piggybacks small blocks to B-SYN! Receiver prioritizes small block s B-ACK! Benefits! Low delay for small blocks SSH 64B Sender Receiver Sender B-SYN B-SYN DATA B-ACK 1MB FTP 27
Testbed! 20 nodes on the 2 nd floor of UMass CS building! Apple Mac Mini! 1.8GHz, 2GB RAM, Atheros 802.11 a/b/g card 28
Single-flow Single-hop Performance 1.2x TCP 1.6x Hop 28x Hop achieves significant gains over TCP 29
Single-flow Multi-hop Performance 1.9x TCP 2.3x Hop 2.7x Hop achieves significant gains over TCP 30
Graceful Degradation with Loss! Emulated link layer losses at the receiver TCP Hop TCP breaks down at moderate loss rates 31
Scalability to High Load! 30 concurrent flows 2x 20x Mean goodput TCP 150x Hop-by-hop TCP Hop Hop is much fairer than TCP 32
Hop Performance Breakdown 33
Hop over WLAN AP Mean (kbps) Median (kbps) Hop 663 652 TCP 587 244 TCP+RTS/CTS 463 333 Hop improves utilization over TCP+RTS/CTS 34
Low Delay for Small Transfers! 1 small transfer competing with 4 large AP Small transfer size (KB) Hop lowers delay across all file sizes 35
Impact on Concurrent VoIP 36
Hop in Partitionable Networks Protocol Goodput (Kbps) Hop (H=1) 320 (±29) Hop (H=100) 457 (±18) DTN2.5 159 (±15) Hop significantly outperforms (TCP-based) DTN2.5 37
Network and Link Layer Dynamics! 30 concurrent flows with bit rate control +/ OLSR Hop significantly outperforms TCP under dynamic network conditions 38
Hop with 802.11g Hop continues to outperform TCP with 11g 39
Related Work 40
Outline! Motivation! Block transport! Replication routing! Research challenges 41
Replication routing! Replication reduces delay under topology uncertainty! Y! P! X! P! P! P! Z! W! 42
Routing as resource allocation problem! Problem: Which packets to replicate given limited X! bandwidth to optimize a specified Y! metric?! RAPID Protocol (X,Y):! 1. Control channel: Exchange metadata! 2. Direct Delivery: Deliver packets destined to each other! Change in utility! 3. Replication: Replicate in decreasing order of marginal utility! Packet size! 4. Termination: Until all packets replicated or nodes out of range! DTN routing as a resource allocation problem, Balasubramanian et al. [SIGCOMM 2007] 43
Utility computation example! Objective: Minimize average delay! Define U(i) = -(T + D)!! T = time since created, D = expected remaining time to deliver!! Simplistic assumptions!! uniform exponential meeting with mean!! global view! Z! i! X! i! Y! i! W! D =! D = /2! D = /3! 44
Utility computation example (cont d) j! j! W! i! X! Y! Deadline of i < T! Z! Deadline of j = T 1 > T Metric: Min average delay! Metric: Maximize #packets delivered within deadline! Replicate i! Replicate j! 45
Deployment on DieselNet 46
Results based on DieselNet traces 47
Outline! Motivation! Block transport! Replication routing! Research challenges 48
C1: When to replicate?! Replication useful under! Topology uncertainty! Delay optimization! Light load scenarios relays X 1 X 2 Claim: Delay benefit of replication is unbounded. src X k dst X i = r.v. for delay of path i Forwarding delay = min i (E[X i ]) Replication delay = E[min i (X i )] WLAN Mesh MANET DTN Low uncertainty Forwarding suffices High uncertainty Replication useful 49
C2: Bit Rate Control with Blocks + Reduces negative interaction between bit rate control and! Transport! ARQ Find r: max(r(1-p(r))) ARQ => keep p(r) low TCP => keep p(r) low + Simplifies collision vs. channel loss detection + Using small frames + Reducing collisions 50
Conclusions! Vision: Simple robust protocol stack for diverse wireless networks! Key building blocks! Block transport (Hop)! Replication routing (RAPID) Source code http://hop.cs.umass.edu http://prisms.cs.umass.edu/rapid 51