想请教下 10G 网络 IO 有瓶颈吗?有一个需求,需要从同一内网的另一台机器上读取数据,如果我用 10G 网卡连接两台机器,客户端一次性读取一定量小文件(一次几千个,每个小于 1M )的话,会有 IO 上的问题吗?
服务器可以用 NFS SMB 或者其他的方式共享数据、都是 NVME 存储的前提下。
想请教下 10G 网络 IO 有瓶颈吗?有一个需求,需要从同一内网的另一台机器上读取数据,如果我用 10G 网卡连接两台机器,客户端一次性读取一定量小文件(一次几千个,每个小于 1M )的话,会有 IO 上的问题吗?
服务器可以用 NFS SMB 或者其他的方式共享数据、都是 NVME 存储的前提下。
1
Jinnrry Sep 16, 2024 via iPhone
机械硬盘,单盘不组 raid ,读取能到 1000M 就不错了
|
2
CodeAllen Sep 16, 2024
CPU 主频不高的话,TCP 协议栈在 10G 下 CPU 开销会大一点,,如果能支持 RDMA 最好,SMB 现在应该能支持 RDMA 。之前在工作站上测试 100G 网络,TCP 峰值也就只能到 33Gbps ,CPU 消耗很大,只能换 RDMA 才能跑满 100G 。
|
3
ToBeHacker Sep 16, 2024
都会有 IO 瓶颈的,哪个慢卡在哪儿,只是看你能不能接受这个速度了
具体情况需要做 benchmark |
4
GrayXu Sep 16, 2024
pps 指标和吞吐差别很大,受很多影响。你应该先直接测小包性能而不是吞吐。
|
5
giyear Sep 16, 2024 影响因素有
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 ,就会有瓶颈。 |
6
InamikanAnju Sep 17, 2024
@CodeAllen SMB 的 RDMA 需要 SMB-direct ,而这个在 Windows 上目前只有 Windows Server 能用,samba 的 rdma 听说比较灵车。
|
7
czvatqin Sep 17, 2024
@InamikanAnju Pro for Workstations 也有
|
8
carmark Sep 18, 2024
10G 网卡一般指的是 10Gbps ,对应而言就是 1.25GB/s 。
NVMe 的一般顺序读写速度,大概率应该会大于网络速度,具体可以实测下 FIO 。 RDMA 这个基本上可以不用考虑的,万兆没必要。 这里面的变量在于你的内存以及存储的文件数量,如果你随机读取,而存储文件数量巨大,那么寻址将会带来额外的磁盘开销,内存大小决定了你能缓存多少文件 metadata 。 |
9
Rorysky Sep 18, 2024
瓶颈在 ssd ,虽然你是 nvme 协议,但是 小文件传输约等于 随机读,性能不高的;
可以预处理下,tar 打包成批量的数据包再传输 |
10
iv8d Sep 19, 2024
小文件在固态下反倒不如机械,但是机械的速度你也懂。瓶颈还是会有
|