710 likes | 899 Views
Bluetooth. Mohamed Mokdad Ecole d’Ingénieurs de Bienne. What is Bluetooth?. Data transmission standard Between different kinds of terminals E.g. PC, Printer, PDA, Phone, Radio Link Bitrate: Up to 1 mbps Security: It’s secured It’s not intended for permanent connection. History.
E N D
Bluetooth Mohamed Mokdad Ecole d’Ingénieurs de Bienne
What is Bluetooth? • Data transmission standard • Between different kinds of terminals • E.g. PC, Printer, PDA, Phone, • Radio Link • Bitrate: Up to 1 mbps • Security: It’s secured • It’s not intended for permanent connection
History • Ericsson starts developping it in 1994 • Other joined: IBM, Nokia, etc • The group is named: Bluetooth SIG • SIG = Special Interest Group • Bluetooth SIG • Specifications • Profiles
How it works? • Radio link between 2 terminals • On short distances up to 10 meters • Special arrangements up to 100 meters • Theoritical Bitrate up to 720 kbps • 1 Master & 1+ Slave terminals (up to 7) • Link: only Master to Slave • No slave to slave links • Frequency Hopping
The Applications • PC to PDA synchronisation • Printing everywhere • Headsets • Mobile phone to PDA • COM Devices • …
The architecture: Piconet Single slave operation Multi slaves operation Scatternet operation
Specs – Radio Channel • 2.4 GHz – Bandwidth 79 MHz • 1 MHz frequency hops, i.e. 79 hops • Not everywhere available spectrum • E.g. France: limitation to 23 MHz bandwidth • Reach of 10 m with 2.5 mW • 2.5 mW ~ 4 dBm, i.e. Log(2.5mW/1mW) • The cell is the Piconet • 3 power classes: 1, 2.5 & 100 mW
Radio interface features • Power control with RSSI – LMP • Receiver Signal Strength Indicator (dBm) • Allows power adjustment for Class 1 (High) • Optional for Power Classes 2 and 3 • Key features of Bluetooth • Robustness, low complexity • low power, low cost. • Frame number 0 to 227-1 & cycles @ 227 • Master sends in even slots (0, 2, 4, …)
Physical Layer • Channel divided in 625 ms slots • Every slot @ a different frequency hop • A packet can be • Less then one slot • One slot • More then one slot (up to five) • Next packet starts on next slot • One packet per frequency hop
Transmission mode - SCO • Synchronous Connection-Oriented • SCO • Point to point connection in the Piconet • Regular reserved transmission slots • Speech connections @ 64 kbps • Maximum of 3 Master-Slave simultaneous connections
Transmission mode - ACL • Asynchronous Connection-Less • ACL • One single connection • No slot reservation • More then one connection @ the same time • And with more then one slave
The packet • Access Code • - Channel Access Code: Identifies the Piconet • - Device Access Code: Identifies the access type • Inquiry Access Code: Identifies the request • Header for addressing, error correction and flow control • Payload for Data
Overview of major states • Standby state • Default state • Low power comsuption • No interaction with any other terminal • Synchronised (Clock active) • Connection state • Dialog state • Master clock for synchronisation
Connection state modes • Active mode • Participating to a connection • Sniff mode • Reduction of the slave listening activity • Hold mode • No ACL support, but just SCO support • Frees capacity for other slaves • Park mode • Remains synchronised and keeps addresses
Base Band • Physical channels • Time slots @ 625 ms • Physical links • SCO and ACL • Packets • Access code, packet header and types • Error correction • 1/3, 2/3 and ARQ scheme
Logical channels • Logical channels (5) • LC = Link Control • Low level link control: ARQ, Flow, etc. • LM = Link Manager • Peer protocol between Link Mgr (Master/Slave) • UA = User Asynchronous Data • Different clocks & Synchronization per byte • UI = User Isochronous Data • Clock in data & mainly no error checking • US = User Synchronous Data • Synchronized clocks & Error checking
Logical channels UA/UI & US • UA/UI • Carried over ACL links • US • Carried over SCO links • LC mapped in the packet header • The other in the payload
Packet Hierarchy PSM: Protocol Service Multiplexer, i.e. SPD, RFCOMM or TCP
Packets Transmit & Receive • Transmit & Receive Routines • The standard makes suggestion • There is no obligation to implement • It looks like V.24 interface • Transmit Buffer • Receive Buffer • … • It’s however much more complicated
Link Manager Protocol • Link Setup • Link Control • Link Security • LM PDU • Link Manager Protocol Data Unit • LM PDU always sent in the payload and • Always as single-slot packets
The Procedures • General response messages • Authentication • Pairing • Change Link Key • Change Current Link Key • Encryption • Switch of Master-Slave Role • QoS
Pairing • No link key available • Generate one based on • Random number, BD_ADDR, PIN • Initiator and Responder • Reject or • Accept and create link key
Authentication • Secret Key • Based on Challenge, BD_ADDR, secret link key • Claimant and Verifier • Has key • Has no key
L2CAP • Logical Link Control & Adaptation Protocol • Higher layer protocols • Packet Segmentation & Reassembly (SAR) • Multiplexing • QoS • Supports ACL and no SCO Links • Simplicity and low overhead • Applicable to equipment with low power resources: PDAs, Cellular phones, …
L2CAP does not support • L2CAP does not transport audio designated for SCO links. • L2CAP performs no retransmissions or checksum calculations. • L2CAP does not perform any CRC Calculation
Payload Format LMP = 1 slot packets L2CAP = 1 or more slots packets
Channel Coding To be noted 10 = Start of L2CAP packet 01 = Continuation of L2CAP packet
Channels types • Connection oriented data channels • Both ways connection • Normal CID • Connectionless channels • One way channel • Reserved CID • E.g Signaling • Signaling channel is mandatory
L2CAP Services 8 5 4 1 2 7 6 3
Segmentation L2CAP over Baseband: segment in Baseband packets to send over the air L2CAP over HCI: segment in block sized chunks to send to the HCI This will segment to Baseband packet to send over the air The scenario is: L2CAP to Baseband to L2CAP
Profiles • Bluetooth SIG Profiles • Different profiles • Devices Interoperability • Not all Bluetooth devices can interoperate • Service and use case • Specify the supported services • Describe the air interface • For the profile
Type of support • Mandatory • Define profile's capabilities • Optional • Define profile's capabilities that can be used • Conditional • In conjunction with some other capability • eXcluded • Should not be used in this profile • Not Applicable
Profiles • GENERIC ACCESS - @ least • SERVICE DISCOVERY APPLICATION • CORDLESS TELEPHONY • INTERCOM • SERIAL PORT • HEADSET • DIAL-UP NETWORKING • FAX • LAN ACCESS • GENERIC OBJECT EXCHANGE • OBJECT PUSH • FILE TRANSFER • SYNCHRONIZATION
Profile description • Scope • What is its usage: service and use case • Dependencies • What other profiles are required • Stack • Which element of the stack are involved • The protocols • @ the different layers: LM, L2CAP, …