NVMe (nem felejtő memory express) egy host controller interface and storage protocol created to accelerate the transfer speed of data between enterprise and client systems and solid-state drives (SSD) over a computer high-speed Peripheral Component Interconnect Express (PCIe) bus.
mivel a szilárdtest technológia vált a tárolópiac preferált közegévé, gyorsan világossá vált, hogy a meglévő interfészek és protokollok-nevezetesen a Soros fejlett technológiai Csatolás (SATA) és a Soros csatlakoztatott SCSI (SAS)-nem alkalmasak, különösen adatközponti környezetben. A kifejezetten a NAND flash számára tervezett új protokoll kidolgozása már 2007-ben kezdődött, az Intel átvette a vezetést. 2011 elején megjelent a kezdeti NVMe spec – k — közel 100 techcég vett részt a fejlesztésben.
az NVMe specifikáció regiszter interfészt, parancskészletet és funkciók gyűjteményét határozza meg a PCIe-alapú SSD-k számára, nagy teljesítmény és interoperabilitás céljaival az NVM alrendszerek széles skáláján. Az NVMe specifikáció nem írja elő a végső felhasználási modellt, például a szilárdtest-tárolást, a fő memóriát, a gyorsítótár-memóriát vagy a biztonsági mentési memóriát.
az NVMe alternatívát kínál a Small Computer System Interface (SCSI) szabványnak és az ATA szabványnak a gazdarendszer és a perifériás céltároló eszköz közötti adatok összekapcsolására és továbbítására. A SATA SSD-kkel és a SAS SSD-khez használt SCSI parancskészlettel rendelkező ATA parancsokat akkor fejlesztették ki, amikor a merevlemez-meghajtók (HDD-k) és a tape voltak az elsődleges adathordozók. Az NVMe-t gyorsabb adathordozókkal való használatra tervezték.
A fő előnyei NVMe-alapú PCIe Ssd SAS-alapú SATA-alapú Ssd csökken a késleltetés a fogadó szoftver stack, magasabb input/output operations per second (IOPS), valamint a potenciálisan alacsonyabb energiafogyasztás, attól függően, hogy a forma tényező a száma PCIe sáv használata.
az NVMe protokoll támogatja azokat az SSD-ket, amelyek különböző típusú nem felejtő memóriát használnak, beleértve a NAND flash-t és az Intel és a Micron Technology által kifejlesztett 3D XPoint technológiát. NVMe referencia illesztőprogramok állnak rendelkezésre a különböző operációs rendszerek (OSes), beleértve a Windows és a Linux.
az NVMe nem csak a meglévő alkalmazások gyorsabb és hatékonyabb futtatását teszi lehetővé; ez valójában egy kulcs kiváltója új, fejlődő technológiák, valamint az alkalmazások, mint például az internet of things (IoT), a mesterséges intelligencia (AI), valamint a gépi tanulás (ML), amely hasznot az alacsony késleltetésű, magas teljesítmény NVMe-attached storage.
hogyan működik az NVMe
NVMe maps input/output (I / O) parancsok és válaszok a megosztott memóriára egy gazdagépen a PCIe interfészen keresztül. Az NVMe interfész támogatja a párhuzamos I / O-t többmagos processzorokkal, hogy megkönnyítse a nagy áteresztőképességet és enyhítse a központi feldolgozó egység (CPU) szűk keresztmetszeteit.
az NVMe egyszerűbb parancskészletet kínál az I / O kérés feldolgozásához, mint az SCSI és ATA parancskészletek. Az NVMe a CPU-utasítások számának kevesebb mint felét igényli, mint az SCSI parancskészlet a SAS-eszközökkel, az ATA parancskészlet pedig a SATA-meghajtókkal.
NVMe SSD-k vs. SATA SSD-k
A SATA egy kommunikációs protokoll, amelyet a számítógépek számára fejlesztettek ki a HDD tárolórendszerekkel való interakcióhoz. 2000-ben egy csoport nagy tech játékos, SATA felváltotta párhuzamos ATA, majd gyorsan vált a mindenütt jelenlévő tároló rendszer protokoll számítógépek kezdve laptopok szerverek. Az évek során felülvizsgálták a specifikációt, és jelenleg 6 Gbps sebességgel fut, akár 600 MBps hatékony átviteli sebességgel.
bár mechanikus forgótányérokkal és működtető vezérlésű írófejekkel rendelkező merevlemez-technológiára fejlesztették ki, a korai SSD-ket SATA interfészekkel forgalmazták, hogy kihasználják a meglévő SATA ökoszisztémát. Ez egy kényelmes kialakítás volt, és segített felgyorsítani az SSD elfogadását, de ez nem volt-és még mindig nem is az-ideális interfész a NAND flash tárolóeszközökhöz, és egyre inkább rendszer szűk keresztmetszetének tekintették.
vakuhoz tervezve, az NVMe sebessége és alacsony késleltetési ideje a SATA-t a porba hagyja, az NVMe pedig sokkal nagyobb tárolókapacitást tesz lehetővé kisebb formákban, mint például az M. 2. Általában az NVMe teljesítményparaméterek felülmúljáka SATA teljesítményét ötször vagy annál nagyobb mértékben.
A SATA alaposabb lehet, hosszabb előzményekkel és alacsonyabb végrehajtási költségekkel, mint az NVMe, de egyértelműen a merevlemez-technológia, amelyet modernebb adathordozókra telepítettek.
NVMe SSD vs. SAS SSD
NVMe támogatja 64.000 parancsokat egyetlen üzenet sorban, és legfeljebb 65.535 I / O sorok. Ezzel szemben a sas eszköz sormélysége általában legfeljebb 256 parancsot támogat, a SATA meghajtó pedig legfeljebb 32 parancsot támogat egy sorban.
azonban az NVMe-alapú PCIe SSD-k jelenleg drágábbak, mint az azonos kapacitású SAS – és SATA-alapú SSD-k; bár ez a delta szűkül. Emellett a csúcskategóriás vállalati NVMe SSD-k több energiát fogyaszthatnak, mint a SAS vagy a SATA SSD-k. Az SCSI Kereskedelmi Szövetség szerint az érettebb SAS SSD-k további előnyöket kínálnak az NVMe PCIe SSD-kkel szemben, mint például a nagyobb skálázhatóság, a forró dugaszolhatóság és az időigényes feladatátvételi képességek. Az NVMe PCIe SSD-k olyan teljesítményt is nyújthatnak, amelyet sok alkalmazás nem igényel.
az NVM Express
története és fejlődése A nem felejtő memóriavezérlő vezérlő interfész (NVMHCI) Munkacsoport 2009-ben kezdte meg az NVMe specifikáció kidolgozását, és 2011.március 1-én tette közzé az 1.0 verziót. Az 1.0 a specifikáció tartalmazza a sorban állást, az NVM parancskészletet, az adminisztrációs parancskészletet és a biztonsági funkciókat.
az Nvmhci Munkacsoport, közismert nevén az NVM Express Munkacsoport, kiadott egy frissítést az NVMe specifikáció október. 11, 2012. Az NVMe 1.1 több PCIe porttal rendelkező SSD-k támogatását adta a multipath I/O és a névtér megosztásának engedélyezéséhez. Más, új képességek tartalmazza autonóm állapot átmenetek során várakozási idő csökkentése, energia van szüksége, vagy fenntartás, amely lehetővé teszi két vagy több számítógép koordinálására való közös névtér, hogy javítsa fault tolerance.
az NVM Express munkacsoport 2013 májusában tartotta első Plugfest-jét, hogy a vállalatok tesztelhessék termékeinek az NVMe specifikációnak való megfelelését, valamint ellenőrizhessék az interoperabilitást más NVMe termékekkel.
az NVM Express munkacsoport az NVM Express szervezet neve alatt 2014 márciusában alakult. Alapító tagok az időben is, a Cisco Systems, Dell, EMC, Western Digital HGST leányvállalata, Intel, LSI, a Micron Technology, NetApp, Oracle, PMC-Sierra, a Samsung Electronics, a SanDisk Seagate Technology.
az NVM Express szervezet később egyszerűen NVM Express Inc. néven vált ismertté. A nonprofit szervezet több mint 100 technológiai céggel rendelkezik tagként.
az NVMe 1.2 specifikáció novemberben jelent meg. 3, 2014, olyan fejlesztésekkel, mint az élő firmware-frissítések támogatása, az energiagazdálkodás javítása, valamint a végpontok közötti Adatvédelem lehetősége.
Nov. 17, 2015, az NVM Express szervezet ratifikálta az NVM Express Management Interface (NVMe-MI) 1.0 verzióját, hogy architektúrát és parancskészletet biztosítson a nem felejtő memória alrendszer sávon kívüli kezelésére. Az NVMe-MI lehetővé teszi a vezérlő számára, hogy olyan feladatokat hajtson végre, mint az SSD eszköz és a képesség felfedezése, az egészség és a hőmérséklet ellenőrzése, valamint a nem zavaró firmware-frissítések. Az NVMe-MI nélkül az informatikai vezetők általában szabadalmaztatott, gyártóspecifikus kezelőfelületekre támaszkodtak a PCIe SSD-k adminisztrációjának lehetővé tétele érdekében.
NVMe 1.3 feature enhancements
NVM Express megjelent NVMe 1.2017.június 3. Kiemeli center on sanitize operations, egy új keret néven irányelvek és virtualizációs fejlesztések.
egy fertőtlenítési művelet során az NVMe alrendszer összes felhasználói adatait módosítják úgy, hogy a helyreállítás nem lehetséges “bármilyen gyorsítótárból, nem felejtő adathordozóból vagy vezérlő memóriapufferből”, egy NVM Express referencialap szerint. A fertőtlenítési műveletek akkor ajánlottak, ha az SSD-t visszavonják vagy újra felhasználják egy új Használati esethez. Sanitize módok közé tartozik az alacsony szintű blokk törlés NAND media, crypto-erase változtatni a Média titkosítási kulcs felülírni.
az irányelvek keretrendszere meghatározza a gazdagép és az NVMe alrendszer közötti adatcsere mechanizmusát. Ez lehetővé teszi a per-I/O parancs címkézését, valamint lehetővé teszi az informatikai rendszergazdák számára a jelentendő attribútumok és beállítások konfigurálását.
az irányelvek első használata a Streams nevű szolgáltatás, amely az adatelhelyezés optimalizálására szolgál a NAND SSD-k tartósságának és teljesítményének növelése érdekében. Hagyományosan, mielőtt új adatokat lehet írni az SSD-re, először nagy adatblokkokat kell törölni.
a Stream funkció lehetővé teszi a gazdagép számára, hogy” adatfolyam-azonosítót ” használjon a társított adatok csoportjába tartozó tároló adott logikai blokkjainak jelzésére. Ez lehetővé teszi, hogy egy olvasási vagy írási címkézni kapcsolódó tárolt adatok más helyeken.
A virtualizációs fejlesztések meghatározzák, hogy az NVMe flash hogyan használható megosztott tárolási környezetben, ahol mind fizikai, mind virtuális vezérlők vannak jelen, beleértve az elsődleges tárolóvezérlőket és a másodlagos tárolóvezérlőket. Az NVM Express szerint a cél az, hogy a fejlesztőcsapatok egy adott SSD-t szenteljenek egy adott virtuális gépnek (VM).
NVMe 1.4 feature enhancements
NVMe 1.4 2019 júliusában került bevezetésre. Ez a legújabb verzió számos fejlesztést és új funkciót tartalmaz, többek között:
- A Rebuild Assist javítja az adatok helyreállítását és javítja az adatok áttelepítési műveleteit.
- a perzisztens Eseménynapló részletes meghajtó előzményeket tart fenn, amelyek hibakeresésre és a problémák okainak meghatározására használhatók.
- NVM készletek és IO determinizmus javítja a teljesítmény és a szolgáltatás minőségét (QoS).
- aszimmetrikus névtér hozzáférés (ANA)növeli multipathing a magas rendelkezésre állás.
- a Host Memory Buffer (HMB) csökkenti a késleltetést és segíti az SSD kialakítását.
- Tartós Memória Régió (PMR) lehetővé teszi a fogadó rendszerek írni-olvasni közvetlenül a dinamikus véletlen elérésű (DRAM), hogy az Ssd-k közé együtt a core flash, volt, amely elsősorban a cache
Az új funkciókat igényel flash meghajtó a gyártók, hogy frissítse a termékek beépítése a fejlesztések. Az OSes-hez új illesztőprogramokra is szükség lesz.
NVMe form factors and standards
a NAND flash teljesítménypotenciáljának vállalati környezetben való jobb kihasználásához szükséges tárolófelület és protokoll volt a fő lendület az NVMe spec fejlesztése mögött. De reimagining a connection standard megnyitotta az ajtót, hogy több különböző típusú interfész megvalósítások, hogy maradhat határain belül az új spec, miközben a különböző végrehajtási lehetőségek.
rövid sorrendben számos, az NVMe specifikációinak megfelelő flash formatényező jelent meg, beleértve a PCIe busz hagyományos típusú bővítőkártyáit (AIC), valamint az M. 2 és U. 2 nevű SSD-k új formatényezőit.
- AIC. Az AIC form factor lehetővé teszi a gyártók számára, hogy saját kártyákat hozzanak létre, amelyek a PCIe buszba nyílnak, anélkül, hogy aggódnának a tárolóedény-tervek vagy hasonló korlátozások miatt. A kártyákat gyakran speciális használati esetekre tervezték, és további processzorokat és más chipeket is tartalmazhatnak a szilárdtest-Tárolás teljesítményének növelése érdekében.
- M. 2. Az M.2 form factor – t fejlesztettek ki, hogy kihasználja a NAND flash kompakt méretét és alacsony hőleadását. Mint ilyen, az M. 2 eszközök nem a hagyományos meghajtó rekeszekbe illeszkednek, hanem sokkal kisebb helyeken kerülnek telepítésre. Gyakran úgy írják le, mint egy gumibot mérete, az M. 2 SSD-k 22 mm szélesek, általában 80 mm hosszúak, bár egyes termékek hosszabbak vagy rövidebbek lehetnek.
- U. 2. Ellentétben az M. 2 form factor, U. 2 SSD tervezték, hogy illeszkedjen a meglévő tároló öblök eredetileg szánt szabványos SATA vagy SAS eszközök. U.Az 2 SSD-k nagyon hasonlítanak a régebbi médiákhoz, mivel általában a 2.5 hüvelykes vagy 3.5 hüvelykes házakat használják, amelyek a HDD-k számára ismerős házak. Az ötlet természetesen az volt, hogy a lehető legegyszerűbben valósítsuk meg az NVMe technológiát a lehető legkevesebb újratervezéssel.
egy másik, kevésbé széles körben alkalmazott NVMe form factor Az enterprise and data center SSD form factor vagy EDSFF. Olyan kulcsfontosságú tárolóipari szereplők támogatják, mint az Intel, a Dell EMC, a Hewlett Packard Enterprise (HPE), a Lenovo, a Samsung és mások. Az EDSFF célja, hogy nagyobb teljesítményt és kapacitást nyújtson a vállalati szintű tárolórendszereknek. Talán az EDSFF flash legismertebb példája az Intel E1.L (hosszú) és E1.S (rövid) flash eszközök, amelyeket az eredetileg “vonalzó” form factornak nevezett formában biztosítanak.
NVMe over Fabrics
NVM Express Inc. megjelent az 1.0 változata az NVMe over Fabrics (NVMe-oF) specifikáció június 5, 2016. Az NVMe-oF célja az NVMe nagyteljesítményű és alacsony késleltetésű előnyeinek kiterjesztése olyan hálózati szövetekre, amelyek szervereket és tárolórendszereket, például a Fibre Channel (FC), az Ethernet és az InfiniBand hálózatokat kötnek össze.
A Szövetszállítások közé tartozik az NVM-távoli közvetlen memória-hozzáférés (RDMA) és az NVMe-az FC-hez leképezett NVM-használata. Az NVM Express Inc. technikai alcsoportja. dolgozott NVMe – a az RDMA, és a T11 Bizottság a Nemzetközi Bizottság az információs technológiai szabványok (INCITS) felelős a fejlesztés NVMe felett FC (FC-NVMe).
a specifikáció NVMe-je nagyjából megegyezik az NVMe specifikációval. Az NVMe és az NVMe közötti egyik fő különbség a parancsok és válaszok továbbításának és fogadásának módszere. NVMe célja a helyi használatra, térképek parancsok és válaszok a számítógép megosztott memória keresztül PCIe. Az NVMe ezzel szemben egy üzenet alapú rendszert alkalmaz a gazdaszámítógép és a céltároló közötti kommunikációra.
a megadott tervezési cél az volt, hogy adjunk nem több, mint 10 mikrosekundum késleltetési közötti kommunikáció NVMe host számítógép és a hálózathoz csatlakoztatott NVMe tároló eszköz, összehasonlítva a latency társított NVMe tároló eszköz segítségével egy helyi számítógép PCIe busz.