next up previous contents
Siguiente: Instalación y Configuración Subir: HTB Anterior: Base teórica de HTB   Índice General

Guia de usuario

En este apartado vamos a ver como crear unas reglas sencillas para controlar el tráfico en una interfaz de red. En este caso la interfaz elegida será la eth0. Hay que tener en cuenta que el tráfico que se controla es el tráfico de salida de la interfaz. Es posible controlar el envio de paquetes, ya que se puede retrasar el envío de unos para beneficiar el envio de otros. La recepción de paquetes no se puede controlar, y por tanto el tráfico entrante en la interfaz tampoco. En el ejemplo vamos a crear una clase raiz de la que descienden dos clases. Lo primero que hay que hacer es asociar una clase padre a una interfaz. Para hacer esto se usa el comando: tc qdisc add dev eth0 root handle 1: htb default 2 Este comando asocia a la interfaz eth0 una disciplina de colas HTB y le asigna el manejador 1. El manejador es sólo un nombre o identificador para referirse a la clase en los siguientes comandos. ''default 2'' significa que el tráfico que no coincida con ningún filtro irá la clase 1:2A.12. Con los siguientes comandos se crean tres clases: tc class add dev eth0 parent 1: classid 1:1 htb rate 100kbps ceil 100kbps
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 30kbps ceil 100kbps
tc class add dev eth0 parent 1:1 classid 1:11 htb rate 10kbps ceil 100kbps
La primera línea crea la clase raiz 1:1 que pertenece a la disciplina de colas 1:. La clase raíz permite que sus hijos puedan compartir el ancho de banda entre ellos, pero la clase raíz no lo puede compartir con otra. Se podrían crear todas las clases que quiesiéramos bajo la disciplina de colas 1: pero el exceso de ancho de banda de una clase no estaría disponible para el resto, entonces lo que se hace es crear una clase raíz bajo la disciplina de colas htb, y el resto son hijas de esta clase raíz. Así que con las líneas anteriores hemos creado una clase raíz y dos clases que dependen de ésta. Las dos clases hijas pueden compartir el ancho de banda que no usen entre ellas. Los parámetros rate y ceil tienen el siguiente significado:
Además de estos parámetros hay otros dos que merece la pena destacar: Para asignar una dispciplina de colas a cada una de estas clases hoja o finales se usa el comando: tc qdisc del dev eth0 parent 1:10 handle 10 sfq perturb 10 tc qdisc del dev eth0 parent 1:12 handle 12 sfq perturb 10 Hemos asignado una disciplina sfq, que es la que recomienda el autor de HTB. Esta disciplina de colas Stochastic Fairness Queueing es una una implementación sencilla de la familia de algoritmos de colas justas. Hace un reparto equitativo entre todos el tráfico que pertenece a dicha clase. Hay que asignar qué paquetes corresponden a cada clase, para esto se utiliza el comando: tc filter dev eth0 protocol ip parent 1:0 prio 1 u32 $filtro donde filtro puede ser muchas cosas, y en particular se puede indicar:
next up previous contents
Siguiente: Instalación y Configuración Subir: HTB Anterior: Base teórica de HTB   Índice General
Jesús Martín 2003-09-16
e-REdING. Biblioteca de la Escuela Superior de Ingenieros de Sevilla.


SISTEMA DE CONTROL, TARIFICACIÓN Y ADMINISTRACIÓN DEL ACCESO A INTERNET DESDE REDES HETEROGÉNEAS

: Martín Ruiz, Jesús
: Ingeniería Telecomunicación
Contenido del proyecto: