Bluetoothは1994年にスウェーデンのEricsson社によって開発された短距離無線通信規格で、2.4GHz帯、1MHz帯域幅のGFSK変調、79チャネルの周波数ホッピング拡散を用いています、というような解説はネット上のそこここに転がっていますが、そこから先の情報はあまり見かけません。Bluetoothでスマートフォンにヘッドセットやキーボードをつなげることは分かっていても、その中身がいったいどんな原理で動いているのかはあまり知られていないと思います。今回はBluetoothの中身について紹介したいと思います。

マスター・スレイブ通信

 BluetoothはWi-Fiのようなアクセス・ポイントを持ちません。Bluetoothの通信は「ピコネット(piconet)」という単位で行われ、ピコネットは1台の「マスタ」と、最大同時7台までの「スレーブ」によって構成されます。例えばスマートフォンにキーボードをつなげる場合、スマートフォンがマスタ、キーボードがスレーブとして動作しています。パソコン同士の通信であっても、必ずどちらか一方がマスタでもう一方がスレーブです。

 通信の主導権は常にマスタが持ち、マスタ→スレーブ方向のパケットは任意のタイミングで送ることができますが、スレーブ→マスタ方向のパケットは「スレーブ何番、送信せよ」という指令(POLL)がマスタから送られなければ送信することができません。この通信トポロジーはUSBにおける「ホスト」と「デバイス」に似ています。

 なお、Bluetoothにおいてはマスタとして動作しているノードが同時に他ピコネットのスレーブとして動作することも許しており、この動作を「スキャッターネット(Scatternet)」と呼んでいます。スキャッターネットは一見するとメッシュネットワークのように見えますが、接続状態の管理・制御機構もピコネット間のパケット伝達機構もないため、メッシュとしては動作しません注1)。あくまで「マスタ機能とスレーブ機能が同時に動く(例えばスマートフォンがマスタとしてヘッドセットに音楽データを流しながら、同時にパソコンに対してはスレーブとして接続してファイル同期を行う)」だけの機能です。

注1)研究レベルではスキャッターネットを用いたBluetoothメッシュが実装されたこともあるようですが、距離性能も速度性能もパッとしなかったようです。