Sei sulla pagina 1di 3

WebHTB PRCTICO

Gestin del trfico de red con WebHTB

CONTROL DEL TRFICO

Paulus Rusyanto, Fotolia.com

Mostramos cmo WebHTB permite gestionar el ancho de banda de una red a travs de una interfaz de navegador conveniente. POR RAZVAN-TEODOR

COLOJA
a mayora de las mquinas estn configuradas de modo que toman todo el ancho de banda que les permite su hardware. Pero las tcnicas predeterminadas para la comparticin del ancho de banda entre varios sistemas de una red local son a veces inadecuadas cuando el volumen de trfico crece. Muchos administradores encuentran un mejor rendimiento (y un menor nmero de quejas por parte de sus usuarios) imponiendo un sistema que se encargue de limitar el uso individual del ancho de banda. Por ejemplo, imaginemos lo que pasara si varios de los sistemas de una red local comenzasen a descargar simultneamente pelculas desde sitios de descarga torrent, llegando hasta el 98 por ciento de la capacidad de descarga y de

subida totales. El resto de los usuarios de Esta herramienta (Figura 1) consiste en un la red se quejara, y con razn. Nosotros, conjunto de archivos PHP con los que como administradores de dicha red, tenpodemos asignar el ancho de banda a tradramos que invertir un tiempo precioso vs de una interfaz web basada en PHP y en diagnosticar el problema y responder a AJAX. WebHTP nos permite limitar el las quejas. Por qu no dejar que un sisancho de banda en direcciones IP externas tema automtico se imponga y gestione el e internas y gestionarlo en direcciones ancho de banda, resolviendo este tipo de SNAT (Secure Network Address incidencias? Translation). Por desgracia, las herramientas que nos permiten aprovechar la funcionalidad de QoS (Quality of Service) del kernel Linux suelen ser difciles de instalar y configurar, adems las mejores suelen requerir que recompilemos el kernel. El paquete HTB-tools [1] es una herramienta estndar de Linux para limitar el uso del ancho de banda. A pesar de que requiere un buen nmero de clculos, as como lidiar con archivos de control, podemos afinar la configuracin HTB-tools de modo que se ajuste a las necesidades de nuestra red. Una Figura 1: La ventana principal de WebHTB muestra las alternativa sencilla para la mquinas cliente y sus lmites de ancho de banda. El gestin del flujo del trfico de administrador puede ver y editar fcilmente los valores de nuestra red local es WebHTB. cada mquina de la red.

WWW.LINUX- MAGAZINE.ES

Nmero 52

47

PRCTICO WebHTB

config/config.php en la raz Antes de poder empezar a usar WebHTB, del servidor web. Este necesitamos activar varios mdulos del archivo contiene la kernel y recompilarlo. Primero, aadimos configuracin de WebHTB a la configuracin del kernel los mdulos y debera ser comprobado HTB (Hierarchical Token Bucket), SFQ (Stoal finalizar la instalacin. chastic Fairness Queuing), FW Netfilter Una vez realizada la mask (FW) y U32 (Universal 32-bit). Adeparte ms dura, iniciamos ms, hay que activar el soporte para marel servidor web, nos dirigicado de netfilter y la clave U32. Luego insmos a http://127.0.0.1/ talamos iproute2 junto con un servidor webhtb/setup y seguimos web que soporte SSL 2.8 (Apache, por los pasos del instalador de ejemplo), as como soporte para MySQL, WebHTB. En la pgina de Figura 3: Adicin de una clase en WebHTB. PHP y SSH2. Es requisito indispensable un instalacin, introducimos servidor web con capacidad para SSL por el nombre de usuario y la contrasea del Interfaces+ desde el men principal para razones de seguridad, ya que la contrasea administrador, as como la contrasea y el entrar a un dilogo que nos permite aadir de root se proporciona al ingresar y se nombre de usuario al que le acabamos de interfaces a la configuracin de WebHTB almacena cifrada. WebHTB slo emplea dar acceso para operar en la nueva base de (Figura 2). dicha contrasea al realizar cambios sobre datos. Introducimos webhtbdb como nomSeleccionando Classes+ desde el men la configuracin. A continuacin, descarbre de la base de datos. Seleccionamos principal, accedemos al dilogo con el que gamos la ltima vernuestra interfaz de red primaria definir clases de mquinas para la red sin del paquete (normalmente, eth0) y confirma(Figura 3). WebHTB [2] (la vermos los cambios. Si la instalacin Ntese que ya se pueden asignar lmites sin 2.7 en el momento se ha llevado a cabo correctade ancho de banda en la clase misma. de escribir estas lneas) mente, se puede eliminar el direcEstos lmites sern los que se apliquen a y extraemos el archivo torio setup. cada una de las mquinas de la clase; de en la raz del servidor todos modos, podemos asociar lmites de Estableciendo los web, en la misma ancho de banda a mquinas especficas, Lmites mquina que har de prevaleciendo stos a los especificados con router de la red. WebHTB observa la interfaz de red la clase. Lo siguiente que entre una red local e Internet, e Una vez creada la clase, ya podemos haremos ser configu- Figura 2: La configuracin impone lmites de trfico para las comenzar a aadirle mquinas. Pulsamos rar una base de datos de WebHTB se aplica a mquinas de la red local. sobre la entrada Clients+ del men principara WebHTB. Para interfaces de red especfiEn particular, WebHTB gestiona pal, elegimos Add Client e introducimos un ello, ingresamos al cas. los siguientes parmetros: nombre para la mquina. Luego, especifiprompt de MySQL Bandwidth el ancho de banda camos los valores de Bandwidth y Limit mediante el comando: mnimo garantizado. que queramos y escogemos un nivel de Limit el ancho de banda mximo disprioridad desde el men desplegable. Los mysql -u root -p ponible para una mquina determinada. nombres de los clientes no deben contener Burst la cantidad de datos que se pueespacios ni caracteres especiales. Y los Luego, creamos una nueva base de datos den enviar a la velocidad de hardware llamada webhtbdb y permitimos el acceso mxima antes de que dicho hardware Centro de Control a nuestro usuario: pueda servir otro conjunto de datos. Si El Centro de Control de WebHTB es un se pone Burst a 0, WebHTB calcula y trabajo en desarrollo. Sus desarrolladoCREATE database webhtbdb; aplica un valor automticamente. res planean terminarlo con la versin GRANT ALL PRIVILEGES U Priority un valor en el rango de asigna2.8. El Centro de Control gestiona confiON webhtbdb.* to U cin de ancho de banda (un nmero guraciones como la clave para MySQL, usuario@localhost U ms bajo supone un rango ms alto). el rango de direcciones IP con acceso a la interfaz de WebHTB, o el idioma en IDENTIFIED BY U Queue define el tipo de planificador que se muestra ste. Actualmente estn contrasea WITH GRANT U (actualmente, PFIFO, SFQ o ESFQ). soportados el rumano, el ingls, el OPTION; El objetivo es definir clases con las mquiespaol y el portugus. Segn el desaquit; nas que tienen un mismo propsito. Por rrollador principal, Daniel Delicostea, ejemplo, una clase Contabilidad puede vienen ms traducciones en camino. El En caso de no haberlo hecho ya, aadimos consistir en mquinas asignadas al persoCentro de Control (Figura 6) tambin al final del archivo /etc/sudoers el usuario nal contable con una funcionalidad similar permite al usuario respaldar y restaurar bajo el cual se ejecutar el servidor web. todas ellas. Luego, podemos asociar a la la configuracin, de manera que un Adems, es importante que nos asegureclase un ancho de banda concreto. administrador puede usar configuraciomos de que este usuario tiene permisos de Antes de empezar a crear clases hay que nes distintas en diferentes momentos. lectura y escritura sobre el archivo webhtb/ definir la interfaz de red. Seleccionamos

Comencemos

48

Nmero 52

WWW.LINUX- MAGAZINE.ES

WebHTB PRCTICO

Figura 4: Modificacin de un cliente existente en la lista.

valores para Bandwidth y Limit deben ser mltiplos de 8. Luego pulsamos Save. Para aadir ms clientes se puede pulsar Reset, que limpia los campos para que introduzcamos nuevos datos. Los nuevos clientes deberan aparecen en la lista inmediatamente. Con un click de ratn podemos editar y eliminar entradas, gracias a la interfaz AJAX (Figura 4). WebHTB funciona con MARK y direcciones IP y MAC. La opcin Show de la barra de men nos lleva a otro submen llamado Show Traffic. La opcin Show Traffic abre una pequea ventana que se actualiza constantemente, permitiendo al administrador saber quin usa el ancho de banda de la compaa (Figura 5) en cada momento. Podemos estudiar la velocidad de descarga de clientes individuales, la velocidad total de clases completas, y los lmites, en tiempo real. Imaginemos un escenario tpico. Supongamos que somos los administradores de una red de 50 mquinas. Una de las mquinas pertenece al jefe, otra es nuestra estacin de trabajo, y las 48 restantes estn repartidas entre el resto de compaeros. Nuestro trabajo consiste en dividir una lnea de 5Mbps entre todos estos sistemas

QoS
Las anteriores versiones de WebHTB hacan uso del paquete HTB-tools para ciertas funcionalidades de QoS. A partir de la versin 2.0, WebHTB incluye herramientas para operar directamente sobre QoS. Para ver cules hay disponibles, se puede visitar la demo Flash de WebHTB y verlo en accin [3].

de modo que ni nosotros ni nuestro Figura 5: Vista del uso de anchos de banda en tiempo real. jefe tengamos Conclusin nunca problemas de velocidad, al tiempo que el resto de compaeros disfrute de una Antes de decidir quin consigue qu conexin a Internet estable. ancho de banda, hemos de dibujarnos un Despus de aadir eth0 como interfaz mapa mental de la compaa. Calculemos predeterminada, creamos dos nuevas claquin necesita ms el ancho de banda y ses: una llamada Privilegiados y otra llaquin suele trabajar horas extra. Los trabamada Compaeros. Aadimos un nuevo cliente llamado Jefe a la clase privilegiada, con un ancho de banda garantizado de 512Kbps y un lmite de 640Kbps. Establece- Figura 6: Versin 2.8 del Centro de Control. mos el nivel de prioridad a 0 a fin de que este usuario no jadores ms persistentes deberan tener tenga que esperar para usar la lnea. Creaunos lmites ms altos, para que cuando mos otro cliente llamado Administrador los otros abandonen su puesto de trabajo, con la misma configuracin. puedan disfrutar del ancho de banda libre. Esta configuracin reserva la quinta Combinado con un buen juego de reglas parte de la conexin para nosotros y de iptables (y quiz una instalacin de nuestro jefe. En caso de que el resto de Squid), WebHTB nos hace la vida de mquinas de la red no use su conexin a administradores de red ms fcil. Se recoInternet, tenemos 128Kbps extra (ya que mienda crear diferentes configuraciones y la configuracin define un lmite mximo experimentar con ellas hasta dar con un de 640Kbps). mtodo que funcione bien con todo el I Ahora todo lo que tenemos que hacer mundo. es colocar al resto de usuarios en la clase Compaeros y darles los mismos dereRECURSOS chos con un ancho de banda mnimo [1] HTB-tools: http://htb-tools.skydevel. ms bajo (80Kbps cada uno) y un lmite ro/ mximo de 128Kbps. Los niveles de prio[2] WebHTB: http://webhtb.sourceforge. ridad se pueden configurar libremente net/ (recordemos que un nmero ms bajo [3] Demo en Flash de WebHTB: http:// supone una posicin ms ventajosa en la webhtb.sourceforge.net/video_demo. jerarqua de la distribucin del ancho de html banda).

WWW.LINUX- MAGAZINE.ES

Nmero 52

49

Potrebbero piacerti anche