https://aijishu.com/a/1060000000238559
目录
-到底谁是第一款原生NVMe-oFSSD?
-连接方案&性能测试
-从2019年拖到现在:还能引领存储系统潮流吗?
-以太网SSD应用:不只是块设备?
在ODCC 2021开放数据中心峰会上,三星展出了Ethernet(以太网)SSD,这可能是它的实物第一次公开亮相。
现场静态展示的Demo,是把这个U.2尺寸的Samsung Ethernet SSD放在一台有点老的Dell台式机里。具体来说是插在一块转接卡上,在后部I/O挡片处提供以太网接口。而这个转接板插在传统32位PCI白色插槽内,从下面主要是取电。
上面的照片,位于SFF-8639连接器相反的另外一侧,这里可以看到三星以太网SSD用于调试的金手指。
到底谁是第一款原生NVMe-oF SSD?
三星宣称自己是“世界第一个原生以太网SSD”。以太网链路是双端口25G(向下兼容10G),我理解这个速率比较匹配U.2双端口PCIe 3.0(x2)NVMe SSD;如果想达到PCIe 4.0双端口NVMe的性能,用将来的50GbE IP合适。
具体到协议,看起来基于RDMA(RoCE v2、iWARP)和NVMe over TCP三种传输层的NVMe-oF都支持。做为一个目标端块设备,支持超过500个主机连接数。
记得我在《NVMe-oF__三种协议(FC__、RDMA__、TCP__)对比:成败不只看性能》中提到过Marvell转接NVMe SSD到25Gb以太网NVMe-oF的88SN2400芯片,如上图,这个确实不是原生方案。但我又仔细翻了一下之前的新闻,Marvell/东芝在2019年前后还宣布过另一款单芯片NVMe-oF SSD控制器,以及固态盘样品。
如上图,Marvell 88SS5000 NVMe-oF SSD控制器(也是双端口25GbRoCE)和东芝对应的SSD。但这款产品后来好像没什么动静,不知是技术原因,还是与公司变成Kioxia有关。关于东芝使用Marvell主控方面的合作,至少可以追溯到SAS SSD时代了。
以上资料截自Marvell® 88SS5000 NVMe-oF™ SSD Controller的Product Brief,首先可以看出这颗芯片里有4核Cortex-R5 ARM,我想三星新发布的以太网SSD计算能力可能要比这个高?
Marvell控制器支持64 Virtual Functions(我理解应该是NVMe的Namespace),总共132个队列对,每个队列深度应该是256 outstanding I/O。
下面我引用一下《ODCC-2021-05008 Ethernet SSD测试白皮书(英文版)》里面列出的三星详细参数,供大家参考:
3.2.1. NVMe 特性
⚫ Support NVMe v1.2
⚫ Support NVMe-oF v1.0
⚫ Support for up to 1024 NVMe queue pairs (QP)
⚫ Support for up to 128 namespaces per drive
⚫ Limited to 16 namespaces perdrive if reservations are managed by the Bridge
⚫ Up to 64 entry submission queue(SQ) depth
⚫ Up to 8K Work Queue Entries
⚫ Number of QP*SQ depth must beless than 8K
3.2.2. RDMA 特性
⚫ iWARP,RoCE(v1, v2)in hardware
⚫ Support for up to 1024 iWARP orRoCE QPs
⚫ TCP Offload Engine in HW(iWARP)
3.2.3. Ethernet 特性
⚫ Dual port 25GbE
⚫ Two ports at the same speed
⚫ Up to 8 MAC addresses
⚫ 4K VLAN addresses per port
⚫ Up to 1024 source IP addresses of IPv4/IPv6
⚫ 8 destination IP addresses ofIPv4/IPv6
⚫ HW Link Aggregation
3.2.4. 网络服务
⚫ ICMP
⚫ ARP
⚫ SNTP
⚫ LLDP
3.2.5. 外围
⚫ SPI Flash interface forfirmware
⚫ 3&4 byte addressing
⚫ 2 I2C/MDIO ports for managingEthernet link modules or connecting to BMC
⚫ 1 general purpose I2C port
⚫ 8 GPIO pins for configurabilityand feature set control
3.2.6. 企业级数据保护
⚫ All data paths have overlappingparity protection
⚫ All memories are ECC protected
⚫ All errors will be logged to aninternal log buffer
⚫ Internal log buffer isperiodically written to external Flash
⚫ An immediate write to flash isperformed in the event of a non-recoverable error
⚫ Dual images are stored inexternal flash
⚫ Images protected by CRC
连接方案&性能测试
ODCC大会上现场展示方案中,交换机是Broadcom的。以太网信号直接从SFF-8639/9639(U.3)连接器上走,未来应该是配合EBOF的背板比较多。客户端服务器用谁家的倒是无所谓。
三星以太网SSD的性能测试结果还不错,128K顺序读写都超过了2GB/s(应该是受限于25GbE),4K随机读IOPS 669K,随机写IOPS 139K。
从2019年拖到现在:还能引领存储系统潮流吗?
有图有真相
有点戏剧性的是,其实三星早在2019年的SNIA SDC印度会议上就介绍过NVMe-oF Ethernet SSD,其中资料居然和今天讲的大多一致。大家先跟着往下看,结尾处我会把2个文档都共享出来。
上图中列出2种“当前的NVMe-oF JBOF方案”,我理解左边类似于一个单控闪存阵列了(具体是否实现RAID功能不确定);而右边基于SoC/SmartNIC相对简洁的设计在今天被称为EBOF,就像《NVMe-oF E-JBOF__设计解析:__WD RapidFlex__网卡_ _& OpenFlex Data24》。
以NVMe SSD低于100µs的延时水平,NVMe-oF增加10µs比较合适,iSCSI的开销太大。我发现当年三星还想着Z-NAND SSD over NVMe-oF,今天好像暂时没提。
所谓的桥接NVMe-oF方案,这里指用一颗SoC转接(后面提到是FPGA),其实Marvell 88SN2400已经是ASIC了。当然还是原生NVMe-oF更简单高效。
三星指出,与FPGA板转接NVMe-oF相比,原生NVMe-oF可以降低20%延时,并且成本和功耗都较低。不过Ethernet SSD比普通NVMe盘贵多少,我还不清楚。
上图有点像存储系统后端的演进方向。传统磁盘/闪存阵列多采用SAS后端,到NVMe SSD时代中高端产品开始支持PCIeSwitch和JBOF来扩展(Dell EMC PowerMax),未来EBOF也可能会更多出现在软件定义的分布式存储系统中。
比如现有的中高端闪存阵列,Scale-out扩展是以控制器对的形式。如果换成以太网SSD,只要是交换机能连到的地方,系统的扩展规模可以更大。前端如果放控制器机头,也可配置成一个更大的Shared-Everything。
OCP FX-16闪存扩展机箱都是现成的,把PCIe Switch Board换掉,EBOF里面除了ESSD,2个以太网交换机模块,还有BMC管理就好了。
以太网SSD应用:不只是块设备?
有朋友问以太网SSD是否提供SDK?尽管三星这次在白皮书里只写了NVMe-oF接口,但似乎2年前提到的用法更多。SoC控制器上的Accelerator可以跑个性化属性(也就是用户的应用程序),具体场景包括对象存储、CDN、IoT等。
如上图(大数据:对象存储),Ceph的OSD是不是能跑在Ethernet SSD上,大家还记得当前希捷搞过的KV-HDD硬盘吗?
提到大数据和Key/Value存储,在以太网SSD上实现压缩等有一定意义,这让我想起《NVMe__计算型存储:三星、WD__和NGD__的“SmartSSD__”_》里面加了颗FPGA的SSD。从成本和未来走量的角度,我还是相对看好以太网SSD,只是不确定控制器芯片的算力如何。
在用于CDN的边缘缓存场景,ESSD甚至可能替代Edge服务器。
又到了总结的时候。NVMe-oF App SSD这个名字还不错吧?只是不知道从基础的块设备(盘),发展到更多应用还需要多长时间。
另外,东芝(Kioxia)等还搞不搞了…
参考资料 https://pan.baidu.com/s/1jBXEffw-qA\_owoLe1Zyu2w_
提取码:b5xo_