Lo standard 802.15.4
Bluetooth
Elaborato per
Sistemi e Reti Wireless
Corso di Laurea Specialistica in Scienze di Internet
Denise Mazzini
matricola 0000251605
Introduzione

Cos’è Bluetooth?


Tecnologia di comunicazione a breve
distanza progettata per le WPAN
Origini storiche del nome
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
2
Topologia delle reti Bluetooth

Piconet



1 master e (max) 7 slave
Sincronizzazione di clock e FHS
Scatternet

Unione di più piconet
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
3
Bluetooth Protocols
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
4
Il livello Radio (RF)

Banda ISM da 2400 MHz a 2483.5 MHz


Diverse classi di dispositivi



79 canali (1MHz ognuno)
3 classi di potenza di trasmissione diversa
Controllo della potenza di trasmissione
2 modalità di trasmissione

Basic Rate (GFSK) e Enhanced Data Rate
(PSK)
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
5
Livello Baseband

Formato dei pacchetti: 2 tipi

Basic Rate


Enhanced Data Rate


Access Code, Header e Payload
Access Code, Header, Guard, Sync, Payload e
trailer
Access code

DAC, CAC, IAC
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
6
Livello Baseband

Canali fisici




basic piconet physical channel
adapted piconet physical channel
inquiry scan physical channel
page scan physical channel
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
7
Livello Baseband

Hop selection






inquiry hopping sequence
inquiry response hopping sequence
page hopping sequence
page response hopping sequence
basic channel hopping sequence
adapted channel hopping sequence
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
8
Livello Baseband

Trasporto logico (LT_ADDR)





Synchronous Connection-Oriented (SCO) logical
transport
Extended Synchronous Connection-Oriented
(eSCO) logical transport
Asynchronous Connection-Oriented (ACL) logical
transport
Active Slave Broadcast (ASB) logical transport
Parked Slave Broadcast (PSB) logical transport
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
9
Livello Baseband

Synchoronus Connection Oriented logical
transport (SCO)




Collegamento simmetrico point-to-point tra master
e slave
Riserva degli slot ad intervalli temporali
Non prevedono ritrasmissione
Extended SCO (eSCO)

Come SCO, ma con finestra di ritrasmissione
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
10
Livello Baseband
Asynchronous Connection-Oriented logical
transport (ACL)




Commutazione di pacchetto
Tra master e slave può esserci solo un trasporto
logico
Si applica la ritrasmissione per assicurare
l’integrità dei dati
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
11
Livello Baseband
Active Slave Broadcast logical transport
(ABS)





Traffico unidirezionale dal master agli slave
Trasporta traffico L2CAP
Inaffidabile: ritrasmissione ripetuta del pacchetto
Usato con LT_ADDR con tutti 0
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
12
Livello Baseband
Parked slave broadcast logical transport


Comunicazione tra master e slave in stato
park

Utilizzo di due indirizzi:


PM_ADDR Parked Member Address
AR_ADDR Access Request Address
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
13
Livello Baseband

Logical link





Link Control (LC)
ACL Control (ACL-C)
User Asynchronous/Isochronous (ACL-U)
User Synchronous (SCO-S)
User Extended Synchronous (eSCO-S)
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
14
Livello Baseband

Il Link Controller è responsabile della gestione degli
stati dei dispositivi Bluetooth










StandBy
Connection
Inquiry
Inquiry scan
Inquiry response
Page
Page scan
Page response
Slave response
Parked
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
15
Livello Baseband

Stato StandBy


Inquiry


Invio ripetuto del messaggio di inquiry
Inquiry Scan


Stato di default, basso consumo
Attesa di un messaggio di inquiry, va fatto periodicamente
Inquiry response


Invio di un messaggio FHS per ogni messaggio inquiry
ricevuto (rischio di collisione – backoff)
Non hanno priorità sul traffico SCO
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
16
Livello Baseband

Lo stato Page scan


Attesa di messaggi di paging
Se non vengono ricevuti, si passa nello stato slave
response

Lo stato Page


Emissione del messaggio di page con il DAC
Lo stato Page response


Risposta al messaggio di page ricevuto
Si deve fare la sincronizzazione tra dispositivi
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
17
Livello Baseband

Lo stato connection




Inizia con un POLL da parte del master
Risposta qualsiasi dello slave
Se problemi si ritorna allo stato page/page
scan
Sottostati:



Active mode
Hold mode (solo SCO)
Sniff mode (solo ACL)
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
18
Livello Baseband

Lo stato park


Partecipazione non attiva – attività minima
Cede il LT_ADDR per ottenere



PM_ADDR: il master comunica agli slave parked
AR_ADDR: lo slave parked comunica col master
Ascolto per una serie di beacon del master

Per consentire la sincronizzazione
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
19
Link Manager




Gestisce tutti gli aspetti relativi alla
connessione avvenuta
Comunicazione attraverso il trasporto logico
ACL
Opera per transazioni (PDU con stesso ID)
Tempo tra ricezione di un messaggio e invio
di una valida risposta LMP < Response
timeout LMP.
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
20
Link Manager

Altre operazioni del LM

Diretto responsabile della connessione





Provvede allo scambio di informazioni
Aggiustamento della potenza di
trasmissione
Adapted Frequency Hopping
Supervisione dei collegamenti
Controllo della qualità del canale
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
21
Link Manager

Sicurezza



Autenticazione con challenge e messaggio
di risposta con codifica (chiave segreta)
Fase di pairing per concordare la chiave
segreta
Criptazione dei messaggi con la chiave
segreta
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
22
L2CAP

Multiplexing del protocollo


Segmentazione e riassemblaggio




Migliore gestione dei dati se la lunghezza del PDU è gestita
da L2CAP
Controllo di flusso (opzionale)
Controllo degli errori e ritrasmissione
Frammentazione e ricombinazione


Gestione di diverse entità a livelli diversi
Anche i livelli sottostanti possono frammentare ulteriormente
il PDU
Controllo della qualità del canale
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
23
RFCOMM


Semplice protocollo di trasporto che emula le
porte seriali RS232 sul protocollo L2CAP
2 categorie di dispositvi



1) Computer, stampanti etc.
2) Segmenti di comunicazione (es modem)
Data Link Connection Identifier (DLCI)

Identifica una connessione uscente tra master e
slave, 6 bit ma valori da 2 a 61.
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
24
Scrivere un’applicazione Java+Bluetooth

MIDlet


un'applicazione Java, scritta per dispositivi
con scarse risorse hardware
MIDlet Suite: 2 file principali


.jad :descrittore dell'applicazione
.jar :un file archivio con le classi
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
25
Scrivere un’applicazione Java+Bluetooth

MyTris - Classi principali













MyTris.java
NetLayer.java
EndPoint.java
Sender.java
Reader.java
AcceptPlayer.java
AsktoPlayCanvas.java
BTListener.java
Msg.java
NameUI.java
PlayerExit.java
WaitCanvas.java
WaitConfirm.java
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
26
Scrivere un’applicazione Java+Bluetooth

javax.microedition.*;


oggetti e i metodi necessari per creare una
MIDlet, dagli oggetti grafici come finestre e
immagini, ai comandi.
javax.bluetooth.*;

oggetti e metodi per la gestione della
connessione Bluetooth.
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
27
Scrivere un’applicazione Java+Bluetooth

Maschera di input per dati
iniziali

Utilizzo massiccio delle classi
grafiche Canvas, Form e
Image.
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
28
Scrivere un’applicazione Java+Bluetooth

Classe responsabile della connessione

NetLayer


Attende come server se qualche dispositivo è
già alla ricerca di un secondo giocatore
Ricerca come client se c’è già un dispositivo in
attesa di essere invitato a giocare
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
29
Scrivere un’applicazione Java+Bluetooth

Schermate del gioco quando è attivo
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
30
Scrivere un’applicazione Java+Bluetooth

Strumenti per lo
sviluppo


Java Wireless Toolkit
v 2.5.1
Ottimo strumento sia
in fase di
compilazione e
creazione dei
package sia in fase di
simulazione del gioco
Elaborato di Sistemi e Reti
Wireless - Lo standard Bluetooth
31