NVMe-oF, vad är detta protokoll för åtkomst till SSD:n över nätverket

Lite i taget är övergivandet av disken ett faktum och användningen av solid state-enheter växer mer och mer. Denna förändring sker dock inte bara i hemdatorernas värld, utan även på servrar. NVMe-oF-protokollet har mycket att göra med allt detta. Vad står dessa akronymer för och varför kan de forma framtiden för PC-lagring?

Den progressiva övergången till användning av NVMe SSD:er för lagring inom alla datorsektorer fortsätter stadigt, deterministiskt och utan bromsar. Detta inkluderar nätverkssystem, som idag sammankopplar flera datorer med varandra, antingen på ett lokalt nätverk eller i ett datacenter.

NVMe-oF

De flesta lagringsenheter är av typen DAS eller Direct Access Storage där endast den PC som har nämnda enhet installerad kan komma åt dess innehåll och därför är det i en nätverksmiljö nödvändigt att utveckla protokoll som t.ex. i en datacentermiljö eller en superdator som består av tiotals eller hundratals enheter ger åtkomst till hela lagringsinfrastrukturen.

Hur är kommunikationen i ett datacenter?

Storage Area Network

Innan vi går in på hur NVMe-oF fungerar och vad den består av. Vi måste komma ihåg att den teknik som används i ett datacenter eller ett lokalt nätverk för att kommunicera dess interna lagring kallas SAN, vilket står för Förvaringsutrymme nätverks eller lokal nätverkslagring. För detta används idag tre olika teknologier, alla baserade på veteranen SCSI.

  • Fibre Channel Protocol (FCP): It är ett protokoll som transporterar SCSI-kommandon via ett fiberoptiskt nätverk , även om det också kan göras över kopparlinjer. Deras hastigheter kan variera från 1 till 128 GB/s.
  • iSCSI: Vad kombinerar TCP/IP Internet Protocol och SCSI-kommandon . Detta är baserat på konventionella nätverkskort och är designat för nätverk med mycket låg bandbredd eftersom det är begränsat till deras Ethernet-kapacitet. Alltså hastigheter på 1 GB / s är dock vanliga 10 GB / s har börjat synas på sistone.
  • Serial Attached SCSI: den mest använda av alla och baserade på SAS-kablar som tillåter upp till 128 lagringsenheter att anslutas via värdbussadaptrar eller HBA. Hastigheten på dessa kan vara 3 GB/s, 6 GB/s, 12 GB/s och till och med 22.5 GB/s.

Men alla dessa tekniker är avsedda att kommunicera med konventionella diskenheter. Och vi måste anta att tillgången till en hårddisk skiljer sig från den för en flashbaserad enhet. Vad gör att användningen av dessa protokoll inte är den mest lämpliga.

Vad är NVMe-oF?

NVMe-OF

Tja, de är förkortningen för NVMe over Fabric och det är att detta protokoll inte bara var planerat för att kommunicera med flash- eller icke-flyktiga minnesenheter, utan också för interkommunikation av de olika elementen i ett system genom interkommunikationsinfrastrukturer. Vi måste förstå att vi syftar på en kommunikationsstruktur mellan två element. Som kan vara två processorer, en RAM och en processor, en accelerator och ett ROM-minne och så vidare. Låt oss inte glömma att topologierna som används för detta fall använder samma strukturer som i telekommunikation, men i mycket liten skala.

Detta kommer dock att användas för att kommunicera NVMe SSD:er över nätverket. Antingen för att kommunicera olika element till CPU inom samma dator eller om det inte sker via ett nätverkskort. Så vi pratar om stora datacenter. Fördelen med att använda NVMe-oF? Tja, jämfört med SATA- och SAS-protokollen som används i hårddiskar, kan dessa stödja en kö på upp till 65,000 65,000 end-to-end-förfrågningar och upp till XNUMX XNUMX olika kommandon per förfrågan , jämfört med en enda av 1 enstaka begäran och färre än 256 kommandon. . Vilket är nyckeln i miljöer med fler och fler kärnor som gör dataförfrågningar till lagring som kan mätta nätverket.

Typer av NVMe-OF

För närvarande finns det två varianter, som är följande:

  • NVMe-of med fiberoptisk kanal: som designades för att integreras i befintliga datacenter och servrar genom att stödja gamla protokoll som SCSI. Detta kommer att underlätta övergången till att använda flash-enheter i befintliga datacenter och servrar.
  • NVMe via Ethernet: som används för två datorer att utbyta data genom Remote Direct Memory Access (RDMA) och hänvisar därför till det faktum att två datorer kan utbyta innehållet i sina flashminnen i NVMe SSD:er utan att processorn i något av systemen ingriper i processen. I det här fallet använder kommunikationen inte de så kallade SCSI-paketen.

Låt oss inte glömma att NAND Flash-minnen också kallas icke-flyktigt RAM på grund av att deras natur när de kommer åt dem är densamma som RAM, bara att de inte förlorar information när de slutar ta emot en elektrisk laddning. Detta gör det möjligt att använda teknik som används för att kommunicera två separata RAM-minnen för att göra det med de olika flashminnena.

Vilka hastigheter pratar vi om?

Låt oss inte glömma att NVMe SSD:er använder PCI Express-gränssnitt, så den fiberoptiska versionen av denna kommer att vara en av de möjliga kandidaterna för att ansluta de olika NVMe SSD:erna inom infrastrukturen för ett datacenter eller ett lokalt nätverk. Ethernet kommer dock att fortsätta att dominera som standardkommunikationsprotokoll för nätverk under lång tid framöver. Det råder ingen tvekan om att nätverket gränssnitt med hastigheter på 50, 100 och till och med 200 Gigabit per sekund har varit under utveckling och kommer snart att distribueras i datacenter.

Framtiden för NVMe-oF finns också på PC:n

Xbox-hastighet

RDMA integrerad i NVMe-oF är inte en ny teknik, eftersom den har implementerats på nischmarknader i flera år, på grund av att de integrerade nätverkskontrollerna eller NIC:erna med RDMA var mycket dyra och krävde högt specialiserade tekniker för deras underhåll. dess genomförande var dyrt. Det kommer dock att vara nyckeln i framtiden även på stationära datorer. Anledningen till detta är att processorernas interna infrastrukturer utvecklas till vad vi kallar NoC. I dem har varje element i processorn ett litet integrerat nätverkskort och en IP-adress som man kan kommunicera med resten av elementen med genom vad vi skulle kunna kalla en nätverksprocessor integrerad i processorn.

Det är ingen hemlighet för någon med kunskap om saken att på samma sätt som nätverkskontroller sågs integrerade i CPU:er, är nästa steg att göra det med flashkontrollerna som finns i NVMe SSD:er. Dessutom är fördelen med att implementera NVMe-oF internt att CPU:n inte behöver utföra en serie processer för att komma åt data från en enhet till en annan inom en dator.

Det vill säga, i framtiden kommer samma protokoll som kommer att användas på nivån för datacenter och stora servrar att ses på vår PC för att inte bara kommunicera med NVMe SSD enheter inom dem, men så att varje element kan kommunicera på olika sätt med CPU:n. Vi släpper bara protokoll som de som används i DirectStorage som ger dig tillgång till SSD:n från GPU utan att behöva gå igenom processorn är baserade på NVMe-oF.