Spring til indhold

ISCSI

Fra Wikipedia, den frie encyklopædi

Internet SCSI (iSCSI) er en officiel standard, der blev ratificeret den 11. februar 2003 af Internet Engineering Task Force, som muliggør anvendelse af SCSI protokollen over IP datanet. iSCSI er en transportlags protokol i SCSI-3 specifikations frameworket. Andre protokoller i transportlag inkluderer SCSI Parallel Interface og Fibre Channel.

Accepteringen af iSCSI i produktionsmiljøer har eskaleret nu, da Gigabit Ethernet er almindelig. Det at bygge iSCSI-baseret Storage Area Networks (SAN) er blevet mindre dyrt og er et værdigt alternativ til at skabe Fibre Channel-baseret SANs.

Funktionalitet

[redigér | rediger kildetekst]

iSCSI-protokollen anvender almindelig TCP til sine dataoverførsler.

Kritikere af iSCSI forventer lavere ydelse end Fibre Channel pga. af protokol overheaden som TCP tilføjer til kommunikationen mellem klient og lager. Men nye teknikker som f.eks. TCP Offload Engine (TOE) hjælper til at reducere dette overhead. Tests har vist udmærket ydelse af iSCSI SAN's, hvad enten TOE's eller almindelige Gigabit Ethernet NICs blev anvendt. Faktisk kan højydelsesservere med almindelige netkort men optimerede kortdrivere yde mere end TOE kort, fordi færre interrupts og DMA overførsler er nødvendige.

I datalager sammenhænge, muliggør iSCSI en server eller maskine til at anvende en iSCSI initiator til at forbinde til fjerntliggende target, som f.eks. diske og båndstationer på et IP datanet til block level I/O. Set fra applikationsprogammerne ser det ud som om at lagerenhederne sad lokalt. Mere komplekse miljøer består af mange værter og/eller lagerenheder kaldes Storage Area Networks (SAN).

iSCSI enheder skal ikke forveksles med Network-Attached Storage (NAS) enheder som også indeholder server software til at håndtere samtidig tilgang til f.eks. samme filer fra flere værter. SCSI enheder er ikke designet til at kunne tillade samtidig tilgang til de samme lagerblokke fra flere værter. Hvis dette forsøges uden de nødvendige check fører det til grim datakorrumpering og hvor læsning kan gå i deadlock. Der findes software der netop er designet til dette og det er klyngesoftware løser disse problemer. Se f.eks. OpenGFS eller RHEL GFS.

Industri support

[redigér | rediger kildetekst]

OS Support oversigt

[redigér | rediger kildetekst]
OS Første release dato Version
AIX 10/2002 AIX 5.2
Windows 06/2003 2000, XP Pro, 2003
NetWare 08/2003 NetWare 6.5
HP-UX 10/2003 HP 11i v1, HP 11i v2
Solaris 02/2005 Solaris 10
Linux 06/2005 2.6.12

Initiator Implementeringer

[redigér | rediger kildetekst]
Software Initiators
[redigér | rediger kildetekst]
iSCSI Host Bus Adapters
[redigér | rediger kildetekst]

iSCSI host bus adapters (HBAs) implementerer selv iSCSI protokollen på adapteren. De viser sig til OSet som en SCSI HBA. Nogle af disse iSCSI HBAs har TOE NIC og nogle har også offload iSCSI processering. Nogle adapterer anvender NVRAM til boot-konfigurering af iSCSI targets.

Følgende firmaer har udviklet iSCSI HBAs:

Det meste af industrien har fokuseret på at lave iSCSI disk targets, selvom iSCSI båndstationer og medieskiftere også er populære. Indtil videre, har de fysiske enheder ikke indlejrede iSCSI grænseflader. I stedet får disse enheder SCSI Parallel Interface eller Fibre Channel grænseflader bridged ved anvendelse af iSCSI target software, eksterne bridges eller controller i enhedskassen.

Alternativt kan diske og tape targets blive virtueliseret. I stedet for at repræsentere den fysiske enhed, bliver er virtuel enhed præsenteret. Den underliggende implementering kan afvige drastisk fra den præsenterede target som bliver gjort med et Virtual Tape Library (VTL) løsninger. VTLs anvender disklager til at gemme data der bliver send til virtuelle bånd. Som med de fysiske enheder bliver de virtuelle targets præsenteret ved anvendelse af iSCSI target software, eksterne bridges eller controller i enhedskassen.

  • RFC 3720 – Internet Small Computer Systems Interface (iSCSI).
  • RFC 3783 – Small Computer Systems Interface (SCSI) Command Ordering Considerations with iSCSI.