Monitorear el ancho de banda en Linux

Vamos a ver cómo monitorear el ancho de banda en Linux y el tráfico de un computador,a través de un programa llamado nethogs.

 

A través esta herramienta de monitoreo podremos ver las velocidades de envío y descarga en la red en tiempo real, para cada proceso (KB/s), así como el total consumido de Bytes, KB o MB (trafico entrante y saliente).
 


De esta forma estaremos monitorizando el consumo del ancho de banda, en una computadora Linux, desde las interfaces de red del pc.
 


También veremos la interfaz de red que se está utilizando (si tenemos varias interfaces conectadas a la red), el propietario del proceso y el PID. De forma que si tenemos algún proceso que está consumiendo muchísimo ancho de banda, como conocemos su identificador (PID), podemos matarlo rápidamente, y también podemos saber que es el culpable de un gran consumo de datos en la red.

 

 

Cómo instalar Nethogs para monitorizar el consumo de ancho de banda

 

  • Instalar nethogs en Ubuntu/Debian:
apt-get install nethogs

 

sudo yum install epel-release

 

–> después ya podemos instalar nethogs:

sudo yum install nethogs

 

root@rasp:/home/pi# apt-get install nethogs
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Se instalarán los siguientes paquetes NUEVOS:
nethogs
0 actualizados, 1 nuevos se instalarán, 0 para eliminar y 0 no actualizados.
Se necesita descargar 0 B/26,4 kB de archivos.
Se utilizarán 66,6 kB de espacio de disco adicional después de esta operación.
Seleccionando el paquete nethogs previamente no seleccionado.
(Leyendo la base de datos ... 42873 ficheros o directorios instalados actualmente.)
Preparando para desempaquetar .../nethogs_0.8.5-2_armhf.deb ...
Desempaquetando nethogs (0.8.5-2) ...
Configurando nethogs (0.8.5-2) ...
Procesando disparadores para man-db (2.7.6.1-2) ...

 

 

Monitorear el consumo de las interfaces de red

 
Al monitorear el tráfico y el ancho de banda de las interfaces de red, podemos elegir entre observar el tráfico de todas las interfaces (comportamiento por defecto) o vigilar el tráfico en una de ellas en concreto.
 

Ejemplos:

  • Para monitorizar todo el tráfico, de todas las interfaces:
sudo nethogs

 

  • Para monitorizar el tráfico de la interfaz wlan0 :
nethogs wlan0

 

  • Para monitorizar el tráfico de la interfaz eth0 :
nethogs eth0

 

 

Opciones de nethogs

 
opciones nethogs monitorear ancho banda
 

Nethogs ofrece varias formas de visualización : (opción -v, “view mode“)

 

0 = KB/S
1 = total KB
2 = total B
3 = total MB

El modo 0 es el que funciona por defecto si no lo especificamos:

nethogs monitorizar consumo ancho banda
 

 

Por ejemplo, si queremos visualizar el tráfico de las interfaces pero mostrando el total de MB, elegimos el modo 3:

nethogs -v3

 
nethogs en modo 3 total MB
 

 

Nethogs modo rastreo

 

En el modo rastreo (tracemode) se muestran las conexiones una por una. Sirve para detectar errores.

 

nethogs -t

 

nethogs modo rastreo

 

 

Ordenar la salida de datos

 

Con la opción -s ordena la salida por según el consumo de la columna enviado
nethogs mostrando ancho de banda consumido kb/s y ordenando por columna SENT (KB/sec enviados):

nethogs mostrando ancho banda consumido
 

 

cambiar el retraso del refresco de datos.

 

La opción -d nos permite elegir el retraso en el refresco de los datos.

 

 

Modo BUGHUNT (opción -b) (implica modo rastreo)

 

Este modo recoge multitud de datos de la secuencia de salida, mostrando estadísticas detalladas (mostrando las conexiones TCP), que serán útiles para encontrar errores y más detalles en el consumo del ancho de banda en las interfaces.

nethogs modo bughunt encontrar errores

 

 

 

Registrar los datos del consumo de ancho de banda en un fichero

 
Podemos lanzar nethogs y dejarlo funcionando en segundo plano, enviando toda la información recopilada a un fichero que después podremos analizar con calma.
 

Podemos hacerlo utilizando nohup:

nohup nethogs wlan0 -b -v3 -s &> output consumo_ancho_banda.txt &

 

registrar consumo ancho banda en un fichero
 

Los campos que muestra la salida de nethogs son:

Process / Process id / User id    sent kbps    recv kbps

 

Si queremos recuperar el proceso ejecutamos

fg

y podemos parar el proceso con Ctrl + C
 

Como sabemos el PID del proceso, también podríamos matar el proceso.

 

 

Controles interactivos de Nethogs

 

  • q  : salir
  • s  : ordenar por trafico enviado (SENT)
  • r  : ordenar por trafico recibido (RECEIVED)
  • m   : alternar entre la visualización entre el modo de KB/s y el modo de Bytes, KB o MB totales.