slide 1 of 23 implementation and evaluation of a performance enhancing proxy for wireless tcp master...
Post on 22-Dec-2015
212 views
TRANSCRIPT
Slide 1 of 23
Implementation and Evaluation of a Performance Enhancing Proxy for Wireless
TCP
Master Thesis Project (Sep 03 – April 04)
Dennis DungsTechnical University Munich, Germany
Aalborg University, Denmark
Januar 2004
Supervised byHans-Peter Schwefel
Aalborg University, Denmark
Slide 2 of 23
Agenda
• Goal and steps of this project• Considered Scenarios
– Infrastructure– Mobility– Network traffic
• Implementation– Network setup– Proxy design
• Evaluation of some scenarios• Future Outline• Current Problems
Slide 3 of 23
Goal of this project
• Goal:– Identify TCP performance lacks in wireless scenarios– Evaluate performance capabilites of a TCP Proxy
• Steps– Getting familiar with concepts of TCP– Research about common TCP implementations– Describing wireless scenarios– Analyzing TCP performance and Identifying TCP
performance lacks in wireless scenarios– Designing and Implementing a TCP Proxy– Evaluation of Scenarios using the TCP Proxy
Slide 4 of 23
Considered Scenarios
• Definition:„A Scenario consists of the network infrastructure, mobility and network traffic.“
• Network Infrastructure:– Access Technology– Proxy Location– Sender / Receiver Location– Network configuration
Proxy
Server
Wired Network
MobileHost
Wirelesssupporting Network
Slide 5 of 23
Considered Scenarios
• Mobility– Fixed position– Handover to same subnet– Handover to different subnet– Handover to new access technology
BT -> WLAN -> GPRS -> W-CDMA
• Network traffic– Size of transmitted data– Used bandwith– Single-/Multi-User– Cross-traffic
BSC
WLAN AP
Mobile Node
WLAN AP
WLAN AP
GPRSNetwork
Router
Switch
Slide 7 of 23
Implementation of TCP Proxy - Idea
Application
Split TCP Idea:
Sender Receiver
Split TCP-Daemon
TCP
IP
LL / PHY
Application
TCP
IP
LL / PHY
TCP
IP
LL / PHY
TCP
IP
LL / PHY
TCP Proxy
Slide 8 of 23
Implementation of TCP Proxy - Options
• IP-Header-Option-Solution– Add original IP-Destination-Adress to IP-Header Option– Send every IP packet to Proxy– Unpack IP-packets at Proxy and start a „normal“ TCP/IP-Connection– Disadvantage: Changes in TCP/IP-Stack of connection initiator necssary
• IP-Tunneling– Tunnel the IP-packets from connection initiator to Proxy– Unpack IP-packets at Proxy and start a „normal“ TCP/IP-Connection– Disadvantage: additional IP-Overhead
• Hardware - Solution– Proxy directly integrated in Sender-Receiver-Path– Disadvantage: Different Scenarios need different locations of proxy ->
Maintainance efforts
• ARP – Solution– „emulate“ IP Adresses by faking IP-MAC-Maps– Disadvantage: Difficult to maintain maps– Disadvantage: Timing problems
• Routing-Solution
Slide 9 of 23
Implementation of TCP Proxy – Network setup
10.10.4.X
Tokyo Delft
Legend:Proxy
Aalborg
Fixed Host
Mobile Host
Spjald
Router
10.10.254.254
Mobile Node San Francisco
Toronto
Server
10.10.1.254
TorontoSwitch
WLAN Access Point
8 MBit/s 8 MBit/s
100 MBit/s100 MBit/s
100 MBit/s
100 MBit/s
Policy-Based Routing applied
Slide 10 of 23
Implementation of TCP Proxy – Software Architecture
NIC
Packet-buffer
NIC
Packet-buffer
decode encode
ConnectionConnection
ConnectionConnection
Connection ConnectionSend data
establish connection
close connection
Process packet Create packet(s)
Send data
Data buffer
(Mirror)
Split TCP daemon
Slide 11 of 23
Implementation of TCP Proxy – Current Features
• Mirroring• Split TCP:
– TCP Reno implementation– Slow start– Congestion avoidance– Retransmission timer (partially)– Fast retransmission– Delayed ACKs– Adjustable Maximum Segment Size– Adjustable data buffer– Asymetrical TCP setup
Slide 13 of 23
Evaluation - Parameters
• Throughput over time
• Round-Trip-Times (RTT)– Average– Jitter
• Transmission time
• Nr. of packets
• Nr. of retransmitted bytes
• Nr. of timeouts– Transmission timeouts
Slide 14 of 23
Evaluation – Measurement Procedure
• IPerf – Setup a TCP connection from sender to receiver– Send data from sender to receiver at maximum
bandwith
• Ethereal – Trace packets at sender and receiver in real-time into
a file
• TCPTrace – Generate TCP Statistics offline
• GNUPlot– Visualizing TCP Statistics (RTT Graphs, Throughput
Graphs)
Slide 15 of 23
Evaluation – RTTs in WLAN
• Comparison of RTTs in WLAN– AP transmission power: 30 mW– Distance to AP: 20 cm– Transmission period: 10 s– TCP Proxy configuration:
• Delayed ACKs off• No Buffer Thresholding• MSS: 1460 Bytes
Samples Average Max Min Std. Dev.
No Proxy 2494 16 ms 57 ms 3 ms 3 ms
Mirror 2500 21 ms 60 ms 3 ms 5 ms
Split TCP Proxy
4455 22 ms 70 ms 3 ms 5 ms
Slide 16 of 23
Evaluation – Distances in WLAN
Room 4
Room 3
Room 2
Room 1 Position #1
Position #2
Position #3
Position #4
Legend:
Mobile Host
WLAN Access Point
Slide 17 of 23
Evaluation – Distances in WLAN
Measurement Options:•AP transmission power: 30mW•Transmission time: 10s•Proxy turned off
Slide 18 of 23
Evaluation – Delayed ACKs in WLAN
Measurement Options:•AP transmission power: 30mW•Distance to AP: 20cm•Transmission amount: 30MB•Symmetrical TCP setup
•Delay Timer: 500ms•MSS: 1460 bytes•No Buffer Thresholding
Slide 19 of 23
Evaluation – Delayed ACKs in WLAN
Measurement Options:•AP transmission power: 30mW•Distance to AP: 20cm•Transmission amount: 30MB•Symmetrical TCP setup:
•Delayed ACKs: 3•MSS: 1460 bytes•No Buffer Thresholding
Slide 20 of 23
Evaluation - WLAN
• More Results (not shown here):– Test-setup (Ethereal) results in bursty captures– Impact of TCP Proxy on Wired->Wired scenario
comparable to WLAN– Sender correlates to Receiver in WLAN– Upstream correlates to Downstream in WLAN – No TCP Retransmissions over WLAN
• Conclusions:– L2-Retransmissions efficient in tested WLAN
scenarios– Standard TCP efficient in tested WLAN scenarios
Slide 21 of 23
Future Outline
• Implementation:– Developing TCP-Mechanism for Handover-Detection– FreezeTCP
• Freeze Sender by advertising a zero Window• Recover sender by:
– 3 Duplicate ACKs (slow-start)– 1 Non-Zero Window ACK (fast recovery)
• Evaluation:– Impact of Buffer-Thresholding– Multi-User WLAN Scenarios– GPRS– Bluetooth– W-CDMA– MobileIP / Handover Scenarios
Slide 22 of 23
Current Problems
• Ethereal not working with PPP in Windows NT/2000/XP (-> BT LAN, GPRS)
• No globally routable IP-Address available in GPRS
• Handover to same subnet: switching table• MobileIP not running• MobileIP-Setup over GPRS• No Bluetooth Equipment available• No W-CDMA Equipment available• Bugs,....
Slide 23 of 23
References
• Project WebSite: http://kom.auc.dk/~dennis/
• IPLab WebSite:
http://kom.auc.dk/iplab/
• WLAN Evaluation Project:
http://kom.auc.dk/~ruipt/
• RFCs : RFC791 (IP), RFC793 (TCP)
• eMail: [email protected]
Slide 26 of 23
Current IPLab network architectureIP LAB: Current Architecture
Delft
Internet
Toronto
Frankfurt
Shanghai
Sydney Dhaka
Tokyo
San Francisco 130.225.51.6
10.10.1.210.10.2.2
10.10.2.1 10.10.1.1
Aalborg
10.10.2.254
Spjald10.10.4.2
10.10.1.254
Shanghai
10.10.3.254
10.10.254.254
Toronto10.10.3.1
GPRS Network