Publicado el 2 de Junio del 2017
440 visualizaciones desde el 2 de Junio del 2017
165,2 KB
5 paginas
ARQUITECTURA DE REDES, SISTEMAS Y SERVICIOS
Área de Telemática, Departamento de Automática y Computación
Universidad Pública de Navarra
Práctica 6
Midiendo throughput en Ethernet
1. Objetivos
El objetivo de esta práctica es familiarizarse con los equipos de red de área local
Ethernet y medir y comprender el throughput en una red real.
2. Throughput entre dos PCs [estimado 40 minutos]
En esta práctica usaremos de nuevo los puestos del Laboratorio de Telemática 1 con
armarios rack y equipo de red.
En esta primera fase conectaremos un PC a otro directamente para comprobar el límite
de velocidad de la tarjeta ethernet y posteriormente pondremos redes más complejas
entre ellos para ver el efecto.
En primer lugar utilizaremos PC-A para enviar a PC-B. Identifica los puertos de red en el
armario que corresponden con eth0de PC-A y PC-B (recuerda la práctica anterior con
estos equipos) y únelos con un cable cruzado (en el laboratorio normalmente azules).
Configura la dirección IP 10.0.0.1en PC-A y la 10.0.0.2en PC-B (de nuevo explicado
en una práctica anterior).
Comprueba que lo has hecho correctamente haciendo ping entre PC-A y PC-B.
En PC-A:
$ ping 10.0.0.2
En PC-B:
$ ping 10.0.0.1
Si no funciona asegúrate de arreglarlo antes de continuar.
Utilizaremos la herramienta iperf para enviar datos continuamente entre los PCs y
poder observar el tráfico y medir el throughput. iperf funciona lanzándose en los
ordenadores origen y destino de la información. Los programas se comunican a través
de la red y envían la cantidad de información que indiquemos. El propio iperfnos da su
propia medida del throughput que consigue enviar pero lo verificaremos observando la
red con wireshark.
En el ordenador destino debemos lanzar iperfen modo servidor para que reciba los
datos que le envíen desde el resto de iperf. iperfpuede recibir datos utilizando un
protocolo de transporte fiable llamado TCP o bien utilizando un protocolo de transporte
no fiable llamado UDP. El transporte fiable se asegura de que los datos llegan al otro
1
ARQUITECTURA DE REDES, SISTEMAS Y SERVICIOS
Área de Telemática, Departamento de Automática y Computación
Universidad Pública de Navarra
lado y no se pierdan por el camino, retransmitiendo si fuese necesario. Al transporte no
fiable le da igual que se pierdan, por lo que conseguirán diferentes resultados. Un
ejemplo que nos encontramos hoy en día de TCP es cuando queremos recibir una
página web ya que queremos asegurarnos que se transmite toda la información entre
origen a destino; si faltase algún paquete no podríamos leer parte de esa página. Por
otro lado se usa UDP en conexiones de vídeo en tiempo real ya que aunque se pierda
parte de la información, podemos continuar reproduciendo el vídeo.
Los protocolos de transporte utilizan lo que se llaman valores de puerto para identificar
los diferentes programas que están usando esos protocolos. Los puertos son
simplemente números del 0 al 65535 (216-1).
Pon en PC-B un servidor iperf para recibir datos con transporte fiable en el puerto
10000. Eso se hace con el comando:
$ iperf s p 10000
Verás en la pantalla que el programa está esperando a que le lleguen datos. Esperará
indefinidamente e imprimirá por pantalla estadísticas cada vez que le lleguen datos. De
momento déjalo esperando en un terminal.
Pon en otro terminal de PC-B otro servidor iperfpara recibir datos con transporte no
fiable en el puerto 20000. Eso se hace con:
$ iperf s p 20000 u
Déjalo esperando en tu terminal. Con esto ya tenemos programas que esperan y
reciben los datos que les envíen desde otro ordenador.
Enviemos datos desde PC-A. Lanza iperfdesde PC-A en modo cliente. En ese modo
enviará datos continuamente a un servidor indicado. Continuamente, pero sólo durante
el tiempo que le indique. Por ejemplo, para enviar datos con transporte fiable al
servidor anterior lance en PC-A:
$ iperf c 10.0.0.2 p 10000 t 10
Esto hará que durante 10 segundos el programa envíe datos continuamente hacia
PC-B. Los datos se enviarán con un protocolo de ventana deslizante de los que se ven
en teoría y se confirmarán para asegurarse de que llegan. Pero lo que nos importa es
ver cuántos datos atraviesan la red. Observa que tanto el iperf cliente como el
servidor nos dicen cuánto throughput en Mbps han conseguido enviar pero queremos
ser capaces de medirlo de forma independiente.
Lanza wiresharken PC-A y en PC-B. Pon cada uno a capturar todo el tráfico de red
que se vea en eth0. Lanza entonces el cliente durante 10 segundos y espera a que
termine. Detén los wiresharks y observa el throughput en Mbps que han visto. ¿Cuánto
es el throughput que ha observado? ¿Coincide con el que dice iperf? ¿Por qué ese
throughput? ¿De qué velocidad dirías que es la tarjeta Ethernet de PC-A y PC-B?
Si usamos iperf con transporte fiable, iperfintenta enviar a toda la velocidad que
puede y vemos los límites del protocolo de transporte fiable empleado. Si usamos
2
ARQUITECTURA DE REDES, SISTEMAS Y SERVICIOS
Área de Telemática, Departamento de Automática y Computación
Universidad Pública de Navarra
iperf con transporte no fiable es posible que enviemos datos tan deprisa que se
pierdan. iperf nos deja limitar esta velocidad controlando la carga que introduce el
programa en la red. Usa ahora el transporte no fiable para enviar datos al servidor. El
comando es parecido, sólo que con la opción uindica que es transporte UDP y puedes
usar la opción bpara especificar la velocidad de envío. Enviemos a varias velocidades
para probar:
$ iperf c 10.0.0.2 p 20000 u t 10 b 4Mbps
$ iperf c 10.0.0.2 p 20000 u t 10 b 40Mbps
$ iperf c 10.0.0.2 p 20000 u t 10 b 150Mbps
Observa los resultados obtenidos. Realiza un experimento para medir ésto y
presentarlo al profesor. Prepara los wiresharks en el PC-A y PC-B y captura una traza
en la que se vean en sucesión rápida las tres pruebas de antes con 4Mbps, 40Mbps y
150Mbps. Cuando tenga las trazas en el origen y el destino, dibuja la gráfica del
throughput en la que se vean los tres envíos y se pueda ver los throughputs obtenidos.
Cuando tengas esta gráfica abre un terminal y haz:
$ ifconfig eth0
Coloca el terminal de forma que se vea el resultado y la gráfica correctamente. Haz
una captura de pantalla. Graba la captura de pantalla de PC-A y PC-B con los nombres
cp1-origen.png y cp1-destino.png. Estos son los ficheros que deberás subir para
probar que has realizado el checkpoint 1. Si quieres puedes mostrar primero el
checkpoint al profesor de prácticas y generar los archivos cuando le haya dado el visto
bueno.
Checkpoint 1. Muestra tus resultados al profesor y sube los ficheros
Si ha llegado hasta aquí llama al profesor de prácticas y muéstrale los throughputs que
has obtenido. Explícale si tienen sentido y contesta a las preguntas.
3. Throuhput atravesando Ethernet [estimado 40
minutos]
Prepararemos un escenario en el que haya elementos de red entre PC-A y PC-B como
se ve en la figura 1. Queremos que PC-A y PC-B estén en redes Ethernet de 100Mbps
pero que estas dos redes estén unidas entre si por un enlace a 10Mbps. Para eso se
han configurado unos puertos a 10Mbps en los conmutadores del laboratorio. Debes
usar exactamente los conmutadores y puertos indicados.
En primer lugar prueba los dos PCs en el mismo conmutador. Conecta el puerto eth0
de PC-A al conmutador Ethernet (marca D-Link) inferior del armario. Conecta eth0de
PC-B a otro puerto del mismo switch (que no sean los puertos últimos 23 y 24)
Comentarios de: Practica 6 - Midiendo throughput en Ethernet (0)
No hay comentarios