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