请教下 10G 内网 IO 有瓶颈吗?

3 天前
 wuzeiyicixing

想请教下 10G 网络 IO 有瓶颈吗?有一个需求,需要从同一内网的另一台机器上读取数据,如果我用 10G 网卡连接两台机器,客户端一次性读取一定量小文件(一次几千个,每个小于 1M )的话,会有 IO 上的问题吗?

服务器可以用 NFS SMB 或者其他的方式共享数据、都是 NVME 存储的前提下。

2346 次点击
所在节点    NAS
10 条回复
Jinnrry
3 天前
机械硬盘,单盘不组 raid ,读取能到 1000M 就不错了
CodeAllen
3 天前
CPU 主频不高的话,TCP 协议栈在 10G 下 CPU 开销会大一点,,如果能支持 RDMA 最好,SMB 现在应该能支持 RDMA 。之前在工作站上测试 100G 网络,TCP 峰值也就只能到 33Gbps ,CPU 消耗很大,只能换 RDMA 才能跑满 100G 。
ToBeHacker
3 天前
都会有 IO 瓶颈的,哪个慢卡在哪儿,只是看你能不能接受这个速度了

具体情况需要做 benchmark
GrayXu
3 天前
pps 指标和吞吐差别很大,受很多影响。你应该先直接测小包性能而不是吞吐。
giyear
3 天前
影响因素有
1 、NVME 接口的 PCIE 协议速度
2 、固态硬盘的容量和速度
3 、你文件大小
4 、你主机 CPU 和内存速度和容量
5 、文件系统
6 、SMB/NFS 是否支持 RDMA

以前三个因素举例,PCIE4.0 ,1T 支持 4.0 的 SSD ,在 512B 和 1MB 的读写速度是:
512B:读 60.91MB/s ,写 34.55MB/s
1MB:读 6.8GB/s ,写 5.97GB/s

所以在你操作系统合适,主机性能足够的情况下,文件越接近 1M ,你 10G 网络越会有瓶颈。文件在 16K 左右是个平均值。小于 16K 的多,10G 不是瓶颈。大于 16K ,就会有瓶颈。
InamikanAnju
2 天前
@CodeAllen SMB 的 RDMA 需要 SMB-direct ,而这个在 Windows 上目前只有 Windows Server 能用,samba 的 rdma 听说比较灵车。
czvatqin
2 天前
@InamikanAnju Pro for Workstations 也有
carmark
1 天前
10G 网卡一般指的是 10Gbps ,对应而言就是 1.25GB/s 。
NVMe 的一般顺序读写速度,大概率应该会大于网络速度,具体可以实测下 FIO 。

RDMA 这个基本上可以不用考虑的,万兆没必要。

这里面的变量在于你的内存以及存储的文件数量,如果你随机读取,而存储文件数量巨大,那么寻址将会带来额外的磁盘开销,内存大小决定了你能缓存多少文件 metadata 。
Rorysky
1 天前
瓶颈在 ssd ,虽然你是 nvme 协议,但是 小文件传输约等于 随机读,性能不高的;

可以预处理下,tar 打包成批量的数据包再传输
iv8d
14 小时 50 分钟前
小文件在固态下反倒不如机械,但是机械的速度你也懂。瓶颈还是会有

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1073335

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX