HighSpeed TCP for Large Congestion Windows by Sally Floyd Notes
Modifies TCP congestion control mechanism for use with large congestion windows
TCP constrains congestion windows that can be achieved in realistic environments
Standard TCP average congestion window is 1.2/sqrt(p) segments where p is loss.
83000 segments = 1 Gb
Do not ramp up more quickly than allowed by slow start. It would necessitate more explicit feedback from routers along path.
Simpilify to packet loss rates of at most 10^-2
In standard tcp: need w/1.5 rtts between loss events.
Implement: Low_Window: threshold of which response function to use - highspeed or standard High_Window: average congestion window to be achieved. High_P: the tcp packet drop rate.
Need that response function gives straight line on log-log scale. Gives response curve of: W = (p/Low_P)^S Low_Window Where Low_P corresponds to the packet drop rate of Low_Window. S = (log High_Window - log Low_Window) / (log High_P - log Low_P ) Eg for Low_P = 10^-3, Low_Window = 38 and High_Window = 83000, High_P = 10^-7, W = 0.12 / p ^0.835
Appropiate response function is one that gives a plausible packet drop rate for a connection throughput of 10gb/s.
Fairness: Considered through ratio of window sizes for different p
Need AIMD parameters of a(w) and b(w)
Response to ACK: w -> w + a(w)/w
Congestion: w -> ( 1 - b(w) ) w
Standard TCP: a(w) = 1, b(w) = 0.5 for all values of w.
When w = High_Window, we have loss rate High_P. so,
High_Decrease: decrease parameter for b(w) when w = High_Window. Eg. High_Decrease = 0.1, High_Window = 83000, High_P = 10^-7 => b(83000) = 0.1, ie a decrease of 10% after a congestion event. Also a(83000) = 72, if increase of 72 segments or under 0.1% of W.