Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan,...

29
Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient Research Journel Group May 1, 2009

Transcript of Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan,...

Page 1: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Improving TCP/IP Performance Over Wireless Networks

Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz

Jerome MitchellResilient Research Journel Group

May 1, 2009

Page 2: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

The Problem

In TCP: Packet loss is attributed to congestion

In Mobile Networks Packet loss results from disconnections,

handoffs, high bit error rates

Page 3: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Alternative ApproachesI-TCP [A.Bakre, B.R.Badrinath] Link level retransmissions [S. Paul, et. al]Fast Retransmit [R.Caceres, L.Iftode]

Page 4: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Snoop TCP

The authors seeks: Improved Performance No change to TCP at fixed hosts No violation of end-to-end TCP semantics No recompiling/relinking of existing

applications

Page 5: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Components

Snoop Module

To recover from wireless losses

Routing Protocol

Eliminate losses during handoff

Page 6: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Snoop : Basic Idea

Data from Fixed to Mobile Hosts Cache unacknowledged TCP data Loss detected, perform local retransmissions

from base station

Data from Mobile to Fixed Hosts Detect missing packets Perform negative acknowledgements

Page 7: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

FH -> MH : Snoop_data()

New Packet in TCP sequence Add to snoop cache Forward to MH

Out of sequence packet cached current sequence number > last ACK seen

Forward to MH current sequence number < last ACK seen

Disregard

Page 8: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

FH -> MH: Snoop_data()

Out of sequence packet not cached Forward to MH Mark it as retransmitted by sender

Page 9: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Snoop: FH -> MH

Page 10: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

FH -> MH: Snoop_ack() New ACK Cleaning of snoop cache Update round trip estimate Forward ACK to FH

Spurious ACK Disgard it

Page 11: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

FH -> MH: Snoop_ack()

Duplicate ACK (DUPACK) Packet not in snoop cache

Resend from the FH Packet marked as sender retransmitted

DUPACK forwarded to FH – TCP keeps track of the number of dupacks received when it retransmits

Page 12: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

FH -> MH: Snoop_ack()

Unexpected DUPACK – first DUPACK after a packet loss Retransmit at higher priority than other packets

Expect DUPACK Discard it

Page 13: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Snoop: ACK Processing

Page 14: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Data Transfer from MH -> FH

NACK's sent from BS to MH when Threshold number of packets from a single

window have reached No new packets from MH for certain time

*- Based on TCP SACK.

Page 15: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Routing Protocol

Why? In mobile IP, packets in transit during handoff are lost/experience long delays.

Goals

Low latency handoff

Reduce packet loss and delay variation

Solution?

Use Multicast and intelligent buffering in nearby BSs

Page 16: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Routing Protocol – Basics

Each MH has home address and agent

Each MH is also mapped to a temporary IP multicast group consisting of BS in vicinity of MH

Page 17: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Routing Protocol - Beaconing

Each BS periodically broadcasts beacons

MH keeps track of these to determine current location and motion

MH identifies nearby BSs, determines which cell to join and handoff (based on signal strength, communication quality)

Page 18: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Routing Protocol

Primary BS : delivers data

Other neighbor BSs : Buffer data (minimizes data loss and delays during handoff)

Page 19: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Handoffs : Low latency, light weight

Snoop cache proportional to window size

When handoff requested or anticipated, nearby BSs cache packets

Nearby BSs cannot snoop on ACKs, so use FIFO scheme for cache

Holes in state of new BS -> slight performance degradation

Page 20: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Implementation

Platform: IBM Thinkpad laptops, PC base stations,BSD/OS 2.0

2 Mbps AT&T wavelan

Snoop Cache

Circular buffer of pointers to kernel mbufs

Beyond “high watermark”, only out of order and earlier in sequence packets buffered

Page 21: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Timer based retransmissions

Smoothed round trip time srtt = (1- a)*old_srtt + a * curr_rttIf no ACK in 2 * srtt -> retransmitPersist TimerIf there are unacknowledged packets and no activity either from sender or receiver for 200msAlso sets no. of expected DUPACKS to zero and updates next expected ACK

Page 22: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Performance – Effect of Bit Errors

Page 23: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Connection Behavior – Effect of Bit Errors

Error rate: 3.9x10-6

Snoop – 1Mbps,TCP – 0.25 Mbps

Page 24: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Performance: Effect of handoffs

Page 25: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Connection Behavior – Effect of Handoffs

Handoff Frequency – 10s

Throughput – 1.4Mbps

Page 26: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Performance: Handoffs, Bit Errors

Handoffs – 5s

Page 27: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Performance Summary

For BER > 5x10-7, throughput increases upto 20 times than regular TCP

For lower error rates, similar performance => negligible overhead due to snoop

Handoffs complete in 5-70ms (compared to 265-1400ms in I-TCP)

Page 28: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

Summary

Snoop Agent for better end-to-end TCP performanceLocal caching and retransmissions by snoop agentCaching and multicasting to minimize handoff latency and lossesBandwidth improvement between 1 and 20 across different BERsNo.of redundant wireless retransmissions -> 0

Page 29: Improving TCP/IP Performance Over Wireless Networks Authors: Hari Balakrishnan, Srinivasan Seshan, Elan Amir and Randy H. Katz Jerome Mitchell Resilient.

References

[1] Hari Balakrishnan, Srinivasan Seshan and Randy H.Katz, “Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks”, ACM Wireless Networks, May 1995

[2] Hari Balakrishnan, Venkata N. Padmanabhan, Srinivasan Seshan and Randy H.Katz, “A Comparison of Mechanisms for Improving TCP Performance over Wireless Links”, ACM SIGCOMM 1996.