Comando iperf
Programa, Ingeniería Electrónica
TELEMATICA.
PRESENTADO POR:
Identificación:
Septiembre de 2010.
Ciudad y departamento.
1. Investigar un poco más a fondo acerca del comando IPERF, y plasmarlo en
una hoja dentro del documento final a entregar en este trabajo colaborativo.
Iperf es una herramienta libre que se utiliza (entre otras) desde haceun tiempo para medir el ancho de banda que nos brindan los proveedores.
Básicamente se trata de un software que puede funcionar como cliente o servidor, se conecta uno con otro y realiza pruebas de transmisión de datos para medir la velocidad de la conexión.
Lo bueno de esta aplicación es que cualquiera puede acceder a ella, tanto desde unix como windows (hay una versión con gui), y es muy útilpara conocer el estado de la conexión, no solo su capacidad (o velocidad para algunos), sino su estabilidad, tasa de pérdida de paquetes, delay, etc.
Su uso es muy simple, basta con escribir iperf -s en una consola para iniciar el servidor, lo cual nos da una salida como esta:
undercode@dalgrev:~$ iperf -s
————————————————————
Server listening on TCP port 5001
TCP window size: 85.3 KByte(default)
————————————————————
A ese servidor se le pueden conectar uno o más clientes con iperf -c ip_servidor más algunas opciones como tiempo de la prueba, protocolo a testear, tamaño de los paquetes a transmitir, etc. Por ejemplo, esta prueba de conexión por dos minutos y protocolo udp:
undercode@dalgrev:~$ iperf -c ip_servidor -t 120 -u
————————————————————
Client connecting to ip_servidor,UDP port 5001
Sending 1470 byte datagrams
UDP buffer size: 110 KByte (default)
————————————————————
[ 3] local 192.168.5.174 port 38903 connected with ip_servidor port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-120.0 sec 15.0 MBytes 1.05 Mbits/sec
[ 3] Sent 10701 datagrams
[ 3] Server Report:
[ 3] 0.0-120.0 sec 14.6 MBytes 1.02 Mbits/sec 0.766 ms 282/10701begin_of_the_skype_highlighting 282/10701 end_of_the_skype_highlighting (2.6%)
undercode@dalgrev:~$
Para probar la conexión vía udp, es necesario que el servidor haya sido iniciado con iperf -s -u ya que por defecto escucha en tcp. Algo que puede parecer una obviedad pero no está de más aclararlo: para probar una conexión contra un equipo que haga de server, es necesario que elancho de banda del servidor sea mayor o por lo menos igual a lo que se quiere medir del lado del cliente.
Configurando IPerf.
Podemos configurar tanto el cliente como el servidor para personalizar un poco las mediciones.
Como servidor.
A parte de la opción -s que deja a IPerf a la escucha, podemos usar:
* -D como servicio
* -R remover servicio
* -u recibir datagramas UDP en vezde TCP por defecto.
* -P x número de conexiones simultáneas
* -m muestra MTU (depende del sistema operativo )
* -w specifica el tamaño de Ventana (TCP window size). Muy útil para ir calculando nuestro tamaño de ventana más óptimo según las mediciones de ancho de banda.
* -f[bkmBKB] mostrar resultados en bits/s, kilobits/s, megabytes/s, Bytes/s, KiloBytes/s, MegaBytes/s(s=segundos). Tanto en cliente como servidor:
>iperf -c 192.168.1.250 -f B
------------------------------------------------------------
Client connecting to 192.168.1.250, TCP port 5001
TCP window size: 64512 Byte (default)
------------------------------------------------------------
[844] local 192.168.1.30 port 3591 connected with 192.168.1.250 port 5001
[ ID] Interval Transfer Bandwidth
[844]0.0-10.0 sec 118792192 Bytes 11860687 Bytes/sec
Como cliente.
Lo más básico es -c IP pero podemos establecer otras opciones, las más importantes:
* -f[bkmBKB] (igual que lo comentado como servidor)
* -w (lo mismio que para servidor)
* -m muestra MTU (depende del sistema operativo)
* -T ttl especifica valor TTL
* -i segundos especifica un intervalo, medido en segundos,...
Regístrate para leer el documento completo.