V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
terry0314
V2EX  ›  问与答

软路由会导致延迟上升和波动吗

  •  
  •   terry0314 · 2024-06-04 01:58:09 +08:00 · 3808 次点击
    这是一个创建于 553 天前的主题,其中的信息可能已经有所发展或是发生改变。

    软路由是 J4125 的 CPU ,物理机安装 OpenWrt ,只跑了 PassWall2 和 Adguard Home 。

    今天把软路由拆下来准备带到另外的地方。偶然看了一下延迟,发现有明显的下降,以前频繁的波动也没有了。

    之前是软路由做主路由,K2P 当 AP ,现在只有 K2P 。 b2793bc4-8a5e-42f9-a7a8-00c6564925d1.png

    以上是家里设备 ping 运营商 DNS 的延迟,可能的原因是什么呢,大家有什么排查思路么。

    第 1 条附言  ·  2024-06-04 09:32:44 +08:00
    我重新安装了官方最新镜像,没有跑任何服务在上面,今天观察看看延迟情况
    第 2 条附言  ·  2024-06-04 14:00:18 +08:00
    大概率是 PassWall 的问题,早上重新安装最新的官方镜像后,延迟稳定了
    第 3 条附言  ·  2024-06-04 19:19:05 +08:00

    补一张今早重装完之后到现在的延迟,和单独使用 K2P 基本没有区别

    31 条回复    2024-07-01 17:36:09 +08:00
    IvanLi127
        1
    IvanLi127  
       2024-06-04 02:32:43 +08:00
    我觉得是软路由性能不够。以前用 j4125 就这状态,不过我是 pve 里开 vm
    yyysuo
        2
    yyysuo  
       2024-06-04 02:46:27 +08:00 via iPhone
    什么软件的显示?
    terry0314
        3
    terry0314  
    OP
       2024-06-04 07:55:43 +08:00
    @IvanLi127 但我看负载一致很低,CPU load 只有个位数
    terry0314
        4
    terry0314  
    OP
       2024-06-04 07:55:59 +08:00
    @yyysuo 群晖上挂的探针
    JayZXu
        5
    JayZXu  
       2024-06-04 08:08:00 +08:00
    说实话,在我这儿表现也差不多是这样。
    负载不高,测速能跑满,但就是日常访问速度明细要比硬路由慢,所以现在都是旁路由这么用,不会影响主干网
    IvanLi127
        6
    IvanLi127  
       2024-06-04 08:43:13 +08:00
    @terry0314 我也是这样,看负载不高,但是就是延迟大。
    halen1021
        7
    halen1021  
       2024-06-04 10:14:09 +08:00
    感觉不像是性能导致的原因
    halen1021
        8
    halen1021  
       2024-06-04 10:15:52 +08:00
    你这个探针服务是什么呀?
    Goooooos
        9
    Goooooos  
       2024-06-04 10:19:37 +08:00
    我在树莓派上 ping 联通的 dns ,延迟比你的还要低,应该不是性能问题
    网络是:树莓派---(网线)---》小米 AX6000------(网线)---》 J4125 软路由

    pi@pi4:~ $ ping 116.116.116.116
    PING 116.116.116.116 (116.116.116.116) 56(84) bytes of data.
    64 bytes from 116.116.116.116: icmp_seq=1 ttl=92 time=4.62 ms
    64 bytes from 116.116.116.116: icmp_seq=2 ttl=92 time=4.71 ms
    64 bytes from 116.116.116.116: icmp_seq=3 ttl=92 time=4.75 ms
    64 bytes from 116.116.116.116: icmp_seq=4 ttl=92 time=4.68 ms
    64 bytes from 116.116.116.116: icmp_seq=5 ttl=92 time=4.19 ms
    64 bytes from 116.116.116.116: icmp_seq=6 ttl=92 time=4.56 ms
    qian88199496
        10
    qian88199496  
       2024-06-04 10:24:17 +08:00
    我原先是用软路由拨号延迟会高一丢丢,用硬路由拨号,软路由当旁路,延迟会低很多,然后也稳定很多
    Y25tIGxpdmlk
        11
    Y25tIGxpdmlk  
       2024-06-04 10:30:04 +08:00
    @IvanLi127 #1 4125 这 CPU ,物理安装 openwrt ,就跑个软路由,还能性能不够??我猜可能固件或者设置问题。
    wy315700
        12
    wy315700  
       2024-06-04 10:31:36 +08:00
    软路由会导致延迟波动

    和性能无关。
    因为 Linux 分时系统的问题。要等待时间片分配。
    terry0314
        13
    terry0314  
    OP
       2024-06-04 10:36:42 +08:00
    yyysuo
        14
    yyysuo  
       2024-06-04 10:46:18 +08:00
    有没有可能是分流的问题?
    visionzk
        15
    visionzk  
       2024-06-04 10:48:52 +08:00
    说个题外话,会不会是这几天严打,邻居都被封了
    terry0314
        16
    terry0314  
    OP
       2024-06-04 10:49:59 +08:00
    @yyysuo 现在看起来的确比较像是 PassWall 的问题,可能是哪里配置不对,目前新写入的原版镜像不跑服务延迟没有上升
    terry0314
        17
    terry0314  
    OP
       2024-06-04 10:56:08 +08:00
    @visionzk 我这里的现象应该和这个无关,ping 的 DNS 服务器都是运营商本地的
    ShunYea
        18
    ShunYea  
       2024-06-04 11:17:33 +08:00
    @wy315700 #12 那如果这样,爱快一类的都是如此吧?
    wy315700
        19
    wy315700  
       2024-06-04 11:25:59 +08:00
    @ShunYea
    都一样,软路由典型的特点就是延迟不稳定。忽高忽低的

    但是在性能范围内优点多。
    povsister
        20
    povsister  
       2024-06-04 11:51:31 +08:00
    会,分时系统只能尽量保证延时,在工况复杂的时候时常会出现 spike
    和硬路由这种带硬件 offload 的设备没法比。
    ShunYea
        21
    ShunYea  
       2024-06-04 14:53:02 +08:00
    @wy315700 #19 同理,我硬路由刷了 OpenWrt 也是一样了?
    qiaoqiao1235
        22
    qiaoqiao1235  
       2024-06-04 15:01:12 +08:00
    怀疑是不是跟 cpu 调度模式有关,我是自己编的固件,改了 cpu 调度模式,不知道是不是幻觉,感觉延迟还可以。
    一般固件默认是 SCHEDUTIL 模式,我修改成 PERFORMANCE 性能模式

    1 ) userspace 让用户态的程序可以通过接口动态调整 cpufreq
    2 ) conservative 动态调整,load 高则高频,load 低则低频
    3 ) ondemand 也是动态调整,不过比较极端,cpufreq 一使用则立刻最高,用完直接最低
    4 ) powersave CPU 会固定工作在其支持的最低运行频率上
    5 ) performance CPU 会固定工作在其支持的最高运行频率上
    6) Schedutil 根据各个 CPU 使用率变化,调速快(周期在 1ms 级),CPU 频率升得快,降得也快(真实需要多少频率就尽快给多少频率,减少浪费)

    编译的时候修改
    sed -i 's/CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL/CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE/g' target/linux/x86/64/config-5.15
    sed -i '/CONFIG_CPU_FREQ_GOV_SCHEDUTIL/a\CONFIG_CPU_FREQ_GOV_PERFORMANCE=y' target/linux/x86/64/config-5.15
    qiaoqiao1235
        23
    qiaoqiao1235  
       2024-06-04 15:03:13 +08:00
    @qiaoqiao1235 #22
    也可以直接在终端修改(以下为修改性能模式例子)
    也可以写到启动脚本里面,这样刷固件也不会丢失。

    echo performance >> /sys/devices/system/cpu/cpufreq/policy0/scaling_governor
    echo performance >> /sys/devices/system/cpu/cpufreq/policy1/scaling_governor
    echo performance >> /sys/devices/system/cpu/cpufreq/policy2/scaling_governor
    echo performance >> /sys/devices/system/cpu/cpufreq/policy3/scaling_governor
    echo 2700000 > /sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq
    echo 2700000 > /sys/devices/system/cpu/cpufreq/policy1/scaling_min_freq
    echo 2700000 > /sys/devices/system/cpu/cpufreq/policy2/scaling_min_freq
    echo 2700000 > /sys/devices/system/cpu/cpufreq/policy3/scaling_min_freq


    分享一些常用命令:
    查询当前频率:
    cat /proc/cpuinfo |grep MHz|uniq

    查看核心数
    cd /sys/devices/system/cpu/
    ll

    查看当前运行 CPU 模式(这里是 CPU0 为例)
    cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    wy315700
        24
    wy315700  
       2024-06-04 15:49:43 +08:00
    @ShunYea 看你有没有开 offload 了
    JimmyChan1506
        25
    JimmyChan1506  
       2024-06-04 16:49:13 +08:00
    把 Passwall 换成 paopaoDNS+paopaoGateway 吧, 值得拥有
    xctcc
        26
    xctcc  
       2024-06-04 19:30:49 +08:00
    我用软路由,玩 lol 延迟稳定 25 ,用 k2p 硬路由玩 lol ,延迟稳定 19 ,百思不得其解
    terry0314
        27
    terry0314  
    OP
       2024-06-04 19:34:26 +08:00
    @xctcc 软路由上有跑什么服务吗
    xctcc
        28
    xctcc  
       2024-06-04 19:59:17 +08:00
    @terry0314 就 lede 的 openwrt 加 passwall
    terry0314
        29
    terry0314  
    OP
       2024-06-04 20:01:32 +08:00
    @xctcc #28 🤔感觉很可能是 passwall 的问题
    diave971349
        30
    diave971349  
       2024-06-30 02:06:24 +08:00
    @JimmyChan1506 #25 有傻瓜化教程吗
    JimmyChan1506
        31
    JimmyChan1506  
       2024-07-01 17:36:09 +08:00
    @diave971349 官方文档
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   4038 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 10:13 · PVG 18:13 · LAX 02:13 · JFK 05:13
    ♥ Do have faith in what you're doing.