DOC PREVIEW
Berkeley ELENG 122 - Congestion Control and Avoidance

This preview shows page 1-2-3-27-28-29 out of 29 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 29 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

EE 122: Congestion Control and AvoidanceProblemSolutionsNon-decreasing Efficiency under LoadCongestion CollapseTransport Layer Congestion Collapse 1Transport Layer Congestion Collapse 2Congestion Collapse and EfficiencyTCP Congestion ControlTCP Congestion Control ComponentsCongestion Window (cwnd)Slow Start GoalSlow Start AlgorithmSlow Start ExampleSlow Start ProblemExiting Slow StartAdditive Increase/ Multiplicative DecreaseAI/MD AlgorithmSlow Start/AI/MD ExampleThe big pictureSlow Start/AI/MD PseudocodeAI/MD ProblemCongestion DetectionFast RetransmitFast Recovery: After a Fast RetransmitFast Recovery ProblemFast Retransmit and Fast RecoveryOther TCP-related techniquesTCP Congestion Control SummaryEE 122: Congestion Control and AvoidanceKevin LaiOctober 23, [email protected] 2ProblemAt what rate do you send data?flow control-make sure that the receiver can receive -sliding-window based flow control:•receiver reports window size to sender•higher window  higher throughput•throughput = wnd/RTTcongestion control-make sure that the network can [email protected] 3SolutionsEveryone sends as fast as they can-excess gets dropped-very bad idea: leads to congestion collapseReserve bandwidth-low utilization-never have packet drops, queueing delaysCongestion control and avoidance-high utilization-occasionally have packet drops, queueing [email protected] 4Non-decreasing Efficiency under LoadEfficiency = useful_work/timecritical property of system design-network technology, protocol or applicationotherwise, system collapses exactly when most demand for its operationtrade lower overall efficiency for this?LoadEfficiencykneecliffok? [email protected] 5Congestion CollapseDecrease of network efficiency under load-efficiency = utilization of bandwidthWaste resources on useless or undelivered dataNetwork layer-loaddrops, 1 fragment droppedTransport layer-retransmit too many times-no congestion control / [email protected] 6Transport Layer Congestion Collapse 1network is congested (a router drops packets) the receiver didn’t get a packetsender waits, but not long enough -timeout too short, retransmit again-adds to congestion, increases likelihood that retransmission will be dropped, or delayedrinse, repeatassume that everyone is doing the samenetwork will become more and more congested-with duplicate packets rather than new packetsSolution: fix timeout (previous lecture)[email protected] 7Transport LayerCongestion Collapse 2Waste resources on undelivered dataA flow sends data at a high rate despite lossIts packets consume bandwidth at earlier links, only to be dropped at a later link90% lossbw wastedignores [email protected] 8Congestion Collapse and Efficiencyknee – point after which -throughput increases slowly-delay increases quicklycliff – point after which-throughput decreases quickly to zero (congestion collapse)-delay goes to infinityCongestion avoidance-stay at kneeCongestion control-stay left of (but usually close to) cliffLoadLoadThroughputDelayknee cliffover utilizationunder utilizationsaturationcongestion [email protected] 9TCP Congestion ControlOperate to the left of the cliff-less efficient than operating at the knee, but requires less support from networkSolution: Carefully manage number of packets in network-starting up: increase number of packets allowed-equilibrium: maintain constant number of packets•must probe periodically for more available bandwidth-congestion: decrease number of packets [email protected] 10TCP Congestion Control ComponentsMeasure available bandwidth-slow start•fast, hard on network-additive increase/multiplicative decrease•slow, gentle on networkDetecting congestion-timeout based on RTT (last lecture)•robust, causes low throughput-duplicate acks (Fast Retransmit)•can be fooled, maintains high throughputRecovering from loss-Fast recovery: avoid slow start when few packets [email protected] 11Congestion Window (c wnd) Limits how much data can be in transitIntegrate with flow controlimplemented as # of bytes, describe as # packetsEffectiveWindow = MaxWindow – (LastByteSent – LastByteAcked)MaxWindow = min(cwnd, AdvertisedWindow) LastByteAcked LastByteSentsequence number increases12Slow Start GoalGoal: discover congestion quickly-used to get rough initial estimate of cwndSlow Start used when-a new connection, or-after timeout, or-after connection has been idle for a [email protected] 13Slow Start AlgorithmAlgorithm:-Set cwnd =1 -Each time a segment is acknowledged increment cwnd by one (cwnd++)Slow Start increases cwnd exponentially-called “Slow” because it gradually increases sending rate according to the RTT-predecessor just increased to advWin [email protected] 14Slow Start Examplecwnd doubles every RTTACK for segment 1segment 1cwnd = 1cwnd = 2segment 2segment 3ACK for segments 2 + 3cwnd = 4segment 4segment 5segment 6segment 7ACK for segments 4+5+6+7cwnd = [email protected] 15Slow Start ProblemSlow Start can cause serious loss-loss = bottleneck bandwidth * RTTExample:-bottleneck link is 8 Mb/s-RTT is 100ms-at some point cwnd = 800,000 bits•exactly right for bottleneck-100 ms late, cwnd = 1,600,000 bits•twice the bottleneck, 800,000 bits lost (oops)Need to switch to something else when throughput is close to bottleneck [email protected] 16Exiting Slow Startcwnd>=advWin-limited by receiver’s advertised window  if cwnd allowed to increase, would grow unboundedcongestion-reached available bandwidth  switch to AI/MDcwnd>=ssthresh-ssthresh: slow start threshold-ssthresh is a hint about when to slow down, calculated from previous congestion on same connection-“we experienced congestion beyond this point before, slow down”17Additive Increase/Multiplicative DecreaseUsed Slow Start to get rough estimate of cwndGoal: maintain operating point at the left of the cliff-Additive increase: starting from the rough estimate, slowly increase cwnd to probe for additional available bandwidth-Multiplicative decrease: cut congestion window size aggressively if congestion occursWhy not AI/AD, MI/MD, MI/AD:-mathematical models show A/M is only choice that converges to fairness and [email protected] 18AI/MD Algorithmssthresh = a


View Full Document

Berkeley ELENG 122 - Congestion Control and Avoidance

Documents in this Course
Lecture 6

Lecture 6

22 pages

Wireless

Wireless

16 pages

Links

Links

21 pages

Ethernet

Ethernet

10 pages

routing

routing

11 pages

Links

Links

7 pages

Switches

Switches

30 pages

Multicast

Multicast

36 pages

Switches

Switches

18 pages

Security

Security

16 pages

Switches

Switches

18 pages

Lecture 1

Lecture 1

56 pages

OPNET

OPNET

5 pages

Lecture 4

Lecture 4

16 pages

Ethernet

Ethernet

65 pages

Models

Models

30 pages

TCP

TCP

16 pages

Wireless

Wireless

48 pages

Load more
Download Congestion Control and Avoidance
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Congestion Control and Avoidance and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Congestion Control and Avoidance 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?