3 de Febrero, 2008

Throughput de 802.11g

Mi Linksys

He estado preparando un Linksys WRT54GS para cuando acabe el proceso de contratar ADSL en casa, usarlo para el acceso a Internet.

En un principio trabajaba con OpenWRT en su versión whiterussian (bebida algo fuerte, popularizada quizás por El gran Lebowski), algo desactualizada, y al disponerme a pasar un fichero grande vía SSH entre mi Dell Inspiron 1300 y el Dell XPS M1330 de empresa (que quede claro, hombre... que aquí la gente se piensa que nado en la abundancia), me di cuenta que algo no funcionaba bien: ¿sólo 8Mbps?

Después de algún otro problemilla, pensé que la culpa era del Linksys o de la versión de OpenWRT, pero parece que no es cierto.

Actualicé a la última versión del ruso blanco, y tras mosquearme que no pudiera indicar el valor de tasa de transferencia vía iwconfig, me pasé a DD-WRT, competidor directo.

La verdad es que OpenWRT me gustaba más para cacharrear, que por algo es una distribución de Linux con su gestor de paquetes y todo, pero DD-WRT tiene un acabado mucho más completo y profesional, con todo instalado y listo para usar vía interfaz web bastante avanzado.

Bueno, el caso es que es lo que usaba Plácido en el Linksys que teníamos en Bilbao, y sé que funciona muy bien ;).

Pues nada, aún así seguimos con 8Mbps cutres. Cualquiera diría que siendo un punto de acceso 802.11g tendría que dar algo más próximo a 54Mbps, ¿no?

Meeeek!, error. Después de esta introducción, veamos qué velocidad busco: el throughput típico de 802.11g.

Primero vamos a definir qué es eso del throughput:

Throughput: cantidad de datos por unidad de tiempo que se entregan, mediante de un medio físio o lógico, en un nodo de la red.

Es una definición algo de estar por casa (siempre se puede consultar la wikipedia sobre throughput para algo más formal), que viene a decir que la velocidad que vemos cuando enviamos/recibimos datos en una red, no tiene que estar limitada por el ancho de banda que nos venden (los 54Mbps de 802.11g), sino que ese límite tenderá a ser inferior, como resultado de la interacción de diferentes factores.

Los factores que hace que el throughput sea inferior al ancho de banda máximo son, por ejemplo:

  • El medio físico: la calidad, por ejemplo, que puede hacer que se pierdan paquetes y hayan retransmisiones. Esto puede pasar en redes inalámbricas.
  • Usar un medio compartido: como 802.11g :D. En general dos no pueden transmitir a la vez, y los mecanismos para acceder al medio sin pegarnos con las otras estaciones puede hacer que baje el rendimiento.
  • Los protocolos que intervengan: en el caso de TCP hay que esperar paquetes ACK de vuelta al enviar, con lo que se ve afectado el rendimiento, sobretodo si se pierden esos mensajes de vuelta porque enviamos muy rápido.

Pueden haber más factores, como que el Linksys no pueda manejar todo el tráfico, ya sea por hardware o por el software. Pero bueno, descartando esto... ¿qué debería esperar?

Pues lo razonable sería un throughput típico de 19Mbps (según la wikipedia sobre 802.11). Aunque he leído por ahí que mi Linksys con la CPU a tope puede mantener 36Mbps, me conformo con el valor típico.

Entonces, esos 8Mbps son poca cosa, definitivamente.

Se me ocurrió hacer la prueba de llevar el XPS por cable, ya que te lengo más fe al driver de la Intel PRO/Wireless 2200 de mi viejo Inspiron... y ¡bingo! Tenemos 16.8Mbps, que ya es algo mucho más razonable, muy cercano el límite típico (teniendo en cuenta la posble sobrecarga del cifrado de los datos por usar SSH).

Tampoco tiene un final claro esta historia, porque ahora puede que se vea involucrado el throughput de 802.3 por usar el switch ethernet del Linksys ;), por no hablar de que puede ser cosa, efectivamente, del driver del XPS, o temas de radio por estar los dos portátiles cerca contra el mismo punto de acceso.

La verdad es que no importa, ahora sé que puedo obtener 16Mbps, suficiente para la cutre ADSL que he contratado :P.

Anotación por Juan J. Martínez, clasificada en: networking, wireless.

Hay 2 comentarios

Gravatar

Hombre, yo diría que obtenías 8 Mbps porque el Linksys daba 16, 8 para cada cliente, pero es solo un presentimiento.

Saludos.

Santi

por Santi, en 2008-02-05 19:50:23

Gravatar

También lo he pensado... y parece bastante razonable, que funcione como un HUB.

Si hay 16Mbps de throughput, al compartir el medio 2 estaciones... eso se divide entre dos que compiten por usarlo.

En cualquier caso una chufla, porque como para pasar ficheros grandes :(

Buena observación Santi :)

por Juanjo, en 2008-02-05 20:08:10

Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 30 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Algunas anotaciones relacionadas: