BBR patches?
Randall Stewart
rrs at netflix.com
Wed Sep 25 21:28:22 UTC 2019
Hmm
yeah I missed that.. VM’s do not work well when intricate timing is involved.. which it is in HPTS at
least.
I would definitely think about opening up rwnd’s as well I know google mentioned this in
there work with BBR (rwnd’s were too small both send and recv)
R
> On Sep 25, 2019, at 2:23 PM, Michael Tuexen <michael.tuexen at lurchi.franken.de> wrote:
>
>> On 25. Sep 2019, at 22:41, Randall Stewart <rrs at netflix.com> wrote:
>>
>>
>>
>>> On Sep 25, 2019, at 10:22 AM, vm finance <vm.finance2 at gmail.com> wrote:
>>>
>>> Hi Randall, Michael,
>>>
>>> I'm trying to run some tests between FreeBSD BBR VM and another CentOS VM but don't see BBR performing well. FreeBSD (iperf -c) is transmitting to CentOS (iperf -s)
>>>
>>> Enable BBR ( sysctl -w net.inet.tcp.functions_default=bbr) => 213Mb/s
>>> [loaded tcp_bbr using "kldload tcp_bbr.ko"]
>>>
>>> Enable FreeBSD ( sysctl -w net.inet.tcp.functions_default=freebsd) => 271Mb/s
>>>
>>> Questions:
>>> 1. Is there a way to track BBR internals on a running system?
>>
>> Yes, there is a tcp logging function that can be used to turn on things. The other
>> relevant question in this are:
>>
>> 1) What is the RTT
>> 2) Do you know your bottleneck router buffer size
>> 3) What are the rwnd’s in play here.
>>
>> There are known issues with BBR when it faces a high BDP (lots of buffers), new-reno
>> or cubic will do better.
>>
>> One other thing is if you are running from a web browser (like we do at NF) then simply
>> setting default sysctl works but you have to restart the web browser if its running.
>>
>> If its just a simpler
>>
>> set sysctl
>> start-perf
>>
>> Then that should work.
>>
>>
>>> 2. Is "sysctl -w net.inet.tcp.functions_default=bbr" sufficient to turn BBR on?
>>>
>>
>>
>> See above. While the iperf is running you can do
>>
>> sysctl net.inet.tcp.functions_available
>>
>> and you should see a count by bbr showing its being used.
> .. and doing such measurements with VMs adds another set of variables... I would do such
> measurements in non VM setups. Except you really want to study the impact of running in
> VMs. But I think this is not what you want...
>
> Best regards
> Michael
>>
>> R
>>
>>> Any pointers highly appreciated.
>>>
>>> Thanks a lot!
>>>
>>> On Fri, Sep 20, 2019 at 2:42 AM Michael Tuexen <michael.tuexen at lurchi.franken.de> wrote:
>>>> On 20. Sep 2019, at 06:52, vm finance <vm.finance2 at gmail.com> wrote:
>>>>
>>>> Ok - kernel booted, I loaded the module and it loaded successfully (kldstat shows tcp_bbr).
>>>>
>>>> So if I want to compare results between bbr and default cc algo, I just need to load/unload the bbr module - correct?
>>>> Or is there another way to achieve that?
>>> One option is that your test application supports choosing the TCP stack and you compare "freebsd" with "bbr".
>>> One tools which supports this is uperf and here is an example how to select the (not existing anymore)
>>> stack called "fastack"): https://github.com/uperf/uperf/blob/master/workloads/tcp-freebsd-change-stack.xml
>>>
>>> The other possibility is that you set your default TCP stack before running your test app. You can so this
>>> by executing
>>> sudo sysctl -w net.inet.tcp.functions_default=bbr
>>> or
>>> sudo sysctl -w net.inet.tcp.functions_default=freebsd
>>> Then you test application can be TCP stack agnostic.
>>>
>>> Best regards
>>> Michael
>>>
>>>>
>>>> Please let me know.
>>>>
>>>> Thanks for all your help.
>>>>
>>>> On Fri, Sep 20, 2019 at 4:26 AM vm finance <vm.finance2 at gmail.com> wrote:
>>>> finally ;) I was able to build it after manually extracting Makefile contents from patch.
>>>> rebooting now ;)
>>>>
>>>> On Thu, Sep 19, 2019 at 8:12 PM Randall Stewart <rrs at netflix.com> wrote:
>>>> There should have been some in the patch. Tomorrow I can send you a tar of the modules/tcp/bbr Dir.
>>>>
>>>> It’s similar to the rack setup if you can’t wait and want to be adventurous
>>>>
>>>> R
>>>>
>>>> Sent from my iPhone
>>>>
>>>> On Sep 19, 2019, at 7:31 PM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>
>>>> Hi Randall,
>>>>
>>>> I already have tcp_bbr.h and bbr.c at ~sys/netinet/tcp_stacks/
>>>>
>>>> However, there is no "bbr" under sys/modules/tcp/. I created this directory manually.
>>>> Question:
>>>> Which Makefile do I need to copy/move under sys/modules/tcp/bbr?
>>>> I see there are Makefile and Makefile.org under ~modules/tcp...
>>>>
>>>> root at osboxes:/usr/src/sys/modules/tcp # ls -R
>>>> Makefile Makefile.orig bbr rack tcpmd5
>>>> ./bbr:
>>>>
>>>> ./rack:
>>>> Makefile
>>>>
>>>> ./tcpmd5:
>>>> Makefile
>>>>
>>>> Please let me know.
>>>>
>>>> Thanks for your help!
>>>>
>>>> On Thu, Sep 19, 2019 at 11:05 AM Randall Stewart <rrs at netflix.com> wrote:
>>>> Ahh.. Look in your directory.
>>>>
>>>> You did not create the sub’dirs or put rack.c or bbr.c into the right places
>>>>
>>>> When you load the patch (which was updated Sept 17th and should be different slightly)
>>>> you will end up dropping a Makefile and bbr.c and tcp_bbr.h into the local dir since
>>>> for what every reason patch cannot figure out how to place it.
>>>>
>>>> You must move
>>>>
>>>> bbr.c/tcp_bbr.h to -> sys/netinet/tcp_stacks
>>>>
>>>> You must create
>>>>
>>>> sys/modules/tcp/bbr
>>>>
>>>> and
>>>>
>>>> place the make file under there (just like rack’s).
>>>>
>>>> Do that and I think you will finally have it.. not sure why patch is not able to
>>>> put the new files in the right places :0
>>>>
>>>> R
>>>>
>>>>> On Sep 19, 2019, at 10:42 AM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>
>>>>> Hello Randall,
>>>>>
>>>>> I just retried it with headvm config that you had shared but still see error while doing
>>>>> "make cleandepend"
>>>>>
>>>>> Any pointers highly appreciated.
>>>>>
>>>>> Thanks
>>>>>
>>>>> root at osboxes:/usr/src/sys/amd65/compile/headvm # make cleandepend
>>>>> [...snip...]
>>>>>
>>>>> ===> sysvipc/sysvshm (obj)
>>>>> /usr/src/sys/amd64/compile/headvm/modules/usr/src/sys/modules/sysvipc/sysvshm created for /usr/src/sys/modules/sysvipc/sysvshm
>>>>> ===> tcp (obj)
>>>>> ===> tcp/bbr (obj)
>>>>> cd: /usr/src/sys/modules/tcp/bbr: No such file or directory
>>>>> *** Error code 2
>>>>>
>>>>> Stop.
>>>>> make[2]: stopped in /usr/src/sys/modules/tcp
>>>>> *** Error code 1
>>>>>
>>>>> Stop.
>>>>> make[1]: stopped in /usr/src/sys/modules
>>>>> *** Error code 1
>>>>>
>>>>> Stop.
>>>>> make: stopped in /usr/src/sys/amd64/compile/headvm
>>>>> root at osboxes:/usr/src/sys/amd64/compile/headvm #
>>>>>
>>>>>
>>>>> On Wed, Sep 18, 2019 at 11:08 PM vm finance <vm.finance2 at gmail.com> wrote:
>>>>> Hi Randall,
>>>>>
>>>>> I applied the patch available at:
>>>>> https://reviews.freebsd.org/D21582?id=62213
>>>>> NOTE: This raw patch seems to be exactly the same as the one I downloaded on Sep10...hope I'm not missing anything here...
>>>>>
>>>>> I clicked on "download raw diff" and saved it to bbr_patch.diff file on my local machine
>>>>> Step 1: Apply PATCH:
>>>>> cd /usr/src/sys
>>>>> patch < bbr_patch.diff
>>>>> Patch was applied successfully - no errors seen there.
>>>>>
>>>>> Step 2: Update kernel config:
>>>>> cp /usr/src/sys/amd64/conf/GENERIC /usr/src/sys/amd64/conf/MYKERNEL
>>>>> Added three options to MYKERNEL (per ur email - I have also attached the compile MYKERNEL file)
>>>>> cd /usr/src/sys/amd64/compile/MYKERNEL
>>>>> make cleandepend
>>>>> =>This fails due to missing "bbr" under /usr/src/sys/modules/tcp/
>>>>> [pls find the attached log file for exact error]
>>>>>
>>>>> make depend
>>>>> => This also fails due to missing "/usr/src/sys/modules/tcp/bbr"
>>>>>
>>>>> STEP 3:
>>>>> cd /usr/src/
>>>>> make buildkernel KERNCONF=MYKERNEL
>>>>> This also fails due to prior errors in Step 2.
>>>>>
>>>>> Please find MYKERNEL config file + error logs.
>>>>>
>>>>> Many many thanks for taking time to help me through this!
>>>>>
>>>>> PS: I did a make buildkernel without any KERNCONF=MYKERNEL, and that successfully finished.
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Sep 19, 2019 at 12:19 PM Randall Stewart <rrs at netflix.com> wrote:
>>>>> You can look in the config I sent.. but here is what
>>>>> I have added to enable BBR and Rack to be built
>>>>> *****
>>>>> makeoptions WITH_EXTRA_TCP_STACKS=1
>>>>> options TCPHPTS
>>>>> options RATELIMIT
>>>>> ******
>>>>>
>>>>> So you should
>>>>> 1) Apply the current patch in phabricator
>>>>> 2) edit your config and add the above three lines
>>>>> 3) go to the src dir and type
>>>>> make buildkernel KERNCONF=myconf
>>>>>
>>>>> That should build and get you a kernel that will include bbr and rack. You will
>>>>> need to, after it boots up type
>>>>>
>>>>> kldload tcp_bbr
>>>>>
>>>>> or
>>>>>
>>>>> kldload tcp_rack
>>>>>
>>>>> To get the modules loaded
>>>>>
>>>>> R
>>>>>
>>>>>
>>>>>
>>>>>> On Sep 18, 2019, at 2:31 PM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>
>>>>>> Hi Randall, Michael,
>>>>>>
>>>>>> Build is done successfully. I would appreciate if you could share config changes needed for BBR.
>>>>>>
>>>>>> My svn revision is: 352483
>>>>>>
>>>>>> =======================================================
>>>>>> awk -f /usr/src/sys/conf/kmod_syms.awk zlib.ko.full export_syms | xargs -J% objcopy % zlib.ko.full
>>>>>> objcopy --only-keep-debug zlib.ko.full zlib.ko.debug
>>>>>> objcopy --strip-debug --add-gnu-debuglink=zlib.ko.debug zlib.ko.full zlib.ko
>>>>>> --------------------------------------------------------------
>>>>>>>>> Kernel build for GENERIC completed on Wed Sep 18 21:08:31 UTC 2019
>>>>>> --------------------------------------------------------------
>>>>>>>>> Kernel(s) GENERIC built in 1972 seconds, ncpu: 4
>>>>>> =======================================================
>>>>>>
>>>>>> Thank you
>>>>>> Vishal.
>>>>>>
>>>>>>
>>>>>> On Wed, Sep 18, 2019 at 3:34 PM vm finance <vm.finance2 at gmail.com> wrote:
>>>>>> I'm using amd64. I'd get back as soon as base build is complete.
>>>>>>
>>>>>> Thanks!
>>>>>>
>>>>>> On Wed, Sep 18, 2019 at 7:09 AM Randall Stewart <rrs at netflix.com> wrote:
>>>>>> To get bbr running you will need to change your kernel config.
>>>>>>
>>>>>> Are you building i386 or amd64?
>>>>>>
>>>>>> After you have successfully did
>>>>>>
>>>>>> 1) buildworld
>>>>>> 2) buildkernel
>>>>>> 3) installkernel
>>>>>>
>>>>>> (you can look in UPDATING for instructions .. though the file is long :D)
>>>>>>
>>>>>> successfully let me know.. and then I will give you the tweaks you need to add
>>>>>> to the kerneconf.
>>>>>>
>>>>>> It won’t take as long to build because at that point you can add in the
>>>>>> NO_CLEAN NO_CLEANDIR options as well since you will have built everything
>>>>>> the first time
>>>>>>
>>>>>> R
>>>>>>
>>>>>>> On Sep 18, 2019, at 7:06 AM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>
>>>>>>> BTW, if you think I should be making any changes in configs, please do let me know.
>>>>>>> My goal is to build a freebsd image with BBR patches on x86 VM.
>>>>>>> Nothing fancy.
>>>>>>>
>>>>>>> thanks!
>>>>>>>
>>>>>>> On Wed, Sep 18, 2019 at 7:03 AM vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>> Thanks Randall, Michael,
>>>>>>>
>>>>>>> I did "svn svn://svn.freebsd.org/base/head /usr/src"
>>>>>>> and now doing "make buildworld buildkernel"
>>>>>>> [I didn't change anything in configs - just whatever are the defaults]
>>>>>>>
>>>>>>> I would update as soon as its done.
>>>>>>>
>>>>>>> Thanks again!
>>>>>>>
>>>>>>> On Wed, Sep 18, 2019 at 6:53 AM Randall Stewart <rrs at netflix.com> wrote:
>>>>>>> One other note.. I notice his kernel conf he sent does not have
>>>>>>> the right things to get BBR even to attempt to build.
>>>>>>>
>>>>>>> I would suggest using that config for the first steps.. then he must add
>>>>>>> the additional tcp stacks and the hpts in order to get bbr/rack and any other
>>>>>>> extra stack….
>>>>>>>
>>>>>>> But I would suggest to build with his current config first and once he has
>>>>>>> that in place and building
>>>>>>>
>>>>>>> a) apply the patch
>>>>>>> b) add the extra kernel options
>>>>>>>
>>>>>>> R
>>>>>>>
>>>>>>>> On Sep 18, 2019, at 6:50 AM, Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>
>>>>>>>> Thats great idea Michael.
>>>>>>>>
>>>>>>>> From the look fo the build log I was sent, his blow-up has nothing to do
>>>>>>>> with the patches.
>>>>>>>>
>>>>>>>> He should probably
>>>>>>>>
>>>>>>>> 1) Check out a fresh version of head.
>>>>>>>> 2) Follow the instructions in UPDATING to get a clean build.
>>>>>>>> — make buildworld
>>>>>>>> — make buildkernel KERNCONF=his-conf
>>>>>>>> — make installkernel KERNCONF=his-conf
>>>>>>>>
>>>>>>>> ** do the reboot and merge master **
>>>>>>>>
>>>>>>>> Then after that he could
>>>>>>>>
>>>>>>>> 3) Apply the current patch in the review
>>>>>>>> 4) do build that
>>>>>>>> — make buildkernel KERNCONF=his_conf -DNO_CLEAN -DNO_CLEANDIR
>>>>>>>> — make install kernel KERNCONF=his_conf
>>>>>>>>
>>>>>>>> And he should have it all working :)
>>>>>>>>
>>>>>>>> I have done multiple builds with the latest head from yesterday both with and without
>>>>>>>> the extra stacks and hpts.. and I can’t get a build failure.. this would verify he can
>>>>>>>> at least build head..
>>>>>>>>
>>>>>>>> R
>>>>>>>>
>>>>>>>>> On Sep 18, 2019, at 12:10 AM, Michael Tuexen <michael.tuexen at lurchi.franken.de> wrote:
>>>>>>>>>
>>>>>>>>>> On 18. Sep 2019, at 08:19, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>> correcting a typo:
>>>>>>>>>>
>>>>>>>>>> svn co svn://svn.freebsd.org/base/head /usr/src
>>>>>>>>>> current revision: 352434
>>>>>>>>> I suggest to build/install head first without any patches. After that has worked,
>>>>>>>>> apply the patches you are interested in. That way it is easy to separate generic
>>>>>>>>> build issues and issue specific to a patch.
>>>>>>>>>
>>>>>>>>> Best regards
>>>>>>>>> Michael
>>>>>>>>>>
>>>>>>>>>> Thank you!
>>>>>>>>>>
>>>>>>>>>> On Tue, Sep 17, 2019 at 10:11 PM vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Actually I am on head already as mentioned previously. Pulled it using
>>>>>>>>>>> yesterday:
>>>>>>>>>>>
>>>>>>>>>>> svn co svn://svn.freebsd.org/base/head /use/src
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> If you could pls let me know the new patch, I can try that.
>>>>>>>>>>>
>>>>>>>>>>> Thanks
>>>>>>>>>>>
>>>>>>>>>>> Sent from my iPhone
>>>>>>>>>>>
>>>>>>>>>>> On 18-Sep-2019, at 8:56 AM, Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> There have been several patches pre-this one that provide
>>>>>>>>>>> the infrastructure to support BBR.
>>>>>>>>>>>
>>>>>>>>>>> Release 12.0 will *not* have these patches and will *not* compile it.
>>>>>>>>>>>
>>>>>>>>>>> I have no intention at this point in doing a MFC of this work.. so if you
>>>>>>>>>>> want
>>>>>>>>>>> to run BBR you need to run Head
>>>>>>>>>>>
>>>>>>>>>>> R
>>>>>>>>>>>
>>>>>>>>>>> On Sep 17, 2019, at 7:26 PM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Hi Randall,
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Could you please provide a pointer to the latest patch. I had applied the
>>>>>>>>>>> one you published Sep-10.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Following is what I have done:
>>>>>>>>>>>
>>>>>>>>>>> 1. Picked FreeBSD 12.0 RELEASE VM from osboxes.org
>>>>>>>>>>>
>>>>>>>>>>> 2. Got VM up under VMPlayer on x86 laptop
>>>>>>>>>>>
>>>>>>>>>>> 3. Checked out latest codebase from freebsd repo:
>>>>>>>>>>>
>>>>>>>>>>> svn co svn://svn.freebsd.org/base/head /usr/src*
>>>>>>>>>>>
>>>>>>>>>>> cd /usr/src;
>>>>>>>>>>>
>>>>>>>>>>> make buildworld buildkernel
>>>>>>>>>>>
>>>>>>>>>>> [this is where make fails when patch is applied]
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I could try to build with your latest patch - please send me a pointer.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks for your help!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Sep 17, 2019 at 1:33 PM Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Looking at your make file log I can’t really tell what you are doing.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Its not the BBR or Rack code that is blowing up…
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Are you cross compiling?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I have done the old fashioned kernel make
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> i.e.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> cd src/sys/amd64/config
>>>>>>>>>>>
>>>>>>>>>>> config headvm
>>>>>>>>>>>
>>>>>>>>>>> cd ../compile/headvm
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> make cleandepend ; make depend; make -j3
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I have done
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> cd src
>>>>>>>>>>>
>>>>>>>>>>> make buildkernel KERNCONF=headvm
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> And even
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> make buildkernel KERNCONF=GENERIC
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> to make sure that the build works without bbr.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I attach my headvm config..
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> What exactly are you building and how? kernel config too please?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> R
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sep 17, 2019, at 1:11 PM, Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> looking
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I was at 352408.. let me update and try it
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> R
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sep 17, 2019, at 1:10 PM, Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Hmm
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Did you get the patch I updated too this am?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I have built it both with and without the bbr stack and had no issue..
>>>>>>>>>>> there was
>>>>>>>>>>>
>>>>>>>>>>> an issue with KTLS before the update though.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I don’t recognize what you have below there though…
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> R
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sep 17, 2019, at 11:47 AM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Got it - thank you!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> btw, I tried to build the patch but its giving an error. Following is SVN
>>>>>>>>>>> info + make error mesg.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Please let me know what am I missing here?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> #svnlite revision
>>>>>>>>>>>
>>>>>>>>>>> Path: .
>>>>>>>>>>>
>>>>>>>>>>> Working Copy Root Path: /usr/src
>>>>>>>>>>>
>>>>>>>>>>> URL: svn://svn.freebsd.org/base/head
>>>>>>>>>>>
>>>>>>>>>>> Relative URL: ^/head
>>>>>>>>>>>
>>>>>>>>>>> Repository Root: svn://svn.freebsd.org/base
>>>>>>>>>>>
>>>>>>>>>>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
>>>>>>>>>>>
>>>>>>>>>>> Revision: 352436
>>>>>>>>>>>
>>>>>>>>>>> Node Kind: directory
>>>>>>>>>>>
>>>>>>>>>>> Schedule: normal
>>>>>>>>>>>
>>>>>>>>>>> Last Changed Author: jah
>>>>>>>>>>>
>>>>>>>>>>> Last Changed Rev: 352434
>>>>>>>>>>>
>>>>>>>>>>> Last Changed Date: 2019-09-17 03:39:31 +0000 (Tue, 17 Sep 2019)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> root at osboxes:/usr/src #
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -------------------------------------------- snip
>>>>>>>>>>> ----------------------------
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ad_elf64_obj.llo reloc_elf64.llo disk.llo part.llo vdisk.llo dev_net.llo
>>>>>>>>>>> bcache.llo interp_simple.llo zfs_cmd.llo
>>>>>>>>>>>
>>>>>>>>>>> rm -f .depend .depend.* GPATH GRTAGS GSYMS GTAGS
>>>>>>>>>>>
>>>>>>>>>>> ===> sys (cleandir)
>>>>>>>>>>>
>>>>>>>>>>> rm -f export_syms machine x86 tcp_bbr.ko tcp_bbr.kld bbr.o sack_filter.o
>>>>>>>>>>> rack_bbr_common.o opt_inet.h opt_inet6.h opt_ipsec.h opt_tcpdebug.h
>>>>>>>>>>> opt_kern_tls.h
>>>>>>>>>>>
>>>>>>>>>>> rm: x86: is a directory
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make[3]: stopped in /usr/src/sys
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make[2]: stopped in /usr/src
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make[1]: stopped in /usr/src
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make: stopped in /usr/src
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Sep 17, 2019 at 6:41 PM vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Got it - thank you!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> btw, I tried to build the patch but its giving an error. Following is SVN
>>>>>>>>>>> info + make error mesg.
>>>>>>>>>>>
>>>>>>>>>>> I have also attached the entire build log...snippet is below
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Please let me know what am I missing here?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> #svnlite revision
>>>>>>>>>>>
>>>>>>>>>>> Path: .
>>>>>>>>>>>
>>>>>>>>>>> Working Copy Root Path: /usr/src
>>>>>>>>>>>
>>>>>>>>>>> URL: svn://svn.freebsd.org/base/head
>>>>>>>>>>>
>>>>>>>>>>> Relative URL: ^/head
>>>>>>>>>>>
>>>>>>>>>>> Repository Root: svn://svn.freebsd.org/base
>>>>>>>>>>>
>>>>>>>>>>> Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
>>>>>>>>>>>
>>>>>>>>>>> Revision: 352436
>>>>>>>>>>>
>>>>>>>>>>> Node Kind: directory
>>>>>>>>>>>
>>>>>>>>>>> Schedule: normal
>>>>>>>>>>>
>>>>>>>>>>> Last Changed Author: jah
>>>>>>>>>>>
>>>>>>>>>>> Last Changed Rev: 352434
>>>>>>>>>>>
>>>>>>>>>>> Last Changed Date: 2019-09-17 03:39:31 +0000 (Tue, 17 Sep 2019)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> root at osboxes:/usr/src #
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -------------------------------------------- snip
>>>>>>>>>>> ----------------------------
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ad_elf64_obj.llo reloc_elf64.llo disk.llo part.llo vdisk.llo dev_net.llo
>>>>>>>>>>> bcache.llo interp_simple.llo zfs_cmd.llo
>>>>>>>>>>>
>>>>>>>>>>> rm -f .depend .depend.* GPATH GRTAGS GSYMS GTAGS
>>>>>>>>>>>
>>>>>>>>>>> ===> sys (cleandir)
>>>>>>>>>>>
>>>>>>>>>>> rm -f export_syms machine x86 tcp_bbr.ko tcp_bbr.kld bbr.o sack_filter.o
>>>>>>>>>>> rack_bbr_common.o opt_inet.h opt_inet6.h opt_ipsec.h opt_tcpdebug.h
>>>>>>>>>>> opt_kern_tls.h
>>>>>>>>>>>
>>>>>>>>>>> rm: x86: is a directory
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make[3]: stopped in /usr/src/sys
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make[2]: stopped in /usr/src
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make[1]: stopped in /usr/src
>>>>>>>>>>>
>>>>>>>>>>> *** Error code 1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Stop.
>>>>>>>>>>>
>>>>>>>>>>> make: stopped in /usr/src
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Sep 17, 2019 at 6:27 PM Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Pacing is provided by tcp_hpts.c. The current linux patches do not have
>>>>>>>>>>>
>>>>>>>>>>> to have fq.. they built an alternate means of doing pacing into bbr.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> In either case our testing has shown that our pacing is more accurate than
>>>>>>>>>>>
>>>>>>>>>>> either fq or the internal pacer :)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> R
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sep 17, 2019, at 11:05 AM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks Randall.
>>>>>>>>>>>
>>>>>>>>>>> I was able to apply the patch - now rebuilding the kernel. Would update on
>>>>>>>>>>> how it goes.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> BTW, is there any description on how lack of tc_fq under FreeBSD is
>>>>>>>>>>> compensated here?
>>>>>>>>>>>
>>>>>>>>>>> The original BBR patches on Linux show that as a must-have? Is that
>>>>>>>>>>> functionality implemented via tcp_ratelimit.[ch]?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Any pointers to existing presentations/discussions highly appreciated?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks a lot.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Sep 17, 2019 at 5:39 AM Randall Stewart <rrs at netflix.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> You should be able to compile it against the current head. I re-doing that
>>>>>>>>>>> now (had an
>>>>>>>>>>>
>>>>>>>>>>> issue with my machine and had to roll it back to a backup).
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> When I put the patch up on Sept 10th it complied with and without BBR on
>>>>>>>>>>> whatever
>>>>>>>>>>>
>>>>>>>>>>> was that rev..
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Looking in the commit logs that would have been around 352191
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Hope that helps
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> R
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Sep 17, 2019, at 3:32 AM, vm finance <vm.finance2 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Hi Randall,
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks for releasing BBR patch:
>>>>>>>>>>>
>>>>>>>>>>> https://reviews.freebsd.org/D21582#change-xcAWBif3E9Jq
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Could you please let me know what SVN/GIT label tag this is based on? I
>>>>>>>>>>> would like to patch and experiment with it. I couldn't find this info in
>>>>>>>>>>> the released patch.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks a lot!
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Tue, Sep 10, 2019 at 10:26 AM Ryan Stone <rysto32 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>> rrs@ has just posted the BBR patch to phabricator:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> https://reviews.freebsd.org/D21582
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------
>>>>>>>>>>>
>>>>>>>>>>> Randall Stewart
>>>>>>>>>>>
>>>>>>>>>>> rrs at netflix.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------
>>>>>>>>>>>
>>>>>>>>>>> Randall Stewart
>>>>>>>>>>>
>>>>>>>>>>> rrs at netflix.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------
>>>>>>>>>>>
>>>>>>>>>>> Randall Stewart
>>>>>>>>>>>
>>>>>>>>>>> rrs at netflix.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------
>>>>>>>>>>>
>>>>>>>>>>> Randall Stewart
>>>>>>>>>>>
>>>>>>>>>>> rrs at netflix.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------
>>>>>>>>>>>
>>>>>>>>>>> Randall Stewart
>>>>>>>>>>>
>>>>>>>>>>> rrs at netflix.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------
>>>>>>>>>>> Randall Stewart
>>>>>>>>>>> rrs at netflix.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> freebsd-net at freebsd.org mailing list
>>>>>>>>>> https://lists.freebsd.org/mailman/listinfo/freebsd-net
>>>>>>>>>> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>>>>>>>>
>>>>>>>> ------
>>>>>>>> Randall Stewart
>>>>>>>> rrs at netflix.com
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> ------
>>>>>>> Randall Stewart
>>>>>>> rrs at netflix.com
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> ------
>>>>>> Randall Stewart
>>>>>> rrs at netflix.com
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> ------
>>>>> Randall Stewart
>>>>> rrs at netflix.com
>>>>>
>>>>>
>>>>>
>>>>
>>>> ------
>>>> Randall Stewart
>>>> rrs at netflix.com
>>>>
>>>>
>>>>
>>>
>>
>> ------
>> Randall Stewart
>> rrs at netflix.com
------
Randall Stewart
rrs at netflix.com
More information about the freebsd-net
mailing list