RemoteFX in Windows Server 2012 Session Host (Terminal-Server) nutzen


    Tags: , ,

    RDS-Architektur in Windows Server 8Microsoft führte mit dem Service Pack 1 für Windows 7 und Server 2008 R2 die RDP-Erweiterung RemoteFX ein und legte mit Server 2012 einige Verbesserungen nach. Das Thema RemoteFX dreht sich aber meistens um Hyper-V und virtuelle Desktops, so dass häufig die Frage offen bleibt, ob es sich auch mit einem Terminal-Server verwenden lässt und was es dort bringt.

    RemoteFX dient als Sammelbegriff für eine ganze Reihe verschiedener Features, darunter auch USB- und PnP-Umleitung. In der Regel denkt man dabei aber an die Fähigkeit, die Grafikausgabe eines entfernten Windows-Rechners auf dem Remote-Host aufzubereiten und so an die Clients zu übertragen, dass auch leistungsschwache Endgeräte ein gutes Benutzererlebnis bieten. Windows Server 2012 enthält zu diesem Zweck separate Codecs für Text, Bilder und Videos. Der neu hinzugekommene Support für UDP-Verbindungen macht es auch WAN-tauglich.

    vGPUs beschleunigen virtuelle Desktops

    Die meisten Beschreibungen von RemoteFX behandeln seine Nutzung in VMs unter Hyper-V. Der Microsoft-Hypervisor kann nämlich die Grafik-Hardware virtualisieren und für die virtuellen Maschinen jeweils eine eigene vGPU bereitstellen. VMs sind damit in der Lage, den physikalischen Grafikadapter gemeinsam zu nutzen und den Bildaufbau durch die Grafik-Hardware zu beschleunigen. Nebenbei wird dadurch die CPU entlastet.

    Die Anforderungen für dieses Feature sind relativ hoch, unter anderem verlangt es eine SLAT-fähige CPU, eine GPU mit Unterstützung für DirectX 11 und einen Treiber, der mit WDDM 1.2 kompatibel ist. In den virtuellen Maschinen muss mindestens Windows 7 SP1 laufen, wobei es die Enterprise Edition sein muss.

    Soft GPU für Session Hosts

    RemoteFX setzt jedoch nicht grundsätzlich eine leistungsfähige, virtualisierte GPU voraus, sondern kann diese durch eine reine Software-Implementierung ersetzen, die das Rendering mit Hilfe der CPU leistet. Diese "Soft GPU" nutzt ihre eigenen Optimierungs­techniken, aus der Sicht der Clients spielt das aber keine Rolle, weil bei ihm das gleiche Protokoll eintrifft.

    Genau diese Emulation der Grafik-Hardware kommt beim Remote Desktop Session Host zum Einsatz, und zwar unabhängig davon, ob er direkt auf der Hardware oder in einer VM läuft. Wenn der Terminal-Server unter Hyper-V eine vGPU vorfindet, dann kann er diese genauso wenig wie eine physikalische GPU nutzen, um Grafikdaten mit RemoteFX zu rendern. Außerdem ist er grundsätzlich nicht in der Lage, eine GPU für die einzelnen Sessions zu virtualisieren.

    Der wesentliche Vorteil der Soft GPU besteht darin, dass es die Systemanforderungen für RemoteFX sehr gering hält und daher jeder halbwegs moderne Server ausreicht. Allerdings frisst die Aufbereitung der Grafiken CPU-Rechenleistung, so dass je nach genutzten Anwendungen die maximale Zahl an Sessions pro Maschine niedriger ausfallen kann. Gleichzeitig reduziert der Einsatz von RemoteFX aufgrund der Datenkomprimierung jedoch den Netzwerk-Traffic und verbessert das Benutzererlebnis.

    Aktivieren von RemoteFX für RDSH

    Nach der Installation eines RD Session Host unter Windows Server 2012 stellt sich den meisten Admins vermutlich die Frage, wie man RemoteFX nun aktiviert beziehungsweise wie man herausfindet, ob es angeschaltet ist. Schließlich waren unter Windows Server 2008 R2 SP1 noch einige Konfigurationsschritte nötig, um RemoteFX nutzen zu können, darunter der Einsatz einer Gruppenrichtlinie (siehe dazu die TechNet-Anleitung). Die gute Nachricht ist, dass RemoteFX in Windows Server 2012 durch das Hinzufügen der RDSH-Rolle automatisch in Betrieb genommen wird.

    Damit ein Endgerät RemoteFX nutzen kann, muss es mindestens über die Version 7.1 von RDP verfügen. Möchte es zudem die neuen Funktionen wie den Support für WAN-Verbindungen oder das Progressive Rendering in Anspruch nehmen, dann benötigt es RDP 8.0. Dieses steht mittlerweile auch für Windows 7 zur Verfügung und kann nachträglich installiert werden.

    RemoteFX-Nutzung über Eventlog verifizieren

    Möchte man verifizieren, dass eine Verbindung wirklich RemoteFX verwendet, dann gibt der RDP-Client hier keine Auskunft. Die besten Hinweise dafür findet man in der Ereignisanzeige unter Anwendungs- und Dienstprotokolle => Microsoft => Windows => RemoteDesktopServices-RdpCoreTS. Einträge mit der Ereignis-ID 33 bestätigen etwa den Verbindungsaufbau über RemoteFX.

    Die Ereignisanzeige gibt Aufschluss darüber, ob der RDSH RemoteFX verwendet.

    Wem das Navigieren durch die Ereignisanzeige zu mühsam ist, kann man stattdessen diesen Aufruf von PowerShell nutzen:

    Get-WinEvent -Logname "Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational" -MaxEvents 50|select TimeCreated, Message|fl

    Er listet die letzten 50 Einträge aus dem Log für die Remotedesktop-Services und zeigt das Datum sowie die Nachricht in Listenform an.

    Täglich Know-how für IT-Pros mit unserem Newsletter

    Wir ver­wenden Ihre Mail-Adresse nur für den Ver­sand der News­letter.
    Es erfolgt keine per­sonen­be­zogene Auswertung.

    Bild von Wolfgang Sommergut

    Wolfgang Sommergut hat lang­jährige Erfahrung als Fach­autor, Berater und Kon­ferenz­sprecher zu ver­schie­denen Themen der IT. Da­ne­ben war er als System­ad­mi­ni­stra­tor und Con­sultant tätig.
    // Kontakt: E-Mail, XING, LinkedIn //

    Ähnliche Beiträge

    Weitere Links

    11 Kommentare

    Ich hoffe ich habe nichts überlesen:
    Was genau bringt denn jetzt RemoteFX auf einem 2012 RDSH?

    Bild von Wolfgang Sommergut

    Vor allem ein besseres Benutzererlebnis, besonders auf leistungsschwachen Clients, weil das Rendering der Grafikdaten auf dem Host erfolgt. Siehe dazu auch meine FAQ zu RemoteFX.

    Hallo,

    ich habe vor genau so ein Szenario in einer Produktivumgebung einzusetzen.

    Mit ca. 20 clients mit Windows 7 die aktiv RPD nutzen, komme ich da mit einem Supermicro X9DR3-F mit 2 Xeon CPU E52620 mit 64 GB RAM. Adaptec controller 6405E mit einem 10er Raid Arraya mit 2TB Speicher hin?

    Also wie im Artikel, Host ist Server 2012 R2 und darauf unter Hyper-V als Virtueller Server 2008 R2. Als zusätzliche "Last" habe ich noch einen weiteren virtuellen Server mit Server 2008 für Datev und als wenn das nicht genug wäre noch SBS 2011 als AD und auf dem soll eine SQL Datenbank laufen (wird nicht empfohlen, hab ich meinem chef auch gesagt).

    Die genutzte Anwendung ist Office 2010 Pro Plus. (Word, Outlook ..standard)

    Im Artikel steht ja "Allerdings frisst die Aufbereitung der Grafiken CPU-Rechenleistung, so dass je nach genutzten Anwendungen die maximale Zahl an Sessions pro Maschine niedriger ausfallen kann."

    Der Server läuft soweit und mit dem RDP klappt auch alles, ich frag mich nur ob ich da mit der clientanzahl hinkomme? Z.z. zöger ich den clients nicht mal 32 bit Farbtiefe zu gönnen.

    Mit Gruß und Dank vorweg

    Tom

    Sehr geehrter Herr Sommergut,

    vielen Dank für Ihre vielen, sehr informativen Beiträge zu den RDP Implemtierungen in Windows Server.

    Wir setzen ein Windows 2008 R2 als RDP-Session Host ein (als virtuelle Maschine unter ESXI) und lange Zeit dachte ich, dass RemoteFX bei uns nicht aktiviert werden kann, da unser Server (1.)keine GPU hat und das mit der Soft-GPU für den Session Host erst ab Windows 2012 funktioniert und dann auch nur wenn (2.) die VM auf einem Windows Hyper-V Hypervisor/Server läuft. Weit gefehlt!

    Ich habe nun festgestellt, dass nach der Aktivierung von RemoteFX, entsprechende Verbindungen zu der VM 2008 R2 mit RemoteFX erfolgen und das unter einem ESXI 5.5 Hypervisor!
    Die Performance ist erheblich besser geworden bei PDF+Video+Browser, lediglich die fehlende USB-Redirection, die erst mit Server 2012 hinzugekommen ist, wäre für uns nun noch ein Argument zum Upgrade.

    Ich dachte ich teile Ihnen das mal mit, da man hierzu (RemoteFX auf ESXI VM) im Internet nichts dazu findet.
    Dass RemoteFX läuft kann unter 2008 R2 ebenfalls unter dem Eventlog (siehe oben) kontrolliert werden, allerdings lautet hier die Ereignis-ID 1000 und nicht 33.

    Mit Grüßen und weiter so!

    Was bedeutet das nun letztendlich für den Einsatz von RemoteFX mit einem Server 2016 RDSH? Sprich ich setze einen virtualisierten Multipoint Server 2016 ein mit aktiviertem RemoteFX und einer Tesla-Grafikkarte. Nun verbinden sich 5 Clients über RDP mit diesem "Terminalserver". Alle 5 Sitzungen öffnen eine Instanz von Photoshop. Können diese unterschiedlichen Sitzungen sich nun die physische GPU bzw die vGPU teilen und Photoshop kann genutzt werden?

    Hallo, genau diese Frage habe ich auch. Gibt es diesbezüglich irgendwelche Erkenntnisse?

    Bild von Wolfgang Sommergut

    Dazu habe ich kürzlich einen Beitrag veröffentlicht, der die Situation für Server 2016 beschreibt und der diese Frage beantworten dürfte.

    Also ist es aktuell nicht möglich eine physische GPU an mehreren virtualisierten 2012R2-Terminalservern zu verwenden? Man kann für Teminalserver also nur die dedizierte GPU (DDA) verwenden?

    Hallo und vielen Dank für den Artikel,

    ich habe aktuell ein Problem mit genau diesem Sachverhalt unter Windows Server 2016 Standard. Dort scheint RemoteFX nicht bei einer direkten Remotesitzung zu laufen. Ist es möglich, dass bei Windows Server 2016 NUR VMs von RemoteFX profitieren können?

    In der Ereignisanzeige tauchen keine Ereignis-IDs "33" auf, ebensowenig gibt mir der Benchmark von Solidworks einen Hinweis darauf (eher das Gegenteil).

    Bild von Wolfgang Sommergut

    Siehe dazu meinen Kommentar weiter oben.

    Den Artikel habe ich (mit meinem laienhaften Verständnis)auch gelesen, jedoch bezieht sich das für mich alles auf die Verwendung von virtualisierten Desktops mit Hyper-V.
    Wenn es für mich nicht klar verständlich ist, bitte ich um Entschuldigung, jedoch habe ich bei Windows Server 2016 nachwievor die Frage offen, ob Remote FX unter reinder Remotedesktop-Sitzung möglich ist (ohne virtualisierten Desktop/VM-Ware). So, wie es im obigen Artikel beschrieben ist quasi.