Shadow Computing

Ich habe mir im anfang November einen Shadow Account für ein Jahr angelegt um für mich zu evaluieren, ob „Cloud Computing“ nun auch im Endusermarkt „sinnvoll“ angekommen ist. Anbieter wie Drpoobox bieten zwar schon lange ihre Dienstleistungen an, werden aber von den meisten Endusern nicht als Cloud wahrgenommen.

Meine Motivation hierfpr war, dass ich den einzigen Computer mit „aktueller“ GPU als Server im Keller stehen habe und ausschließlich für Testing verwende. Zudem fehlt mir der bedarf an einem Standgerät, da ich auf grund verschiedener Nutzungsorte dann gleich mehrere benötigen würde. Ein Laptop in der Leistungsklasse fällt ebenfalls aus, da ich sehr viel Wert auf Akkulaufzeit bei Produktivanwendungen lege – halt normaler Office Kram.

Nun also eine vollständuge Windows VM mit Lizenz zu einem, aus meiner Sicht, Preis der für Gelegenheitsuser vollkommen in ordnung ist, zumal die GPU Dediziert zugewiesen wird und somit fast vollständig für den User zur Verfügung steht. In etwa 3-8%, je nachdem ob reiner Desktop oder Gaming Betrieb gehen jedoch für das Encoding des Videostreams zum User drauf.

Was mir sofort aufgefallen ist, dass im Officebetrieb mit meinen typischen Endgeräten keine Probleme auftreten. (W520 & x201) Sobald es aber um 1920p Spieledecodung & Downsaming geht, wird es echt hakelig.
Bei genauerer Betrachtung zeigt sich, dass die Leistung der GPU in den Clients einfach an Ihre grenzen stößt, da der Client das an die Video Engine auslagert und der eingedliche GPU Core sich meistens im Idle befindet (W520) oder bei 70% hängt (x201).
Dies führt z.B. zu so „lustigen“ Effekten, wie das z.B. bei Hitman ich Klicke, den Schuss höre, jedoch das Bild bis zu 2sec später kommt, da von der GPU massiv Frames gedroppt werden
Als gegentest habe ich dann Board mit i3-2100 & ATI HD 6670/5770 getestet, womit es dann eiwandfrei lief. Allerding ist mir der Stromverbrauch von diesem Setup mit über 70 Watt für einen quasi Thinclient dann auch wieder zuviel.

Lösungsansatz war dann den Steam Link der ja als Streaminclient ausgelegt ist als Userdevice zu missbrauchen. Allerdings musste ich hierbei mehrere Lösungen für verschiedene hürden finden.
1. Die Shadow VM bekommt eine Interne IP und z.B. Portforwarding ist nicht vorgesehen.
2. Shadow rät dringend von der Nutzung von VPN auf der VM ab
3. Der Einsatz von Admintools wie Nmap sind Organisatorisch untersagt
4. VM ist aber nicht reguliert, somit ist die Installation trozudem möglich
Somit war die erste überlegung TAP Treiber für OpenVPN zu werfen und dann jeweils einen Tunnel zu den einzelnen Standorten die ich anbinden will aufzusetzen.
Umsetzung – Client Installieren, Serverconfig erstellen, Zugriff von Netz auf Client zulassen, Server sagen, dass er dem Client immer die selbe IP geben soll, Config in Client werfen (jaja, ber webmail an mich selbst…), Tunnel aufmachen.
Als Letztes dem Steam Link die IP der Shadow VM mitteilen und los gehts.

Ergebnis: Steam übernimmt das Grabbing, Decodung und den Transport über VPN. Im Client ist eingestellt das Steam nicht im Big Picture Mode Starten soll & direkt zum Desktop gehen soll.

Hiermit ist dann ein vollständig normales Arbeiten möglich, wenn auch nur auf einem Monitor. In Zukunft wird es auch einen eigenen Shadow Client namens Ghost geben. Bleibt zu hoffen, dass dieser Dual Monitor fähig ist, bzw. zwei Anschlüsse besitzt um das Feature im Zweifel nachträglich reinzupatchen.

Praxistest auf einer Verantstaltung… Auf der Techweek Frankfurt funktionierte es, nachdem ich eine Static IP bekommen hatte, ebenso auf dem 35c3.
Dort sogar über WLAN, leider nicht überall wegen den vielen rogue AP’s in gewissen bereichen. Ansonsten geht genügend stabile!!! nutzbare Bandbreite durch um es sinnvoll zu nutzen.

IPFire OVPN N2N Knowledge

Kleinigkeit die ich beim Konfigurieren einer OpenVPN Verbindung mit IPFire herrausgefunden habe:

Problem:
OpenVPN – für Clients läuft auf 1234
OpenVPN – für N2N läuft auf 1234 und startet nicht

Lösung:
Anderen Port für jede N2N Verbindung nutzen.
Port muss über 1024 sein.