找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 30321|回复: 60

K2P Padavan 连接数、CPU利用率优化,打死不改版

 火.. [复制链接]
本帖最后由 xykz 于 2020-5-25 10:21 编辑

过程回顾:
优化 K2P Padavan CPU 多核心使用
关于Padavan无法充分利用路由CPU的疑问(CPU>30%的利用率影响WIFI内网性能)
关于FULL CONE NAT对路由性能带来的影响研究

上面都可以不用看了,直接上最终优化的版本。

优化CPU多核利用率,主要是后来发现手动分配核心很难适应各种不同的环境,下面这个脚本直接遍历所有的接口,让系统自动判断分配了。路由器启动后、PPPOE拨号、virtual**拨号的时候都要调一遍,我这里是/etc/storage/bin/rps-rfs-ops.sh set

  1. #!/bin/sh

  2. set_rps_rfs() {
  3.     echo f >/proc/irq/11/smp_affinity
  4.     echo f >/proc/irq/12/smp_affinity

  5.     for device in $(ls /sys/class/net); do
  6.         echo f >/sys/class/net/$device/queues/rx-0/rps_cpus
  7.         echo 32768 >/sys/class/net/$device/queues/rx-0/rps_flow_cnt
  8.     done

  9.     echo 32768 >/proc/sys/net/core/rps_sock_flow_entries
  10. }

  11. get_rps_rfs() {
  12.     cat /proc/irq/11/smp_affinity
  13.     cat /proc/irq/12/smp_affinity

  14.     for device in $(ls /sys/class/net); do
  15.         printf "%-10s %-5s %-10s\n" "$device" "$(cat /sys/class/net/$device/queues/rx-0/rps_cpus)" "$(cat /sys/class/net/$device/queues/rx-0/rps_flow_cnt)"
  16.     done

  17.     cat /proc/sys/net/core/rps_sock_flow_entries
  18. }

  19. case $1 in
  20. get)
  21.     get_rps_rfs
  22.     ;;
  23. set)
  24.     set_rps_rfs
  25.     ;;
  26. *)
  27.     get_rps_rfs
  28.     ;;
  29. esac
复制代码


优化连接数,之前的配置里有不少是没用的,这里参考了MikroTik Routers的连接追踪设置,它的比较激进,但是也很有道理。。。比如syn包非常小,linux默认的参数居然是120/60秒超时,不知道是出于什么目的。我的配置稍微保守一点,有兴趣的可以对比试试

  1. echo 15 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_syn_sent
  2. echo 15 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_syn_recv
  3. echo 1800 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_established
  4. echo 30 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_fin_wait
  5. echo 30 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_close_wait
  6. echo 30 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_last_ack
  7. echo 30 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_time_wait
  8. echo 30 > /proc/sys/net/netfilter/nf_conntrack_tcp_timeout_close
  9. echo 30 > /proc/sys/net/netfilter/nf_conntrack_udp_timeout
  10. echo 120 > /proc/sys/net/netfilter/nf_conntrack_udp_timeout_stream
  11. echo 30 > /proc/sys/net/netfilter/nf_conntrack_icmp_timeout
  12. echo 600 > /proc/sys/net/netfilter/nf_conntrack_generic_timeout
复制代码



评分

参与人数 2恩山币 +2 收起 理由
king*** + 1 强大的恩山!(以下重复1万次)
brav*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
问一下楼主,请问这些代码怎么用?谁叫我说小菜鸟
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

看了半天,还是没看懂怎么设置,什么原理
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

前排支持。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

想知道该如何使用这两部分,是不是编译之前修改相应代码

点评

可以,一劳永逸,或者在启动脚本那里添加  详情 回复 发表于 2020-5-27 02:06
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

echo f >/proc/irq/11/smp_affinity
这个管用吗?
我感觉内核好像不支持 自动分配
/home/root # cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3      
11:      37154          0  479767131          0  MIPS GIC  eth2
12:         64  376892419          0          0  MIPS GIC  rai0
20:          0          0          0          0  MIPS GIC  ralink_gpio
30:    1486894          0          0          0  MIPS GIC  xhci-hcd:usb1
31:        281          0          0          0  MIPS GIC  ralink_esw

点评

大神来了,目前用你的新3固件,很爽。 大神看看这个优化是不是可以搞进代码里,期待...... 谢谢  详情 回复 发表于 2020-5-27 06:46
看了一下确实是这样,但是其他的可以,你可以用htop看看,所有核心都是均衡负载的  详情 回复 发表于 2020-5-27 02:07
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

编译的时候怎么加进去?

点评

这个我不清楚,没玩编译,可以加在启动脚本那里  详情 回复 发表于 2020-5-27 02:08
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
maverickgoose 发表于 2020-5-26 10:15
想知道该如何使用这两部分,是不是编译之前修改相应代码

可以,一劳永逸,或者在启动脚本那里添加

点评

【优化连接数】这部分可以直接写在padavan启动脚本那里 【优化CPU多核利用率】这段代码怎么用,手动改/etc/storage/bin/rps-rfs-ops.sh这个文件吗? 谢谢大神  详情 回复 发表于 2020-5-27 06:48
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
footlog 发表于 2020-5-26 15:49
echo f >/proc/irq/11/smp_affinity
这个管用吗?
我感觉内核好像不支持 自动分配

看了一下确实是这样,但是其他的可以,你可以用htop看看,所有核心都是均衡负载的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
kinkit 发表于 2020-5-26 17:41
编译的时候怎么加进去?

这个我不清楚,没玩编译,可以加在启动脚本那里
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

footlog 发表于 2020-5-26 15:49
echo f >/proc/irq/11/smp_affinity
这个管用吗?
我感觉内核好像不支持 自动分配

大神来了,目前用你的新3固件,很爽。
大神看看这个优化是不是可以搞进代码里,期待......
谢谢

点评

中断那个可能没有用。。。  详情 回复 发表于 2020-5-27 20:26
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

xykz 发表于 2020-5-27 02:06
可以,一劳永逸,或者在启动脚本那里添加

【优化连接数】这部分可以直接写在padavan启动脚本那里
【优化CPU多核利用率】这段代码怎么用,手动改/etc/storage/bin/rps-rfs-ops.sh这个文件吗?
谢谢大神

点评

rps-rfs-ops.sh这个文件并不存在,需要自己复制内容新建一个,或者传一个上去; 需要分别在下面二个位置调用这段脚本“rps-rfs-ops.sh set”: 自定义设置->脚本->在路由器启动后执行 自定义设置->网络检测->  详情 回复 发表于 2020-5-27 12:44
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

breed里有超频吗?

点评

没超,默认频率按这个配置就可以跑我的测试用例  详情 回复 发表于 2020-5-27 12:45
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
maverickgoose 发表于 2020-5-27 06:48
【优化连接数】这部分可以直接写在padavan启动脚本那里
【优化CPU多核利用率】这段代码怎么用,手动改/e ...

rps-rfs-ops.sh这个文件并不存在,需要自己复制内容新建一个,或者传一个上去;

需要分别在下面二个位置调用这段脚本“rps-rfs-ops.sh set”:

自定义设置->脚本->在路由器启动后执行
自定义设置->网络检测->在网络访问状态改变时运行脚本

点评

大佬,我用putty传上了这个文件,路径和你一样 /etc/storage/bin/rps-rfs-ops.sh 权限已改为755 在putty中想测试一下,用的命令是/etc/storage/bin/rps-rfs-ops.sh get 结果控制台显示 -sh:/etc/storage/bin/rps  详情 回复 发表于 2020-5-27 14:37
自定义设置->网络检测->在网络访问状态改变时运行脚本 这个我再补充一下,固件页面有所区别,找到【网络监测】---【监测模式改为持续监测】--- 【拉到最下面,在网络访问状态改变时运行脚本】  详情 回复 发表于 2020-5-27 14:02
赞呀,步骤一目了然,这就去整上  详情 回复 发表于 2020-5-27 13:43
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
martin_ni 发表于 2020-5-27 08:32
breed里有超频吗?

没超,默认频率按这个配置就可以跑我的测试用例
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-27 04:29

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表