找回密码
 加入我们
搜索
      
楼主: Dolfin

[网络] 【更新】在Linux下 SMB RDMA/TCP 的存储性能测试

[复制链接]
发表于 2024-3-3 16:37 | 显示全部楼层
本帖最后由 summerq 于 2024-3-3 16:44 编辑
Dolfin 发表于 2024-3-3 13:36
ACM这个文得看一阵子了,感谢分享。
一些关于底层存储的额外说明:
1.实验只用了一块Optane,挂载XFS,测 ...


首先谢谢您的分享,很有帮助!
我这边会找时间测试一下。我的硬件没有你好,optane已经放在软路由上了,所以只能拿两个pm983做raid0,跑spdk+ksmbd作为服务端。客户端是vm上跑win server 2022。网卡也没有你的那么好,我目前能用的只有一个connectx-4 lx 25G
 楼主| 发表于 2024-3-3 16:51 来自手机 | 显示全部楼层
本帖最后由 Dolfin 于 2024-3-3 16:52 编辑
summerq 发表于 2024-3-3 16:37
首先谢谢您的分享,很有帮助!
我这边会找时间测试一下。我的硬件没有你好,optane已经放在软路由上了, ...


足够的。俩PM983 RAID0多线程高QD肯定也是准百万IOPS了,25GbE的CX4 应付六七十万的IOPS也没问题。就客户端那边控制RDMA开关就行,如果跟我的情况类似,肯定是巨大的差异。
发表于 2024-3-3 18:06 来自手机 | 显示全部楼层
小文件读写可以测试下iser应该可以提升不少,以前在Ubuntu环境下搭建过感觉跟本地盘无区别。
 楼主| 发表于 2024-3-3 18:27 来自手机 | 显示全部楼层
Bloodyevil 发表于 2024-3-3 18:06
小文件读写可以测试下iser应该可以提升不少,以前在Ubuntu环境下搭建过感觉跟本地盘无区别。 ...

Windows作为客户端,除了starwind可以加载iSer,还有什么推荐的?
发表于 2024-3-4 11:39 | 显示全部楼层
iser干脆就通过IB卡PXE识别卷直接安装系统用了。至于windows客户端访问我没试过,设备也卖3年多了
发表于 2024-5-15 02:38 来自手机 | 显示全部楼层
Dolfin 发表于 2024-3-3 15:54
从我的理解来看,小文件随机读写使用的是模式是RDMA  send/receive操作,是一种双边操作,而不像 RDMA re ...

今天跑了一下 我只有25g网卡。linux端是connectx-4 lx,开rdma,ssd是大普微h3200。
window这边环境比较差,是跑在pve上面的一个server 2022虚拟机。cpu是9900k,网卡是connectx-6 dx
IMG_6313.jpeg

IMG_6323.jpeg

IMG_6324.jpeg
 楼主| 发表于 2024-5-15 09:19 | 显示全部楼层
summerq 发表于 2024-5-15 02:38
今天跑了一下 我只有25g网卡。linux端是connectx-4 lx,开rdma,ssd是大普微h3200。
window这边环境比较 ...

感谢测试,这次测试涉及到SPDK吗?还是只涉及到KSMBD。

从截图看,性能表现很好。
1.不过RDMA尚未开启。我这开启后,4k Q32T16这个测试就会锐降,几百兆的样子,还不知道该怎么解决。

2.我用KSMBD现在有个奇怪的问题,就是在Windows做客户端访问的时候,打开SMB挂载里的文件夹,经常会出现卡顿,好几秒的样子,切换几个文件夹,打开又会卡顿。不知道你有没有遇到过。
发表于 2024-5-15 10:29 来自手机 | 显示全部楼层
Dolfin 发表于 2024-5-15 09:19
感谢测试,这次测试涉及到SPDK吗?还是只涉及到KSMBD。

从截图看,性能表现很好。

1. 没有spdk,只有ksmbd。我这边没有遇见4k暴跌的问题
2. 以前遇见过,现在没有了。这个可能跟内核自带的ksmbd版本有关系。
 楼主| 发表于 2024-5-15 11:15 | 显示全部楼层
summerq 发表于 2024-5-15 10:29
1. 没有spdk,只有ksmbd。我这边没有遇见4k暴跌的问题
2. 以前遇见过,现在没有了。这个可能跟内核自带的 ...

我看你现在的测试,1016MB/s 的4k q32t16的数据是在TCP下的成绩(资源管理器还能侦测流量),RDMA下能到多少?
发表于 2024-5-15 11:24 来自手机 | 显示全部楼层
Dolfin 发表于 2024-5-15 11:15
我看你现在的测试,1016MB/s 的4k q32t16的数据是在TCP下的成绩(资源管理器还能侦测流量),RDMA下能到 ...

rdma已经打开了 你看我后面两张图 cpu没占用。之所以第一张图里有占用,是因为我用虚拟机,gui是web远程桌面,所以有一些
发表于 2024-5-15 11:26 来自手机 | 显示全部楼层
Dolfin 发表于 2024-5-15 11:15
我看你现在的测试,1016MB/s 的4k q32t16的数据是在TCP下的成绩(资源管理器还能侦测流量),RDMA下能到 ...

哦 你说的对哦 我再看看怎么回事 谢谢
发表于 2024-5-15 13:20 | 显示全部楼层
刚才又测试了一下:

服务端直通一个1.4T optane 905p
ksmbd已经启动


rdma开启


客户端win server 2022


结论:
4K确实拉了。。。。。。
但不如你拉的那么厉害。。。。。。
发表于 2024-5-15 13:20 | 显示全部楼层
刚才又测试了一下:

服务端直通一个1.4T optane 905p
ksmbd已经启动
ksmbd.png

rdma开启
rdma.png

客户端win server 2022
25g-ksmbd-rdma.PNG

结论:
4K确实拉了。。。。。。
但不如你拉的那么厉害。。。。。。
 楼主| 发表于 2024-5-15 19:16 来自手机 | 显示全部楼层
summerq 发表于 2024-5-15 13:20
刚才又测试了一下:

服务端直通一个1.4T optane 905p

我q32t16从tcp的4000多直接拉到不到800。。我是没搞明白它的传输机制,而且为什么tcp能到那个数字,这超越了物理ssd的性能,内存肯定又参与了。

不过不管怎样,那个文件夹卡顿确实很头疼,重新编译了最新的ksmbd tools也一样,还是不用它搞smb了,弄个win吧
发表于 2024-5-15 19:55 来自手机 | 显示全部楼层
Dolfin 发表于 2024-5-15 19:16
我q32t16从tcp的4000多直接拉到不到800。。我是没搞明白它的传输机制,而且为什么tcp能到那个数字,这超 ...

拉到如此之低 我怀疑跟rdma的驱动有关系。晚上我编译一个原厂驱动替换试试
发表于 2024-5-15 19:59 | 显示全部楼层
why not nvme-of
 楼主| 发表于 2024-5-15 20:35 来自手机 | 显示全部楼层
老饭 发表于 2024-5-15 19:59
why not nvme-of

nvmf是传出去的是块,一对一的,而要共享的话只能用smb nfs这类的文件存储
 楼主| 发表于 2024-5-15 20:39 来自手机 | 显示全部楼层
summerq 发表于 2024-5-15 19:55
拉到如此之低 我怀疑跟rdma的驱动有关系。晚上我编译一个原厂驱动替换试试 ...

我以前问过ksmbd的作者Namjae Jeon关于4k的状况,他推荐我看看这个,也分享给你。https://www.snia.org/sites/default/files/SDC/2017/presentations/smb/Li_Long_Implementing_SMBDirect_for_CIFS.pdf
发表于 2024-5-16 19:19 来自手机 | 显示全部楼层
Dolfin 发表于 2024-5-15 20:39
我以前问过ksmbd的作者Namjae Jeon关于4k的状况,他推荐我看看这个,也分享给你。https://www.snia.org/s ...

看过了。我粗略地理解就是 rdma做smb共享时数据包还是要经过内核tcp协议栈,而nvmeof + spdk不用,因此效率高。另外,我今天也试过用mellanox官方ofed驱动替换掉内核自带驱动,结果4k依然疲软。我看smb目前就是samba走tcp了,要么就两边都上windows
发表于 2024-5-16 22:23 来自手机 | 显示全部楼层
Dolfin 发表于 2024-5-15 20:39
我以前问过ksmbd的作者Namjae Jeon关于4k的状况,他推荐我看看这个,也分享给你。https://www.snia.org/s ...

我想我发现原因了。我是在pve内vm上跑ksmbd,nvme通过vfio直通。今天偶尔发现,vfuo的性能有问题。可能真的要在裸金属上直接测才有说服力。你的测试环境是在pve环境下还是裸金属啊?
 楼主| 发表于 2024-5-16 23:12 来自手机 | 显示全部楼层
summerq 发表于 2024-5-16 22:23
我想我发现原因了。我是在pve内vm上跑ksmbd,nvme通过vfio直通。今天偶尔发现,vfuo的性能有问题。可能真 ...

都测过,PVE是直通网卡,4k高QD都不过千。Windows对连的话,最高两千多吞吐,也就是500K IOPS的样子。当然nvmf轻松超百万

评分

参与人数 1邪恶指数 +5 收起 理由
summerq + 5 支持一下

查看全部评分

 楼主| 发表于 2024-5-17 09:23 | 显示全部楼层
summerq 发表于 2024-5-16 19:19
看过了。我粗略地理解就是 rdma做smb共享时数据包还是要经过内核tcp协议栈,而nvmeof + spdk不用,因此效 ...


如果先不去管RDMA的事,ksmbd思路上还是比较高效的,在内核空间做了处理,省去了用户空间的拷贝。未来看的话,ksmbd + samba,samba + io_uring 都在进行中,还是可以展望的。

我现在的测试本意是想,在存储服务器上,建一个VM专门处理nvmf,再来一个VM专门处理SMB,结果ksmbd这出师不利。。。
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2024-12-23 04:36 , Processed in 0.013542 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

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