# ISCSI

iSCSI :
| Familie: | Internetprotokollfamilie |
| Einsatzgebiet: | Nutzung des SCSI-Protokolls über TCP |
| Ports: | 3260/TCP 3260/UDP |
| iSCSI im TCP/IP-Protokollstapel: Anwendung iSCSI Transport TCP Internet IP (IPv4, IPv6) Netzzugang Ethernet Token Bus Token Ring FDDI … ||
| Standards: | RFC 7143 |
iSCSI (internet Small Computer System Interface) [ˈaɪskʌzi] ist ein Verfahren, welches die Nutzung des SCSI-Protokolls über TCP ermöglicht. Wie beim gewöhnlichen SCSI gibt es einen Controller (Initiator), der die Kommunikation steuert. Die Speichergeräte (Festplatten, Bandlaufwerke, optische Laufwerke etc.) heißen Target.

## Eigenschaften und Funktionen

Die Spezifikation des iSCSI-Standard wurde durch die Storage Networking Industry Association erstellt und im RFC 3720 von der Internet Engineering Task Force festgehalten. Erweiterungen und Aktualisierungen wurden zuletzt in RFC 7143 zusammengefasst.
iSCSI spezifiziert die Übertragung und den Betrieb direkter Speicherprotokolle nativ über TCP. Bei diesem Verfahren werden SCSI-Daten in TCP/IP-Pakete verpackt und über IP-Netze transportiert (Ports 860, 3260). Beim Multipath iSCSI Routing werden die SCSI-Befehle zunächst zu einem SCSI-Router geleitet, der auf Basis vorhandener Mapping-Tabellen und Parameter wie Netzwerkauslastung und -kosten die bevorzugte Adresse des entsprechenden Zielsystems (Target) ermittelt und für die Kommunikation mit der SCSI-Datenquelle auswählt. Nach dieser Auswahl werden die Pakete in TCP/IP verpackt und zum Netzwerkadapter weitergeleitet, der die Pakete dann über das Netzwerk verschickt.
iSCSI wird eingesetzt, um über eine virtuelle Punkt-zu-Punkt-Verbindung den Zugriff auf das Speichernetz zu ermöglichen, ohne dass eigene Speichergeräte aufgestellt werden müssen. Vorhandene Netzwerkkomponenten (Switch) können genutzt werden, da keine spezielle neue Hardware für die Knotenverbindungen nötig ist, wie es z. B. bei Fibre Channel (FC) der Fall ist. Der Zugriff auf die Festplatten erfolgt blockbasiert, ist also auch für Datenbanken geeignet. Der Zugriff über iSCSI ist darüber hinaus transparent, erscheint auf Anwendungsebene also als Zugriff auf eine lokale Festplatte.

### Vor- und Nachteile gegenüber Fibre Channel

Zur Implementierung von iSCSI wird praktisch ausschließlich Ethernet eingesetzt. Gleichzeitig Vor- und Nachteil dieser Vorgehensweise ist die Kapselung von Datenpaketen in Ethernet und TCP/IP. Vorteil der Ethernetbasis ist, dass auf schon verbreitete Netzwerkstandards zurückgegriffen wird und im Storage-Netzwerk gleiche Technik und Komponenten (Verkabelung, Switches usw.) zum Einsatz kommen wie im restlichen Netzwerk. Ein weiterer Vorteil, der durch TCP/IP entsteht, ist die Routingfähigkeit und Eignung für komplexe, unternehmensweite Netzwerkstrukturen sowie für Weitverkehrsnetze. Nachteilig ist die etwas schlechtere Effizienz, die durch die zusätzlichen Ethernet- und TCP/IP-Protokoll-Erfordernisse (zusätzlicher Overhead) und -Beschränkungen (wie Paketgrößen) zustande kommt und zu einer erhöhten CPU-Belastung sowie zu höheren I/O-Anforderungen (mehr Interrupts pro Datenmenge) und zu höheren Latenzen führen kann. Ethernet bietet auch keine preisgünstige Daisy-Chained Arbitrated Loop (FC-AL)-Topologie. Nachteilig für den Einsatz im Speichernetz können auch ungeeignete Ethernet-Switches sein, die zu wenig Pufferspeicher für den kurzfristigen Ausgleich von zu hohem Datenaufkommen bieten oder durch Store and Forward und ungeeigneten internen Aufbau höhere Latenzen als FC-Switches verursachen. Es sind aber bereits Hardwarelösungen wie z. B. Netzwerkkarten mit TCP/IP Offload Engine, iSCSI offload Engine oder auch die I/OAT verfügbar, die zumindest das TCP/IP-Overhead-Problem der zusätzlichen CPU-Last minimieren. Auch gibt es optimierte Switches, die besonders geringe Latenzzeiten bieten. Die Geschwindigkeit von iSCSI, genau wie die von Fibre Channel (FC), wird von der Geschwindigkeit der verwendeten Netzwerktechnik begrenzt. Bei Verwendung eines Ethernetnetzwerks mit einzelnen 1-GBit/s-Links ist iSCSI somit deutlich langsamer als FC mit seinen heute üblichen 2, 4 oder 8 Gbit/s. Mit 10 Gigabit/s-Ethernet und den damit erreichbaren Durchsätzen bietet dann aber wieder iSCSI eine im Vergleich höhere Geschwindigkeit – bei etwa vergleichbaren Latenzen. Hieraus resultiert der Ansatz von converged Netzwerken.

#### Paketaufbau/Payload

FC-Pakete besitzen ein günstigeres Verhältnis zwischen Overhead und Payload (Nutzdaten) als iSCSI über Standard-Ethernet, allerdings können mit geeigneten Netzwerkkomponenten bei iSCSI auch Jumbo Frames verwendet werden, die ein günstigeres Verhältnis bieten können. Der Payload eines FC-Frames beträgt bis zu 2048 Byte, der Protokoll-Overhead liegt bei lediglich 36 Byte für den Frameheader sowie 24 Byte für den Interframe Gap. Das TCP/IP-basierte iSCSI ohne Jumbo Frames hat folgendes Verhältnis: 1460 Byte Payload bei 78 Byte Overhead; Jumbo Frames mit 9000 Byte MTU: 8960 Byte Payload bei 78 Byte. Die 48 Byte großen iSCSI-Header werden nur jeweils am Anfang einer bis zu 16 MiB großen Transaktion übertragen und fallen praktisch nicht ins Gewicht.

#### Vergleich nach Geschwindigkeiten

| Name | Nominelle Geschwindigkeit (GBit/s) | Datendurchsatz (je Richtung in MByte/s) | Effizienz | Erscheinungsjahr |
| Fibre Channel 1GFC | 01,0625 (8b10b-kodiert) | 0103 | 97,2 % | 1997 |
| iSCSI over Gigabit Ethernet | 01,000 | 0119 | 94,9 % (MTU 1500) | 2004 |
| Fibre Channel 2GFC | 02,125 (8b10b) | 0206 | 97,2 % | 2001 |
| Fibre Channel 4GFC | 04,25 (8b10b) | 0413 | 97,2 % | 2005 |
| Fibre Channel 8GFC | 08,5 (8b10b) | 0826 | 97,2 % | 2008 |
| Fibre Channel 10GFC | 10,52 (64b66b-kodiert) | 1239 | 97,2 % | 2004 |
| Fibre Channel over 10G Ethernet 10GFCoE | 10 | 1206 | 96,5 % (MTU 2500) | 2009 |
| iSCSI over 10G Ethernet | 10 | 1239 | 99,1 % (MTU 9000) | 2004 |
| Fibre Channel 20GFC | 21,04 (64b66b) | 2478 | 97,2 % | 2008 |

### Converged 10 GbE

Converged 10 GbE ist ein Standard für Netzwerke, bei denen 10 GbE und 10 GbFC verschmolzen sind. Zum Converged Ansatz gehört auch das neue FCoE (Fibre Channel over Ethernet). Dabei werden FC Pakete in Ethernet gekapselt und für diese dann ebenfalls die Converged Ethernettopologie genutzt – z. B. sind dann entsprechend aktualisierte Switches (Paketgrößen) transparent für FC- und iSCSI-Storage sowie für das LAN nutzbar.

## Implementierungen

| Betriebssystem | Erscheinungsdatum | Version | Unterstützte Techniken |
| i5/OS | Oktober 2006 | i5/OS V5R4M0 | Target, Multipath |
| VMware ESX | Juni 2006 | ESX 3.0.0, ESX 3.5, ESX 4 | Initiator, Multipath |
| AIX | Oktober 2002 | AIX 5.2, AIX 5.3, AIX 6.1 | Initiator, Target (nur AIX 5.3 und höher), Multipath IBM iSCSI software initiator and software target on AIX 6.1 |
| Windows | Juni 2003 | 2000, XP Pro, 2003, Vista, 2008, 7, 8, 2012, 10, 2016, 2019, 2022, 11 | Initiator, Target (nur im Windows Storage Server, Windows Server 2008 R2, Windows Server 2012), Multipath |
| NetWare | August 2003 | NetWare 5.1, 6.5, & OES | Initiator, Target |
| HP-UX | Oktober 2003 | HP 11i v1, HP 11i v2 | Initiator |
| Solaris | Februar 2005 | Solaris 10, 11 | Initiator, Target, Multipath |
| Linux | Juni 2005 | 2.6.12, ab 2.6.38 LIO | Initiator, Target (FCAL, FCoE), Multipath |
| NetBSD | Februar 2006 | 4.0, 5.0 | Initiator (5.0), Target (4.0), Multipath |
| OpenBSD | Mai 2011 | ab Version 4.9 | Initiator |
| FreeBSD | Februar 2008 | 7.0 | Initiator, Target, Multipath |
| OpenVMS | Februar 2008 | 8.3-1H1 | Initiator, Multipath |
| Mac OS X | Juli 2008 | 10.4 – 10.5 | Initiator, Target |

## Ähnliche Standards

* ATA over Ethernet: Bei ATA over Ethernet werden ATA/ATAPI-Pakete in Ethernet gekapselt. Im Unterschied zu iSCSI erfolgt keine Kapselung in TCP/IP, hieraus resultieren geringe Performancevorteile, ATAoE ist nicht routingfähig.
* Fibre Channel: FC definiert ein nicht routingfähiges Standardprotokoll aus dem Bereich der Speichernetzwerke, das als ein Nachfolger von Parallel SCSI für die Hochgeschwindigkeitsübertragung großer Datenmengen konzipiert wurde. Natives FC ist nicht mit Ethernet kompatibel, es wird eine separate Infrastruktur (NICs, Switches usw.) benötigt.
* Fibre Channel over Ethernet: Bei Fibre Channel over Ethernet werden Fibre-Channel-Pakete in Ethernet gekapselt. Im Unterschied zu iSCSI erfolgt keine Kapselung in TCP/IP, hieraus resultieren geringe Performancevorteile, jedoch ist FCoE nicht routingfähig.
* Fibre Channel over IP: Bei Fibre Channel over IP werden Fibre-Channel-Pakete zusätzlich in TCP/IP gekapselt. FCoIP ist daher routingfähig.
* HyperSCSI: Bei HyperSCSI werden SCSI-Pakete in Ethernet gekapselt. Im Unterschied zu iSCSI erfolgt keine Kapselung in TCP/IP, hieraus resultieren geringe Performancevorteile, HyperSCSI ist nicht routingfähig.