Benutzer fruli schrieb:
Hi,
der Unterschied zwischen der Geschwindigkeit bei umfangreichen Downloads und der Geschwindigkeit beim Surfen auf Websites mit vielen Bildern/Elementen liegt vor allem darin, dass bei Downloads die extrem hohe Latenz von EDGE/GPRS im Bereich von bis zu einer halben Sekunde keine Rolle spielt während sich diese hohe Latenz beim Surfen auf Seiten mit vielen Elementen potenziert auswirkt: für jedes Bild/Script/Element einer Webseite wird ein http-Request fällig - und die 0,5-Sekunden-Reaktionszeit schlägt daher bei jedem Request voll durch - selbst wenn einige http-Requests parallel ablaufen (wie viele parallel ablaufen kann man z.B. in den Netzwerk-Einstellungen von Opera konfigurieren), bedeutet das bei umfangreichen Webseiten doch eine merkliche Verzögerung bis die Seite komplett geladen ist.
So long.
fruli
Hi fruli,
in Deiner Aussage sehe ich keinen (großen) Widerspruch zu meiner Aussage. Du hast nur andere Worte benutzt.
An Deiner Darstellung stören mich nur folgende Dinge:
1) Die HTTP-Requests sind vollkommen unerheblich und wirken sich nicht aus. Was sich aber (durch die Latenz) auswirkt, sind TCP-Sessions. Normalerweise führt (ohne "Persistent Connections") jeder HTTP-Request auch zu einer neuen TCP-Session und wenn Du das als gegeben vorausgesetzt hast, dann stimmt die Aussage.
Genau hier kommen auch die Persistent Connections ins Spiel: TCP-Sessions werden einfach "recycled" und innerhalb einer TCP-Session werden mehrere HTTP-Requests abgesetzt und vom Server beantwortet. Dies setzt allerding voraus, daß 1) HTTP1.1 eingesetzt wird und 2) sowohl Server, wie auch Client Persistent Connections unterstützen.
2) Ob parallele HTTP-Requests genutzt werden, hängt vom Browser ab und das geht nur, wenn er Multi-Threading unterstützt (entzieht sich meiner Kenntnis, welcher Browser MT unterstützt().
3) Die hohe Latenz wirkt sich natürlich auch beim (größeren) Download aus. Er wird vom Benutzer nur nicht merklich wahrgenommen. Der HTTP-Server schickt die TCP-Pakete nämlich auf die Leitung und wartet nicht nach jedem Paket auf ein ACK durch den Client (was stark latenzbehaftet geschickt wird).
4) Die DNS-Anfragen sollten natürlich auch nicht in Vergessenheit geraten, auf die sich die Latenz auch auswirkt. Die sorgen nämlich gravierend dafür, daß bevor auch nur die ersten Daten vom Server kommen und der Client irgendwas zum rendern bekommt, auf die DNS-Anfrage gewartet werden muß. Dieser Vorgang kann schonmal einige Sekunden dauern (ebenfalls dank der hohen Latenz).