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

93 天前
 wuzeiyicixing

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

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

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

具体情况需要做 benchmark
GrayXu
93 天前
pps 指标和吞吐差别很大,受很多影响。你应该先直接测小包性能而不是吞吐。
giyear
93 天前
影响因素有
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
93 天前
@CodeAllen SMB 的 RDMA 需要 SMB-direct ,而这个在 Windows 上目前只有 Windows Server 能用,samba 的 rdma 听说比较灵车。
czvatqin
92 天前
@InamikanAnju Pro for Workstations 也有
carmark
92 天前
10G 网卡一般指的是 10Gbps ,对应而言就是 1.25GB/s 。
NVMe 的一般顺序读写速度,大概率应该会大于网络速度,具体可以实测下 FIO 。

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

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

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

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

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

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

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

© 2021 V2EX