Introduction to Bluetooth™ Wireless Technology Jon Inouye Staff Software Engineer Mobile Platforms Group Intel Corporati...
98 downloads
1383 Views
3MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Introduction to Bluetooth™ Wireless Technology Jon Inouye Staff Software Engineer Mobile Platforms Group Intel Corporation Bluetooth Bluetoothisisaatrademark trademarkowned ownedby byBluetooth BluetoothSIG SIGInc. Inc.USA USA IEEE Oregon Section Bluetooth Seminar – April 27, 2001
1
Radio Technology l
Cellular – Licensed spectrum – Voice driven – Data services emerging – E.g., 3G, GPRS, WAP*
l
Wireless LAN – Proliferation occurring – E.g., IEEE 802.11b
l
WWAN Km WLAN 100 m text text
WPAN 10 m
Wireless PAN – Relative newcomer – E.g., Bluetooth*, 802.15
*Third-party marks and brands are the property of their respective owners.
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
2
WHAT IS BLUETOOTH? Applications
Data Audio
Co ntro l
TCP/IP HID RFCOMM
L2CAP Link Manager
Baseband RF l
a hardware description
l
an application framework IEEE Oregon Section Bluetooth Seminar – April 27, 2001
3
OUTLINE l Radio l Baseband l Connection Management l Channel Operation l Piconet Management
l Software Stack l Profiles
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
4
RADIO
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
5
RADIO PARAMETERS (1) l Frequency hopping l ISM band at 2.45 GHz l 2402 + k MHz, k = 0, …, 78 l device-specific hopping sequence l nominal rate 1600 hops/s
l Modulation l binary FSK l Gaussian shaping l BT = 0.5; 0.28 < h < 0.35 l -20dB bandwidth of 1 MHz IEEE Oregon Section Bluetooth Seminar – April 27, 2001
6
RADIO PARAMETERS (2) l Transmit power l nominal 0 dBm l up to 20 dBm provided power control
l Receiver sensitivity l -70 dBm @ 0.1% BER
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
7
BASEBAND OPERATIONS DISCOVERY AND CONNECTION ESTABLISHMENT
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
8
INQUIRY l Radio wanting to discover other radios l Repetitively probe first set of 16 frequencies l Probes two frequencies every 625 microseconds l Repeat at least 256 times l Repetitively probe second set of 16 frequencies l Repeat entire cycle at least two times
l Radio wanting to be discovered l Listen to one of 32 frequencies for at least 11.25 ms l Sleep no longer than 2.56 seconds l Wake up and listen to another frequency l Repeat cycle
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
9
INQUIRY OPERATION
A
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
10
CREATING A PICONET
A
page B
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
11
CREATING A PICONET
master A
connected slave B
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
12
CREATING A PICONET
slave C slave D
master A
slave B
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
13
OPERATIONAL STATES
master active slave parked slave standby IEEE Oregon Section Bluetooth Seminar – April 27, 2001
14
ADDRESSING l Bluetooth Device Address (BD_ADDR) l 48-bit IEEE 802 address l 24-bit lower address part (LAP) l 8-bit upper address part (UAP)
l Active Member Address (AM_ADDR) l 3-bit active slave address l all-zero broadcast address
l Parked Member Address (PM_ADDR) l 8-bit parked slave address
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
15
BASEBAND OPERATIONS PICONET CHANNEL
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
16
FH/TDD CHANNEL f(2k)
f(2k+1)
f(2k+2)
master t
slave t 625 µs
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
17
FREQUENCY HOPPING
freq 2.402
2.480
master slave
time
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
18
PHYSICAL CHANNEL l master BD_ADDR → hop sequence l master CLOCK
→ phase slave 2 slave 1 master
slave 3
slave 4
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
19
HOP SELECTION
phase
NATIVE CLK
HOP sequence
offset
MASTER BD_ADDR
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
20
PACKET FORMAT
72b
0-2745b
54b
access code packet header
payload
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
21
ACCESS CODE 34
24
6
PRT
LAP
BRK
4
PREAMBLE LSB
64
SYNC WORD
4
TRAILER MSB
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
22
ACCESS CODE TYPES l Device
access code (DAC)
unit identifier l derived from unit LAP l
l Channel
access code (CAC)
channel identifier l derived from master LAP l
l Inquiry
access code (IAC)
reserved identifier l derived from reserved address l
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
23
PACKET HEADER 3
AM_ADDR
4
1
TYPE
FLOW
parameter AM_ADDR
1
ARQN
1
SEQN
8
HEC
information slave active member address
TYPE
payload type
FLOW
LC flow control
ARQN
ACK/NAK
SEQN
retransmit ordering
HEC
header error check
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
24
PHYSICAL LINK DEFINITION
Purpose: Mixing:
MULTI-MEDIA SUPPORT l circuit switching l packet switching
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
25
PHYSICAL LINK TYPES l Synchronous Connection-Oriented (SCO) Link l circuit switching l symmetric, synchronous services l slot reservation at fixed intervals
l Asynchronous Connection-Less (ACL) Link l packet switching l (a)symmetric, asynchronous services l polling access scheme
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
26
MIXED LINK EXAMPLE SCO
ACL
SCO
ACL
ACL
SCO
SCO
ACL
MASTER
SLAVE 1
SLAVE 2
SLAVE 3
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
27
PACKET TYPES segment
1
2
3
4
type 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
SCO link ACL link NULL POLL FHS DM1
NULL POLL FHS DM1 DH1
HV1 HV2 HV3 DV AUX1 DM3 DH3
DM5 DH5
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
28
MULTI-SLOT PACKETS 625 µs f(k)
f(k+1)
f(k+2)
f(k)
f(k+3)
f(k+4)
f(k+5)
f(k+3)
f(k+4)
f(k+5)
f(k)
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
f(k+5)
29
DATA RATES (kb/s) type
symmetric
asymmetric
DM1
108.8
108.8
108.8
DH1
172.8
172.8
172.8
DM3
258.1
387.2
54.4
DH3
390.4
585.6
86.4
DM5
286.7
477.8
36.3
DH5
433.9
723.2
57.6
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
30
LINK CONTROL PACKETS l ID packet l NULL packet l POLL packet l FHS packet
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
31
FHS PACKET l BD_ADDR l DAC l AM_ADDR l class of device l paging class l real-time clock
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
32
ERROR CORRECTION l Forward-Error Correction (FEC) l 1/3 rate: bit-repeat code l 2/3 rate: (15,10) shortened Hamming code
l Automatic Retransmission Query (ARQ) l 1-bit fast ACK/NAK l 1-bit sequence number l header piggy-backing
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
33
ARQ OPERATION A
B
B
X
C
MASTER
SLAVE 1
SLAVE 2
G
F
H
Z
Z
NAK
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
ACK
34
CVSD WAVEFORM CODING
1 1 0 0 0 0 0 0 1 0 1 1 1 1 1 0 1 0 0 0 0 1 1 1 0 0 0 1 0 1 0 1 0 . . . . . . .
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
35
BASEBAND OPERATIONS PICONET MANAGEMENT
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
36
OPERATIONAL STATES l
stand-by, scan
l
page, inquiry
l
connection active l hold l sniff l park l
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
37
SIMPLIFIED STATE MACHINE Unconnected Standby
Standby De tac h
l
– Waiting to join a piconet l
Inquire
Connecting States
– Discover radios l
Page Active States
Page
Transmit data AMA
Ttypical=0.6s
Connected AMA
Connected Ttypical=2 ms
– Active on a piconet l
Inquiry
Ttypical=10.25s
– Connect to a specific radio l
Standby
Park/Hold/Sniff – Low Power connected states
Low Power States
Releases AMA Address
PARK PMA
Ttypical=2 ms
SNIFF
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
HOLD AMA
38
HOLD MODE ACL
ACL
ACL
ACL
ACL
ACL
ACL
MASTER
LOST
SLAVE 1
HOLD INTERVAL
SLAVE 2
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
39
SNIFF MODE ACL
ACL
ACL
MASTER
LOST
SLAVE 1
SNIFF INTERVAL
SLAVE 2
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
40
PARK MODE active slave
master
parked slaves
l BEACON l PM_ADDR
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
41
PARK MODE PARK INTERVAL BC
ACL
ACL
BC
MASTER
SLAVE X
SLAVE 2
SLAVE Y
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
42
SCATTERNET slave 3 slave 1
slave 6
master A
slave 4 / master B
slave 5 slave 2
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
43
BASEBAND OPERATIONS SECURITY
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
44
SECURITY COMPONENTS
l
Authentication
l
Payload encryption
l
Key handling
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
45
AUTHENTICATION l
To verify claimed identity
l
Challenge-response system
l
Algorithm E1: l Input: RAND (128 bit), Claimant addr. (48 bit), link key (128) SRES (32 bit), ACO (96 bit) l Output:
l
One-sided or mutual authentication ACO = Authenticated Ciphering Offset
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
46
ENCRYPTION l
To prevent (un)intentional eavesdropping
l
Stream ciphering
l
Algorithm E0: l Input: RAND (128 bit), master addr./clock, Kc (128 bit) l Output: cipher stream
l
LFSR restart for every slot
l
Encryption of payload only
l
Point-to-point or point-to-multipoint
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
47
KEY TYPES Link Linkkeys keys Encryption Encryption key key
Temporary Temporary
Master Master Key Key
Semi-permanent Semi-permanent
Unit Unit Key Key
Combination Combination Key Key
Initialization Initialization Key Key
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
48
RADIO/BB SUMMARY l Frequency hopping radio at 2.4 GHz l Intrinsic support for voice and data l Maximum 723 Kbps MAC throughput l Low power modes l Point-to-multipoint configuration l Support of basic security mechanisms
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
49
SOFTWARE STACK
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
50
Outline l l l l
Software scope and goals Protocol Review Profile Review Summary
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
51
Software Architecture Applications SDP
RFCOMM
Cover This
Co ntro l
TCS
Data L2CAP Audio
Link Manager
LMP LMP
Baseband RF IEEE Oregon Section Bluetooth Seminar – April 27, 2001
52
Software Architecture Goals l l l
Support the target usage models Support a variety of hardware platforms Protocol reuse – Avoid duplicating existing technology – Promote better harmonization across technologies
l
Good “out of box” user experience – Interoperability
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
53
Outline l l l l
Software goals Protocol Review Profile Review Summary
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
54
Bluetooth Protocol Stack Still Image
HID Service Discovery
WAE
vCard/vCal*
WAP*
OBEX* TCP/UDP
Audio Printing
RFCOMM
IP
TCS L2CAP
Host Controller Interface *Third-party marks and brands are the property of their respective owners. IEEE Oregon Section Bluetooth Seminar – April 27, 2001
55
HCI
Bluetooth Host Host Drives and Applications
l
Host Controller Interface (HCI) provides a common interface between the Bluetooth Host and the Bluetooth Module HCI
Bluetooth HCI driver Bluetooth HCI Transport driver
(USB*, PC Card*, PCI*)
Transport Bus HCI Transport Firmware
Bluetooth Host Controller Link Manager Bluetooth Baseband *Third-party marks and brands are the property of their respective owners.
Bluetooth Radio Bluetooth Module
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
56
Link Layer Control and Adaptation Protocol l l l
Also known as L2CAP Basic data link layer protocol over Baseband Support for: – Protocol Multiplexing – Segmentation and Reassembly (SAR) – Quality of Service – Groups
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
57
L2CAP Architecture l
Connection-oriented – Channel identifier (CID) used to label each connection endpoint – Channels may be uni-directional or bi-directional – QoS flow specification assigned to each channel direction
l
Connectionless – Supports group abstraction
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
58
L2CAP Channels Connection-Oriented Data Channel Connectionless Data Channel
CID
Device #1
CID
CID
CID
CID
L2CAP
CID
L2CAP
CID
L2CAP Signalling Channel
L2CAP
Device #2
CID
CID
L2CAP
L2CAP
Device #3
Device #4
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
59
Service Discovery Protocol l
Bluetooth SDP enables Bluetooth devices to discover the characteristics and capabilities of other Bluetooth devices within RF proximity
l
Within Bluetooth SDP, a service is: – any information, resource, or facility that is provided by (or through) one Bluetooth device that is advertised as available to nearby Bluetooth devices
l
Bluetooth SDP does not provide a general purpose service access/usage mechanism; SDP only enables discovery of services
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
60
Service Discovery l
Two parts – Service record format – Information about service provided by attributes – Attributes composed of an ID and a value – Ids may be universally unique identifiers (UUID) – Session protocol for enabling discovery – Searching for and browsing services
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
61
Typical SDP Client/Server Interactions Server
Client ServiceSearchRequest(SearchPattern)
ServiceSearchResponse(ServiceRecordHandleList)
ServiceAttributeRequest(ServiceRecordHandle, AttributeIDList) ServiceAttributeResponse(AttributeList)
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
62
SDP Scope l
Many Service Discovery Protocols – Service Location Protocol (SLP), Jini*, Universal Plug and Play (UPnP*), etc.
l
Bluetooth SDP focuses on service discovery within Bluetooth environment
l
SDP does not compete with other technologies.
l
SDP compliments them by enabling their use in Bluetooth environments
*Third-party marks and brands are the property of their respective owners.
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
63
RFCOMM l
l
l
Supports a large base of legacy applications using the serial port as the primary communications mechanism. Reuse GSM TS 07.10 as an existing standard for multiplexing a single physical channel and V.24 emulation. Designed to allow multiple “ports” over a single physical channel between a PC and a GSM handset
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
64
TCS Protocol l Telephony
Control Protocol Specification
Group management Call Control Gateway may serve more Call setup and release cordless devices Symmetrical derivative of Distributes group information Q.931
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
65
TCS Impact l
Cordless Telephony Example – Phone moves into range of voice access point and establishes link – Phone link placed into a low power state – Incoming call is broadcast to all phones – On answer, a voice (SCO) link is setup
l
Intercom – Supports direct phone-to-phone communication
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
66
Reuse and Recycle l
Desire to reuse IrDA* applications on mobile phones and PCs – Decision to merge with IrDA’s OBEX (Object Exchange) protocol on top of RFCOMM or TCP. – Enables harmonized API across PAN technologies
l
Interaction with applications on phones – Handset manufacturers have agreed on an application framework called WAP*. – Bluetooth is treated as a WAP “bearer” in a manner similar to GSM. – Reuse “browser” interface on mobile phone. *Third-party marks and brands are the property of their respective owners.
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
67
Outline l l l l
Software goals Protocol Review Profile Review Summary
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
68
Interoperability and Profiles l
Protocols define the communication language spoken between devices
l
How do you avoid the “Tower of Babel” problem?
l
Solution: Mandate the language spoken for a given usage model
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
69
Profiles l l l l
Represents the default solution for a specific usage model “Vertical slice” through the protocol stack Basis for interoperability and logo requirements Each Bluetooth device supports one or more profiles
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
70
Protocols and Profiles
Relationship between Protocols and Profiles
Protocols
Applications
Profiles IEEE Oregon Section Bluetooth Seminar – April 27, 2001
71
Profiles in the Bluetooth Specification 1.1 Generic Access Profile TCS-BIN-based Profiles Service Discovery Application Profile
Cordless Phone Profile
Intercom Profile
Serial Port Profile Dial-up Networking Profile Fax Profile
Headset Profile
LAN Access Profile
Generic Object Exchange Profile File Transfer Profile Object Push Profile
Synchronization Profile
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
72
Example: Dialup Networking Profile PPP AT Commands
RFCOMM L2CAP LMP
ACL SCO Bluetooth Baseband IEEE Oregon Section Bluetooth Seminar – April 27, 2001
73
Software Summary l Protocols l Profiles l Existing
defined for communication
defined to promote interoperability protocols used where possible
IEEE Oregon Section Bluetooth Seminar – April 27, 2001
74