iSCSI-tillägg för RDMA

iSCSI Extensions for RDMA ( iSER ) är ett datornätverksprotokoll som utökar iSCSI -protokollet (Internet Small Computer System Interface) till att använda RDMA (Remote Direct Memory Access) . RDMA tillhandahålls av antingen Transmission Control Protocol (TCP) med RDMA-tjänster ( iWARP ) som använder befintlig Ethernet-installation och därför inget behov av stora hårdvaruinvesteringar, RoCE ( RDMA over Converged Ethernet ) som inte behöver TCP-lagret och därför ger lägre latens eller InfiniBand . Den tillåter att data överförs direkt till och ut från SCSI- datorminnesbuffertar (som ansluter datorer till lagringsenheter) utan mellanliggande datakopior och utan mycket CPU- ingrepp.

Historia

Ett RDMA-konsortium tillkännagavs den 31 maj 2002, med målet om produktimplementering till 2003. Konsortiet släppte sitt förslag i juli 2003. Protokollspecifikationerna publicerades som utkast i september 2004 i Internet Engineering Task Force och utfärdades som RFC:er i oktober 2007. OpenIB Alliance bytte namn 2007 till OpenFabrics Alliance och släppte sedan ett mjukvarupaket med öppen källkod .

Beskrivning

Motivationen för iSER är att använda RDMA för att undvika onödig datakopiering på målet och initiatorn. Datamover Architecture (DA) definierar en abstrakt modell där rörelsen av data mellan iSCSI-ändnoder är logiskt separerad från resten av iSCSI-protokollet; iSER är ett Datamover-protokoll. Gränssnittet mellan iSCSI och ett Datamover-protokoll, iSER i detta fall, kallas Datamover Interface (DI).

Huvudskillnaden mellan standard iSCSI och iSCSI över iSER är exekveringen av SCSI läs/skrivkommandon. Med iSER driver målet all dataöverföring (med undantag för oönskad iSCSI-data) genom att utfärda RDMA-skriv-/läsoperationer. När iSCSI-lagret utfärdar ett iSCSI-kommando PDU, anropar det Send_Control-primitiven, som är en del av DI. Send_Control-primitiven sänder STag med PDU:n. iSER-lagret på målsidan meddelar målet att PDU:n togs emot med Control_Notify-primitiven (som är en del av DI). Målet anropar Put_Data- eller Get_Data-primitiven (som är en del av DI) för att utföra en RDMA-skriv-/läsoperation. Sedan anropar målet Send_Control-primitiven för att skicka ett svar till initiatorn. Ett exempel visas i figurerna (tiden går från topp till botten).

LÄS-kommandot körs med iSER
WRITE-kommandot körs med iSER

Alla PDU:er av iSCSI-kontrolltyp innehåller en iSER-header, som gör det möjligt för initiatorn att annonsera de STags som genererades under buffertregistrering. Målet kommer att använda STags senare för RDMA-läs-/skrivoperationer.

Se även

Vidare läsning

externa länkar