The Wonder Shaper

Software captura de pantalla:
The Wonder Shaper
Detalles de software:
Versión: 1.1a
Fecha de carga: 2 Jun 15
Promotor: Bert Hubert
Licencia: Libre
Popularidad: 32

Rating: nan/5 (Total Votes: 0)

El Shaper Wonder es un script muy especial shaper red con un montón de características. Funciona en Linux 2.4 y superior.
Objetivos
Traté de crear el santo grial:
* Mantener baja latencia para el tráfico interfactive en todo momento.
Esto significa que la descarga o subiendo archivos no deben molestar a SSH o incluso telnet. Estas son las cosas más importantes, incluso la latencia de 200ms es lento para trabajar más.
* Permitir 'surf' a velocidades razonables mientras arriba o descargar
A pesar de que es el tráfico http 'mayor', el resto del tráfico no debería ahogarlo demasiado.
* Asegúrese de que los envíos no dañan las descargas y al revés
Se trata de un fenómeno mucho observada en la que el tráfico de subida destruye la velocidad de descarga. Resulta que todo esto es posible, a costa de una pequeña cantidad de ancho de banda. La razón de que archivos, descargas y ssh heridos entre si es la presencia de grandes colas en muchos dispositivos de acceso nacionales como cable o DSL módems.
¿Por qué no funciona bien por defecto
ISP saben que están referenciadas únicamente en cómo la gente rápidos pueden descargar. Además de ancho de banda disponible, la velocidad de descarga es influenciada en gran medida por la pérdida de paquetes, lo que dificulta seriamente el rendimiento de TCP / IP. Grandes colas pueden ayudar a prevenir la pérdida de paquetes, y la velocidad de las descargas. Así ISPs configuran grandes colas.
Estas grandes colas dañan la interactividad sin embargo. Un golpe de teclado debe primero recorrer la cola de aguas arriba, que puede ser segundos (!) De largo y vaya a su anfitrión remoto. A continuación se muestra, lo que conduce a un paquete que viene de atrás, que luego debe recorrer la cola aguas abajo, que se encuentra en su ISP, antes de que aparezca en la pantalla.
Este COMO enseña cómo Mangle y procesar la cola de muchas maneras, pero tristemente, no todas las colas son accesibles a nosotros. La cola más en el ISP está completamente fuera de los límites, mientras que la cola de aguas arriba, probablemente vive dentro de su módem de cable o DSL dispositivo. Usted puede o no ser capaz de configurarlo. Lo más probable es que no.
Así que, ¿qué sigue? Como no podemos controlar ninguna de esas colas, deben ser eliminados, y se trasladó a su router Linux. Por suerte esto es posible.
Límite de velocidad de subida un poco
Limitando nuestra velocidad de subida a un poco menos de la tasa realmente disponibles, sin colas se construyen en nuestro módem. La cola se mueve ahora a Linux.
Límite de velocidad de descarga
Esto es un poco más complicado ya que no podemos realmente influir en la rapidez con los EE.UU. buques de Internet de datos. Sin embargo, podemos descartar los paquetes que están llegando demasiado rápido, lo que hace que TCP / IP para reducir la velocidad a poco el ritmo que queremos. Porque no queremos descartar tráfico innecesariamente, configuramos un tamaño 'reventar' permitimos a mayor velocidad.
Ahora, una vez que hemos hecho esto, hemos eliminado la cola aguas abajo por completo (a excepción de las explosiones cortas), y tener la capacidad de gestionar la cola de aguas arriba con todo el poder de Linux ofrece.
Deje que el tráfico interactivo saltar la cola
Lo que queda por hacer es asegurarse de que el tráfico interactivo salta al principio de la cola en sentido ascendente. Para asegurarse de que los archivos subidos no duelen descargas, también avanzamos paquetes ACK al frente de la cola. Esto es lo que normalmente hace que el enorme desaceleración observada cuando la generación de tráfico a granel en ambos sentidos. Los Reconocimientos de tráfico de bajada deben competir con el tráfico de subida, y se les retraso en el proceso.
También nos movemos otros paquetes pequeños en la parte delantera de la cola - esto ayuda a los sistemas operativos que no se establecen los bits de TOS, como todo lo de Microsoft.
Permitir al usuario especificar el tráfico de baja prioridad (nuevo en 1.1!)
A veces es posible que observe el tráfico de salida de baja prioridad ralentizar el tráfico importante. En ese caso, las siguientes opciones pueden ayudarle a:
NOPRIOHOSTSRC
Ajústelo a hosts o máscaras de red en su red que debe tener prioridad baja
NOPRIOHOSTDST
Ajústelo a hosts o máscaras de red en Internet que deben tener prioridad baja
NOPRIOPORTSRC
Ajústelo a puertos de origen que deben tener prioridad baja. Si tiene un servidor web sin importancia en el tráfico, ajústelo a 80
NOPRIOPORTDST
Ajústelo a los puertos de destino que deben tener prioridad baja.
Ver el comienzo de wshaper y wshaper.htb
Resultados
Si hacemos todo esto obtenemos las siguientes mediciones con una excelente conexión ADSL de xs4all en los Países Bajos:
Latencia Línea de base:
de ida y vuelta min / avg / max = 14,4 / 17,1 / 21,7 ms
Sin acondicionador de tráfico, mientras que la descarga:
de ida y vuelta min / avg / max = 560,9 / 573,6 / 586,4 ms
Sin acondicionador de tráfico, mientras que la posibilidad de subir:
de ida y vuelta min / avg / max = 2041.4 / 2332.1 / 2427.6 ms
Con acondicionador, durante la carga 220kbit / s:
de ida y vuelta min / avg / max = 15,7 / 51,8 / 79,9 ms
Con acondicionador, durante 850kbit / s de descarga:
de ida y vuelta min / avg / max = 20,4 / 46,9 / 74,0 ms
Al subir, descargas proceden en ~ 80% de la velocidad disponible. Subidas en torno al 90%. Latencia luego salta a 850 ms, siendo averiguar por qué.
Lo que se puede esperar de este script depende mucho de su velocidad de subida real. Al subir a toda velocidad, siempre habrá un único paquete por delante de su golpe de teclado. Ese es el límite inferior de la latencia se puede lograr - dividir su MTU por su velocidad de subida de calcular. Los valores típicos serán algo más altos que eso. Baja la MTU para obtener mejores efectos!
Una pequeña mesa:
Velocidad de subida | esperado latencia debido a subir
--------------------------------------------------
32 | 234ms
64 | 117ms
128 | 58ms
256 | 29ms
Así que para calcular su latencia efectiva, realizar una medición de línea de base (ping en un enlace de carga), y buscar el número en la tabla, y añadirlo. Eso es lo mejor que se puede esperar. Este número proviene de un cálculo que asume que su golpe de teclado aguas arriba tendrá como máximo la mitad de un paquete de tamaño completo por delante.
Esto se reduce a:
   mtu * 0.5 * 10
   -------------- + Baseline_latency
       kbit
El factor de 10 no es del todo correcto, pero funciona bien en la práctica.
Su núcleo
Si ejecuta una distribución reciente, todo debería estar bien. Necesitas 2.4 con opciones de calidad de servicio activado.
Si compila su propio núcleo, debe tener algunas opciones activadas. En particular, en el menú Opciones de red, QoS y / o Feria de colas, a su vez, al menos, CBQ, PRIO, SFQ, ingreso, Tráfico Vigilancia, soporte QoS, Tasa Estimador, QoS clasificador, clasificador U32, clasificador fwmark.
En la práctica, yo (y la mayoría de las distribuciones) simplemente enciendo todo.
Las secuencias de comandos
El guión se presenta en dos versiones, una que trabaja en núcleos estándar y se implementa mediante CBQ. El otro utiliza la excelente qdisc HTB que no está en el núcleo predeterminado. La versión CBQ está más probado que el HTB uno!
Ver 'wshaper' y 'wshaper.htb'.
Sintonización
Estos scripts necesitan saber la tasa "real" de su conexión ISP. Esto es difícil de determinar por adelantado como diferentes ISPs utilizan diferentes tipos de bits que aparece. Las personas informan éxito usando la siguiente técnica:
Estimar tanto sus aguas arriba y aguas abajo en la mitad de la tasa especifique el ISP. Ahora verificar si el guión está funcionando - comprobar la interactividad al cargar y al descargar. Esto debe entregar la latencia según lo calculado anteriormente. Si no es así, compruebe si el script ejecutado sin errores.
Ahora poco a poco aumentar el número de aguas arriba y aguas abajo en el guión hasta que la latencia regresa. De esta manera usted puede encontrar los valores óptimos para su conexión. Si usted es feliz, por favor repórtelo a mí para que yo pueda hacer una lista de los números que funcionan bien. Por favor, hágamelo saber qué ISP que utiliza y el nombre de su suscripción, y sus especificaciones de renombre, así que puedo enumerar aquí y salvar a otros el problema.
Instalación
Si marca, puede copiar la secuencia de comandos para /etc/ppp/ip-up.d y se llevará a cabo en cada conexión.
Si desea eliminar la talladora de una interfaz de gestión 'parada wshaper'. Para ver la información de estado, ejecute 'wshaper estado ".
PROBLEMAS CONOCIDOS
Si obtiene errores, agregar un -x a la primera línea, de la siguiente manera:
#! / Bin / bash -x
Y vuelva a intentarlo. Esto le mostrará qué línea da un error. Antes de ponerse en contacto conmigo, asegúrese de que está ejecutando una versión reciente de iproute!
Las versiones recientes se pueden encontrar en su distribuidor de Linux, o si usted prefiere compilar, aquí:
 ftp://ftp.inr.ac.ru/ip-routing/iproute2-current.tar.gz

Otro software de desarrollador Bert Hubert

Comentarios a la The Wonder Shaper

Comentarios que no se encuentran
Añadir comentario
A su vez en las imágenes!