代理服务器 Cake 队列规则常用参数推荐
source link: https://gist.github.com/liberal-boy/c2e414165206451532874ea0da1d15cd
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
代理服务器 Cake 队列规则常用参数推荐
- 注意,BBR 等基于延迟判断发送窗口的拥塞控制算法可能与 AQM 发生冲突!!!对于使用 BBR 的设备,fq 可能还是最好的选择。
为什么选用 Cake
Cake 使用主动队列管理(AQM)技术保持全局同步,可以控制延迟,有效利用宽带。同时它还可以保证每个主机,每个流公平的分享宽带。
使用 Cake 的条件
Cake 与 kernel 4.19 并入主线,因此使用 Cake 需要 kernel 和 iproute2 版本大于 4.19。如何确认 kernel 和 iproute2 版本,以及如何升级本文不做详细说明。
如何启用 Cake
以 root 身份执行命令 tc qdisc replace dev eth0 root cake
,其中 eth0
是网络接口名。
常用参数推荐
- 不想了解可以直接跳到如何设置推荐参数
Cake 的参数十分通俗易懂,默认参数也适用于大部分网络环境,但是根据情况设置更能有效利用宽带。这里介绍几个容易设置、正确设置有一定作用的参数。
unlimited
(默认值):不限制宽带,多数情况下可以直接使用。bandwidth RATE
:指定宽带,设置为网络接口的额定宽带,以便 Cake 调节参数,某些情况下指定宽带可能会提高网络利用率。
往返延迟参数
rtt TIME
(默认 100ms): 此参数用于给 AQM 嵌入拥塞信号,过小可能提前触发拥塞导致无法充分利用宽带,推荐略大于测试出的实际 rtt。
系统开销补偿参数
这个参数较难解释,但是正确设置有一定提升,对于大部分使用以太网接口的服务器,推荐使用 ethernet
预设值。
优先级队列参数
Cake 会根据服务分类字段将流量分成不同的 tins
,并使用不同的队列规则
besteffort
:关闭优先级队列,全部流量使用一个tins
,推荐使用于代理服务器,因为代理服务器发送的流量基本来自代理工具,没有分类,建立多个队列浪费性能。- 其他选项对于代理服务器没有必要,暂不做介绍。
如何设置推荐参数
以 root 身份执行命令
tc qdisc replace dev eth0 root cake rtt 50ms ethernet besteffort
eth0
:网络接口名50ms
:设置为略大于本地到此服务器的往返延迟
如何持久化参数
用上面命令设置的参数重启网络接口就会被重制,可以按以下方法持久化参数,各占位符的定义同上述。
Debain 9+ / Ubuntu 18.04+
- 编辑
/etc/network/interfaces
- 在
iface eth0 ...
下新建一行加入
post-up tc qdisc replace dev eth0 root cake rtt 50ms ethernet besteffort
RHEL 7 / CentOS 7
- 编辑或新建
/sbin/ifup-local
if [[ "$1" == "eth0" ]]
then
/usr/sbin/tc qdisc replace dev eth0 root cake rtt 50ms ethernet besteffort
fi
- 确保
/sbin/ifup-local
有执行权限,以 root 身份执行命令chmod +x /sbin/ifup-local
Recommend
-
93
http://www.cnblogs.com/wupeiqi/articles/6144178.htmlDjango的内置字段如下:Fieldrequired=True#请求不能为空widget=None#HTML插件label=None#用于生成lable标签或显示内容initial=None#初始值help_text=''#帮助信息(在标签旁边显示)error_messages=None#(错...
-
30
原文: 15 Most Frequently Used GCC Compiler Command Line Options 以及评论中大家提供的一些参数。 GCC编译器是一个日常流行的 C 编译器,...
-
35
前提 在 vue开发中,难免遇到各种表单校验,这里整理了网络上和自己平时高频率用到的一些校验方法。如果错误欢迎指出,后期不断补充更新。 Git地址 前端常用的正则校验 git地址 欢迎关注 前端公众号【小夭同学】 1、是否合法IP地址 export
-
234
SwitchyOmega:在浏览器上轻松管理代理规则 2019-09-182020-11-15翻墙方法 92...
-
6
基于线程池、消息队列和epoll模型实现并发服务器架构 ...
-
3
Clash代理规则 2022-09-04 Proxy ...
-
3
CSS-@规则(At-rules)常用语法使用总结更新日期: 2023-02-06阅读: 13标签:
-
13
Clash 代理的 ChatGPT 规则配置 2023-05-03 tech
-
3
telegram设置代理规则 | 张益铭的博客 张益铭的博客 ...
-
0
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK