about the meaning of cwnd_gain in bbr

317 views
Skip to first unread message

Eric xu

unread,
Aug 23, 2021, 9:24:29 AM8/23/21
to BBR Development
Hi, Neal
I am puzzled about the meaning of setting cwnd_gain to 2, which will cause inflight to 2BDP,  leaving the amount of BDP packets in buffer.  In my opinion,according to the BDP model, it is most reasonable to keep inflight to BDP,  why set cwnd_gain to 2?  Is it  inconsistent with BDP model? 


Ericbin, thx a lot.

MUHAMMAD AHSAN

unread,
Aug 23, 2021, 10:02:07 AM8/23/21
to BBR Development

this is default setting in BBR ver1. 
pacing_gain:1.25, cwnd_gain:2

I wonder if we can change it  via  /etc/modules       by putting tcp_bbr  with some parameters?

Neal Cardwell

unread,
Aug 23, 2021, 10:29:04 AM8/23/21
to Eric xu, BBR Development
On Mon, Aug 23, 2021 at 9:24 AM Eric xu <ericb...@gmail.com> wrote:
Hi, Neal
I am puzzled about the meaning of setting cwnd_gain to 2, which will cause inflight to 2BDP,  leaving the amount of BDP packets in buffer.  In my opinion,according to the BDP model, it is most reasonable to keep inflight to BDP,  why set cwnd_gain to 2?  Is it  inconsistent with BDP model? 

Please see the BBR article in ACM Queue or CACM for explanations.

For example, in the section entitled "Matching the Packet Flow to the Delivery Path", please see the passage:

"""
To match the packet-arrival rate to the bottleneck link's departure rate, BBR paces every data packet. (BBR must match the bottleneck rate, which means pacing is integral to the design and fundamental to operation—pacing_rate is BBR's primary control parameter. A secondary parameter, cwnd_gain, bounds inflight to a small multiple of the BDP to handle common network and receiver pathologies (see the later section on Delayed and Stretched ACKs).
"""

And also please see the section entitled "Delayed and Stretched ACKs":

"""
Cellular, Wi-Fi, and cable broadband networks often delay and aggregate ACKs.1 When inflight is limited to one BDP, this results in throughput-reducing stalls. Raising ProbeBW's cwnd_gain to two allowed BBR to continue sending smoothly at the estimated delivery rate, even when ACKs are delayed by up to one RTT. This largely avoids stalls.
"""

best regards,
neal
 


Ericbin, thx a lot.

--
You received this message because you are subscribed to the Google Groups "BBR Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bbr-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bbr-dev/0f9c181d-bb6c-4f01-9397-ee8e3fe88b67n%40googlegroups.com.

Neal Cardwell

unread,
Aug 23, 2021, 10:30:38 AM8/23/21
to MUHAMMAD AHSAN, BBR Development
On Mon, Aug 23, 2021 at 10:02 AM MUHAMMAD AHSAN <muhamm...@umt.edu.pk> wrote:

this is default setting in BBR ver1. 
pacing_gain:1.25, cwnd_gain:2

I wonder if we can change it  via  /etc/modules       by putting tcp_bbr  with some parameters?

This will not work, since BBRv1 does not declare any parameters as module parameters.

If you want to run experiments with module parameters, I recommend TCP BBRv2 in the v2alpha branch, where these parameters are declared as module parameters, and so can be modified dynamically even after the module is loaded.

best regards,
neal

 
On Monday, August 23, 2021 at 6:24:29 PM UTC+5 ericb...@gmail.com wrote:
Hi, Neal
I am puzzled about the meaning of setting cwnd_gain to 2, which will cause inflight to 2BDP,  leaving the amount of BDP packets in buffer.  In my opinion,according to the BDP model, it is most reasonable to keep inflight to BDP,  why set cwnd_gain to 2?  Is it  inconsistent with BDP model? 


Ericbin, thx a lot.

--
You received this message because you are subscribed to the Google Groups "BBR Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bbr-dev+u...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages