Hva er NVMe over TCP (NVMe/TCP)

Lær hva som er NVMe over TCP og hvordan fungerer NVMe over TCP på et enkelt språk.

NVMe over TCP forklart

Den økende etterspørselen etter cloud computing trenger et effektivt og rimelig lagringssystem. Selv om konvensjonelle harddisker (HDDer) er skittbillige, er disse ikke i stand til å være vert for ytelsesdrevet programvare eller beregningsprosesser i skyen.

Derfor, for å løse dette problemet i masselagring for datamaskinenheter, NVM Express Inc. publiserte arkitekturen for NVMe SSD, en lynrask intern lagringsenhet for datamaskiner over PCIe eller Peripheral Component Interconnect Express-buss.

Imidlertid er PCIe kun for direkte datakommunikasjon mellom RAM og NVMe SSD. Hvordan vil man implementere det samme for et cloud computing-miljø der verts- og klientdatamaskiner er plassert på avsidesliggende steder? Disse enhetene kan bare kommunisere via internett eller intranett.

For å møte denne utfordringen ble NVMe over Fabric eller NVMe-oF-protokollen designet for å tillate utvikling av NVMe-nettverkslagringsløsninger. Den bruker NVMe logisk enhetsspesifikasjonsgrensesnitt for å overføre data mellom vertsdatamaskinen eller serveren og et lagringsområdenettverk (SAN) eller direkte tilkoblet lagring (DAS).

Men NVMe-oF-distribusjon er svært kostbart selv for store bedrifter. Siden NVMe-oF hovedsakelig krever fiberoptisk kabel som transportmedium for data fra punkt A til punkt B, er det ikke bare mulig å distribuere NVMe-oF for offentlige skyer.

For å løse dette problemet har NVM Express Inc. har kommet opp med NVMe over TCP eller NVMe/TCP-protokollen.

Hva er NVMe over TCP (NVMe/TCP)?

NVMe/TCP er en utvidet utgave av den NVMe-baserte lagrings-I/O-kommandospesifikasjonen. Det er den avanserte versjonen av NVMe-oF og definerer funksjonene til NVMe-dataoverføringsprotokollen til den meldingsbaserte kommunikasjonsprotokollen, TCP.

Det er en NVMe/TCP-transportspesifikasjon som beskriver følgende:

  • Hvordan kartlegge NVMe-køer etter et standard sett med regler
  • Hvordan lage kapsler for NVMe over stoff
  • Hvordan levere NVMe-oF-kapsler til transportsystemer for fiber, InfiniBand og ikke-fibernettverk ved hjelp av det kjente Transport Control Protocol eller TCP

I et nøtteskall, kombinasjonen av NVMe og TCP, NVMe/TCP overfører data og kommandoer raskere og på en feilfri måte mellom NVMe-oF-verter og NVMe-oF-kontrollerenheter.

Slike enheter kan kobles til over Internett og intranett ved hjelp av et Ethernet-basert TCP/IP-nettverk. Tilkoblingsmediet kan være optiske fiberkabler eller konvensjonelle Cat 5- og Cat 6-kabler

Hvorfor NVMe over TCP?

Det originale NVMe-transportsystemet var beregnet på SSD-er som går direkte inn i PC-systemet, hovedsakelig på hovedkortet. Transportprotokollen er opprinnelig optimalisert for NVM PCIe SSD-er som kobles til serverne eller arbeidsstasjonene internt.

Senere for lynraske og massive datalagringskrav på skyen, koblet NVMe transportprotokollen med transportbinding. spesifikasjoner som skydatasentre for det meste bruker, som Fibre Channel, RDMA over Converged Ethernet (RoCE), Internet Wide Area RDMA Protocol (iWARP), og Infiniband.

Selv om ovennevnte NVMe-modifikasjon fungerer helt fint, er den ikke egnet for offentlige skyer siden spesialisert maskinvareutstyr er nødvendig fra klientenden. Derfor ble TCP-transportbindingssystem innlemmet som er lett tilgjengelig globalt og pålitelig over langdistansenettverk.

Kjernekomponentene til NVMe over TCP

En NVMe/TCP-transportspesifikasjon for NVMe-oF inkluderer følgende nettverkskomponenter:

  • Det eksterne datatilgangssystemet som bruker NVMe-protokollen følger Open Systems Interconnection (OSI)-modellen for datanettverkssystemer.
  • NVMe/TCP bruker Ethernet-nettverksteknologien som opererer i det fysiske OSI-laget og OSI-datalinklaget.
  • For kommunikasjonsprotokoller og retningslinjer for utveksling av pakkedata er NVMe/TCP avhengig av TCP/IP-protokollen.
  • NVMe-kommandosett for å konvertere alle brukerutstedte kommandoer og applikasjons-I/O til en spesifikk NVMe-kommandotabell som admin, I/O, stoff, etc.
  • Fjernoverføringen av NVMe-kommandoer, i et meldingsbasert stoff, skjer ved hjelp av kapsler. Disse kapslene kan være respons- eller kommandokapsler. NVMe-kommandokapsler representerer en enhet for NVMe-datautveksling.
  • Et undersystem og en vertskontroller kommuniserer seg imellom ved å utveksle NVMe/TCP Protocol Data Units eller NVMe/TCP PDUer.
  • Det er en tre-trinns koblingsprosess mellom kontrollerens undersystem og verten. Disse trinnene eller fasene er NVMe-oF Connect, NVMe/TCP Connect og Fabric Connect.
  • I et NVMe/TCP-transportbindingssystem opprettes dynamiske I/O-kontrollere automatisk og tildeles vertsdatamaskinen når et undersystem kobles til verts-NVMe-OF.

Fordeler med NVMe over TCP

  • TCP er den mest brukte Internett- eller intranett-dataoverføringsprotokollen og er tilgjengelig med alle datasentre og klientene til cloud computing-ressurser.
  • Datasentrene og deres klienter trenger ikke å erstatte eksisterende nettverksmaskinvare som rutere, svitsjer og NIC.
  • TCP kan bruke både fiberkabel og Cat 5- eller Cat 6-kabel og derfor er vedlikehold ganske enkelt.
  • TCP-transportbinding for NVMe-oF tilbyr høy ytelse og lav ventetid. Dermed er den perfekt egnet for oppdragskritiske og CPU-intensive prosesser på vertsdatamaskinen og lett tilgjengelig for flere eksterne klienter uten lese-/skrivekonflikter.
  • TCP tilbyr dynamisk ruting. Sammenlignet med ekstern direkte minnetilgang (RDMA), er TCP derfor den høyeste ytelsen i storskala datasenter- og skyoperasjoner fra lengre avstander.
  • TCP har et større utviklingsfellesskap enn noen andre NVMe-transportspesifikasjoner.

Utfordringer til NVMe over TCP

  • Når du bruker en TCP-stabel, må du la CPU-en løse de fleste TCP-operasjoner som å beregne sjekksummer. Således, i større skala, når flere klientarbeidsstasjoner vil be om å skrive og lese data fra nettverkslagringsenheter gjennom verts-PCen, vil belastningen på verts-CPU øke.
  • Hyperkonvergert infrastruktur må være enkel. Men når du bruker NVMe/TCP, gjør du det komplisert.
  • NVMe over TCP har også noen sikkerhetssvakheter som hackere kan bruke for å infiltrere skyoperasjonene dine, stjele dataene og gjøre konfidensielle data tilgjengelig på mørkt nett med mindre du implementerer en streng cybersikkerhet og antivirusløsning.

NVMe over TCP: Siste ord

TCP er den ledende protokollen på tvers av offentlige eller private nettverksbaserte datasentre. Derfor er NVMe/TCP førstevalget for å tilby rimelige lagringsløsninger over internett, intranett og skyinfrastruktur.

Denne protokollen er også skalerbar og pålitelig over langdistanse nettverkstilkoblinger. Siden lese-/skriveforsinkelsen for nettskylagring tilsvarer de fleste fiberkanalprotokoller, er NVMe over TCP den foretrukne transportløsningen for skylagring.

Neste, 3 alternativer til skylagring