揭秘!如何用安全方式体验国产NAS系统飞牛fnos,兼顾便利和数据安全
飞牛fnos是我最近正在试用的一个国产nas系统,在痛点功能上产品的完成度很高,我之前是双网口的win10主机挂smb做存储,数据同步靠百度网盘,每天同步数据量有限,最近hyper-v虚拟机器体验了一把fnos,感觉很不错,但有三个痛点问题。
一、三个痛点
第一是视频转码,hyper-v虚拟机是无法给linux虚拟机做显卡直通,转码这功能不是很常用但一定要有,很多场景下手机流量看视频不转码的话比较肉疼,还有就是有些情况下带宽不稳定,转码可以保证视频流畅性。
第二是fnos还是众测系统,稳定性和可靠性还是要打问号的,直接把我的win10换成这个系统还是很需要勇气的,目前的我是没有。
第三是数据迁移问题,fnos目前是不能挂载有内容的ntfs硬盘的,挂载硬盘需要创建存储池并格式化硬盘,只能备份-恢复的方式迁移,我手头的硬盘数量是不够的。
二、如何解决痛点?
那么目前如何解决这三个痛点,安全便利地使用fnos呢?
我的方案是物理机fnos远程挂载smb配合smb多通道。利用闲置的一台四网口J4125小主机安装fnos系统,然后远程挂载smb共享文件,但是速度上会有问题,需要配合smb多通道或者RDMA来解决速度问题。具体步骤如下:
第一步:在win10即smb共享设备上,进入控制面板-程序和功能-点击左上角的“启用或关闭windows功能”,点选“smb直通”。


第二步是先尝试启用RDMA(远程直接内存访问),该模式可显著降低CPU占用,具有 RDMA 的网络适配器可以以非常低的延迟全速运行,大幅度提高文件传输吞吐量,使用 SMB 多通道时,SMB 会检测网络适配器是否具有 RDMA 功能,然后为该单个会话创建多个 RDMA 连接(每个接口两个)。这允许 SMB 使用支持 RDMA 的网络适配器提供的高吞吐量、低延迟和低 CPU 利用率。如果您使用多个 RDMA 接口,它还提供容错能力。
在win10的powershell输入以下内容后回车:
Set-NetOffloadGlobalSetting -NetworkDirect Enabled
在输入“Get-NetAdapterRDMA”后回车,我设备的网卡不支持,显示如图:

如果你的网卡支持,Enabled下会显示true,如果支持自然是很好的,毕竟既可以提速还可以降低cpu占用,如果不支持也没事。
接着输入“Set-SmbServerConfiguration -EnableMultiChannel $true”启用服务器smb多通道就可以了。
第三步是fnos上的设置。设置-网络设置-新建链路聚合,选择自适应负载均衡。我这里有交换机,就是win10和fnos各接两根网线到交换机上。

基本上配置到这一步就算完了,我测了一下,基本上峰值2000M网速,整个读取的瓶颈是机械硬盘了,我win10机器装了傲腾用intel cas加速,实测5人以内在线看4K不卡顿,感觉还可以。
这个结构下,优点是:
第一不用迁移数据,第二fnos可以转码了,第三fnos如果出问题,最多nas的服务不可用,在win10上的数据不会出问题。
缺点是:
第一,SMB需要优化,不然单网卡跑,网速会成为瓶颈;第二,增加了一台设备,总功耗会提升,不过好在win10机器是TDP 35w功耗的G4560T主机,fnos设备J4125的TDP 10W,实测功能40-70w之间,如果单纯在家里局域网看视频和传输文件,可以把fnos关了直接访问win10,进一步降低功耗。第三是win10设备的cpu利用率增高了,这算是SMB多通道的一个缺点,具体原因见下文。
三、扩展知识(以下内容来自微软官网)
SMB部署中基于网络适配器的不同,具体功能的支持情况是不同的。

1.单个支持 RSS 的网络适配器
在此典型配置中,SMB 客户端和 SMB 服务器使用单个 10 Gb 以太网 (10 GbE) 网络适配器进行配置。在部署 SMB 时未使用 SMB 多通道,并且只建立了一个 SMB 会话,则 SMB 将创建一个 TCP/IP 连接。如果只有一个 CPU 内核,这种配置本身就会导致拥塞,尤其是在执行许多小型 I/O 操作时。因此,性能瓶颈的可能性很大。
大多数当前的网络适配器都提供一种称为接收端缩放 (RSS) 的功能,该功能使多个连接能够自动分布在多个 CPU 内核上。但是,如果您使用单个连接,RSS 将无济于事。当您将 SMB 多通道与支持 RSS 的网络适配器一起使用时,SMB 会为该特定会话创建多个 TCP/IP 连接。如果需要许多小的 I/O 操作,此配置可避免单个 CPU 内核上的潜在瓶颈。
2.多个网络适配器
在此配置中,SMB 客户端和 SMB 服务器使用多个 10 GbE 网络适配器进行配置。在部署 SMB 时未使用 SMB 多通道,并且只建立了一个 SMB 会话,则 SMB 将使用一个可用的网络适配器创建单个 TCP/IP 连接。在这种情况下,无法聚合多个网络适配器的带宽;例如,当您使用两个 1-GbE 网络适配器时,您无法实现 2 Gb/秒 (Gbps)。如果所选网络适配器断开连接或被禁用,也有可能失败。
当 SMB 与 SMB 多通道一起部署时,如果网络适配器支持 RSS,则 SMB 会为单个会话创建多个 TCP/IP 连接,每个接口至少有一个或多个连接。此配置使 SMB 能够使用可用的组合网络适配器带宽,并使 SMB 客户端能够在网络适配器发生故障时继续运行而不会中断。
3.NIC 组合
Windows Server 2012 R2 和 Windows Server 2012 支持使用称为 NIC 组合的功能将多个网络适配器组合成一个网络适配器。尽管团队始终提供容错功能,但在部署 SMB 时没有 SMB 多通道,SMB 会为每个团队创建一个 TCP/IP 连接。此配置会导致占用的 CPU 内核数和团队带宽的最大使用受到限制。
当 SMB 与 SMB 多通道一起部署时,SMB 会为单个会话创建多个 TCP/IP 连接,以实现 CPU 内核之间的更好平衡并更好地利用可用带宽。NIC 组合继续提供故障转移功能,该功能比单独使用 SMB 多通道更快。我们还建议使用 NIC 组合,因为它为不依赖 SMB 的其他工作负载提供故障转移功能,因为这些工作负载无法从 SMB 多通道的故障转移功能中受益。
重要:支持 RDMA 的网络适配器组始终报告为不支持 RDMA。如果您打算使用网络适配器的 RDMA 功能,请不要将它们组合在一起。
4.单个或多个支持 RDMA 的网络适配器
SMB 多通道检测网络适配器的 RDMA 功能,从而启用 SMB Direct 功能,即 SMB Direct over RDMA。如果没有 SMB 多通道,SMB 将与支持 RDMA 的网络适配器使用常规 TCP/IP 连接,其中所有网络适配器都提供与新 RDMA 堆栈并存的 TCP/IP 堆栈。
当 SMB 与 SMB 多通道一起部署时,SMB 会检测网络适配器的 RDMA 功能,并为该单个会话创建多个 RDMA 连接,每个接口有两个 RDMA 连接。此配置使 SMB 能够利用支持 RDMA 的网络适配器提供的高吞吐量、低延迟和低 CPU 利用率。当您使用多个 RDMA 接口时,它还提供容错能力。
重要:支持 RDMA 的网络适配器组始终报告为不支持 RDMA。如果您打算使用网络适配器的 RDMA 功能,请不要将它们组合在一起。 创建 RDMA 连接后,将不再使用用于原始协议协商的 TCP/IP 连接。但是,如果 RDMA 连接失败,则会保留该连接。
四、CPU占用高的原因分析
我这目前的设备情况,fnos是具有 RSS 和 NIC 组合的多个网络适配器状态,win10是带 RSS 的多个网络适配器状态,其他设备是带 RSS 的单个网络适配器状态,fnos和win10之间具备叠加网口的双倍高吞吐量和SMB容错能力,其他设备访问fnos和win10都有高吞吐量,即“将SMB 多通道与支持 RSS 的网络适配器一起使用时,SMB 会为该特定会话创建多个 TCP/IP 连接。如果需要许多小的 I/O 操作,此配置可避免单个 CPU 内核上的潜在瓶颈。”
这样的模式目前问题就是win10机器的CPU占用率高,因为win10机器的双网卡不支持RDMA模式,数据传输要占用CPU,因为SMB多通道模式下会创建多个 TCP/IP 连接,不过支持RDMA网卡太贵了计算了。
本文全文手打,写作不易,欢迎点赞、评论和收藏。
参考文献:
1. 部署 SMB 多通道 |Microsoft 学习
https://learn.microsoft.com/zh-cn/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/dn610980(v=ws.11)
2. SMB 文件服务器的性能优化 | Microsoft Learn
https://learn.microsoft.com/zh-cn/windows-server/administration/performance-tuning/role/file-server/smb-file-server
3. 通过 SMB 直通优化文件服务器的性能 | Microsoft Learn
https://learn.microsoft.com/zh-cn/windows-server/storage/file-server/smb-direct?tabs=enable
4. 使用 SMB Direct 提高文件服务器的性能 |Microsoft 学习
https://learn.microsoft.com/zh-cn/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/jj134210(v=ws.11)
举报/反馈
原文链接:https://baijiahao.baidu.com/s?id=1809960649605097747&wfr=spider&for=pc