Protocolo Bluetooth (Parte 2): Tipos, Troca de Dados, Segurança

O protocolo Bluetooth é composto por vários protocolos que podem ser divididos em quatro categorias. Cada um desses protocolos é responsável por um tipo específico de tarefa e é independente. No artigo anterior sobre Bluetooth falamos sobre os termos básicos, os valores específicos de potência, frequência, alcance e muito mais. O conceito de redes mestre, escravos, redes Pico e redes dispersas formando redes ad-hoc. Esta parte do Bluetooth tratará dos protocolos responsáveis ​​pelo funcionamento da tecnologia Bluetooth. As quatro categorias em que esses protocolos estão divididos são mostradas abaixo:

Diagrama de blocos explicando os protocolos Bluetooth

Fig. 1: Diagrama de blocos explicando os protocolos Bluetooth

Protocolos principais Bluetooth

Banda base

A banda base permite o link de radiofrequência entre dispositivos Bluetooth para formar uma Pico-net. As informações são trocadas em pacotes no Bluetooth. Um pacote é uma unidade de dados binários que transporta informações exigidas pelo usuário e que podem ser roteadas através de uma rede de computadores. Tanto a comutação de circuitos quanto a comutação de pacotes são usadas para transferir os pacotes na rede. As redes comutadas por pacotes movem dados em pequenos blocos separados – pacotes – com base no endereço de destino de cada pacote. Quando recebidos, os pacotes são remontados na sequência adequada para formar a mensagem. As redes comutadas por circuito requerem conexões ponto a ponto dedicadas durante as chamadas e geralmente são usadas em linhas telefônicas para troca.

O protocolo do gerenciador de links

O protocolo gerenciador de link é responsável por estabelecer um link entre dois dispositivos Bluetooth. Esta camada de protocolo é responsável por questões de segurança como autenticação, criptografia, troca e verificação de link e chaves de criptografia.

Controle e Adaptação de Link Lógico – Camada (L2CAP)

A camada de adaptação e controle de link lógico Bluetooth suporta multiplexação de nível superior, segmentação e remontagem de pacotes e comunicação e grupos de qualidade de serviço. Esta camada não é responsável pela confiabilidade e utiliza ARQ para garanti-la.

Protocolo de descoberta de serviço (SDP)

SDP é a base para descoberta de serviços em todos os dispositivos Bluetooth. Isso é essencial para todos os modelos Bluetooth porque com as informações do dispositivo SDP, os serviços e as características dos serviços podem ser consultados e depois disso a conexão entre dois ou mais dispositivos Bluetooth pode ser estabelecida. Outros protocolos de descoberta de serviço, como Jini, UpnP etc. em conjunto com o protocolo Bluetooth SDP.

Categorias de protocolo Bluetooth

Protocolo de substituição de cabo

RFCOMM

O protocolo RFCOMM é usado para a opção de substituição de cabo em Bluetooth. É um protocolo de transporte simples com disposições adicionais para emular os nove circuitos das portas seriais RS232 na parte L2CAP da pilha de protocolos Bluetooth. Suporta grande base para aplicações que utilizam comunicação serial. Ele fornece um fluxo de dados confiável, múltiplas conexões, controle de fluxo e configurações de linha de cabo serial.

Protocolo de controle de telefonia

Especificação (binário TCS)

O protocolo binário TCS define a sinalização de controle de chamadas para estabelecimento de chamadas de voz e dados entre dois dispositivos Bluetooth. É um protocolo orientado a bits.

A interface do controlador host (HCI)

O HCI fornece uma interface de comando para o controlador de banda base, gerenciador de link e acesso ao status do hardware e registros de controle. A interface fornece um método uniforme de acesso aos recursos de banda base Bluetooth. A camada de transporte de controle de host remove dependências de transporte e fornece uma interface de driver comum. Três interfaces são definidas na especificação principal: USB, RS-232 e UART.

PROTOCOLOS ADOTADOS

PPP, TCP/IP

PPP, TCP, UDP e IP são protocolos padrão da Internet definidos pela IETF. Eles são usados ​​como protocolos de camada inferior para transportar pacotes ou datagramas em seus endereços IP especificados. OBEX

OBEX é um protocolo de sessão definido pelo IrDA. Este protocolo também é utilizado pelo Bluetooth, permitindo assim que a aplicação utilize o rádio Bluetooth ou as tecnologias IrDA.

WAP/WAE

O Bluetooth pode ser usado como tecnologia de transporte para transporte entre um cliente WAP e um servidor WAP próximo. O WAP opera sobre a pilha Bluetooth usando PPP e o conjunto de protocolos TCP/IP.

Cada um desses protocolos é organizado ordenadamente como camadas, uma acima da outra, formando uma pilha de protocolos. Uma pilha é uma pilha de objetos ou coisas organizadas de maneira organizada.

Conseqüentemente, o Bluetooth é definido como arquitetura de protocolo em camadas porque cada camada suporta a camada acima e abaixo dela. A pilha de protocolos completa consiste em protocolos específicos de Bluetooth que são claramente definidos ou desenvolvidos para Bluetooth, como LMP, e não específicos de Bluetooth, que foram projetados para permitir a reutilização de protocolos existentes para várias funções. Protocolos não específicos podem ser usados ​​com muitas outras plataformas como WAP, UDP E OBEX. Eles foram usados ​​para acelerar o desenvolvimento do protocolo Bluetooth em camadas superiores, ao mesmo tempo em que se adaptam para funcionar com dispositivos Bluetooth e garantem a interoperabilidade. O esboço das camadas e protocolos Bluetooth associados a ela é mostrado abaixo.

Uma visão geral das várias camadas Bluetooth e protocolos associados

Figura 2 : Uma visão geral de várias camadas Bluetooth e protocolos associados

Diagrama de blocos mostrando várias camadas e funções do Bluetooth

Figura 3: Diagrama de blocos mostrando várias camadas e funções do Bluetooth

Cada uma das camadas especificadas acima é importante na comunicação Bluetooth e possui um circuito interno para realizar a tarefa desejada. Nesta seção trataremos dos detalhes internos de todas as camadas.

Detalhes internos dos protocolos Bluetooth

Rádio Bluetooth

O rádio Bluetooth fornece uma interface elétrica para transferência de pacotes em uma frequência portadora modulada usando serviços de portador sem fio como CDMA, GSM. O rádio opera na faixa de 2,4 GHz. Requer uma antena eficiente para transmissão e recepção, um front-end de RF que inclui conversor UP, conversor down, controlador de potência, modulador GFSK e um comutador transmissor/receptor.

IC do modem de rádio Bluetooth

O modem de rádio realiza modulação e demodulação GFSK, recuperação de símbolo e tempo de quadro. Possui um transceptor de rádio totalmente integrado e um sintetizador de salto de frequência em um único chip. No sistema da vida real, os sinais que viajam entre as antenas são de frequência muito mais alta e são de radiofrequência conhecida. Portanto, para diminuir a faixa de frequência, circuitos analógicos são normalmente usados ​​para conversão descendente na extremidade do receptor e conversão ascendente semelhante na extremidade da transmissão. Um conversor analógico para digital está presente no lado do receptor para trazer o sinal no domínio digital. Em seguida, é repassado ao demodulador GFSK. O esquema de modulação Bluetooth é GFSK (Gaussian Frequency Shift Keying). A modulação gaussiana de mudança de frequência (GFSK) é um método de modulação para comunicação digital encontrado em muitos padrões, como Bluetooth, DECT e Wavenis. Ele minimiza a complexidade do trans-receptor usando um para desvio de frequência positivo e zero para desvio de frequência negativo. O IC também contém um sintetizador de salto de frequência no mesmo chip.

Diagrama de blocos de várias funções no modem de rádio Bluetooth

Figura 4: Diagrama de blocos de várias funções no modem de rádio Bluetooth

BANDA E CANAIS DE RÁDIO

O rádio Bluetooth opera na banda ISM de 2,4 GHz. Nos EUA e na Europa, está disponível uma banda de 83,5 MHz. Existem 79 canais espaçados de 1 MHz. Japão, Espanha e França utilizam apenas 23 canais espaçados de 1 MHz.

Banda base

Esta é a parte mais importante do protocolo Bluetooth. Banda base é a camada física do Bluetooth que gerencia canais e links físicos. A banda base fica no topo do rádio Bluetooth. Controlador IC de link Bluetooth é usado para implementar o protocolo e funções de banda base e tem interface com o IC do modem de rádio Bluetooth. O controlador de link escolhe sabiamente os links e canais a serem usados ​​e melhora o desempenho das aplicações. Ele sincroniza com a camada acima, ou seja, o gerenciador de enlace para executar rotinas de nível de enlace, como conexões de enlace e controle de energia. No lado do receptor, ele realiza detecção de erros, branqueamento de dados, seleção de saltos e segurança Bluetooth. O hardware do controlador executa as funções básicas, como ações repetitivas de paginação, consulta e varreduras de página e consulta. Ele também fornece uma interface USB e de áudio para o sistema host.

Diagrama mostrando várias funções da camada de banda base no bluetooth

Figura 5: Diagrama mostrando várias funções da camada de banda base no Bluetooth

A banda base também gerencia links, lida com pacotes e faz paginação e consulta para acessar e consultar dispositivos Bluetooth. O transmissor aplica multiplexação por divisão de tempo além da divisão de frequência (salto de frequência). No modo de conexão normal, o mestre inicia em slots pares e o escravo usa slots ímpares. Existem dois tipos de links: links ACL e SCO. Um link é um circuito de dois pontos, ponta a ponta, que conecta os usuários finais e permite que eles se comuniquem mesmo quando dois caminhos físicos separados são usados. Passemos aos links ACL e SCO usados ​​na camada de banda base.

Links ACL – assíncronos sem conexão

Os links ACL são um link ponto a multiponto entre o mestre e todos os escravos participantes da piconet. Os links ACL transportam informações de dados e apenas um único link pode existir. A retransmissão de pacotes de dados é permitida em links ACL.

Links SCO – link de conexão síncrona

Os links SCO são um link simétrico ponto a ponto entre um mestre e um único escravo. Ele pode transportar informações de dados e de voz, mas transporta principalmente informações de voz. O mestre pode suportar até dois ou três links SCO. Os pacotes SCO nunca são retransmitidos.

CANAIS LÓGICOS

Um canal é uma comunicação bidirecional de alta velocidade entre dois dispositivos. Por exemplo, um computador e seu dispositivo periférico. Existem cinco tipos diferentes de canais presentes no Bluetooth que podem ser usados ​​para transferir diferentes tipos de informações. Os canais LC (canal de controle) e LM (gerenciador de link) são usados ​​na parte de nível de link da comunicação. UA, UI e US são usados ​​para transportar informações do usuário assíncronas, isossíncronas e síncronas.

ENDEREÇO ​​​​BLUETOOTH

Um endereço é um nome ou token que identifica um componente na rede. Existem basicamente quatro endereços de dispositivos, conforme mostrado abaixo.

BD-ADDR

Endereço de dispositivo Bluetooth de 48 bits (padrão IEEE802). É dividido em LAP (parte inferior do endereço de 24 bits), UAP (parte superior do endereço de 8 bits) e NAP (parte não significativa do endereço de 16 bits).

AM-ADDR

Endereço de membro ativo de 3 bits. O AM_ADDR totalmente zero é para mensagens de difusão.

PM-ADDR

Endereço de membro de 8 bits atribuído a escravos estacionados

AR-ADDR

É usado pelo escravo estacionado para determinar se é permitido enviar mensagens de acesso.

Uma divisão de campos de endereço Bluetooth:

24

8

16

COLO

UAP

SESTA

PACOTES BLUETOOTH

Os dados nas piconets são transmitidos em pacotes. Um pacote é mostrado abaixo.

CÓDIGO DE ACESSO (72)

CABEÇALHO (54)

CARGA ÚTIL (0-2745)

O código de acesso é usado para sincronização de tempo, paging e consulta. Existem três tipos diferentes de códigos de acesso; Código de acesso ao canal que identifica uma piconet; O código de acesso do dispositivo é usado para paging e suas respostas e o código de acesso de consulta são para fins de consulta. O cabeçalho contém informações de reconhecimento de pacotes, numeração de pacotes, controle de fluxo, endereço escravo e verificação de erros. A carga útil do pacote representa o campo de voz, o campo de dados ou ambos. Existem cinco tipos comuns de pacotes, quatro pacotes SCO e sete pacotes ACL.

SR. NÃO.

NOME

TIPO

DESCRIÇÃO

1

COMUM

EU IA

Carrega código de acesso do dispositivo (DAC) ou código de acesso de consulta (IAC). Ocupa um slot.

2

COMUM

NULO

O pacote NULL é usado para obter informações de link e controle de fluxo e não possui carga útil. Ocupa um slot. Não reconhecido.

3

COMUM

ENQUETE

Sem carga útil. Reconhecido. Usado pelo mestre para consultar os escravos para saber se eles estão ativos ou não. Ocupa um slot.

4

COMUM

ESF

Um pacote de controle especial para divulgar o endereço do dispositivo Bluetooth e o relógio do remetente. Usado na resposta mestre da página, resposta à consulta e sincronização de salto de frequência.

5

COMUM

DM1

Para suportar mensagens de controle em qualquer tipo de link e também transportar dados regulares do usuário. Ocupa um slot.

6

SCO

HV1

Carrega 10 bytes de informação. Normalmente usado para transmissão de voz. 1/3 FEC codificado. Ocupa um slot.

7

SCO

HV2

Carrega 20 bytes de informação. Normalmente usado para transmissão de voz. 2/3 codificado FEC. Ocupa um slot.

8

SCO

HV3

Carrega 30 bytes de informação. Normalmente usado para transmissão de voz. Não codificado FEC. Ocupa um slot.

9

SCO

DVD

Pacote combinado de dados-voz. Campo de voz não protegido pela FEC. Campo de dados 2.3 codificado FEC. O campo de voz nunca é retransmitido, mas o campo de dados pode ser.

10

LCA

DM1

Carrega 18 bytes de informação. 2/3 codificado FEC. Ocupa um slot.

11

LCA

DH1

Transporta informações de 28 bytes. Não codificado FEC. Ocupa um slot.

12

LCA

DM3

Transporta 123 bytes de informação. 2/3 codificado FEC. Ocupa três slots.

13

LCA

DH3

Transporta 185 bytes de informação. Não codificado FEC. Ocupa três slots.

14

LCA

DM5

Transporta 226 bytes de informação. 2/3 codificado FEC. Ocupa cinco slots.

15

LCA

DH5

Transporta 341 bytes de informação. Não codificado por FEC. Ocupa cinco vagas.

16

LCA

AUX1

Carrega 30 bytes de informação. Assemelha-se a DH1, mas sem código CRC. Ocupa um slot.

Protocolos principais Bluetooth

CORREÇÃO DE ERROS

Existem três tipos de esquemas de correção de erros: esquema de 1/3 taxa FEC, 2/3 FEC e ARQ. Na taxa de 1/3 cada bit é repetido três vezes para redundância, na taxa de 2/3 um polinômio é gerado para codificar o código de 10 bits em um código de 15 bits e no esquema ARQ um pacote é transmitido até que uma confirmação seja recebida. Ele usa valores de confirmação positivos e negativos definindo valores ARQN apropriados. SE o tempo limite for excedido, o dispositivo Bluetooth libera o pacote e prossegue para o próximo.

CONTROLE E SINCRONIZAÇÃO DE FLUXO

O Bluetooth usa o conceito de filas FIFO first in first out em links ACL e SCO para transmissão e recepção. O gerenciador de links preenche as filas e o controlador de links as esvazia automaticamente.

Controle de fluxo e sincronização no protocolo Bluetooth Core

Figura 6: Controle de fluxo e sincronização no protocolo Bluetooth Core

Se as filas de recepção estiverem cheias, o controle de fluxo é usado para evitar queda de pacotes e congestionamento. Se os dados não forem recebidos, uma indicação STOP é transmitida pelo controlador de link do receptor para o cabeçalho do pacote de retorno. Quando o transmissor recebe a indicação STOP ele congela suas filas FIFO. Novamente, quando o receptor está pronto, ele envia um pacote que retoma o fluxo.

ESTADOS CONTROLADORES

O estado é o último status conhecido ou atual de um aplicativo ou processo. Bluetooth opera em dois estados Standpor e conexão. Existem sete subestados que são usados ​​para adicionar escravos ou fazer conexões na Pico-net. Eles são mostrados na figura:

Estado de espera usado no protocolo Bluetooth Core

Figura 7: Estado de espera usado no protocolo Bluetooth Core

Imagem mostrando o estado do controlador de conexão usado no sistema Bluetooth

Figura 8: Imagem mostrando o estado do controlador de conexão usado no sistema Bluetooth

O estado de espera é o estado padrão de baixo consumo de energia usado quando não há interação entre os dispositivos. No estado de conexão, o mestre e o escravo podem trocar pacotes usando o código de acesso do canal.

NOME

DESCRIÇÃO

PÁGINA

Este subestado é usado pelo mestre para ativar e conectar-se a um escravo. O mestre envia mensagens de página transmitindo o código de acesso do dispositivo (DAC) do escravo em diferentes canais de salto.

VERIFICAÇÃO DE PÁGINA

Neste subestado, um escravo escuta seu próprio código de acesso ao dispositivo (DAC) durante a janela de varredura. O escravo escuta em uma frequência de salto único (derivada de sua sequência de salto de página) nesta janela de varredura

RESPOSTA DO ESCRAVO

O escravo responde à mensagem da página do mestre neste subestado, o que ocorre se o escravo se correlacionar no subestado de varredura da página com a mensagem da página do mestre. Escravo entra Conexão estado após receber o pacote FHS do mestre.

RESPOSTA MESTRE

O mestre atinge este subestado depois de receber a resposta do escravo à mensagem da página para ele. Mestre envia um pacote FHS para o escravo e se o escravo responder então o mestre entra Conexão estado.

INVESTIGAÇÃO

A consulta é usada para encontrar a identidade dos dispositivos Bluetooth próximos. A unidade descobridora coleta os endereços dos dispositivos Bluetooth e os relógios de todas as unidades que respondem à mensagem de consulta.

VERIFICAÇÃO DE INQUÉRITO

Nesse estado, os dispositivos Bluetooth escutam consultas de outros dispositivos. Neste dispositivo de digitalização pode escutar o código de acesso de consulta geral (GIAC) ou códigos de acesso de consulta dedicados (DIAC).

RESPOSTA AO INQUÉRITO

Para investigação, apenas o escravo responde, mas não o mestre. O escravo responde com o pacote FHS que contém o código de acesso do dispositivo do escravo, o relógio nativo e algumas outras informações do escravo.

Diagrama de blocos explicando como a conexão é estabelecida entre dois dispositivos Bluetooth

Figura 9: Diagrama de blocos explicando como a conexão é estabelecida entre dois dispositivos Bluetooth

Uma conexão entre dois dispositivos segue um caminho particular. O primeiro mestre pergunta sobre dispositivos Bluetooth ao alcance. Se algum dispositivo Bluetooth estiver escutando essas consultas (subestado de varredura de consulta), ele responderá ao mestre enviando informações de endereço e relógio (pacote FHS) para o estado de resposta de consulta mestre 9. Após enviar as informações, o escravo passa a escutar as mensagens de page do mestre (varredura de página). Então, o mestre, após descobrir os dispositivos Bluetooth no alcance, pode paginar esses dispositivos (subestado da página) para configuração da conexão. O escravo no modo de varredura de página responderá se for paginado pelo mestre (subestado de resposta do escravo). O mestre após receber a resposta do escravo pode responder transmitindo o mestre em tempo real, os mestres BD-ADDR, os bits de paridade e a classe do dispositivo (pacote FHS). Assim que ambos receberem este pacote FHS, eles entrarão no estado de conexão.

ESTADO DE CONEXÃO

Um estado de conexão começa com um pacote enviado pelo mestre para verificar se o escravo mudou para o tempo do mestre e para o salto de frequência do canal. O escravo pode responder enviando qualquer tipo de pacote. Vários estados de conexão são

ATIVAR

Neste modo tanto o mestre quanto o escravo participam ativamente do canal ouvindo, transmitindo ou recebendo. Mestre e escravo sincronizam entre si.

FAREJAR

Neste modo, o escravo, em vez de ouvir a mensagem do mestre para aquele escravo, ele fareja os intervalos de tempo especificados para suas mensagens. Portanto, ele pode entrar no modo de suspensão para economizar energia.

SEGURAR

Neste modo, um dispositivo temporário não suporta os pacotes ACL e entra no modo de suspensão de baixo consumo de energia para permitir atividades como varredura de página, consulta de página, etc.

PARQUE

Quando o escravo não quer participar do Pico-net mas ainda quer sincronizar no canal ele entra em modo park que é uma atividade de baixa potência.

Protocolos de substituição de cabos

SEGURANÇA

A segurança do Bluetooth é muito importante para permitir portas sem chave e superlojas com faturamento automático. Na camada de enlace ele é mantido por autenticação e criptografia. Primeiro, um dispositivo faz a autenticação emitindo um desafio e outro dispositivo deve então enviar uma resposta a esse desafio. O BD-ADDR e a chave de link são compartilhados entre eles. Após a autenticação, a criptografia pode ser usada para comunicação. Existem quatro tipos de chaves: combinação, unidade, temporária e inicialização.

Gerenciador e controlador de links

O gerenciador de links é usado para gerenciar a segurança, configuração e controle do link. Ele se comunica com outro gerenciador de link para trocar informações e controlar mensagens através do controlador de link usando alguns comandos de nível de link predefinidos. Depois que a conexão for configurada, ela pode ter até três conexões SCO criadas entre ela, ou seu modo pode ser alterado, para um modo de baixo consumo de energia ou para um modo de teste (estes são úteis para certificação de dispositivos Bluetooth por autoridades de teste e para testes de dispositivos na linha de produção de um fabricante). Quando a conexão não for mais necessária, o LMP poderá causar desconexão.

Tem menos suporte para camadas superiores, mas pode ser melhorado usando uma interface de camada superior que permite executar algoritmos para gerenciamento de modo (estacionar, segurar, detectar, ativar), gerenciamento de segurança, QoS etc. então o gerenciador de link pode negociar com outro gerenciador de link sobre o controle de energia e ambos podem entrar no mesmo modo de acordo com o algoritmo predefinido

O Link Manager (LM) converte os comandos em operações no nível Baseband, gerenciando as seguintes operações.

1) Anexar escravos às Pico-nets e alocar seus endereços de membros ativos.

2) Quebrar conexões para desconectar Slaves de uma Pico-net.

3) Configurando o link incluindo switches Master/Slave

4) Estabelecimento de links ACL e SCO.

5) Colocar conexões em modos de baixo consumo: Hold, Sniff e Park.

6) Controlando os modos de teste.

Módulo de autenticação

É um processo de identificação de um dispositivo em uma rede geralmente baseado em nome de usuário e senha para garantir a segurança. É também uma forma de permitir que dispositivos em um sistema em rede obtenham acesso a outro dispositivo. O protocolo gerenciador de enlace garante a autenticação na rede Pico-net ou scatter net.

Módulo de criptografia

A tradução de dados em um código secreto é conhecida como criptografia. É a maneira mais eficaz de obter segurança de dados porque precisamos de uma chave secreta ou senha que permita descriptografá-los. Os dados não criptografados são texto simples, enquanto a descriptografia é chamada de texto cifrado.

Além da autenticação e criptografia, existem muitas outras funções, conforme mostrado na figura.

Diagrama de blocos mostrando várias funções de protocolos de substituição de cabos em Bluetooth

Figura 10: Diagrama de blocos mostrando várias funções de protocolos de substituição de cabos em Bluetooth

Todas as funções são especificadas abaixo.

Protocolos Adotados

Resumo dos protocolos adotados por Bluetooth

Figura 11: Resumo dos protocolos adotados por Bluetooth

INTERFACE DO CONTROLADOR HOST

O HCI é uma interface de comando para banda base, gerenciador de link e acesso ao status do hardware e registros de controle. Essa interface fornece um método uniforme de acesso aos recursos de banda base do Bluetooth.

LIGAÇÃO LÓGICA E CAMADA DE ADAPTAÇÃO

O Logical Link Control and Adaptation Protocol (L2CAP) aceita dados das camadas superiores da pilha Bluetooth e de aplicativos e os envia pelas camadas inferiores. Ele passa pacotes para a Host Controller Interface (HCI) ou em um sistema sem host, o L2CAP passa os pacotes diretamente para o Link Manager. Estas são algumas funções executadas pelo L2CAP.

· Multiplexar protocolos de camadas superiores e permitir que eles compartilhem links de camadas inferiores. L2CAP usa o campo PSM no comando de solicitação de conexão L2CAP. L2CAP pode multiplexar solicitações de conexão para protocolos de camada superior, como Service Discovery Protocol, RFCOMM e Telephony Control.

· Segmentação e remontagem para permitir a transferência de pacotes maiores

Ele é usado para melhorar a eficiência, suportando um tamanho máximo de unidade de transmissão maior que o maior pacote de banda base. O L2CAP segmenta os pacotes da camada superior em pedaços que podem ser repassados ​​ao gerenciador de enlace para transmissão e remonta esses pedaços em pacotes L2CAP usando informações fornecidas pelo HCI e pelo cabeçalho do pacote.

· Gerenciamento de grupo e transmissão unidirecional para um grupo de outros dispositivos Bluetooth

{C}r· Gerenciamento de qualidade de serviço para protocolos de camada superior.

{C}{· Eventos e comandos L2CAP

O L2CAP opera usando eventos e comandos que recebe ou transmite de/para camadas superiores ou inferiores. Esses eventos podem ser uma solicitação de conexão, uma solicitação de gravação de dados ou uma solicitação de desconexão. A camada inferior pode informar ao L2CAP sobre as conexões de entrada, solicitações e desconexões. Se o L2CAP de uma unidade precisar se comunicar com outro L2CAP, ele usará alguns comandos especiais chamados comandos de sinalização.

Vários comandos de sinalização usados ​​no L2CAP são

CÓDIGO

DESCRIÇÃO

0*00

RESERVADO

0*01

REJEIÇÃO DE COMANDO

0*02

PEDIDO DE CONEXÃO

0*03

RESPOSTA DE CONEXÃO

0*04

PEDIDO DE CONFIGURAÇÃO

0*05

CONFIGURAR RESPOSTA

0*06

PEDIDO DE DISCINECÇÃO

0*07

RESPOSTA DE DESCONEXÃO

0*08

PEDIDO DE ECO

0*09

RESPOSTA DO ECO

0*0a

PEDIDO DE INFORMAÇÃO

0*0b

RESPOSTA INFORMATIVA

Protocolo de controle de telefonia

RFCOMM

O protocolo RFCOMM é usado para a opção de substituição de cabo em Bluetooth. É um protocolo de transporte simples com disposições adicionais para emular os 9 circuitos das portas seriais RS232 na parte L2CAP da pilha de protocolos Bluetooth. Suporta grande base para aplicações que utilizam comunicação serial. Ele fornece um fluxo de dados confiável, múltiplas conexões, controle de fluxo e configurações de linha de cabo serial. Existem dois tipos de dispositivos que podem ser conectados usando RFCOMM

Dispositivo 1 – são os pontos finais de comunicação, como computadores e impressoras.

Dispositivo 2 – são aqueles que fazem parte do segmento de comunicação

Protocolo de descoberta de serviço (SDP)

SDP é a base para descoberta de serviços em todos os dispositivos Bluetooth. Isto é essencial para todos os modelos Bluetooth porque com as informações do dispositivo SDP, os serviços e as características dos serviços podem ser consultados e depois disso a conexão entre dois ou mais dispositivos Bluetooth pode ser estabelecida. Outros protocolos de descoberta de serviço, como Jini, UpnP etc. em conjunto com o protocolo Bluetooth SDP.

Protocolo de transporte de controle de áudio/vídeo (AVCTP)

Os botões de controle de música em um fone de ouvido estéreo usam este protocolo para controlar o reprodutor de música. É usado por controle remoto para transferir comandos AV/C através de um canal L2CAP. Na pilha de protocolos, o AVCTP está vinculado ao L2CAP.

Protocolo de transporte de dados de áudio/vídeo (AVDTP)

Ele também está vinculado à camada L2CAP para ser usado pela distribuição avançada de áudio para transmitir música para fones de ouvido estéreo na camada L2CAP.

Troca de objetos (OBEX)

OBEX é um protocolo de sessão definido pelo IrDA. Este protocolo também é utilizado pelo Bluetooth, permitindo assim a possibilidade de o aplicativo usar o rádio Bluetooth ou as tecnologias IrDA.

PERFIL BLUETOOTH

É uma especificação que decide a forma como um dispositivo utiliza a tecnologia Bluetooth. O perfil fornece padrões que os fabricantes seguem para permitir que os dispositivos usem Bluetooth em um parâmetro pretendido. Um perfil Bluetooth reside na especificação principal do Bluetooth e (opcionalmente) em protocolos adicionais. Embora o perfil possa usar determinados recursos da especificação principal, versões específicas de perfis raramente estão vinculadas a versões específicas da especificação principal. Por exemplo, existem implementações HFP1.5 usando especificações principais Bluetooth 2.0 e Bluetooth 1.2. Exemplos de perfis são

Protocolo de Atributo de Baixa Energia (ATT)

É semelhante ao SDP, mas especialmente adaptado e simplificado para Bluetooth de baixa energia. Ele permite que um cliente leia e/ou grave certos atributos expostos pelo servidor de uma maneira não complexa e com baixo consumo de energia. Vinculado ao L2CAP.

Protocolo Gerenciador de Segurança de Baixa Energia (SMP)

Isso é usado pelas implementações de Bluetooth Low Energy para emparelhamento e distribuição de chaves específicas de transporte. Na pilha de protocolos, o SMP está vinculado ao L2CAP.

Conteúdo Relacionado

Voltar para o blog

Deixe um comentário

Os comentários precisam ser aprovados antes da publicação.