Está en la página 1de 5

.

ALGORITMO DE HAND-OFF HORIZONTAL PARA LA EVALUACIN DE REDES WIFI EN EL SISTEMA OPERATIVO GNU/LINUX.
Oscar Maestre Sanmiguel, Javier Garca Prada

Resumen

1. Introduccin En la actualidad las redes inalmbricas 802.11 han tomado fuerza en entornos urbanos, empresariales, educativos entre otros, la cantidad de redes han ido aumentando con el paso del tiempo creando una necesidad de movilidad en diferentes reas dentro de la ciudades como en espacios institucionales. Es por ello que para garantizar la transparencia y la movilidad entre diferentes redes inalmbricas se han creado sistemas para comunicaciones mviles con el objetivo de transferir el servicio de una estacin base a otra cuando la calidad del enlace es insuficiente . A esta tcnica se le conoce como Hand-Off o Hand-Over, en el cual se mantiene una comunicacin de extremo a extremo activa y funcional cuando hay un cambio del enlace entre un punto de conexin y un terminal mvil a otro enlace con otro punto conexin [1]. Cuando el nuevo enlace es tecnolgicamente diferente al anterior el proceso de Hand-Off f vertical de otra forma se llama Hand-off horizontal. El presente articulo se estructura de la siguiente manera: la seccin 2 describe las qu es HandOver y los tipos que existen , la seccin 3 abarca los algoritmos para conectividad por calidad y potencia en redes Wi-Fi y finalmente en la seccin 4 se enumeran las herramientas nativas e idneas para realizar anlisis y diagnostico de redes 802.11 en el sistema operativo GNU/Linux. 2. Handover Horizontal Poder acceder a diferentes redes y aprovechar todas las virtudes tales como cobertura, potencia y calidad de la seal y poder ofrecer servicios continuos, son las caractersticas principales del Handover, esto es posible dado que cada tipo de red se desempea de forma diferente en condiciones, lugares, momentos y servicios diferentes lo cual hace que exista una red idnea para una condicin, un lugar, un momento y un servicio especfico. Sin embargo, para lograr esto se deben disear sistemas que permitan un cambio entre redes de

Este articulo describe los dos algoritmos que pueden aprovechar la tcnica de Hand-Off o Hand-Over horizontal para redes 802.11a/b/g/n en el sistema operativo GNU/Linux. Tambin se se aborda la problemtica del Hand-Off tratando de conservar la conectividad de los usuarios y se proponen algunos mecanismos y algoritmos para el cambio de conexin, por otro lado se menciona las ventajas inherentes de los sistemas basados en Unix con su alta gama de herramientas que facilitan las tareas de recopilacin y agrupamiento de los datos que pueden ayudar a la hora de disear e implementar aplicaciones para este fin.

Palabras claves Algoritmo, Hand-Off, GNU/Linux, Lenguaje programacin, Wi-Fi, ESSID, BSSID, IEEE 802.11 de

Abstract
This article describes the main steps for develop differents algorithms that use the horizontal Hand-Over on 802.11a/b/g/n networks for GNU/Linux platform. Also get a global view about the Hand-Off issues to keep the users conections and using algorithms, by other side the advantages inside of Unix based systems and the highest kinds of tools that provides easy tasks as get data rates that help us for designing and implemeting as main goal. Keywords

Algorithm, Hand-Off, GNU/Linux, Programming language, Wi-Fi, ESSID, BSSID, IEEE 802.11

Descripcin de diferentes algoritmos de Hand-off horizontal para la evaluacin de redes WiFi en el sistema operativo GNU/Linux.

forma transparente para el usuario siendo estos sistemas de Handoff Vertical u Horizontal. El traspaso (en ingls handover) se ocupa de la movilidad del usuario final en una red, garantiza la continuidad de los servicios inalmbricos cuando el usuario mvil se mueve a travs de las fronteras en este caso en redes Wi-Fi [2]. La diferencia entre el Hand-Over horizontal con respecto del vertical es bsicamente que el primero realiza traspaso entre redes de una misma tecnologa, para efectos de este articulo serian las redes IEEE 802.11, y el segundo hace traspaso entre seales de diferentes tecnologas tales como telefona celular, enlaces satlitales u otro tipos de redes inalmbricas, el Hand-off horizontal se puede realizar de dos formas que son los traspaso suaves y duros, en el primero la transicin entre redes no es percibida por el usuario debido a que las conexiones se mantienen entre los traspasos, diferente del Hand-Over duro que se desconecta de forma abrupta [3] lo cual afecta la continuidad de la conexin por un lapso de tiempo mas largo, comparado con el convencional traspaso duro, el traspaso suave tiene las ventajas de una transmisin ms fiable y tambin dirigido a la continuidad de los servicios mviles pero ello genera costos a nivel de recursos de hardware debido a la complejidad temporal de sus algoritmos los cuales requieren mas potencia de procesamiento. El algoritmo que permite hacer Hand-off horizontal y que se implement en una herramienta de software de prueba se dividi en tres fases ordenadas como se muestra en la Figura 1 despus de un anlisis detallado teniendo en cuenta las particularidades de las redes 802.11. Exploracin: Por la cual se determina qu redes Wi-Fi que pueden estn disponibles y pueden ser usadas, tambin sus parmetros tales como cifrado, potencia de la seal, calidad con respecto la relacin seal a ruido. Decisin: La segunda fase es la toma de decisin o preejecucin aqu se evala los parmetros anteriormente descritos y con ello realizar un cambio de red . En este proceso existen polticas que definen las circunstancias en las que se debe establecer los parmetros para realizar el Hand-off y las acciones que van estrechamente relacionadas a las polticas existen mtodos y tcnicas para identificar la situacin para procesar los parmetros obtenidos en la fase de exploracin.

EXPLORACIN EXPLORACIN

DECISIN DECISIN

EJECUCIN EJECUCIN

Figura 1. Fases de un algoritmo de Hand-Over

Ejecucin: La tercera fase es la de ejecucin donde se realiza el cambio de red, el objetivo en esta fase es minimizar el tiempo de latencia y la prdida de paquetes. 3. Algoritmos de potencia y calidad de la seal A continuacin se van a detallar los algoritmos utilizados para realizar Hand-Over duro teniendo en cuenta parmetros de potencia de la seal y calidad, los tipos de medidas de seales para decidir el traspaso:

Medicin de la calidad de seal: Relacionadas con el BER (Bit Error Rate) y la relacin Seal a Ruido (S/N). Medidas de nivel de seal: relacionadas con la potencia.

Se definen estos dos parmetros para ser evaluados por los respectivos algoritmos de Hand-Over y poder implementarlos en una red Wi-Fi. El Hand-Over causado por nivel de seal se da cuando la potencia de la seal es menor que un cierto umbral definido arbitrariamente y

Descripcin de diferentes algoritmos de Hand-off horizontal para la evaluacin de redes WiFi en el sistema operativo GNU/Linux.

3
PARA i=0 hasta N ESSID= M_redes[0,N] BSSID=M_redes[3,N] SI M_redes[1,N]>P: MEJOR=ESSID P=M_redes[1,N] RETORNO True SALIR

principalmente se produce cuando el nodo cliente se encuentra en el lmite de la zona de cobertura [4]. El Hand-Over producto de la mala calidad de la seal se da cuando la calidad de la seal es menor que un cierto umbral tambin definido arbitrariamente lo cual es causado por interferencias que afectan directamente la seal de la onda portadora. Algoritmo fase Exploracin:

INICIO C= 0 P= -100 Seal_Salida=False SCAN(): LEER N PARA i=0 hasta N PARA j=0 hasta 5 M_redes[i*j]=RECOPILAR() RECOPILAR(): *Ejecucin comandos GNU/LINUX { *IWCONFIG *IWLIST *DHCLIENT *NETWORK-MANAGER } RETORNAR Matriz [ ] MIENTRAS (Seal_Salida<>True) hilo.SCAN().empezar() SALIR

En la fase dos tenemos tambin la ejecucin de un hilo llamado HO el cual realiza el Hand-Over ya sea por calidad o por potencia y retorna un valor True si hubo algn cambio de lo contrario la variable cambio se mantiene en False. Algoritmo fase Ejecucin:
INICIO SI Cambio=True: *Ejecucin comandos GNU/LINUX { *IWCONFIG *IWLIST *DHCLIENT *NETWORK-MANAGER } SALIR

Podemos observar que en sta fase la ejecucin indefinida de la funcin SCAN la cual es ejecutada en un hilo, por lo cual podemos definir la complejidad temporal de esa primera fase como: T(n)=n2 + n + c para el peor caso y caso promedio, despreciando o desconociendo los tiempos que gasta cada comando del sistema operativo GNU/Linux. Y el mejor caso seria T(n)=1 en dado caso que la matriz sea nula al no haber redes en el entorno. Algoritmo fase Decisin:
INICIO LEER Modo hilo.HO().empezar() HO(Modo,N): Cambio=false SI Modo=Calidad: PARA i=0 hasta N ESSID= M_redes[0,N] BSSID=M_redes[3,N] SI M_redes[2,N]>C: MEJOR=ESSID C=M_redes[2,N] RETORNO True SINO

sta fase es bastante particular porque ejecuta en su mayora comandos internos de GNU/Linux el cual llama herramientas que se encargan de recopilar informacin detallada de cada una de las redes. Para definir la complejidad temporal es evidente a simple vista que tomara una tiempo constante T(n)=1 despreciando la actividad particular de cada comando pero de nuevo se debe tomar en cuenta la complejidad temporal de cada uno, por lo que se asume que cada uno realiza una bsqueda secuencial lo que modificara su complejidad a T(n)=n. 4. Herramientas para recopilacin y agrupamiento de datos de redes inalmbricas IEEE 802.11 Es evidente la importancia de contar con herramientas de apoyo que permitan extraer datos de forma precisa y confiable, para GNU/Linux es una caracterstica y un privilegio contar con dichas herramientas gracias a la comunidad enorme que da a da aporta, interacta e intercambia conocimiento en muchas reas de la ciencia. Las herramientas para diagnostico de redes inalmbricas brillan por ser de una calidad que supera lo convencional, a continuacin se enumeraran diferentes programas tiles para recopilar informacin y que nos permitan realizar un Hand-Over de forma satisfactoria: Iwlist : Se utiliza para mostrar informacin adicional de una interfaz, el principal argumento se utiliza para seleccionar una categora de informacin.

Descripcin de diferentes algoritmos de Hand-off horizontal para la evaluacin de redes WiFi en el sistema operativo GNU/Linux.

Enumera en una lista con los puntos de acceso y celdas Ad-Hoc dentro de rango, y opcionalmente informacin sobre ellos (ESSID, calidad, frecuencia, modo, BSSID entre otros). El tipo de informacin devuelta depende de lo que admite la tarjeta NIC inalmbricas. Para el escaneo se realiza (el alcance de la exploracin) se ver afectado por los parmetros del driver. Adicionalmente, sta orden debera tomar argumentos para modificar el comportamiento del escaneo, pero actualmente esta funcionalidad no se encuentra implementada. Obviamente la lista de frecuencias disponibles en el dispositivo y el nmero de canales definidos. Tenga en cuenta que normalmente el driver devuelve el nmero total de canales y slo las frecuencias disponibles en la presente localizacin, por lo que no hay relacin uno a uno entre las frecuencias mostradas y los nmeros de canal, otras de las caractersticas y no menos importantes son: Lista de las tasas de transferencia soportadas por el dispositivo. Lista los tamaos de claves de cifrado soportadas y muestra todas las claves de cifrado disponibles en el dispositivo. Lista de los diversos atributos de administracin de energa y los modos del dispositivo. Lista las potencias de transmisin disponible en el dispositivo. Lista la cantidad de intentos de transmitir treintenos de vuelta a la vida en el dispositivo.

Iwconfig: Se utiliza para establecer los parmetros de la interfaz de red que son especficas de la operacin inalmbrica (por ejemplo: la frecuencia). Iwconfig tambin puede ser utilizada para mostrar los parmetros y estadsticas de servicios inalmbricos. Todos estos parmetros y las estadsticas son dependientes de dispositivo. DHCLIENT: Es uno de los clientes DHCP mas populares para Linux ya que es el cliente DHCP por omisin al configurar alguna interfaz de red como para que obtenga su configuracin por medio de ese protocolo. Es muy til cuando se requiere obtener el direccionamiento despus de realizar la asociacin a una red inalmbrica [5]. Kismet: Es un programa escrito en C++ desarrollado por Mike Kershaw que permite detectar redes inalmbricas (WLANs) mediante la utilizacin de tarjetas wireless en los estndar 802.11a, 802.11b y 802.11g, entre sus caractersticas ms importantes estn: Verificar que nuestra red est bien configurada y que puede trabajar en modo monitor. Detectar otras redes que interferencias a la nuestra. pueden causar

Muestra informacin conectados a

sobre la

los

clientes red.

La figura 2 muestra una vista parcial al ejecutar el comando iwlist con una salida por consola:

Funciona con la tarjeta en modo monitor y guarda un archivo con los paquetes capturados

Para mas informacin de Kismet se puede visitar su website http://www.kismetwireless.net/ donde encontraran documentacin detallada as como los cdigos fuentes liberados bajo la licencia GPL.

4. Conclusiones Se logr plantear con xito dos algoritmos que posibilitan la seleccin de las redes Wi-Fi de forma automtica aplicando la tcnica Handover. Horizontal.
figura 2. Ejemplo de salida del comando iwlist

Se pudo estimar la complejidad temporal de los algoritmos desarrollados para cada mtodo de seleccin de red, llegando a concluir que su tiempo puede variar

Descripcin de diferentes algoritmos de Hand-off horizontal para la evaluacin de redes WiFi en el sistema operativo GNU/Linux.

dependiendo al asociamiento a la red por parte de los comandos internos de GNU/Linux. Se dieron a conocer propuestas interesantes a la hora de recopilar datos de diferentes estaciones inalmbricas usando herramientas libres nativas para GNU/Linux. Referencias [1] Garcia Villegas, Eduard. Vidal Ferr, Rafael. Localizacin en redes WLAN 802.11: desarrollo e implementacin de una solucin basada en traps SNMP. Departament dEnginyeria Telemtica. Universitat Politcnica de Catalunya. [2] Garca Rubia Jos Miguel - Riera Sals Jos Manuel - Ruiz Reyes Nicols-Martnez Muoz Damin , Optimizacin de algoritmos de traspaso con continuidad en el sistema UMTS de tercera generacin. [3] Gmez T Juan Guillermo , Abada S. Jos Lisandro, Milln C. Andrs Felipe, Estudio de Algoritmos de Handover para redes inalmbricas heterogneas, Grupo de Investigacin COMBA I+D, Consorcio I2COMM Universidad Santiago de Cali, Cali,Valle, Colombia [4] R. G. Gallager. Principles of Digital Communication. mission of nonstationary images. Ph.D. Dissertation, New York: Cambridge University Press, 2008. [5] Friese, Christopher J. Simulation of Handoff in WiFi wireless networks. Stetson University DeLand, 2004 Autores Oscar Maestre Sanmiguel: Tecnlogo en Telecomunicaciones, Tecnlogo en Administracin de Redes, Certificado en CISCO CCNA y PANDUIT, coautor de 1 libro y 1 articulo basado en investigaciones con NETFPGA trabaja con software libre hace 3 aos, actualmente es Estudiante de ingeniera informtica de la Universidad Pontificia Bolivariana y se desempea en el campo de las Redes y los Servidores, especialmente en la plataforma GNU/LINUX. Javier Eduardo Garca Prada, estudiante de Ingeniera informtica de la Universidad Pontificia Bolivariana seccional Bucaramanga, desarrollador de software, contribuidor y proveedor del software libre desde hace 2 aos, perteneciente al grupo de desarrolladores de NetCAT Netbeans IDE.

Descripcin de diferentes algoritmos de Hand-off horizontal para la evaluacin de redes WiFi en el sistema operativo GNU/Linux.