Ein Beitrag hier:
http://blogs.adobe.com/dreamweaver/2011/02/optimal-css-tiled-background-image-size.html
staes dass "Der kleinste Download, den Browser ausführen können, ist 1 KB."
Liegt dies an der Mindestgröße eines Pakets im Netzwerk? Wenn nicht, was ist der Grund dafür (wenn es tatsächlich wahr ist)?
Antworten:
Paket ist hier ein mehrdeutiger Begriff, da es manchmal missbraucht wird, um auf verschiedene Elemente für Ihre Übertragung zu verweisen. Mal sehen, in was Ihre Daten eingepackt sind, und Sie werden sehen, was ich meine, und hoffentlich die Antwort erhalten, die Sie wollten:
Nehmen wir an, Sie senden 1 Byte Daten 1 über das Internet im TCP / IP-Modell .
Die Daten beginnen auf Anwendungsebene und müssen in Headern für die unteren Ebenen verpackt werden, damit sie weitergegeben werden können.
Zuerst werden diese Daten in ein TCP-Segment eingeschlossen , das einen Header von 20 Bytes hinzufügt (Mindestgröße jetzt 21 Bytes).
Dies bringt uns auf die Transportebene.
Dies wird dann in ein IP-Paket eingeschlossen , das einen weiteren Header von 20 Bytes hinzufügt (Mindestgröße jetzt 41 Bytes).
Jetzt sind wir auf Internetebene.
Beachten Sie, dass dieser Wrapping jedes Mal geändert wird, wenn ein neuer Router Ihre Daten an ein neues Subnetz weiterleitet.
Dies ist in einen Link- Frame eines bestimmten Typs eingeschlossen, dessen Kopf- und Fußzeile je nach Art des verwendeten Frames und je nach Art des verwendeten Links unterschiedlich ist.
Dies ist auf Verbindungsebene.
Diese Umhüllung wird jedes Mal geändert, wenn die Einheit zwischen zwei Entitäten übertragen wird.
Schließlich ist die physische Übertragung (z. B. elektrische Signale über ein Kabel, Funkwellen usw.).
Hier sind einige informative Bilder, die auf der Wikipedia TCP / IP-Modellseite verfügbar sind , um visuell zu erklären, was passiert:
1. Ich denke, Sie können möglicherweise 0 Bytes senden ... haben das aber nicht überprüft. Tatsächlich habe ich auch nicht überprüft, ob 1 Byte erlaubt ist, aber hey.
quelle
Das ist falsch, es gibt keine Mindestgröße für einen Download. Sie können dies überprüfen, indem Sie eine winzige Datei auf Ihrem Webserver erstellen und mit drahteshark den Netzwerkverkehr überwachen, wenn Sie diese Datei herunterladen.
Die Mindestgröße eines Standard-Ethernet-Pakets beträgt 64 Byte.
quelle
Auf den ersten Blick ist der Blog-Beitrag, aus dem Sie zitieren, falsch. Es gibt keine "minimale Downloadgröße" für HTTP. (Und Ihre Theorie über minimale Paketgrößen ist ebenfalls falsch.)
Dies ist jedoch ein Körnchen Wahrheit. Wenn die Größe der heruntergeladenen Datei klein genug ist, passt die HTTP-Antwortnachricht (bestehend aus der Datei und den HTTP-Antwortheadern) in ein einzelnes Netzwerkpaket. In diesem Fall wird der Browser die Datei wahrscheinlich schneller abrufen, als wenn zwei oder mehr Pakete zum Senden der Antwort erforderlich waren.
(Mit einem Paket in der Antwort besteht eine geringere Wahrscheinlichkeit, dass ein Paket verworfen wird und erneut gesendet werden muss, und eine größere Wahrscheinlichkeit, dass das TCP / IP-Flusssteuerungsfenster keine zusätzlichen Umlaufverzögerungen für die Paketbestätigung hinzufügt. )
Die typische maximale Größe eines gesendeten / empfangenen Pakets (MTU) beträgt 1500 Byte für Ethernet. Wenn Sie den IP- und TCP-Overhead und die Größe eines typischen HTTP-Antwortheaders berücksichtigen, bleiben möglicherweise ~ 1 KB für Dateidaten im ersten Paket einer Antwort übrig. Daher das Korn der Wahrheit im Kommentar des Bloggers.
quelle
Es ist schlimmer als du denkst.
Das langsame Laden der Seite ist darauf zurückzuführen, dass der Browser Probleme hat, das 1x1-Pixel 800000-mal zu rendern (z. B. für ein Browserfenster, das auf 1000x800 eingestellt ist). Vor vielen Jahren, vielleicht 1999, las ich irgendwo einen Artikel, in dem 16x16 als das 'schnellste' x kleinste zum Kacheln vorgeschrieben war. Natürlich kann das Rendern jetzt anders sein.
Wenn Sie den Blog-Beitrag lesen, geht es bei der Beschwerde tatsächlich um langsames Laden von Seiten. Nicht langsam herunterladen. Es hat nichts mit Paketen zu tun, obwohl es eine interessante Diskussion war.
Vielleicht sollte die Frage umformuliert werden.
quelle
size
" sowohl für Pixelabmessungen als auch für die Byteanzahl zu verwenden und diese zusammenzuführen. Ihre Erklärung ist sinnvoll, aber für die Anzahl der Bytes des Bildes irrelevant (im Gegensatz zu den Aussagen des Blogs).