Vad är NVMe över TCP (NVMe/TCP)

Lär dig vad som är NVMe över TCP och hur NVMe över TCP fungerar på ett enkelt språk.

NVMe över TCP förklaras

Den ökande efterfrågan på cloud computing kräver ett effektivt och prisvärt lagringssystem. Även om konventionella hårddiskar (HDD) är smutsbilliga, är dessa inte kapabla att vara värd för prestandadriven programvara eller beräkningsprocesser i molnet.

Därför, för att ta itu med detta problem i masslagring för datorenheter, NVM Express Inc. publicerade arkitekturen för NVMe SSD, en blixtsnabb intern lagringsenhet för datorer över PCIe eller Peripheral Component Interconnect Express-buss.

PCIe är dock endast för direkt datakommunikation mellan RAM och NVMe SSD. Hur skulle man implementera samma sak för en molnmiljö där värd- och klientdatorer finns på avlägsna platser? Dessa enheter kan endast kommunicera via internet eller intranät.

För att möta denna utmaning har NVMe over Fabric eller NVMe-oF-protokollet utformats för att möjliggöra utveckling av NVMe-nätverkslagringslösningar. Den använder NVMe-gränssnittet för logisk enhetsspecifikation för att överföra data mellan värddatorn eller servern och ett lagringsområdesnätverk (SAN) eller direktansluten lagring (DAS).

Men implementeringen av NVMe-oF är mycket dyr även för stora företag. Dessutom, eftersom NVMe-oF främst kräver fiberoptisk kabel som transportmedium för data från punkt A till punkt B, är det inte bara möjligt att distribuera NVMe-oF för offentliga moln.

För att lösa detta problem har NVM Express Inc. har kommit med NVMe över TCP eller NVMe/TCP-protokollet.

Vad är NVMe över TCP (NVMe/TCP)?

NVMe/TCP är en utökad utgåva av den NVMe-baserade lagrings-I/O-kommandospecifikationen. Det är den avancerade versionen av NVMe-oF och definierar funktionerna i NVMe-dataöverföringsprotokollet till det meddelandebaserade kommunikationsprotokollet, TCP.

Det finns en NVMe/TCP-transportspecifikation som beskriver följande:

  • Hur man mappar NVMe-köer enligt en standarduppsättning regler
  • Hur man skapar kapslar för NVMe över tyg
  • Hur man levererar NVMe-oF-kapslar till transportsystem för fiber, InfiniBand och icke-fibernätverk med hjälp av det välbekanta Transport Control Protocol eller TCP

I ett nötskal, kombinationen av NVMe och TCP, NVMe/TCP överför data och kommandon snabbare och på ett felfritt sätt mellan NVMe-oF-värdar och NVMe-oF-styrenheter.

Sådana enheter kan anslutas över Internet och intranät med hjälp av ett Ethernet-baserat TCP/IP-nätverk. Anslutningsmediet kan vara optiska fiberkablar eller konventionella Cat 5- och Cat 6-kablar

Varför NVMe över TCP?

Det ursprungliga NVMe-transportsystemet var avsett för SSD: er som går direkt in i PC-systemet, främst på moderkortet. Transportprotokollet har initialt optimerats för NVM PCIe SSD: er som ansluter till servrarna eller arbetsstationerna internt.

Senare för blixtrande snabba och massiva datalagringskrav i molnet, NVMe-transportprotokollet hotwired med transportbindning specifikationer som molndatacenter oftast använder, som Fibre Channel, RDMA over Converged Ethernet (RoCE), Internet Wide Area RDMA Protocol (iWARP), och Infiniband.

Även om ovanstående NVMe-modifiering fungerar bra, är den inte lämplig för offentliga moln eftersom specialiserad hårdvaruutrustning behövs från klientänden. Därför införlivades TCP-transportbindningssystem som är lättillgängligt globalt och tillförlitligt över långdistansnätverk.

Kärnkomponenterna i NVMe över TCP

En NVMe/TCP-transportspecifikation för NVMe-oF inkluderar följande nätverkskomponenter:

  • Fjärrdataåtkomstsystemet som använder NVMe-protokollet följer Open Systems Interconnection (OSI)-modellen för datornätverkssystem.
  • NVMe/TCP använder Ethernet-nätverkstekniken som fungerar i OSI: s fysiska och OSI-datalänkslager.
  • För kommunikationsprotokoll och policyer för utbyte av paketdata förlitar sig NVMe/TCP på TCP/IP-protokoll.
  • NVMe-kommandouppsättningar för att konvertera alla användarutfärdade kommandon och applikations-I/O till en specifik NVMe-kommandotabell som admin, I/O, tyg, etc.
  • Fjärröverföringen av NVMe-kommandon, i ett meddelandebaserat tyg, sker med hjälp av kapslar. Dessa kapslar kan vara svars- eller kommandokapslar. NVMe-kommandokapslar representerar en enhet för NVMe-datautbyte.
  • Ett undersystem och en värdstyrenhet kommunicerar sinsemellan genom att utbyta NVMe/TCP-protokolldataenheter eller NVMe/TCP PDU: er.
  • Det finns en anslutningsprocess i tre steg mellan styrenhetens undersystem och värden. Dessa steg eller faser är NVMe-oF Connect, NVMe/TCP Connect och Fabric Connect.
  • I ett NVMe/TCP-transportbindningssystem skapas dynamiska I/O-kontroller automatiskt och tilldelas värddatorn när ett undersystem ansluter framgångsrikt till värd-NVMe-OF.

Fördelar med NVMe över TCP

  • TCP är det mest använda dataöverföringsprotokollet för Internet eller Intranät och är tillgängligt med alla datacenter och klienter med molnresurser.
  • Datacentren och deras klienter behöver inte ersätta befintlig nätverkshårdvara som routrar, switchar och nätverkskort.
  • TCP kan använda både fiberkabel och Cat 5 eller Cat 6 kabel och därför är underhållet ganska enkelt.
  • TCP-transportbindning för NVMe-oF erbjuder hög prestanda och låg latens. Därför är den perfekt lämpad för uppdragskritiska och CPU-intensiva processer på värddatorn och lätt åtkomlig av flera fjärrklienter utan några läs-/skrivkonflikter.
  • TCP erbjuder dynamisk routing. Jämfört med fjärrstyrd direktminnesåtkomst (RDMA) är TCP således den bästa presterande i storskaliga datacenter- och molnoperationer från längre avstånd.
  • TCP har en större utvecklingsgemenskap än någon annan NVMe-transportspecifikation.

Utmaningar med NVMe över TCP

  • När du använder en TCP-stack måste du tillåta CPU: n att lösa de flesta TCP-operationer som att beräkna kontrollsummor. Således, i en större skala, när flera klientarbetsstationer kommer att begära att skriva och läsa data från nätverksanslutna lagringsenheter via värddatorn, kommer belastningen på värdprocessorn att öka.
  • Hyperkonvergerad infrastruktur måste vara enkel. Men när du använder NVMe/TCP gör du det komplext.
  • NVMe över TCP har också några säkerhetsbrister som hackare kan använda för att infiltrera din molnverksamhet, stjäla data och göra konfidentiell data tillgänglig på mörkt nät om du inte använder en strikt cybersäkerhet och antiviruslösning.

NVMe över TCP: Slutord

TCP är det ledande protokollet för offentliga eller privata nätverksanslutna datacenter. Därför är NVMe/TCP förstahandsvalet för att tillhandahålla prisvärda lagringslösningar över internet, intranät och molninfrastruktur.

Detta protokoll är också skalbart och tillförlitligt över långdistansnätverksanslutningar. Eftersom molnlagringens läs/skrivfördröjning motsvarar de flesta fiberkanalprotokoll är NVMe över TCP den föredragna transportlösningen för molnlagring.

Nästa, 3 alternativ till molnlagring