não segue os modelos osi, tcp/ip ou ieee 802 ieee ... - lee.eng…rubi/cursos/rcsf/parte3b.pdf ·...

46
Arquitetura de protocolos do Bluetooth Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802

Upload: ledieu

Post on 08-Nov-2018

241 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Arquitetura de protocolos do Bluetooth

Não segue os modelos OSI, TCP/IP ou IEEE802

IEEE modificou a arquitetura para adaptá-lamelhor ao modelo IEEE 802

Page 2: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Arquitetura de protocolos do Bluetooth

Arquitetura de protocolos do IEEE 802.15.1

Page 3: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada áudio

Não especificada no padrão

Page 4: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada L2CAP

Logical Link Control Adaptation Protocol

Interface entre os protocolos padrões detransporte de dados e o protocolo Bluetooth

Utilizada com protocolos de comunicação como Protocolo de descoberta de serviços (SDP) Protocolo de emulação de cabo serial (RFCOMM) Protocolo de controle de telefonia (TCS) Protocolos de áudio em pacotes

Ex.: Telefonia IP

Page 5: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada L2CAP

Provê serviço de dados orientados a conexão enão orientados a conexão com funcionalidadesde Multiplexação Segmentação e remontagem Qualidade de serviço Abstração de grupo

Usada no endereçamento das piconets

Permite aos protocolos transmitir e receberpacotes de até 64 kB

Page 6: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada gerente de enlace

Protocolo utilizado para controle eestabelecimento de enlaces (canais lógicos)

Inclui funcionalidades de Autenticação Escalonamento de tráfego Gerenciamento de energia Outras tarefas de gerenciamento

Page 7: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada controle

Provê uma interface de comando ao controladorde banda base e o gerente de enlace

Provê o acesso ao status do hardware e aregistradores de controle

Page 8: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base

É a camada mais próxima de uma subcamadaMAC Incorpora também algumas características da camada

física do IEEE 802

Page 9: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base

Transmissões do mestre e dos escravos sãoseparadas 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 Número ímpar para manter a temporização de Tx/Rx

Page 10: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base

Exemplo de duplexação por divisão de tempo no Bluetooth

Page 11: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base

Quadros transmitidos em enlaces tambémchamados canais lógicos entre o mestre e um oumais escravos

Dois tipos de enlaces ACL (Asynchronous Connection-Less) SCO (Synchronous Connection Oriented)

Page 12: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 Taxa máxima de 433,9 kbps (simétricos)

Page 13: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 diferentesmestres

Em cada enlace podem ser transmitidos 64 kbps

Page 14: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base

Exemplo de enlaces SCO e ACL em uma piconet

Page 15: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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

Page 16: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base - quadros

Page 17: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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

Page 18: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 Data-Voice

Page 19: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 Semelhante ao quadro DH1 sem o CRC

Page 20: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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

Campo voz dos quadros HV1

Page 21: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 paratransmissão de dados De quadros DM, campo dados dos quadros DV, quadros

FHS e quadros HV2

Page 22: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 segueo slot mestre-escravo

Mestre responde no próximo slot para o mesmoescravo

Uso justificado por gerar menos sobrecarga emambientes com pequeno ruído

Usado em quadros DM e DH e no campo dados dosquadros DV

Page 23: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base - correção de erros

Exemplo de retransmissão no Bluetooth

Page 24: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 típico do Bluetooth

Page 25: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 dodispositivo

Trailer (4 bits)

Quadro de dados típico do Bluetooth

Page 26: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 é odestino do quadro

Igual a 000 se difusão

Quadro de dados típico do Bluetooth

Page 27: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 típico do Bluetooth

Page 28: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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ãorealizada destino recebe o mesmo quadro duasvezes

Controle de erro de cabeçalho (8 bits) CRC do cabeçalho

Quadro de dados típico do Bluetooth

Page 29: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 dadosdo quadro DV

CRC usado em todos os quadros de dados, exceto oAUX1

Quadro de dados típico do Bluetooth

Page 30: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 típico do Bluetooth

Page 31: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Quadro de dados

Page 32: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Quadro de dados

Page 33: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Quadro de dados

Exemplos Quadro HV1

80 bits de carga útil a cada 1250 µs taxa máxima emum 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)

aproximadamente 433,9 kbps

Page 34: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base - segurança

Autenticação Privacidade

Criptografia

Gerenciamento de chaves

Page 35: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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_RANDA) em texto claro para um escravo B

Número é trocado toda vez que uma chave deencriptação (KC) é modificada

Page 36: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base - segurança

Para cada transmissão de um quadro Nova chave (Kcipher) é utilizada

Gerada 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

Page 37: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 ou-exclusivo bit-a-bit texto em claro é obtido

Page 38: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Camada de banda base

Estabelecimento e manutenção dos enlaces Diversas fases

Standby

Investigação Negociação Connection

Page 39: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Bluetooth - estabelecimento de conexões

Standby

Estado inicial Somente o relógio nativo está em operação

Page 40: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 Dispositivos trocam BD_ADDRs e relógios

Page 41: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Bluetooth - estabelecimento de conexões

Investigação (cont.) Procedimento

Potencial mestre transmite um quadro ID com o códigode acesso de investigação (IAC) Isso ocorre no estado inquiry

De tempos em tempos, dispositivos passam dostandby para o inquiry para ver se foram transmitidosquadros ID

Dispositivo recebe o quadro Entra no estado inquiry response

Retorna um quadro FHS contendo informação deendereço (BD_ADDR) e temporização (relógio)

Passa para o estado page scan

Page 42: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 Negociação de canal

Page 43: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Bluetooth - estabelecimento de conexões

Negociação (cont.) Procedimento

Mestre usa o endereço do escravo para calcular umasequência de saltos para negociação

Mestre envia um quadro ID com o código de acesso dedispositivo (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 determinadapelo mestre

Page 44: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Bluetooth - connection

Estado connection possui diversos modos Active Sniff

Hold

Park

Page 45: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

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 Somente escuta em slots específicos

Page 46: Não segue os modelos OSI, TCP/IP ou IEEE 802 IEEE ... - lee.eng…rubi/cursos/rcsf/Parte3b.pdf · IEEE modificou a arquitetura para adaptá-la melhor ao modelo IEEE 802. Arquitetura

Bluetooth - modos do estado connection

Hold

Maior economia de energia do que o modo sniff

Entra em baixo consumo por um intervalo fixo detempo 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

Para uma possível reativação futura