第十六章 Bluetooth 網路 16-1 Bluetooth 技術簡介 16-2 Bluetooth 網路特性 16-5 無線電 (Radio) 規格 16-6 基頻 (Baseband) 協定 16-7 基頻實體通道 16-8 基頻封包格式 16-9 基頻數據資料封包 16-10 基頻語音封包 16-11 基頻通道控制封包 16-12 基頻鏈路控制狀態 16-13 鏈路管理協定 (LMP) 16-14 邏輯鏈路控制與調協協定 (L2CAP) 16-15 L2CAP 封包格式與介面
16-1 Bluetooth 技術簡介 Bluetooth 的緣由 Bluetooth 所能提供之服務範例 Bluetooth 服務功能 『藍芽』(Bluetooth) 系取自 10 世紀丹麥國王 Harad II 名字 Bluerooth 官方網站: http://www.bluetooth.org/specification.htm 短距離通訊為主要訴求 Bluetooth 所能提供之服務範例 三合一手機 無線耳機 互動式會議 整合電腦連線 數位化家電 Bluetooth 服務功能 資料與聲音的存取點 (Data and Voice Access Point) 取代連線 (Cable Replacement) 對等網路 (Ad Hoc Network)
16-2 Bluetooth 網路特性 Bluetooth 網路特性 傳輸速率:1 Mbps (同一 Piconet 內裝置共享) 網路範圍: 10 公尺左右 網路環境:一個 Bluetooth 最多含有 10 個 Piconet 網路,一個 Piconet 最多 8 個活動裝置 通訊頻段:2.4 GHz ISM 展頻技術:採用 FHSS 展頻技術,每秒跳躍 1600 次 媒介存取:採用主從式集中處理。 傳輸訊息:同時傳送語音與資料 編碼技巧: 語音:CVSD (Continuous Variable Slope Delta), 64 Kbps 數據資料:GFSK (Gaussian Frequency Shift Keying) 多工技術:採用分時雙工 (Time Division Duplex) 機制 連線方式: 同步連結導向 (Synchronous Connection-Oriented, SCO) 非同步非連接 (Asynchronous Connectionless Link, ACL)
16-3 Bluetooth 協定堆疊 (一) Bluetooth 協定標準 核心規格 (Core Specification) 系統核心標準 草案規格 (Profile Specification) 各種應用環境標準
16-3 Bluetooth 協定堆疊 (二) 核心規格的協定堆疊 無線電 (Radio) 基頻 (Baseband) 鏈路管理協定 (Link Management Protocol, LMP) 邏輯鏈路控制與調適協定 (LLC and Adaptation Protocol, L2CAP) 服務發現協定 (Service Discovery Protocol, SDP)
16-3 Bluetooth 協定堆疊 (三) 協定堆疊範例
16-4 Bluetooth 網路架構 (一) Bluetooth 網路架構 由若干個 Piconet 網路 (最多 10 個) 組合成一較大的 Scatternet 網路 Piconet 網路 最多 8 個 Active 裝置 一個 Master 裝置負責管理媒介存取 相同的虛擬亂數序列 (PNS)
16-4 Bluetooth 網路架構 (二) Scatternet 網路 整合多個 Piconet 網路
16-5 無線電規格 Radio Specification 2.4 GHz ISM 頻段 每頻道 1 MHz 劃分為 79 個頻道 發射功率:分為 3 個等級 100 mW (20 dBm) 2.5 mW (4 dBm) 1 mW (0dBm) Topology Up to 7 simultaneous links in a logical star Modulation GFSK Peak data rate 1 Mbps RF bandwidth 220 kHz (-3 db), 1 MHz (-20 db) RF band 2.4 GHz ISM band RF carrier 23/79 Carrier spacing 1 MHz Transmit power 0.1 W Piconet access FH-TDD-TDMA Frequency hop rate 1600 hops/s Scatternet access FH-CDMA
16-6 基頻協定 (一) Basedband Protocol Bluetooth 技術核心 位於無線電協定與 L2CAP 會 LMP 協定之間
16-6 基頻協定 (二) 裝置位址型態之類別 AR_ADDR : 存取要求位址 (Access Request Address) BD_ADDR:藍芽裝置位址 (Bluetooth Device Address) 較低位址部分 (Lower Address Part, LAP) CAC (Channel Access Code) (Master) DAC (Device Access Code) (Slave) 較高位址部分 (Upper Address Part, UAP) Master 的跳頻順序 未定義位址部分 (Non-signification Address Part, NAP) AM_ADDR:活動組員位址 (Active Member Address) Slave:由 Master 指定 Master : 固定為 000 PM_ADDR :停放組員位址 (Parked Member Address) 8 位元 (256 個組員) 由 Master 指定 AR_ADDR : 存取要求位址 (Access Request Address) 並非唯一識別值
16-7 基頻實體通道 (一) 基頻實體傳輸技術 (1) 跳頻分時雙工 (Frequency Hopping-Time Division Duplex, FH-TDD) 每秒跳躍 1600 次 Master-to-Slave 時槽:偶數時槽 Slave-to-Master 時槽:奇數時槽
16-7 基頻實體通道 (二) 基頻實體傳輸技術 (2) 多時槽傳送方式
16-7 基頻實體通道 (三) 基頻實體鏈路 (1) 同步連接導向連線 (Synchronous Connection-oriented, SCO) Slave 與 Master 之間固定連線 佔用固定時槽 傳送語音封包使用
16-7 基頻實體通道 (四) 基頻實體鏈路 (2) 非同步非連接連線 (Asynchronous Connection-Less, ACL) 利用 SCO 連線後之空閒時槽傳送 由 Master 分配 Slave 傳送時機 ACL 與 SCO 同時存在
16-8 基頻封包格式 (一) Bluetooth 封包格式 (1) 存取碼 (Access Code) 標頭 (Header) 通道存取碼 (Channel Access Code, CAC) 由 Master BD_ADDR 的 LAP 計算得來 裝置存取碼 (Device Access Code, DAC) 由 Slave BD_ADDR 的 LAP 計算得來 詢問存取碼 (Inquiry Access Code, IAC) 由被詢問 BD_ADDR 的 LAP 計算得來 標頭 (Header) AM_ADDR Type (如下表所示) Flow ARQN SEQN HEC
16-8 基頻封包格式 (二) Bluetooth 封包格式 (2) 承載 (Payload) 單一時槽資料封包 多時槽資料封包 語音封包 SCO 連線傳送,固定一個時槽
16-8 基頻封包格式 (三) Bluetooth 封包類別 Code Physical Link Name Number of Slots Description 0000 Common Null 1 沒有承載欄位,主要使用於接收端回應給傳送端 ARQN 或 Flow 旗號。無確認功能。 0001 Poll 沒有承載欄位,使用於 Mater 詢問 (Poll) Slave 時使用。有確認功能。 0010 FHS 展現傳送端的裝置位址及時序的特殊控制封包,使用於回應 Master 的 Paging Response、Inquiry Response,以及跳頻時序的同步。經 2/3 FEC 編碼。 0011 DM1 提供控制訊息,並且可攜帶使用這資料。16-bits CRC 及 2/3 FEC 編碼。 0101 SCO HV1 攜帶 10 Bytes 訊息,典型使用於 64 Kbps 語音傳輸,1/3 FEC 編碼。 0110 HV2 攜帶 20 Bytes 訊息,典型使用於 64 Kbps 語音傳輸,2/3 FEC 編碼。 0111 HV3 攜帶 30 Bytes 訊息,典型使用於 64 Kbps 語音傳輸,無 FEC 編碼。 1000 DV 組合 150 bits 資料與 50 bits 語音訊息,資料部份經 2/3 FEC 編碼。 0100 ACL DH1 攜帶 28 Bytes 資料,及 16-bits CRC,沒有 FEC 編碼。典型使用於高速資料傳輸。 1001 AUX1 攜帶 30 Bytes 資料,沒有 CRC及 FEC 編碼。典型使用於高速資料傳輸。 1010 DM3 3 攜帶 123 Bytes 資料,及 16-bits CRC,2/3 FEC 編碼。典型使用於高速資料傳輸。 1011 DH3 攜帶 185 Bytes 資料,及 16-bits CRC,沒有 FEC 編碼。典型使用於高速資料傳輸。 1110 DM5 5 攜帶 226 Bytes 資料,及 16-bits CRC,2/3 FEC 編碼。典型使用於高速資料傳輸。 1111 DH5 攜帶 341 Bytes 資料,及 16-bits CRC,沒有 FEC 編碼。典型使用於高速資料傳輸。
16-9 基頻數據資料封包 DM1 (Data-Medium Rate 1) 、DH1 (Data-High Rate 1)、DM3、DH3、DM5、DH5、AUX1 非對稱之最高傳輸速率 下行使用 DH5 封包 上行使用 DH1 封包 下行速率 = 339 * 8 * (1600 / 6 ) = 723.2 Kbps 上行速率 = 27 * 8 * (1600 / 6) = 57.6 Kbps 對稱傳輸之最高速率 採用 DH5 封包 速率 = 339 * 8 * (1600 / 10 ) = 433.9 Kbps Type Number of Slots User Payload (Bytes) FEC CRC Symmetric Max. Rate (Kbits) Asymmetric Max Rate (Kbits) Forward Reverse DM1 1 0 ~ 17 2/3 Yes 108.8 DH1 0 ~ 27 No 172.8 DM3 3 0 ~ 121 258.1 387.2 54.4 DH3 0 ~ 183 390.4 585.6 86.4 DM5 5 0 ~ 224 286.7 477.8 36.3 DH5 0 ~ 339 433.9 723.2 57.6 AUX1 0 ~ 29 185.6
Payload Header (Bytes) 16-10 基頻語音封包 HV1 (High Quality Voice 1) 、HV2、HV3、DV (Data Voice) 如使用 HV1,則佔滿所有通訊連線 (SCO) 如使用 HV3,則每 6 個時槽佔用 2 個時槽 (SCO),還可建立其它連線 (SCO 或 ACL) Type Payload Header (Bytes) User Payload (Bytes) FEC CRC Symmetric Max. Rate (Kbits) HV1 N/A 10 1/3 No 64.0 HV2 20 2/3 HV3 30 DV 1D 10+(0 ~ 10)D 2/3D YesD 64.0 + 57.6D
16-11 基頻通道控制封包 共同封包 (Common Packet) 基頻通道控制使用 處理裝置狀態變化使用 ID (Identify Packet) NULL (Null Packet) POLL (Poll Packet) DM1 (Data Medium Rate Packet) FHS (Frequency Hop Synchronization Packet) 處理裝置狀態變化使用 FHS 封包格式
16-12 基頻鏈路控制狀態 (一) 鏈路狀態變化 Inquiry 狀態 Inquiry Scan 狀態 Inquiry Response 狀態 Page Scan 狀態 Master Response 狀態 Slave Response 狀態
16-12 基頻鏈路控制狀態 (二) 狀態變化處理程序 Inquiry Procedure Page Procedure
16-13 鏈路管理協定 (一) 鏈路管理協定(Link Management Protocol, LMP) 堆疊
16-13 鏈路管理協定 (二) LMP 協定之功能 安全服務 (Security Service) 時序與同步 (Time/Synchronous) 站台能力 (Station Capability) 模式控制 (Mode Control)
16-14 L2CAP 協定 (一) 邏輯鏈路控制與調適協定 (Logical Link Control and Adaptation Protocol, L2CAP) RFCOMM (Radio Frequency Communication) TCS (Telephone Control Specification) SDP (Service Discovery Protocol) Voice
16-14 L2CAP 協定 (二) 多工與邏輯通道 (1) 邏輯通道識別碼 (Logical Channel Identifier, CID) 通道傳輸型態: 資料通道 (Data Channel) 訊號通道 (Signaling Channel)
16-14 L2CAP 協定 (三) 多工與邏輯通道 (2) CID 識別碼分類 道類別 本地 CID 識別碼 遠端 CID 識別碼 連接導向 動態指定 非連接資料 0x0002(固定) 訊號 0x0001(固定)
16-14 L2CAP 協定 (四) 多工與邏輯通道 (3) 邏輯通道連接範例
16-14 L2CAP 協定 (五) 多工與邏輯通道 (4) 訊號通道與資料通道
16-15 L2CAP 封包格式及介面 (一) L2CAP 封包格式 Connectionless PDU Connection-oriented PDU Signaling Command PDU
16-15 L2CAP 封包格式及介面 (二) L2CAP 封包分段與重組
16-15 L2CAP 封包格式及介面 (三) L2CAP 層次介面 Request Primitive Indication Primitive Confirm Primitive Response Primitiv