2004 5 18
Download
1 / 19

2004.5.18. - PowerPoint PPT Presentation


  • 53 Views
  • Uploaded on

2004.5.18. Last Class This Class Chapter 6.3. ~ 6.4. TCP congestion control. When congestion happens …. ssthresh = ½ of cwnd In case of TCP Tahoe, cwnd = 1 When timeout happened/triple ACKs arrived Start from minimum sending rate (slow start) In case of TCP Reno, cwnd = ssthresh

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' 2004.5.18.' - badru


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
2004 5 18
2004.5.18.

  • Last Class

  • This Class

    • Chapter 6.3. ~ 6.4.

    • TCP congestion control


When congestion happens
When congestion happens

  • ssthresh = ½ of cwnd

  • In case of TCP Tahoe, cwnd = 1

    • When timeout happened/triple ACKs arrived

    • Start from minimum sending rate (slow start)

  • In case of TCP Reno, cwnd = ssthresh

    • When triple duplicate ACKs arrive

    • Sending rate decreased only by half (fast recovery)

    • When timeout happened, same as in Tahoe.


Problems with tcp reno
Problems with TCP Reno

  • Triple ACKs often fails to be triggered due to either

    • Losses in burst

    • Small sending window

  • Timeout needs unnecessarily long delay.

  • Congestion control in Reno

    • Need to create packet losses to find the available bandwidth of the connection

    • Continually congesting the network

    • Creating losses for other connections sharing the link.

    • Oscillations


Tcp vegas
TCP Vegas

  • Ideas

    • Detect congestion before losses occur

      • Compare RTT between two ACKs

      • If delay has increased, retransmit before a third ACK

    • Lower the rate when this imminent packet loss is detected

      • Estimate the thruput by cwnd and RTT

      • Increase/decrease cwnd by 1


How would you compare tahoe reno and vegas
How would you compare Tahoe, Reno, and Vegas?

  • Which town offers best skiing?

  • Highest probability to win a jackpot?

  • All employ AIMD

    • Distributed – no coordinationbetween connections needed?

    • Efficient – desired load level close to total?

    • Fairness – connections split the share equally?

    • Responsive to and smooth in equilibrium?


Congestion avoidance
Congestion Avoidance

  • Instead of reacting to congestion, try to predict when congestion is about to happen and reduce sending rates

  • DECbit

    • router sets congestion bit to notify users of impending congestion

  • Random Early Detection

  • Source-based Congestion Avoidance


Random early drop red
Random Early Drop (RED)

  • Main idea

    • Instead of waiting for the queue to get full to start dropping, it drops arriving packets with some drop probability whenver queue length exceeds some threshold.


MaxT

MinT

Drop Probability

1

MaxP

AvgQLen

MinT

MaxT

Drop with

some p

Drop all


AvgQLen = (1-α) AvgQLen + α SampleLen

Queue Length

Instantaneous

Average

Time


Drop probability of red
Drop Probability of RED

TempP = MaxP ·(AvgQLen – MinT)/(MaxT-MinT)

P = TempP/(1-count · TempP)

count = # of pkts not dropped

while MinT < AvgQLen < MaxT


Source based congestion avoidance
Source-Based Congestion Avoidance

  • Key idea

    • Figure out that some router’s queue is building up

    • Monitor RTT for increase


Source based congestion avoidance mechanisms
Source-Based Congestion Avoidance Mechanisms

  • If CurrRTT > (minRTT+maxRTT)/2

    Then decrease cwnd by 1/8

  • If (CurrW – OldW) x (CurrRTT – OldRTT) > 0

    Then decrease cwnd by 1/8

    Else increase cwnd by 1/8

  • Per RTT, increase/decrease cwnd by 1 pkt

    Compare thruput with previous one

  • TCP Vegas


When congestion happens1
When congestion happens

  • ssthresh = ½ of cwnd

  • In case of TCP Tahoe, cwnd = 1

    • When timeout happened/triple ACKs arrived

    • Start from minimum sending rate (slow start)

  • In case of TCP Reno, cwnd = ssthresh

    • When triple duplicate ACKs arrive

    • Sending rate decreased only by half (fast recovery)

    • When timeout happened, same as in Tahoe.


Problems with tcp reno1
Problems with TCP Reno

  • Triple ACKs often fails to be triggered due to either

    • Losses in burst

    • Small sending window

  • Timeout needs unnecessarily long delay.

  • Congestion control in Reno

    • Need to create packet losses to find the available bandwidth of the connection

    • Continually congesting the network

    • Creating losses for other connections sharing the link.

    • Oscillations


Tcp vegas1
TCP Vegas

  • Ideas

    • Detect congestion before losses occur

      • Compare RTT between two ACKs

      • If delay has increased, retransmit before a third ACK

    • Lower the rate when this imminent packet loss is detected

      • Estimate the thruput by cwnd and RTT

      • Increase/decrease cwnd by 1


Quality of service
Quality of Service

  • Real-time applications

    • need more than best-effort

    • require some form of QoS guarantee

    • intolerant of loss/delay


Voip timing charts
VoIP Timing Charts

Sue speaks

encoded and packetized

at receiver

played out


Qos support approaches
QoS Support Approaches

  • IntServ’s RSVP

  • DiffServ

    • EF/AF

  • ATM

    • CBR

    • VBR-rt, VBR-nrt

    • ABR

    • UBR

  • Equation-based congestion control


Next class
Next Class

  • HW #8 due

  • End-to-End data (Chap. 7)


ad