Kedy sa stane NVMe dominantnou technológiou pre pripájanie serverov k storage zariadeniam? časť 2/2

Igor Juran

Pre-sales Systems Engineer - NetApp, EC

igor.juran@alef.com

V tejto časti by som sa chcel viac venovať použitiu NVMe technológie v prostrediach Ethernet a InfiniBand (IB).

Je jedna vec, ktorú si mnohí IT manažéri a storage špecialisti o technológii NVMe neuvedomujú. Ak si zoberieme celkový prínos NVMe pre zrýchlenie IO operácií, tak výkonnostný prínos technológie NVMe pre zrýchlenie operácií diskov pripojených na back-end predstavuje asi 20%. Oveľa väčšie výhody NVMe, tých zostávajúcich 80%, sa prejaví práve pri použití technológie NVMe pre front-end konektivitu - pri pripojení storage zariadení k serverom. Preto nie je až tak dôležité aký je spôsob pripojenia diskov na backende diskového poľa, ale akým spôsobom komunikuje diskové pole s pripojenými servrami.

Vylepšenia v oblasti IOPS a priepustnosti sú primárne výsledkom flexibility NVMe a jeho schopnosti využiť výhody rýchlych transportných technológií pre prenos NVMe príkazov a dát. Tieto transportné technológie v súčasnosti zahŕňajú:

  • FCP – Fibre Channel Protocol - súčasné rýchlosti 16 Gbps a 32 Gbps, čoskoro 64 Gbps.
  • RDMA protokol - RDMA (Remote Direct Memory Access) je spôsob ako si vymieňať dáta medzi hlavnými pamäťami dvoch serverov prostredníctvom siete, bez potreby zapojenia procesora, pamäte alebo operačného systému či iného počítača. Keďže RDMA obchádza operačný systém, je to všeobecne najrýchlejší mechanizmus s najnižšou réžiou prenosu dát cez sieť. V súčasnosti RDMA dokáže spolupracovať s dvoma technológiami:
    • o Data Center Ethernet: súčasné rýchlosti 25, 40, 50, 100 Gbps.
    • o InfiniBand: v súčasnosti sú k dispozícii rýchlosti do 100 Gbps.
  • PCI Expres 3.0: podporuje 8 gigatransfers za sekundu (GT/s). (GT/s predstavuje jednotku výkonu zbernice. Číslo je bezrozmerný údaj, ktorý hovorí koľkokrát za sekundu je zbernica schopná efektívne preniesť dáta. Nehovorí však o tom, o aký veľký blok dát sa jedná, lebo to závisí na šírke zbernice. Napríklad 64bitová zbernica pri výkone 1,6GT/s je schopná preniesť až 12,8GB/s, jedná sa ale o maximálny teoretický výkon bez započítania paritných dát pre opravu chýb, réžie zbernice a pod.)

Vylepšenia priepustnosti sú výsledkom masívnej paralelizácie činností prostredníctvom NVMe. Táto paralelizácia umožňuje protokolu NVMe distribuovať spracovanie cez viaceré procesorové jadrá pre paralelné spracovávanie dát.

Vylepšenia v oblasti oneskorenia sú výsledkom kombinácie viacerých faktorov, vrátane:

  • priamočiareho súboru NVMe príkazov
  • nahradenia hardware prerušení (hardware interrupts) inou technológiou (polling mode driver)
  • elimináciou softwarových zámkov
  • odstránenia kontextových prepínačov

Všetky tieto faktory spoločne majú vplyv na priepustnosť a skracujú dobu odozvy, čo sú kľúčové sledované parametre pre kritické business aplikácie.

NVMe over Fabric (NVMe-oF)

NVMe-oF je primárne určený pre použitie NVMe protokolu v dátových sieťach. Definuje architektúru prístupu a protokoly použité pre pripojenie serverov k blokovým storage zariadeniam. Najjednoduchšie je si to predstaviť ako spôsob ako vylepšiť súčasné blokové protokoly ako FCP a iSCSI.

 

NVMe-oF dodáva špecifikáciu, základné štandardy a modely, ktoré môžu byť použité pre NVMe transport vo vnútri rôznych súčasných prenosových technológií ako napríklad:

  • NVMe/FC – pre detaily pozrieť prvú časť článku na túto tému: link TU
  • NVMe/TCP - NVMe prenášaný v TCP datagrame. NVMe/TCP je v súčasnosti tvoriaci sa protokol (pracuje sa na jeho definícii), avšak má potenciál stať sa najpopulárnejším variantom NVMe cez Ethernet a zároveň protokolom, ktorý by sa mohol stať logickým pokračovaním pre iSCSI protokol. Podobne ako iSCSI používa NVMe/TCP štandardné NIC adaptéry (Network Interface Cards) a ethernetové prepínače, čo z neho robí atraktívnu možnosť pre prostredia, v ktorých chcú zákazníci používať NVMe protokol bez špeciálnych zariadení ako sú RDMA NICs (RNICs) a DCB (Data Center Bridging) prepínače, ktoré sú potrebné pre podporu RoCE (RDMA over Converged Ethernet).
  • NVMe s podporou RDMA. Existuje niekoľko spôsobov prenosu, ktoré podporujú RDMA:
    • o NVMe cez Infiniband (NVMe/IB). Toto riešenie používa Infiniband technológiu, ktorá v súčasnosti podporuje rýchlosti do 100Gbps ako ultra rýchly spôsob prenosu. Aj keď sa jedná o extrémne rýchly spôsob komunikácie, Infiniband je veľmi drahá technológia a má obmedzenia čo sa týka vzdialenosti prepojenia aj škálovania. Prvým diskovým poľom v enterprise triede s možnosťou pripojenia NVMe/IB bolo diskové pole NetApp EF570, ktoré je schopné poskytovať 1M IOPS a 21 GBps s latenciou menšou ako 100µs.
    • o RDMA cez Ethernet pripojenia
      • Internet Wide-Area RDMA Protocol (iWARP) prenáša RDMA s použitím Direct Data Placement protokolu (DDP), ktorý je transportovaný použitím TCP alebo Secure TCP (STCP). DDP prenáša dáta v streame a nesegmentuje ich aby vyhovovali rámcom TCP protokolu. NetApp používa iWARP protokol pri MCC IP (MetroCluster IP) pre zrkadlenie pamäti medzi nodmi vo vzdialených lokalitách. Pre diskové polia FAS2750 a AFF A220 sa používa softwarový iWARP, pre ostatné modely diskových polí, ktoré majú možnosť osadiť rozširujúcu kartu sú používané dedikované iWARP karty ( 2p 25GbE iWARP SFP28 alebo 2p 100GbE iWARP QSFP28).
      • RoCE (RDMA over Converged Ethernet) prenáša RDMA cez konvergovaný Ethernet, tým pádom ponúka nízke oneskorenia pretože nepotrebuje TCP. Na druhej strane RoCE vyžaduje Ethernet prepínače, ktoré podporujú Data Center Bridging (DCB) a Priority Flow Control (PFC) funkcionalitu. DCB prepínače nie sú štandardnými základnými Ethernet prepínačmi a bývajú obvykle drahšie. Na serveroch a storage kontroleroch musí byť osadený špeciálny sieťový adaptér s podporou RDMA (RNIC). V súčasnosti existujú dve varianty RoCE:
        • RoCE v1, definované pôvodnou špecifikáciou, v ktorej protokol na úrovni linkovej vrstvy L2 umožňuje komunikáciu medzi iniciátorom a targetom v rámci toho istého subnetu. RoCE je teda protokol na úrovni linkovej vrstvy L2 a nemôže byť smerovaný medzi rôznymi L3 subnetmi.
        • RoCE v2 je protokol definovaný na sieťovej vrstve, ktorý používa UDP (User Data Protocol) cez IPv4 alebo cez IPv6. Pracuje teda na úrovni sieťovej vrstvy L3 a môže byť smerovaný medzi rôznymi L3 subnetmi. Nakoľko UDP nevyžaduje „in-order delivery“ ale zároveň RoCE v2 špecifikácia nepovoľuje „out-of-order delivery“, musí byť táto požiadavka zabezpečená na úrovni DCB siete. RoCE v2 tiež definuje flow-control mechanizmus, ktorý používa bity ECN (Explicit Congestion Notification) pre označovanie jednotlivých rámcov a CNPs (Congestion Notification Packets) pre potvrdenie doručenia rámcov.
      • iSER – iSCSI Extension pre RDMA. iSER je rozšírenie pre iSCSI protokol pre podporu RDMA. RDMA môže byť potom realizovaná cez TCP s RDMA službami (iWARP), ktoré dokáže použiť existujúce Ethernetové zariadenia a nepotrebuje nové investície do sieťovej infraštruktúry. Ďalšie možnosti sú v použití RDMA cez konvergovaný Ethernet alebo Infiniband, čo ale vyžaduje zmeny v sieťovej infraštruktúre.

Kvôli kompletnosti informácií by som chcel spomenúť ešte jeden protokol, ktorý síce nepatrí k NVMe ale úzko súvisí s RDMA.

  • SRP - SCSI RDMA protokol. SRP je protokol, ktorý umožňuje SCSI komunikáciu medzi zariadeniami prostredníctvom RDMA (Remote Direct Memory Access). V tomto prípade sa vyžaduje pre RDMA špecializovaný hardware ako sú NIC pre Infiniband alebo sieťové adaptéry s podporou RoCE alebo iWARP.

Koexistencia protokolov

Koexistencia NVMe/FC a FC

Už v predchádzajúcom článku bolo uvedené, že tieto protokoly dokážu koexistovať na rovnakej SAN infraštruktúre a na rovnakých host portoch. Ak je ako storage zariadenie použité pole bežiace ONTAP operačný systém, tak je koexistencia protokolov možná aj portoch diskového poľa. Ak je ako storage zariadenie použité NetApp E/EF series, tak koncové zariadenie dokáže používať iba jeden protokol, tým pádom môže byť iba spoločná infraštruktúra a host porty.

Koexistencia NVMe/IB, iSER a SRP

Všetky tri uvedené protokoly dokážu koexistovať na tej istej fyzickej infraštruktúre a eventuálne aj na tom istom host porte. V súčasnej dobe NetApp podporuje tieto protokoly iba pre použitie s NetApp E/EF series a platí tam rovnaké obmedzenie, že koncové zariadenie dokáže používať iba jeden protokol, tým pádom môže byť iba spoločná infraštruktúra a host porty, nie koncové storage zariadenie.

Koexistencia NVMe/RoCE a iSCSI

Podobne ako v predchádzajúcom prípade dokážu uvedené protokoly koexistovať na tej istej fyzickej infraštruktúre a eventuálne aj na tom istom host porte. V súčasnej dobe NetApp podporuje protokol NVMe/RoCE iba pre použitie s NetApp E/EF series a platí tam rovnaké obmedzenie, že koncové zariadenie dokáže používať iba jeden protokol, tým pádom môže byť iba spoločná infraštruktúra a host porty, nie koncové storage zariadenie.

Ak sa osobne pozerám na rôzne technológie NVMe a ich nasadenie z pohľadu zákazníka tak mi napadá niekoľko logických uzáverov:

  1. Zákazníci, pre ktorých je rýchly prístup k dátam životne dôležitý (z business perspektívy samozrejme) už technológiu NVMe v niektorej z jej dostupných implementácií majú nasadenú alebo ju plánujú nasadiť bez ohľadu na náklady.
  2. Zákazníci, ktorí majú SAN siete piatej alebo šiestej generácie a uvažujú o zrýchlení prístupu k dátam môžu urobiť zmenu v ktorejkoľvek vhodnej chvíli (počas technologickej výmeny staršieho storage alebo serverového hardware) nakoľko pravdepodobne z technického hľadiska ostatné potrebné vybavenie už majú.
  3. Zákazníci, ktorí používajú siete LAN a nechcú investovať do drahých DCB prepínačov si budú musieť asi počkať na dodefinovanie štandardu NVMe/TCP, ktorý im umožní používať rýchlosť a výhody NVMe prostredníctvom štandardných sieťových LAN zariadení.

NetApp podporuje NVMe/FC (16Gbps a 32Gbps) na diskových poliach FAS/AFF už od verzie ONTAP 9.4 (v súčasnosti sa nasadzuje ONTAP 9.8), takže sa jedná o už overenú technológiu. Na diskových poliach rady E/EF series je podpora NVMe protokolov oveľa širšia, v ponuke je pripojenie cez vysokorýchlostný Infiniband 100Gbps, RDMA cez konvergovaný Ethernet (RoCE v2) ako aj 32Gbps NVMe/FC. Zostáva už iba na používateľoch, kedy sa rozhodnú pre prechod na vyššiu kvalitu pripojenia storage zariadení.  

Radi Vás u nás privítame a ponúkame Vám možnosť vykonať PoC testovanie v priestoroch spoločnosti ALEF. 

kontaktujte nás