-
Notifications
You must be signed in to change notification settings - Fork 14
Question on AIMD-Friendly Region #47
Comments
It looks right. In CUBIC, we start with W_est = 0.7 * cwnd (which is higher than new Reno). The idea of AIMD growth for W_est is to reach the W_max in the same amount of time as New Reno would and as we have a higher starting point for W_est, the growth function is slower than new Reno. And after W_est has reached W_max, we continue with Reno like growth. Reg. definition of segments_acked, we could add it. Although it seemed obvious to me. :-) |
Thanks for a kind explanation! I have some more questionㄴ during my implementation:
However, I think
Otherwise I am confused what is Also in any case it's slower growth than Reno.
After 10, both never meet again because they use same slope. I tried to play with a different alpha_aimd values and when alpha_aimd = 0.7 (beta_cubic) both meet at 10. Is my understanding correct? Datasheet is here: https://docs.google.com/spreadsheets/d/1DvNb-hmPpJ31M7RWWqHNCIgBQwKLXWewvzDDWraG8ns/edit?usp=sharing |
cwnd is current congestion window (cubic window or AIMD window, whichever is greater) because we want to increase by alpha_aimd on every RTT and only the current congestion window (not AIMD window) represents one RTT when the full window is ACKed. |
@goelvidhi Thanks. I tried |
(I don't think this should have been closed.) |
Hi Junho, The AIMD (a, b) analysis considers the steady-state performance with a deterministic loss model
There is a relation between a and b such that AIMD(a,b) achieves the same average cwnd for a given p. The above analysis assumes that cwnd increases up to Wmax, and thus a is only the increase parameter up to W_max. Thank you |
@lisongxu Thanks for your kind explanation! Yes now I understand better. Closing this ticket. |
Hi, while I am implementing this change in quiche, I want to make sure my understanding is correct on "AIMD-Friendly Region" section.
It says to use
To calculate W_est value and alpha_aimd initially is
Since β_{cubic is 0.7 (Section 4.6), it comes down to
And α_{aimd} will become 1 when W_est >= W_max.
Which means in each ACK, W_est can be calculated as follows:
Is my understanding correct? My concern is when W_est < W_max, it's slower than Reno.
Also, I think the definition of segments_acked is missing in the draft.
The text was updated successfully, but these errors were encountered: