E transi7on from exponen7al growth to linear growth 44

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: TCP sender of the conges7on 94 ECN (3) •  Advantages: –  Routers deliver clear signal to hosts –  Conges7on is detected early, no loss –  No extra packets need to be sent •  Disadvantages: –  Routers and hosts must be upgraded 95 38 11/12/13 Introduc7on to Computer Networks TCP Variants Computer Science & Engineering TCP Variants •  There are many different strains of TCP including: –  Loss ­based conges7on control: Reno, BIC, Cubic –  Delay ­based conges7on control: Vegas, Veno, Westwood –  High ­speed conges7on control: Scalable, HighSpeed, HTCP 39 11/12/13 Delay Based Conges7on Control •  Basic idea: –  Before packet loss occurs, detect the early stage of conges7on in the routers between source and des7na7on –  Addi7vely decrease the sending rate when incipient conges7on is detected 98 TCP Vegas •  Expected = cwnd/BaseRTT •  Actual = cwnd/RTT •  DIFF = (Expected-Actual) if ( DIFF*BaseRTT < α ) BaseRTT: the minimum of all measured RTT cwnd = cwnd + 1 else if ( DIFF*BaseRTT > β ) RTT: the actual round ­trip 7me of a tagged packet cwnd = cwnd – 1 else cwnd = cwnd CSE 461 University of Washington α and β are constant values that are set by experimenta7on 99 40 11/12/13 TCP Vegas •  Modified Slow Start –  Try to find the correct window size without incurring a loss –  exponen7ally increasing its window every other RTT and using the other RTT to calculate DIFF –  As soon as Vegas detects queue buildup during slow start, it transi7ons to conges7on avoidance 100 TCP Veno •  TCP Vegas has some limita7ons: –  Not robust to RTT changes –  Does not compete well with loss ­based conges7on techniques •  TCP Veno is designed to address these limita7ons: –  Combines Vegas with Reno –  Exponen7al start as in Reno –  Modifies addi7ve increase/mul7plica7ve decrease phases 41 11/12/13 TCP Veno Algorithm •  Mul7plica7ve decrease algorithm if (DIFF*BaseRTT < β) else //random loss due to bit errors is most //likely to have occurred ssthresh = cwndloss * (4/5); ssthresh = cwndloss /2; //congestive loss is most //likely to have occurred 103 TCP Veno •  Addi7ve increase algorithm –  Reduce increments when buffers are ge}ng filled up; more aggressive than Vegas, but less aggressive than Reno if ( DIFF*BaseRTT < β ) // available bandwidth under-utilized cwnd=cwnd+1/cwnd when every new ack received else if (DIFF*BaseRTT ≥ β ) // available bandwidth fully utilized cwnd=cwnd+1/cwnd when every other new ack received 104 42 11/12/13 TCP Westwood Packet pair: effec7ve under random loss, overes7mates under conges7on Under No Congestion Tk Packet train: fair estimate under congestion, underestimates under random loss Under Congestion Tk •  To obtain rate es7mate: adapt the sample interval T according to conges7on level •  Need to be careful about dupacks, delayed acks, etc. k 105 High BDP Variants •  Represents a class of algorithms that are much more aggressive than tradi7onal TCP Traditional TCP Scalable TCP  cwnd  cwnd cwnd + 1/cwnd; - if no loss was detected  cwnd cwnd/2; - if a loss was detected cwnd + 0.01; - if no loss was detected  cwnd cwnd*0.875; - if a loss was detected 43 11/12/13 Comparison Scalable TCP Traditional TCP Cubic •  Two key modifica7ons: –  Cubic window growth with inflec7on point at conges7on window at previous loss –  Safe exit for slow start (i.e., transi7on from exponen7al growth to linear growth) 44 11/12/13 Introduc7on to Computer Networks PCP – Probe Control Protocol Computer Science & Engineering Resource Alloca7on Problem   How to allocate network bandwidth resources when mul7ple flows share common links? •  Goals: –  –  –  –  –  Minimize transfer 7me Negligible packet...
View Full Document

Ask a homework question - tutors are online