In unserem Lab läuft ein Windows Server 2022 mit installierter Hyper-V Rolle. Unter anderem haben wir dort eine OPNsense (24.7.10_2) virtualisiert am. Bei verschiedenen Gelegenheiten fiel uns dabei über längere Zeit und Releases auf, das beispielsweise bei größeren Downloads nach kurzer Zeit die Netzwerk-Performance einbricht.
Als Beispiel dient hier der Download einer Debian ISO-Datei:
Nach ungefähr 3-4 Minuten bricht die Geschwindigkeit von vormals 500 MBit/s auf quasi null oder wenige Kilobit/s ein. Es scheint keine Rolle zu spielen, ob es eine Generation 1 oder 2 VM ist.
Das Ganze ist wohl kein reines OPNsense-Thema, sondern hängt mit dem zugrundeliegenden FreeBSD zusammen. Mit anderen Hypervisorn, wie z.B. Proxmox VE oder VMware, scheint es dieses Verhalten nicht zu geben.
Der Recherche nach kann es verschiedene Ursachen wie auch Lösungen geben:
OPNsense – Forum – 22.1rc1 slow in Hyper-V
OPNsense – Forum – Poor Performance with OpnSense 23.1 and Hyper-V 2019
Dan Joannis – FreeBSD / pfSense slow network with Hyper-V
netgate – pfSense (2.6.0 & 22.01 ) is very slow on Hyper-V
gal.vin – Poor Network Performance With FreeBSD Based Distro’s On Hyper-V
reddit – pfSense – Need some help with Hyper-V and 2.6.0
Eine Möglichkeit besteht darin, RSC im virtuellen Switch zu deaktivieren. In der PowerShell geht dies mit
Set-VMSwitch -Name "<vSwitch-Name>" -EnableSoftwareRsc $false
Prüfen kann man die Änderung mit
Get-VMSwitch -Name "<vSwitch-Name>" | Select-Object *RSC*
Bekannte Probleme gibt es zudem mit Netzwerkkarten von Broadcom und manchen Intel-Treibereinstellungen (Stichwort: SR-IOV). Weiter kann das De-/Aktivieren von VMQ (bei entsprechender Hardware) helfen. Siehe
Leider hat bislang keine Maßnahme bei uns geholfen, es mag womöglich auch irgendwie mit der Hardware zusammenhängen, wobei wir mit anderen VMs (Windows, Linux, OpenWrt, …) dieses Verhalten nicht beobachtet haben, sind aber auch alle keine BSDs.
Da es sich nur um unser Lab handelt, ist das nicht weiter tragisch. Falls noch jemand einen Tipp hierzu hat (außer den Hypervisor zu wechseln), dann gerne ein Kommentar hinterlassen.
Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.
… ich habe bei pfSense die Erfahrung gemacht, dass das Abschalten aller Energiespar,- und Green,- Funktionen derartige Probleme beheben kann.
Ein weiterer Weg wäre mglw. die SR-IOV oder sonstigen Virtualisierungsfunktionen der NICs zu einzuspannen…. oder aber DDA zu nutzen um die (zusätzliche?) Netzwerkkarte direkt in die Maschine durchzureichen. Ach und nochwas…. manchmal (Intel) funktioniert der Windows-eigene Treiber besser als derjenige des Vendors.
Hi, ich habe in den NIC Eigenschaften alles was mit “Offload” zu tun hat, abgeschaltet.