Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Introducción 1
1.1. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Introducción a las tecnologías inalámbricas . . . . . . . . . . . . . . . . 1
1.3. Aplicaciones de Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4. Competencia de Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5. Objetivos del Proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Tecnología Bluetooth 7
2.1. Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3. SIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4. Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.5. Perfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.5.1. Perfil Genérico de Acceso . . . . . . . . . . . . . . . . . . . . . 10
2.5.2. Perfil de Puerto Serie . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5.3. Perfil de Descubrimiento de Servicio . . . . . . . . . . . . . . . 10
2.5.4. Perfil Genérico de Intercambio de Objetos . . . . . . . . . . . . . 11
2.5.5. Perfil de Telefonía Inalámbrica . . . . . . . . . . . . . . . . . . . 11
2.5.6. Perfil de Intercomunicador . . . . . . . . . . . . . . . . . . . . . 11
2.5.7. Perfil de Manos Libres . . . . . . . . . . . . . . . . . . . . . . . 11
2.5.8. Perfil Dial-Up Networking . . . . . . . . . . . . . . . . . . . . . 11
2.5.9. Perfil de Fax . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5.10. Perfil de Acceso LAN . . . . . . . . . . . . . . . . . . . . . . . 12
2.5.11. Perfil Object Push . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5.12. Perfil de Transferencia de Archivos . . . . . . . . . . . . . . . . 12
2.5.13. Perfil de Sincronización . . . . . . . . . . . . . . . . . . . . . . 12
2.6. Topología red Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.7. Piconet y Scatternet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.7.1. Piconet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.7.2. Scatternet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.8. Pila de protocolos de Bluetooth . . . . . . . . . . . . . . . . . . . . . . . 15
2.8.1. Arquitectura hardware . . . . . . . . . . . . . . . . . . . . . . . 16
2.8.1.1. Capa de radio . . . . . . . . . . . . . . . . . . . . . . 17
2.8.1.2. Banda base . . . . . . . . . . . . . . . . . . . . . . . . 18
2.8.1.3. LMP . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
I
II ÍNDICE GENERAL
2.8.2. HCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.8.3. Arquitectura Software . . . . . . . . . . . . . . . . . . . . . . . 21
2.8.3.1. SDP . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.8.3.2. L2CAP . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.8.3.3. RFCOMM . . . . . . . . . . . . . . . . . . . . . . . . 22
2.8.4. Protocolos adaptados . . . . . . . . . . . . . . . . . . . . . . . . 22
2.8.4.1. PPP . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.8.4.2. TCP/UDP/IP . . . . . . . . . . . . . . . . . . . . . . . 23
2.8.4.3. Protocolo OBEX . . . . . . . . . . . . . . . . . . . . . 23
2.8.4.4. WAP . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.9. Pilas de protocolos para modelos de uso de Bluetooth . . . . . . . . . . . 23
2.9.1. Teléfono 3 en 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.9.2. Transferencia de ficheros . . . . . . . . . . . . . . . . . . . . . . 24
2.9.3. Headset final . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.9.4. Acceso a LAN . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.9.5. Bridge de Internet . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.9.6. Sincronización continúa . . . . . . . . . . . . . . . . . . . . . . 25
2.10. Pasos para el establecimiento de la conexión . . . . . . . . . . . . . . . . 25
2.10.1. Estados de un dispositivo Bluetooth . . . . . . . . . . . . . . . . 26
2.10.2. Establecimiento de la conexión . . . . . . . . . . . . . . . . . . 26
2.10.3. Modos de Conexión . . . . . . . . . . . . . . . . . . . . . . . . 29
2.11. Productos Bluetooth disponibles en el mercado . . . . . . . . . . . . . . 29
2.11.1. PocketPCs con Bluetooth . . . . . . . . . . . . . . . . . . . . . . 30
2.11.2. Teclados y ratónes inalámbricos mediante tecnología Bluetooth . 30
2.11.3. Teléfonos móviles . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.11.4. Puntos de enlace mediante Bluetooth . . . . . . . . . . . . . . . 32
2.11.5. Tarjetas Compact Flash Bluetooth de BlueTake . . . . . . . . . . 32
2.11.6. Auriculares o headset . . . . . . . . . . . . . . . . . . . . . . . . 33
2.11.7. Reproductor headset MP3 con Bluetooth . . . . . . . . . . . . . 33
2.11.8. Kit de impresión Bluetooth de 3com . . . . . . . . . . . . . . . . 33
2.11.9. Tarjeta SD Bluetooth de Socket . . . . . . . . . . . . . . . . . . 34
2.11.10.Receptor GPS Bluetooth . . . . . . . . . . . . . . . . . . . . . . 34
2.11.11.Sistema de manos libres Bluetooth para el coche . . . . . . . . . 35
2.12. Material Utilizado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.12.1. BlueCore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.12.2. Dispositivos Bluetooth por USB de Microtune . . . . . . . . . . 37
2.12.2.1. Chip de los dispositivos . . . . . . . . . . . . . . . . . 37
2.12.2.2. MT0760 Bluetooth OneChip . . . . . . . . . . . . . . 37
2.12.3. Sony Ericsson P800 . . . . . . . . . . . . . . . . . . . . . . . . 39
3. IP sobre Bluetooth 41
3.1. IP sobre Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.1. IP sobre L2CAP . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.2. IP sobre [PPP sobre L2CAP] . . . . . . . . . . . . . . . . . . . . 41
3.1.3. IP sobre [BNEP sobre L2CAP] . . . . . . . . . . . . . . . . . . . 42
ÍNDICE GENERAL III
V
VI ÍNDICE DE FIGURAS
Introducción
1.1. Resumen
El mundo de las comunicaciones móviles (wireless) ha experimentado una gran evo-
lución en su desarrollo y aplicaciones. Hoy en día, es posible tener en nuestros hogares
una red inalámbrica IEEE 802.11b [IEEE, WWW], comunicar el móvil con el ordenador
mediante Bluetooth, o comunicar dos redes LAN (Local Area Network) de dos edificios.
Una red inalámbrica es aquella que utiliza ondas electromagnéticas no guiadas como
medio de transmisión de la información. Las grandes ventajas de estas redes son: movili-
dad, facilidad a la hora de la instalación y adaptación a cualquier topología. Este proyecto
trabaja con la tecnología inalámbrica Bluetooth. En la figura 1.1 se puede ver una gráfica
donde se muestra una clasificación de los distintos tipos de tecnologías inalámbricas que
existen.
Bluetooth es el nombre dado a una tecnología nueva (1998) que posibilita la cone-
xión inalámbrica de corto alcance (hasta 100 metros) de voz y datos entre computadoras
de escritorio y portátiles, agendas digitales personales (PDA, Personal Digital Assistant),
teléfonos móviles, impresoras, escaner, cámaras digitales e incluso dispositivos electró-
nicos en el hogar. La finalidad de Bluetooth es sustituir los cables que conectan aparatos
electrónicos. Este nuevo entorno de aplicación se conoce como redes PAN (Personal Area
Network). Sus características más notables son su robustez, la baja complejidad, y el bajo
precio. Bluetooth fué diseñado para funcionar en ambientes de frecuencia ruidosos por
lo que lo hacen robusto frente a interferencias. Los módulos Bluetooth funcionan en la
banda de ISM (Industrial Scientific and Medical) a 2.4GHz, y evitan la interferencia de
otras señales saltando a una frecuencia nueva después de la transmisión de un paquete.
Comparado con otros sistemas que operan en la misma banda de frecuencia, la capa de
radio Bluetooth salta más rápido y emplea paquetes más cortos.
1
2 CAPÍTULO 1. INTRODUCCIÓN
que muy pronto ofrecerán cambios en todas nuestras actividades. Nuevos y emergentes
estándares inalámbricos tales como IEEE 802.11 [IEEE 802.11, WWW], IEEE 802.15
[IEEE 802.15, WWW], Bluetooth [Bluetooth, WWW], HiperLAN/2 [HiperLAN/2, WWW],
HomeRF [HomeRF, WWW] en combinación con otras tecnologías no tan nuevas como la
telefonía celular, asociado con nuevos protocolos como el WAP (Wireless Aplication Pro-
tocol), permitirán la interconexión de las redes actuales e Internet a dispositivos móviles
como teléfonos celulares, PDAs y otros dispositivos portátiles.
Estas nuevas tecnologías inalámbricas utilizan técnicas avanzadas de modulación que
permiten un nivel alto de seguridad, así como resistencia a la interferencia de dispositivos
electrónicos y a otros usuarios. La mayoría de los usuarios podrán compartir una banda
de frecuencia sin interferencias. Además, estas nuevas tecnologías utilizan bandas de fre-
cuencias sin licencia (ISM), que permiten el uso libre de la frecuencia (excepto en Francia
y Japón).
Son muchas las ventajas que ofrecen las tecnologías inalámbricas para el acceso a In-
ternet. En un principio las únicas tecnologías inalámbricas que existían eran la satelital
y la conexión a través de enlaces de microondas. Los proveedores de servicios en Inter-
net brindaban a sus usuarios el acceso a los servicios a través de medios guiados tales
como cobre, cable o fibra óptica. Es decir, el usuario no accedía inalámbricamente a la
información. Los pocos dispositivos que existían en esa época eran limitados y no eran
interoperables debido a que no existían estándares y sólo estaban disponibles por unos
pocos fabricantes. Por ello, el mercado estaba muy segmentado y los precios de los equi-
pos eran elevadísimos [Ref1, WWW], por lo que era imposible su expansión y limitaba el
desarrollo de nuevas tecnologías “sin cables”.
Hoy en día, gracias a la creación de nuevos estándares inalámbricos, se ha permitido
la fabricación de nuevos productos a un precio cada vez más accesible a los usuarios y
con más ancho de banda. A continuación, se describen otros factores que han influido en
la selección de la opción inalámbrica para el acceso a redes e Internet.
1.2. INTRODUCCIÓN A LAS TECNOLOGÍAS INALÁMBRICAS 3
Se han abierto frecuencias que no necesitan permisos para transmisión en las bandas
de 2.4 a 2.4835 GHz y 5 GHz, que habían estado reservadas para equipos industria-
les, científicos y médicos.
Están cambiando los patrones de trabajo, más gente de negocios necesita acceder a
Internet desde cualquier lugar.
Es más fácil para el proveedor de servicios de telecomunicaciones e Internet brindar
a sus usuarios el acceso sin cables que con ellos.
Es más fácil la incorporación de nuevos usuarios a una redes inalámbricas.
Con los nuevos productos y tecnologías inalámbricas los usuarios podrán acceder a
las redes corporativas e Internet desde su casa, de camino al trabajo o en la carretera
sin una conexión física. Con teléfonos inteligentes será posible recibir Internet y enlazar
directamente computadoras, máquinas de fax y otros dispositivos de oficina. A su vez, las
conexiones entre las redes guiadas podrán ser inalámbricas.
Es previsible, por tanto, que en un futuro no muy lejano, la velocidad de los disposi-
tivos “sin cables” se incremente gracias a novedosas tecnologías inalámbricas y a nuevos
estándares.
Al igual que las redes tradicionales guiadas es posible clasificar las redes inalámbricas
en categorías.
Uso de dispositivos BLIP (Bluetooth Local Infotainment Point) [BLIP de Ericsson, WWW]:
Ericsson, compañía creadora de Bluetooth, ha lanzado un nuevo concepto para em-
pujar la utilización de dispositivos de esta tecnología en la calle, como manera de
fomentar su uso para fines comerciales y alimentar su desarrollo. La unidad Blip,
que contiene un pequeño sistema corriendo una versión especial de Linux que per-
mite montar aplicaciones interactivas de entretenimiento e información en estable-
cimientos comerciales y lugares públicos, [Ref2, WWW].
de ondas en esa misma frecuencia como lo son los hornos microondas. Con estos dos en
mente, los creadores de Bluetooth escribieron el estándar de manera que fuera robusto en
situaciones de alto nivel de ruido y donde no se garantiza la claridad del canal.
Los dispositivos Bluetooth luchan constantemente (incluso, también entre sí) por el
espectro de frecuencias con los dispositivos de WLANs como IEEE 802.11 o HomeRF,
aunque estas dos tecnologías no están dirigidas a los mismos mercados. Una tecnología
que comparte algunos casos de uso con Bluetooth es IrDA (Asociación de Datos Infrarro-
jos) [IrDA, WWW], un estándar para comunicaciones vía infrarroja entre dispositivos.
Hay varias cosas que IrDA hace mejor de Bluetooth. Por ejemplo IrDA, en su versión
actual, puede sostener tasas de transferencia de 4 Mbps y 16 Mbps, mientras que Blue-
tooth debe conformarse con 1 Mbps y la promesa de 2 Mbps ó 10 Mbps una vez que
comience el desarrollo de las revisiones del estándar. Hay ciertas características de IrDA
que contrastan fuertemente con las ofrecidas por Bluetooth:
IrDA requiere línea de visión directa entre dispositivos, mientras que Bluetooth
permite la operación a través de objetos no metálicos.
Tecnología Bluetooth
2.1. Bluetooth
El origen de la palabra Bluetooth proviene de Harald Bluetooth (Harald Diente Azul),
quien fue un gran Rey Vikingo que logró unir Dinamarca y Noruega en el siglo X.
Es una tecnología reciente, de especificación abierta1 , que define una forma de co-
municación inalámbrica, la cual posibilita la transmisión de voz y datos entre diferentes
equipos mediante un enlace por radiofrecuencia de corto alcance. Los principales objeti-
vos que se pretende conseguir con esta norma son:
2.2. Antecedentes
En 1994 Ericsson [Ericsson, WWW] inició un estudio para investigar la viabilidad de
una interfaz de radio, de bajo coste y bajo consumo, para la interconexión entre teléfonos
móviles y otros accesorios con la intención de eliminar cables entre aparatos. El estudio
partía de un largo proyecto que investigaba sobre unos multicomunicadores conectados
a una red celular, hasta que se llegó a un enlace de radio de corto alcance, llamado MC
link. Conforme avanzaba este proyecto, se vió que este tipo de enlace podía ser utilizado
1
La especificación abierta hace posible que los vendedores puedan, libremente, implementar sus propios
protocolos de aplicación sobre los protocolos específicos de Bluetooth, permitiendo así el desarrollo de
nuevas aplicaciones que fomentan el desarrollo de las capacidades de la tecnología Bluetooth.
7
8 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
Bluetooth es una norma abierta que se encuentra en fase de revisión y mejora. La ver-
sión actual es la 1.1 [BTSIG1.1, WWW], posterior a la 1.0 y a la 1.0b[BTSIG1.0B, PDF].
Si se tiene en cuenta que esta tecnología está comenzando a dar sus primeros pasos, son
de esperar nuevas revisiones en los próximos años conforme se vayan incorporando al
mercado nuevos productos, y surjan nuevos escenarios de uso de los equipos.
2.3. SIG
A principios de 1997, y a medida que avanzaba el proyecto MC link, Ericsson fue
despertando el interés de otros fabricantes de equipos portátiles. En seguida se vió clara-
mente que para que el sistema tuviera éxito, un gran número de equipos deberían estar
equipados con esta tecnología. Esto fue lo que originó a principios de 1998, la crea-
ción del grUpo de interés especial (SIG, Special Interest Group), formado por 5 pro-
motores que fueron: Ericsson, Nokia [Nokia, WWW], Toshiba [Toshiba, WWW], IBM
[IBM, WWW] e Intel [Intel, WWW]. La especificación surgió de la colaboración de estas
empresas, a la que después se incorporaron 3COM/Palm [3COM/Palm, WWW], Compaq
[Compaq, WWW], Dell [Dell, WWW], Motorola [Motorola, WWW], Xircom [Xircom, WWW].
Actualmente, existen más de 1600 empresas que han adoptado esta tecnología para desa-
rrollarla con sus propios productos, convirtiendo a Bluetooth en una de las tecnologías de
red jamás implantadas con tanta rapidez.
El objetivo princiapal para los productos Bluetooth de primera generación fueron los
entornos de negocios que viajaban frecuentemente. Por lo que se pensó en integrar el chip
de radio Bluetooth en equipos como: ordenadores portátiles, teléfonos móviles, PDAs y
auriculares. Esto originaba una serie de cuestiones previas, que en un futuro se convirtie-
ron en propiedades de Bluetooth, tales como:
El emisor de radio deberá consumir poca energía, ya que debía integrarse en equipos
alimentados por baterías.
Para poder operar en todo el mundo era necesaria una banda de frecuencias abierta,
es decir, sin necesidad de licencia independientemente del lugar del planeta donde nos
encontremos, para transmitir hasta una distancia de 100 metros a velocidades de transfe-
rencia del orden de los 721 Kbps. Sólo la banda ISM (médico-científica internacional) de
2,45 GHz cumple con estos requisitos, con rangos que van de los 2.400 MHz a los 2.500
MHz, y sólo con algunas restricciones en países como Francia y Japón, hasta hace poco
España también tenía restricciones.
2.4. FUTURO 9
2.4. Futuro
La tecnología Bluetooth comprende equipos hardware, software y requisitos de in-
teroperabilidad, por lo que para su desarrollo ha sido necesaria la participación de los
principales fabricantes de los sectores de las telecomunicaciones y la informática, ya men-
cionados (ver 2.3).
Bluetooth SIG creó diversos grUpos de trabajo para desarrollar la tecnología. El grUpo
de Audio/Vídeo, es presidido por Ruud van Bokhorst (Philips [Philips, WWW]) y Mar-
kus Zumkeller (Sony [Sony, WWW]). Los avances logrados en este área, en términos de
estándar de productos, se centran en: audífonos, parlantes y micrófonos de audio con gran
calidad, visualización de vídeo inalámbrico de corto alcance, calidad de voz de dictado,
cámaras de vídeo inalámbricas, funcionalidad de videoconferencia y calidad de voz de
banda ancha.[Ref4, WWW]
En el año 2002 se estima que se incorporó, la tecnología Bluetooth, a más de 100
millones de dispositivos, entre ellos teléfonos móviles, computadoras y otras clases de
equipos electrónicos.
Algunos investigadores norteamericanos predicen[Ref3, WWW] que para el 2005 se
venderán 955 millones de dispositivos equipados con tecnología Bluetooth. El estudio
de Cahner[Cahner, WWW] (Cahner’s Instat Group) hace referencia a un gran desarrollo
en la tecnología inalámbrica, a pesar de los desagradables informes que aluden a que el
desarrollo se verá afectado por la recesión económica.
2.5. Perfiles
Un perfil es un conjunto de características funcionales para cada aplicación que Blue-
tooth soporta. El concepto de perfil se utiliza para asegurar la interoperabilidad entre varias
unidades Bluetooth que cumplan los mismos perfiles. Cada dispositivo Bluetooth tiene al
menos un perfil, es decir, una aplicación para la cual se puede utilizar el dispositivo.
Cuando dos equipos quieran comunicarse entre sí, deben tener un perfil compartido. Por
ejemplo, si se quiere transferir un fichero o archivo desde un ordenador preparado para
Bluetooth a otro, ambos deben poseer o tener configurado un perfil de transferencia de
archivos, como OBEX.
La posibilidad de definir perfiles en Bluetooth marca una diferencia con otras tecno-
logías inalámbricas que solamente se centran en capas física y enlace.
En la figura 2.1 se destacan, con un asterisco (*), los perfiles a estudiar y probar en
este proyecto.
Los perfiles se clasifican dentro de modelos de uso. Dentro de cada modelo existen
uno o más perfiles que definen las diferentes capas del protocolo Bluetooth. Hay muchos
modelos de uso, y a medida que pasa el tiempo se diseñan nuevos modelos, por lo que es
muy difícil enumerarlos todos.
Cada equipo determina que perfiles ha de cumplir, por ejemplo, un auricular cumplirá
el perfil de auricular (headset) y el de acceso genérico (GAP,Generic Access Profile), pero
no el de puerto serie (SPP) o el de propiedades de marcado en red (DUN). En la figura 2.5
se puede ver la pila de protocolos de Bluetooth.
A continuación, se explican algunos de los perfiles Bluetooth más interesantes.
10 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
un esclavo puede transmitir, reservando ranuras temporales para éste. El papel de maes-
tro es, generalmente, de aquel que comienza la comunicación, aunque este papel puede
cambiarse más tarde.
Un maestro puede establecer comunicación con hasta 7 esclavos activos. Cabe desta-
car que el papel de maestro o esclavo solamente tiene importancia a la hora de realizar el
sincronismo a bajo nivel.
2.7.1. Piconet
Si un equipo se encuentra dentro del radio de cobertura de otro, estos pueden esta-
blecer conexión entre ellos. En principio sólo son necesarias un par de unidades con las
mismas características de hardware para establecer un enlace. Los participantes en la pi-
conet pueden intercambiar los papeles si un esclavo quisiera asumir el papel de maestro.
Sin embargo sólo puede haber un maestro en la piconet al mismo tiempo.
Cada unidad de la piconet utiliza su identidad maestra y reloj nativo para seguir en el
canal de salto. Cuando se establece la conexión, se añade un ajuste de reloj a la propia
frecuencia de reloj nativa de la unidad esclava para poder sincronizarse con el reloj nativo
del maestro.
14 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
Las unidades maestras controlan en tráfico del canal, por lo que estas tienen la capa-
cidad para reservar slots en los enlaces SCO. Para los enlaces ACL, se utiliza un esquema
de sondeo. A un esclavo sólo se le permite enviar un slot a un maestro cuando éste se ha
dirigido por su dirección MAC (medio de control de acceso) en el procedimiento de slot
maestro-esclavo.
2.7.2. Scatternet
Los equipos que comparten un mismo canal sólo pueden utilizar una parte de la capa-
cidad de éste, ya que lo tiene que compartir. Aunque los canales tienen un ancho de banda
de un 1 Mhz, cuantos más usuarios se incorporan a la piconet, disminuye la capacidad
hasta unos 10 kbit/s. Teniendo en cuenta que el ancho de banda medio disponible es de
unos 78 MHz (de 2402 MHz a 2480 MHz) en USA y Europa (excepto en Francia), éste
no puede ser utilizado eficazmente, cuando cada unidad ocUpa una parte del mismo canal
de salto de 1 MHz. Para poder solucionar este problema se adoptó una solución de la que
nace el concepto de scatternet.
Para crear una scatternet un dispositivo de una de las dos piconets tiene que pertene-
cer a dos de éstas. Para esto hay dos formas de hacerlo: ser esclavo de las dos piconets
o ser esclavo de una piconet y maestro de la otra. Las unidades que se encuentran en el
mismo radio de cobertura pueden establecer potencialmente comunicaciones entre ellas.
Sin embargo, sólo aquellas unidades que quieran intercambiar información comparten un
mismo canal creando la piconet. Este hecho permite que se creen varias piconets en áreas
de cobertura sUperpuestas. A un grUpo de piconets se le llama scatternet. El rendimiento,
en conjunto e individualmente de los usuarios de una scatternet es mayor que el que tiene
cada usuario cuando participa en un mismo canal de 1 MHz. Además, estadísticamente se
obtienen ganancias por multiplexión y rechazo de canales de salto. Debido a que indivi-
dualmente cada piconet tiene un salto de frecuencia diferente, diferentes piconets pueden
usar simultáneamente diferentes canales de salto.
2.8. PILA DE PROTOCOLOS DE BLUETOOTH 15
Empaquetamiento y peticiones
Determinación de conexiones
Autenticación
FHSS
Frequency Hopping Spread Spectrum funciona con la transmisión de un paquete de infor-
mación sobre un canal distinto cada vez, siguiendo un patrón de salto que conoce tanto
el emisor como el receptor. De esta forma se evitan muchas interferencias y se consigue
18 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
robustez. Cada ranura temporal en Bluetooth dura 625 , y cada paquete puede durar
una, tres o cinco ranuras temporales, llamadas slots.
Clases de potencia
Un dispositivo Bluetooth se clasifica dentro de 3 tipos de potencia:
Clase de potencia 1: para aparatos de gran cobertura, 100 metros, con una potencia
máxima de 20 dBm.
Clase de potencia 3: para aparatos de bajo alcance, 10cm, con potencia máxima
entorno a 0 dBm.
Tipos de paquetes
En una primera clasificación, hay tres tipos de paquetes, los que ocUpan 1, 3 ó 5 ranuras
temporales (slots). Además de las ranuras temporales, los paquetes también se diferencian
por los distintos modos de corrección de errores, que son DM (Data Medium Speed) o DH
(Data High Speed). También existen los paquetes DV (Data Voice), como combinación
de datos SCO y ACL en un mismo paquete en una ranura. Por lo que existen nueve tipos
diferentes de paquetes, tres DM, tres DH y tres DV.
En la figura 2.11 siguiente, se ve el formato de un paquete SCO y de un paquete ACL,
respectivamente, donde la única diferencia entre ellos es la carga útil o payload.
Direcciones de las unidades Bluetooth
Los dispositivos Bluetooth tienen asignadas cuatro tipos diferentes de direcciones, cada
una con una función distinta.
20 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
BD_ADDR (Bluetooth Device Address) dirección única de 48 bits que cada dispo-
sitivo transceptor de Bluetooth posee.
Seguridad en Bluetooth
La seguridad, en el nivel de enlace, se mantiene mediante la autenticación de los usuarios
y la encriptación de la información. Para esta seguridad básica se necesita una dirección
pública que sea única para cada dispositivo (BD_ADDR), dos claves secretas (clave de
autenticación y clave de encriptación) y un generador de números aleatorios. Primero, el
dispositivo realiza la autenticación emitiendo un mensaje y el otro dispositivo tiene que
enviar una respuesta a ese mensaje basado en el propio mensaje, su BD_ADDR y una
clave de enlace compartida entre ellos. Después de la autenticación, la encriptación se usa
para comunicarse.
2.8.1.3. LMP
LPM es el protocolo que administra todos los recursos preestablecidos por la capa
banda base, realiza transición entre modos de potencia, administra los enlaces y realiza
funciones de seguridad. Principalmente, el Protocolo de administración del enlace, se
encarga de descubrir otros administradores remotos y comunicarse con ellos.
2.8. PILA DE PROTOCOLOS DE BLUETOOTH 21
2.8.2. HCI
La interfaz de controlador del host, HCI, es un dispositivo hardware opcional dentro
del dispositivo Bluetooth. HCI es utilizada principalmente como interfaz entre un ordena-
dor y un dispositivo Bluetooth, ésta puede trabajar con varias capas diferentes del contro-
lador del computador: USB, RS 232 ó UART. HCI envía órdenes al controlador de banda
base y al protocolo LMP. A través de esta interfaz, las capas altas de la pila Bluetooth
pueden comunicarse con las capas bajas mediante comandos.
Principalmente, HCI realiza tres funciones, implementa las órdenes para el hardwa-
re de Bluetooth, recibe notificaciones de eventos asíncronos cuando algo ocurre, y por
último, realiza la transferencia de datos, sin “importarle” los datos que transfiere.
2.8.3.1. SDP
El protocolo de descubrimiento de servicios sirve para ofrecer u obtener información
sobre otros dispositivos Bluetooth, con vistas a comunicarse con ellos y utilizar los servi-
cios que ofrecen. El protocolo SDP se utiliza siempre y su objetivo principal es descubrir
que servicios ofrecen otros aparatos Bluetooth.
2.8.3.2. L2CAP
Logical Link Control and Adaption Protocol es el primer protocolo a nivel software.
L2CAP apoya la emisión multicanal de protocolos de niveles más altos, la segmentación
de paquetes y la nueva sesión, y el transporte de la información de servicio.
L2CAP es uno de los capas necesarias para los protocolos de niveles sUperiores, ya
que ofrece servicios de datos a estos protocolos. L2CAP puede ser visto como un multi-
plexor, ya que se encarga de coger los datos de las capas sUperiores y de las aplicaciones
y enviarlas, gracias a la interfaz HCI, a las capas bajas de las pila. Esta capa, sólo puede
transmitir datos, nunca audio.
El formato de los paquetes L2CAP es el siguiente:
L2CAP tiene varias funciones, entre ellas se destacan las más importantes:
22 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
Los canales lógicos que crea la capa L2CAP son identificados por un canal de identifi-
cación (CID, Channel Identifier). Las implementaciones para manejar el CID son libres y
no se puede utilizar el mismo CID como punto final local de canal L2CAP para múltiples
canales L2CAP simultáneos entre un aparato local y algún aparato remoto. Las capas que
descansan sobre L2CAP son identificadas por el protocolo multiplexor de servicio (PSM,
Protocol Service Multiplexor). Los dispositivos remotos solicitan una conexión a un PSM
particular, y L2CAP reserva un CID.
2.8.3.3. RFCOMM
2.8.4.1. PPP
PPP está construido para funcionar sobre RFCOMM y poder establecer conexiones
punto a punto. El trabajo de PPP es coger los paquetes IP y enviarlos o recibirlos a una
LAN. En este proyecto PPP se utiliza para asignar direcciones IP a los dispositivos Blue-
tooth con los que se han trabajado.
2.9. PILAS DE PROTOCOLOS PARA MODELOS DE USO DE BLUETOOTH 23
2.8.4.2. TCP/UDP/IP
2.8.4.4. WAP
2.9.1. Teléfono 3 en 1
Un mismo teléfono puede utilizarse como fijo, si se encuentra dentro del radio de ac-
ción del punto de acceso instalado en nuestra casa, como teléfono móvil si está fuera del
radio de acción del punto de acceso, y por último, como medio de acceso a nuestros con-
tactos, teléfonos, correo electrónico, etc. En la figura 2.13 se aprecia la pila de protocolos
necesaria para este modelo de uso.
24 CAPÍTULO 2. TECNOLOGÍA BLUETOOTH
comunicarse.
El número máximo de unidades que pueden participar activamente en una simple pi-
conet es de 8, un maestro y siete esclavos, por lo que la dirección MAC del paquete de
cabecera que se utiliza para distinguir a cada unidad dentro de la piconet, se limita a 3
bits.
Modo Active
En el modo activo, la unidad Bluetooth participa activamente en el canal. El maestro
planifica la transmisión basada en las demandas de tráfico hacia y desde los diferen-
tes esclavos. Además, soporta transmisiones regulares para mantener a los esclavos
sincronizados al canal. Los esclavos activos escuchan en las ranuras maestro a es-
clavo esperando paquetes. Si un esclavo activo no es direccionado, podría dormir
hasta la próxima transmisión del nuevo maestro.
Modo Hold
Los dispositivos sincronizados a una piconet pueden entrar en los modos power-
saving en los que la actividad de los dispositivos es menor. La unidad maestra puede
poner unidades esclavas en modo hold, donde únicamente está funcionando un con-
tador interno. Las unidades esclavas también pueden demandar ser puestas en modo
hold. La transferencia de datos vuelve a comenzar de forma instantánea cuando las
unidades abandonan este modo.
Modo Park
En este modo, un dispositivo se encuentra sincronizado a la piconet pero no partici-
pa en el tráfico. Los dispositivos en el estado park han abandonado sus direcciones
MAC y ocasionalmente escuchan el tráfico del maestro para volver a sincronizarse
y comprobar los mensajes broadcast. Tiene el ciclo de trabajo más corto de los tres
modos de ahorro de energía (sniff, hold y park).
Modo Sniff
Los dispositivos sincronizados a una piconet pueden entrar en los modos de ahorro
de energía en los cuales la actividad del dispositivo es menor. En el modo sniff, un
dispositivo esclavo escucha a la piconet a una tasa reducida, lo que reduce su ciclo
de trabajo. El intervalo sniff es programable y depende de la aplicación. Tiene el
mayor ciclo de vida de los tres modos de ahorro de energía.
Bluetooth y todavía quedan muchas por descubrir. A continuación, se pasa a explicar los
aparatos que incorporan Bluetooth más novedosos disponibles en el mercado.
Bluetooth. Los nuevos productos necesitan para funcionar una computadora que tenga
sistema operativo Mac OS X v.10.2.6 como mínimo. Estos accesorios pueden ubicarse a
una distancia de hasta diez metros de la computadora y tienen encriptación segura de 128
bits, de manera que la información que se escribe en el teclado, por ejemplo, no puede
ser espiada en el camino. Una de las características más importantes es que incorporan
el software AFH (Adaptative Frequency Hopping), también desarrollado por Apple, que
elimina las interferencias entre el teclado y el ratón y cualquier otra herramienta o red ina-
lámbrica que haya en el ambiente y que pueda hacer que el desempeño de los accesorios
no sea óptimo.[Ref6, WWW]
audio y video, 6 MB de memoria RAM interna, además de una ranura para tarjetas de me-
moria Stick Duo (SD), Java MIPD 2.0, sincronización y conexión wireless vía Bluetooth.
Otro aspecto destacado de este nuevo móvil es su excelente pantalla TFT a color con una
resolución de 176x208 píxeles capaz de representar hasta 65,536 colores.[Ref5, WWW]
permitirán poder compartir estos equipos con otros dispositivos Bluetooth. Este kit no es
sólo una solución de impresión inalámbrica para el ordenador, sino que se podrá imprimir
directamente en una impresora vía Bluetooth desde otro ordenador, una PDA o incluso
un teléfono móvil. El computador también puede conectarse con otros dispositivos Blue-
tooth, aparate de la impresora, gracias al adaptador USB.[Ref5, WWW]
orientado el equipo. Es compatible con cualquier dispositivo Bluetooth V1.1 que soporte
el perfil de puerto serie. Sus reducidas dimensiones, 50x90x16mm, y su ligero peso de
61 g, lo hacen el compañero ideal de PDAs, ordenadores portátiles e incluso teléfonos
móviles con conexión Bluetooth durante nuestros viajes. Dispone además de conexión
para antena externa en aquellos casos en que sea necesario o recomendable el uso de
ésta.[Ref5, WWW]
2.12.1. BlueCore
BlueCore [BlueCore, WWW] es un estándar para el desarrollo de chips Bluetooth.
BlueCore realiza arquitecturas que combinan banda de base DSP (Digital Signal Pro-
cessor), radio y las funciones del microcontrolador. Además facilitando un completo soft-
ware Bluetooth se posibilita el desarrollo para lograr la interoperatividad.
Principales Caracteristicas de BlueCore:
Plataforma CMOS: Los dispostivos de BlueCore son fabricados con tecnología de
los semiconductores complementarios de óxido metálico (CMOS, Complementary
Metal Oxide Semiconductor). El bajo coste, suministro de seguridad y los beneficios
del proceso resultante de su tecnología, proporcionan el mejor soporte para ayudar
al éxito de OEMs (Fabricantes de equipos originales) en el competitivo mercado de
las aplicaciones inalámbricas.
2.12. MATERIAL UTILIZADO 37
Interface) y PMC (PMConnex de Project Management Centre) ofrecen Bluetooth 1.1 full-
speed y capacidad de transmisión de voz.
Diseñado como un Bluetooth USB Dongle-on-Chip el MT0760 también puede ser
integrado en ordenadores portátiles, cámaras digitales, PDAs y una amplia variedad de
aplicaciones inalámbricas de voz y datos.
La memoria flash del MT0760 OneChip puede ser programada con la pila Bluetooth
1.1 a través del interfaz del controlador de host (HCI) o mediante el protocolo RFCOMM.
También están disponibles unos perfiles certificados, tales como HSP, HFP, DUNP, FTP
y OPP.
El diseño compacto del MT0760 se encuentra en un solo encapsulado para lograr una
fabricación de gran volumen y bajo coste, con los mínimos componentes externos. Esta
reducción de componentes minimiza los costes y mejora la fiabilidad del producto. Al
igual que el resto de productos OneChip, el MT0760 se presenta con una licencia software
de Microtune.
El dispositivo MT0760 integra en la fabricación el conector USB y la antena impresa.
La antena impresa del módem puede ser separada para agregar una antena dual de cable.
El MT0760 soporta los sistemas operativos Windows 98, 2000, ME y XP, posee una
velocidad de transmisión de 723kbps con certificación FCC (Federal Communications
Commision) y CE (Certificación Europea). El dispositivo MT0760 puede ser clase 1 o de
2.12. MATERIAL UTILIZADO 39
clase 2.
IP sobre Bluetooth
Bluetooth no tiene IP como protocolo nativo, por lo que debe hacerse una tarea de seg-
mentación/ensamblaje para poder transmitir los paquetes IP generados por la aplicación.
Hay varias soluciones para usar IP sobre Bluetooth, en el proyecto se trabajó con IP
sobre RFCOMM e IP sobre BNEP, o lo que es lo mismo, se trataró el perfil de acceso
LAN y el perfil de Red de área Personal (PAN). Descritos en profundidad en la seción
3.2.1 y 3.3, respectivamente.
41
42 CAPÍTULO 3. IP SOBRE BLUETOOTH
física.
Un único terminal de datos puede usar un LAP (LAN Access Point) para una cone-
xión inalámbrica a una LAN, y una vez conectado, operar como si éste estuviera
conectado a la LAN vía DUN (Dial Up Network). El terminal de datos puede en-
tonces acceder a todos los servicios suministrados por la LAN.
Al igual que un único terminal de datos puede conectarse a una LAN a través de un
LAP, un conjunto de terminales de datos pueden conectarse a una LAN de la mis-
ma forma que lo hacía un único terminal. Además, los terminales de datos podrán
comunicarse unos con los otros a través del LAP.
Dos dispositivos Bluetooth pueden comunicarse entre si gracias a una conexión PC-
to-PC, de forma similar a una conexión directa utilizando un cable para establecer
una conexión serie. En este escenario, uno de los dispositivos asumirá el rol de LAP
y el otro dispositivo el papel de DT (Data Terminal).
1. El terminal de datos que quiere encontrar un punto de acceso a una LAN realiza
inquiries para encontrar los LAP.
4. Una vez que el enlace está establecido, una conexión L2CAP es creada y el terminal
de datos guarda los servicios existentes con una utilidad llamada LAN_Access_Using
_PPP. Ésta proporciona los parámetros necesarios para conectarse al LAN Access
Point. El trabajo de intercambio de estos parámetros es responsabilidad del proto-
colo de control del enlace (LCP,Link Control Protocol). Las conexiones RFCOMM
y PPP son establecidas a través del enlace L2CAP.
5. Luego, el terminal de datos debe negociar una dirección IP con el LAP usando una
de las partes fundamentales de PPP, el protocolo de control de IP (IPCP, IP Control
Protocol).
6. Una vez obtenida la dirección IP, el terminal de datos puede acceder a la LAN. Todo
el tráfico PPP es modificado en un enlace de encriptación, pero la autenticación en
el nivel es opcional.
Protocolo LCP
Antes de establecer un enlace PPP entra en juego el protocolo LCP, su trabajo etsá forma-
do por cuatro fases:
1. Intercambio de paquetes LCP del tipo Configure-request. Una vez aceptada la con-
figuración entre los dos extremos con paquetes del tipo Configure-Ack el enlace está
en “OPEN”.
2. En el segundo paso, se determina si este enlace tiene la calidad suficiente para arran-
car los protocolos de red.
El perfil de acceso LAN es construido sobre el perfil de puerto serie (SPP). Para des-
cubrir los LAPs que se encuentran en el rango de cobertura de los terminales de datos
debe usarse el procedimiento General Inquiry del perfil GAP.
Después de una satisfactoria configuración por parte de LCP, se pasa al último paso,
el cual consiste en asignar direcciones IP a los dispositivos de la nueva conexión PPP, este
trabajo es para el protocolo IPCP (IP Control Protocol). Cuando se hayan establecido las
direcciones IP, los paquetes pueden ser enviados a través del enlace PPP.
En la imagen 3.7 se puede ver gráficamente el establecimiento de una conexión PPP.
Protocolo IPCP
Es el protocolo de control de IP. Éste empieza a operar después de que se hayan estable-
cido las conexiones PPP usando LCP y opcionalmente el usuario haya sido autenticado.
El terminal de datos requiere una dirección IP para operar en una LAN. Las imple-
mentaciones PPP permiten tres opciones:
IPCP es usado para pedir una apropiada configuración IP desde un servidor PPP.
Las opciones de IPCP son usadas para pedir una configuración IP especificada. Esta
opción es muy usual si se quieren usar móviles IP.
Con esto último, se quiere decir que no se necesita algún tipo especial de servidor
DHCP. La conexión PPP tomará con cuidado la dirección IP asignada.
3.2. LAN EN BLUETOOTH 47
Para una asignación permanente de una dirección IP, la dirección IP solo identificará
a un dispositivo:
Dirección IP CID
1. Usuario PAN (PANU, PAN User): es el dispositivo Bluetooth que usa los servidores
NAP o GN. El PANU asume el rol de cliente de un NAP o de un GN.
2. Group ad-hoc Network(GN): es una colección de hosts móviles que crean una red
wireless ad-hoc sin el uso de una infraestructura o hardware de red. Una red per-
sonal ad-hoc es una simple piconet de Bluetooth, con conexiones entre dos o más
dispositivos Bluetooth.
3. Punto de acceso a una red (NAP, Network Access Point): es un dispositivo que tiene
uno o más dispositivos en un radio Bluetooth y actúa como proxy, router o bridge
entre la infraestructura de red existente (normalmente LAN) y clientes de una red
Bluetooth (PANUs en este caso).
50 CAPÍTULO 3. IP SOBRE BLUETOOTH
Los distintos escenarios que se pueden crear definen tres posibles roles para un dispo-
sitivo:
Las cabeceras BNEP son borradas y reemplazadas según el tipo de enlace (USB,
I2C (Interfaz IC), bus CAN).
BNEP especifica una mínima unidad máxima de transmisión (MTU) para L2CAP
de 1691 bytes.
Code a 0x01 para indicar el comienzo del siguiente paquete IP, ya que para conocer el
final de un paquete IP en el nivel L2CAP se puede deducir del tamaño del campo de la
cabecera IP.
En todos los escenarios los dispositivos deben estar en el radio de cobertura del NAP,
el cual tendrá tráfico entre el usuario de la PAN y el respectivo servidor de red. El NAP y
el PANU deben mantener abierta la conexión L2CAP.
55
56 CAPÍTULO 4. DESARROLLO DEL PROYECTO
25-08-2003 Linux 2.4.22 con soporte para el perfil ISDN sobre Bluetooth
Linux 2.4.18: Este viejo núcleo contenía los drivers para USB y UART.
Linux 2.4.19: Sistema actualizado con un plus de los drivers de las tarjetas Nokia.
Linux 2.4.20: Soporta BNEP y añade los drivers para Anycom y tarjetas 3Com.
4.1.3. OpenBT
Axis Communications Inc. [Axis, WWW] desarrolló, en primera instancia, un driver
Bluetooth para Linux llamado OpenBT, el cual puede ser usado tanto en ambientes eLinux
(Linux empotrado) como en Linux tradicional. Éste fue el primer stack de protocolos
disponible, siendo ahora un proyecto de código fuente abierto, desarrollado en un kernel
de Linux 2.0.33, de tal manera que no debe presentar problemas de funcionamiento en
versiones posteriores del kernel. Implementa el perfil de LAN mediante enlaces PPP sobre
RFCOMM y además una forma simple del perfil de descubrimiento de servicios (SDPP).
El código fuente en sus versiones para ordenadores y eLinux, se encuentra disponible
en el portal de Internet de Sourceforge [Sourceforge, WWW].
4.1. BLUETOOTH Y LINUX 57
4.1.4. BlueDrekar
El driver Bluetooth de IBM, disponible bajo licencia GPL, implementa la capa de
transporte UART de la interfaz controladora del host (HCI). Este código sirve de referen-
cia para escribir drivers para otras capas de transporte HCI, como USB. El BlueDrekar es
una implementación de referencia de las capas altas del protocolo Bluetooth, disponible
bajo licencia Alpha Works [Alpha Works, WWW].
Según el fabricante, este código ha sido desarrollado y probado en ordenadores con
procesadores de arquitectura i486 ó sUperior, usando un kernel de Linux 2.2.12-20 (Red
Hat 6.1), 2.2.14-5.0 (Red Hat 6.2), 2.2.16-22 (Red Hat 7).
4.1.5. Affix
Esta pila de protocolos para Linux fue desarrollada por el centro de investigación de
Nokia en Helsinki, Finlandia. El software Bluetooth de Affix trabaja sobre plataformas
Intel, ARM (iPaq, ARM9 y otras) y PowerPC (iMac). Las últimas versiones del software
están disponibles en el sitio Web de Affix.
4.1.6. BlueZ
BlueZ fue desarrollada por Qualcomm [Qualcomm, WWW] y actualmente está dis-
ponible para uso público bajo licencia GPL. BlueZ es de código abierto y puede descar-
garse de su sitio Web http://bluez.sourceforge.net. BlueZ es más manejable a la hora de
desarrollar aplicaciones en ella, simplemente, con un dispositivo Bluetooth y un núcleo
configurado adecuadamente, se puede trabajar con cualquier rama o protocolo de Blue-
tooth.
BlueZ ofrece las siguientes funcionalidades:
Soporte para los siguientes perfiles de uso: GAP, DUN, LAN, SPP, PAN, Head-set,
OBEX (FTP), OBEX (OPP).
Existe el inconveniente de que hay que tener un nivel medio del mundo Linux para
poder entender y trabajar con Bluetooth. El segundo problema es la constante evolución
de BlueZ, ya que puede obligar a estar actualizando los paquetes de Bluetooth si se quiere
tener siempre la configuración al día.
En la figura 4.1 se muestra un diagrama de BlueZ.
Para seleccionar las opciones que se desee que tenga el nuevo núcleo, hay que ejecutar
uno de los tres posibles menús:
make config
make menuconfig
make xconfig
Dependiendo de las preferencias de cada uno, se deben compilar las opciones anterio-
res como módulos (poniendo “M”) o como parte del núcleo (“*”).
En [Ref8, WWW] se proporciona un enlace donde se ubica un howto que muestra una
pequeña descripción de cada una de las opciones del núcleo 2.4.22, aunque se podría decir
que son generales para los núcleos 2.4.X.
Una vez seleccionadas todas las opciones necesarias para la ejecución de las pruebas,
se pasa a la compilación del nuevo núcleo y su puesta en marcha. Se puede acceder al enla-
ce anterior, donde, además de explicar las opciones del núcleo, habla de como recompilar
un núcleo nuevo.
60 CAPÍTULO 4. DESARROLLO DEL PROYECTO
bluez-libs-2.4.tar.gz
bluez-sdp-1.2.tar.gz
bluez-utils-2.3.tar.gz
Bluez-libs tiene las bibliotecas para desarrollar aplicaciones para BlueZ. Bluez-utils
almacena las utilidades básicas y auxiliares, como los comandos hciconfig y hcitool, entre
otros que se nombrarán más en adelante.
Una vez descargados los paquetes lo siguiente fue descomprimirlos de la siguiente
forma y sin alterar el orden:
Las fuentes deben instalarse en el mismo orden que se han descomprimido. Para ins-
talar los paquetes habrá que ejecutar las siguientes órdenes, también en el orden indicado,
en el directorio creado al descomprimir los paquetes (recomendable usar el directorio
/usr/src para descomprimir los paquetes):
./configure
make
make install
1
Los alias sirven para no tenter que recordad nombres de sintaxis difícil como, por ejemplo, net-pf-31
y en remplazao usar bluez. Además estos alias son necesarios para poder cargar los módulos. Al ejecutar
Update-modules se actualiza el fichero /etc/modules.conf, por lo que hay que ejecutar ese comando cada
vez que se introduzca un nuevo alias en el fichero.
4.3. CONFIGURACIÓN 61
El siguiente paso es cargar los módulos para poder utilizarlos. Estos pueden cargarse
automáticamente o manualmente. Para cargar módulos manualmente es con el comando
modprobe y el nombre del módulo a cargar. Y para cargar los módulos automáticamente
hay que incluir el nombre de cada módulo en el fichero /etc/modules:
bluez
l2cap
sco
hci_uart
hci_vhci
4.3. Configuración
La sección anterior 4.2 es la explicación de la instalación de BlueZ en los ordenadores,
en esta sección se explica de que ficheros se disponen para que al activar los dispositivos
Bluetooth se inicialicen con la configuración descrita en dichos ficheros. En esta sección
también se inidica como se inicia un dispositivo Bluetooth conectado a la interfaz USB
del ordenador.
autoinit yes;
security auto;
pairing multi;
pin_helper /bin/bluepin;
}
class 0x100;
iscan enable;
pscan enable;
lm accept;
lp rxwitch;
# Autenticacion y Encriptación
#auth enable;
#encrypt enable;
}
Bluetooth con un Sony Ericsson P800, en la cual hay que introducir una contraseña para
crear dicha conexión.
Una vez que está todo correctamente instalado y configurado, los dispositivos se ini-
cializan cuando se conectan al USB. También se puede iniciar un dispositivo manualmente
con ejecutar:
hciconfig hciX Up
Nota: Donde ’X’ es el número identificativo del dispositivo a utilizar. Si, por ejemplo,
se tuviesen dos módems conectados en un mismo ordenador, uno sería el hci0 y otro el
hci1.
El parámetro Up es necesario siempre que el dispositivo no haya sido inicializado, es
decir, cuando al ejecutar hciconfig se muestre lo que se ve a continuación 2 :
hci0: Type USB
BD Address:00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0
DOWN
RX bytes:0 acl:0 sco:0 events:0 errors:0
TX bytes:0 acl:0 sco:0 commands:0 errors:0
4.3.4.1. hciconfig
Con esta herramienta se pude adaptar algunos de los parámetros de la configuración
de los dispositivos Bluetooth conectados. hciconfig permite establecer las configuraciones
apropiadas para cada aplicación.
hciconfig es una herramienta que puede varíar (sus opciones) dependiendo de la ver-
sión, debido al constante desarrollo de BlueZ. Por ello es recomendable ejecutar hciconfig
-h y notar las opciones disponibles, a continuación se muestra la ejecución de este coman-
do.
Uso:
hciconfig
hciconfig [-a] hciX [comandos]
Comandos:
Up Abre e inicializa un dispositivo HCI
down Cierra un dispositivo HCI
reset Resetea un dispositivo HCI
rstat Reinicializa los contadores estadísticos
auth Habilita autenticación
noauth Deshabilita autenticacióon
encrypt Habilita encriptación
noencrypt Deshabilita encriptación
piscan Modo page scan e inquiry scan
noscan Deshabilita scan
iscan Habilita inquiry scan
pscan Habilita page scan
ptype [type] Comprueba/establece el tipo de paquetes por defecto
lm [mode] Comprueba/establece el modo link por defecto
lp [policy] Comprueba/establece la política de enlace
name [name] Comprueba/establece el nombre local
class [class] Comprueba/establece la clase del dispositivo
voice [voice] Comprueba/establece los parámetros de voz
inqparms [win:int] Comprueba/establece el tamaño de la ventana e intervalo de los inquiry scan
pageparms [win:int] Comprueba/establece el tamaño de la ventana e intervalo de los page scan
pageto [to] Comprueba/establece el timeout de los page
aclmtu <mtu:pkt>Establece el ACL MTU y número de paquetes
scomtu <mtu:pkt>Establece el SCO MTU y número de paquetes
features Muestra las características del dispositivo
version Muestra información de la versión
revision Muestra información de la revisión
4.3.4.2. hcitool
Es otra de las herramientas principales del paquete BlueZ. Ofrece servicios básicos
como, por ejemplo, realizar un inquiry, una conexión base banda, obtener información
sobre un dispositivo remoto entre otras funciones. En las siguientes líneas se muestra la
ayuda referente a este comando:
4.3. CONFIGURACIÓN 65
Uso:
hcitool [opciones] <comandos> [par\’ametros_de_los_comandos]
Opciones:
--help Muestra ayuda
-i dev Dispositivo HCI
Comandos:
dev Muestra los dispositivos locales
inq Inquiry a dispositivos remotos
scan Scan a dispositivos remotos
name Obtiene el nombre de un dispositivo remoto
info Obtiene información de un dispositivo remoto
cmd Someter comando HCI arbitrarios
con Mostrar conexiones activas
cc Crear conexión con dispositivo remoto
dc Desconectar de un dispositivo remoto
sr Cambiar el rol master/slave
cpt Cambiar el tipo de paquete en la conexión
rssi Muestra conexión RSSI
lq Muestra calidad del enlace
lst Muestra tiempo límite de la sUpervisión de un enlace
4.3.4.3. l2ping
Permite comprobar si un enlace está establecido, de modo análogo al comando están-
dar ping, el cual también puede utilizarse para comprobar una conexión Bluetooth siempre
que los dispositivos tengan direcciones IP asignadas. Esto será posible si se utiliza PPP
sobre RFCOMM o BNEP.
l2ping [-S dir orixe] [-s tamaño] [-c cantidades] [-f] <bd_addr destino>
4.3.4.4. hcidump
Esta utilidad permite observar los mensajes de bajo nivel intercambiados en un enlace
Bluetooth. hcidump visualiza en pantalla todos los paquetes recibidos y enviados por un
dispositivo específico. En especial, es útil cuando se quiere analizar el funcionamiento de
un dispositivo o depurar a bajo nivel posibles problemas de protocolos de comunicación.
A continuación, se acompaña la ayuda disponible de esta herramienta.
Uso:
Opciones:
-i, --device=hci_dev Dispositivo HCI
-p, --psm=psm Por defecto PSM
-s, --snap-len=len Snap len (en bytes)
-r, --read-dump=file Leer dump de un fichero
-w, --save-dump=file Salvar dump en un fichero
-a, --ascii Datos dump en ascii
-x, --hex Datos dump en hexadecimal
-R, --raw Modo raw
-t, --ts Muestra las marcas de tiempo
-?, --help Muestra esta lista de ayuda
--usage Muestra un mensaje corto del uso
66 CAPÍTULO 4. DESARROLLO DEL PROYECTO
En la figura 4.3 se ve, en el lado del maestro, un ejemplo de una captura de una cone-
xión, a nivel de banda base, por parte del dispositivo que realiza la petición de conexión,
y en la figura 4.4 se muestra la salida del comando hcitool con en el lado del esclavo.
Da soporte para los protocolos de red más comunes como IPv4 e IPv6.
Da soporte para puntos de acceso en donde la red puede ser una LAN corporativa,
GSM u otro tipo de red de datos.
Figura 4.3: Captura de una conexión por el lado del dispositivo maestro
Finalmente, una vez realizados los pasos anteriores hay que añadir la siguiente línea
al fichero /etc/modules.conf para que todo funcione correctamente:
alias bt-proto-4 bnep
Y para que el módulo BNEP se cargue automáticamente hay que incluir en/etc/modules
la palabra bnep. Para probar el protocolo BNEP sin reiniciar el ordenador, hay que cargar
manualmente el módulo:
modprobe bnep
Una vez que todo se ha realizado correctamente, antes de utilizar BNEP hay que estar
seguro que el demonio HCI (hcid) está corriendo y el dispositivo activado.
68 CAPÍTULO 4. DESARROLLO DEL PROYECTO
Figura 4.4: Captura de una conexión por el lado del dispositivo esclavo
Para crear una conexión PAN hay que iniciar primero el demonio pand en un orde-
nador, éste adoptará el papel de maestro y servidor. Para iniciar el servidor PAN en el
ordenador hay que ejecutar lo siguiente:
pand --listen --role <PANU|GN|NAP>
Hay que elegir el rol del servidor (PANU, GN o NAP), dependiendo del tipo de cone-
xión que se quiera establecer, ver punto 3.3.5. Si se elige GN o NAP, el dispositivo será
reconocido como maestro. Siempre se puede elegir entre maestro o esclavo en el fichero
/etc/hcid.conf con la siguiente línea:
4.4. PERFIL DE RED DE ÁREA PERSONAL (PAN PROFILE) 69
lm accept, master
Una vez comprendio hasta esta parte, se está capacitado para establecer una conexión
con un dispositivo, ya sea entre PANUs, entre un PANU y un GN o entre un PANU y un
NAP. Para ello lo único que se necesitará es la dirección BD_ADDR del dispositivo con el
que se quiere establecer la conexión. En los siguientes apartados [ 4.4.2.1][ 4.4.2.2][ 4.4.2.3]
se pasa a crear los distintos tipos de conexiones PAN para los distintos escenarios.
y en el otro ordenador:
pand --connect <bd_addr_PANU_remoto> --role PANU
Las figuras 4.6 y 4.7 muestran las capturas de un servidor y un cliente, respectivamen-
te, en un enlace entre dos PANUs. Para ver los enlaces PAN que hay creados o activos
basta con ejecutar pand –show. Cuando se establece un enlace PAN entre dos dispositivos
Bluetooth, se crea la interfaz bnep0 en cada ordenador que componen la conexión. Para
ver la nueva interfaz creada habrá que activarla (ver 4.4.2.5).
La figura 4.11 recoge una captura con los pasos necesarios para crear un NAP. Nue-
vamente, no se muestra ninguna captura de la conexión del PANU, ya que sería idéntica a
la figura 4.7.
Éste realiza un inquiry a los dispositivos PAN encontrados. Una vez realizado intenta
conectarse a cualquier dispositivo Bluetooth descubierto, la búsqueda se realizará durante
el número de unidades (1 unidad = 1.28 segundos) de tiempo especificado en la opción
duración.
4.4. PERFIL DE RED DE ÁREA PERSONAL (PAN PROFILE) 71
Esta configuración de la interfaz tiene que realizarse en todos los dispositivos que
fonmen parte de la conexión, asignando a cada una la dirección deseada. En las capturas
anteriores que mostraban las conexiones de los distintos escenarios PAN se puede apreciar
el procedimiento seguido para configurar los interfaces de los dispositivos Bluetooth.
72 CAPÍTULO 4. DESARROLLO DEL PROYECTO
Para obtener la ubicación de este directorio y ayuda en general, dependiendo del tipo
de distribución Linux que se esté usando, siempre se podrá conseguir un pequeño howto
ejecutando la siguiente órden:
man ifUp
El perfil de acceso LAN expone como la capa IP de la pila Bluetooth debe usarse
para suministrar un enlace TCP/IP entre dos ordenadores o para ofrecer una red entre un
conjunto de computadores locales.
modprobe rfcomm
74 CAPÍTULO 4. DESARROLLO DEL PROYECTO
Antes de empezar a utilizar la herramienta rfcomm hay que crear los dispositivos rf-
commX4 en /dev, ya que sin ellos no se podrían crear conexiones RFCOMM ni por lo tanto
conexiones PPP. Para crear los /dev/rfcommX hay que situarse en /usr/src/bluez-kernel-2.3
y ejecutar ./create_dev. Si este fichero no existiese, por diferentes motivos (como no ne-
cesitar el paquete BlueZ-kernel), se pueden hacer dos cosas para crear los /dev/rfcommX:
Hay que variar ’X’ de acuerdo al dispositivo que se quiera crear, por ejemplo:
mknod /dev/rfcomm0 c 216 $0
mknod /dev/rfcomm3 c 216 $3
Una vez llegado a este punto, solamente falta probar su correcto funcionamiento. Para
crear un enlace RFCOMM entre dos dispositivos Bluetooth hay que hacer uso de la he-
rramienta rfcomm, a continuación se muestra unas líneas que informan de como utilizar
esta herramienta:
4
La ’X’ es un valor que puede estar entre 0 y 255, incluidos los márgenes. Cada vez que aparezca
rfcommX en el proyecto la ’X’ será sustituida por un valor del intervalo mencionado, ya que si se deja sin
valor o éste está fuera del rango se produciá un error.
4.5. PERFIL DE RED DE ÁREA LOCAL (LAN PROFILE) 75
Uso:
rfcomm [opciones] <comandos> <dev>
Opciones:
-i [hciX|bdaddr] Dispositivo HCI local o Dirección BD
-h, --help Muestra la ayuda
-a Muestra todos los dispositivos (por defecto)
Comandos:
bind <dev> <bdaddr> [canal] Bind a dispositivo
release <dev> Elimina dispositivo
show <dev> Muestra dispositivo
connect <dev> <bdaddr> [canal] Conecta al dispositivo
listen <dev> [canal] Se pone a la espera (listen)
Para crear una conexión RFCOMM entre dos dispositivos basta con dejar en un lado
un dispositivo esperando o escuchando (listen) y conectarse a este dispositivo desde otro
punto con sólo conocer la dirección BD_ADDR des dispositivo remoto que está escu-
chando. Los comandos necesarios son:
Dispositivo 1:
rfcomm listen /dev/rfcommX
En las figuras 4.13 (servidor) y 4.14 (cliente) siguientes se muestran las capturas de
un enlace RFCOMM:
Si se desea tener más de dos dispositivo enlazados, basta con ejecutar los comandos
utilizados por el dispositivo 1 y 2, variando /dev/rfcommX con uno que no sea el mismo
utilizado por el dispositivo conectado, sólo si se va a conectar otro módulo Bluetooth en
la misma computadora. Si por el contrario, se va a conectar un dispositivo desde otro
ordenador daría igual el valor de la ’X’ siempre que esté dentro del rango [0-255]. La
figura 4.15 enseña, con la simple ejecución de rfcomm, las conexiones RFCOMM que
tiene un ordenador con dos dispositivo conectados a él.
Existe el fichero /etc/bluetooth/rfcomm.conf en el que se pueden configurar conexiones
RFCOMM automáticamente al iniciarse una sesión en un ordenador. La estructura de este
fichero es la siguiente:
# Fichero de configuración RFCOMM.
#
# $Id: rfcomm.conf,v 1.1 2002/10/07 05:58:18 maxk Exp $
#
# ejemplo:
#
#rfcommX {
# # Dirección Bluetooth del sispostivo
# device 00:06:A2:02:58:AF;
# # Canal RFCOMM para la conexión
# channel 1;
# # Descripción de la conexión
# comment " Bluetooth dispositivo en PC-09";
#}
La ’X’ indica con el dispositivo (dev virtual) que se desea crear el enlace. Se puede
configurar más de una conexión RFCOMM en éste fichero, simplemente basta con relle-
nar, siempre en el fichero /etc/bluetooth/rfcomm.conf, esta plantilla y cambiar la dirección
4.5. PERFIL DE RED DE ÁREA LOCAL (LAN PROFILE) 77
BD_ADDR, el canal y el identificador del enlace (la ’X’). Ejemplo de posible fichero
rfcomm.conf utilizado:
rfcomm0 {
device 00:06:A2:02:58:AF;
channel 1;
comment " Bluetooth dispositivo 1 en PC-09";
}
rfcomm1 {
device 00:06:A2:02:8C:BD;
channel 2;
comment " Bluetooth dispositivo 2 en PC-09";
}
pruebas para el proyecto, los módulos ppp_async y ppp_generic fueron compilados como
módulos, por lo que antes de poder crear una conexión PPP se tienen que cargar estos
módulos. La figura 4.16 recoge una captura con los módulos cargados en los ordenadores
utilizados para las pruebas del proyecto.
Para crear una conexión con el protocolo BNEP se tiene el demonio PAN (pand) y
para establecer una conexión con el protocolo PPP se dispone del demonio DUN (dund).
Antes de explicar como se utilizó dund para crear conexiones PPP hay que explicar el
demonio PPP que es utilizado pordund. pppd es el demonio PPP y su ejecución significa el
lanzamiento de este demonio. La estructura y algunas opciones del demonio pppd pueden
verse aquí abajo:
Uso:
pppd [ options ]
Options:
<device> Comunicación sobre el dispositivo de nombre
<speed> Pone la velocidad (baudios) que se especifique
<loc>:<rem> Especifica dirección IP local y remota. Se puede omitir una de las dos.
asyncmap <n> Pone el async map a hexadecimal <n>
auth Requiere autenticación
connect <p> Invoca el comando <p>
crtscts Uso de control de flujo hardware RTS/CTS
defaultroute Añade ruta por defecto a la interfaz
file <f> Coge las opciones del fichero <f>
modem Uso del control de líneas módem
mru <n> Pone el valor MRU a <n> para negociación
Para ver una mayor explicación sobre cada opción y la totalidad de las opciones posi-
bles para PPP ejecute man pppd.
Opciones:
--show --list -l Muestra conexiones DUN activas
--listen -s Estado de escucha para conexiones DUN
--connect -c <bdaddr> Crea conexión DUN
--search -Q[duraci\’on] Busca y se conecta
--kill -k <bdaddr> Mata conexión DUN
--killall -K Mata todas las conexiones DUN
--channel -C <canal> Canal RFCOMM
--source -S <bdaddr> Dirección fuente
--nosdp -D Deshabilita SDP
--nodetach -n No comportarse como un demonio
--persist -p[interval] Modo persistente
--pppd -d <pppd> Colocación del demonio PPP (pppd)
--msdun -X[timeo] Habilita el soporte de Microsoft dialUp networking
--cache -C[valid] Habilita la caché de direcciones
Para crear el enlace PPP con dund lo único que hay que realizar es lanzar un demonio
DUN en un lado de la conexión (servidor) y posteriormente conectar los clientes al servi-
dor. Esta forma es más sencilla que estableciendo primero un enlace RFCOMM y luego
lanzar manualmente el demonio pppd. El demonio DUN realiza automáticamente el enla-
ce RFCOMM y el lanzamiento del demonio pppd. Antes de lanzar las órdenes necesarias
para establecer la conexión, falta editar varios ficheros. Por lo tanto, el siguiente paso ha-
cia la comunicación PPP es editar el fichero /etc/ppp/options. En él deben aparecer las
opciones adecuadas al tipo de conexión PPP que se necesiten. El demonio DUN inicial-
mente lee las opciones de /etc/ppp/options, y después las del fichero /etc/ppp/peers/dun,
por lo que en el fichero options puede contener las opciones generales de PPP y el fichero
dun las utilizadas por dund.
A continuación se muestran y se explican las opciones elegidas e incluidas en el fiche-
ro /etc/ppp/options utilizado en las pruebas en uno de los ordenadores:
noauth --> No usar autenticación.
debug --> pppd guarda los contenidos de todos los paquetes de control
enviados o recibidos.
lock --> Espedifica que pppd debería utilizar el bloqueo modo UUUP
del dispositivo serie para asegurarse un acceso exclusivo
al dispositivo.
silent --> pppd no transmitirá paquetes LCP para iniciar una conexión
hasta que un paquete LCP válido sea recibido de la pareja.
se lance dund.
Para crear la conexión PPP es necesario tener un servidor escuchando. Para lanzar el
servidor hay que ejecutar lo siguiente:
dund --listen --channel X
Nota: La ’X’ es para seleccionar el canal. Si no se pone nada, por defecto toma el ca-
nal 1. El canal no es necesario especificarlo, ya que dund elige uno por defecto si no se le
especifica ninguno. Para las conexiones creadas entre los módem Bluetooth no importa el
canal seleccionado (para realizar la conexión entre el dispoistivo Bluetooth de un ordena-
dor y un teléfono móvil, dependiendo del tipo de esta conexión si es necesario seleccionar
el canal apropiado para dicha conexión).
Para comprobar que el demonio DUN está corriendo y ver los procesos que se ejecutan
y sus posibles fallos se disponen de varios ficheros, como por ejemplo /var/log/messages
y /var/log/system.
Después de arrancar el servidor se pasa a crear el enlace PPP. Para establecer la co-
nexión con el servidor se puede realizar de dos formas. La primera es “manualmente”
creando un enlace RFCOMM y posteriormente lanzando el demonio PPP. La segunda
manera de establecer el enlace PPP es lanzando otro demonio DUN para que se conecte
al servidor.
La figura 4.17 muestra los pasos para lanzar el servidor PPP. Y en la figura 4.18 recoge
una captura de cómo se estableció, por parte del cliente, el enlace PPP sobre Bluetooth
entre los dos dispositivos con la “única” ayuda de la herramienta dund.
2a Más fácil que la primera, es crear un enlace con el dispositivo remoto, éste no tiene
que estar esperando este enlace:
4.6. CONEXIÓN BLUETOOTH DEL SONY ERICSSON P800 81
Figura 4.17: Captura con los pasos realizados para lanzar un servidor PPP
Una vez creado el enlace RFCOMM entre los dos dispositivos solamente falta lanzar
el demonio PPP, para ello:
pppd /dev/rfcommX
Figura 4.18: Establecimiento, en el lado del cliente, de una conexión PPP utilizando dund
Figura 4.19: Captura con los pasos realizados por un cliente sin utilizar dund
con una captura que muestra los pasos que se realizaron para conseguir conectar el P800
al móvil.
1. Antes de que el P800 intente conectarse hace una petición SDP para encontrar el
número del canal del perfil SP (Serial Port) en el computador. Este canal solamente
será encontrado si ha sido añadio al ordenador con anterioridad usando el demonio
SDP. Para añadir este canal antes hay que saber cual es, para ello hay que ejecutar
sdptool browse <BD_ADDR_P800>, con la siguiente salida en nuestro caso:
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Headset" (0x1108)
Version: 0x0100
Esto ha permitido saber que el canal que se debe utilizar es el 3. Así que el siguiente
paso consiste en añadir este canal al ordenador con la siguiente órden:
Esto dice al servidor SDP en el ordenador que el servicio de puerto serie está en el
canal 3 de RFCOMM.
debug
noauth
crtscts
lock
local
passive
silent
ms-dns 192.168.6.10
192.168.6.101:192.168.6.102
Antes de ejecutar esto hay que crear el enlace RFCOMM con el P800 utilizando el
dispisitivo /dev/rfcommX, para ello:
La ’X’ que define el dispositivo RFCOMM de /dev utilizado, debe ser la misma del
enlace RFCOMM con el P800 que cuando se proboca la conexión con echo.
Comentar que antes de crear la conexión el móvil P800 solicita un pin 5 , configurado
en la sección 4.6.1, después de introducir este pin, el ordenador solicita el mismo
pin. Y por último, el P800 informa de una solicitud de conexión que se debe aceptar.
La figura 4.23 expone unas capturas con las solicitudes del P800 y del ordenador.
Para todas las tareas, excepto la de transmisión, es necesario configurara primero
una relación permanente y de confianza entre el P800 y el otro dispositivo. Este
proceso se denomina emparejamiento (enlace). El P800 recuerda los dispositivos
emparejados, incluso después de apagarlo, por lo que no tiene que repetir el pro-
ceso en cada conexión con dichos dispositivos. El motivo del emparejamiento es
simplificar las conexiones futuras y convertirlas en seguras, sólo los dispositivos
emparejados se pueden conectar al P800.
5
Para todas las tareas, excepto la de transmisión, es necesario configurara primero una relación perma-
nente y de confianza entre el P800 y el otro dispositivo. Este proceso se denomina emparejamiento (enlace).
El P800 recuerda los dispositivos emparejados, incluso después de apagarlo, por lo que no tiene que repe-
tir el proceso en cada conexión con dichos dispositivos. El motivo del emparejamiento es simplificar las
conexiones futuras y convertirlas en seguras, sólo los dispositivos emparejados se pueden conectar al P800.
88 CAPÍTULO 4. DESARROLLO DEL PROYECTO
Figura 4.24: system log que muestra el enlace PPP entre el P800 y el ordenador
Si todo funciona correctamente se debería ver algo como la captura de la figura 4.24
que muestra el system log. No se porqué, pero la primera vez que se intente conectar el
P800 al ordenador hay que realizar dos veces echo >/dev/rfcommX.
Una vez que la sesión PPP está creada, inmediatamente el P800 intenta encontrar la
IP de la pasarela (router). Esta operación debe ser exitosa o el P800 cortará la conexión.
El P800 intenta encontrar la pasarela buscando un DNS para el host wsockhost.mrouter
en el servidor DNS que se le especifica en la conexión PPP (opción ms-dns del fichero
options). Debe ser capaz de resolver nombres en el dominio mrouter, por lo que hay que
editar un DNS en /etc/bind con el nombre mrouter. A continuación se muestran las líneas
del fichero mroute creado para poder conectar nuestro P800 al ordenador del laboratorio.
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA mrouter. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS mrouter.
@ IN A 127.0.0.1
wsockhost.mrouter. IN A 192.168.6.10
Hay sólo una entrada en el fichero mroute y apunta a la dirección IP 192.168.6.10, que
4.6. CONEXIÓN BLUETOOTH DEL SONY ERICSSON P800 89
corresponde con la dirección del router que da acceso a la LAN para el P800. El router
debe necesariamente dirigir paquetes IP, pero la dirección IP debe ser real.
90 CAPÍTULO 4. DESARROLLO DEL PROYECTO
Capítulo 5
Lineas futuras
El presente proyecto deja puertas abiertas a futuras investigaciones, debido a la conti-
nua y rápida evolución que experimentan todos los tipos de redes inalámbricas. Algunas
posibles investigaciones son:
91
92 CAPÍTULO 5. CONCLUSIÓN Y LÍNEAS FUTURAS
tes, para conocer las últimas novedades que vayan saliendo al mercado en lo referente a
dispositivos Bluetooth.
Las posibilidades que ofrece Bluetooth permiten el desarrollo de nuevos productos
y nuevas aplicaciones que pueden sUponer una mejora en la calidad de vida de muchas
personas, sin necesidad de hacer grandes inversiones de dinero. Por ejemplo, la empresa
Danesa BlueTags [BlueTags, WWW] ha instalado y puesto en marcha con éxito su siste-
ma de seguimiento en el zoológico de la localidad de Aalborg que permitirá a los padres
y monitores que acompañen a los niños durante la visita localizarlos dentro del recinto en
todo momento si estos se extravían o se alejan de su alcance. El sistema está basado entre
otros elementos, en un software de control, unos puntos de acceso Bluetooth repartidos
por todo el recinto, y en unos localizadores que se entregarán al niño a la entrada, en los
que quedará grabada la información básica de contacto con los padres o tutores. éstos reci-
birán inmediatamente un código de acceso al sistema de localización mediante un mensaje
SMS. En caso de que sea necesario, mediante el código recibido será posible responder a
este mensaje y enviar una orden de localización al sistema, el cual nos responderá en unos
instantes informando de la situación del niño dentro del área de contol.
Apéndice A
PDF con este Proyecto Final de Carrera y PPT con la presentación del PFC.
Software: Esta parte incluye todas las versiones de los paquetes disponibles de
BlueZ, descargados de http://bluez.sourceforge.net a fecha de entrega del proyecto.
Además, incluye los parches de BlueZ para los diferentes kernels y los paquetes
.dev para Debian, si se dispone de esta versión de Linux y se prefiere instalar BlueZ
de esta forma.
93
94 APÉNDICE A. CONTENIDO DEL CD-ROM
Bibliografía
[BLIP de Ericsson, WWW] Página oficial de Ericsson sobre sus dispositivos BLIP
http://www.ericsson.com/blip/main.asp.
95
96 BIBLIOGRAFÍA