Freitag, 31. März 2017

Neuer Asset-HTTP Projekt Viewer erschienen

Am 30. März hat Linden Lab einen neuen Projekt Viewer auf der Wiki-Seite für alternative Viewer veröffentlicht. Heute gab es dazu noch eine Meldung im SL-Blog. Neben dem 64-Bit Viewer, dessen Fertigstellung sich länger hinzieht als gedacht, ist der Asset-HTTP Viewer technisch gesehen das interessanteste seit der Einführung von Bento.

Dieser Viewer ist auch gleichzeitig der Abschluss der HTTP- und CDN-Projekte, die Linden Lab vor vielen Jahren begonnen hat und dessen erste, signifikante Verbesserungen im Jahr 2014 eingeführt wurden. Vereinfacht ausgedrückt, ändert das HTTP-Projekt die Art, wie sich der Viewer seine Daten von den SL-Servern holt (auch Asset Server genannt). Vor dem HTTP-Projekt wurden alle Daten über das UDP-Verfahren zwischen Viewer und Server ausgetauscht. Das war langsam, fehleranfällig und einspurig. Mit dem HTTP-Pipelining werden dagegen mehrere Verbindungen parallel zwischen Viewer und Server aufgebaut und die Datenübertragung läuft wesentlich schneller ab.

In der ersten Stufe des Projekts, wurden die Objektdaten für Texturen auf HTTP umgestellt. In der zweiten Stufe die Objektdaten für Meshes. Nun folgen mit der letzten Stufe die Objektdaten für Landmarken, Sounddateien, Animationen und alle sogenannten Wearables. Das sind Shape, Skin, Augen, Systemkleidung und Gesten. Damit wird nun so gut wie alles, was sich im Inventar des Nutzers oder inworld auf einer Region befindet, über HTTP zum Viewer übertragen. Lediglich LSL-Skripte, Notecards und der Chat laufen noch weiterhin über UDP, was aber kaum ins Gewicht fallen dürfte.

Die zweite Verbesserung im aktuellen HTTP-Projekt, ist die Verlagerung des Übertragungswegs der HTTP-Daten. Beim UDP hat der Viewer eine Verbindung zum Simulator-Server aufgebaut (der Server der Region, auf der sich gerade der Avatar befindet) und der Simulator-Server hat dann die gewünschten Daten beim Asset-Server angefragt und zum Viewer weitergeleitet.

Mit dem HTTP-Verfahren lassen sich nun auch die oben erwähnten Objektdaten direkt über CDN herunterladen. Das sind Server im Internetnetzwerk, die Kopien der am häufigsten angeforderten Daten gespeichert haben. Da solche Server auf jedem Kontinent stehen (für Europa stehen sie meines Wissens in Amsterdam), bekommt der Viewer die Daten wesentlich schneller geliefert, da die Übertragungswege kürzer sind und die Verbindung meistens auch einen größeren Datendurchsatz hat.

Die Netzwerkstruktur von Second Life im Jahr 2015 / Quelle: Monty Linden
Die obere der beiden Verbindungen zum Sim Host, verläuft nun auch unten herum über das CDN-Verfahren.
Mit den oben angeführten Verbesserungen, soll die Performance im Viewer noch einmal ein gutes Stück besser werden. Das Inventar wird schneller geladen und die Inworld-Szenen im Sichtbereich des Viewers werden schneller aufgebaut. Da der Projekt Viewer bisher aber nur im kleinen Kreis getestet wurde, die CDN-Server aber weltweit verteilt sind, bittet Linden Lab technisch interessierte Nutzer darum, diesen Viewer mal eine Zeit lang auszuprobieren und bei Fehlern eine Meldung in der JIRA zu schreiben.

Nachdem der Code dieses Viewers in den offiziellen SL Viewer und in die wichtigsten TPVs übernommen wurde, wird dann nach einiger Zeit die Unterstützung des UDP Verfahrens für die entsprechenden Datentypen auf den Simulatoren abgeschaltet.


Downloads für den Second Life Project AssetHttp Viewer 5.0.4 (324828):
Windows | Macintosh | Linux


Release Notes:

Linden Lab Blogpost:

3 Kommentare:

  1. Dann wird es ja sicherlich in Kürze im Firestorm eingebaut.

    Die Niki

    AntwortenLöschen
    Antworten
    1. Das hängt davon ab, wie lange das ein Projekt Viewer bleibt. TPVs dürfen den Code erst übernehmen, wenn LL den Viewer zu einem Release Kandidaten macht.

      Löschen
    2. Es ist extrem fraglich ob es "kürzlich" in den Firestorm kommt. Soweit ich weiß haben sie alles übernommen was momentan ansteht, da das HTTP Project aber gerade erstmal in den Project Status gegangen ist bezweifle ich das sie es bereits haben (und wenn) es wohl kaum so schnell in den Release kommt, ich habe Jessica nicht sonderlich zugehört letztes mal aber sie sagte irgendwas von dem nächsten großen Release Kandidaten der wird möglichst einen halben Monat bis zu nem Monat nach dem offiziellen Release in dem Firestorm Release zu finden sein. Alles darüber hinaus wird sich wohl erstmal wieder auf mehrere Monate hinauszögern, besonders sowas wie das HTTP Projekt.

      Löschen