martes, 27 de abril de 2010

Internet es así

Cuando, allá por el 2008, leí lo del fallo de concepto del BGP pensé que se iba a montar una gorda, que se iban a cambiar protolos de un plumazo, que IPv6 se iba a poner de golpe aprovechando la coyuntura....
Pero no, na de na. Hoy en día si tienes conexión acceso a internet con dos operadores y un par de identificadores AS (los virtuales también valen) puedes hacer que el tráfico de cualquier ordenador del mundo pasa por ti.
Bueno, para ser realistas seguramente muchos ISP habrán tomado medidas aunque sea a costa de no cumplir BGP al 100%. Pero seguro que un poco de barullo se puede hacer.

Pues sí, la arquitectura de internet está más bien atrancada puesto que no es capaz ni de desplegar modificaciones para solucionar fallos graves.

Pero... yo creo que queda una carta... que es el vídeo.
Transmitir un vídeo se puede hacer con tasas desde bajísimas hasta prácticamente el infinito. Y parece que a la gente le gusta ver vídeos y películas y además cuanta mayor calidad tengan los vídeos mejor.
Esto está haciendo que la transmisión de vídeo por internet esté copando cada vez un porcentaje mayor respecto al tráfico total.
Y ahí es donde está la oportunidad para empezar a hacer una arquitectura de internet más inteligente que se amolde al estado y la demanda de la red. Si no es así habrá que sobredimensionar muchísimo más de lo que se hace ahora, con los costes que ello implican.

domingo, 25 de abril de 2010

Móvil viene de movilidad

Si hay una cosa que se espera de un teléfono móvil es que se pueda transportar de un sitio a otro y, a ser posible, que siga funcionando.
Como vengo haciendo en los últimos posts, no voy a ponerme a hablar de la gestión de la movilidad propiamente dicha pero sí de algunas de sus implicaciones.
Por ejemplo, en Android hay un concepto que es "Broadcast Receiver". Desarrollando un módulo de este tipo una aplicación puede recibir información de eventos que se producen en el sistema como el estado de la batería, posicionamiento, el tipo de cobertura, intensidad de la señal y un largo etcetera.
Si haces una aplicación que suba vídeos que has grabado con el móvil a una web tienes varias opciones:
La clásica: creas una conexión y subes el vídeo. Y si falla se vuelve a intentar en un periodo de unos minutos.
La moderna: calculas el consumo de energía que costaría subir el archivo para el tipo de tecnología a la que se tenga acceso. Si no es suficiente o dejaría al dispositivo con poca batería habría que interrogar al usuario. Como cada vez que cambie de célula o tecnología de acceso las aplicaciones pueden ser "despertadas" ese procedimiento evita malgastar ancho de banda y batería en operaciones que no podrían llegar a buen fin.
Un ejemplo tan simple como este nos deja ver lo importante que puede ser la utilización de información de todas las capas de un sistema de comunicación para tomar decisiones "más " acertadas.

El software, señores, es lo que va a marcar la diferencia en los terminales móviles. Más que las capacidades computaciones o velocidades de transmisión de datos.

lunes, 19 de abril de 2010

Wireless

Para que nos vamos a engañar, las comunicaciones inalámbricas fáciles no son. Pero visto punto por punto tampoco son tan complicadas :)
Como hablar de Wifi y Wimax se me hace un poco denso para una entrada del blog voy a comentar algunas cosas de un proyecto de software libre con el que trabajé para la realización de un proyecto europeo: OpenWRT.
OpenWRT, según reza su web, se define como una distribución de Linux para dispositivos embebidos.
El objetivo de OpenWRT es proporcionar con conjunto de software libre y herramientas para compilación para diferentes plataformas para que cada usuario pueda crearse una distribución de Linux a la medida de su punto de acceso.
En la propia web hay una lista de dispositivos(APs) con los que se ha probado la distribución y el grado de soporte de los mismos.
Para que os hagáis una idea os puedo decir que preparar una distribución de Linux para un router con un servidor web apache y un servidor samba para compartir una disco duro que conectes por USB está a unos pocos menús de ncurses de distancia.
Y cuando ya estéis más familiarizados con la estructura del código del OpenWRT podéis empezar a pelearos con MADWifi. MADWifi es uno de los mejores drivers de tarjetas Wifi para Linux y el que más dispositivos soporta. Jugar con los drivers Wifi en OpenWRT es tan fácil como cambiar la línea que quieras y darle otra vez a compilar. Y como resultado puedes obtener un AP que compita con algo de ventaja al reducir un poquito los *IFS ;)

PD: DD-WRT es un proyecto derivado de OpenWRT que si bien no ofrece facilidades para obtener y compilar su propio código sí que dispone de binarios para un gran número de puntos de acceso comerciales.