html - descargar - gestor de descargas gratis
¿Cómo funcionan los aceleradores de descarga? (7)
Requerimos que todas las solicitudes de descargas tengan un inicio de sesión válido (que no sea http) y generamos tickets de transacción para cada descarga. Si tuviera que ir a uno de los enlaces de descarga e intentar "reproducir" la transacción, usamos códigos HTTP para reenviarlo y obtener un nuevo ticket de transacción. Esto funciona bien para la mayoría de los usuarios. Sin embargo, hay un pequeño subconjunto que está utilizando Aceleradores de descarga que simplemente intentan reproducir el ticket de la transacción varias veces.
Por lo tanto, para determinar si queremos o podemos admitir aceleradores de descarga o no, estamos intentando comprender cómo funcionan.
¿De qué manera tener una segunda, tercera o incluso cuarta conexión simultánea al servidor web que entrega un archivo estático acelera el proceso de descarga?
¿Qué hace el programa acelerador?
Creo que la idea es que muchos servidores limitan o distribuyen uniformemente el ancho de banda a través de las conexiones. Al tener múltiples conexiones, estás engañando ese sistema y obteniendo más que tu parte "justa" de ancho de banda.
Cita: la forma más común de acelerar las descargas es abrir descargas parllel. Muchos servidores limitan el ancho de banda de una conexión, por lo que abrir más en paralelo aumenta la velocidad. Esto funciona al especificar un desplazamiento que debe comenzar una descarga compatible con HTTP y FTP.
Por supuesto, esta forma de aceleración es bastante "antisocial". La limitación del ancho de banda se implementa para poder servir a un mayor número de clientes, por lo que el uso de esta técnica reduce el número máximo de pares que pueden descargar. Esa es la razón por la cual muchos servidores están limitando el número de conexiones paralelas (reconocidas por IP), por ejemplo, muchos servidores FTP hacen esto para que tenga problemas si descarga un archivo y trata de continuar navegando con su navegador. Técnicamente estas son dos conexiones paralelas.
Otra técnica para aumentar la velocidad de descarga es una red punto a punto en la que se utilizan distintas fuentes, por ejemplo, limitadas por DSL asíncrona en la parte de carga para la descarga.
La mayoría de los ''aceleradores'' de descarga realmente no aceleran nada en absoluto. Lo que hacen bien es congestionar el tráfico de la red, golpear su servidor y romper scripts personalizados como lo ha visto. Básicamente, cómo funciona es que en lugar de hacer una solicitud y descargar el archivo de principio a fin, hace, por ejemplo, cuatro solicitudes ... la primera descarga de 0-25%, la segunda de 25-50%, y así sucesivamente, y los hace a todos al mismo tiempo. El único caso particular en el que esto ayuda es si su ISP o firewall realiza algún tipo de configuración de tráfico de modo que una velocidad de descarga individual se limite a menos de su velocidad de descarga total.
Personalmente, si te está causando problemas, diría que solo notificas que los aceleradores de descarga no son compatibles, y haces que los usuarios los descarguen normalmente o que solo usen un solo hilo.
No lo hacen, en general.
Para responder al contenido de su pregunta, la suposición es que el servidor limita las descargas por conexión, por lo que la descarga simultánea de múltiples segmentos permitirá al usuario aprovechar al máximo el ancho de banda disponible en su extremo.
Se trata de la Ley de Little . Específicamente, cada flujo al servidor web está viendo una cierta cantidad de latencia TCP y, por lo tanto, solo transportará tantos datos. Trucos como aumentar el tamaño de la ventana TCP e implementar acks selectivos ayudan, pero están mal implementados y generalmente causan más problemas de los que resuelven.
Tener múltiples flujos significa que la latencia vista por cada flujo es menos importante a medida que el rendimiento global aumenta en general.
Otra ventaja clave con un acelerador de descargas incluso cuando se usa un único hilo es que generalmente es mejor que usar los navegadores web integrados en la herramienta de descarga. Por ejemplo, si el navegador web decide morir, la herramienta de descarga continuará. Y la herramienta de descarga puede admitir funcionalidades como pausar / reanudar que el navegador incorporado no tiene.
Según entiendo, uno de los métodos que utilizan los aceleradores de descarga es abrir muchas conexiones TCP paralelas: cada conexión TCP solo puede ir tan rápido y, a menudo, está limitada por el lado del servidor.
El TCP se implementa de manera que si se produce un tiempo de espera, el período de tiempo de espera se incrementa. Esto es muy efectivo para evitar sobrecargas de red, a costa de la velocidad en conexiones TCP individuales.
Los aceleradores de descarga pueden evitar esto abriendo docenas de conexiones TCP y eliminando las que disminuyen por debajo de un cierto umbral, y luego abriendo nuevas para reemplazar las conexiones lentas.
Si bien es efectivo para un solo usuario, creo que es una mala etiqueta en general.
Está viendo que el acelerador de descargas intenta volver a autenticarse con el mismo ticket de transacción. Recomiendo ignorar estas solicitudes.
Obtendrá una descripción más completa de los aceleradores de descarga en wikipedia .
La aceleración es multifacética
primero
Un beneficio sustancial de las descargas administradas / aceleradas es que la herramienta en cuestión recuerda las compensaciones de inicio / detención transferidas y usa encabezados "parciales" y de "rango" para solicitar partes del archivo en lugar de todo.
Esto significa que si algo muere a mitad de una transacción (es decir, el tiempo de espera de TCP), simplemente vuelve a conectarse donde lo dejó y no tiene que comenzar desde cero.
Por lo tanto, si tiene una conexión intermitente, el tiempo total de transferencia se reduce en gran medida.
Segundo
Descargar aceleradores como para dividir una sola transferencia en varios segmentos más pequeños de igual tamaño, utilizando la misma mecánica start-range-stop, y realizarlos en paralelo, lo que mejora enormemente el tiempo de transferencia en redes lentas.
Hay una cosa molesta llamada ancho de banda-producto-producto donde el tamaño de los búfers TCP en ambos extremos hace algo de matemática junto con el tiempo de ping para obtener la velocidad real, y esto en la práctica significa que los ping grandes limitarán tu velocidad sin importar cómo muchos megabits / seg tienen todas las conexiones provisionales.
Sin embargo, esta limitación parece ser "por conexión", por lo que las conexiones TCP múltiples a un único servidor pueden ayudar a mitigar el impacto de rendimiento del tiempo de ping de alta latencia.
Por lo tanto, las personas que viven cerca no son tan propensas a necesitar una transferencia segmentada, pero las personas que viven en lugares lejanos tienen más probabilidades de beneficiarse de enloquecer con su segmentación.
En tercer lugar
En algunos casos, es posible encontrar varios servidores que brindan el mismo recurso, a veces una sola dirección DNS hace una ronda de petirrojos en varias direcciones IP, o un servidor es parte de una red espejo de algún tipo. Y los administradores / aceleradores de descarga pueden detectar esto y aplicar la técnica de transferencia segmentada a través de múltiples servidores, lo que permite que el programa de descarga obtenga más ancho de banda colectivo.
Apoyo
Apoyar el primer tipo de aceleración es lo que personalmente sugiero como un "mínimo" de apoyo. Principalmente, porque hace que la vida de los usuarios sea más fácil, y reduce la cantidad de transferencia de datos agregados que debe proporcionar debido a que los usuarios no tienen que buscar el mismo contenido repetidamente.
Y para facilitar esto, se lo recomendó, calcule cuánto han transferido y no vencen el ticket hasta que se vean "finalizados" (mientras vinculan el tráfico al primer IP que usó el ticket), o un tiempo "razonable" dado para descargar ha pasado es decir: darles una ventana de gracia antes de exigirles que obtengan un nuevo boleto.
Apoyar el segundo y el tercero le dan puntos de bonificación, y los usuarios generalmente lo desean al menos el segundo, principalmente porque a los clientes internacionales no les gusta ser tratados como clientes de segunda clase simplemente por el mayor tiempo de ping, y no consume más objetivamente ancho de banda en cualquier sentido que importe. Lo peor que puede pasar es que podrían hacer que su rendimiento total no sea deseable para el funcionamiento de su servicio.
Es razonablemente sencillo ofrecer el primer tipo de beneficio sin permitir el segundo simplemente restringiendo el número de transferencias concurrentes desde un único ticket.