Thanks! And sorry that I missed the sample code in the patch.<br><div class="gmail_quote"><div dir="ltr">On Mon, Sep 26, 2016 at 12:30 Neal Cardwell <<a href="mailto:ncardwell@google.com">ncardwell@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Sep 26, 2016 at 2:47 PM, Aaron Wood <<a href="mailto:woody77@gmail.com" target="_blank">woody77@gmail.com</a>> wrote:<br>
> Dumb question on this:  The tcp_bbr_info struct for a socket can be<br>
> inspected at runtime through the ss utility or through a get socket opts<br>
> call, right?<br>
<br>
Yes, you can use either approach:<br>
<br>
(1) from code you can use TCP_CC_INFO socket option; there is sample<br>
code in the original kernel patch for TCP_CC_INFO:<br>
   <a href="https://patchwork.ozlabs.org/patch/465806/" rel="noreferrer" target="_blank">https://patchwork.ozlabs.org/patch/465806/</a><br>
<br>
(2) from ss: if you download and build the net-next branch of the<br>
iproute2 package:<br>
    <a href="http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/log/?h=net-next" rel="noreferrer" target="_blank">http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/log/?h=net-next</a><br>
  then you will get support to print out the main parameters for a BBR<br>
connection, eg:<br>
<br>
  The patch with BBR support for ss is here:<br>
    <a href="http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?h=net-next&id=2f0f9aef94129643133363b4503468cdccc481cc" rel="noreferrer" target="_blank">http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?h=net-next&id=2f0f9aef94129643133363b4503468cdccc481cc</a><br>
<br>
  As the commit notes, the BBR output looks like:<br>
    bbr:(bw:1.2Mbps,mrtt:18.965,pacing_gain:2.88672,cwnd_gain:2.88672)<br>
<br>
Hope that helps,<br>
neal<br>
<br>
><br>
> -Aaron<br>
><br>
> On Sat, Sep 17, 2016 at 11:34 AM, Maciej Soltysiak <<a href="mailto:maciej@soltysiak.com" target="_blank">maciej@soltysiak.com</a>><br>
> wrote:<br>
>><br>
>> Hi,<br>
>><br>
>> Just saw this: <a href="https://patchwork.ozlabs.org/patch/671069/" rel="noreferrer" target="_blank">https://patchwork.ozlabs.org/patch/671069/</a><br>
>><br>
>> Interested to see how BBR would play out with things like fq_codel or<br>
>> cake.<br>
>><br>
>> "loss-based congestion control is unfortunately out-dated in today's<br>
>> networks. On<br>
>> today's Internet, loss-based congestion control causes the infamous<br>
>> bufferbloat problem"<br>
>><br>
>> So, instead of waiting for packet loss they probe and measure, e.g. when<br>
>> doing slow start (here called STARTUP) they don't speed up until packet<br>
>> loss, but slow down before reaching estimated bandwidth level.<br>
>><br>
>> Cake and fq_codel work on all packets and aim to signal packet loss early<br>
>> to network stacks by dropping; BBR works on TCP and aims to prevent packet<br>
>> loss.<br>
>><br>
>><br>
>> Best regards,<br>
>> Maciej<br>
>><br>
>><br>
>> _______________________________________________<br>
>> Cerowrt-devel mailing list<br>
>> <a href="mailto:Cerowrt-devel@lists.bufferbloat.net" target="_blank">Cerowrt-devel@lists.bufferbloat.net</a><br>
>> <a href="https://lists.bufferbloat.net/listinfo/cerowrt-devel" rel="noreferrer" target="_blank">https://lists.bufferbloat.net/listinfo/cerowrt-devel</a><br>
>><br>
><br>
><br>
> _______________________________________________<br>
> Cerowrt-devel mailing list<br>
> <a href="mailto:Cerowrt-devel@lists.bufferbloat.net" target="_blank">Cerowrt-devel@lists.bufferbloat.net</a><br>
> <a href="https://lists.bufferbloat.net/listinfo/cerowrt-devel" rel="noreferrer" target="_blank">https://lists.bufferbloat.net/listinfo/cerowrt-devel</a><br>
><br>
</blockquote></div>