View
215
Download
3
Category
Preview:
DESCRIPTION
gg
Citation preview
UNIVERSIDAD CENTRAL DE VENEZUELAFacultad de Ciencias
Postgrado en Ciencias de la ComputaciónLecturas de Docencia
Redes de Área Local y Personal Inalámbricas:
Bluetooth
Profesora Agregado Maria Elena Villapol
Diciembre del 2006.
Redes Inalámbricas de Área Local y Personal: Bluetooth
1. Fundamentos de Bluetooth
Bluetooth es una tecnología de radio frecuencia (RF) que ofrece conectividad a corta distancia para equipos personales, portables, PDAs, entre otros. Inicialmente, fue pensado para reemplazar los cables que conectan diversos dispositivos. Se caracteriza por ser de bajo costo y “amigable”.
Bluetooth se enfoca en lo siguiente:
Reemplazo del cable: substitución de interfaces tradicionales, tales como RS-232 y conectores propietarios.
Punto de acceso de voz y data: proporciona una interfaz uniforme para acceder servicios de voz y datos. También se puede usar para proporcionar acceso a una WAN usando un gateway personal tal como un teléfono celular.
Redes ad hoc: proporciona comunicación sin infraestructura, que se puede usar para el soporte a grupos colaborativos (reuniones, conferencias).
El desarrollo de Bluetooth se inicia finales del invierno de 1998. Ercisson, IBM, Intel, Nokia y Toshiba formaron el Bluetooth Special Industry Group (SIG). Su intención era desarrollar una tecnología inalámbrica de corto alcance que debía funcionar en la banda de 2.4 GHZ (ISM).
El nombre de Bluetooth viene del Rey Danes Harald Blatand o Harold Bluetooth en inglés quien es conocido por haber unificado la gente de Scandinavia durante el siglo 10. Fue un nombre dado de forma temporal a ésta tecnología, aunque nunca se ha cambiado.
La especificación fue ofrecida sin royalty a quienes la adoptaran. En Mayo de 1998 había aproximadamente 70 adoptadores. Ahora hay más de 3000. En 1999 se libera la primera especificación (1.0A). Actualmente se encuentra la disponible la especificación de la versión 2.0.
En Diciembre de 1999, se habían incorporado al SIG 3Com, Lucent, Microsoft y Motorola. En Marzo de 1999 se creo el grupo IEEE 802.15 para desarrollar estándares para WPAN. La especificación de Bluetooth fue elegida como documento base para el estándar IEEE 802.15.1.
1.1. Pila de Protocolos
Una especificación de Bluetooth incluye:
Especificación Núcleo (Core specification): describe los detalles de los diversos protocolos que conforman la pila de protocolos. Especificación de perfiles (Profile specification): incluye los detalles del uso de la tecnología Bluetooth para soportar varias aplicaciones. Indica cuales de los aspectos de la especificación del núcleo son obligatorios, opcionales y no aplicables.
2 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
La Ilustración 1 muestra la pila de protocolos que conforman el estándar. La misma divide los protocolos en los siguientes niveles:
Protocolos fundamentales de Bluetooth (protocolos del núcleo): son específicos de la tecnología inalámbrica Bluetooth y han sido desarrollados por el SIG Bluetooth. Protocolos de sustitución de cable: suministran señalización de control que emulan el tipo de señalización que se asocia usualmente con los enlaces de cable. Protocolos de control de telefonía: definen la señalización de control de llamada para establecer llamadas de voz y datos con dispositivos Bluetooth. También define un protocolo (Comandos AT) que definen como pueden controlarse un MODEM y un teléfono móvil. Protocolos adoptados: son protocolos existentes desarrollados por otros que se utilizan para diversos fines en las capas superiores.
Bluetooth Radio
Baseband
Link Manager Protocol (LMP)
Logical Link Control and Adaptation Prottocol (L2CAP)
RFCOMMAudio Control
PPP
IP
UDP/TCP
OBEX
vCard/VCal
WAP
WAEComandos AT
TCS Bin SDP
Interfaz de Control del Host
Pro
toco
los d
e tra
nsp
ort
eP
roto
co
los
mid
dle
wa
re
Protocolos del núcleo
Protocolos de sustitución del cable Protocolos de control de telefonía
Protocolos adoptados
Bluetooth Radio
Baseband
Link Manager Protocol (LMP)
Logical Link Control and Adaptation Prottocol (L2CAP)
RFCOMMAudio Control
PPP
IP
UDP/TCP
OBEX
vCard/VCal
WAP
WAEComandos AT
TCS Bin SDP
Interfaz de Control del Host
Pro
toco
los d
e tra
nsp
ort
eP
roto
co
los
mid
dle
wa
re
Protocolos del núcleo
Protocolos de sustitución del cable Protocolos de control de telefonía
Protocolos adoptados
Ilustración 1: Pila de Protocolos de Bluetooth
1.2. Capa de Especificación de Radio
La especificación de Bluetooth establece el uso de la frecuencia de 2.4 GHz (ISM). La banda de frecuencia en la mayoría de países es de 2.4 – 2.4835 GHZ., definiéndose 79 canales físicos de 1 MHz sobre esta banda (Ver Tabla 1).
Área Rango Regulatorio Canales RFEstados Unidos, mayoría de países de Europa y muchos otros países.
2,4 – 2,4835 GHz f = 2,402 + n MHz, n= 0,…,78
Japón 2,471 – 2,497 GHz f = 2,473 + n MHz, n= 0,…,22
España 2,445 – 2,475 GHz f = 2,449 + n MHz, n= 0,…,22
Francia 2,4465 – 2,4835 GHz f = 2,454 + n MHz, n= 0,…,22
3 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Tabla 1: Reservación de las Frecuencias de Bluetooth a nivel Internacional
Los radios Bluetooth viene en 3 clases dependiendo de su potencia de transmisión (Ver Tabla 2).
La técnica de modulación usada en Bluetooth es la Gaussian Frecuency-Shift-Keying (GPSK), siendo la tasa de baudios de 1 Msps. Pero ya que el tiempo de bit es 1 ms, la tasa de transmisión es 1 Mbps. Adicionalmente, Bluetooth emplea FHSS a 1600 hops/sec. Los saltos se producen entre los 79 canales de 1 MHz de forma pseudo-aleatoria.
Clase Máxima Potencia de
Salida (Pmax)
Potencia de salida
Nominal
Potencia de Salida Mínima (Pmin)
Control de Potencia
1 1000 mW (20 dBm)
N/A 1 mW (0 dBm) Pmin <+4 dBm a Pmax
Opcional:Pmin a Pmax
2 2,5 mW (4 dBm)
1 mW (0 dBm) 0,25 mW (-6 dBm)
Opcional:Pmin a Pmax
3 1 MW (0 dBm) N/A N/A Opcional:Pamin a Pmax
Tabla 2: Potencias de transmisión de los equipos Bluetooth
1.3. Capa de Especificación Baseband
La especificación de la banda base (baseband) define los procedimientos claves para permitir la comunicación entre dispositivos. Relacionados a esta capa existen una serie de conceptos que veremos a continuación, antes de describir su funcionamiento.
1.3.1. Piconets y Scatternets
Una piconet es una colección de dispositivos que pueden comunicarse. La piconet se forma de una forma ad hoc y contiene un dispositivo maestro y a lo sumo 7 dispositivos esclavos (Ver Ilustración2).
4 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Maestro
Esclavo
Maestro
Esclavo
Ilustración 2: Ejemplo de una piconet
Un dispositivo en una piconet puede ser parte de otra piconet (como maestro o esclavo). Esta especie de solapamiento se conoce como scatternet (Ver Ilustración 3).
Maestro
Esclavo
Maestro
Esclavo
Ilustración 3: Ejemplo de una scatternet
1.3.2. Salto de Frecuencia
En Bluetooth el ancho de banda disponible es dividido en 79 canales físicos de 1 MHz. El salto ocurre de una frecuencia a otra en forma seudo aleatoria. La secuencia de salto es compartida entre todos los dispositivos de una piconet. Ya que la tasa de salto es de 1600 saltos/seg cada canal es ocupado por 0,625 ms. Este período es llamado slot. Los slots están numerados secuencialmente.
Los dispositivos (radios) se comunican usando Time Division Duplex (TDD). La data es transmitida en una dirección a la vez y la transmisión se alterna entre las dos direcciones. Ya que más de dos dispositivos usan el medio se está hablando de FDMA. Siendo el acceso a la piconet: FH-TDD-FDMA (ver Ilustración 4).
5 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Ilustración 4: Salto de Frecuencia de Bluetooth
La transmisión de un paquete se inicia al comienzo de un slot. Si un paquete requiere más de un slot, el radio permanece en la misma frecuencia. Después retorna a la frecuencia requerida por la secuencia de salto (Ver Ilustración 5)
Ilustración 5: Transmisión de paquetes que ocupan múltiples slots.
La frecuencia de salto es determinada por el maestro. Ya que piconets diferentes en la misma área tienen diferentes maestros, tendrán diferentes frecuencias de salto. La mayoría de la veces las transmisiones en diferentes piconets ocurrirá en diferentes frecuencias. Ocasionalmente, puede haber colisiones porque dos transmisiones de dos piconets distintas (en la misma área) usando la misma frecuencia. Dichas colisiones son tratadas con la técnica de detección/corrección de errores y mecanismos ARQ.
1.3.3. Tipos de Enlaces
Existen dos tipos de enlaces que se pueden establecer entre el maestro y un esclavo:
1.- Sincrono Orientado a Conexión (SCO): es orientado al tráfico con restricciones de tiempo (audio). En dicha conexión se reserva un ancho de banda fijo en una conexión punto-a-punto (M/E) a intervalos regulares de tiempo. El maestro reserva slots (en pares, uno por cada dirección). Los
6 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
paquetes SCO no son retransmitidos, pero se pueden usar mecanismos de detección/corrección de errores (FEC).2.- Asíncrono no Orientado a Conexión (ACL): está destinado a tráfico best effort. La comunicación se realiza en slots no reservados para tráfico SCO. Los paquetes pueden ser retransmitidos.
1.3.4. Paquetes
La Ilustración 6 muestra la estructura de un paquete y a continuación se describe el mismo:
Código de acceso
Encabezado Carga Útil
LSB 68/72 54 0-2745 MSB
Preámbulo Sync Word Cola
LSB 4 64 4 MSB
Código de acceso
Encabezado Carga Útil
LSB 68/72 54 0-2745 MSB
Preámbulo Sync Word Cola
LSB 4 64 4 MSB
Preámbulo Sync Word Cola
LSB 4 64 4 MSB
Ilustración 6: Formato de Paquete Baseband Bluetooth
Código de Acceso (AC): existe un código corto (68 bits) y otro largo (72 bits). El AC corto es usado para sincronismo, compensación del desplazamiento DC e identificación e identifica todos los paquetes en un canal físico. Los paquetes enviados por un mismo canal físico deben tener el mismo AC. Hay tres tipos de Código de Acceso (AC):
Código de acceso del Canal (CAC): identifica un piconet. Todos los paquetes enviados en la misma piconet tienen el mismo CAC.
Código de Acceso del Dispositivo (DAC): usado para búsquedas (paging) y subsecuentes respuestas.
Código de Acceso de Indagación (IAC): puede ser general o dedicado. El primero se usa para descubrir dispositivos que estén en el alcance. El segundo es usado para un grupo dedicado de dispositivos.
Adicionalmente, el AC incluye los siguientes campos:
Preçambulo: tiene un patrón fijo de 4 símbolos y es usado para compensar el DC. Su valor depende del LSB de la palabra de sincronización (sync word).
Cola: tiene un patrón fijo de 4 símbolos y es usado para extender compensación del DC junto con los tres MSB del syncword. Su valor depende del MSB de la palabra de sincronización (syncword).
SyncWord: cada dispositivo Bluetooth tiene una dirección de 48 bits. Los 24 bits menos significativos son llamados parte de la dirección menos significativa (LAP). El LAP es usado para forma la syncword. Para el CAC, la dirección LAP del maestro es usada. Para
7 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
el GIAC o el DIAC, los LAPs reservados y dedicados son usados. Para la DAC, la dirección LAP del esclavo es usada.
La palabra syncword se forma de la siguiente forma:
o Sumar bits al LAP.o Generar la secuencia PN.o Hacer el XOR de resultante paso 1 y parte secuencia PN.o Generar un código de error de 34 bits para el bloque de
información anterior y colocarlo al comienzo.o Hacer XOR de la PN y la secuencia de 64 bits producida en
paso 4.
Encabezado del paquete: esta formado por los siguientes campos:
o LT-ADDR: dirección de transporte lógica para el paquete. Es la dirección temporal asignada al esclavo en dicha piconet.
o Tipo: identifica el tipo de paquete.o Flujo: proporciona un mecanismo para el control de flujo de un solo
bit para el tráfico ACL.o ARQN: proporciona un mecanismo de reconocimiento de 1 bit para
tráfico ACL protegido por un CRC.o SEQN: proporciona un esquema de numeración secuencial de 1-bit.
Los paquetes transmitidos son etiquetados con 1 o 0.o HEC: Un código de detección de error para proteger el encabezado.
LT_ADDR Tipo Flujo ARQNSEQN HEC
LSB MSB3 4 1 1 1 8
LT_ADDR Tipo Flujo ARQNSEQN HEC
LSB MSB3 4 1 1 1 8
Ilustración 7: Formato del campo de encabezado del paquete.
Carga Útil del Paquete: hay dos tipos de campos:
o Campo sincrono: transporta paquetes SCO. Esta formado por el cuerpo y un campo CRC de 16 bits.
o Campo asíncrono: transporta paquetes ACO. Esta formado por: el encabezado, cuya longitud es de 8 bits para paquetes de un slot y 16 bits para paquetes multi slots; el cuerpo que contiene información del usuario y el CRC de 16 bits para la carga útil excepto en paquetes de tipo AUX1. El encabezado esta formado a su vez por el LLID que identifica el canal lógico (por ejemplo, mensaje L2CAP no fragmentado, continuación de un mensaje L2CAP fragmentado), un campo indicador de flujo y la longitud: del cuerpo.
1.3.5. Mecanismos de Corrección de Errores
Los siguientes son los mecanismos para la corrección de errores definidos por el estándar Bluetooth:
8 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
o 1/3 FEC: envía tres copias del mismo bit.o 2/3 FEC: basado en código de Hamming (ver [1])).o ARQ: usa para la detección de errores el CRC/FEC. Utiliza ACKs
positivos para reconocer tramas recibidas exitosamente y retransmite paquetes después que se ha vencido el correspondiente timeout. Adicionalmente, un receptor que recibe un paquete dañado puede enviar un ACK negativo. El emisor al recibir este debe retransmitir el paquete (Ver Ilustración 8).
Ilustración 8: Ejemplo del intercambio de paquetes usando ARQ
1.3.6. Canales Lógicos
Bluetooth defines los siguientes tipos de canales de data lógicos:
o Control de Enlace (LC): transporta información de control de enlace de datos tal como ARQ, control de flujo y caracterización de la carga útil.
o Gestión de Enlace (LM): soporta trafico LMP y es transportado en paquetes SCO y ACL.
o Usuario Asíncrono (UA): transporta data del usuario asíncrona.o Usuario Isócrono (UI): transporta data de usuario isócrona.o Usuario Sincrono (US): transporta data del usuario sincronía
1.3.7. Establecimiento de la Conexión
Los estado envueltos en el establecimiento de la conexión se muestran en la Ilustración 9, el cual ha sido tomado de la especificación de Bluetooth [1].
9 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Ilustración 9: Estado que intervienen en el establecimiento de una conexión.
Dichos estados se agrupan en estado de Prevenido (Standby), estado de Indagación (Inquiry), estado de Page y estado de Conexión (Connection). El estado de standby es el estado inicial en que se encuentra un dispositivo el cual no ha establecido una conexión. En el estado de inquiry, un dispositivo colecta información acerca de otros dispositivos cercanos para obtener información básica, tal como la dirección Bluetooth del dispositivo y valores del reloj. Esta compuesto por varios sub estados; el de inquiry, ejecutado por el potencial maestro y los estados de inquiry scan y inquiry response ejecutados por los potenciales esclavos.
En el sub estado de inquiry, un potencial maestro transmite paquetes de indagación los cuales son recibidos por los esclavos en el sub estado de inquiry scan. Ya que durante el procedimiento de establecimiento de una conexión bandabase, los roles del maestro y del esclavo no están definidos, se denomina un potencial maestro aquel dispositivo que inicia un proceso de indagación destinado a establecer una conexión. En el sub estado de inquiry scan, un dispositivo busca mensajes de inquiry enviados por un potencial maestro. Una vez recibido un mensaje de inquiry un potencial esclavo debe entrar al estado de inquiry response.
En el estado de page, un dispositivo invita a otro a juntarse a su piconet. Similarmente al estado de indagación, el estado de page está compuesto por varios sub estados. Los sub estados de page y master response los cuales son ejecutado por el potencial maestro y los de page scan y slave response ejecutados por los esclavos. En el sub estado de page, un maestro activa y puede conectarse a un esclavo que esta en el sub estado de page scan. Un esclavo entra en el sub estado de slave response cuando recibe un mensaje de page. En este estado el esclavo espera recibir un mensaje de master response. Después de recibir dicho mensaje, responde con otro mensaje y entra al estado de connection (es decir, está conectado con el dispositivo maestro). En el sub estado de
10 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
page scan, el esclavo escucha por mensajes de page del esclavo. Un maestro entra en el estado de master response una vez recibido un mensaje de page response del esclavo. El maestro transmite un paquete conteniendo la información necesaria para que el esclavo pueda entrar en el estado de connection. Una vez que recibe una respuesta del esclavo, el maestro puede entrar al estado de connection. El estado de park fue descrito anteriormente.
1.3.8. Conexión
La Ilustración 10 muestra los estados en que puede estar un dispositivo una vez establecida una conexión. Estos se describen a continuación:
Ilustración 10: Estados de una Conexión.
Active: participa en una piconet. En este estado escucha, transmite y recibe paquetes. Sniff: escucha en slots específicos. Hold: no soporta paquetes ACL. Es un estado de potencia reducida. Puede aún participar en el intercambio de paquetes SCO. Park: no participa en la piconet, pero es retenido como parte de la piconet.
1.4. Seguridad
La especificación banda base define una facilidad para proporcionar seguridad entre dos dispositivos Bluetooth que están estableciendo una conexión. La misma consiste de los siguientes elementos:
Autenticación: tiene como finalidad verificar identidades de las unidades involucradas en el procedimiento. Cifrado: la información del usuario puede ser protegida cifrando el paquete; sin embargo, el código de acceso y el encabezado del paquete nunca se cifran.
Para mantener la seguridad a nivel de enlace, se usan cuatro parámetros:
Dirección del dispositivo Bluetooth (BD_ADDR): es única y tiene una longitud de 48 bits. Es asignada por la IEEE. Clave privada de autenticación de usuario: tiene una longitud fija de 128 bits.
11 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Clave privada de cifrado: esta clave de usuario tiene longitud variable (entre 8 y 128 bits) y se obtiene durante el proceso de autenticación, a partir de la clave de autenticación. Número aleatorio (RAND): se obtiene de un proceso pseudo aleatorio que se llevará a cabo en el dispositivo Bluetooth. Este número cambiará periódicamente.
1.4.1. Autenticación
La entidad encargada de la autenticación, realiza la misma, usando una rutina convencional de desafío/respuesta, lo cual se realiza para asegurar que la entidad tratada posee su clave secreta. Esta clave de enlace es compartida por los dispositivos que se van a comunicar. La clave de enlace (de autenticación) es un número aleatorio de 128 bits que se comparte entre dos o más dispositivos, que además de ser usada durante el proceso de autenticación, forma parte de los parámetros usados para crear la clave de cifrado.
En la Ilustración 11 se muestra el esquema de desafío-respuesta para Bluetooth. El demandante transmite su dirección de 48 bits exigida por el verificador. Entonces el verificador retorna al demandante un desafío en la forma de un número aleatorio de 128 bits (AU_RAND), el cual junto con una clave de enlace secreta compartida de 128 bits y la dirección del demandante (BD_ADDR), forman parte de la entrada a una función Hash, dando como salida una firma de 32 bits (SRES). Esta firma producida por el demandante es enviada al verificador, quien compara ese resultado con su propio Hash (SRES’), sólo si ambos números calculados son los mismos, la autenticación habrá tenido éxito. Lo que quiere decir que quien emitió el desafío, procederá con el establecimiento de la conexión. El algoritmo E1 además de la salida SRES’, también da como resultado el parámetro ACO (Authenticated Ciphering Offset), que será utilizado para generar la clave de cifrado en el proceso de encriptación.
Ilustración 11: Autenticación usando un esquema de Desafío- Respuesta.
12 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Si el proceso de autenticación falta, debe pasar un tiempo antes de intentarlo nuevamente. Este tiempo se incrementa exponencialmente, para que así, el tiempo que transcurra después de un intento fallido sea por ejemplo el doble de tiempo de espera antes de ese fallo. Por otro lado, el tiempo de espera decrecerá exponencialmente cuando no haya fallos en un determinado período de tiempo.
1.4.2. Cifrado
El proceso de cifrado usa un algoritmo que se llama E0. El procedimiento se muestra en la Ilustración 12 y la Ilustración 13 que se explica a continuación. Para cada transmisión de un paquete se genera una nueva clave de cifrado de la siguiente forma. Se combinan en una función RAND compleja, la dirección del dispositivo, un número de 26 bits que representa el reloj maestro y la clave secreta de cifrado. Esta clave es usada como una entrada para E0 para producir un flujo continuo de bits llamado z en la figura. El algoritmo E0 se implementa usando cuatro LFSRs (Linear Feedback Shift Registers), cuyas longitudes son de 25, 31, 33, 39 sumando en total 128 bits. La cadena z es sumada módulo-2 a los datos que se van a cifrar. Como el valor del reloj cambia por cada cifrado una cadena de cifrado distinta es usada cada vez mejoerando la seguridad.
El desencriptado se realizará exactamente de la misma manera usando la misma clave que se usó para la encriptación.
Ilustración 12: Proceso de cifrado en Bluetooth
Ilustración 13: Proceso de Cifrado en Bluetooth
1.5. Especificación del Manejador del Enlace (LMP)
13 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Esta capa es la encargada de gestionar diversos aspectos del enlace de radio entre el maestro y el esclavo. Para ellos utiliza una serie de mensajes (PDUs), que se distribuyen en 24 áreas funcionales y los cuales son intercambiados en la forma de LMP PDUs. Estos mensajes son siempre enviados en un slot.
A continuación se describen las funciones del protocolo:
1.5.1. Funciones de Respuesta General
LMP define dos tipos de PDUs para responder a otro PDU: aceptado (accepted) o no aceptado (not_accepted).
1.5.2. Servicio de Seguridad
Estos servicios incluyen los siguientes:
o Autenticacióno Emparejamientoo Cambio de la clave de enlaceo Cambio de la clave de enlace en cursoo Encriptamiento
1.5.3. Sincronismo
LMP proporciona mecanismos de sincronismo en la diferentes piconets participantes:
o Requerimiento de desplazamiento de relojo Información de desplazamiento del sloto Requerimiento de información de la exactitud del temporizador
1.5.4. Capacidades de la Estación
LMP incluye información que se intercambia acerca de los dispositivos que se están comunicando:
o Versión de LMPo Características soportadas
1.5.5. Control de Modos
Bluetooth soporta cierto número de estados y modos los cuales son manejados a través de las siguientes funciones:
o Intercambio del rol de esclavo/maestroo Requerimiento de nombreo Desconexióno Coloca el enlace entre un maestro y un esclavo en modo de holdo Entrar en el modo sniff
14 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
o Coloca a un esclavo en modo Parko Permite el cambio de un canal entre un modo protegido con un
código 2/3 FEC o no protegido con ningún FECo Define dos parámetros de QoSo Establecimiento de enlaces SCOo Arbitra el máximo número máximo de slots de tiempo que un
paquete puede cubriro Determina el esquema de paging a ser usado entre dispositivos en
la piconeto Supervisión de enlace para declararlo como que tiene alguna falla
L2CAP es un protocolo de la capa de enlace entre entidades con un número de servicios. Confía en protocolos de las capas más bajas para control de error y flujo. Hace uso de los enlaces ACL pero no soporta enlaces SCO. Proporciona los siguientes servicios, los cuales pueden ser usados por los protocolos de las capa superiores:
o No orientado a conexión: soporte a un servicio no orientado a la conexión. Cada canal es unidireccional. Usado del maestro a múltiples esclavos.
o Orientado a la conexión: soporte a un servicio orientado a la conexión. Cada canal es bidireccional.
o Señalización: provee el intercambio de mensajes de señalización entre entidades L2CAP.
1.6. Protocolos Middleware
Algunos de los protocolos que usan los servicios de los protocolos de transporte descritos anteriormente se describen a continuación (Ver Ilustración 1):
1.6.1. Protocolo de Descubrimiento de Servicios (Service Discovery Protocol, SDP)
Permite que un dispositivo Bluetooth pregunte acerca de los servicios que otro dispositivos conectados pueden tener y como accederlo. SDP no proporciona los mecanismos para accederlos. SDP soporta las siguientes indagaciones:
o Búsqueda según clase de servicioo Búsqueda según los atributos de los servicioso Navegación por los servicios
Algunos de los protocolos que usan los servicios de los protocolos de transporte descritos anteriormente se describen a continuación (Ver Ilustración 35):
1.6.2. Protocolo de RFCOMM
Permite que aplicaciones que han sido diseñadas e implementadas para operar sobre cables eriales corran sobre Bluetooth sin ser
15 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
modificadas. Este protocolo emula las señales sobre los nueve hilos de un cable de interconexión RS-232.
1.6.3. Protocolo de Señalización de Control de Telefonía (Telephony Control Signaling, TCS)
Soporta funciones de telefonía normales entre las que se encuentran iniciación y terminación de una llamada, reconocer una llamada entrante, aceptar una llamada. El soporta comunicación punto a punto y punto a multipunto.
1.6.4. Otros Protocolos
Incluyen protocolos adoptados de otras organizaciones. El protocolo PPP (Point-to-Point Protocol) es un estándar del IETF para soportar la comunicaron IP sobre líneas seriales. El OBEX (Object Exchange Protocol) desarrollado por IrDA para el transporte de objetos entre dispositivos.
Los perfiles de Bluetooth definen los protocolos y las características que soporta un modelo de uso. Un modelo de uso es un conjunto de protocolos que implementan una aplicación particular basada en Bluetooth. Los perfiles se pueden dividir en [3] generales y específicos.
1.7. Especificación de los Perfiles de Bluetooth
Los Perfiles Generales incluyen:
o Perfil de acceso genérico (Generic Access Profile, GAP).o Perfil del puerto en serial (Serial Port Profile, SPP).o Perfil de aplicación de descubrimiento de servicios (Service
Discoveryo Application Profile, SDAP).o Perfil genérico de intercambio de objetos (Generic Object
Exchange Profile, GOEP).
Los Perfiles Específicos incluyen:
o Perfil de transferencia de archivos (File Transfer Profile).o Perfil de acceso a una LAN (LAN Access Profile).o Perfil de sincronización (Synchronization Profile).o Perfil de telefonía inalámbrica (Cordless Telephony Profile)o Perfil de auriculares (Headset Profile).o Perfil de fax (Fax profile).o Perfil de inter comunicación (Intercom Profile)o Perfil de acceso telefónico a redes (Dial-UP Networking Profile)o Perfil de acceso de carga de objetos
La siguiente Ilustración 14 muestra la relación de dependencia entre los perfiles mencionados:
16 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Perfil de TelefoníaInalámbrica
Perfil deIntercomunicación
Perfil de Acceso Telefónico a Redes
Perfil de TransferenciaDe Archivos
Perfil de Cargade Objetos
Perfil de Sincronización
Perfil de Fax
Perfil de Auriculares
Perfil de Acceso a Redes LAN
Perfil de Acceso Genérico
Perfil de Descubrimiento de Servicios
Perfiles Basados en TCS-Bin
Perfil Genérico de Intercambio de Objetos
Perfil de Puerto Serial
Perfil de TelefoníaInalámbrica
Perfil deIntercomunicación
Perfil de Acceso Telefónico a Redes
Perfil de TransferenciaDe Archivos
Perfil de Cargade Objetos
Perfil de Sincronización
Perfil de Fax
Perfil de Auriculares
Perfil de Acceso a Redes LAN
Perfil de Acceso Genérico
Perfil de Descubrimiento de Servicios
Perfiles Basados en TCS-Bin
Perfil Genérico de Intercambio de Objetos
Perfil de Puerto Serial
Ilustración 14: Relación entre los perfiles de Bluetooth
1.7.1. Perfil de Acceso Genérico
Este perfil define los procedimientos genéricos para descubrir dispositivos Bluetooth y aspectos relacionados a la gestión de enlace para dispositivos que están estableciendo una conexión. El perfil de acceso genérico describe el uso de las capas inferiores tal como la LC y LMP, describe las alternativas de seguridad incluyendo las de las capas superiores tales como L2CAP, RFCOMM y OBEX. La Ilustración 15 muestra los protocolos cubiertos por este perfil.
Ilustración 15: Pila de Protocolos cubiertos por el perfil de acceso genérico
1.7.2. Perfil del Puerto Serial
Este perfil está construido sobre el perfil de acceso genérico y establece como deben configurarse los dispositivos Bluetooth para emular una conexión serial usando RFCOMM. Las aplicaciones que utilizan este perfil son normalmente aplicaciones heredadas que utilizan la comunicación serial y que no deben estar al tanto que la comunicación se esta realizando sobre el un enlace Bluetooth.
17 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Banda base
L2CAP LMP
RFCOMM SDP
Emulación del puerto serial
Aplicación A
Banda base
LMP L2CAP
RFCOMM SDP
Emulación del puerto serial
Aplicación B
Banda base
L2CAP LMP
RFCOMM SDP
Emulación del puerto serial
Aplicación A
Banda base
L2CAP LMP
RFCOMM SDP
Emulación del puerto serial
Aplicación A
Banda base
LMP L2CAP
RFCOMM SDP
Emulación del puerto serial
Aplicación B
Banda base
LMP L2CAP
RFCOMM SDP
Emulación del puerto serial
Aplicación B
Ilustración 16: Pila de protocolos para el perfil del puerto serial
1.7.3. Perfil de Aplicación de Descubrimiento de Servicios:
Este perfil describe como un dispositivo puede descubrir servicios registrados en otros dispositivos Bluetooth al igual que otra información acerca de estos servicios. La Ilustración 17 muestra la pila de protocolos para este perfil.
Banda base
Capa L2CA
Aplicación deDescubrimiento de
Servicio
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Banda base
Capa L2CA
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Base de datos de requisitos de
servicios
Banda base
Capa L2CA
Aplicación deDescubrimiento de
Servicio
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Banda base
Capa L2CA
Aplicación deDescubrimiento de
Servicio
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Banda base
Capa L2CA
SDP (cliente)
BT-module-Cntrl
LM
ACL
CO
Base de datos de requisitos de
servicios
Ilustración 17: Pila de Protocolos para el perfil de aplicación de descubrimiento de servicios
1.7.4. Perfil Genérico de Intercambio de Objetos
Este perfil define como los objetos pueden ser intercambiados usando el protocolo OBEX. El perfil indica los requerimientos expresados en términos de las características y procedimientos que son requeridos para la interoperabilidad entre dispositivos Bluetooth en el modelo de uso del intercambio de objetos. Dependiendo de este perfil (ver Ilustración18), hay perfiles para sincronizar información de gestión personal (PIM), transferencia de archivos y carga de objetos (como por ejemplo tarjetas de negocios). La Ilustración 18 muestra la pila de protocolos para éste perfil:
18 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidora
Lado del cliente Lado del servidor
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidora
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidora
Lado del cliente Lado del servidor
Ilustración 18: Pila de protocolos para el perfil genérico de intercambio de objetos
1.7.5. Perfil de Transferencia de Archivos:
Este perfil ofrece la capacidad de transferir objetos de datos de un dispositivo a otro tales como hoja de cálculo, presentaciones, imágenes. La Ilustración 19 muestra la pila de protocolos de este perfil:
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente de Transferencia de Archivos
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor de Transferencia de Archivos
Lado del cliente Lado del servidor
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente de Transferencia de Archivos
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación Cliente de Transferencia de Archivos
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor de Transferencia de Archivos
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor de Transferencia de Archivos
Lado del cliente Lado del servidor
Ilustración 19: Pila de Protocolos del Perfil de Transferencia de Archivos
1.7.6. Perfil de Acceso a una LAN:
Este perfil le permite a un dispositivo Bluetooth acceder a una LAN, tal como si estuviera conectado a la red, usando PPP. En este modelo los dispositivos utilizan un punto de acceso a una LAN como conexión inalámbrica a la LAN. La Ilustración 20 muestra la pila de protocolos para este perfil. Note que ME es una entidad de gestión (managment entity) que coordina procedimientos durante la inicialización, configuración y gestión de la conexión.
19 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Banda base
L2CAP
RFCOMM
TCP / UDP
IP
PPP
SDPME
Aplicaciones
LMP
Banda base
L2CAP
SDP
PPP
RFCOMM
LMP
PPP networking
ME
LAN
TCP / UDP
IP
Aplicaciones
LAN
Dispositivo Bluetooth Punto de acceso LAN LAN
Banda base
L2CAP
RFCOMM
TCP / UDP
IP
PPP
SDPME
Aplicaciones
LMP
Banda base
L2CAP
SDP
PPP
RFCOMM
LMP
PPP networking
ME
LAN
TCP / UDP
IP
Aplicaciones
LAN
Dispositivo Bluetooth Punto de acceso LAN LAN
Ilustración 20: Pila de Protocolos de Perfil de Acceso a una LAN
1.7.7. Perfil de Sincronización
Este perfil define los requerimientos de la aplicación para los dispositivos Bluetooth para el soporte del modelo de uso de sincronización. La Ilustración 21 muestra la pila de protocolos de este perfil:
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación IrMC
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor IrMC
Lado del cliente Lado del servidor
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación IrMC
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación IrMC
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor IrMC
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación Servidor IrMC
Lado del cliente Lado del servidor
Ilustración 21: Pila de Protocolos de Perfil de Sincronización
1.7.8. Perfil de Telefonía Inalámbrica
Este perfil define los procedimientos para la realización de llamadas a través de una estación base y la realización de llamadas en forma directa. También permite el acceso de servicios complementarios provistos por una red general de conmutación externa. La Ilustración22muestra la pila de protocolos de este perfil. El gateway es el dispositivo que proporciona acceso a la red pública tal como un MODEM y el terminal de data es el dispositivo que usa los servicios de telefonía del gateway.
20 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
TCS
Banda base
L2CAP
Control de Sincronización de
la llamada
Aplicación de telefonía
SDP
Control dellamadas
Discriminación de protocolos
SCO
CLCO
LMP
ACL
Gestión del GrupoCL
TCS
Banda base
L2CAP
Control de Sincronización de
la llamada
Aplicación de telefonía
SDP
Control dellamadas
Discriminación de protocolos
SCO
CLCO
LMP
ACL
Gestión del GrupoCL
Ilustración 22: Pila de Protocolos y Procedimientos de Perfil de Telefonía Inalámbrica.
1.7.9. Perfil de Auriculares
Este perfil define los protocolos y procedimientos para soportar el uso de auriculares. El auricular debe actuar como entrada de audio e interfaz de salida de un dispositivo. El mismo debe ser capaz de responder llamadas entrantes y finalizarlas sin uso del teclado del teléfono. La Ilustración 23muestra la pila de protocolos para este perfil. El control del auricular es responsable por la señalización de control específica de los auriculares esta basado en comandos AT. El nivel de emulación del puerto de audio emula el puerto de audio en un teléfono celular o en un PC. El controlador de audio es el software en los auriculares.
Banda base
L2CAP LMP
RFCOMM SDP
Control del Auricular
Aplicación (Emulación de
puerto de audio)
Banda base
LMP L2CAP
RFCOMM SDP
Control del Auricular
Aplicación (Controlador de audio)
Lado del gatewayde audio
Lado del auricular
Banda base
L2CAP LMP
RFCOMM SDP
Control del Auricular
Aplicación (Emulación de
puerto de audio)
Banda base
LMP L2CAP
RFCOMM SDP
Control del Auricular
Aplicación (Controlador de audio)
Lado del gatewayde audio
Lado del auricular
Ilustración 23: Pila de Protocolos del Perfil de Auriculares
1.7.10. Perfil de Fax
Este perfil define los protocolos y procedimientos para el soporte del caso de uso del Fax. Un teléfono celular o un MODEM con Bluetooth instalado pueden ser usados por una PC como MODEM-fax inalámbrico. La Ilustración 24 muestra la pila de protocolos de este perfil. El nivel de marcación y control define los comandos y procedimientos para la marcación y control automáticos del enlace serie asíncrono proporcionado
21 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
por los niveles inferiores. El nivel de emulación de MODEM es la entidad responsable de emular el MODEM y el controlador del MODEM es el software controlador en el Terminal de datos.
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación (Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación (Controlador del MODEM)
Lado del gateway Lado del terminalde datos
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación (Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación (Controlador del MODEM)
Lado del gateway Lado del terminalde datos
Ilustración 24: Pila de protocolos del perfil de Fax
1.7.11. Perfil de Intercomunicación
Este perfile soporta el uso de escenarios que implican un enlace vocal directo tales como dos usuarios de teléfonos que establezcan una comunicación sobre una conexión Bluetooth. La Ilustración 25 muestra la pila de protocolos de este perfil:
TCS
Banda base
L2CAP
Control de Sincronización de
la llamada
Aplicación de telefonía
SDP
Control dellamadas
Discriminación de protocolos
SCO
CLCO
LMP
ACL
TCS
Banda base
L2CAP
Control de Sincronización de
la llamada
Aplicación de telefonía
SDP
Control dellamadas
Discriminación de protocolos
SCO
CLCO
LMP
ACL
Ilustración 25: Pila de Protocolos del perfil de intercomunicación
1.7.12. Perfil de Acceso Telefónico a Redes
Este perfil define los procedimientos y protocolos usados por dispositivos tales como MODEM y teléfonos celulares para implementar el modelo de uso denominado puente Internet. Por ejemplo el uso de un teléfono celular como MODEM inalámbrico para conectar una PC o PDA a una servidor de acceso telefónico a Internet. La Ilustración 26 muestra la pila de protocolos de éste perfil:
22 / 23
Redes Inalámbricas de Área Local y Personal: Bluetooth
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación (Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación (Controlador del MODEM)
Lado del gateway Lado del terminalde datos
Banda base
L2CAP LMP
RFCOMM SDP
Marcación y control
Aplicación (Emulación del
MODEM)
Banda base
LMP L2CAP
RFCOMM SDP
Marcación y control
Aplicación (Controlador del MODEM)
Lado del gateway Lado del terminalde datos
Ilustración 26: Pila de Protocolos del perfil de acceso telefónico a redes.
1.7.13. Perfil de Carga de Objetos
Este perfil define los requisitos de aplicación para soportar el modelo de uso de carga de objetos entre dispositivos Bluetooth. Este perfil permite a un dispositivo cargar un objeto (tal como una tarjeta de negocios o una cita) en la carpeta de entrada de otro dispositivo. El dispositivo también pude descargarse una tarjeta desde otro dispositivo Bluetooth. Dos dispositivos pueden también intercambiar objetos. La Ilustración 27 muestra la pila de protocolos de este perfil.
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación (Cliente de carga)
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación (Servidor de carga)
Cliente de carga Servidor de carga
Banda base
L2CAP LMP
RFCOMM SDP
OBEX
Aplicación (Cliente de carga)
Banda base
LMP L2CAP
RFCOMM SDP
OBEX
Aplicación (Servidor de carga)
Cliente de carga Servidor de carga
Ilustración 27: Pila de Protocolos del perfil de Carga de Objetos.
[1]Bluetooth SIG, Inc. Specification of the Bluetooth System version 2.0. 05 November 2003.
[2]Bisdikian C. An Overview of the Bluetooth Wireless Technology. IEEE Communications Magazine. December 2002. pp 86-95.
[3]Muller N. Tecnología Bluetooth. McGraw-Hill Professional. España, 2002.
i.
23 / 23
Recommended