KoolShare

 找回密码
 立即注册
搜索
查看: 78793|回复: 591

¥15元,让群晖速度翻倍--低成本简易"链路聚合"SMB3多通道

  [复制链接]

25

主题

1万

帖子

1万

积分

大魔导师

Rank: 9Rank: 9Rank: 9

精华
1
门户文章
1
魔力币
3168
魔法值
10
注册时间
2015-9-23

R7000EA6700DDOS纪念勋章

发表于 2017-4-24 16:56:22 | 显示全部楼层 |阅读模式
本帖最后由 glk17 于 2017-5-4 09:51 编辑

群晖DSM 6.1-15047 带来的新福利,免费功能--SMB3 Multi-Channel
https://www.synology.cn/zh-cn/releaseNote/DS3615xs#all
DS3615xs Release Notes -- DSM6.1-15047
6. 文件服务
Windows 文件服务及 Mac 文件服务已分別更名为 SMB 及 AFP。
所有的 SMB 服務 (SMB1/2/3) 现由 Samba 4.4 所提供
支持 Mac OS 10.12 或以上版本中,通过 SMB3 使用 Time Machine。
支持 Bonjour 服务,您可以通过 Time Machine 将文件备份至多个共享文件夹。
支持在 SMB 协议下使用稀疏文件 (sparse file),以提升文件系统空间及网络带宽的使用效率。
通过 SMB 协议挂载 home 文件夹时,可于 Windows 文件资源管理中还原至先前的版本。
於文件服务的高级设置中启动文件快速复制后,当您复制文件时,若来源于目的地位于相同的 Btrfs 存储空间,文件复制将更为快速。

如果你的群晖NAS带2个或更多网卡,升级到DSM 6.1-15047及以上版本后
在PC端增加一张千兆网卡,台式机可以加PCI-E的独立网卡,笔记本可以用USB3.0的千兆网卡,型号品牌不限
便宜的PCI-E螃蟹卡一张15元包邮,然后就可以享受内网NAS读写传输速度翻倍的快感
(当然前提是本身NAS的性能能突破1Gbps,正常x86版本的NAS硬盘不要太慢都可以突破1Gbps)
15wk.png

2017.04.28更新
在P大的指导下,实践确认除了Windows Server 2012/2016,黑群晖也支持SMB3多通道传输
目前测试的DSM版本是最新的DSM 6.1-15047 Update 2

步骤一,
群晖WEB管理界面暂时没有SMB3多通道传输的相关设置项,需要手工修改smb.conf配置文件
修改方法,参考:https://forum.synology.com/enu/viewtopic.php?t=128482
samba配置文件路径/etc/samba/smb.conf,添加以下命令,保存后重启
  1. server multi channel support = yes
  2. aio read size = 1
  3. aio write size = 1
复制代码
可以直接用SSH终端root权限运行vi命令修改添加(P大提供),vi的使用方法请自行百度
  1. sudo vi /etc/samba/smb.conf
复制代码
或者用使用root用户进入WinSCP修改
DSM5.2 root和admin密码相同,DSM6开始需要使用root账户的话需要手工修改其密码
DMS6及以上版本修改root密码,参考:https://www.panpinche.com/zhishi/20170313
使用telnet或者SSH终端,分别输入以下2行命令,xxx为root密码可自行更改,具体见下图
  1. sudo su -
  2. synouser --setpw root xxx
复制代码
rootpwd.png
然后,WinSCP使用root用户及密码进入DSM目录,修改并保存
WinSCP.png
步骤二,
群晖控制台WEB界面,控制面板--文件共享--文件服务--高级设置:
最大SMB协议:SMB3
最小SMB协议:SMB2和Large MTU
设置完毕,点应用
SMB3xy.png 群晖设置完毕,重启群晖文件共享服务(重启群晖也可以)
步骤三,
客户端PC分别用\\IP进入群晖的2个IP的共享,填入访问凭据(用户名和密码)
双网卡,Win10 PC客户端从黑群晖读取,SMB3多通道效果如下:
dsm6.15047U2d.jpg


相比SMB3多通道传输,之前传统的链路聚合做法是
把几张网卡绑成一张速度叠加的虚拟网卡,用来满足局域网多终端同时大吞吐量传输的需要
譬如2张1Gbps的千兆网卡绑成1个2Gbps的网卡;3张1Gbps的千兆网卡绑成1个3Gbps的网卡

实现链路聚合,需要满足以下条件
1,文件共享服务端有多张或者加装支持链路聚合的多张网卡(一般要求是同品牌)
2,支持链路聚合的交换机,譬如支持802.3ad
3,链路中的网线上不能接入其他设备

然后,一般认为,这种传统的链路聚合的方式,以常见的譬如2张1Gbps的千兆网卡绑成1个2Gbps的网卡为例:
虽然可以通过给客户端加装网卡的方式链路聚合,实现服务端到客户端都是2Gbps的链路连接速度
但是,单个客户端和服务端之间单文件或者说单线程的传输,都只能跑1条线路,即1Gbps
只有当多个客户端,同时和服务端传输,才能跑满服务端的2Gbps

因此,以上常规链路聚合的方式,存在成本高,单终端传输速度不叠加等缺点

前一阵在网上闲逛,看到了几个帖子,突然感到眼前一亮:
lucifersun网友的帖子,https://www.chiphell.com/forum.php?mod=viewthread&tid=696565&page=3&authorid=50709
xmaan网友的帖子,https://www.chiphell.com/thread-1663962-1-1.html
Vespa网友的帖子,https://test.smzdm.com/pingce/p/36063/

于是请教了Pufer大,指出这种文件共享单线程拷贝产生叠加效果,应该是smb3.0多通道自动速度叠加的作用
然后查看了一下samba官方的一些信息:
https://www.samba.org/samba/history/samba-4.4.0.html
EXPERIMENTAL FEATURES
=====================

SMB3 Multi-Channel
------------------

Samba 4.4.0 adds *experimental* support for SMB3 Multi-Channel.
Multi-Channel is an SMB3 protocol feature that allows the client
to bind multiple transport connections into one authenticated
SMB session. This allows for increased fault tolerance and
throughput.

上面的几篇文章都能看到,单线程拷贝时,每个网卡上都有速度
看来smb传输自动调用将流量分配到了多张网卡上,达到了速度叠加的效果

smb3多通道生效,家庭常规网络部署结构:
tp.png

相比传统的链路聚合,smb3多通道传输速度叠加的方式,有设置简单、成本低等特点
一,价格
1,驱动支持链路聚合的网卡,譬如Intel的独立网卡一般都比较贵;而PCI-E的螃蟹卡只要15元包邮就可以买到,而且可以混搭
2,支持链路聚合的路由器或者交换机,YLJ一般几百起步,行货更贵;smb3多通道叠加普通路由器LAN口或者傻瓜交换机都可以
二,设置
传统链路聚合,从网卡到交换机,都要做链路聚合设置;smb3多通道叠加基本无需任何操作


可惜上面几篇文章中对如何实现,并未有太详细的描述
于是,自己实践了下:

服务端是2012、2016,客户端是Win10,客户端上操作,向服务端共享读写都可以顺利叠加
但是服务端上操作,向客户端共享读写,不能叠加

所以,又试了用2台PC(DELL台式机和3215U小主机),分别都安装了Windows Server 2016数据中心GUI版这
样实现了2边PC上操作都有叠加效果
操作很简单,给各个网卡设置了同网段的固定IP,新建共享文件夹,关闭防火墙

4网卡SMB3 Multi-Channel叠加效果:

DELL台式机上操作
从服务端3215U小主机上的共享读取:
D16d.png
写入服务端3215U小主机上的共享:
D16x.png

3215U小主机上操作
从服务端DELL主机上的共享读取:
U16d.png
写入服务端DELL主机上的共享:
U16x.png


通过微软的TCPView监听工具,我们来看下SMB3多通道的传输情况
先看一下迅雷的下载方式,多线程从本地多个端口连接远程服务器的端口进行下载
这边可以看到基本都是TCP协议连接的服务端80端口
xunlei.png
然后再看smb3多通道的传输情况,这边以双网卡的情况为例
无论是读还是写,都是本地双网卡2个IP的2个端口去和服务端对应网卡2个IP的TCP 445端口传输
形成双线程传输产生速度2倍叠加的效果
smb3.png
由此可以看到SMB3多通道传输利用了多线程传输来达到速度翻倍的效果
但是关于多线程传输本身,也需要辩证的看待它的优缺点
我们知道,不管是硬盘还是U盘,如果同时读取或者写入2个文件,速度会下降很多
以HDD为例,单文件传输时理想情况磁头可以做单方向顺序读写
而同时操作2个文件磁头将会在2个位置区域不停的来回切换,所以传输速度大大降低
2个以上多文件的话,传输速度下降更多,SSD和HDD RAID的情况还会更复杂
所以一定程度增加读写线程,可以增加NAS吞吐量,但是线程太多的话反而会影响NAS传输速度
所以这一点也需要在实际操作中留意

测试过程中也遇到了一些问题
1,虽然各品牌网卡混搭,包括低端的螃蟹网卡、USB网卡也可以顺利叠加
但是碰到1例Intel 9301CT PCI-E网卡加入后不能叠加的情况
2,Windows Server 2012/2016做服务器,搭配Win10客户端叠加,日常家庭简易共享场景应该够用了
但是如果群晖配合Win10客户端能实现的话,实际意义就更大了
据P大介绍,DSM6.1以上版本支持,接下来将会进行进一步测试


网上相关信息较少,这里主要是抛个砖头,欢迎有兴趣的网友一起加入交流探讨
游客,如果您要查看本帖隐藏内容请回复





评分

12

查看全部评分

69

主题

791

帖子

2921

积分

初级魔导师

Rank: 6Rank: 6

精华
0
门户文章
0
魔力币
2238
魔法值
10
注册时间
2015-6-2

游记大赛参与勋章AC68UDDOS纪念勋章

发表于 2017-4-24 17:21:19 | 显示全部楼层
感觉要把硬盘换成全固态了,,机械会跑废了。。

25

主题

1万

帖子

1万

积分

大魔导师

Rank: 9Rank: 9Rank: 9

精华
1
门户文章
1
魔力币
3168
魔法值
10
注册时间
2015-9-23

R7000EA6700DDOS纪念勋章

 楼主| 发表于 2017-4-24 18:04:52 来自手机 | 显示全部楼层
本帖最后由 glk17 于 2017-4-24 18:08 编辑
gudumuyu 发表于 2017-4-24 17:21
感觉要把硬盘换成全固态了,,机械会跑废了。。

哈哈,感谢支持。很多网友都有nas,不管是白群黑群还是gen8跑win server,多盘组阵列,千兆有线就变成了瓶颈。所以现在很多中低端nas也带了双网口,无成本无技术难度的链路聚合速度提升一倍,何不来一发

36

主题

612

帖子

1043

积分

大魔法师

Rank: 5Rank: 5

精华
0
门户文章
0
魔力币
810
魔法值
0
注册时间
2017-1-3
发表于 2017-4-24 18:45:26 | 显示全部楼层
目前是只有samba支持这项功能?

1

主题

89

帖子

516

积分

高级魔法师

Rank: 4

精华
0
门户文章
0
魔力币
495
魔法值
0
注册时间
2016-9-1
发表于 2017-4-24 19:29:03 | 显示全部楼层
正是我感兴趣的,学习学习

12

主题

793

帖子

2534

积分

初级魔导师

Rank: 6Rank: 6

精华
0
门户文章
1
魔力币
1127
魔法值
10
注册时间
2015-10-14
发表于 2017-4-24 19:42:49 | 显示全部楼层
这个有意思啊,很有意思

0

主题

4

帖子

49

积分

魔法学徒

Rank: 1

精华
0
门户文章
0
魔力币
49
魔法值
0
注册时间
2015-10-31
发表于 2017-4-24 19:45:00 | 显示全部楼层
学习学习

30

主题

726

帖子

1322

积分

大魔法师

Rank: 5Rank: 5

精华
0
门户文章
0
魔力币
972
魔法值
0
注册时间
2016-9-21
发表于 2017-4-24 19:59:32 | 显示全部楼层
glk17 发表于 2017-4-24 18:04
哈哈,感谢支持。很多网友都有nas,不管是白群黑群还是gen8跑win server,多盘组阵列,千兆有线就变成了瓶 ...

iMac有有线网卡+USB转网卡也能链路聚合。不过没什么用。

32

主题

1494

帖子

2965

积分

初级魔导师

Rank: 6Rank: 6

精华
0
门户文章
0
魔力币
2190
魔法值
0
注册时间
2015-2-24

DDOS纪念勋章R6300R7000

发表于 2017-4-24 20:05:31 | 显示全部楼层
链路聚合之前只是用来做均衡负载的,现在确实通过新的SMB协议可以实现网速叠加,但是有前提条件,有些麻烦。
家中有大量设备要访问NAS的话链路聚合是有意义的,不然双机对拷.....想要实现网速叠加,真的是折腾啊!

9

主题

341

帖子

882

积分

高级魔法师

Rank: 4

精华
0
门户文章
0
魔力币
758
魔法值
0
注册时间
2016-4-16
发表于 2017-4-24 20:07:04 | 显示全部楼层
看一看。

69

主题

791

帖子

2921

积分

初级魔导师

Rank: 6Rank: 6

精华
0
门户文章
0
魔力币
2238
魔法值
10
注册时间
2015-6-2

游记大赛参与勋章AC68UDDOS纪念勋章

发表于 2017-4-24 21:01:29 | 显示全部楼层
glk17 发表于 2017-4-24 18:04
哈哈,感谢支持。很多网友都有nas,不管是白群黑群还是gen8跑win server,多盘组阵列,千兆有线就变成了瓶 ...

哈哈,很感兴趣,这几天在考虑装修,到时候有些细节,还要请教你哈

点评

客气,相互交流~  发表于 2017-4-25 17:58

5

主题

126

帖子

436

积分

中级魔法师

Rank: 3Rank: 3

精华
0
门户文章
0
魔力币
400
魔法值
0
注册时间
2016-2-27
发表于 2017-4-24 21:17:08 | 显示全部楼层
学习了,感谢分享

49

主题

7393

帖子

5万

积分

圣魔导师

纯种小白求领养

Rank: 10Rank: 10Rank: 10

精华
0
门户文章
10
魔力币
5111
魔法值
140
注册时间
2015-12-27

DDOS纪念勋章

发表于 2017-4-24 21:26:56 | 显示全部楼层
哎……伪前排围观G大折腾

点评

一起来折腾~~  发表于 2017-4-25 17:57

1

主题

5

帖子

487

积分

中级魔法师

Rank: 3Rank: 3

精华
0
门户文章
0
魔力币
484
魔法值
0
注册时间
2016-6-6
发表于 2017-4-24 21:32:51 | 显示全部楼层
学习学习。

5

主题

148

帖子

747

积分

高级魔法师

Rank: 4

精华
0
门户文章
0
魔力币
699
魔法值
0
注册时间
2015-2-5

R8500

发表于 2017-4-24 21:52:27 | 显示全部楼层
看一下如何操作的

24

主题

4127

帖子

3033

积分

初级魔导师

空浪

Rank: 6Rank: 6

精华
0
门户文章
0
魔力币
1936
魔法值
0
注册时间
2015-10-9
发表于 2017-4-24 21:56:47 | 显示全部楼层
终于研究好了哦

2

主题

76

帖子

380

积分

中级魔法师

Rank: 3Rank: 3

精华
0
门户文章
0
魔力币
363
魔法值
0
注册时间
2017-3-2
发表于 2017-4-24 22:27:12 | 显示全部楼层
笼统来说,lacp的负载方式有2种,一种逐包,一种逐流
逐包的负载效果肯定是最好的,但是存在一个时序问题,所以现在运营商集采要求都是逐流
逐流一般就是根据mac,ip,端口号哈希计算,然后决定是走哪一个成员端口,不同的芯片计算效果也不一样,还有就是较为连续的mac或者ip,很容易计算结果都一样,所以在点到点传输中,很容易出现lacp压单边的情况

点评

感谢分享,这边多次测试下来smb3多通道的传输,压单边的情况很少,几乎都能负载均衡到几张网卡上  发表于 2017-4-25 17:57

3

主题

120

帖子

979

积分

高级魔法师

Rank: 4

精华
0
门户文章
0
魔力币
926
魔法值
0
注册时间
2016-5-3
发表于 2017-4-24 23:03:01 | 显示全部楼层
您要查看本帖隐藏内容请回复

1

主题

116

帖子

951

积分

高级魔法师

Rank: 4

精华
0
门户文章
0
魔力币
907
魔法值
0
注册时间
2015-5-31
发表于 2017-4-24 23:08:28 | 显示全部楼层
低成本简易“链路聚合

7

主题

172

帖子

665

积分

高级魔法师

Rank: 4

精华
0
门户文章
0
魔力币
603
魔法值
0
注册时间
2017-2-15
发表于 2017-4-25 00:50:08 | 显示全部楼层
抛砖头,低成本简易“链路聚合”实现探讨,吊炸了

联系我们|手机版|KoolShare ( 沪ICP备13045430号962110 沪公网备31010402005377

GMT+8, 2019-7-21 04:12 , Processed in 0.101267 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表