Dateiserver sind in einer Multiuser Umgebung zentrales Thema, bedingt durch die Home-Laufwerke und oft auch Ordnerumleitungen. Heutzutage werden schnell dafür virtuell Windows Server verwendet aber deren Konfiguration nicht berücksichtigt und einfach der Standard verwendet. Mit Server 2012 R2 bedeutet der Standard SMB 3.02 was besser ist als die Vorgängerversionen (1.x, 2.x) aber 2012 R2 bietet mehr und sollte genutzt werden! Gerade VMWare Umgebungen nutzen Funktionen nicht, da diese als Standard deaktiviert sind. Aktivieren alleine nützt auch nichts den die VM sollte entsprechend ausgelegt werden.
virtual Receive Side Scaling (vRSS)
Virtual RSS ist das "Zauberwort" mit 2012 R2 und ist eine Option in der Konfiguration der Netzwerkkarte. Ob diese aktiv ist kann über Powershell (PoSh) geprüft werden. Entweder mit Get-SmbServerNetworkInterface
(Get-SmbClientNetworkInterface
) oder über Get-NetAdapterRSS
und gibt "True" oder "False" als Wert zurück. Wer VMWare einsetzt wird als Standard "False" als Antwort bekommen und damit nicht aktiv. Bei Hyper-V und XenServer gibt es ein "Wahr", also aktiv zurück.
Mit dem folgenden PoSh Befehl wird RSS aktiviert: Set-NetAdapterRSS -Name "AdapterName" -Enabled $True
Wofür ist RSS gut? Ohne RSS wird sämtlicher Netzwerk I/O über nur EINE CPU verarbeitet und MIT RSS werden ALLE CPU’s genutzt um den Netzwerk I/O zu verarbeiten. Dadurch kann deutlich mehr Performance gewonnen werden. Zudem wird grundsätzlich auch der Server RAM genutzt um durch Caching weiter SMB Datenverkehr optimieren zu können. Damit sind mehr CPU's mit RSS und grundsätzlich mehr RAM zu empfehlen.
Microsoft gibt an, dass eine aktuelle CPU unter besten Bedingungen 7 Gbit/s auf das Netzwerk bringt und kann damit ein 10Gbit/s Netzwerk nicht voll nutzen. Also ohne RSS sind 10Gbit/s Netzwerke niemals voll ausgelastet. Werden nun 4 CPU's eingesetzt dann wären es 28 Gbit/s aber da die CPU's noch was Anderes machen müssen gehe ich mal von ca. 30% CPU Nutzung nur für Netzwerk I/O aus. Das bringt uns dann auf gut 9 Gbit/s.
Wer noch mehr Performance braucht sollte SMB-Direct verwenden benötigt dafür aber einen RDMA fähigen Netzwerkadapter. Einen virtuellen Adapter der das kann habe ich aber bisher noch nicht gesehen.
Meine Minimum Empfehlung für Server 2012 R2 als Dateiserver mit aktiven RSS sind 4 vCPU und 16 GB RAM
Verweise
- Virtuelle empfangsseitige Skalierung in Windows Server 2012 R2
https://technet.microsoft.com/de-de/library/dn383582(v=ws.11).aspx