Flash XMLSocket Verbindungen
Wie im vorigen Beitrag berichtet ist die XMLSocket Klasse und die daraus resultierende Streaming Verbindung alles andere als flott.
Was ich noch schuldig bin, ist eine Erklärung für dieses Verhalten.
Flash verwendet für die Verbindung das TCP-Protokoll, was ja laut Spezifikation nicht schlecht wäre (gesicherte Übertragung der Pakete, sowie korrekte Reihenfolge). Der Nachteil zu UDP ist aber, dass dadurch die Übertragung der Pakete teilweise verzögert wird. So schließt man zwar ein falsches Paket aus, bzw. ein falsch sortiertes Paket, was aber nicht immer wünschenswert sein muss.
Denn eine Validierung der eingehenden Informationen ist weniger zeitkritisch als die Übertragungdauer für Echzeitanwendungen. Die Interpolationsmöglichkeiten die sich daraus wahrscheinlich ergeben würden, wären wesentlich zufriedenstellender als mit der auf TCP basierenden Verbindung.
Zu guter Letzt noch eine schlechte Nachricht. Laut ActionScript 3 Definition wird sich daran auch in naher und mittlerer Zukunft nichts ändern. In der Online Dokumentation wird das TCP Protokoll weiterhin als Grundlage angeführt.
Ein weiterer Punkt, der für eventuelle Latenzzeiten verantwortlich sein könnte ist nahezu auszuschließen. Es wurde eingeworfen das Java auch nicht das Flotteste sei und dadurch die Übertragung weiterhin verlangsamt werde. Dem ist meiner Meinung nach zu widersprechen, den eine Virtual Machine läuft ständig im Hintergrund und durch JustInTime - Compiling oft ausgeführter Befehle ist eigentlich davon auszugehen, dass die Java Applikation einer nativen Applikation nahezu ebenbürtig ist.
Vor allem bei Useranzahl = 2 beschränkt sich bei einem 40ms Zyklus die Anzahl der Funktionsaufrufe auf 4(dies waren die Testbedingungen für das Echtzeitsystem), was ein Klacks ist und sogar Flash in einer Zeit abwickeln würde, die nicht merkbar wäre.
Die Anzahl der verschickten Bytes entsprach 4 bzw. AnzahlUser * 4.
Der nächste Problempunkt stellt die Entfernung Client < -> Server dar. Eine Verbindung die über viele Netzknoten wandert verursacht natürlich auch eine Menge an Verzögerung die nicht geschätzt werden kann. Für eventuell funktionierende Interpolationslösungen wäre ich dankbar, aber immer mit dem Bewusstsein, dass die Anwendung bei 24fps keine merklichen Abweichungen aufweisen darf.
About this entry
You’re currently reading “Flash XMLSocket Verbindungen,” an entry on Hannes Moser
- Published:
- 09.04.06 / 8pm
- Category:
- Flash Platform, General Development, Webby Web










No comments
Jump to comment form | comments rss [?] | trackback uri [?]