Serial Attached SCSI

Schnittstellen Standard
SAS-Anschluss einer Festplatte

Serial Attached SCSI (SAS) ist eine Computerschnittstelle, die 2004 die Nachfolge der vorhergehenden parallelen SCSI-Schnittstelle antrat.

HintergrundBearbeiten

Der Vorläufer von SAS war die parallele SCSI-Schnittstelle, die mit ihrem letzten Standard Ultra-320 SCSI an physikalische Grenzen gestoßen war. Unter anderem darf bei einer parallelen Übertragung die Signallaufzeit auf den einzelnen Datenleitungen nicht zu sehr differieren, damit das langsamste und das schnellste Bit noch zum Bit-Abtast-Zeitpunkt ausgewertet werden können. Zur weiteren Steigerung der Datendurchsatzrate wurde daher eine neue, serielle Schnittstelle konzipiert. Da bereits einige Jahre vorher bei Desktop-PCs die serielle Schnittstelle Serial ATA (SATA) eingeführt wurde, lag es nahe, zur Verringerung von Entwicklungs- und Herstellungskosten den SCSI-Nachfolger mit einem zu SATA kompatiblen Modus zu versehen. Ultra-640 SCSI wurde zwar noch als paralleler Standard definiert, doch wurden keine solchen Geräte mehr gebaut.

TechnikBearbeiten

 
SAS-Backplane

Auf der Bitübertragungsschicht arbeitet SAS seriell mit einer Symbolrate von 3 Gbit/s (SAS-1, 2004), 6 Gbit/s (SAS-2, 2009) oder 12 Gbit/s (SAS-3, 2013). Eine vierte Generation mit 22,5 Gbit/s, etwas effizienterer Kodierung und integrierter Vorwärtsfehlerkorrektur ist 2017 erschienen. Bis einschließlich SAS-3 wird als Modulation auf der Sicherungsschicht wie bei SATA ein 8b10b-Code verwendet, d. h. 8 Bit Nutzdaten werden in 10 Kanalbits übertragen. Gegenüber SATA wird auf den Kabeln ein größerer Spannungshub (± 1,2 V[1]) verwendet, um eine Reichweite von bis zu 6 m zu erzielen. Für SAS-4 wird eine 128b/150b-Kodierung verwendet.[2] Dadurch entsprechen die genannten Übertragungsraten jeweils 300, 600, 1200 oder 2400 MB/s Nettodatendurchsatz.

SAS Generationen im Überblick[1][3]
Generation Bezeichnung Symbolrate Datendurchsatz (Netto) Kodierung Erscheinungsjahr
SAS-1 SAS 3 Gbit/s 300 MB/s 8b/10b 2004
SAS-2 SAS 6G 6 Gbit/s 600 MB/s 8b/10b 2009
SAS-3 SAS 12G 12 Gbit/s 1200 MB/s 8b/10b 2013
SAS-4 SAS 24G 22,5 Gbit/s 2400 MB/s 128b/150b[2] 2017
SAS-5 SAS 48G 45 Gbit/s 4800 MB/s 128b/150b[2] in Entwicklung[4]

Im Gegensatz zu seinem Vorgänger Parallel SCSI ist SAS eine Punkt-zu-Punkt-Verbindung. Zum einen entfallen dadurch die bei Parallel SCSI typischen Terminatoren, die dort eine Signalspiegelung an Kabelenden vermeiden. Zum anderen entfällt so die Notwendigkeit, den Laufwerken manuell SCSI-IDs zu vergeben: Jedes SAS-Gerät hat eine weltweit eindeutige Adresse.

Der SAS-Standard sieht weiter oben im Protokollstapel drei Protokolle vor, um Gerätekommunikation zu ermöglichen:

  • SAS SCSI Protocol (SSP), die serielle Variante des SCSI-Protokolls. SAS-Endgeräte und SAS-Controller nutzen dieses, um miteinander zu kommunizieren.
  • Serial ATA Tunneling Protocol (STP), das das SATA-Protokoll tunnelt. Dadurch ist es möglich, SATA-Laufwerke an SAS-Controllern einzusetzen.
  • SAS Management Protocol (SMP), für das Management von Expandern.

ExpanderBearbeiten

SAS ist nicht nur als Verbindungsprotokoll zwischen Controller und Endgeräten konzipiert, sondern erlaubt mit Hilfe sogenannter „Expander“ auch, eine Speicherdomäne aus SAS-Geräten aufzubauen. Diese Geräte haben eine ähnliche Funktion wie die aus der Netzwerkwelt bekannten Switches. Dabei wird zwischen zwei Expander-Typen unterschieden:

  • Der Edge Expander bündelt theoretisch bis zu 128 Endgeräte (praktisch erhältlich bis zu 36) auf ein einzelnes SAS-Kabel. Indem dieses an den Controller angeschlossen wird, ist es möglich, wesentlich mehr Geräte an einem Controller zu betreiben als dieser Ports bietet. Es können bis zu zwei Edge Expander pro Controller benutzt werden.
  • Reichen die durch Edge Expander erweiterten Möglichkeiten nicht aus, kommen Fanout Expander ins Spiel. Diese können zwischen Controller und Edge Expander gestellt werden und fächern dabei den einzelnen Controlleranschluss auf bis zu 128 auf (englisch fan out). Durch Einsatz beider Expander-Typen erhöht sich die theoretische Maximalanzahl an Endgeräten auf 128×128=16384 Laufwerke.

Leitungsbündelung und Dual PortingBearbeiten

SAS-Festplatten haben üblicherweise zwei SAS-Anschlüsse. Diese können entweder zur Leistungssteigerung gebündelt werden, so dass sie zusammen bis zu 24 GBit/s übertragen können (dritte Generation). Oder man setzt sie zum Dual Porting ein, das es erlaubt, die beiden Ports der Festplatte an unterschiedlichen Host-Adaptern anzuschließen. Damit sind redundante Architekturen einfach zu realisieren. Bereits auf dem Intel Developer Forum im Februar 2004 demonstrierte Seagate eine 2,5-Zoll-SAS-Festplatte im Dual-Porting-Betrieb. Bei der Demonstration griffen zwei unabhängige Systeme auf die verwendete Festplatte zu, die jeweils einen Video-Stream von dieser Platte abspielten.

 
SFF-8484-Kabel

Stecker und KabelBearbeiten

SAS übernimmt die SATA-Steckverbindungen in leicht abgeänderter Form: Die Buchsen sind mit einem Steg zwischen Daten- und Stromanschluss versehen, die Stecker entsprechend mit einem Keil. Dadurch können keine SATA-Kabel in SAS-Geräte gesteckt werden, wohl aber SAS-Kabel in SATA-Geräte. Diese Eigenschaft wurde aufgrund der geplanten Abwärtskompatibilität zu SATA bewusst entwickelt.

Im Laufe der Zeit haben sich verschiedene Steckertypen etabliert, die in mehreren SFF-Standards spezifiziert sind:[5]

Bild Name andere Namen extern/
intern
Anzahl
Verbinder
Geräte Bemerkungen
  SFF-8482 intern 007 01 Für interne Verbindungen, kompatibel zu SATA-Laufwerken.
Das Bild zeigt den laufwerksseitigen Stecker.
  SFF-8484 intern 032 (19) 04 (2) Für zwei- oder vierkanalige interne Verbindungen.
SFF-8485 Definiert SGPIO (Erweiterung von SFF 8484), ein serielles Protokoll.
Z. B. für LED-Anzeigen verwendet.
  SFF-8470 InfiniBand-Stecker extern 032 04 Für vierkanalige externe Verbindungen, auch bei InfiniBand in Anwendung.
Wird auch als interner Stecker verwendet.
  SFF-8087 intern mini-SAS,
intern mSAS,
iPASS (Supermicro)
intern 036 04 Molex-Stecker, für vierkanalige interne Verbindungen.
Wesentlich kleiner als SFF 8484, auch für 12 Gbit/s.
  SFF-8088 extern mini-SAS,
extern mSAS
extern 026 04 Molex-Stecker, für vierkanalige externe Verbindungen, auch für 12 Gbit/s.
Die Anzahl/Position der Rillen am Stecker kann sich unterscheiden,
um die Steckerrichtung festzulegen ("IN" oder "OUT").[6]
Stecker mit drei Rillen können für IN und OUT verwendet werden.
  SFF-8643 intern mini-SAS HD intern 036 04 Stecker für vierkanalige interne Verbindungen, auch für 12 Gbit/s,
auch vom Controller zu Laufwerken als Fan-Out.
Nochmals kleiner als SFF-8087.
  SFF-8644 extern mini-SAS HD extern 04 Stecker für vierkanalige, externe Verbindungen, auch für 12 Gbit/s

Vergleich zwischen SAS und SATABearbeiten

Schnittstelle SAS
(SAS-3, dritte Generation)
SATA
(Serial ATA 6,0 Gbit/s, SATA Revision 3.x)
Übertragungsrate je Port 12 GHz Symbolrate ≙ 1200 MB/s Brutto-Datenrate 6 GHz Symbolrate ≙ 600 MB/s Brutto-Datenrate
Leitungscode 8b10b-Code 8b10b-Code
Spannungshub (Tx/Rx) 800–1600 mV / 275–1600 mV 600–900 mV / 325–900 mV
Impedanz 100 Ω 100 Ω
Verbindungsart vollduplex halbduplex (vollduplex nicht unterstützt)[7]
Leitungsbündelung Port Aggregation nein
Dual Channel bei Festplatte/SSD
2 × 12 GHz Symbolrate ≙ 2400 MB/s Brutto-Datenrate
nein
Anschlusstechnik Multi-Initiator Single-Host oder Multilane

WeblinksBearbeiten

Commons: SAS connectors – Sammlung von Bildern

EinzelnachweiseBearbeiten

  1. a b SAS - Serial Attached SCSI. Abgerufen am 30. April 2020.
  2. a b c SAS Protocol Layer - 4 (SPL-4) draft 08b; 5.5 SPL packet. INCITS. 18. Juli 2016. Abgerufen am 21. Juli 2016.
  3. Serial Attached SCSI – Thomas-Krenn-Wiki. Abgerufen am 30. April 2020.
  4. http://www.t10.org/cgi-bin/ac.pl?t=f&f=sas5r01a.pdf
  5. https://www.snia.org/technology-communities/sff/specifications
  6. SAS Integrators Guide;. SCSITA. 21. April 2006. Abgerufen am 29. September 2017.
  7. https://www.tomshardware.com/reviews/sas-6gb-hdd,2392-2.html