Bluetooth (BT) Protocol Architecture: By: Sachin Garg
Bluetooth (BT) Protocol Architecture: By: Sachin Garg
Table of Contents
Protocol Stack
Classification Protocols
BT Radio
Baseband Link Manager Protocol
References
Classification of Protocols
Can be divided into four layers
purpose
Protocol Layer
Bluetooth Core Protocols
RFCOMM
TCS Binary, AT-commands PPP, UDP/TCP/IP, OBEX, WAP, vCARD, vCAL, IrMC, WAE
Classification Continued
Applications Higher Layers Logical Link Control and Adaptation Protocol (L2CAP) HCI : command interface to the BT module, access to Host Controller hardware status and Interface (HCI) control registers. Can be above or below L2CAP.
Baseband Radio
Bluetooth Module
BT Radio
lowest defined layer of the Bluetooth specification Frequency Bands and Channel Arrangement
Operates in the 2.4 GHz unlicensed ISM band. 79 hop frequencies: f = 2402+k MHz, k= 0,..78.
-Japan, Spain and France, 23 channels only
Transmitter
GFSK modulation: BT=0.5, 0.28 < m < 0.35
Power
Class
Class
Class
BT Radio
Receiver
Power Control
Baseband
lies on top of Bluetooth radio
Baseband
Physical Channel
Pseudo Random Frequency Hopping with Time Division Duplexing Transmission rapidly hops among the available channels Transactions are divided into dedicated time slots each for the Master and the Slave Typically odd cycles for the Master and evens for the Slaves Terminology Frame = a complete transmit/receive cycle Slot = a 625 microsecond segment within a frame
asymmetric bandwidth
max. 721 kbps (57.6 kbps return channel) 108.8 - 432.6 kbps (symmetric)
master can support up to 3 SCO links with the same/different slaves. slave can support 3 SCO links, with the same master. SCO packets never retransmitted
Baseband
logical channels : Five LC (Control Channel) and LM (Link Manager)
Bluetooth Addressing
four types of device addresses
BD_ADDR: Bluetooth Device Address.
BT Network Topology
PICONET - Collection of devices connected in an ad hoc
fashion One unit acts as master and the others as slaves for the lifetime of the piconet
Master device that initiates a data exchange Slave device that responds to the master
P S S M
sb
P P sb M S
Each piconet has one master and up to 7 simultaneous slaves (> 200could be parked)
Participation in a piconet = synchronization to hopping sequence
All
Slave1
625 ms Slot 1 Frame 1 Slot2 625 ms Slot 3 Frame 2
t
Slot4
Complete packet transmission occurs during a Slot Frequency hops from Slot to Slot to Slot Frames define matched Master / Slave Slot transmissions
Multi-Slave Transmission
fk Master fk+1 fk+2 fk+3 fk+4 fk+5
Slave1
Slave2 t
The Bluetooth master interleaves traffic between multiple simultaneously active slaves
Each Master can support up to 7 simultaneously active slaves
Multi-Slot Framing
fk Master fk fk fk+3
Slave1
625 ms Slot 1
t
Slot2 Frame
Slot 3
Slot4
To increase bandwidth Bluetooth can aggregate multiple slots in one direction of the transmission (i.e. asymmetric transmission)
Eliminates turnaround time and reduces packet overhead Note that frequency DOES NOT change during the multi-slot transmission
Bluetooth supports 1/1, 3/1, and 5/1 framing (example above is 3/1) 5/1 framing supports up to 721Kbps, Bluetooths maximum capacity
fk+1
fk+2
fk+3
fk+4
fk+5
60 60
60 60
50 50
50 50
40 40
40 40
30 30
30 30
20 20
20 20
10 10
10 10
00 00 10 10 20 20 30 30 40 40 50 50 60 60 70 70 80 80 90 90
00 100 100
PiconetA A Piconet ActivePiconets: Piconets:1 1 Active TotalTransmission TransmissionSlots: Slots:100 100 Total TransmissionSlots SlotsHit: Hit:0 0 Transmission
60
50
40
30
Four active piconets 400 transmission slots 10 collisions 20 slots corrupted ~95% net efficiency
60
50
40
30
20
20
10
10
0 0 10 20 30 40 50 60 70 80 90
0 100
Piconet B
Piconet C
Piconet D
Contention
Contention
Contention
Contention
80
70
50
40
30
Ten active piconets 1000 transmission slots 56 collisions 112 slots corrupted ~89% net efficiency
60
50
40
30
20
20
10
10
0 0 10 20 30 40 50 60 70 80 90
0 100
Piconet A Contention
Piconet B Contention
Piconet C Contention
Piconet D Contention
Piconet E Contention
Piconet F Contention
Piconet G Contention
Piconet H Contention
Piconet I Contention
Piconet J Contention
Active Piconets: 10
Baseband: Packets
Packet Types : 13 types Packet Format
Header: information for packet acknowledgement, packet numbering for out-of-order packet reordering, flow control, slave address and error check for header. Payload: voice field, data field or both.
-Standby
-Connection
Sniff mode:
Unit does not listen to every master transmission. Master polls such slaves in specified sniff slots.
Hold mode
Master and slave agree on a time duration for which the slave is not polled. Typically used for scanning, paging, inquiry or by bridge slaves to attend to other piconets.
Park mode
Slave gives up AM_ADDR. Listens periodically for a beacon transmission to synchronize and uses PM_ADDR/AR_ADDR for unparking.
Flow Control
avoid dropped packets and congestion
Synchronization Security
authentication of the peers and encryption of the information
Protocol multiplexing
RFCOMM, SDP, telephony control Segmentation & reassembly Up to 64kbyte user data, 16 bit CRC QoS flow specification per channel Specifies delay, jitter, bursts, bandwidth Group abstraction Create/close group, add/remove member
PPP
Adopted Protocols
TCP/UDP/IP
for communication with any other device connected to the Internet for the Internet Bridge usage scenarios in Bluetooth Similarly, FTP, HTTP etc..
Bluetooth profiles
Represents default solution for a usage model
- Vertical slice through the protocol stack
Applications
Protocols
Profiles
The figure does not show the LMP, Baseband, and Radio layers
Synchronization profile
IrMC IrOBEX RFCOMM L2CAP
LMP
References
www.palowireless.com/bluetooth/ www.research.ibm.com/people/k/kapurva www.cse.secs.oakland.edu/haskell2/ VHDL/CSE480/