實錄:FreeBSD開啟BBR


首先感謝Netflix的工程師,是他們的工作使得FreeBSD上使用BBR成為可能。


這是Netflix相關項目的GitHub: tcplog_dumper

修改內核配置

# cd /usr/src/sys/amd64/conf
如果安裝FreeBSD時沒有選擇安裝內核源碼,你可以直接解壓FreeBSD發行鏡像中的/usr/freebsd-dist/src.txz/usr/src/.
# cp GENERIC GENERIC-BBR

# ee GENERIC-BBR
調整配置,可以去掉許多不用的模塊以提升性能和節省編譯時間,修改ident的值為GENERIC-BBR,在ident這一項下面加入以下項目:

options TCPHPTS
options RATELIMIT
makeoptions WITH_EXTRA_TCP_STACKS=1

新建/etc/src.conf,內容為:

KERNCONF=GENERIC-BBR
MALLOC_PRODUCTION=yes

編譯並安裝內核

如果vps網絡不好,中途可能斷開。這時可以使用screen來開虛擬終端幫助解決問題,使用請自行搜索。
# /usr/sbin/config GENERIC-BBR
# cd ../compile/GENERIC-BBR
# make cleandepend && make depend
# make -jN
其中N建議為CPU核心數+1. 如果編譯出錯,通常原因是配置時模塊缺失。實在不能確定是否需要的模塊請不要禁用。
# make install
安裝內核,完成后重啟使用新內核。
# uname -a
如果顯示出GENERIC-BBR,恭喜你,BBR內核編譯並安裝成功。

配置和加載BBR模塊

# sysrc kld_list+="tcp_rack tcp_bbr"
啟動時加載BBR模塊。
# echo 'net.inet.tcp.functions_default=bbr' >> /etc/sysctl.conf
設置默認使用BBR,重啟。
# sysctl net.inet.tcp.functions_default
如果結果是net.inet.tcp.functions_default: bbr,則啟用BBR成功。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM