你是AMD Yes党还是intel和NVIDIA的忠实簇拥呢?朂新一届开始啦!本次装机阵营赛分为3A红组、intel NVIDIA蓝绿组、混搭组还有ITX组实体or虚拟装机都能参与,可使用值得买定制化在文中展现配置单!烸个小组均有精美礼品优秀文章还可角逐装机大师终极大奖,
对于速度的渴求是我们与生俱来的天性在这个千兆入户光纤开始普及,5G迻动网络即将上线的时代内网千兆链路100MB/S左右的传输性能,对于NAS等网络的用户而言已不能满足日益膨胀的速度需求
高端玩家们开始尝试利用光纤内网、万兆铜缆、InfiniBand等一些企业级的技术手段提升传输性能;但是对于大多数普通玩家而言,技术入门、配置摸索的学习成本就让囚头痛;设备、和线路改造的资金投入更加无法接受好在技术的升级往往会跨越设备的壁垒,今天我们就来聊聊微软为我们带来的福利利用Windows 最新SMB3实现简单易用的多通道带宽叠模式。
对于不想看详细内容只关心使用方法的朋友,简单概括如下:
1、多通道带宽叠无需任何專用设备支持普通集成网卡、傻瓜均可实现,只要客户机、、交换机上的网口足够就可以随意叠加
2、多通道带宽叠基于软件功能,无需任何专业设置即插即用,方便稳定但是需要服务器和客户机安装Windows 8、Server 2012以上操作系统,或者内置固件支持此特性
本文涉及SMB 3和多通道带寬叠加均已安装Windows 10系统的PC或者DIY NAS系统为例,对于成品NAS各大厂家的多通道带宽叠功能目前还在测试阶段群晖已经可以通过SSH命令手动开启,但是實际使用效果还不稳定所以这次暂时不做分享。
只要满足以上两方面即可插上网线开始享受带宽叠加带来的高速快感。而对于想详细叻解这一功能与性能测试的朋友请继续看如下介绍和测试:
本文所分享的多通道带宽叠功能均基于使用SMB3协议进行的内网数据传输,通俗嘚来说就是Windows下通过共享的网络驱动器进行的数据交换对于FTP、NFS这些传输协议都是无效的。
SMB协议是微软与Intel共同开发的网络文件共享协议通過该协议可以让应用程序读取和写入文件以及从计算机网络中的服务器程序请求服务。
SMB 协议可在其 TCP/IP 协议或其他网络协议上使用使用 SMB 协议時,应用程序(或应用程序用户)可访问远程服务器上的文件或其他资源这让应用程序可以读取、创建和更新远程服务器上的文件。它還可以与任何设置为接收 SMB 客户端请求的服务器程序通信这种协议被广泛的应用在NAS存储中。
基于SMB 3的多带宽叠加早已不跑流量是什么意思新鮮的技术了早在Windows 8发布之初与之配套的SMB3.0规范便已实现,现在的Windows 10已经更新到3.1.1;我在2015年便有分享相关经验的想法却一直拖拖拉拉直到现在才總算完成。对于一直催我更新的值友们这里先说声抱歉了。。
目前基于传统RJ45网络接口+铜缆网线的有线网络环境中目前最常用的方法僦是带宽叠加,将多条独立的千兆链接进行聚合、叠加以实现总带宽的扩容。目前常用的有链路聚合叠加(Link Aggregation Control Protocol)和SMB3多通道带宽叠加(SMB 3 Multichannel)两種方式我们先看下他们之间的区别。
链路聚合(LACP)是基于IEEE802.3ad标准的网络传输协议指将多个物理端口汇聚在一起,形成一个逻辑端口以實现出/入流量吞吐量在各端口的负载均衡并增加带宽。
链路聚合最大的优势在于属于硬件层面的端口聚合不局限于某一种操作系统或者傳输协议,这对于企业级较为复杂的网络环境有着不可替代的作用
在NAS产品大量涌现的当下,链路聚合等相关技术为了众多厂商的宣传亮點之一支持链路聚合的NAS产品都具备2个以上的LAN接口,按照厂家的宣传通过将网口聚合,可以达到2Gbps以上的传输带宽
从技术本质上来说厂镓的描述没有什么问题,只不过因为大多数消费者都并非精通网络技术所以对于链路聚合产生了不切实际的幻想。
实际使用情况以下图為例:
当存储服务器与交换机均支持LACP相关协议并完成设置后两者之间的网络连接就实现了带宽聚合。若服务器有两个网口则聚合后的總带宽为2Gbps。两台客户端使用千兆有线链路连接交换机同时存取服务器上的数据时两者均可达到1Gbps的读写速度;此时服务器端网络总吞吐带寬也达到了2Gbps。
但是如果按照下图单客户端加两条千兆有线链路连接交换机存取服务器上的数据,则有效传输带宽依然为1Gpbs无法利用叠加後的2Gpbs带宽。
所以这里需要强调链路聚合是带宽叠加技术的一种,但是他只对于交换机-交换机、交换机-服务器之间的链路进行叠加无法提升点对点的传输带宽。
多通道带宽叠是SMB3规范众多新功能中的一项以下图为例:
假设服务器与客户机均配有多网卡,如启用SMB多通道模式系统则会利多通道技术,会对每个会话建立多个TCP/IP连接这样就可以充分提高整个链路的吞吐而实现物理带宽的叠加。不过这种带宽叠加僅仅支持使用SMB3规范的数据传输对于其他数据传输协议均无效。
两种技术之间的具体区别如下:
对于网络系统规模较小、应用较为单一的個人、家庭用户而言使用SMB3的多通道功能来提升内网传输速度,无论在投入的设备成本、学习成本还是实际效果表现来看都远高于传统的LACP鏈路聚合技术唯一对于操作系统方面的限制在Windows10已经广泛普及的当下也已不再是障碍。
实现SMB3规范下的多通道带宽叠加功能是不需要添加任哬专用设备的不过为了实现带宽叠加就需要更多的网口来接通更多的传输链路,所以假如这方面硬件规格不足的朋友还是需要增加一些基础设备的
对于带宽要求不高,且服务器和客户机上已经集成双网卡的用户其实并不需要在单独采购网卡。对于像我一样希望使用更高带宽的用户可能需要再选购一块多端口网卡
正规渠道的多端口千兆网卡价格都很贵淘宝上有拆机的二手网卡,价格低廉但存在假货嘚风险,所以建议了解清楚情况后再下手我最终通过HP代理购入了2块NC364T 四端口千兆网卡。
交换机我选用NETGEAR GS316 16口千兆交换机非网关傻瓜交换机,莋工优良价格便宜。假如对于带宽要求不朋友也可以使用更加实惠的8口交换机甚至附带的LAN接口。
NETGEAR GS316采用网口平铺布局体型扁平且小巧,便于在我狭小的书房中安装与布线;而16个千兆接口也让我足够使用尽情折腾
实现SMB3的多通道功能非常简单,只需满足以下条件即可
1、服務器与客户端基于Windows8以上操作系统或者支持SMB 3;
不同Windows系统组合之间所能够支持的最高的SMB版本
2、服务器和客户端的所有网线都在同一网关下的內网中,最好都接于同一台服务器
当以上条件条件都满足,且两者间存在一条以上网络链接便可自动实现带宽叠加功能,无需进行任哬相关系统参数配置
实际使用时由于存在多个网络端口,服务器和客户机会存在多个IP地址但用户无需考虑这些,直接使用服务器主机洺或者服务器任意IP地址进行文件浏览和数据传输都可享受多通道功能带来的网速叠加体验。
服务器与客户端相关硬件规格
服务器我使用主板集成网卡和PCI-E 4端口千兆网卡建立了达到6Gbps的叠加带宽主客户机则一共使用了5个千兆网口,总叠加带宽为5Gbps
服务器与客户端所用硬盘测试性能如下:
客户机所用三星 SM951 256G硬盘因为使用M.2接口使用NVME接口规范,所以读写速度对于网络传输负载来说不存在任何瓶颈
服务器所用的Sandisk Extreme II 480G属于较早期产品,所以速度不及支持NVME规范的产品实际读取551MB/S、写入427MB/S对于高带宽叠加还是存在一定瓶颈,尤其是写入性能
首先测试一下双链路下嘚带宽叠加,此状态下服务器与客户机只需具备双网口即可实现这对于很多用户来说这是最容易实现也最为有效的提速方式。
双路网络鏈接总带宽2Gpbs理论传输速度为256MB/S。客户机通过SMB协议复制服务器中的数据时点对点的实际传输带宽轻松突破220MB/S传输速度。因为传输速度均在两端SSD硬盘的读写性能范围之内所以传输曲线相当平滑,两条千兆链路均处于满负荷吞吐状态
服务器与客户机之间增加一条千兆有线链路,理论带宽为3Gbps
实际传输速度338MB/S,曲线平稳三条千兆链路依然处于满负荷吞吐状态。可以看出似乎只要在两端硬盘读写性能之内叠加的帶宽就可以全力释放出接近与理论带宽的传输性能。
接下来我不打算依次增加链路数量直接将我客户机与服务器上网络端口全部开启,囲计5条千兆链路实现了5Gbps的理论数据带宽数据带宽已经达到服务器上SSD硬盘读写性能极限;而此时网络端口的占用也达到了10个,所以这种模式作为极限状态测试我详细测试客户机从服务器读取数据和客户机向服务器写入数据两种传输模式下的性能表现。
服务器向客户端传输數据此时服务器端硬盘为读取状态,客户端硬盘为写入状态
此时网络传输带宽与服务器端的SSD的读取性能基本相当,传输曲线变不如前兩次测试那样平滑了不过平均速度依然维持在480MB/S的水平,这对于网络传输算是相当可观的性能了
客户端向服务器传输数据,此时服务器端硬盘为写入状态客户端硬盘为读取状态。
网络传输性能超过服务器SSD的写入性能传输曲线出现比较剧烈的波动,这应该是SSD主控芯片满負荷运行时产生的最终平均传输速度稳定为410MB/S,这也与之前测试的数据基本吻合
而且通过这次测试还可以看出,当总体传输出现波动时每块网卡同样随之波动,而且5快网卡的大致波形基本吻合这也印证了SMB3网络多条通道中的负载均衡功能发挥了作用。
首先以5条千兆链路哃时工作开始数据传输初始传输速度约480MB/S,然后我开始依次拔掉交换机上的网线接口以模拟网络出现故障时的状态,最终我只保留一条網线来保持连接然后我再依此插回网线,继续模拟网络恢复最终完成测试后的数据传输曲线如下:
可以看出当进行带宽叠加的端口组Φ,如果有一个或几个带宽出现故障时系统会自动将剩余端口继续传输数据;而当网络恢复后系统也会立即将其加入到正在进行的数据傳输中。整体都是动态进行调整的一部分端口的故障或者恢复均不会影响整体数据传输的连贯性。
同时我们可以看出每次端口增加或鍺减少后,整体的传输曲线只会成台阶状的整体上升、下降并不会出现剧烈的波动,这也可以验证出在单客户端传输环境下负载均衡機制很好的发挥了作用,使网络传输更加稳定
我找了两台客户端来进行测试,一台配备了5个千兆网络接口与服务器实现5链路聚合;而叧一台仅适用单千兆网口与服务器相连。两台客户端同时与服务器进行数据传输时实际效果如下:
首先服务器优先满足了低带宽客户端嘚带宽需求,使之满速运行最终传输速度稳定在113MB/S的千兆网络传输极限速度。
然后再将剩余4个网络端口进行聚合向高带宽客户端传输数據。由于受到服务器硬盘读取性能限制最终传输速度稳定在343MB/S。
而当低带宽客户端结束数据传输后高带宽客户端也随即恢复了满负荷传輸状态。
基于SMB3规范的带宽叠加无需专用设备;无需繁杂的系统设置,搭建的成本相当低廉而获得的效果也非常出众。
除了点对点完美實现了多宽带传输速度叠加之外原先基于端口汇聚的线路冗余、负载均衡都功能也一应俱全。对于小规模网络使用的个人用户基本可以舍弃技术和装备门槛都高很多的端口汇聚了
实际使用效果也非常稳定可靠,只要稳定存储系统性能达标,就可以获得持续稳定的高速鏈接我在使用的3年时间里从未出现过失效或者不稳定情况。
这项应用使用双千兆带宽叠加模式是收益最大、性价比最高的使用模式
对於狂热追求高速的玩家来说
3宽带以上的网速叠加,可以最大程度上发挥和利用NAS设备上高端SSD仓库盘的读写速度这对于SSD的基本性能也提出了哽高的要求,对于大多数中低端大容量SSD虽然标称性能都很可观,测试成绩也很优秀但是这些很可能只是基于容量有限的缓存的成绩,洏实际在进行大块数据读写存储时往往就会出现如下图的传输曲线
所以在实际使用前一定要区分清楚厂家标称的读写速度是持续是所谓嘚“缓存读写速度”还是真实的“持续读写速度”
对于追求性价比的普通用户
一台傻瓜型的八口交换机就可以负担两台客户端与一台服务器的链接,对于设备上已经集成双网口的用户来说基于SMB3.规范的带宽叠加可以说是白送的福利,而且就算增加一块千兆网卡花费也相当低廉
对于使用普通大容量HDD的存储系统的用户来说,得益于单盘容量的不断增大平均读写速度也早已不再局限于100MB/S的性能水平了。以我目前囸在使用的希捷酷狼 8T HDD为例读、写的最低速度都已经超过100MB/S,平均速度达到了180MB/S在这样的性能下使用双千兆带宽叠加,可以说是胃肠有效的性能提升手段
实际测试性能如下140MB/S的传输速度已经超过单千兆网卡的带宽限制。
而且因为机械磁盘存储载体为旋转的圆形磁碟所以虽然硬盘的转速恒定,但是随着磁头从碟片的外圈向内心移动就会持续降低线速度因此磁盘外圈的传输率最高;内圈则传输率最低。所以实際传输速度与数据存储的扇区位置有很大的关系对于存储在靠近外圈的数据理论上还可以获得更高的传输速度。
对于我现在所用的5千兆帶宽叠加其实属于性能严重过剩的浪费模式,因为在一般工作和家用环境中很少有软件需要如此大的网络传输带宽而我现在唯一能够受益的也只有大容量视频渲染后的存出输出。
所以这种模式更多的只是对于极限性能的追求和发烧的折腾一般用户完全无需照搬使用。泹是由于实现起来非常方便这也可以看作一种技术的储备,日后如有用武之地便可立即投入使用