universidade federal do rio de janeiro departamento de eletrônica discliplina: redesi prof:otto...

39
Universidade Federal do Rio de Universidade Federal do Rio de Janeiro Janeiro Departamento de Eletrônica Departamento de Eletrônica Discliplina: RedesI Discliplina: RedesI Prof:Otto Prof:Otto Bluetooth Bluetooth André Quadros André Quadros

Upload: internet

Post on 18-Apr-2015

102 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

Universidade Federal do Rio de JaneiroUniversidade Federal do Rio de JaneiroDepartamento de EletrônicaDepartamento de Eletrônica

Discliplina: RedesIDiscliplina: RedesIProf:OttoProf:Otto

BluetoothBluetooth

André QuadrosAndré Quadros

Page 2: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetooth

O que é Bluetooth?– Interface de rádio universal – Pequena distância (10 m)– Conexão entre dispositivos eletrônicos portáteis– Redes Ad Hoc– Elimina necessidade cabos em modems, PDAs

computadores, impressoras, projetores, etc.– Baixa pôtência, custo e complexidade

Page 3: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetooth

Page 4: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothConectividade em sistemas sem fio

– Em sistemas de rádio convencionais, o móvel se conecta a uma estação base que gerencia a comunicação entre este móvel e outros terminais.

– O acesso ao canal, alocação de canal, controle de tráfego e minimização de interferência são controlados pela estação base.

– Exemplos: GSM. D-AMPS, IS-95, WLAN, etc

Page 5: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothConectividade em sistemas AD Hoc

– Em sistemas AD Hoc não existe diferenciação entre terminal e estação base.

– Comunicação ponto-a-ponto– Não existe central de controle para que as

unidades possam fazer as conexões ou para dar suporte a estas conexões

– Não necessita operadora– Várias conexões AD Hoc podem compartilhar o

meio sem necessidade de uma estação de controle

Page 6: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothEspectro de Frequência

– O sistema deve operar em qualquer parte do mundo e a banda de frequência deve ser aberta ao público sem a necessidade de licenças

– A única banda de frequência que satisfaz estes requisitos é a 2,45 GHz - Industrial-Scientific medical (ISM) band

– 2400 MHz à 2483,5 MHz nos EUA e na Europa (apenas parte desta banda está disponível na França e Espanha)

– 2471 MHz à 2497 MHz no Japão

Page 7: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothDefinição do Canal

– Esquema FH/TDD – A banda do canal é de 80 MHz dividido em

79 canais de salto (hop channel)– FH (Frequency Hopping)– O canal é dividido em slots de 625 us onde é

definida uma frequência de salto para cada slot.– Taxa de salto é igual a 1600 saltos/s.

Page 8: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothCanal utilizando FH/TDD

Page 9: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothLink Físico

– Syncronous connection-oriented (SCO); – Assyncronous connectionless (ACL); – O link SCO suporta conexões ponto-a-ponto

entre o master e um único slave na piconet e é tipicamente utilizado para voz.

– O master mantém o link SCO usando slots reservados em intervalos regulares.

– O link ACL é um link ponto-a-multiponto entre o master e todos os slaves da piconet.

– Este tipo de link é utilizado tipicamente para transmissão de dados em burst

Page 10: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothLink SCO

– Três tipos de pacotes para voz com uma taxa de

64 kbits/s.– Voz é enviada sem proteção mas pode ser

usado um código de paridade 1/3 ou 2/3– Conexão comutada a circuito entre o master e o

slave.– Reserva slots para transmissão

Page 11: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothLink ACL

– Conexão comutada a pacotes entre o master e todos os slaves ativos da piconet.

– Pacotes de dados ocupando 1, 3 ou 5 slots – Transmissão é feita nos slots de tempo não

reservados para os links SCO.– Para garantir integridade dos dados é aplicada

retransmissão de pacotes.– Taxa máxima 721 kbits/s em uma direção e

57,6 kbits

Page 12: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothLink ACL

Transmissão de pacotes com duração de mais de um slot de tempo

Page 13: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothTaxas disponíveis em ACL

Page 14: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothLinks SCO e ACL em uma piconet com

um master e dois slaves

Page 15: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothDefiniçao dos pacotes

– Todos os pacotes possuem o mesmo formato– Código de Acesso - 72 bits– Header - 54 bits– Payload - 0 à 2745 bits

Page 16: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothCódigo de Acesso

– Sincronização, compensação de offset e identificação

– O receptor só aceitará pacotes cujo código de acesso correlacionar com o master

– Três tipos: Código de Acesso ao Canal (CAC) Código de Acesso ao Dispositivo (DAC) Código de Inquiry (IAC)

Page 17: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothCódigo de Acesso

– Código de Acesso ao Canal (CAC) Identifica os pacotes da rede Inluído em todos os pacotes da piconet

– Código de Acesso ao dispositivo (DAC) Procedimento de sinalização (paging)

– Código de Acesso de Inquiry (IAC) Descobrir quais unidades estão na localidade

Page 18: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothHeader

– Informações sobre o link de controleAM_ADDR: 3 bits - active member addressTYPE: 4 bits - type codeFLOW: 1 bit - flow controlARQN: 1bit - acknowledge indicationSEQN: 1bit - sequence numberHEC: 8 bit - header error check

Page 19: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetooth– O AM_ADDR

Representa o endereço de uma unidade ativa Cada slave recebe um endereço temporário de 3 bits para ser usado quando estiver ativo. Todos os pacotes trocados entre mestre e slave carregam este endereço.

– TYPE Podem existir dezesseis tipos diferentes de

pacotes. O código de quatro bits "TYPE" é utilizado para especificar qual tipo está sendo usado.

Page 20: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetooth– ARQN

informar ao transmissor sobre o sucesso da transferência de um pacote de dados de payload com CRC. Se a recepção foi feita com sucesso, um ACK (ARQN=1) é enviado, senão um NACK (ARQN=0).

– FLOWEste bit é utilizado para fluxo de controle

sobre o link ACL.Quando o buffer no receptor está cheio, é retornado uma indicação de STOP (FLOW=0) para o transmissor parar com a transmissão do fluxo de dados.

Page 21: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetooth– O SEQN

numeração sequencial para ordenar o stream no pacote de dados com CRC. Isto é feito para evitar o recebimento de um mesmo pacote que foi retransmitido.

– HECCada header possui um header-error-check

para garantir a integridade do cabeçalho. Se o HEC não não casa, então o pacote inteiro é descartado.

Page 22: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothPayload

O campo voz possui um tamanho fixo. Para pacotes HV possuem 240 bits enquanto que os pacotes DV, 80 bits. O header do payload não está presente neste caso.

O campo dados consiste de três segmentos: um cabeçalho do payload, o corpo do payload e possivelmente um código CRC.

Page 23: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothEstabelecendo Conexão

– As unidades de rede Bluetooth devem ser capazes de descobrir o endereço de outras unidades nas proximidades sem a necessidade de intervenção do usuário. Assim, foram definidos para estabelecer as conexões:

inquiry page scan

Page 24: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothInquiry

– Master difunde mensagens de inquiry– Descobrir quais unidades estão no alcance– Resposta com um pacote do tipo FHS

(Frequency Hopping Synchronization) contendo informações sobre sincronismo e sua identidade

– Temporização aleatória para evitar colisões

Page 25: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothInquiry

D

A

10 meters

HM

N

L

PO

Q

B

C

F

KJ

G

I

E

D

A

10 meters

MN

L

PO

Q

B

C

F

KJ

G

I

E

Page 26: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothPaging

– Master difunde mensagens de paging tentando estabelecer conexão com terminais descobertos no processo de inquiry.

– São enviados 2 mensagens de paging a cada 1,25 ms.

– A mensagem é enviada em broadcast mas contém o endereço do slave B

– Este processo se repete até que todos os outros dispositivos estejam conectados.

Page 27: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothPaging

D

E

FH

G

I

KJ

C

MN

L

PO

Q

BBAA

Page 28: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothPaging

DH

B

C

MN

L

PO

Q

E

FG

I

J

F

J

I

E

G

KK

A

Page 29: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothScan

– Para economizar energia, os dispositivos que estiverem ociosos podem "dormir".

– Acordam periodicamente para verificar se existe algum outro dispositivo tentando estabelecer uma conexão.

– A janela de varredura utilizada é de 10 ms.– Duas sequências de 16 saltos.

Page 30: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothModos de Conexão

– Um dispositivo Bluetooth pode assumir quatro modos de conexão

– Active mode– Hold mode– Sniff mode– Park mode

– Atráves desses modos pode ajustar a potência, ajustar performance, fazer paging entre outros.

Page 31: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothModos de Conexão

– . Purpose Mode Addressing State PowerMaster to SlaveAccess Time

Active mode enables master/slave communications in any given frame.

Active AMA Conected High Any given frame(1250 ms)

Hold mode frees a slave for a predetermined one time hold period.

Hold AMA Connected Low At end of hold duration(T hold)

Sniff mode frees a slave for predetermined, recurring, fixed time periods.

Sniff AMA Connected Low At end of sniff intervals(T sniff)

Parking enables a master to connect to as many as 255 parked devices in addition to its 7 active devices

Park PMA Parked Lower At beacon time intervals(T beacon) plus some reconnection overhead

Standby is the default mode for any Bluetooth device

Standby None Standby Lowest Paging cycle or Inquiry & Paging cycle

(2-10s)

Page 32: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothSegurança

– BD_ADDR Endereço de 48 bits único para cada unidade

– Chave de Autenticação Tamanho fixo de 128 bits

– Chave de Encriptação Pode variar de 1 a 16 octetos (8 a 128 bits)

– RAND Número aleatório de 128 bits

Page 33: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothSegurança

– Chave de Autenticaçãoinitialization key (Kinit)temporary key (Kmaster)combination key (KAB)unit key (KA)

– Encriptação Cipher Key Kc.

Page 34: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothProcesso de Autenticação

Page 35: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothChave de Unidade

– KA é usado como chave de link

Page 36: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothChave de Combinação

Page 37: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothEncriptação

Page 38: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothConclusão

– Bluetooth é um sistema de rádio universal– Pequeno alcance– Opera na faixa de 2,5 GHz– Utiliza CDMA e FH/TDD– Possui 80 canais de 1MHz– Dois tipos de links - SCO e ACL– Autenticação e Encriptação de dados

Page 39: Universidade Federal do Rio de Janeiro Departamento de Eletrônica Discliplina: RedesI Prof:Otto Bluetooth André Quadros

BluetoothBluetoothReferências

– 1. Specification of the Bluetooth System — Core; available online http://www.bluetooth.com/developer/specification/Bluetooth_11_Specifications_Book.pdf.

– 2. Specification of the Bluetooth System — Profiles; available online http://www.bluetooth.com/developer/specification/Bluetooth_11_Profiles_Book.pdf.

– 3. BLUETOOTH—The universal radio interface for ad hoc, wireless connectivity - Jaap Haartsen - Ericson Review nro 3 - 1998

– 4. The Bluetooth Radio System - Jaap C. Haartsen - Ericson Radio Systems B. V. - IEEE Personal Communications - February 2000

– 5.www.xilinx.com/esp/technologies/wireless_networks/bluetooth.htm