From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ua0-x22b.google.com (mail-ua0-x22b.google.com [IPv6:2607:f8b0:400c:c08::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id F15F23B25E for ; Mon, 26 Sep 2016 15:45:26 -0400 (EDT) Received: by mail-ua0-x22b.google.com with SMTP id i25so402415uab.0 for ; Mon, 26 Sep 2016 12:45:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hWSpDSqys1EF7scvXVorVWxrsltv4EgVXAUap6M3Sz8=; b=Xb3nERpXdN4hJs4VvLG48TiClH5uqSHP8x+kyqb+0a39L+x+MmF2PZHwn4MtclAnew Bja5o1CdT9MeH4+IyM2OXaS05K5OCm6/WkdYEsc3yktJXTnNxi7NiGJvdalTh9lvaKCO PVlhJZsONfbD1e1xz3kPxzFTUsLkQK6jZAmuVQgT+YXPF7R3oXFclUPlaYDlWn6zjnXT B7p92Wt3g6CPhW6Aa2jfROwarejzZmmSA5z14cwr+M5qAip956Rl/w3Gv/bE1vJN5fGA ImT+Y/U/3iF4oxTkx8SvjhqyeufC9hoKY2tcdiZVhdTtAkoDxA81KnTH6yaZvyjbLV2X go+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=hWSpDSqys1EF7scvXVorVWxrsltv4EgVXAUap6M3Sz8=; b=dbzuxF0BrBrMB4FprXCi+42T/ouhmYQ5M+fSQ1+MgCi47PQzs67+mQWflKp5DXee3E jSOIuRDEXZ9PYz2v+2n+Gy03YbRGmQZMfEPYToNk+y2B5GiY3xSZzSlWj2J0fIvZhs9H 8HuTFvntqvYFuJB4eMXsNz6TDz+Cwqd5R2/yXSEx1vT32I/YXtYRYW2P390RleipgTR1 89UBPO4WdNs/CTTlNYBHdfrLweTIH+D8SvcmQmXxQzlct+ZA1V8wHRCUOh3C5XvaCRSH 9Owqg3g4GLIZspsfRV7jF/qlhJYPXARNAFZPHZxr0DtqIHvbmNxrlLhYJvKiWRG9nOMm CbXg== X-Gm-Message-State: AA6/9Rlh42dRc2P643C+rtrQB8U6huLGPAOEkmpYODl97Cs6/426YdodETzvXago+3ZMoKj0WEB4wOINerqpdA== X-Received: by 10.159.32.198 with SMTP id 64mr126194uaa.20.1474919126480; Mon, 26 Sep 2016 12:45:26 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Aaron Wood Date: Mon, 26 Sep 2016 19:45:15 +0000 Message-ID: To: Neal Cardwell Cc: "cerowrt-devel@lists.bufferbloat.net" , Eric Dumazet , Yuchung Cheng Content-Type: multipart/alternative; boundary=94eb2c0b61289b3b61053d6e5e7a Subject: Re: [Cerowrt-devel] BBR congestion control algorithm for TCP in net-next X-BeenThere: cerowrt-devel@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Development issues regarding the cerowrt test router project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Sep 2016 19:45:27 -0000 --94eb2c0b61289b3b61053d6e5e7a Content-Type: text/plain; charset=UTF-8 Thanks! And sorry that I missed the sample code in the patch. On Mon, Sep 26, 2016 at 12:30 Neal Cardwell wrote: > On Mon, Sep 26, 2016 at 2:47 PM, Aaron Wood wrote: > > Dumb question on this: The tcp_bbr_info struct for a socket can be > > inspected at runtime through the ss utility or through a get socket opts > > call, right? > > Yes, you can use either approach: > > (1) from code you can use TCP_CC_INFO socket option; there is sample > code in the original kernel patch for TCP_CC_INFO: > https://patchwork.ozlabs.org/patch/465806/ > > (2) from ss: if you download and build the net-next branch of the > iproute2 package: > > http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/log/?h=net-next > then you will get support to print out the main parameters for a BBR > connection, eg: > > The patch with BBR support for ss is here: > > http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?h=net-next&id=2f0f9aef94129643133363b4503468cdccc481cc > > As the commit notes, the BBR output looks like: > bbr:(bw:1.2Mbps,mrtt:18.965,pacing_gain:2.88672,cwnd_gain:2.88672) > > Hope that helps, > neal > > > > > -Aaron > > > > On Sat, Sep 17, 2016 at 11:34 AM, Maciej Soltysiak > > > wrote: > >> > >> Hi, > >> > >> Just saw this: https://patchwork.ozlabs.org/patch/671069/ > >> > >> Interested to see how BBR would play out with things like fq_codel or > >> cake. > >> > >> "loss-based congestion control is unfortunately out-dated in today's > >> networks. On > >> today's Internet, loss-based congestion control causes the infamous > >> bufferbloat problem" > >> > >> So, instead of waiting for packet loss they probe and measure, e.g. when > >> doing slow start (here called STARTUP) they don't speed up until packet > >> loss, but slow down before reaching estimated bandwidth level. > >> > >> Cake and fq_codel work on all packets and aim to signal packet loss > early > >> to network stacks by dropping; BBR works on TCP and aims to prevent > packet > >> loss. > >> > >> > >> Best regards, > >> Maciej > >> > >> > >> _______________________________________________ > >> Cerowrt-devel mailing list > >> Cerowrt-devel@lists.bufferbloat.net > >> https://lists.bufferbloat.net/listinfo/cerowrt-devel > >> > > > > > > _______________________________________________ > > Cerowrt-devel mailing list > > Cerowrt-devel@lists.bufferbloat.net > > https://lists.bufferbloat.net/listinfo/cerowrt-devel > > > --94eb2c0b61289b3b61053d6e5e7a Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Thanks! And sorry that I missed the sample code in the patch.
On Mon, Sep 26, 2016 at 12:30 Neal Cardwe= ll <ncardwell@google.com>= wrote:
On Mon, Sep 26, 2016 at 2:4= 7 PM, Aaron Wood <woody77@gmail.com> wrote:
> Dumb question on this:=C2=A0 The tcp_bbr_info struct for a socket can = be
> inspected at runtime through the ss utility or through a get socket op= ts
> call, right?

Yes, you can use either approach:

(1) from code you can use TCP_CC_INFO socket option; there is sample
code in the original kernel patch for TCP_CC_INFO:
=C2=A0 =C2=A0https://patchwork.ozlabs.org/patch/465806/

(2) from ss: if you download and build the net-next branch of the
iproute2 package:
=C2=A0 =C2=A0
h= ttp://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/log/?h= =3Dnet-next
=C2=A0 then you will get support to print out the main parameters for a BBR=
connection, eg:

=C2=A0 The patch with BBR support for ss is here:
=C2=A0 =C2=A0 http://git.kernel.org/c= git/linux/kernel/git/shemminger/iproute2.git/commit/?h=3Dnet-next&id=3D= 2f0f9aef94129643133363b4503468cdccc481cc

=C2=A0 As the commit notes, the BBR output looks like:
=C2=A0 =C2=A0 bbr:(bw:1.2Mbps,mrtt:18.965,pacing_gain:2.88672,cwnd_gain:2.8= 8672)

Hope that helps,
neal

>
> -Aaron
>
> On Sat, Sep 17, 2016 at 11:34 AM, Maciej Soltysiak <maciej@soltysiak.com>
> wrote:
>>
>> Hi,
>>
>> Just saw this: https://patchwork.ozlabs.org/patch= /671069/
>>
>> Interested to see how BBR would play out with things like fq_codel= or
>> cake.
>>
>> "loss-based congestion control is unfortunately out-dated in = today's
>> networks. On
>> today's Internet, loss-based congestion control causes the inf= amous
>> bufferbloat problem"
>>
>> So, instead of waiting for packet loss they probe and measure, e.g= . when
>> doing slow start (here called STARTUP) they don't speed up unt= il packet
>> loss, but slow down before reaching estimated bandwidth level.
>>
>> Cake and fq_codel work on all packets and aim to signal packet los= s early
>> to network stacks by dropping; BBR works on TCP and aims to preven= t packet
>> loss.
>>
>>
>> Best regards,
>> Maciej
>>
>>
>> _______________________________________________
>> Cerowrt-devel mailing list
>> Cerowrt-devel@lists.bufferbloat.net
>> https://lists.bufferbloat.net/listinfo/= cerowrt-devel
>>
>
>
> _______________________________________________
> Cerowrt-devel mailing list
> Cerowrt-devel@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/ce= rowrt-devel
>
--94eb2c0b61289b3b61053d6e5e7a--