万兆网络升级指南:飞牛NAS速度翻倍
前言
当你的飞牛NAS(fnOS)已经跑满千兆网络(约110MB/s),而手头的硬盘、SSD缓存和CPU都还绰绰有余时,瓶颈往往就在网络上。升级到万兆(10GbE)网络,是让飞牛NAS性能翻倍、甚至翻三倍的最直接路径。本文将手把手带你完成从硬件选型、系统配置到速度验证的完整升级流程。
第一步:硬件准备与连接
万兆网络升级首先需要确认硬件支持。飞牛NAS基于Linux内核,对主流万兆网卡兼容性很好,但请避开过于冷门的芯片。
网卡选择建议 推荐使用Intel X520/X710系列或Mellanox ConnectX-3/4系列。这些卡在二手市场性价比极高,功耗低,驱动成熟。如果是PCIe 3.0 x4以上插槽,单口万兆网卡即可跑满带宽;如果是PCIe 2.0,建议选择双口网卡并启用链路聚合(后文会讲)。
线缆与交换机 短距离(10米内)建议直接使用DAC高速铜缆,成本低、延迟低。长距离或穿墙场景,选用多模光纤加SFP+光模块。如果只有两台设备直连,甚至不需要交换机,直接用网线或DAC线连接NAS和电脑,手动配置IP即可。
安装与连接 关机,插上万兆网卡,接好线缆。开机后,进入飞牛NAS后台,查看网络设置,确认新网卡已被识别。通常系统会自动分配IP,如果连接交换机,请确保交换机端口已启用万兆。
第二步:驱动与固件检查
虽然飞牛NAS内置了大量网卡驱动,但部分旧卡可能需要手动加载。
打开飞牛NAS的SSH终端(需先在系统设置中开启SSH),使用以下命令查看网卡状态:
lspci | grep -i ethernet
你应该能看到类似 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection 的输出。接着检查驱动是否加载:
lsmod | grep ixgbe
如果输出为空,尝试手动加载:
modprobe ixgbe
然后让驱动开机自动加载:
echo "ixgbe" >> /etc/modules
对于Mellanox网卡,驱动名为 mlx4_core 或 mlx5_core,同理操作。
第三步:网络参数调优
万兆网络对缓冲区大小敏感,默认的TCP参数可能导致速度只能跑到2-3Gbps。我们需要进行以下优化。
编辑系统参数文件:
nano /etc/sysctl.conf
在文件末尾添加以下内容:
# 增大TCP读写缓冲区
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
# 启用TCP窗口缩放
net.ipv4.tcp_window_scaling = 1
# 增大网卡队列长度
net.core.netdev_max_backlog = 5000
# 关闭慢启动后重置
net.ipv4.tcp_slow_start_after_idle = 0
保存并退出,然后应用:
sysctl -p
第四步:巨型帧配置
巨型帧(Jumbo Frame)能将以太网帧从标准的1500字节提升到9000字节,大幅减少CPU中断次数,提升大文件传输效率。
在飞牛NAS后台的网络设置中,找到万兆网卡,将MTU值改为9000。注意:你的交换机、电脑网卡也必须同时启用巨型帧,且MTU值要一致。如果某一段链路不支持,会导致通信失败或降速。
电脑端设置示例(Windows): 打开网络适配器属性,找到“巨型帧”或“Jumbo Packet”,选择“9000字节”或“9014字节”(不同厂商名称略有差异)。
第五步:链路聚合(可选)
如果你有两张万兆网卡,或者一张双口万兆卡,可以通过链路聚合将两个万兆口合并为一个20Gbps的逻辑链路,同时提高带宽和冗余。
飞牛NAS基于Debian,使用 bonding 驱动。在SSH中执行:
apt update && apt install ifenslave
然后编辑网络配置文件(路径可能因版本不同,通常位于 /etc/network/interfaces 或 /etc/netplan/)。以下以interfaces文件为例:
auto bond0
iface bond0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
bond-slaves enp1s0 enp2s0
bond-mode 802.3ad
bond-miimon 100
bond-lacp-rate fast
bond-xmit-hash-policy layer3+4
其中 enp1s0 和 enp2s0 是你的两个万兆网口名称(可通过 ip a 查看)。模式选择802.3ad需要交换机也配置LACP(链路聚合控制协议)。如果交换机不支持,可以使用 balance-rr 模式,但会牺牲一些兼容性。
重启网络服务生效:
systemctl restart networking
第六步:速度验证
配置完成后,用实际文件传输来验证。推荐使用 iperf3 测试纯网络带宽,排除硬盘瓶颈。
在NAS上启动服务端:
iperf3 -s
在电脑上运行客户端(假设NAS IP为192.168.1.100):
iperf3 -c 192.168.1.100 -t 30 -P 4
如果一切正常,你应该看到总和接近9.4-9.8Gbps,即1.1GB/s左右。如果只有4-5Gbps,检查巨型帧、TCP参数或网卡中断亲和性。
接着测试SMB/NFS实际文件传输。在飞牛NAS上创建一个内存盘避免硬盘瓶颈:
mkdir /tmp/speedtest
mount -t tmpfs -o size=4G tmpfs /tmp/speedtest
然后通过SMB共享该目录,从电脑拷贝一个大文件(如4GB的测试文件),观察速度。如果达到800MB/s以上,说明万兆链路已完全跑满。
总结
万兆网络升级并不是简单插个网卡就能完事。从硬件兼容性检查,到内核参数调优、巨型帧配置,再到可选的链路聚合,每一步都直接影响最终速度。按照本文的步骤操作后,你的飞牛NAS应该能稳定跑满万兆带宽,大型文件传输、视频剪辑协作等场景将彻底告别等待。记住,升级后定期检查网卡温度和固件版本,万兆网卡虽然强大,但散热和兼容性仍需留意。