TCP over Wireless Networks



Similar documents
Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

TCP in Wireless Mobile Networks

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

Transport layer issues in ad hoc wireless networks Dmitrij Lagutin,

Mobile Communications Chapter 9: Mobile Transport Layer

Mobile Computing/ Mobile Networks

AN IMPROVED SNOOP FOR TCP RENO AND TCP SACK IN WIRED-CUM- WIRELESS NETWORKS

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

TCP for Wireless Networks

TCP in Wireless Networks

Congestions and Control Mechanisms n Wired and Wireless Networks

An Improved TCP Congestion Control Algorithm for Wireless Networks

International Journal of Scientific & Engineering Research, Volume 6, Issue 7, July ISSN

An enhanced TCP mechanism Fast-TCP in IP networks with wireless links

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Data Networks Summer 2007 Homework #3

Research of TCP ssthresh Dynamical Adjustment Algorithm Based on Available Bandwidth in Mixed Networks

TCP Westwood for Wireless

Simulation-Based Comparisons of Solutions for TCP Packet Reordering in Wireless Network

TCP/IP Over Lossy Links - TCP SACK without Congestion Control

Outline. TCP connection setup/data transfer Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

Performance evaluation of TCP connections in ideal and non-ideal network environments

First Midterm for ECE374 03/24/11 Solution!!

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

CS268 Exam Solutions. 1) End-to-End (20 pts)

TCP PACKET CONTROL FOR WIRELESS NETWORKS

Student, Haryana Engineering College, Haryana, India 2 H.O.D (CSE), Haryana Engineering College, Haryana, India

SELECTIVE-TCP FOR WIRED/WIRELESS NETWORKS

Congestion Control Review Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

SJBIT, Bangalore, KARNATAKA

A Survey: High Speed TCP Variants in Wireless Networks

TCP Over Wireless Network. Jinhua Zhu Jie Xu

TRANSPORT LAYER AND SECURITY PROTOCOLS FOR AD HOC WIRELESS NETWORKS

High Speed Internet Access Using Satellite-Based DVB Networks

STUDY OF TCP VARIANTS OVER WIRELESS NETWORK

A Survey on Improving TCP Performance over Wireless Networks

Transport Layer Protocols

2 TCP-like Design. Answer

Chapter 6 Congestion Control and Resource Allocation

TCP/IP In Cellular Networks

A Study on TCP Performance over Mobile Ad Hoc Networks

La couche transport dans l'internet (la suite TCP/IP)

TCP in Wireless Environments: Problems and Solutions

Transport layer protocols for ad hoc networks

Final for ECE374 05/06/13 Solution!!

Optimization of Communication Systems Lecture 6: Internet TCP Congestion Control

TCP Adaptation for MPI on Long-and-Fat Networks

15-441: Computer Networks Homework 2 Solution

Low-rate TCP-targeted Denial of Service Attack Defense

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

TCP Congestion Control Scheme for Wireless Networks based on TCP Reserved Field and SNR Ratio

Active Queue Management (AQM) based Internet Congestion Control

Seamless Congestion Control over Wired and Wireless IEEE Networks

17: Queue Management. Queuing. Mark Handley

TCP/IP Optimization for Wide Area Storage Networks. Dr. Joseph L White Juniper Networks

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013

TCP/IP Networking for Wireless Systems. Integrated Communication Systems Group Ilmenau University of Technology

ALTHOUGH it is one of the first protocols

Packet Queueing Delay

A Passive Method for Estimating End-to-End TCP Packet Loss

This sequence diagram was generated with EventStudio System Designer (

Homework 3 assignment for ECE374 Posted: 03/13/15 Due: 03/27/15

EINDHOVEN UNIVERSITY OF TECHNOLOGY Department of Mathematics and Computer Science

First Midterm for ECE374 03/09/12 Solution!!

TCP Fast Recovery Strategies: Analysis and Improvements

Parallel TCP Data Transfers: A Practical Model and its Application

TCP based Denial-of-Service Attacks to Edge Network: Analysis and Detection

Chapter 5. Transport layer protocols

FEW would argue that one of TCP s strengths lies in its

A packet-reordering solution to wireless losses in transmission control protocol

EECS 122: Introduction to Computer Networks Multiaccess Protocols. ISO OSI Reference Model for Layers

High Performance VPN Solutions Over Satellite Networks

A Network-Controlled Architecture for SCTP Hard Handover

Linux 2.4 Implementation of Westwood+ TCP with rate-halving: A Performance Evaluation over the Internet

Protagonist International Journal of Management And Technology (PIJMT) Online ISSN Vol 2 No 3 (May-2015) Active Queue Management

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

SCTP over Satellite Networks

CS551 End-to-End Internet Packet Dynamics [Paxson99b]

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Internet Packets. Forwarding Datagrams

Network Friendliness of Mobility Management Protocols

TCP, Active Queue Management and QoS

Overview : Computer Networking. Components of Integrated Services. Service Interfaces RSVP. Differentiated services

Computer Networks - CS132/EECS148 - Spring

Delay-Based Early Congestion Detection and Adaptation in TCP: Impact on web performance

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

Transcription:

TCP over Wireless Networks Raj Jain Professor of Computer Science and Engineering Washington University in Saint Louis Saint Louis, MO 63130 Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse574-10/ 20-1

Overview TCP Congestion Mechanisms Our Initial Research on TCP Congestion TCP Over Wireless: Issues and Solutions TCP over Satellite Our research on TCP over Satellite and Wireless 20-2

Research on Congestion Control 1Mbps 1Mbps 1Mbps Time=6 minutes 1Mbps 10Mbps 1Mbps Time=6 hours Bit in header Early 1980s Digital Equipment Corporation (DEC) introduced Ethernet products Noticed that throughput goes down with a higher-speed link in middle (because no congestion mechanisms in TCP) Results: 1. Timeout Congestion Reduce the TCP window to one on a timeout [Jain 1986] 2. Routers should set a bit when congested (DECbit). [Jain, Ramakrishnan, Chiu 1988] 3. Introduced the term Congestion Avoidance 4. Additive increase and multiplicative decrease (AIMD principle) [Chiu and Jain 1989] There were presented to IETF in 1986. Slow-start based on Timeout and AIMD [Van Jacobson 1988] 20-3

AIMD Principle Additive Increase, Multiplicative Decrease W1+W2 = Capacity Efficiency, W1=W2 Fairness (W1,W2) to (W1+DW,W2+DW) Linear increase (45 line) (W1,W2) to (kw1,kw2) Multiplicative decrease (line through origin) 20-4 CW2 Efficient W1 Fair Capacity Ref: D. Chiu and Raj Jain, "Analysis of the Increase/Decrease Algorithms for Congestion Avoidance in Computer Networks," Journal of Computer Networks and ISDN, Vol. 17, No. 1, June 1989, pp. 1-14, http://www.cse.wustl.edu/~jain/papers/cong_av.htm

Slow Start Congestion Control Window = Flow Control Avoids receiver overrun Need congestion control to avoid network overrun The sender maintains two windows: Credits from the receiver Congestion window from the network Congestion window is always less than the receiver window Starts with a congestion window (CWND) of 1 segment (one max segment size) Do not disturb existing connections too much. Increase CWND by 1 MSS every time an ack is received 20-5

Slow Start (Cont) If segments lost, remember slow start threshold (SSThresh) to CWND/2 Set CWND to 1 MSS Increment by 1 per ack until SSthresh Increment by 1 MSS/CWND per ack afterwards Congestion Window CWND Timeout SSThresh Receiver Window Idle Interval 1 20-6 Time

Slow Start (Cont) At the beginning, SSThresh = Receiver window After a long idle period (exceeding one round-trip time), reset the congestion window to one. Exponential growth phase is also known as Slow start phase The linear growth phase is known as congestion avoidance phase 20-7

Fast Recovery Optional implemented in TCP Reno (Earlier version was TCP Tahoe) Duplicate Ack indicates a lost/out-of-order segment On receiving 3 duplicate acks: Enter Fast Recovery mode Retransmit missing segment Set SSTHRESH=CWND/2 Set CWND=SSTHRESH+3 MSS Every subsequent duplicate ack: CWND=CWND+1MSS 20-8

Problems of Current TCP TCP cannot distinguish wireless errors from congestion. Frequent errors Frequent window reductions Low throughput On CDMA, Overload Errors. Otherwise no relationship. Sender Receiver Error or Congestion Duplicate acks Reduced window 20-9

1. Link Layer Mechanisms 2. Split TCP Solutions TCP Over Wireless 3. TCP Aware Link Layer Protocols 4. Explicit Notification Schemes 5. TCP Over Satellite 6. Our Results for Satellite and Wireless Networks 20-10

1. Link Layer Mechanisms Forward Error Correction (FEC): Reduces loss due to errors. Reduced link throughput even if no errors. Automatic Repeat Request (ARQ): Link layer retransmission and acknowledgement No reduction in throughput if no errors Reduced throughput and increased delay at link layer May cause congestion May increase variance of RTT Increased RTO May cause head-of-line blocking Receiver 1 Adaptive Link layer strategies: Receiver 2 Dynamically vary FEC code, retransmission limit, frame size 20-11

Indirect TCP 2. Split TCP Solutions Selective Repeat Protocol (SRP) Mobile TCP Mobile-End Transport Protocol 20-12

Fixed Host Two TCP connections: Fixed host to Base Base to Mobile Indirect TCP Base Station Independent flow control on two connections Packets buffered in the base Ack at sender MH has received Violates TCP s end-to-end semantics BS retains hard state. BS failure loss of data On handoff, stored packets must be sent to new BS Does not work if connection not bi-directional. E.g., satellites Reference: Bakre95, Bakre 97 20-13 Mobile Host

3. TCP Aware Link Layer Protocols Snoop Protocol WTCP Delayed DupAcks Protocol SCPS-TP 20-14

Snoop Protocol Split connection and link level retransmission Base monitors returning acks. Retransmits on duplicate acks and drops the duplicate ack Advantages: Only soft state at BS. Only BS modified. No changes to FH or MH. If wireless link delay is less than 4 packets, 3 duplicate acks will not happen and a simple link-level retransmission without dropping duplicate ack will also work. Disadvantages: Does not work with encrypted packets Does not work on asymmetric paths Ref: Balakrishnan95 20-15

4. Explicit Notification Schemes Explicit Loss Notification Explicit Loss Notification 2 Explicit Bad State Notification Partial Ack Protocols 20-16

Explicit Loss Notification Works with Mobile host sources First link on the path is wireless BS keeps track of missing packets from mobile When DupAcks is received, BS sets ELN bit in the DupAcks When mobile receives the DupAcks with ELN bit, it does not back off. Simply retransmits. Reference: Balakrishnan98 20-17

IETF TCPSAT 5. TCP Over Satellite Satellite Transport Protocol (STP) Early Acks: ACKprime 20-18

IETF TCPSAT Large propagation delays => Large bandwidth delay product => Large windows => Use window scaling option Window = window * 2 Scaling factor Use Selective acknowledgements => Allows multiple packets to recovered in one RTT Do not delay acks => Ack every packet Use larger initial window size (suggested 4kB) Byte Counting: Increase window by number of bytes acked rather than just 1 MSS per RTT Reduce bursts from the sender Ref: RFC 2488, 2760 20-19

6. Our Results for Satellite Networks End System Improvements: Slow start Fast Retransmit and Recovery New Reno SACK Intermediate System Improvements: Drop policies For satellite paths, end system improvements have more impact than intermediate-system based improvements SACK helps significantly Fairness depends upon the drop policies in the intermediate systems and not on end system policies 20-20

Wireless Networks: Our Solution sender router receiver Desired Attributes of the Solution: 1. Must maintain TCP s end-to-end semantics: A packet is acked only after received by the final destination. 2. Modifications must be local: Only Base Station (BS) and Mobile Host (MH) are in the control of wireless service provider. Cannot change all locations that MH visits. 3. Must apply to two-way traffic: MH can be both a sender and a receiver. 4. Wireless links can be at the end or in the middle (satellite links) Ref: Liu and Jain 2003 20-21

Congestion Coherence Congestion does not happens nor disappear suddenly: Before congestion reaches the point where a packet has to be dropped, some packets must have been marked. After a packet is lost, some packets will be marked. Lost sender router receiver Marked congestion Unmarked Error Q_len Drop Mark Q_len Drop Mark time 20-22 time

Congestion Coherence Algorithm Link layer acks and retransmissions at all wireless nodes. Receiver: Out-of-order packets received check ECN bits. If any packet marked, send duplicate acks Otherwise, defer the duplicate acks. If expected packet arrives, drop deferred dupacks. If the packet times out, release all deferred dupacks. Sender: When the third duplicate acks arrives, MH checks the ECN-ECHO bits. If any of thee duplicate acks carry an ECN-ECHO, MH retransmits the lost packet and reduces the window. Otherwise, TCP defers the retransmission. When the expected ack arrives, cancel the deferred retransmission. If the expected ack does not arrive in certain period of time then MH starts the deferred retransmission. 20-23

80000 Goodput Number of Packets Acked 70000 60000 50000 40000 30000 20000 10000 0 0.001 0.01 0.1 TCP DDA ECN Snoop CC Packet Error Rate Congestion Coherence provides the highest throughput 20-24

Summary Frequent errors on wireless links trigger the congestion mechanism in TCP resulting in low throughput Key mechanisms are link level schemes to reduce/hide error losses, split TCP, TCP modification in base, receiver, or sender Since congestion builds up slowly, coherence of ECN bits provides a good distinction of congestion vs. errors On satellite links, window scaling, large initial windows, and SACK are helpful 20-25

Homework 20 Exercise: A TCP entity opens a connection and uses slow start. Approximately how many round-trip times are required before TCP can send N segments. Hint: Write down what the CWND and total segments will be after 1 round trips, 2 round trips, 3 round trips, 20-26

Related Wikipedia Articles http://en.wikipedia.org/wiki/explicit_congestion_notification http://en.wikipedia.org/wiki/fast_tcp http://en.wikipedia.org/wiki/network_congestion_avoidance http://en.wikipedia.org/wiki/slow-start http://en.wikipedia.org/wiki/space_communications_protocol_ Specifications http://en.wikipedia.org/wiki/tcp_westwood_plus http://en.wikipedia.org/wiki/tcp_congestion_avoidance_algori thm http://en.wikipedia.org/wiki/tcp_window_scale_option http://en.wikipedia.org/wiki/taxonomy_of_congestion_control http://en.wikipedia.org/wiki/transmission_control_protocol http://en.wikipedia.org/wiki/wtcp 20-27

References C. Liu and R. Jain, "Approaches of Wireless TCP Enhancement and A New Proposal Based on Congestion Coherence", the 36th Hawaii International Conference on System Sciences, Quality of Service in Mobile and Wireless Network minitrack, Big Island, Hawaii, January 5-9, 2003, pp. 307a, http://www.cse.wustl.edu/~jain/papers/hicss.htm This paper also has references to several other papers on wireless. Nitin Vaidya, TCP for Mobile and Wireless Hosts, a comprehensive tutorial presentation, 291 pp., http://www.crhc.uiuc.edu/~nhv/seminars/tcpwireless-tutorial.ppt Annika Wennstr om, Stefan Alfredsson, and Anna Brunstrom, TCP over Wireless Networks, http://kau.divaportal.org/smash/get/diva2:5466/fulltext01 Read sections 9.1 through 9.6 of Murthy and Manoj 20-28

List of Acronyms AIMD Additive increase and multiplicative decrease ARQ Automatic Repeat Request BS Base Station CDMA Code Division Multiple Access CWND Congestion Window EBSN Explicit bad state notification ECN Explicit Congestion Notification ELN Explicit Loss Notification FEC Forward Error Correction FRR Fast Retransmit and Recovery IETF Internet Engineering Task Force LAN Local Area Network MH Mobility Header MSS Maximum Segement Size RFC Request for Comments 20-29

List of Acronyms (Cont) RTT Round Trip Time SACK Selective Acknowledgement SCPS Space Communications Transport Protocol SRP Selective Repeat Protocol STP Satellite Transport Protocol TCP Transmission Control Protocol WTCP Wireless Transmission Control Protocol 20-30