V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
villivateur
V2EX  ›  宽带症候群

R2S 软路由跑不满千兆,如何排查性能瓶颈在哪?

  •  
  •   villivateur · 77 天前 · 4784 次点击
    这是一个创建于 77 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Nanopi R2S 刷了 Openwrt 的纯净版官方固件,作为家里的主路由。但是测速跑不满千兆,最多 480Mbps 左右。

    用 iperf3 测试 LAN 口设备到 R2S 的速度,可以达到千兆。电脑直连光猫测外网速度也能跑千兆。

    全速下载时,r2s 的 CPU 占用只有 50% 左右,各种代理插件已关。

    第 1 条附言  ·  77 天前
    突然看到这么一个帖子: https://www.right.com.cn/forum/thread-4107714-1-1.html

    > 之前为了手里的 R2S ,到处刷各位大神的固件,总是有各种各样的小问题,后来干脆自己学习编译,总算用上了自己喜欢的固件。在编译过程中,我发现,某些大神做的源代码默认选项,似乎没有正确把 R2S 的硬件驱动打上。要靠编译者自行选择。
    后来我查看了 R2S 的硬件资料发现,其中一个网口是从一个 USB3.0 上转接出来的。很多人说拨号上网速度慢,我就琢磨:这个 USB3.0 控制器的驱动是否在固件里打上了吗?后来再一看代码默认选项-----果然没有 USB3.0 的控制器驱动,只是默认选择了 USB2.0 控制器驱动。

    > 自己编译的时候,我把 RTL 家族的网卡驱动都选上,然后把 USB3.0 的驱动也选上,再进行编译。出来的固件就真正驱动起来 USB3.0 的硬件性能,经过实测,WAN 口和 LAN 口不互换,也可以实现速度提升。
    希望大家编译 R2S 固件的时候,关注一下硬件参数,注意细节,把该打的驱动都打好,充分发挥硬件性能。

    再结合 480Mbps ,我去,openwrt 官方固件该不会真用的是 USB2.0 的驱动吧?有空我再试试。
    第 2 条附言  ·  77 天前
    破案了,确实是有两个核跑满了。
    超频应该能解决,但是我不想刷固件了。

    55 条回复    2022-09-20 17:58:32 +08:00
    smy145012
        1
    smy145012  
       77 天前
    刷一个超频固件试试,我之前也跑不满,后面刷了超频固件 1.5ghz,就可以跑满了
    yyzh
        2
    yyzh  
       77 天前 via Android
    PPPoE 把 CPU 吃满了?
    spacezip
        3
    spacezip  
       77 天前
    对调网口 但也不应该 480 啊。。。。
    Jack9527
        4
    Jack9527  
       77 天前
    瓶颈是没有使用 L 大的超频固件
    fengchen0vr
        5
    fengchen0vr  
       77 天前
    软路由为什么不上 x86 ,这个 R2S 优点不是小而省电么
    henglei
        6
    henglei  
       77 天前
    r2s 的测评最多 500M ,千兆上 r4s
    fuwu1245
        7
    fuwu1245  
       77 天前
    对调网口试下
    我当初 R2S 有线 PT 下载也能稳在 100MB/S 不至于 480Mbps
    ScepterZ
        8
    ScepterZ  
       77 天前
    480 这个数怎么感觉是 usb2.0 跑出来的,但是你到 lan 的速度又没问题,有些神奇,你这是已经对调了网口么,我看本来 lan 上的是转接的那个
    ngv2
        9
    ngv2  
       77 天前   ❤️ 1
    OpenWrt 官方固件用的不是 USB 2.0

    这是在内网一台 Linux 测的,流量经过 NAT
    Idle Latency: 3.15 ms (jitter: 0.30ms, low: 2.77ms, high: 3.56ms)
    Download: 723.52 Mbps (data used: 639.1 MB)
    8.14 ms (jitter: 5.34ms, low: 2.72ms, high: 219.07ms)
    Upload: 924.99 Mbps (data used: 1.3 GB)
    3.38 ms (jitter: 1.13ms, low: 1.97ms, high: 14.36ms)
    Packet Loss: 0.0%

    直接在 R2S 测
    Idle Latency: 3.29 ms (jitter: 0.12ms, low: 3.12ms, high: 3.41ms)
    Download: 948.37 Mbps (data used: 428.3 MB)
    10.40 ms (jitter: 1.31ms, low: 2.63ms, high: 14.13ms)
    Upload: 848.34 Mbps (data used: 831.7 MB)
    5.83 ms (jitter: 1.80ms, low: 2.90ms, high: 13.58ms)
    Packet Loss: 0.0%
    ngv2
        10
    ngv2  
       77 天前
    @ngv2 系统版本 OpenWrt 22.03.0, r19685-512e76967f
    ButcherHu
        11
    ButcherHu  
       77 天前
    网卡中断把两个 cpu 干满了?
    Flanker666
        12
    Flanker666  
       77 天前
    用 iperf 内网互相灌包看看 CPU 占用
    villivateur
        13
    villivateur  
    OP
       77 天前
    @ScepterZ 没对调网口,你说得没错,lan 没问题,看来不是 USB3.0 驱动的问题了
    blueboyggh
        14
    blueboyggh  
       77 天前
    虽然我现在不用 r2s 了,但是我用的时候确实是可以跑到 800M 以上的,另外我用的都是其他人编译的固件,不是 op 官方
    billytom
        15
    billytom  
       77 天前 via Android
    楼主,如果你刷的是天灵的固件,应该就不用在这里发问了
    villivateur
        16
    villivateur  
    OP
       77 天前
    @ngv2 请教下,你在 R2S 上用的是什么测试工具?
    BenX
        17
    BenX  
       77 天前
    R2S 本来就跑不满
    ngv2
        18
    ngv2  
       77 天前
    huaes
        19
    huaes  
       77 天前   ❤️ 1
    有的光猫吧,路由能跑跑 960 ,桥接最多也就 500
    djs
        20
    djs  
       77 天前
    老哥什么时候可以的时候呼唤下我,分享下你打的包,无耻的做个伸手党
    djs
        21
    djs  
       77 天前
    @blueboyggh #14 老哥你用的是哪个固件呢,有地址不
    kenneth104
        22
    kenneth104  
       77 天前   ❤️ 1
    https://github.com/QiuSimons/YAOF

    现在我的 X86 用的这个包,你试试?
    niantoudeyisi
        23
    niantoudeyisi  
       77 天前 via Android
    现在最新的固件 应该都是使用 usb3.0 的驱动。
    我之前内网 iperf3 能跑到 942MB/s 外网没条件测。感觉应该也能达到
    szdosar
        24
    szdosar  
       77 天前
    FlyingShark
        25
    FlyingShark  
       77 天前
    用 22 楼那个固件就行,可以超频到 1.6Ghz ,很稳定,注意电源必须足额
    djs
        26
    djs  
       77 天前
    @szdosar #24 哈哈哈,感谢老哥,回去我试试
    villivateur
        27
    villivateur  
    OP
       77 天前
    @huaes 很可能,感谢提醒
    mrzx
        28
    mrzx  
       77 天前   ❤️ 2
    这个就是个玩具,
    不知道你们测试过小包(比如 64,128 ),那性能更是低的吓人。不可能你上网的时候,发送和接受数据全部是大包吧?

    后期 IPV6 普及开来,需要 ipv6 防火墙吧。。。多点访问控制策略,性能在打折扣。

    号称千兆路由,其实 500M 都悬。。。
    EvanQu
        29
    EvanQu  
       77 天前   ❤️ 1
    网络->防火墙->常规设置->路由 /NAT 分载 下面两个都勾上 重启路由器 在测速试试看
    EvanQu
        30
    EvanQu  
       77 天前
    @EvanQu #29 官方的包 以前 arm 的路由器 怎么跑都是半速,开了就全速了
    ngv2
        31
    ngv2  
       77 天前
    @mrzx 纯小包的测试数据没有意义。
    日常家用场景,大部分是大包,小部分是小包。在这种场景下能跑到合适的性能就行。

    纯小包性能那是商用交换机 /路由器才需要。
    mrzx
        32
    mrzx  
       77 天前
    路由器测试标准可以参考 MikroTik 家对自家产品的测试

    比如在 1518 下转发性能多少? 512 下多少,64 下多少?
    测完路由转发,在测 NAT
    然后在测 ipsec ,不同加密程度下多少性能?
    加了防火墙,低于 25 条策略以下,多少性能?
    跑了 qos,低于 25 条单队列情况下,多少性能?
    桥接和不桥接,多少性能?等等

    这些都要详细测过一边,才能比较直观的,多方面的,观察这个路由器+软件的性能是多少。
    mrzx
        34
    mrzx  
       77 天前   ❤️ 1
    @ngv2 好吧,不跟你争它是家庭路由器,还是企业级路由器的定位。可能我就是干这行的。

    基本上我看中的路由器,都按企业级的标准去要求。。。
    villivateur
        35
    villivateur  
    OP
       77 天前
    @EvanQu 非常感谢,改完之后能跑到 600M 了,剩下的问题我再查一下
    tankren
        36
    tankren  
       77 天前
    小马拉大车
    Kinnice
        37
    Kinnice  
       77 天前
    @BenX R2s 跑不满千兆指的是科学上网跑不满, 不是跑不满正常网络带宽
    Rrrrrr
        38
    Rrrrrr  
       77 天前
    @FlyingShark 怎么看电源够不够
    TerenceRust
        39
    TerenceRust  
       77 天前   ❤️ 1
    top 按 1 看看,单 CPU 占用,应该是负责 PPPoE 那个核满了。以前 Unifi UDM 的 PPPoE 不支持多核的时候也出现过跑不满的情况
    mrzx
        40
    mrzx  
       77 天前
    @Rrrrrr 正常情况,电源标准功率是富裕的,吃不满的。

    比如 5V1.5A ,那就是 7.5w,很多测手机快充功率的那种设备也行。测试一下,是否吃满了 7.5w ?

    如果吃满了,那不用说,功率肯定不够了。。要更大的电源。
    stephenyin
        41
    stephenyin  
       77 天前
    @Rrrrrr #38 至少 5V 3A, 最好 5V 4A
    villivateur
        42
    villivateur  
    OP
       77 天前
    @TerenceRust 感谢,见附言,应该是你说的情况
    niuoh
        43
    niuoh  
       76 天前
    我的 r2s 经常死机 已经放着吃灰了 还是用电脑魔法上网了
    villivateur
        44
    villivateur  
    OP
       76 天前
    @niuoh 我之前用的野鸡固件,也经常死机。换了 openwrt 官方固件,半年都不用重启,非常稳定
    frankies
        45
    frankies  
       76 天前 via Android
    不要只看软件,可以关注改善散热
    JoeoooLAI
        46
    JoeoooLAI  
       76 天前
    不知道 op 有没有用过 kelver1988 的固件,用了很久挺稳定的,不过换了 mikrotik 的路由后就把 openwrt 虚拟化了 出掉 r2s 了。
    465456
        47
    465456  
       76 天前
    有人评论 USB 网卡比较吃 CPU
    Sekai
        48
    Sekai  
       76 天前
    800Mbps j1900 25%的 cpu 占用
    Laitinlok
        49
    Laitinlok  
       75 天前 via Android
    開了 hardware flow offloading 嗎? Packet Steering 要關閉才能跑滿。
    xiaoun001
        50
    xiaoun001  
       75 天前 via Android
    @mrzx 先生正解!我从 05 年解接触 Openwrt ,那时候啥也不懂,觉得 Openwrt 可以装软件,无所不能,神奇的很; 06 年上了 D525 + ESXi ,常见各种软路由系统,都玩过,渐渐的爱上了 Routeros ,专业网工最经济实惠的选择,因为 Cisco 能做的它都能做。Mikrotik 硬件的硬件版无线尤其出
    xiaoun001
        51
    xiaoun001  
       75 天前 via Android
    接上面:Mikrotik 硬件路由无线功能极为出色,前后两代产品在家里用了加起来差不多 10 年,还是很稳。后来因为要 nat1 ,才万分不舍的把他放下了。突然有一天,开始有些反感 OPENWRT 了,一来它的用途被很多博主带歪了,以至于在很多平台直接成了敏感词。二来经历了技术路线之争,lede 获胜以后,今天的 openwrt 早已不是当初的那个追求极致的路由系统了。官方固件性能平庸,且软件库很难永恒,第三方固件良莠不齐,暗坑不少,不少都是冲着 lean 第三方特殊功能去的。 作为消费者,很难有精力,有能力去逐一优化它,性能不好,适配不好,又为什么要费事去折腾呢。
    shilianmlxg
        52
    shilianmlxg  
       73 天前
    你可以用小宝的固件.istore.https://github.com/istoreos

    另外经常死机的问题是 tf 卡瓶颈,可能需要换一个 tf 卡

    还有就是无故停电断电 会损坏系统

    还有就是电源要整个 5v 4a 的
    sisuer1129
        53
    sisuer1129  
       73 天前
    @shilianmlxg 我现在 R2S 就用了小宝的这个固件,不一定最优化,但感觉方便,稳定
    R2S 内网跑个千兆问题还是不大的
    我用 Iperf3 测试过 手机到 R2S 的速度,苹果手机那么弱的 wifi ,测速也能达到 700M 以上了
    PT 下载的话,能跑满我家的宽带( 500M 电信)
    sisuer1129
        54
    sisuer1129  
       73 天前
    @mrzx 可以推荐些路由器么。个人家庭也承受得起的 哈哈
    mrzx
        55
    mrzx  
       73 天前
    @sisuer1129 千兆及双链路千兆宽带,我就无脑推 Mikrotik rb4011 吧,跑千兆绝对性能富裕。别觉得双千兆办的人少,我们小区就 3 个人办理了。

    至于万兆宽带吗?那也是 7~8 年后的事情了。照现在经济不景气的情况下,万兆宽带的到来还早。这年头,运营商疯狂扩容的速度都慢下来了。

    而且现在的千兆宽带性能大部分情况是得看小区 OLT 和整体链路带宽得情况

    万兆得上 Mikrotik 的 CCR 系列了。。除非你们偏远村镇,每家每户收个 20 元一个月,做私人宽带还有搞头(先申明,非法的,但还是有很多在做,这时候能体现 Mikrotik 的 qos 和 pppoe-server ,radius 的强大之处了)。
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2981 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 60ms · UTC 13:07 · PVG 21:07 · LAX 05:07 · JFK 08:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.