REGISTRO DE USUARIOS POR PROXIMIDAD BASADOS EN REDES …
Transcript of REGISTRO DE USUARIOS POR PROXIMIDAD BASADOS EN REDES …
: Revista de Investigación Científica y Tecnológica Volumen 58(2),14-30 (2014)ISSN: 1405-9967
REGISTRO DE USUARIOS POR PROXIMIDAD BASADOS ENREDES WPAN
Ofelia Reynoso-Gutiérrez1, Luis A. Gama-Moreno1, J. A. Torres-Rangel1, ClaudiaNoguerón-González2 y F. Javier Cartujano-Escobar2
1) Instituto Tecnológico de Tlajomulco, Km. 10 Carretera Tlajomulco-San Miguel Cuyutlán, Tlajomulco deZúñiga Jalisco. Apartado Postal No.12, Código Postal 45640, [email protected],[email protected],2) Instituto Tecnológico de Zacatepec, Calzada Tecnológico No. 27, Zacatepec, Morelos,México,[email protected], [email protected].
RESUMENEn este artículo se presenta un sistema para detectar dispositivos móviles a través de
redes WPAN basadas en Bluetooth, denominado SRPB (Sistema de Registro por Proximidadbasado en Bluetooth). Con SRPB los usuarios son identificados una vez que entran en el rangode detección de una red WPAN (10 metros aproximadamente) el sistema obtiene la direcciónMAC (Media Access Control)) del dispositivo así como el nombre. Estos datos son utilizadospara obtener datos adicionales del usuario en una base de datos pre-registrada, y de esta manerase registra la asistencia de dicho usuario. SRPB utiliza la biblioteca Wireless CommunicationLibrary (WCL), la tecnología de comunicación que utiliza son los servicios especializados deNokia esto para los smartphones Symbian, el conjunto de protocolos Microsoft, Toshiba yBlueSoleil.
Palabras clave: computación móvil, Bluetooth, redes WPAN.
ABSTRACTIn this paper a system to detect mobile devices through Bluetooth WPAN based
networks, called SRPB (Registration System using Bluetooth Proximity) is presented. WithSRPB users are identified after entering the detection range of a WPAN (about 10 meters) thenetwork system obtains the MAC (Media Access Control) address and name of the device. Thisdata is used to obtain additional user-data in a pre-registered database, and carried outattendance record for that user. SRPB is based on the Wireless Communication Library (WCL)technology that uses communication services specialized for smartphones Nokia Symbian,Microsoft, Toshiba and BlueSoleil set of protocols.
Keywords: Mobile Computing, Electronic Government, Bluetooth, WPAN networks.
1. INTRODUCCIÓNLa aparición de la computación móvil ha traído grandes beneficios a los usuarios tales
como: movilidad, conectividad y uso de herramientas que antes sólo estaban disponibles
para equipos fijos. Gracias a ello, se han desarrollado diversas tecnologías inalámbricas.
Las tecnologías de telecomunicaciones han creado estándares que permiten a usuarios de
dispositivos móviles permanecer conectados de manera inalámbrica. En [1] se describe el
estándar IEEE 802.15.x denominado WPAN (Wireless Personal Area Network). En [2] se
presenta la tecnología ZigBee nombre de la especificación de un conjunto de protocolos de
alto nivel de comunicación inalámbrica para su utilización con radiodifusión digital de
bajo consumo, basada en el estándar IEEE 802.15.4 de redes inalámbricas de área
personal. En [3] se presenta la tecnología WAN (Wide Area Network) la cual es una red de
computadoras que abarca varias ubicaciones físicas, dando servicio a una zona, país,
incluso varios continentes. En [4] se describe Ultrawideband, término que se usa para
hacer referencia a cualquier tecnología de radio que usa un ancho de banda mayor de 500
MHz, en [5] se describe la tecnología Bluetooth, la cual permite una comunicación entre
dispositivos a corto alcance (<10m) para crear redes de área personal y en [6] se describe y
se propone un esquema para acelerar el descubrimiento de dispositivos por Bluetooth. El
esquema propuesto requiere un esclavo potencial para llevar a cabo la búsqueda de
dispositivos mediante la identificación de paquetes en saltos de frecuencia doble. La
tecnología Bluetooth comprende hardware, software y requerimientos de interoperabilidad,
y su desarrollo ha necesitado la participación de los principales fabricantes de los sectores
de las telecomunicaciones y la informática, además, entre sus principales características,
pueden nombrarse su robustez, baja complejidad, bajo consumo de energía y costo. En
base a las ventajas que ofrece este estándar, es posible el establecimiento de grupos
cerrados de usuarios de manera dinámica, evitando la creación de infraestructuras de redes
fijas, a la vez que proporciona una interfaz universal que permite la interoperabilidad,
gracias al carácter abierto de la especificación, haciendo posible el diseño de productos,
servicios y aplicaciones.
El resto del artículo está organizado de la siguiente manera. En la sección 2 se
muestra de manera breve algunas características de la tecnología Bluetooth, en la sección 3
se presenta el descubrimiento y el emparejamiento de los dispositivos, en la sección 4 se
muestra el diseño de la interfaz, en la sección 5 se da a conocer un caso de estudio que hace
uso de la interfaz, por último se presentan las conclusiones.
2. PARTE EXPERIMENTAL
2.1 Equipo
Los dispositivos que se localizaron por SRPB tienen diferentes características,
variaciones tanto en el sistema operativo en el que trabajan así como el tipo de dispositivo
mismo. En la tabla 1 se muestra la información de los dispositivos encontrados por SRPB
en la figura 1.
Tabla 1 Información de los dispositivos encontrados por SRPB.
Nombre deldispositivo
Máscara Sistemaoperativo
Modelo
Doña Ofe 00:1A:DC:A8:77:F1
Nokia OSS40 v2
Nokia6102i
Janneth_Ofelia
94:63:D1:D6:93:74
Samsung GT-S3350
X6Gama 5C:57:C8:2D:AC:45
SymbianS60 5
Nokiax6-00
M4TELSS880
B0:EE:45:EF:7F:A4
Android4.0.4
M4TELSS880
N95Gama 03:TH:65:HI:U9:90
SymbianS60 9.2
NokiaN95
En la figura 1 se observa cómo es que por medio de la dirección MAC del
dispositivo móvil del usuario se logra extraer de la base de datos implementada en SRPB,
la información personal del portador de dicho dispositivo descubierto por medio de
Bluetooth.
2.2 Tecnología Bluetooth
Bluetooth es un estándar global de comunicación inalámbrica conocido también
como estándar IEEE 802.15.1. En [7] se define una WPAN permite la transmisión de voz y
datos entre diferentes equipos mediante un enlace de radiofrecuencia.
Uno de los principales objetivos de la tecnología Bluetooth es conseguir que
aplicaciones de diferentes fabricantes mantengan una comunicación fluida, para
conseguirlo, receptor y transmisor deben ejecutarse sobre la misma pila de protocolos como
se muestra en la figura 2. Así como también crear redes de área personal y establecer
comunicación entre dispositivos de corto alcance. La pila de protocolos de Bluetooth
constituye la parte esencial de la tecnología. La arquitectura de la pila de protocolos es
clasificada en dos módulos: módulo de hardware y módulo de software. La pila de
protocolos de Bluetooth puede dividirse en cuatro capas lógicas, como: Protocolos del
núcleo (Banda base, LMP (Link Management Protocol), L2CAP (Logical Link Control and
Adaptation Protocol) y SDP (Session Description Protocol)), remplazo de cables
(RFCOMM (Radio Frequency Communication)), control de telefonía (TCS (Telephony
Control Protocol Specification)) y protocolos adoptados (PPP (Point-to-point Protocol),
UDP/TCP/IP (User Datagram Protocol/ Transmission Control Protocol/ Internet Protocol),
OBEX (Object Exchange)) [8].
Figura 1. Información personal obtenida desde SRPB.
Pese a que el núcleo de Bluetooth fue desarrollado en su totalidad por la SIG (Special
Interest Group), algunos protocolos como RFCOMM han sido desarrollados siguiendo
recomendaciones de otras instituciones de telecomunicaciones.
Figura 2. Arquitectura de la pila de protocolos de Bluetooth.
2.2.1 Aplicaciones por proximidad.
Las llamadas tecnologías de proximidad (Near Field Communication (NFC), Radio
Frequency Identification (RFID), Bluetooth, Wibree) están llamadas a jugar un papel
fundamental en Internet Móvil. Muchas compañías ya están usándolas con fines
publicitarios y existen muchas empresas especializadas en explotarlas para ofrecer
campañas de marketing de proximidad a grandes marcas que están interesadas en
desarrollar innovadoras formas de comunicación con sus clientes. El marketing Bluetooth
funciona cuando el emisor Bluetooth escanea a su alrededor para detectar los móviles que
tengas dicha tecnología activada y estén en su zona de cobertura; si esos teléfonos están
el emisor Bluetooth le ofrecerá al usuario la descarga del contenido.
La recepción requiere la autorización del dueño del móvil, así, cuando el móvil
detecta la petición del emisor muestra un mensaje en pantalla solicitando permiso y es el
propietario del teléfono el que autoriza la descarga. Se puede difundir todo tipo de
contenidos aceptados por un teléfono móvil. Existen varias aplicaciones basadas en
detección por proximidad en el mercado diferentes plataformas. Para Android hay una gran
variedad de apps como: Localizador de Bluetooth: Esta aplicación puede ser usada para
localizar y encontrar dispositivos con Bluetooth mediante la intensidad de recepción de la
señal del emisor. Cuando más cerca se este del emisor mayor será la recepción de la señal.
Los dispositivos se muestran en una lista con su: nombre, identificador MAC y una
indicación gráfica de la intensidad de la señal, en unidades de decibelios.
2.2.1.1 Proxxi. Es una aplicación que te conecta con personas y cosas a su alrededor,
donde quiera que se encuentre. En
y automáticamente se convierte en miembro de la comunidad de las personas que se
encuentren cerca de tu ubicación. La ubicación no se comparte a menos que se desee
compartir, por lo que la privacidad está protegida [8].
2.2.1.2 Proximity. Este programa nos permite vincular el teléfono móvil y la
computadora vía Bluetooth de modo que cuando el usuario se aleje a más de una distancia
fijada por el mismo se bloquee la pantalla y cuando el usuario se acerque se desbloquee.
2.2.2 WCL
La WCL es de gran ayuda para los desarrolladores de software, la biblioteca incluye
un paquete completo de componentes para desarrollar aplicaciones en las cuales se desea
utilizar las tecnologías Bluetooth, IrDA (Infrared Data Association), WiFi (Wireless
Fidelity) o la comunicación que se realizan desde los puertos serie. La biblioteca puede ser
utilizada con Borland Delphi, Borland Developer Studio, Borland CBuilder, Microsoft
Visual Studio .NET, Microsoft Visual C++ y Microsoft Visual Basic 6.
WCL incluye componentes completos y clases que permiten enumerar y administrar
radios Bluetooth locales, para así solicitar información de dispositivos que cuenten con esta
tecnología activada a distancia, y así transferir archivos, descubrir servicios entre otras
cosas más. Incluye componentes diseñados especialmente para un desarrollo rápido de
aplicaciones Bluetooth Proximity Marketing. El SDK incluye: Bluetooth .NET, Bluetooth
C++, Bluetooth ActiveX y Bluetooth VCL Frameworks los cuales permiten utilizar la
biblioteca con cualquier lenguaje de programación.
2.2.3 Perfiles compatibles
La librería WCL soporta los siguientes perfiles Bluetooth:
2.2.3.1 Perfil de transferencia de archivos (OBEX FTP): Proporciona la capacidad
de navegar, manipular y transferir objetos (archivos y carpetas) en un almacén de objetos
(sistema de archivos) de otro sistema.
2.2.3.2 Perfil Object Push (OBEX OPP): Un perfil básico para el envío de
debido a que la transferencia es siempre influenciada por el emisor (cliente), no el receptor
(servidor).
2.2.3.3 Servicios Especificados Nokia (Nokia OBEX FTP): Los smartphones
Symbian Nokia usan su propio servicio específico para el perfil de transferencia de
archivos por Bluetooth.
2.2.3.4 Perfil de Puerto Serial (SPP): Este perfil se basa en la especificación ETSI
TS 07.10 y utiliza el protocolo RFCOMM. Emula un cable serie para proporcionar un
simple implemento de reemplazo inalámbrico para RS-232 existente, basado en las
aplicaciones seriales de comunicación, incluyendo señales de control familiar. Proporciona
la base para los perfiles DUN (Dial-up Networking), HSP (Headset Profile) y AVRCP
(Audio/Video Remote Control Profile). WCL soporta puertos virtuales COM creados por
los perfiles SPP (Serial Port Profile) y DUN.
2.2.3.5 Phone Book Access (PBA) o Phone Book Access Profile (PBAP): Es un
perfil que permite el intercambio de objetos de la agenda telefónica entre dispositivos.
2.2.3.6 Perfil de manos libres (HFP): Solo con drivers BlueSoleil Bluetooth.
2.2.3.7 Otros perfiles: El SDK proporciona la posibilidad de crear y usar cualquier
perfil personalizado RFCOMM.
2.3 Metodología
2.3.1 Descubrimiento
Para que se realice una conexión Bluetooth es necesaria la siguiente secuencia de
pasos:
Dado que las direcciones no se conocen, es necesario un mecanismo que permita a un
discovery.
Para realizar el descubrimiento de los dispositivos que se encuentren dentro del radio
o proximidad, utilizando la WCL solo se invoca el método wclBluetoothDiscovery-
>Discovery(Radio). De esta forma obtendremos aquellos dispositivos que se encuentren
dentro de la zona de identificación con el Bluetooth activado.
2.3.2 ConexiónUn cliente Bluetooth debe realizar las siguientes operaciones para comunicarse con
un servidor Bluetooth:
Inicializar la aplicación Bluetooth.
Búsqueda de dispositivos y servicios.
Establecimiento de la conexión
Comunicación.
La parte principal para iniciar la comunicación es hacer uso del método wclClient-
>Connect() el cual realiza la conexión con el dispositivo que se haya encontrado dentro del
radio, creando un objeto que permite obtener información sobre el dispositivo como: el
control de acceso al medio MAC, y nombre del dispositivo.
2.3.3 ComunicaciónPara usar un servicio en un dispositivo Bluetooth remoto, el dispositivo local debe
comunicarse usando el mismo protocolo que el servicio remoto. Las siguientes APIs
permiten realizar este tipo de comunicación: RFCOMM, L2CAP. En la figura 2 se muestra
los procesos de comunicación entre el Servidor y Cliente.
2.3.4 Descubrimiento y emparejamiento
durante la cual el dispositivo maestro envía una solicitud a todos los dispositivos que
encuentra dentro de su rango, denominados puntos de acceso. Todos los dispositivos que
reciben la solicitud responden con su dirección. El dispositivo maestro elige una dirección y
se sincroniza con el punto de acceso mediante una técnica denominada paginación, que
principalmente consiste en la sincronización de su reloj y frecuencia con el punto de
acceso. De esta manera se establece un enlace con el punto de acceso que le permite al
dispositivo maestro ingresar a una fase de descubrimiento del servicio del punto de acceso,
mediante SDP. Cuando esta fase de descubrimiento del servicio finaliza, el dispositivo
maestro está preparado para crear un canal de comunicación con el punto de acceso,
mediante el protocolo L2CAP.
Figura 2. Procesos entre la comunicación Bluetooth
El punto de acceso puede incluir un mecanismo de seguridad denominado
emparejamiento, que restringe el acceso sólo a los usuarios autorizados para brindarle a la
piconet cierto grado de protección. El emparejamiento se realiza con un número de
identificación personal (PIN: Personal Information Number). Para esto, el punto de acceso
le envía una solicitud de emparejamiento al dispositivo maestro.
3. RESULTADOS
El objetivo general de este sistema es diseñar e implementar una capa de software a
manera de interfaz entre los dispositivos móviles y el servicio de identificación, que
permita reconocer la identidad del usuario portador de un dispositivo móvil basado en
Bluetooth.
3.1 Método DiscoverLa primera actividad de la API es iniciar el descubrimiento de dispositivos con el
objeto wclBluetoothDiscovery, para llevar esto posible es necesario implementar dos
eventos que posee, el siguiente código contiene uno de los eventos llamado
wclBluetoothDiscoveryDiscoveryStarted, con dicho evento se inicia el descubrimiento de
dispositivos:
Después de iniciar el descubrimiento proximidad, se implementa el siguiente evento
del objeto llamado wclBluetoothDiscoveryDiscoveryComplete, el cual inicia su trabajo
mostrando en un componente TListView los dispositivos encontrados.
Con el siguiente código es posible encontrar dichos dispositivos que están dentro
del rango de identificación.
3.2 Método ConnectLa primera actividad es realizar la conexión con los dispositivos encontrados
utilizando la función TwclBluetoothRadio cómo se muestra en el siguiente código, con el
cual por medio del radio se obtienen los dispositivos dentro del mismo.
Después de identificar aquellos dispositivos dentro del radio, con el objeto llamado
wclClient se realiza la conexión con los parámetros de TwclBluetoothRadio, cómo se
muestra en el siguiente código:
Al objeto wclClient se le implementa el evento wclClientConnect como se muestra en
el código siguiente para así realizar la conexión con el dispositivo seleccionado de la
TListView:
Una vez que se muestran los dispositivos, se establece la conexión para una próxima
comunicación con el dispositivo que actúa como Servidor, así se lograrán comunicar y se
realizarán las posteriores tareas que así requiera SRPB con el dispositivo del usuario.
3.3 Caso de estudio
En el caso de estudio que se presenta a continuación, se muestra SRPB, es un sistema
de acceso a bases de datos a través de la tecnología Bluetooth para dispositivos. La figura 3
muestra la arquitectura de SRPB, posteriormente se explican los componentes.
1. El SRPB inicia el descubrimiento de dispositivos por medio de Bluetooth. El cual
recibe la información de aquellos dispositivos que se encuentran dentro del rango de
identificación. Cuando se establece la conexión con los dispositivos encontrados SRPB
envía un mensaje con el cual solicita el permiso para la conexión.
2. El móvil o cualquier dispositivo que cuente con la tecnología Bluetooth procede a
aceptar o rechazar dicha conexión con SRPB. Posteriormente, SRPB podrá enviar
información a aquellos dispositivos con los cuales estableció la conexión
3. En la base de datos (DBMS: Data Base Management System. MySQL) se
almacena la información del dispositivo, así como la dirección Mac y el nombre con el cual
se identifica al mismo.
4. La información que es almacenada desde SRPB a la base de datos solo puede ser
consultada por los administradores, quienes se encargarán de actualizar, eliminar, agregar o
realizar consultas a la base de datos.
Figura 3. Arquitectura SRPB.
Para mostrar los beneficios que proporciona la implementación de la interfaz
diseñada, se plantea el escenario de una reunión escolar, en este ejemplo es necesario tomar
el registro de los asistentes a dicha reunión.
Las personas que se encuentran registradas previamente al día de la reunión son con
las que se espera su presencia y por lo tanto es necesario tener registrada su asistencia,
dichas personas utilizan sus dispositivos con la tecnología Bluetooth a la cual se les
informa que enciendan dicha tecnología y permitan que sus dispositivos sean visibles para
que así SRPB pueda realizar la identificación de estos dispositivos, para realizar la
conexión y así por medio de SRPB hacerles llegar una imagen en la cual se les indica que
se encuentran en dicha reunión, posteriormente SRPB almacenará los dispositivos
encontrados en la base de datos para su posterior consulta por los administradores.
En la figura 4, se muestra un ejemplo de descubrimiento de varios dispositivos en el
rango. El sistema SRPB muestra por cada dispositivo la MAC address y el nombre del
mismo.
Estos datos son usados para localizar la información registrada en la base de datos del
sistema, y así obtener la identidad de cada persona. De esta manera es como se puede
realizar el registro de asistencia de cada persona a un evento dado.
Figura 4. Descubrimiento de dispositivos.
Se observa que se ahorra tiempo al realizar el pase de lista a la reunión de una manera
dinámica y amigable para los asistentes.
Los asistentes no tendrán que hacer filas para registrar su asistencia, a excepción de
aquellos que, ya sea que no cuenten con un dispositivo móvil con tecnología bluetooth, o
para aquellos que no permitan el emparejamiento del SRPB con su dispositivo bluetooth.
4. CONCLUSIONES
En este artículo se presentó el diseño y la implementación de un sistema denominado
SRPB para la detección de usuarios a través de sus dispositivos móviles basados en la
tecnología Bluetooth. Se describió la problemática de los diferentes protocolos actuales
para la comunicación entre dispositivos basados en Bluetooth. Así mismo, se presentó la
implementación de un sistema para descubrir dispositivos móviles usando la API WCL
para aplicaciones basadas en Windows.
Con este sistema es posible detectar un dispositivo móvil que se encuentre dentro del
rango de una red WPAN (entre 8 y 10 metros), una vez obtenida la dirección MAC del
dispositivo es buscado en una base de datos para obtener el resto de los datos del usuario.
Una vez emparejados los dispositivos móviles con el sistema de detección, es posible
enviarles mensajes usando imágenes con el texto deseado. Con este sistema, se puede
implementar sistema de control de asistencia, como juntas, conferencias, entre otros. Así se
desea implementar está forma de acceso para que sea adoptada para múltiples funciones
que requieran el reconocimiento de personal.
5. REFERENCIAS
Performance Analysis of IEEE 802.15.4International Journal of Computer Applications. Volume 40 No. 5, February 2012.
ZigBee Wireless Sensor and Control Network -13: 978-0-137-13485-4. Prentice Hall Communications Engineering and Emerging Technologies Series.2010.[3] Cisco Networking Aca WAN Technologies CCNA 4 Companion GuideISBN: 1-58713-172-2. Cisco Press. 2007.[4] Ultra Wideband Systems Technologies and Applications -13:978-0-7506-7893-3. Newnes. 2006.[5] Bala, C., Kline, P., Thompson, T Bluetooth Application Programming with the JavaAPIs -22, 2004.[6] J.-R. Jiang, B.-R. Lin and Y.-C. Tseng, "A Mechanism for Quick Bluetooth DeviceDiscovery", The Tenth Mobile Computing Workshop, Taichung, Taiwan, Mar. 2004.[7] Java 2 Micro Edition: Soporte BluetoothIII Madrid, pp. 6-10, 2003.[8] Coenraets C. "Proxxi, A proximity-Based Social App" January, 2014.http://coenraets.org/blog/2014/01/proxxi-a-proximity-based-social-app/