千兆网卡一直跑不满千兆? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JuicyJ
V2EX    问与答

千兆网卡一直跑不满千兆?

  •  
  •   JuicyJ 2018-01-26 21:54:51 +08:00 9781 次点击
    这是一个创建于 2815 天前的主题,其中的信息可能已经有所发展或是发生改变。

    刚买的迷你主机,折腾了好几天千兆网卡一直跑不满。

    • iperf3 测试:发送最多 800 Mbps,接收最多 600Mbps。
    • Samba 复制:发送 100 MB/s、接收 70 MB/s,跟 iperf3 测试结果一致。
    • 尝试更换系统,Ubuntu / Windows Server 测试结果无差别。
    • 尝试更换驱动,测试结果无差别。
    • 控制变量法排除了线材(其实我用的超六类线( CAT6A ),跑千兆根本毫无压力)、路由器、其他机器网卡问题(其他机器可以跑到 950Mbps )。

    这机器网卡是 Realtek 的 RTL8168 千兆网卡,应该是属于比较次的,但是也不至于会是这种水平。

    1. 如果在给我一次机会我不会再买这种小厂家的产品,直接加钱 nuc 算了。机器是占美的,这厂家在本站口碑算是很不错的。奉劝想买同类产品的 V 友三思。
    2. 有解决思路的 V 友提供一下意见,非常感谢。
    32 条回复    2024-06-29 15:10:21 +08:00
    taikobo
        1
    taikobo  
       2018-01-26 22:09:06 +08:00
    你和卖家商量啊
    应该可以换一个的
    xenme
        2
    xenme  
       2018-01-26 22:12:50 +08:00 via iPhone
    CPU 满美满?
    盒子一般可能瓶颈在 CPU
    hugee
        3
    hugee  
       2018-01-26 22:17:57 +08:00 via Android
    占美口碑好?呵呵哒
    JuicyJ
        4
    JuicyJ  
    OP
       2018-01-26 22:38:09 +08:00
    @terrytw 说实话我并不相信这是个案...

    @xenme 看网卡设置,网卡 Offload 全打开情况下,CPU 50%左右,网卡 Offload 全部关闭,CPU 90+ %。但是这两种情况下网络性能基本一样。

    @hugee 我是屡次在 V 站看到有人推才买的。
    Earthman
        5
    Earthman  
       2018-01-26 23:40:46 +08:00
    试过直连没有? PC-PC 直连测试,还有驱动,这都有问题那应该是硬件的问题。

    当然一般人没法做硬件的 debug,需要至少 1G 带宽的示波器
    JuicyJ
        6
    JuicyJ  
    OP
       2018-01-27 00:07:22 +08:00 via iPhone
    @Earthman 也试了,CAT6A 直连,无济于事
    JuicyJ
        7
    JuicyJ  
    OP
       2018-01-27 00:10:25 +08:00 via iPhone
    @Earthman 驱动我试了官方最新驱动,Windows 自动装的,Ubuntu 自动装的,测试结果都一样
    0ZXYDDu796nVCFxq
        8
    0ZXYDDu796nVCFxq  
       2018-01-27 00:48:14 +08:00 via Android
    本机测试下,看是不是性能或者磁盘问题
    sky97
        9
    sky97  
       2018-01-27 00:51:57 +08:00 via Android
    外界个千兆网卡试试
    msg7086
        10
    msg7086  
       2018-01-27 04:44:47 +08:00
    两种可能:CPU 性能太低;网卡性能太低。
    虽然按理说网卡性能应该是没问题的,那就是 CPU 性能太低了?
    fstab
        11
    fstab  
       2018-01-27 08:32:05 +08:00 via Android
    为什么没有怀疑磁盘太低?
    ironx
        12
    ironx  
       2018-01-27 08:36:51 +08:00 via Android
    网卡芯片出厂之前,这种基本的测试还是会做的。把你的操作系统版本,网卡设置,测试包类型,长度,时间,都列出来看看。
    yingfengi
        13
    yingfengi  
       2018-01-27 09:38:05 +08:00 via Android
    网卡
    CPU
    硬盘
    ipwx
        14
    ipwx  
       2018-01-27 10:44:24 +08:00
    你们都怀疑 cpu 和网卡。但是我根据楼主的描述,怀疑主板的 IO 总线。
    - - - -

    @yingfengi @flyz 首先 iperf 的结果排除了硬盘问题。
    其次网卡的型号明朗,我觉得这么便宜的部件应该不会出问题。
    再次 cpu 在所有测试中都没满负载。
    那么只剩下主板的 IO 总线了。

    想当年我用树莓派,IO 总线太渣,无论接什么设备,都无法突破 4MB/s。
    JuicyJ
        15
    JuicyJ  
    OP
       2018-01-27 10:45:37 +08:00
    @gstqc 本机测试怎么个测法
    @flyz 磁盘三星的 SSD...稳得很
    @sky97 想过外接,看了 http://www.expreview.com/27105.html USB3.0 的千兆卡跑到 70MB/s 都敢说性能卓越不敢买了..你有推荐么,能跑满的那种
    @msg7086 测的时候 CPU 50%左右,会不会是 CPU 的锅
    JuicyJ
        16
    JuicyJ  
    OP
       2018-01-27 10:53:38 +08:00
    @ipwx 感觉眼前一亮...这让我想起来,我拆开后想自己装个网卡,发现它两个网口都是直接焊在主板上的...
    nevin47
        17
    nevin47  
       2018-01-27 11:08:40 +08:00 via Android
    @ipwx 正解正解,Cpu 没跑满优先排查磁盘 IO 是否阻塞,其次应该检查网卡是否收到主板 IO 总线的限制


    @JuicyJ LZ 可以先把磁盘跑个峰值,如果没问题的话就可以大概率怀疑主板的 IO 总线限制了
    JuicyJ
        18
    JuicyJ  
    OP
       2018-01-27 11:21:26 +08:00
    @ironx Windows Server 2016 Datacenter
    TCP 接收
    [ ID] Interval Transfer Bitrate
    [ 5] 0.00-10.00 sec 844 MBytes 708 Mbits/sec sender
    [ 5] 0.00-10.00 sec 844 MBytes 708 Mbits/sec receiver
    UDP 接收
    [ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
    [ 5] 0.00-10.00 sec 1.16 GBytes 1000 Mbits/sec 0.000 ms 0/863224 (0%) sender
    [ 5] 0.00-10.00 sec 151 MBytes 127 Mbits/sec 2.051 ms 727003/836301 (87%) receiver
    TCP 发送
    [ ID] Interval Transfer Bandwidth
    [ 4] 0.00-10.00 sec 997 MBytes 836 Mbits/sec sender
    [ 4] 0.00-10.00 sec 997 MBytes 836 Mbits/sec receiver
    UDP 发送
    [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
    [ 4] 0.00-10.00 sec 702 MBytes 589 Mbits/sec 0.174 ms 3/89897 (0.0033%) sender
    [ 5] 0.00-10.05 sec 702 MBytes 586 Mbits/sec 0.174 ms 3/89897 (0.0033%) receiver
    两个明显异常值:UDP 接收时,指定带宽 1000M,发送方 1.16GB 的流量,只接收了 182MB,丢包率 87%。UDP 发送时,我同样指定了 1000M 的带宽,但是设备只能达到 589Mbps。
    alcarl
        19
    alcarl  
       2018-01-27 11:42:37 +08:00 via Android
    什么 cpu 都不说下,传个文件 cpu 能到 90 %?
    JuicyJ
        20
    JuicyJ  
    OP
       2018-01-27 12:04:47 +08:00
    @alcarl N3150,是跑 iperf3 不是传文件。
    ChangeTheWorld
        21
    ChangeTheWorld  
       2018-01-27 13:14:20 +08:00
    别折腾了 RTL 的千兆网卡也就能跑个 600Mbps,要千兆请用 Intel 的卡
    YanwenSun
        22
    YanwenSun  
       2018-01-27 13:34:27 +08:00 via Android
    查查是不是中断太多了 限制中断数目或者开 MSI-X+RSS
    yingfengi
        23
    yingfengi  
       2018-01-27 15:04:57 +08:00 via Android
    @ipwx 这么说,我想起了当初的那台小主机,确实有可能是这个原因。
    ironx
        24
    ironx  
       2018-01-27 18:11:46 +08:00
    如果是网卡的问题,UDP 丢包那么多,那么 TCP 不可能到 708Mbps。网卡才不会区分是 TCP 还是 UDP。

    你试试把 UDP 缓存调大再测试。

    怀疑是其他部分,内存带宽 ?
    sky97
        25
    sky97  
       2018-01-27 22:39:14 +08:00 via Android
    @JuicyJ 这个没有,不过你主板有雷电 3 接口可以看看有没有雷电 3 接口的,应该比 USB3.0 的快很多
    flynaj
        26
    flynaj  
       2018-01-28 00:24:12 +08:00 via Android
    什么主板,什么接口,总线,800 估计总线就是 800 自然没有办法突破
    innoink
        27
    innoink  
       2018-01-28 01:25:35 +08:00 via Android
    跑 dpdk 啊
    mingl0280
        28
    mingl0280  
       2018-01-28 03:22:24 +08:00
    @JuicyJ N3150 的跑千兆没问题(正在用着),怀疑是干扰或数据包大小设置问题,以及内存是不是爆了?
    mingl0280
        29
    mingl0280  
       2018-01-28 03:38:27 +08:00
    另外我现在 NAS 服务器就是用的 RTL8168,跑千兆完全没问题。

    Test Complete. Summary Results:
    [ ID] Interval Transfer Bandwidth
    [ 4] 0.00-10.00 sec 1.09 GBytes 940 Mbits/sec sender
    [ 4] 0.00-10.00 sec 1.09 GBytes 940 Mbits/sec receiver
    CPU Utilization: local/sender 8.2% (1.5%u/6.7%s), remote/receiver 0.4% (0.1%u/0.3%s)

    能不能在本地跑一下 IO 测试?看下磁盘 IO 和内存 IO 是不是有问题?
    chenlu
        30
    chenlu  
       2018-01-28 08:49:09 +08:00 via Android
    是不是背板速率的问题
    littlesubgirl
        31
    littlesubgirl  
       2020-07-07 05:24:01 +08:00 via Android
    我用 nuc 3050 (双核)和技嘉 3150 ( 4 核)也遇到 samba 跑不满千兆的问题,双机直连都不行。但用 fastcopy 通过 samba 读写文件可以跑满千兆。按道理来讲这 cpu 和网卡跑满千兆都是无压力的,fastcopy 的复制速度也证明了是可以跑满千兆的(网卡速度达到了 970mbs ),所以我怀疑是 cpu 调度有什么策略限制了速度。
    james19820515
        32
    james19820515  
       2024-06-29 15:10:21 +08:00
    有结论了吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     884 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 21:44 PVG 05:44 LAX 14:44 JFK 17:44
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86