Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Aug 2020 10:14:32 +0200
From:      Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
To:        Liang Tian <l.tian.email@gmail.com>
Cc:        freebsd-net <freebsd-net@freebsd.org>
Subject:   Re: Appropriate Byte Counting during Congestion Avoidance
Message-ID:  <51C01869-3FC2-43A8-AC9D-4A6F961F93B7@lurchi.franken.de>
In-Reply-To: <CAJhigrgajo%2BXAfY7PQA5zPr_HWOqTjfThnGkX9St2NqbgiTprg@mail.gmail.com>
References:  <CAJhigrgajo%2BXAfY7PQA5zPr_HWOqTjfThnGkX9St2NqbgiTprg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> On 19. Aug 2020, at 06:51, Liang Tian <l.tian.email@gmail.com> wrote:
> 
> Hi everyone,
> 
> We noticed CWND is growing much slower than expected during congestion
> avoidance with new reno, and we came to this piece of code in
> cc_ack_received() at tcp_input.c:353
> 
> if (type == CC_ACK) {
> ....
>        if (tp->snd_cwnd > tp->snd_ssthresh) {
>            tp->t_bytes_acked += min(tp->ccv->bytes_this_ack,
>                 nsegs * V_tcp_abc_l_var * tcp_maxseg(tp));
>            if (tp->t_bytes_acked >= tp->snd_cwnd) {
>                tp->t_bytes_acked -= tp->snd_cwnd;
>                tp->ccv->flags |= CCF_ABC_SENTAWND;
>            }
> The increment of t_bytes_acked is capped at 2*maxseg.
> The description of the sysctl variable tcp_abc_l_var(default value 2) is
> "Cap the max cwnd increment during slow-start to this number of segments"
> After reading RFC3465, it doesn't look like this cap should be applied
> here since this is clearly not during slow-start.
> We've seen in some cases the receiver is ACKing every 16 packets, and
> CWND is growing at 1/8 of the expected rate because of this.
> 
> I would appreciate your opinion on this. Thanks a lot.
Hi Liang,

thanks for bringing this up. I agree. A patch is under review:
https://reviews.freebsd.org/D26120

Best regards
Michael
> 
> Regards,
> Liang
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51C01869-3FC2-43A8-AC9D-4A6F961F93B7>