Inicio arrow Artículos arrow Redes arrow Análisis de tráfico con Wireshark (II)
Menú Principal
Lo más leído
Consigue Firefox
Usuarios
993 registrados
1 hoy
5 esta semana
138 este mes
Último: gabity...
Formulario de acceso



... Regenerar clave
... Registro
Análisis de tráfico con Wireshark (II) Imprimir E-Mail
lunes, 25 de septiembre de 2006

Dominar las diferentes técnicas que nos ofrece Wireshark a la hora de analizar una captura de paquetes es fundamental para enfrentarse a la resolución de problemas de red utilizando trazas de capturas. Uno de los análisis más sencillos que pueden realizarse y que va ayudar bastante en la formación con nuestro sniffer es el de la captura de una descarga de datos a través de Internet para disgnosticar posibles problemas de pérdida de paquetes o de lentitud. 


Comenzando la captura y descargando

El archivo a descargar elegido ha sido el propio programa Wireshark, que descargaremos de la sección de descargas de su página web (http://www.wireshark.org/download.html). Prepararemos el navegador en esta página y arrancaremos Wireshark. Tal y como explicamos en el capítulo anterior, comenzaremos la captura eligiendo el interfaz de red conectado a nuestro router y pulsando sobre el botón Capture. Seguidamente pulsaremos sobre el link del navegador correspondiente a nuestra descarga y esperaremos que el programa se descargue por completo para parar la captura.

Negociación TCPLa descarga de un programa a través de Internet utiliza el protocolo TCP/IP para negociar toda la transacción. Básicamente, el cliente solicita a un servidor HTTP un archivo determinado y el servidor responde enviando dicho archivo. La descarga completa se establecerá mediante la suma de varios paquetes de datos denominados segmentos. Con cada segmento a descargar el servidor y el cliente establecerán una comunicación donde se informará de la transmisión y se procederá a la descarga correspondiente, hasta que el programa se haya completado del todo. El inicio de toda comunicación TCP comienza con la negociación en tres pasos (TCP Three Way Handshake).


Análisis gráfico

Para comenzar con el análisis de nuestra captura, deberemos echar un vistazo al gráfico de entrada/salida. El acceso a dicho gráfico se consigue a través del menú Statistics/IO Graphs. Como podemos observar, las opciones de representación de los datos son muy variadas, ya que se nos permite el filtrado de los mismos de diferentes maneras. Para empezar, es una buena idea que los datos queden representados por Bytes/Tick en el Eje Y, pues nos interesa analizar el estado de una descarga de datos.

IO Graph

En una descarga de datos normal, los picos deberían mantenerse más o menos unifores a lo largo del tiempo en un canal formado por dos líneas paralelas. Dependiendo de la velocidad del servidor, el tráfico de datos (representado en el Eje Y) variará, tendiendo a cero en conexiones más lentas, mientras que el tiempo de descarga (representado en el Eje X) aumentará o disminuirá dependiendo del tamaño de la descarga y de la propia velocidad de transferencia. Si la descarga de datos no es uniforme durante todo el proceso, estaremos ante un problema de transferencia que se podrá analizar con la lectura detallada de los paquetes capturados. 


Análisis de los paquetes

Una vez visto el gráfico, nos centraremos en la pantalla principal. Dicha pantalla nos ofrece todos los paquetes capturados con información de cada uno de ellos. Por ejemplo, lo primero que veremos en nuestro trazo de captura será una petición al servidor DNS que resolverá la dirección del servidor desde donde realizaremos la descarga. Seguidamente podremos observar el trazo de la negociación TCP tal y como se muestra en la imagen siguiente:

TCP Three Way Handshake

Lo que sigue a continuación son las transferencias de segmentos y, posiblemente, otras capturas que nada tienen que ver con la descarga de nuestro archivo. Como el volumen de datos presentado puede llegar a ser interminable, Wireshark pone a nuestra disposición una herramienta llamada Expert Info, a la cual accedemos mediante el menú Analyze/Expert Info. Mediante esta herramienta podemos tener una visión más clara de todo el proceso de trazado y de los posibles problemas que pueden haber surgido durante la transferencia. El cuadro desplegable de la parte superior derecha nos permite filtrar la salida de información (por defecto, se presentarán los errores, los avisos, las notificaciones y las negociaciones de protocolo), la cual es presentada en pantalla resaltada por diferentes colores. En principio y para valorar posibles problemas, sólo sería necesario filtrar por errores, avisos y notificaciones. Un ejemplo de salida de esta pantalla podría ser el siguiente:

Expert Info

La captura nos presenta una notificación de ACK duplicado por la consecuente pérdida de segmento. Cada vez que se produce la pérdida de un paquete de segmento durante una transacción, el cliente enviará al servidor un requerimiento para volver a recibir dicho segmento y lo seguirá enviando tantas veces como sea necesario hasta recibir el segmento requerido. Si la conexión no es demasiado buena, el número de requerimientos irá aumentando a medida que avance la transacción, con la consecuente pérdida de velocidad. Cuando esto llega a producirse, podemos observar salidas de información de este tipo:

Fast Retransmission

Lo que nos permitirá diagnosticar un problema de velocidad debido a la pèrdida de información en alguna parte del proceso de intercambio. Para terminar de resolver si el problema está en nuestra máquina o en el servidor desde el cual nos estamos descargando el fichero, procederemos a la descarga de tres o cuatro ficheros más desde servidores diferentes y observaremos las trazas para diagnosticar el origen del posible error.


Otra opción gráfica

Para terminar el capítulo, es interesante hacer mención de otra opción de representación gráfica: TCP Stream Graph. Para acceder a este gráfico, pincharemos sobre el paquete que queremos analizar y desplegaremos el menú Statistics/TCP Stream Graph. De las diferentes opciones, escogeremos Round Trip Time Graph, que nos presenta el RTT (Round Trip Time) en el proceso de transferencia. El RTT nos muestra la diferencia de tiempo que existe entre el envío de un paquete y la obtención de respuesta. En conexiones  a través de Internet, un RTT por encima de los cuarenta milisegundos (0.04) no debería ser aceptable, ya que la descarga de datos en esas circunstancias se haría interminable. 


Comentario[s]

Sólo los usuarios registrados pueden escribir comentarios.
Por favor, valídate o regístrate.

Powered by AkoComment 2.0!

 
< Anterior   Siguiente >