Hacer navegadores basados en texto, tales como el lince , enlaces y Resultados de enlaces consumen ancho de banda menor que un navegador basado en interfaz gráfica de usuario (es decir, Firefox, Chrome, etc.)?
Estoy adivinando ninguna reducción en el tráfico.
Justificación: Creo que un navegador basado en texto descarga toda la página tal como la ofrece el servidor. Cualquier racionalización o reducción de widgetry de página se realiza localmente.
Tal vez haya una reducción en el tráfico, ya que la mayoría de los navegadores basados en texto no ejecutarán scripts de página o SWF, lo que podría causar más tráfico.
Respuestas:
El servidor web no envía "todo el sitio web", sino los documentos que solicitan los navegadores.
Por ejemplo, cuando accede a https://www.google.com/, el navegador consulta el servidor para el documento
https://www.google.com/
. El servidor procesa la solicitud y devuelve un código HTML.Luego, el navegador verifica lo que el servidor ha enviado. En este caso, es una página web HTML, por lo que analiza el documento y busca guiones, hojas de estilo, imágenes, fuentes, etc.
En esta etapa, el navegador ha terminado de descargar ese documento, pero aún no ha descargado los documentos de referencia. Puede elegir hacerlo o saltearlos. Los navegadores regulares intentarán descargar todos los documentos referenciados para una mejor experiencia de visualización. Si tiene un bloqueador de anuncios (como Adblock) o un complemento de privacidad (Ghostery, NoScript), también puede bloquear algunos recursos.
Luego, el navegador descarga los documentos de referencia uno por uno, cada vez que solicita explícitamente al servidor un solo recurso. En nuestro ejemplo de Google, el navegador encontrará las siguientes referencias, solo por nombrar algunas:
(los archivos reales pueden ser diferentes para diferentes usuarios, navegadores y sesiones y pueden cambiar con el tiempo)
Los navegadores basados en texto no descargan imágenes, archivos Flash, videos HTML5, etc., por lo que descargan menos datos.
@NathanOsman hace un buen punto en los comentarios: a veces, las imágenes pequeñas se incrustan directamente en documentos HTML y, en esos casos, no se puede evitar descargarlas. Este es otro truco utilizado para reducir el número de solicitudes. Sin embargo, son muy pequeños, de lo contrario, la sobrecarga de codificación de archivos binarios en base64 es demasiado grande. Hay pocas imágenes de este tipo en Google.com: ( tamaño codificado base64 / tamaño decodificado )
fuente
data:
).Sospecho que lo hacen. No creo que los navegadores basados en texto descarguen (por defecto) recursos como imágenes o entidades externas, como fuentes (si es necesario), scripts, etc.
Hice algunas pruebas básicas con tcpdump tratando de obtener esta página de IANA ( http://www.iana.org/domains/reserved ) con lynx y luego wget, y aquí estaban mis resultados (solo comandos HTTP, puedo proporcionar el resto si es necesario).
lynx http://www.iana.org/domains/reserved
wget -p http://www.iana.org/domains/reserved
Así que me doy cuenta de que esta no es una gran prueba, ya que
wget
puede descargar recursos que un navegador podría no descargar, pero creo que el ejemplo es válido: se requieren muchas más solicitudes para representar el contenido en un navegador GUI. Como tal, los navegadores GUI generalmente causarán más tráfico de red que los navegadores basados en texto.fuente
wget
pueda considerarse un navegador. Mejor prueba conelinks
o algo similar.wget
demostrar todas las solicitudes y respuestas HTTP que se realizarán. El-p
parámetro se define como la siguiente:-p, --page-requisites get all images, etc. needed to display HTML page.
. No quería usar un navegador GUI real, ya que tienden a hacer otras solicitudes que no quería tener que filtrar.Creo que los navegadores basados en texto reducirán significativamente la cantidad de datos transferidos, ya que no solicitarán todas esas imágenes, videos y cosas interactivas de alta resolución web 2.0 hinchadas (Flash y otros).
Le sugiero que pruebe esto configurando una regla de IPtables que contará la cantidad de tráfico que llega a una regla específica de IPtables.
Por ejemplo, cree una regla para el puerto 80 + 443 con conteo de tráfico y navegue por la web con un navegador normal, restablezca el contador de IPtables y haga lo mismo con un navegador basado en texto.
Tenga en cuenta que no puede comparar ambas ejecuciones al 100% porque el contenido web dinámico (anuncios y demás) puede variar en cada acceso.
fuente