Bmon, herramienta de depuración y monitotización de red
En el siguiente artículo vamos a echar un vistazo a bmon. Esta es una herramienta simple pero poderosa de monitorización y depuración de red basada en texto para sistemas tipo Unix. Va a capturar estadísticas relacionadas con la red y las mostrará visualmente en un formato amigable en tiempo real.
La pérdida de ancho de banda es un problema difícil de controlar que da como resultado una respuesta lenta de las aplicaciones que se ejecutan en la red. Por eso siempre es interesante controlar los picos de ancho de banda para evitar este problema. Esta tarea la podremos realizar con la ayuda de bmon, que nos servirá de ayuda para controlar problemas relacionados con la red.
Instalar bmon en Ubuntu
Es fácil instalar esta herramienta y en este artículo vamos a ver cómo instalar bmon en Ubuntu 16.04. Casi todas las distribuciones de Gnu/Linux tienen el paquete bmon en los repositorios predeterminados. Para instalarlo no tendremos más que abrir una terminal (Ctrl+Alt+T) y escribir:
sudo apt-get install bmon
También podremos compilar el código utilizando los siguientes comandos en la terminal:
git clone https://github.com/tgraf/bmon.git cd bmon sudo apt-get install build-essential make libconfuse-dev libnl-3-dev libnl-route-3-dev libncurses-dev pkg-config dh-autoreconf sudo ./autogen.sh sudo ./configure sudo make sudo make install
Cómo usar la herramienta bmon en Ubuntu
Hay que aclarar que RX significa bytes recibidos por segundo y TX se refiere a bytes transmitidos por segundo. Ejecútalo como se indica a continuación:
bmon
Para ver las estadísticas más detalladas de uso del ancho de banda, presiona la tecla d y verás algo como lo siguiente:
Presiona Shift+? para ver la ayuda rápida.
Para ver las estadísticas de una interfaz determinada, seleccionala usando las flechas hacia arriba y hacia abajo. Si lo que buscamos es monitorizar una interfaz específica solamente, añádela como un argumento en la línea de comando de la siguiente manera:
bmon -p enp10s0
El indicador -p establece una política que define qué interfaces de red mostrar, en el ejemplo se va a supervisar mi interfaz de red enp10s0.
Para usar bit por segundo en lugar de bytes por segundo, tendremos que utilizar el indicador -b de esta forma:
bmon -bp enp10s0
También podemos definir los intervalos por segundo con el indicador -r de la siguiente manera:
bmon -r 5 -p enp10s0
Cómo utilizar los módulos de entrada con bmon
Esta herramienta tiene una serie de módulos de entrada que ofrecen datos estadísticos sobre las interfaces, que incluyen:
- netlink: emplea el protocolo Netlink para recopilar estadísticas de interfaz y control de tráfico. Este es el módulo de entrada predeterminado.
- proc: Es un módulo de respaldo en caso de que la interfaz de Netlink no esté disponible.
- dummy: este es un módulo de entrada programable para depuración y pruebas.
- null: deshabilita la recopilación de datos.
Para encontrar información adicional sobre un módulo, inícialo con la opción “help” establecida de la siguiente manera:
bmon -i netlink:help
El siguiente comando invocará a bmon con el módulo de entrada de proc habilitado:
bmon -i proc -p enp10s0
Cómo usar módulos de salida con bmon
Esta herramienta también utiliza módulos de salida para mostrar o exportar los datos estadísticos recopilados por los módulos de entrada, que incluyen:
- curses: esta es una interfaz interactiva de usuario que ofrece estimaciones de tasas en tiempo real y una representación gráfica de cada atributo. Es el modo de salida predeterminado.
- ascii: es una salida de texto programable directa. Puede mostrar una lista de interfaces, contadores detallados y gráficos en la consola. Es el modo de salida por defecto cuando curses no está disponible.
- format: es un modo de salida totalmente programable. Podemos utilizar sus valores de salida en scripts o programas para análisis y más.
- null: esto desactiva la salida.
Para obtener más información sobre un módulo, ejecútalo con la opción “help” establecida de la siguiente manera:
bmon -o curses:help
El comando que sigue invocará a bmon en el modo de salida ascii:
bmon -p enp10s0 -o ascii
También podemos ejecutar el módulo de salida de formato y luego usar los valores obtenidos para la creación de scripts o en otro programa:
bmon -p enp10s0 -o format
Para obtener información de uso adicional, opciones y ejemplos, podemos leer la página man de bmon:
man bmon
Si queremos saber más acerca de esta herramienta, está disponible el repositorio de Github.
El artículo Bmon, herramienta de depuración y monitotización de red ha sido originalmente publicado en Ubunlog.