iSCSI (Internet Small Computer System Interface)
Was ist iSCSI (Internet Small Computer System Interface)?
iSCSI (Internet Small Computer System Interface) ist ein Transportschichtprotokoll (Transport Layer Protocol), das beschreibt, wie Small Computer System Interface (SCSI)-Pakete über ein TCP/IP-Netzwerk transportiert werden sollen.
iSCSI setzt auf TCP auf und ermöglicht es, den SCSI-Befehl durchgängig über lokale Netzwerke (LANs), Wide Area Networks (WANs) oder das Internet zu senden.
IBM entwickelte iSCSI 1998 als Proof of Concept und legte den ersten Entwurf des iSCSI-Standards im Jahr 2000 der Internet Engineering Task Force vor. Das Protokoll wurde im Jahr 2003 ratifiziert.
iSCSI ermöglicht die Einrichtung eines Netzwerks mit gemeinsamem Speicher, in dem mehrere Server und Clients auf zentrale Speicherressourcen zugreifen können, als wäre der Speicher ein lokal angeschlossenes Gerät.
SCSI hingegen ist ein Datenzugriffsprotokoll, das es seit den frühen 1980er Jahren gibt. Es wurde vom damaligen Festplattenhersteller Shugart Associates entwickelt.
Wie funktioniert iSCSI?
iSCSI transportiert Daten auf Blockebene zwischen einem iSCSI-Initiator auf einem Server und einem iSCSI-Ziel (Target) auf einem Speichergerät. Das iSCSI-Protokoll kapselt SCSI-Befehle und stellt die Daten in Paketen für die TCP/IP-Schicht zusammen. Die Pakete werden über eine Punkt-zu-Punkt-Verbindung über das Netzwerk gesendet. Bei der Ankunft zerlegt das iSCSI-Protokoll die Pakete und trennt die SCSI-Befehle, so dass das Betriebssystem den Speicher wie ein lokal angeschlossenes SCSI-Gerät sieht, das wie üblich formatiert werden kann.
Die Popularität von iSCSI in kleinen und mittelständischen Unternehmen hat mit der Art und Weise zu tun, wie die Servervirtualisierung Speicherpools nutzt. In einer virtualisierten Umgebung ist der Speicherpool für alle Hosts innerhalb des Clusters zugänglich. Die Clusterknoten kommunizieren mit dem Speicherpool über das Netzwerk mit Hilfe des iSCSI-Protokolls. Es gibt eine Reihe von iSCSI-Geräten, die diese Art der Kommunikation zwischen Client-Servern und Speichersystemen ermöglichen.
Bestandteile von iSCSI
Zu den Komponenten von iSCSI gehören die folgenden.
iSCSI-Initiator
Ein iSCSI-Initiator ist ein Stück Software oder Hardware, das in einem Server installiert wird, um Daten zu und von einem iSCSI-basierten Speicher-Array oder iSCSI-Ziel zu senden.
Wenn ein Software-Initiator verwendet wird, können Standard-Ethernet-Komponenten wie Netzwerkschnittstellenkarten(NICs) verwendet werden, um das Speichernetzwerk aufzubauen. Die Verwendung eines Software-Initiators zusammen mit NICs überlässt jedoch praktisch die gesamte Verarbeitungslast den CPUs der Server, was sich wahrscheinlich auf die Leistung der Server bei anderen Aufgaben auswirkt.
Ein iSCSI-Host.Bus-Adapter (HBA) ähnelt einem Fibre Channel (FC)-HBA. Er entlastet den Prozessor des Host-Systems von einem Großteil der Verarbeitung und verbessert so die Leistung des Servers und des Speichernetzwerks. Die verbesserte Leistung hat jedoch ihren Preis, denn iSCSI-HBAs kosten in der Regel drei- bis viermal so viel wie eine Standard-Ethernet-NIC. Eine ähnliche, aber etwas kostengünstigere Alternative ist eine iSCSI-Offload-Engine (iSOE), die, wie der Name schon sagt, einen Teil des Prozesses vom Host auslagert.
iSCSI Target (Ziel)
In der iSCSI-Konfiguration ist das Speichersystem das Target oder auch Ziel. Das Ziel ist im Wesentlichen ein Server, der die Speicherressourcen hostet und den Zugriff auf den Speicher über eine oder mehrere NICs, HBAs oder iSOEs ermöglicht.
iSCSI vs. Fibre Channel
Ursprünglich wurden iSCSI-Speichersysteme als Alternative zu den teureren, aber leistungsfähigeren Fibre-Channel-basierten Speicher-Arrays positioniert, die den Großteil der Blockspeicheraufgaben in Unternehmensrechenzentren bewältigten. FC-Arrays verwenden ein Protokoll zum Lesen und Schreiben von Daten auf Speichergeräten, das speziell für Speicheraufgaben entwickelt wurde. Es bietet in der Regel die höchste Leistung für den Zugriff auf Blockspeicher – die Art des Zugriffs, die im Allgemeinen für Datenbankanwendungen mit hohen Transaktionsraten bevorzugt wird, die schnelle I/O und geringe Latenzen erfordern.
Die Konfiguration von iSCSI-Speicher ist ein ähnlicher Prozess wie die Einrichtung von FC-Speicher, wobei die Erstellung von Nummern für logische Einheiten die Grundlage des Prozesses bildet.
iSCSI-Vorteile
Da iSCSI Standard-Ethernet verwendet, sind keine teuren und manchmal komplexen Switches und Karten erforderlich, die für den Betrieb von Fibre-Channel-Netzwerken benötigt werden. Das macht die Einführung kostengünstiger und einfacher zu verwalten. Selbst wenn iSCSI-HBAs oder iSOEs anstelle von Standard-Ethernet-NICs verwendet werden, sind die Komponentenkosten für iSCSI-Storage immer noch günstiger als bei einem FC-basierten Speichersystem.
Ein FC-SAN überträgt Daten ohne Paketverluste und unterstützt traditionell höhere Bandbreiten, aber die FC-Technologie ist teuer und erfordert spezielle Kenntnisse, um sie richtig zu installieren und zu konfigurieren. Ein iSCSI-SAN hingegen kann mit gewöhnlichen Ethernet-Netzwerkkarten und Switches implementiert und in einem bestehenden Netzwerk betrieben werden. Anstatt zwei Netzwerke zu erlernen, aufzubauen und zu verwalten – ein Ethernet-LAN für die Benutzerkommunikation und ein FC-SAN für die Speicherung – könnte ein Unternehmen sein vorhandenes Wissen und seine Infrastruktur sowohl für LANs als auch für SANs nutzen.
iSCSI-Leistung
Viele iSCSI-Implementierungen basieren auf einer Ethernet-Infrastruktur mit 1 Gigabit pro Sekunde (GbE). Für alle außer den kleinsten Umgebungen sollte jedoch 10 GbE als Basiskonfiguration betrachtet werden, um eine Leistung zu erzielen, die mit der eines Fibre-Channel-Speichernetzwerks vergleichbar ist.
Multipathing ist eine Technik, die es einem Speicheradministrator ermöglicht, mehrere Pfade zwischen Client-Servern und Speicherressourcen einzurichten. Die Leistung wird durch Multipathing verbessert, da die Bandbreite zwischen den Pfaden gedrosselt werden kann, um die Lasten auszugleichen, wodurch der Zugriff auf den Speicher effizienter wird. Multipathing bietet außerdem Fehlertoleranz, um die Zuverlässigkeit des iSCSI-Speichersystems zu verbessern.
Jumbo Frames – eine zusätzliche Erweiterung des Ethernet-Protokolls – ermöglichen es iSCSI-Speichersystemen, größere Datenmengen zu übertragen, als dies mit den Standard-Ethernet-Frame-Größen möglich ist. Die gleichzeitige Übertragung größerer Datenmengen führt auch zu Leistungsverbesserungen.
Data Center Bridging (DCB) ist eine weitere technische Entwicklung, die die Zuverlässigkeit von Ethernet-basierten Speichersystemen erhöht und gleichzeitig die Leistung verbessert. DCB ist eine Reihe von Standards, die von der IEEEgenehmigt wurden und dazu beitragen, den Ausfall von Frames zu verringern. Sie ermöglichen die Zuweisung von Bandbreite, so dass leistungshungrige Anwendungen nicht mit weniger gefräßigen Anwendungen konkurrieren müssen.
iSCSI-Einschränkungen
Die größte Einschränkung von iSCSI-Speichernetzwerken liegt in der Leistung im Vergleich zu FC-basierten Speicherumgebungen. Als iSCSI zum ersten Mal eingeführt wurde, war der Leistungsunterschied zwischen den beiden Technologien sehr groß. Die Verfügbarkeit von 10-GbE-iSCSI und andere technische Implementierungen wie Multipathing und Data Center Bridging haben jedoch dazu beigetragen, die Leistungslücke zu schließen.
Heute ist die Leistung von iSCSI-Speichern genauso gut – oder fast genauso gut – wie die von ähnlich konfigurierten FC-Systemen.
Der Erfolg von iSCSI auf dem Markt
Aufgrund von Bedenken hinsichtlich der Leistung und der Kompatibilität mit anderen Speichernetzwerken dauerte es mehrere Jahre, bis sich iSCSI-SANs als Mainstream-Alternative zu Fibre-Channel-Speichernetzen durchsetzen konnten. Die Startup-Anbieter EqualLogic und LeftHand Networks hatten schließlich so viel Erfolg mit ihren iSCSI-Speicher-Arrays, dass sie von größeren Anbietern übernommen wurden. Im Jahr 2008 kaufte Dell die Firma EqualLogic für 1,4 Milliarden US-Dollar, und Hewlett Packard zahlte 360 Millionen US-Dollar für LeftHand.
In seinen Anfängen wurde iSCSI oft als kostengünstigere Alternative zu FC für Disaster-Recovery-Systeme und andere sekundäre Speicheranwendungen angesehen.
Fibre Channel ist nach wie vor ein beliebtes Speicherprotokoll, insbesondere für hybride Solid-State-Festplattenlaufwerkeund All-Flash-Umgebungen. Alle großen Speicherhersteller bieten jedoch inzwischen iSCSI-SAN-Arrays an, und einige bieten auch Speicherplattformen, die sowohl FC als auch iSCSI unterstützen. Systeme, die mit FC und iSCSI arbeiten, werden als Multiprotokoll- oder Unified Storage bezeichnet und unterstützen oft auch netzwerkgebundene Systeme für File Storage.
Ethernet-Alternativen zu iSCSI
iSCSI ist der beliebteste Ansatz für die Übertragung von Speicherdaten über IP-Netzwerke, aber es gibt auch Alternativen, wie zum Beispiel die folgenden:
- Fibre Channel over IP (FCIP), auch bekannt als Fibre Channel Tunneling, überträgt Daten zwischen SANs über IP-Netzwerke, um die gemeinsame Nutzung von Daten in einem geografisch verteilten Unternehmen zu erleichtern.
- Internet Fibre Channel Protocol (iFCP) ist eine Alternative zu FCIP, die SCSI- und FC-Netzwerke in das Internet einbindet.
- Fibre Channel over Ethernet (FCoE) wurde 2009 zu einem offiziellen Standard. Er wurde auf Initiative von Cisco Systems und anderen Netzwerkanbietern entwickelt, um Ethernet für den Transport von Datenpaketen geeigneter zu machen und den Bedarf an Fibre Channel zu verringern. Während es in Top-of-Rack-Switches mit Cisco-Servern verwendet wird, kommt FCoE in SAN-Switches nur selten zum Einsatz.
- ATA over Ethernet (AoE) ist ein weiteres Ethernet-SAN-Protokoll, das vor allem von Coraid Inc. kommerziell vertrieben wird. AoE übersetzt das Advanced Technology Attachment (ATA)-Speicherprotokoll direkt in Ethernet-Netzwerke und baut nicht auf einem High-Level-Protokoll auf, wie es iSCSI mit TCP/IP tut.
iSCSI-Sicherheit
Das primäre Sicherheitsrisiko bei iSCSI-SANs besteht darin, dass ein Angreifer die übertragenen Speicherdaten abfangen kann. Speicheradministratoren können Maßnahmen ergreifen, um ihr iSCSI-SAN abzusichern, zum Beispiel die Verwendung von Zugriffskontrolllisten, um die Benutzerrechte auf bestimmte Informationen im SAN zu beschränken. Das Challenge-Handshake-Authentifizierungsprotokoll und andere Authentifizierungsprotokolle sichern die Verwaltungsschnittstellen und die Verschlüsselung von Daten in Bewegung und in Ruhe.
Aufgrund des Ethernet-Stammbaums nutzen einige Unternehmen ihre nach außen gerichteten Ethernet-Datennetze auch für iSCSI-Speicher. Dies ist jedoch keine empfehlenswerte Praxis, da die Speicherinfrastruktur dadurch für über das Internet verbreitete Viren, Malware und Ransomware anfällig werden kann. Das iSCSI-unterstützende Netzwerk sollte nach Möglichkeit von externen Zugriffen isoliert werden.