TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.

Slides:



Advertisements
Similar presentations
1 Improving TCP Performance over Mobile Networks HALA ELAARAG Stetson University Speaker : Aron ACM Computing Surveys 2002.
Advertisements

1 Transport Protocols & TCP CSE 3213 Fall April 2015.
TCP EE122 Discussion 10/31/11. TCP Flow Control Keep sender from overwhelming receiver Data not necessarily pushed to app layer ACK Adv_Win: 300 R Push.
Performance Improvement of TCP in Wireless Cellular Network Based on Acknowledgement Control Osaka University Masahiro Miyoshi, Masashi Sugano, Masayuki.
CMPE 257: Wireless and Mobile Networking
Internet Networking Spring 2003 Tutorial 12 Limited Transmit RFC 3042 Long Thin Networks RFC 2757.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
Computer Networks: TCP Congestion Control 1 TCP Congestion Control Lecture material taken from “Computer Networks A Systems Approach”, Third Ed.,Peterson.
CSEE W4140 Networking Laboratory Lecture 7: TCP flow control and congestion control Jong Yul Kim
Computer Networks : TCP Congestion Control1 TCP Congestion Control.
Networks : TCP Congestion Control1 TCP Congestion Control.
Transport Protocols for Wireless Networks CMPE Spring 2001 Marcelo M. de Carvalho.
Networks : TCP Congestion Control1 TCP Congestion Control Presented by Bob Kinicki.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
TCP performance in Wireless Networks Ehsan Hamadani July 2004.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
1 EE 122: Advanced TCP Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks to Vern Paxson,
CIS 725 Wireless networks. Low bandwidth High error rates.
Mobile Communications: Mobile Transport Layer Mobile Communications Chapter 10: Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping.
Asstt. Professor Adeel Akram.  Motivation  TCP mechanisms  Indirect TCP  Snooping TCP  Mobile TCP  Fast retransmit/recovery  Transmission freezing.
Improving TCP Performance over Mobile Networks Zahra Imanimehr Rahele Salari.
Prof. Dr.-Ing. Jochen Schiller, SS029.1 Mobile Communications Chapter 9: Mobile Transport Layer  Motivation  TCP-mechanisms.
Lecture 11 Mobile Networks: TCP in Wireless Networks Wireless and Mobile Systems Design.
1 Impact of transmission errors on TCP performance (Nitin Vaidya)
1 Transport Protocols (continued) Relates to Lab 5. UDP and TCP.
TCP CS 168 Discussion Week 6 Many thanks to past EE 122 GSIs.
Transport over Wireless Networks Myungchul Kim
EE 122: Congestion Control and Avoidance Kevin Lai October 23, 2002.
9.1 Mobile Computing Chapter 9: Mobile Transport Layer  Motivation  TCP-mechanisms  Classical approaches  Indirect TCP  Snooping TCP  Mobile TCP.
1 Mao W07 Midterm Review EECS 489 Computer Networks Z. Morley Mao Monday Feb 19, 2007 Acknowledgement: Some.
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
1 TCP - Part II Relates to Lab 5. This is an extended module that covers TCP data transport, and flow control, congestion control, and error control in.
Improving TCP Performance over Wireless Networks
TCP: Transmission Control Protocol Part II : Protocol Mechanisms Computer Network System Sirak Kaewjamnong Semester 1st, 2004.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
1 TCP - Part II. 2 What is Flow/Congestion/Error Control ? Flow Control: Algorithms to prevent that the sender overruns the receiver with information.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
MOBILE TCP.
Ασύρματες και Κινητές Επικοινωνίες Ενότητα # 11: Mobile Transport Layer Διδάσκων: Βασίλειος Σύρης Τμήμα: Πληροφορικής.
ECE 4110 – Internetwork Programming
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
Mobile Transport Layer  Motivation  TCP-mechanisms  Indirect TCP  Snooping TCP  Mobile TCP  Fast retransmit/recovery  Transmission freezing  Selective.
Mobile Communications Chapter 9: Mobile Transport Layer  Motivation  TCP-mechanisms  Classical approaches  Indirect TCP  Snooping TCP  Mobile TCP.
Window Control Adjust transmission rate by changing Window Size
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
TCP EE122 Discussion 10/18/13.
Chapter 5 TCP Sequence Numbers & TCP Transmission Control
Chapter 3 outline 3.1 transport-layer services
Introduction to Networks
Introduction to Congestion Control
Wireless Transport.
Precept 2: TCP Congestion Control Review
Chapter 5 TCP Transmission Control
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
TCP.
CS4470 Computer Networking Protocols
IT351: Mobile & Wireless Computing
CS 268: Lecture 4 (TCP Congestion Control)
Mobile Communications Chapter 9: Mobile Transport Layer
TCP for Wireless Networks
EE 122: Lecture 10 (Congestion Control)
Advanced Computer Networks
Transport Layer: Congestion Control
TCP flow and congestion control
TCP: Transmission Control Protocol Part II : Protocol Mechanisms
Impact of transmission errors on TCP performance
Presentation transcript:

TCP over Wireless PROF. MICHAEL TSAI 2016/6/3

TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum number of bytes that can be sent without receiving acknowledgements. Larger window size == faster rate Three major mechanisms: Slow start Congestion avoidance Fast retransmit 2

Slow start + congestion avoidance Congestion window size = 1 initially. Ssthresh: slow start threshold Slow start: For each received ACK (with a new seq. no. ), the window size is exponentially increased (e.g., doubled). (when the window size is smaller than ssthresh) Congestion avoidance: After reaching ssthresh, the window size is linearly increased. Additive Increase 3 SourceDestination

Slow start + congestion avoidance TCP calculates expected round trip time (RTT) and its deviation Timeout: wait time > expected RTT + 4 * deviation Timeout: it signals a packet loss due to congestion (?) When a timeout happens, TCP Tahoe does the following: Dropping ssthresh into half the current window or 2 (multiplicative decrease) Resetting its window size to 1 + enter slow start Double round trip time timer 4

5 Pseudocode Initially: cwnd = 1; ssthresh = infinite; New ack received: if (cwnd < ssthresh) /* Slow Start*/ cwnd = cwnd + 1; else /* Congestion Avoidance */ cwnd = cwnd + 1/cwnd; Timeout: /* Multiplicative decrease */ ssthresh = cwnd/2; cwnd = 1;

6 The big picture (with timeouts) Time cwnd Timeout Slow Start AIMD Timeout ssthresh Slow Start AIMD Initially: cwnd = 1; ssthresh = infinite; New ack received: if (cwnd < ssthresh) /* Slow Start*/ cwnd = cwnd + 1; else /* Congestion Avoidance */ cwnd = cwnd + 1/cwnd; Timeout: /* Multiplicative decrease */ ssthresh = cwnd/2; cwnd = 1;

7 Fast Retransmit Resend a segment after 3 duplicate ACKs Duplicate ACK means that an out-of sequence segment was received Notes: ACKs are for next expected packet Packet reordering can cause duplicate ACKs Window may be too small to get enough duplicate ACKs ACK 2 segment 1 cwnd = 1 cwnd = 2 segment 2 segment 3 ACK 4 cwnd = 4 segment 4 segment 5 segment 6 segment 7 ACK 3 3 duplicate ACKs ACK 4

Big problems for TCP High bit error rates: up to 10^-5 bit error rate. Lots of lost packets due to bit errors. Disconnections: Handoff: mobile devices move between base stations / access points. Mobility: mobile devices move in and out of range of the transmitter. Fading: signals blocked by buildings or other obstacles. Round trip time could significantly vary. (Indication of packet loss could be inaccurate) Big problem: packet losses are not necessarily due to congestion! (the assumption of the original TCP) 8

9

Classification of Solutions Link layer Goal: improve the quality of the link layer, hide the losses from TCP “Local problems should be solved locally” End-to-end Additional considerations are added to TCP to improve its performance Limited performance improvement No modification on the hosts is required Split-connection Wireless  usually the last link to the mobile host Isolate that wireless link with the rest of the path (wired) Two TCP connections, bridged at the wireless gateway Use regular TCP for wired links Use a special protocol designed specifically for that wireless link 10

Indirect TCP (I-TCP) 11

Indirect TCP (I-TCP) 12

I-TCP Advantages No changes in the fixed network / hosts (TCP) Wireless transmission errors do not propagate to the wire-line network Simple and effective Disadvantages End-to-end semantics become less clear Higher end-to-end delay due to buffering and forwarding at the gateway 13

Snooping TCP Transparent extension of TCP within the gateway Hides wireless losses from wired host Buffer packets sent to the mobile host Local retransmission: lost packets on the wireless link, for both directions, are retransmitted immediately by the mobile host or foreign agent Wireless gateway snoops the packet flow so that it can cover up signs of packet loss Recognizes ACK in both directions and suppresses duplicate ACKs 14

Snooping TCP 15

Snooping TCP Data transfer to the mobile host FA buffers data until it receives ACK from the MH FA detects packet loss via duplicated ACKs or timeout Data transfer from the mobile host FA detects packet loss on the wireless link via sequence numbers FA answers directly with a NACK to the MH MH can now retransmit data with only a very short delay Integration of the MAC layer Similar mechanisms often exist in MAC 16

Snooping TCP 17