StorageReview.com

Co je NVMe-oF?

Enterprise  ◇  Podnikové úložiště

V posledních letech neustále pozorujeme, jak se výkon úložišť zrychluje, což představuje výzvu pro staré úložné protokoly, které se staly úzkým hrdlem datových center. Navzdory používání nejnovějších rychlostí fabric 100GbE a nových síťových standardů, jako je InfiniBand, tyto pomalé technologie síťových protokolů omezují výkon flash zařízení a udržují je uvnitř samotného zařízení a izolované v krabici. V tomto článku se krátce podíváme na Non-Volatile Memory Express (NVMe). Dále se zaměříme na NVMe over Fabrics (NVMe-oF) a NVMe over RDMA over Converged Ethernet (NVMe over RoCE), což je nová specifikace protokolu vyvinutá k řešení úzkých hrdel moderních úložných sítí.

NVMe-oF

Vzhledem k neustálé poptávce po nízké latenci a vysoké propustnosti v cloudech a datových centrech se kolem NVMe a Fabric hodně diskutuje. Specifikace NVMe existuje méně než deset let a jelikož je NVMe-oF relativně nová, stále existuje mnoho nedorozumění ohledně její praxe a toho, jak prospívá firmám. Tato technologie se neustále vyvíjí a je v IT průmyslu široce využívána. Začínáme vidět několik síťových dodavatelů, kteří dodávají produkty související s NVMe-oF na podnikový trh. Abychom drželi krok s pokročilými technologiemi datových center, je proto nezbytné pochopit, co NVMe-oF je, jaké má možnosti a výkonnostní charakteristiky. Dále pak jak jej lze nasadit a jak tuto technologii propojit s různými a novými řešeními.

NVMe a NVMe-oF

V datových centrech se objevila pole typu all-flash (AFA), aby reagovala na požadavek vysokého výkonu, protože jsou mnohem rychlejší než starší úložiště a dokáží bez námahy dosáhnout vždy slibovaného 1 milionu IOPS na trhu. Mnoho z těchto polí však nadále používalo téměř starší technologii úložiště, SATA SSD. Tento typ úložiště je založen na protokolu příkazů AHCI (Advanced Host Controller Interface) a podporuje IDE. AHCI bylo v podstatě navrženo pro rotující disky, nikoli pro pokročilé flash disky. Tato technologie založená na SCSI vytváří úzké hrdlo pro dnešní SSD a řadiče úložných polí, protože sběrnice SATA III s AHCI umožňuje přenos dat rychlostí pouze 600 MB/s.

Rychlosti sběrnice NVMe-oFTabulka 1Rychlost běžných autobusů

Abychom odemkli plný potenciál SSD disků, potřebovali jsme novou technologii, která by umožnila rychlejší uvolňování flash paměti. NVMe je specifikace, která umožňuje flashovým úložištím (nebo SSD) skutečně využít její výkon. Tato technologie byla poprvé představena v roce 2014 s cílem zlepšit dobu odezvy aplikací a nabídnout nové a lepší možnosti. Existuje mnoho provedení SSD disků NVMe a mezi nejznámější patří AIC (přídavná karta), U.2, U.3 a M.2. NVMe SSD disky využívají vysokorychlostní sběrnici Peripheral Component Interconnector Express (PCIe) v počítači nebo serveru tím, že je k ní přímo připojují. NVMe podstatně snižuje režii CPU a zefektivňuje operace, které snižují latenci, zvyšují počet vstupních/výstupních operací za sekundu (IOPS) a propustnost. Například NVMe SSD disky poskytují rychlost zápisu vyšší než 3 000 MB/s. Ve srovnání se SATA SSD disky to znamená 5krát rychlejší, neboli 30krát rychlejší než rotující disky.

Díky NVMe probíhá paralelní provoz IOPS, což umožňuje provádět mnoho výpočtů současně. Velké úlohy lze rozdělit na několik menších, které se zpracovávají nezávisle. Podobně jako vícejádrový procesor, který pracuje s více vlákny. Každé jádro procesoru může pracovat nezávisle na sobě a provádět specifické úlohy.

Další výhodou NVMe oproti AHCI je hloubka fronty (QD). Zatímco ACHI a SATA zvládnou hloubku fronty 32 příkazů (1 fronta a 32 příkazů), NVMe zvládne hloubku fronty až 65 tisíc příkazů. Jedná se o fronty o velikosti 65 tisíc příkazů, kde každá fronta může pojmout až 65 tisíc příkazů. Spolu se snížením latence to zrychluje výkon zaneprázdněných serverů zpracovávajících simultánní požadavky.

Hloubka q NVMe-oFTabulka 2: Porovnání front

Problém datových center však zůstává v síťových protokolech úložišť. Přestože se NVMe rozšířilo, jeho přínosy jsou omezeny na každé jednotlivé zařízení. Faktem je, že flash úložiště a další (drahá) zařízení podnikové úrovně, jako jsou AFA, nejsou určeny k izolaci svého pozoruhodného výkonu uvnitř šasi. Místo toho jsou určeny k použití v masivních paralelních počítačových klastrech, které je propojují s dalšími a více zařízeními, jako jsou další servery a úložiště. Toto propojení zařízení nazýváme fabric, úložnou sítí, včetně přepínačů, směrovačů, mostů protokolů, brán a kabelů.

V roce 2016 byl spuštěn průmyslový standard NVMe-oF. Tato specifikace protokolu rozšiřuje neuvěřitelný výkon NVMe z řadičů úložných polí do sítě Fabric pomocí Ethernetu, Fiber Channelu, RoCE nebo InfiniBandu. NVMe-oF používá alternativní protokol pro přenos dat (přes sítě Fabric) jako mapování transportu namísto sběrnice PCIe používané NVMe. Sítě Fabric jsou postaveny na konceptu odesílání a přijímání zpráv bez sdílené paměti mezi koncovými body. Přenos zpráv ve Síti NVMe Fabric zapouzdřuje příkazy a odpovědi NVMe do systému založeného na zprávách, který obsahuje jeden nebo více příkazů nebo odpovědí NVMe.

V NVMe-oF jsou cíle prezentovány jako jmenné prostory, což je ekvivalent SCSI LUN. NVMe-oF umožňuje hostitelům komunikovat s těmito úložnými cíli na mnohem větší vzdálenosti a zároveň udržovat ultra nízkou latenci v řádech mikrosekund (μs). Jednoduše řečeno, dosahujeme lepšího výkonu mezi systémy a flash úložištěm, aniž bychom podstatně zvýšili latenci fabric. Tato nízká latence je částečně možná díky výše zmíněným hloubkám front NVMe. NVMe-oF dokáže zpracovat stejné fronty jako NVMe, 65K.Toto pozoruhodné číslo umožňuje NVMe-oF navrhnout vysoce paralelní architekturu mezi hostiteli a disky s použitím samostatné fronty pro každé z těchto zařízení.

Transporty NVMe Fabrics 

NVMe podporuje a používá tři typy transportních sítí Fabric: NVMe-oF s využitím RDMA, NVMe-oF s využitím Fibre Channel a NVMe-oF s využitím TCP.

NVMe-oF přes RDMA

Tato specifikace využívá technologii RDMA (Remote Direct Memory Access) a umožňuje přenos dat a paměti mezi počítačem a úložnými zařízeními v síti. RDMA je způsob výměny informací mezi hlavní pamětí dvou počítačů v síti bez zapojení procesoru, mezipaměti nebo operačního systému kteréhokoli z počítačů. Protože RDMA se vyhýbá operačnímu systému, je obvykle nejrychlejším a nejníže zatěžujícím mechanismem pro přenos dat v síti.

NVMe-oF přes RDMA používá transportní protokol TCP k přenosu dat přes IP sítě. Mezi typické implementace RDMA patří Virtual Interface Architecture, RDMA přes konvergovaný Ethernet (RoCE), InfiniBand, Omni-Path a iWARP. RoCE, InfiniBand a iWARP jsou v současnosti nejpoužívanější.

NVMe přes Fibre Channel

Kombinace použití NVMe přes Fibre Channel (FC) se často označuje jako FC-NVMe, NVMe přes FC nebo někdy NVMe/FC. Fibre Channel je robustní protokol pro přenos dat mezi úložnými poli a servery a používá ho většina podnikových systémů SAN. V FC-NVMe jsou příkazy zapouzdřeny uvnitř rámců FC. Je založen na standardních pravidlech FC a odpovídá standardnímu protokolu FC, který podporuje přístup ke sdílené paměti NVMe flash. Příkazy SCSI jsou zapouzdřeny v rámcích FC; jejich interpretace a překlad do příkazů NVMe však snižuje výkon.

NVMe přes TCP/IP

Tento typ transportu je jedním z nejnovějších vývojů v rámci NVMe-oF. NVMe over TCP (Transport Control Protocol) využívá NVMe-oF a transportní protokol TCP k přenosu dat přes IP (ethernetové) sítě. NVMe je přenášeno uvnitř TCP datagramů přes Ethernet jako fyzický transport. Navzdory RDMA a Fibre Channel nabízí TCP pravděpodobně levnější a flexibilnější alternativu. Navíc ve srovnání s RoCE, který také používá Ethernet, se NVMe/TCP chová spíše jako FC-NVMe, protože pro I/O používá sémantiku zpráv.

Použití NVMe-oF s RDMA, Fibre Channel nebo TCP vytváří kompletní řešení úložiště NVMe typu end-to-end. Tato řešení poskytují pozoruhodně vysoký výkon a zároveň zachovávají velmi nízkou latenci dostupnou prostřednictvím NVMe.

NVMe přes RDMA přes konvergovaný Ethernet (RoCE)

Mezi protokoly RDMA vyniká RoCE. Víme, co jsou RDMA a NVMe-oF, a nyní máme konvergovaný Ethernet (CE), podporu RDMA přes ethernetovou síť. CE je jako vylepšená verze Ethernetu, známá také jako Data Center Bridging a Data Center Ethernet. Zapouzdřuje transportní pakety InfiniBand přes Ethernet. Jeho řešení poskytuje mechanismus Link Level Flow Control pro zajištění nulových ztrát, a to i při nasycené síti. Protokol RoCE umožňuje nižší latence než jeho předchůdce, protokol iWARP.

Existují dvě verze RoCE, RoCE v1 a RoCE v2. RoCE v1 je protokol Ethernetu vrstvy 2 (link), který umožňuje komunikaci mezi dvěma hostiteli ve stejné ethernetové vysílací doméně. Nelze tedy směrovat mezi podsítěmi. Novou možností je RoCE v2, protokol nadřazený protokolu UDP/IPv4 nebo UDP/IPv6. RoCE v2 je protokol Ethernetu vrstvy 3 (internet), což znamená, že jeho pakety lze směrovat. Softwarová podpora pro RoCE v2 se stále vyvíjí. Mellanox OFED 2.3 nebo novější má podporu RoCE v2 a také linuxové jádro v4.5.

NVMe over RoCE je nový typ sítě SAN. Tento protokol poskytuje stejný výkon a flexibilitu podnikových datových služeb jako hardware a software sítě SAN. Ačkoli protokol RoCE těží z charakteristik konvergované ethernetové sítě, lze jej použít i v tradiční nebo nekonvergované ethernetové síti. Pro konfiguraci úložné struktury NVMe over RoCE musí síťová karta (NIC), přepínač a adaptér AFA (Auto-Flash) podporovat konvergovaný Ethernet. Síťová karta (nazývaná R-NIC) a all-flash pole musí poskytovat podporu pro RoCE. Servery s R-NIC a adaptéry AFA s rozhraním NVMe over RoCE budou kompatibilní s nainstalovanými přepínači CE.

Podpora NVMe-oF přes RoCE pro VMware

Společnost VMware přidala podporu pro sdílené úložiště NVMe pomocí NVMe-oF. Pro externí připojení je ve verzi vSphere 7.0 podporována technologie NVMe přes Fibre Channel a NVMe přes RDMA. Hostitelé ESXi mohou používat RDMA přes konvergovaný Ethernet v2 (RoCE v2). Pro povolení a přístup k úložišti NVMe pomocí RDMA používá hostitel ESXi na hostiteli adaptér R-NIC a úložný adaptér SW NVMe přes RDMA. Aby bylo možné adaptéry používat pro vyhledávání úložišť NVMe, je nutné provést konfiguraci v obou adaptérech.

Cíle jsou hostiteli prezentovány jako jmenné prostory v aktivním/aktivním nebo asymetrickém přístupovém režimu (ALUA) při použití NVMe-oF. To umožňuje hostitelům ESXi objevovat a používat prezentované jmenné prostory. ESXi emuluje cíle NVMe-oF jako cíle SCSI interně a prezentuje je jako aktivní/aktivní cíle SCSI nebo implicitní cíle SCSI ALUA.

Požadavky na NVMe přes RDMA:

  • NVMe pole s podporou transportu RDMA (RoCE v2)
  • Kompatibilní hostitel ESXi
  • Ethernetové přepínače podporující bezztrátovou síť.
  • Síťový adaptér s podporou RoCE v2
  • Adaptér SW NVMe přes RDMA
  • Řadič NVMe
  • RoCE dnes běží přes ztrátové tkaniny, které podporují ZTR (Zero Touch RoCE), nebo vyžaduje nakonfigurovanou síť pro bezztrátový přenos informací pouze na vrstvě 2 nebo na vrstvě 2 i vrstvě 3 (s využitím PFC).

Při nastavování NVMe-oF na hostiteli ESXi je třeba dodržovat několik postupů.

  • Nemíchejte typy transportu pro přístup ke stejnému jmennému prostoru.
  • Zajistěte, aby hostiteli byly prezentovány všechny aktivní cesty.
  • NMP se nepoužívá/není podporován; místo toho se pro cíle NVMe používá HPP (High-Performance Plugin).
  • Pro cílové NVMe zařízení musíte mít vyhrazené linky, VMkernels a adaptéry RDMA.
  • Vyhrazená VLAN vrstvy 3 nebo konektivita vrstvy 2
  • Limity:
    • Jmenné prostory-32
    • Cesty=128 (max. 4 cesty/jmenný prostor na hostiteli)

Závěr

Vzhledem k tomu, že stále více lidí závisí na datech v cloudových službách, roste poptávka po rychlejším back-endovém úložišti v datových centrech. NVMe je novější způsob propojení s flash zařízeními a spolu s NVMe-oF tyto technologie rozvíjejí možnosti externího připojení. NVMe-oF a jeho různé typy transportů začínají být uznávány jako budoucnost ukládání dat. Tato úložná zařízení a zařízení jsou považována za srdce datových center, protože v propojené infrastruktuře se počítá každá milisekunda. Technologie NVMe snižuje počet vstupních/výstupních příkazů mapovaných na paměť a umožňuje použití ovladačů zařízení operačního systému pro vyšší výkon a nižší latenci.

NVMe se stává stále populárnějším díky své rychlosti multitaskingu s nízkou latencí a vysokou propustností. Zatímco NVMe se používá také v osobních počítačích ke zlepšení střihu videa, hraní her a dalších řešení, skutečný přínos je vidět v podnicích prostřednictvím NVMe-oF. Odvětví, jako je IT, umělá inteligence a strojové učení, se neustále rozvíjejí a poptávka po vylepšeném výkonu stále roste. Nyní je běžné, že dodavatelé softwaru a sítí, jako jsou VMware a Mellanox, dodávají na podnikový trh více produktů a řešení souvisejících s NVMe-oF. Díky moderním a masivně paralelním počítačovým clusterům platí, že čím rychleji můžeme zpracovávat a přistupovat k našim datům, tím cennější jsou pro naše podnikání.

Materiály

Storagehub: VMware NVMeoF vSphere

NVMexpress: NVMe přes fabric

Recenze NetApp AFF A800 NVMeOF

Zapojte se do StorageReview

Zpravodaj | YouTube | Podcast iTunes / Spotify | Instagram | Twitter | TikTok | RSS kanál

Juan Mulford

Juan je redaktorem časopisu StorageReview s rozsáhlými zkušenostmi se správou podnikových úložných systémů.