Der Server Message Block

Netzwerkprotokolle SMB 3 und SMB 2 im Detail

Unterschiede zwischen SMB 3 und SMB 2

Microsoft spricht in seiner technischen Dokumentation zum SMB-Protokoll größtenteils nur vom SMB-2-Protokoll. Damit sind die beiden neuen Versionen 2 und 3 gemeint. Diese unterscheiden sich in vielen Details vom früheren SMB-Protokoll. So ist beispielsweise das Paketformat neu. Dem Benutzer fällt das zunächst nicht auf. Denn aus Kompatibilitätsgründen kann das originale SMB auch mit SMB 2 kommunizieren. Dementsprechend unterstützt SMB 2 wie der Vorgänger folgende Funktionen:

  • Herstellen eines oder mehrerer authentifizierter Kontexte für verschiedene Sicherheitsstufen innerhalb einer Verbindung.

  • Verbindung zu verschiedenen Ressourcen auf dem SMB-Server über einen Kommunikationskanal.

  • Öffnen, Lesen, Verändern und Schließen mehrerer Dateien oder benannter Pipes auf dem Server.

  • Caching von Dateien für eine bessere Performance.

  • Datei- und Volume-Attribute können geändert werden.

  • Noch nicht begonnene Operationen können abgebrochen werden.

  • Anfragen und Antworten werden auf Gültigkeit geprüft.

  • Share-Scoping und Server-Aliase werden unterstützt, um Clients unterschiedlich viele Server vorzugaukeln.

Nützliche Erweiterung: Seit der Version 2.1 hat SMB Server-Multiprotokoll-Anfragen im Repertoire.
Nützliche Erweiterung: Seit der Version 2.1 hat SMB Server-Multiprotokoll-Anfragen im Repertoire.

Über diese Funktionen hinaus beherrscht SMB 2 noch weitere. So kann das Öffnen einer Datei nach einer kurzen Trennung der Netzwerkverbindung fortgesetzt werden. Außerdem bietet der Server Skalierbarkeit in Bezug auf die Zahl der Shares, der Benutzer und simultan geöffneter Dateien. Des Weiteren kann der Server die Zahl der gleichzeitigen Operationen eines Clients abgleichen und unterstützt - wie bereits erwähnt - symbolische Links sowie einen stärkeren Authentifizierungs-Algorithmus.

In die SMB-Version 2.1 sind einige kleine Korrekturen und neue Funktionen eingeflossen. So kann ein Client zum Beispiel eine Multiprotokollanfrage starten und gleich mitteilen, welche SMB-2-Dialekte er versteht. Ein Client kann außerdem die Hash-Werte einer Datei anfordern, die dann über das BrancheCaching geöffnet wird.

Neu mit SMB 3.0: Clients im Netzwerk können innerhalb einer Sitzung vielfache Verbindungen zu einem Server herstellen.
Neu mit SMB 3.0: Clients im Netzwerk können innerhalb einer Sitzung vielfache Verbindungen zu einem Server herstellen.

Mit SMB 3.0 sind noch weitere neue Funktionen hinzugekommen. So kann der Client hier sogar Hashes für bestimmte Teile einer Datei anfordern oder ein Verzeichnis leasen. Die Verschlüsselung des Datenverkehrs zwischen Client und Server kann auf Share-Basis erfolgen, und mit der entsprechenden Hardware ist der Einsatz von Remote Direct Memory Access (RDMA) möglich. Neben erhöhter Ausfallsicherheit kann ein Client für eine Sitzung auch vielfache Serververbindungen herstellen. Eine Anfrage kann dann über jeden der Sitzung zugeordneten Kanal gesendet werden. Die Antwort darauf erfolgt über denselben Kanal wie bei der Anfrage. (hal)