Det er ingen tvil om at dagens websider er fulle av rikt innhold og bruker mer båndbredde for å laste opp fullstendig, men ville bruk av en tekstbasert nettleser i stedet for en GUI-basert en gjøre en betydelig forskjell i å redusere nettverkstrafikk? Dagens SuperUser-spørsmål og svar har svarene på en nysgjerrig leserspørsmål.
Dagens spørsmål og svar-økt kommer til oss med tillatelse fra SuperUser - en underavdeling av Stack Exchange, en samfunnsdrevet gruppe av spørsmål og svar-nettsteder.
Lynx Browser-skjermbilde med tillatelse fra Wikipedia .
Spørsmålet
SuperUser-leser Paulb vil vite om tekstbaserte nettlesere faktisk kan redusere nettverkstrafikk:
Gjør tekstbaserte nettlesere som Lynx , Lenker , og ELinks forbruker mindre båndbredde enn GUI-baserte nettlesere som Firefox, Chrome og Internet Explorer?
Jeg antar at det ikke er noen reduksjon i trafikken. Begrunnelsen for dette er at jeg tror en tekstbasert nettleser laster ned hele siden slik den tilbys av serveren. Enhver effektivisering eller reduksjon av sidemodulen gjøres lokalt.
Kanskje det er en viss reduksjon i trafikken, ettersom de fleste tekstbaserte nettlesere ikke utfører sideskript eller flash-filer, noe som kan føre til mer trafikk.
Kan tekstbaserte nettlesere utgjøre en merkbar forskjell i å redusere nettverkstrafikk?
Svaret
SuperUser-bidragsyter gronostaj har svaret for oss:
Webserveren sender ikke hele nettstedet, men dokumenter som nettlesere ber om. For eksempel når du åpner google.com, spør nettleseren webserveren for dokumentet google.com. Webserveren behandler forespørselen og sender litt HTML-kode tilbake.
Deretter sjekker nettleseren hva webserveren har sendt. I dette tilfellet er det en HTML-webside, så den analyserer dokumentet og ser etter refererte skript, stilark, bilder, skrifter osv.
På dette stadiet er nettleseren ferdig med å laste ned originaldokumentet, men har fortsatt ikke lastet ned de refererte dokumentene. Det kan velge å gjøre det eller hoppe over nedlasting. Vanlige nettlesere vil prøve å laste ned alle refererte dokumenter for å få den beste seeropplevelsen. Hvis du har en annonseblokkering ( som Adblock Plus ) eller et personverntillegg ( som Ghostery eller NoScript ), så kan det også blokkere noen ressurser.
Deretter laster nettleseren ned de refererte dokumentene en etter en, hver gang webserveren eksplisitt ber om en enkelt ressurs. I vårt Google-eksempel finner nettleseren følgende referanser ( bare for å nevne noen av dem ):
- https://www.google.com/images/srpr/logo11w.png (Google Logo)
- https://www.google.com/textinputassistant/tia.png (Tastaturikon)
- https://ssl.gstatic.com/gb/images/i1_3d265689.png (Noen kombinerte bilder, et triks som brukes til å redusere antall nettleserforespørsler.)
De faktiske filene kan være forskjellige for forskjellige brukere siden nettlesere og økter kan endres over tid. Tekstbaserte nettlesere laster ikke ned bilder, Flash-filer, HTML5-video osv., Så de laster ned mindre data.
@NathanOsman lager en godt poeng i kommentarene . Noen ganger er små bilder innebygd direkte i HTML-dokumenter, og i slike tilfeller kan nedlasting ikke unngås. Dette er et annet triks som brukes til å redusere antall forespørsler. De er imidlertid veldig små, ellers er kostnadene ved å kode en binær fil i base64 for store. Det er få slike bilder på google.com ( base64 kodet størrelse / dekodet størrelse ):
- 19 × 11 piksler tastaturikon (106 Bytes / 76 Bytes)
- 28 × 38 piksler mikrofonikon (334 byte / 248 byte)
- 1 × 1 piksel Transparent GIF (62 Bytes / 43 Bytes) Den vises i Google Chrome Dev Tools Resources-fanen, men jeg kunne ikke finne den i kildekoden (sannsynligvis lagt til senere med JavaScript).
- 1 × 1 piksel Korrupt GIF-fil som vises to ganger. (34 Bytes / 23 Bytes) Hensikten er et mysterium for meg.
Har du noe å legge til forklaringen? Lyd av i kommentarene. Vil du lese flere svar fra andre teknologikyndige Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her .