Computer networks
This presentation is the property of its rightful owner.
Sponsored Links
1 / 51

Computer Networks PowerPoint PPT Presentation


  • 48 Views
  • Uploaded on
  • Presentation posted in: General

Computer Networks. Lecture 18 TCP Cubic, TCP in 4G LTE 11/ 5 /2013 Lecturer: Namratha Vedire. Admin. Assignment 4 Check Point 1 : Nov 15, 11:55 pm To Do: Discuss design with instructor or a TF Nov 11 Code and Report : Nov 19, 11:55 pm

Download Presentation

Computer Networks

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Computer networks

Computer Networks

Lecture 18

TCP Cubic, TCP in 4G LTE

11/5/2013

Lecturer: Namratha Vedire


Admin

Admin

  • Assignment 4

    Check Point 1: Nov 15, 11:55 pm

    To Do: Discuss design with instructor or a TF Nov 11

    Code and Report: Nov 19, 11:55 pm

    To Do: Discuss design with instructor or a TF Nov 14


Computer networks

Demo


Computer networks

Recap


Recap rtt timeout

Recap : RTT & Timeout

  • RTT

    Sample RTT

    EstimatedRTT = (1-α)*EstimatedRTT + α*SampleRTT (α=0.125)

    DevRTT = (1-β)*DevRTT + β*|SampleRTT – EstimatedRTT| (β=0.

  • Timeout = EstimatedRTT + 4*DevRTT

SEG

ACK


Recap congestion control

Delay

Load

Recap :Congestion Control

  • Congestion is

    too many sources sending too much data too fast.

  • Manifestation

    • Lost packets 2. High Delay

      3. Wasted Bandwidth

packet

loss

knee

cliff

congestion

collapse

Throughput

Load


Recap congestion control1

Recap : Congestion Control

  • Efficiency

    - Close to full utilization but low delay.

    - Fast convergence after disturbance.

  • Fairness

    - Resource Sharing

  • Distributed

    - No central knowledge necessary

    - Scalability


Recap simple model

Recap : Simple Model

Flows observe congestion signal d, and locally take actions to adjust rates.

User 1

x1

x2

User 2

d = xi > Xgoal?

xn

User n


Recap a m i md protocol

Recap : A(M)I - MD Protocol

  • Apply the A(M)I – MD algorithm to a sliding window protocol


Recap tcp reno

Recap : TCP/ Reno

  • Two cases

    - 3 duplicate ACKs (network capable of delivering some packets)

    • Timeout (more alarming)

  • Two phases

    1. Slow start (SS) - MI

    2*cwnd per RTT till congestion

    2. Congestion avoidance(CA) – AIMD

    cwnd increase by 1 per RTT

    - 3 duplicate ACKs  cwnd = cwnd/2

    - Timeout  cwnd =1

    - In timeout  timeout = 2*timeout


Recap tcp reno1

Recap : TCP/ Reno

TD

cwnd

TD

TD

TO

ssthresh

ssthresh

ssthresh

ssthresh

Time

CA

SS

CA

CA

SS

CA

SS – Slow Start

CA – Congestion Avoidance

TD – Three Duplicate ACKs

TO - Timeout


Recap tcp reno2

Recap : TCP/ Reno

When cwndis cut to half, why does sending rate not get cut?


Recap tcp reno3

filling buffer

draining buffer

Recap : TCP/ Reno

ç

There is a filling and draining of buffers for each TCP flow.

cwnd

TD

bottleneck

bandwidth

ssthresh

Time

CA


Computer networks

TCP/ Reno Analysis


Tcp reno throughput analysis

TCP/ Reno Throughput Analysis

  • Understand throughput in terms of

    • RTT

    • Packet loss rate (p)

    • Packet size (S)

  • Throughput calculations

    • Assume congestion avoidance and no timeouts occur

    • Mean window size Wm segments, round trip time RTT & pack size S

    • Throughput ≈

Wm * S

bytes/sec

RTT


Deterministic analysis

Deterministic Analysis

  • Consider congestion avoidance

    • Assume one packet is lost per cycle

    • Total packets sent per cycle

    • Packet loss (p)

  • Throughput =

  • = ½*(W + W/2) * W/2 = 3W2/8

  • = 1/(3W2/8) = 8/(3W2) 

cwnd

TD

available

bandwidth

ssthresh

W

W/2

S*Wm

Time

RTT

CA


Tcp reno drawbacks

segment 1

ACK for segment 7

segment 2

segment 3

segment 4

segment 1

segment 7

segment 2

segment 5

segment 6

TCP/ Reno Drawbacks

  • Multiple packets lost simultaneously cannot be accounted for

cwnd = 6

3 duplicate ACK’s

Re-transmit segment 1

cwnd = 3

cwnd might reduce twice for packets lost in same window

3 duplicate ACK’s

Re-transmit segment 2

cwnd = 1


Tcp reno drawbacks1

TCP/ Reno Drawbacks

  • RTT unfairness

    • Flows with different RTT’s grow their congestion windows differently

    • Users with shorter RTT ramp up faster!

    • On long distance links, RTT is high and cwnd takes longer to increase leading to underutilization of link.

  • Synchronized losses

    • Simultaneous packet loss events for multiple competing flows.

New Protocol Necessary!!


Desired characteristics in tcp

Desired Characteristics in TCP

  • Adaptive schemes that grow the congestion window depending on network conditions

    • Scalable

    • RTT Fairness

    • Faster convergence to better utilize full bandwidth


Computer networks

TCP BIC

http://www.land.ufrj.br/~classes/coppe-redes-2007/projeto/BIC-TCP-infocom-04.pdf


Growth functions

Growth functions

  • Consider TCP/Reno growth function

cwnd

TD

TD

TD

TD

ssthresh

Wm

Grows linearly throughout

Time

CA

CA

CA

CA


Tcp bic

TCP BIC

Binary Increase Congestion Control (BIC) algorithm

  • PHASE 1

    • cwnd < low_wind, follows TCP

      • ACK received : cwnd = cwnd + 1

      • Loss event: cwnd = cwnd/2

  • PHASE 2

    • cwnd > low_wind, follows BIC


Bic algorithm

BIC Algorithm

  • Some preliminaries

    • βmultiplicative decrease factor

    • Wmax = cwnd size before the reduction

    • Wmin = β*Wmax – just after reduction

    • midpoint = (Wmax + Wmin)/2

      BIC performs binary search between Wmax and Wmin looking for the midpoint.


Bic algorithm1

BIC Algorithm

Max Probing

Packet loss event

Wmax + Smin

Wmax + Smin

Wmax

(Wmin – midpoint) < Smin

Wmax + 3Smax

Wmax + 2Smax

Wmax +Smax

Wmin

midpoint = (Wmin + Wmax)/2

Wmin

Wmin + Smin

midpoint = (Wmin + Wmax)/2

midpoint = (Wmin + Wmax)/2

Wmin + Smax

Wmin

Wmin + Smax

Wmin – midpoint > Smax

Wmin = β*Wmax

Additive Inc.

Slow Start

Additive Increase

Binary Search


Bic algorithm2

BIC Algorithm

while (cwnd != Wmax){

If ((Wmin – midpoint) > Smax)

cwnd = cwnd + Smax

else

If ((Wmin – midpoint) < Smin)

cwnd = Wmax

else

cwnd = midpoint

If (no packet loss)

Wmin = cwnd

else

Wmin = β*cwnd

Wmax =cwnd

midpoint = (Wmax + Wmin)/2

}

Additive Increase

Binary Search


Bic algorithm3

BIC Algorithm

while (cwnd >= Wmax){

If (cwnd < Wmax + Smax)

cwnd = cwnd + Smin

else

cwnd = cwnd + Smax

If (packet loss)

Wmin = β*cwnd

Wmax =cwnd

}

Slow Start

Max Probing

Additive Increase


Tcp bic summary

TCP BIC - Summary

Max Probing

+ Smax

+ Smin

Packet loss event

Wmax

Time

+ Smax

jump to midpoint

Slow

Start

Binary Increase

Additive Increase

Additive Increase


Tcp bic in action

TCP BIC in Action


Tcp bic advantages

TCP BIC Advantages

  • Scalability: quickly scales to fair BW share

  • Fairness and convergence: Achieves better fairness and faster convergence

  • Slow Growth around Wmax ensures that unnecessary timeouts do not occur.


Tcp bic drawbacks

TCP BIC Drawbacks

  • cwnd growth is aggressive for TCP with short RTT or low speed

    • Short RTT makes cwnd ramp up soon

  • Still dependent on RTT

    • Proportional to inverse square of the RTT like TCP/ Reno

  • Complex window growth function

    • Difficult for analysis and actual implementation


Computer networks

TCP Cubic

http://www4.ncsu.edu/~rhee/export/bitcp/cubic-paper.pdf


Tcp cubic

TCP Cubic

  • cwnd = C( t – K)3 + Wmax

    • Wmax = cwnd before last reduction

    • βmultiplicative decrease factor

    • C scaling factor

    • t is the time elapsed since last window reduction


Tcp cubic1

TCP CUBIC

Max Probing

Cubic starts probing for more Bandwidth

Packet loss event

Wmax

Time

Around Wmax, window growth almost becomes zero

Fast growth upon reduction

Steady State Behavior


Tcp cubic advantages

TCP Cubic Advantages

  • Good RTT fairness

    • Growth dominated by t, competing flows have same t after synchronized packet loss

  • Real-time dependent

    • Similar to BIC but linear increases are time dependent

    • Does not depend on ACK’s like TCP/ Reno

  • Scalability

    • Cubic increases window to Wmax (or its vicinity) quickly and keeps it there longer


Tcp cubic drawbacks

TCP Cubic Drawbacks

  • Slow Convergence

    • Flows with higher cwnd are more aggressive initially

    • Prolonged unfairness between flows

  • Bandwidth Delay Products

    • Linear increase artefacts


Computer networks

TCP in 4G LTE

http://conferences.sigcomm.org/sigcomm/2013/papers/sigcomm/p363.pdf


4g lte

4G LTE

  • Bandwidths match (often exceed) home broadband speeds.

  • Higher Energy Efficiency

    • New resource management policy

  • Higher Throughputs

  • Lower Latency


4g lte architecture

4G LTE - Architecture

UE – User Equipment

RAN – Radio Access Network

CN – Core Network

SGW – Switching Gateway

PGW – Packet Data Network Gateway


4g lte latency

4G LTE - Latency

  • End-to-end latency of a packet that requires a UE’s radio interface is long - RRC promotion delay

  • Promotion delay is not included in either uplink or downlink as the delay has already finished when it reaches the server

  • Estimating the Promo Delay

    • Tsa – Timestamp of SYN

    • TSb – Timestamp of ACK

    • G – inverse of clock frequency

    • Promo Delay = G(TSb – TSa)


4g lte latency1

4G LTE - Latency

  • 3G Networks

    • 2 s from idle to high power state

    • 1.5 s from low to high power state

  • 4G Networks

    • 600 ms promotion delays


4g lte queuing delays

4G LTE - Queuing Delays

  • During data transfer phase, a TCP sender will increase its congestion window, allowing number of unacknowledged packets to grow.

    • “in-flight” packets buffered by routers in network path

    • buffers extensively accommodate cellular network conditions and conceal packet loss

  • In-flight bytes of more than 200KB leads to longer queuing delays.


4g lte undesired slow start

4G LTE – Undesired Slow Start


4g lte undesired slow start1

4G LTE – Undesired Slow Start

in-flight bytes growing


4g lte undesired slow start2

4G LTE – Undesired Slow Start

Packet loss


4g lte undesired slow start3

4G LTE – Undesired Slow Start

Fast retransmission allows TCP to directly send the lost segment

to the receiver possibly preventing retransmission timeout

Fast retransmission


4g lte undesired slow start4

4G LTE – Undesired Slow Start

TCP uses RTT estimate to update retransmission timeout (RTO)

However, TCP does not update RTO based on duplicate ACKs

RTT: 262ms

RTO: 290ms

Duplicate ACKs


4g lte undesired slow start5

4G LTE – Undesired Slow Start

Retransmission timeout causes slow start

RTT: 356ms

RTO: 290ms

RTT > RTO, timeout!

SLOW START


4g lte undesired slow start6

4G LTE – Undesired Slow Start

  • If large number of packets are in flight and one packet is lost

    • large number of duplicate ACKs trigger fast re-transmission

    • avoid timeout

  • Large in-network queues hold many packets and delay the retransmitted packet

    • If specified ACK does not arrive within timeout, this triggers timeout and cwnd = 1

    • Undesired Slow Start

SOLUTION:Update the estimated RTT with duplicate ACKs


4g lte tcp receive window

4G LTE – TCP Receive Window

  • In 4G LTE networks, receive windows have become the bottleneck

    • Initial receive window is not large (mostly 131.8 KB)

    • Application is not reading data fast enough from the receive buffer

  • TCP rate is jointly controlled by congestion window and receive window

    • a full receive window prevents the server from sending more data

    • This leads to bandwidth underutilization

SOLUTION

  • Move data from transport layer buffers to application layer buffers to empty receive window

  • Increase receive window at network level – deployment is challenging


Computer networks

Backup


Netflix app case study

Netflix App Case Study


  • Login