概要

IEEE802.11 無線LAN(Wi-Fi)のアクセス制御方式は、CSMA/CAです。Collision Avoidance、すなわち、コリジョンを回避するための最も基本的な仕組みとなるキャリアセンスについて解説します。

CSMA/CAのキャリアセンスは2種類

CSMA/CAで、コリジョンを回避するための仕組みとして、電波が利用可能かどうかをチェックするキャリアセンスが一番の基本です。キャリアセンスとして、次の2種類あります。

  • 物理キャリアセンス
  • バーチャルキャリアセンス

物理キャリアセンス

物理キャリアセンスとは、実際にチャネルの電波を聴いて他のステーションがチャネルの電波を利用しているか確認することです。物理キャリアセンスを行うことで、各ステーションは、自身が受信するべきフレームであるかも判断しています。

物理キャリアセンスでは、電波が利用中であることを評価するためにCCA(Clear Channel Assessment)を行います。CCAにおいて、SD(Signal Detect)しきい値とED(Energy Detect)しきい値があります。SDしきい値は、802.11フレームのプリアンブルを検出するためです。SDは4dBのS/N比です。EDしきい値は、802.11以外の電波を検出するためです。EDしきい値は、SDしきい値 + 20dBです。

SD = 4dB SNR
ED = SD + 20dB

実際に電波を聴くことから、物理キャリアセンスは物理層レベル(レイヤ1)のキャリアセンスです。

バーチャルキャリアセンス

バーチャルキャリアセンスは、データの送信を完了させるために電波を占有することを他のステーションへ通知する仕組みです。

Wi-Fiのデータ(ユニキャスト)はかならずACKで確認することを思い出しましょう。ACKの受信まででデータの送信は完了します。その間、他のステーションに割り込ませてはいけません。そこで、データを送信するときに、ACKの受信までに要する時間(マイクロ秒)を802.11ヘッダのDuration/IDフィールドに指定します。

図 Duration
図 Duration

データを送信していない他のステーションは、Duration/IDフィールドの値をNAV(Network Allocation Vector)タイマにセットしてカウントダウンします。そして、NAVがゼロになるまで電波は利用中と認識します。

以下は、バーチャルキャリアセンスの簡単な例です。Wi-Fiステーション1がアクセスポイントステーションにデータを送信しています。このデータの802.11ヘッダのDurationに50マイクロ秒と指定している例です。つまり、「このデータのACKの受信完了まで50マイクロ秒かかるので、その間は邪魔しないで」ということを通知しています。

Wi-Fiステーション1から送信したデータは、同じアクセスポイントにアソシエーションしている他のクライアントステーションも聴いています。Durationフィールドの値をNAVタイマにセットして、NAVタイマが0になるまで電波は利用中とみなすことになります。

図 バーチャルキャリアセンス
図 バーチャルキャリアセンス

物理キャリアセンスだけでも、ほとんどの場合、データを送信してそのACKを受信するまで他のステーションは電波を利用中であると認識できます。でも、電波状況が変わってしまうなど物理キャリアセンスだけでは電波の利用を認識できない可能性があります。そこで、物理キャリアセンスに加えてバーチャルキャリアセンスを組み合わせることで、より確実に電波が利用中でビジー状態であることがわかるようにします。

802.11フレームヘッダのDuration/IDを読み取ることから、バーチャルキャリアセンスはレイヤ2でのキャリアセンスです。