Camada de banda base
É a camada mais próxima de uma subcamada
MAC
Incorpora também algumas características da camada física do IEEE 802
Camada de banda base
Transmissões do mestre e dos escravos são
separadas
Duplexação por divisão de tempo (TDD)
Slots de tempo de 625 µs
Mestre de cada piconet começa a transmissão nos slots pares
Escravos começam a transmitir nos slots ímpares Quadros podem ter 1, 3 ou 5 slots de duração
Dependendo do tipo de quadro
Camada de banda base
Camada de banda base
Quadros
transmitidos
em
enlaces
também
chamados canais lógicos entre o mestre e um ou
mais escravos
Dois tipos de enlaces
ACL (Asynchronous Connection-Less) SCO (Synchronous Connection Oriented)
Camada de banda base
ACL
Enlace ponto-a-multiponto entre o mestre e todos os escravos ativos
Pode usar os slots não reservados para enlaces SCOs Só há um enlace ACL por piconet
Usa varredura (polling) para acesso ao meio Serviço de melhor esforço
Usado principalmente para dados assíncronos
Taxa máxima de 723,2 kbps (na direção do escravo) e de 57,6 kbps no sentido reverso
Camada de banda base
SCO
Enlace ponto-a-ponto entre o mestre e um escravo
Usa reserva de slots consecutivos a intervalos regulares
Usado principalmente para dados de tempo real Não há retransmissão
Pode usar correção automática de erros (FEC)
Um mestre pode ter até três enlaces SCOs para um escravo ou para escravos diferentes
Um escravo pode ter até três enlaces SCOs para o seu mestre ou até dois enlaces SCOs para diferentes mestres
Camada de banda base
Camada de banda base
Diversos tipos de quadros de dados
Relacionados ao tipo de enlace no qual são usados
Quadros divididos em quatro categorias
Quadros de controle
Quadros que ocupam um slot Quadros que ocupam três slots Quadros que ocupam cinco slots
Camada de banda base - quadros
ID
Sinalização
Contém somente o código de acesso
FHS
Conexão de dispositivos Bluetooth Contém identidade e relógio
POLL
Mestre não tem dados a transmitir e precisa escalonar um escravo
NULL
Escravo não tem dados a transmitir mas precisa responder ao mestre
Camada de banda base - quadros
HV1, HV2 e HV3
Carregam informações de voz em enlaces SCOs High-quality Voice
Ocupam um slot
Diferem-se no uso de FEC
DV
Combina informações de voz e dados em um único quadro
Camada de banda base - quadros
DM1, DM3 e DM5
Carregam dados usando FEC 2/3 em um, três ou cinco slots
Data-Medium rate
DH1, DH3 e DH5
Carregam dados sem usar FEC em um, três ou cinco slots
Data-High rate
AUX1
Camada de banda base - correção de erros
FEC 1/3
Triplica a quantidade de dados
Bit repetido três vezes consecutivas
Usado para proteger o cabeçalho do quadro Geralmente usado no modo síncrono
Camada de banda base - correção de erros
FEC 2/3
Grupo de 10 bits codificado em 15 bits
Código de Hamming
Pode corrigir erros simples e detectar erros duplos
Por usar grupos de 10 bits pode precisar de enchimento
Feito após o CRC
Geralmente usado no modo assíncrono para transmissão de dados
De quadros DM, campo dados dos quadros DV, quadros FHS e quadros HV2
Camada de banda base - correção de erros
ARQ (Automatic Repeat Request)
Retransmissão de quadros não reconhecidos
Por estouro de temporizador ou NACK
Reconhecimento não numerado positivo ou negativo
Enviado no cabeçalho do quadro de retorno
Escravo responde no slot escravo-mestre que segue o slot mestre-escravo
Mestre responde no próximo slot para o mesmo escravo
Uso justificado por gerar menos sobrecarga em ambientes com pequeno ruído
Usado em quadros DM e DH e no campo dados dos quadros DV
Camada de banda base - correção de erros
Quadro de dados
Código de acesso (72 bits)
Usado para sincronização, compensação de offset, investigação e negociação
Três tipos
Channel Access Code (CAC)
Identifica a piconet
Device Access Code (DAC) Inquiry Access Code (IAC)
Quadro de dados
Código de acesso (cont.)
Preâmbulo (4 bits)Palavra de sincronismo (64 bits)
Leva em consideração o endereço de 48 bits do dispositivo
Trailer (4 bits)
Quadro de dados
Cabeçalho (54 bits)
Subdividido em 6 campos
Seis campos formam 18 bits e são replicados três vezes
Endereço (3 bits)
Endereço lógico (temporário) do dispositivo ativo que é o destino do quadro
Igual a 000 se difusão
Quadro de dados
Cabeçalho (54 bits) (cont.)
Tipo (4 bits)Tipo do quadro
Fluxo (1 bit)
Igual a 1 se o buffer do escravo está cheio
Confirmação (1 bit)
Se igual a 1 é um reconhecimento positivo (ACK) Se igual a 0 é um reconhecimento negativo (NACK)
Quadro de dados
Cabeçalho (54 bits) (cont.)
Sequência (1 bit)Retransmissão do tipo para-e-espera
Bit necessário para filtrar retransmissões no destino
Um ACK pode ser perdido e uma retransmissão
realizada destino recebe o mesmo quadro duas
vezes
Controle de erro de cabeçalho (8 bits)
CRC do cabeçalho
Quadro de dados
Dados
Pode ter cabeçalho (8 ou 16 bits) e campo CRC (16 bits)
Depende do tipo de quadro
Cabeçalho usado nos quadros do ACL e nos dados do quadro DV
CRC usado em todos os quadros de dados, exceto o AUX1
Quadro de dados
Dados
Não precisa de tamanho mínimo
Tamanho máximo de 2744 bits (5 slots) e 240 bits (1 slot)
Quadro de dados
Exemplos
Quadro HV1
80 bits de carga útil a cada 1250 µs taxa máxima em um sentido é de 64 kbps
Mestre (escravo) só usa os slots pares (ímpares) de 625 µs
Quadro DH5 no caso simétrico
339 octetos de carga útil a cada 6250 µs (cinco slots para o mestre e cinco slots para o escravo)
Camada de banda base - segurança
Autenticação
Privacidade
Criptografia
Camada de banda base - privacidade
Criptografia usada na carga útil dos dados
Carga útil encriptada após a inclusão dos bits de
CRC e antes da codificação FEC
Mestre
A
envia
um
número
aleatório
(EN_RAND
A) em texto claro para um escravo B
Número é trocado toda vez que uma chave de encriptação (KC) é modificada
Camada de banda base - segurança
Para cada transmissão de um quadro
Nova chave (Kcipher) é utilizadaGerada através de uma combinação complexa de
EN_RANDA
Endereço do mestre (BD_ADDRA) Valor do relógio (clockA )
Número do slot
Chave KC
Kcipher é passada para o algoritmo de criptografia E0
que produz um fluxo contínuo de bits
Esse fluxo e a carga útil passam por ou-exclusivo bit-a-bit e o resultado é transmitido
Camada de banda base - segurança
Na recepção
Com os valores de
EN_RANDA
Endereço do mestre BD_ADDRA Valor do relógio
Chave KC
é gerada a chave Kcipher
Kcipher junto com o fluxo recebido passam por um
Camada de banda base
Estabelecimento e manutenção dos enlaces
Diversas fasesStandby
Investigação Negociação
Bluetooth - estabelecimento de conexões
Standby
Estado inicial
Bluetooth - estabelecimento de conexões
Investigação
Para descobrir os dispositivos em sua proximidade Usa uma sequência universal de saltos de frequência Quem inicia o procedimento de investigação torna-se o mestre da piconet
Bluetooth - estabelecimento de conexões
Investigação (cont.)
ProcedimentoPotencial mestre transmite um quadro ID com o código de acesso de investigação (IAC)
Isso ocorre no estado inquiry
De tempos em tempos, dispositivos passam do
standby para o inquiry para ver se foram transmitidos
quadros ID
Dispositivo recebe o quadro
Entra no estado inquiry response
Retorna um quadro FHS contendo informação de endereço (BD_ADDR) e temporização (relógio)
Bluetooth - estabelecimento de conexões
Negociação
Unidade sabe a identidade do dispositivo ao qual quer se conectar
Sequência de saltos é estabelecida por cada par de dispositivos
Bluetooth - estabelecimento de conexões
Negociação (cont.)
ProcedimentoMestre usa o endereço do escravo para calcular uma sequência de saltos para negociação
Mestre envia um quadro ID com o código de acesso de dispositivo (DAC) do escravo
Escravo responde com o mesmo quadro ID com DAC Mestre responde com quadro FHS
Contém o endereço e o relógio
Escravo confirma a recepção com um quadro ID com DAC
Escravo muda para o estado connection
Passa a utilizar a sequência de saltos determinada pelo mestre
Bluetooth - connection
Estado connection possui diversos modos
ActiveSniff Hold Park
Bluetooth - modos do estado connection
Active
Participa da piconet
Ouve, transmite e recebe quadros
Sniff
Economia de energia
Dorme durante um intervalo predefinido e acorda periodicamente
Bluetooth - modos do estado connection
Hold
Maior economia de energia do que o modo sniff
Entra em baixo consumo por um intervalo fixo de tempo
Duração negociada com o mestre
Não tem suporte para o enlace ACL
Ainda pode participar de trocas em enlaces SCOs
Park
Maior economia de energia do que o modo hold Não participa da piconet
Libera o endereço temporário
Permanece sincronizado à piconet
Camada física
Banda ISM de 2,4 GHz
Regulamentações especificam
Espalhamento da energia do sinal transmitido Potência máxima permitida de transmissão
Camada física
Potência de transmissão associada a classes
Classe 1Potência máxima de saída de 100 mW Alcance típico de 100 m
Controle de potência obrigatório
Classe 2
Potência máxima de saída de 2,4 mW Alcance típico de 10 m
Controle de potência opcional
Classe 3
Potência máxima de saída de 1 mW Alcance típico de 1 m
Camada física
Banda dividida em 79 canais de 1 MHz
Modulação
GFSK
1 bit de dados 1 símbolo Taxa física de 1 Mbps
Usa FHSS
Taxa de saltos de 1600 saltos/s
Provê resistência a interferências e ao efeito de múltiplos caminhos
Serve como uma forma de acesso múltiplo entre dispositivos em diferentes piconets
Camada física
Usa FHSS (cont.)
Mestre e escravos de uma piconet saltam periodicamente de um canal para outro
Em uma sequência pseudo-aleatória
Mestre dita a sequência de saltos
Definida pela identidade do mestre
Relógio do mestre define a fase dentro da sequência
Escravos adicionam as diferenças de tempo (time
offsets) a seus relógios para se sincronizarem na
sequência
Podem haver colisões entre diferentes piconets
Bluetooth 1.2
Compatível com a versão 1.1
Introduz algumas alterações
Novo tipo de enlace chamado eSCO (extended SCO) Outras na camada física
eSCO
Permite retransmissão dos quadros em slots que seguem os slots reservados
Provê suporte a combinações mais flexíveis de
Tipos de quadros
Conteúdo dos dados dos quadros Número de slots
maior diversidade nas taxas binárias síncronas providas
Bluetooth 1.2
Camada física
FHSS adaptativoAumenta a resistência a interferências de RF
Pela não utilização de determinadas frequências muito usadas por dispositivos interferentes
Alterações
maiores taxas de transmissão são
obtidas na prática
IEEE revisou o padrão IEEE 802.15.1 em 2005
Considerando essas modificaçõesBluetooth 2.0
Compatível com as versões 1.x
Principal modificação
introdução de um
mecanismo chamado EDR
Enhanced Data Rate
Permite que sejam alcançadas taxas de até 3 Mbps Inclui novos tipos de quadros
Usam modulações até 8-DPSK na carga útil
Bluetooth 2.1
Modificações em
SegurançaBluetooth 3.0
Aumento na taxa de dados para 24 Mbps
Uso de rádio IEEE 802.11 na fase de transmissão de dados
Uso de rádio Bluetooth na fase de estabelecimento de enlace
Bluetooth 4.0
Voltado para baixo uso de energia
Dispositivos consomem uma fração da energia usada por dispositivos Bluetooth clássicos (versão até 2.1)
Principais modificações
Menor ciclo de operação Canais
Técnica de espalhamento
Especificação contém três normas em uma
Bluetooth clássicoBluetooth de alta velocidade (versão 3.0) Bluetooth de baixa energia