Transp Layer2

Embed Size (px)

Citation preview

  • 7/29/2019 Transp Layer2

    1/11

    1

    Transport LayerTransport Layer(contd..)

  • 7/29/2019 Transp Layer2

    2/11

    Approaches towards congestion controlApproaches towards congestion control

    End-end congestion control:

    no explicit feedback from networkcongestion inferred from end-

    system observed loss, delayapproach taken by TCP

    Network-assisted congestioncontrol:

    routers provide feedback to endsystems

    single bit indicating congestion(SNA, DECbit, TCP/IP ECN, ATM)

    explicit rate sender should send at

    Two broad approaches towards congestion control:

  • 7/29/2019 Transp Layer2

    3/11

    Case study: ATM ABR congestion controlCase study: ATM ABR congestion control

    ABR:ABR: available bit rate:elastic serviceif senders path

    underloaded:

    sender should use availablebandwidthif senders path congested:sender throttled to minimumguaranteed rate

    RMRM (resource management)cells:

    sent by sender, interspersed withdata cells

    bits in RM cell set by switches(network-assisted)

    NI bit:NI bit:no increase in rate (mildcongestion)

    CI bit:CI bit: congestion indication

    RM cells returned to sender byreceiver, with bits intact

  • 7/29/2019 Transp Layer2

    4/11

    Case study: ATM ABR congestionCase study: ATM ABR congestion

    controlcontrol

    Two-byte ER (explicit rate) field in RM cell

    congested switch may lower ER value in cell

    sender send rate thus maximum supportable rate on path

    EFCI bit in data cells: set to 1 in congested switch

    if data cell preceding RM cell has EFCI set, sender sets CI bit in returnedRM cell

  • 7/29/2019 Transp Layer2

    5/11

    TCP congestion control:TCP congestion control:-- additive increase, multiplicative decreaseadditive increase, multiplicative decrease

    8 K b y t e s

    1 6 K b y t e s

    2 4 K b y t e s

    t im e

    c o n g e s t i o n

    w i n d o w

    Approach: increase transmission rate (window size),

    probing for usable bandwidth, until loss occurs

    additive increase:increase CongWin by 1 MSS

    every RTT until loss detected multiplicative decrease: cut CongWin in half after

    loss

    time

    congestionwindowsize

    Saw tooth

    behavior: probing

    for bandwidth

  • 7/29/2019 Transp Layer2

    6/11

    TCP Congestion Control: detailsTCP Congestion Control: details

    sender limits transmission:LastByteSent-LastByteAcked

    CongWinRoughly,

    CongWin is dynamic, function ofperceived network congestion

    How does senderperceive congestion?

    loss event = timeout or3duplicate acks

    TCP sender reduces rate(CongWin) after lossevent

    three mechanisms:

    AIMDslow startconservative after timeoutevents

    rate =CongWin

    RTTBytes/sec

  • 7/29/2019 Transp Layer2

    7/11

    TCP Slow StartTCP Slow Start

    When connection begins,CongWin = 1 MSSExample: MSS = 500 bytes &RTT = 200 msec

    initial rate = 20 kbpsavailable bandwidth may be >>MSS/RTT

    desirable to quickly ramp up torespectable rate

    When connection begins,increase rateexponentially fast untilfirst loss event

  • 7/29/2019 Transp Layer2

    8/11

    TCP Slow Start (more)TCP Slow Start (more)

    When connection begins,increase rate exponentiallyuntil first loss event:-double CongWin every RTT

    -done by incrementing CongWinfor every ACK received

    Summary:initial rate is slowbut ramps up exponentially

    fast

    Host A

    onesegmentRTT

    Host B

    time

    twosegments

    foursegments

  • 7/29/2019 Transp Layer2

    9/11

    RefinementRefinementQ: When should the

    exponential increase switchto linear?

    A: When CongWin gets to 1/2of its value before timeout.

    Implementation:Variable Threshold

    At loss event, Threshold is setto 1/2 of CongWin just beforeloss event

  • 7/29/2019 Transp Layer2

    10/11

    Refinement: inferring lossRefinement: inferring loss

    After 3 dup ACKs:CongWin is cut in half

    window then grows linearly

    But after timeout event:

    CongWin instead set to 1 MSS;

    window then grows exponentially

    to a threshold, then grows linearly

    3 dup ACKs indicatesnetwork capable ofdelivering some segments timeout indicates amore alarmingcongestion scenario

  • 7/29/2019 Transp Layer2

    11/11

    Summary: TCP Congestion ControlSummary: TCP Congestion Control

    When CongWin is below Threshold, sender in slow-start phase, window grows exponentially.

    When CongWin is above Threshold, sender is incongestion-avoidance phase, window grows linearly.

    When a triple duplicate ACK occurs, Threshold setto CongWin/2 and CongWin set to Threshold.

    When timeout occurs, Threshold set to CongWin/2and CongWin is set to 1 MSS.