無線LANには、EthernetによるLANと同様に、通信の衝突を避ける仕組みがある。しかし当たり前のことだが、無線LANはEthernetとは異なり物理的なケーブルで接続されていない。そのため、無線LANには通信を確立するために、独自のアクセス技術が多く存在している。
無線の通信路とは
電波は目に見えないが、情報を伝える媒体という観点からはケーブルと同じと考えられる。ケーブルは何本でも設置できるため、通信相手ごとにケーブルを用意して、他の通信相手とは独立した伝送路を確保して情報を送受信できる。
一方無線では、個々のケーブルに相当するものが「チャネル」である。残念ながら電波は有限の資源であり、無線LANに限らず特定の用途に使える周波数帯は限られている。無線LANの2.4GHz帯のIEEE802.11b/gでは13チャネル、5GHz帯のIEEE802.11a (W52/W53)では8チャネルと決まっている。つまり、11aの場合8本しかケーブルが引けないのと同じである。よって、8台以上で通信する場合は、複数の端末が同じチャネルを共有する必要がある。
実は、これは初期のEthernetが行なっていたのと同じ方法である。いまではもうほとんど見かけないが、10BASE2や10BASE5がそれで、一本のケーブルを物理的に分岐させて複数の端末を接続していた。この方法ではある端末が送信している間、他の端末は送信できない。
ケーブルの場合、2本のケーブルを並べて配線してもお互いに混信したり雑音が入る可能性は考えなくてよい。ケーブルの規格がそのような仕様になっているからだ。一方無線LANの場合、チャネルが分かれていても電波が完全に分離しているわけではない。隣接しているチャネルでは電波が近隣のチャネルへ漏れて干渉が生じる。
これが顕著なのが2.4GHz帯(11b/g)である。13チャネルあるのだが、各チャネルの中心周波数は5MHzしか離れていないため十分に干渉を避けるためには、最低でも25MHz、すなわち5チャネルぶん離して使うように推奨されている。したがって、1、6、11のチャネルを使うといった運用ルールが必要になり、実際に使えるチャネルの数はかなり少ないものとなる(図1)。
5GHz(11a)の場合は、各チャネルの中心周波数の間隔が20MHzになるよう規格が制定されているため、2.4GHzのようにチャネルを離す必要はないとされている。しかし、隣接したチャネルの送信元の出力が強い場合や物理的に近くにある場合、干渉してスループットを下げてしまう場合もある。できるだけチャネルは離して割り当てるに越したことはないようだ。
なお、11aは2007年に11のチャネル(W56)が追加され、さらに屋外での使用も可能になっている(図2)。
衝突を回避する仕組み
無線LANのチャネルでは、お互いに送信を待ち合わせないとパケットが衝突して効率的な通信が成り立たない。この送信を待ち合わせる仕組みが「CSMA(Carrier Sense Multiple Access)」と呼ばれるもので、初期のEthernetで使われていたものが「CSMA/CD」、無線LANで使われているものが「CSMA/CA」である。
CSMA/CDとCSMA/CAの違いを見てみよう。Ethernetでは、送信する前にケーブルの電圧を監視することで衝突を検地する。電圧が送信信号の電圧以上に上昇すれば、他端末の送信が被さっていると判断でき(衝突)、即時に送信を中断できる。これが「CD(Collision Detect、衝突検知)」と呼ばれる理由である。
しかし無線の場合、電波の強度を監視しても衝突はわからない。電波は距離によって大きく減衰するため、衝突を引き起こす相手が遠くにいるとその電波を検知できない可能性があるのだ。また、送信と受信を同時に行なえる無線ユニットもあるが、高価なものになってしまう。そこで送信前に必ず、「待ち時間(DIFS、Distributedaccess Inter Frame Space)」を設け、ほかに送信信号がないことを確認してから送信する。このことから「CA(Collision Avoidance、衝突回避)」の名称となった。送信後は必ず「ACK(ACKnowledgement、到着確認応答)」を待ち、ACKが戻らない場合は衝突などが起きたと判断して再送信を行なう。ただし、これらの待ち時間は無視できないオーバーヘッドであり、無線LANの実行速度が仕様の半分程度に留まる原因になっている。
これ以外にも、無線LAN固有のアクセス制御の仕組みがある。たとえば、隠れ端末対策のために考案された「RTS/CTS(Request to Send/Clear to Send)」である。隠れ端末とは、自分からは電波圏外だが、通信相手の電波圏内にいる端末のことである。その存在を直接知ることはできないが、干渉を引き起こす(図3)。
電波の到達距離を10mと仮定しよう。無線端末Aの通信相手B(アクセスポイント)が10m先におり、さらにその10m先に別の無線端末Cがいるとする。このとき、CはAの隠れ端末になる。Cの電波はAまで届かないため、Aがほかの端末が信号を送出しているか調べても(キャリアセンス)わからない。そこでCがBに送信中であってもAもBに送信してしまうことが起きる。これはBで衝突を引き起こし、スループットを下げる要因になる。
RTS/CTSとは、すべての無線機器は送信前に「RTS(送信要求)」のパケットを出し、受信側も受信可能であれば「CTS(受信可能)」で応答する仕組みである。前述の例では、CはBにまずRTSを送信する(これはAには届かない)。BはCに対してCTSで受信可能なことを知らせる。CTSはAにも届くため、Aは通信が行なわれることを察知し、送信を延期する。RTS/CTSのパケットには、チャネルの占有予定期間が書かれており、その間通信を保留する。この期間を「NAV(Network Allocation Vector、送信禁止期間)」と呼ぶ(図4)。
ACKやCTS、データフレームの送信前にもキャリアセンスの待ち時間があるが、これは「SIFS(Short Inter Frame Space)」と呼ばれ、DIFSよりも短く待ち時間としては一番短い。待ち時間が短いフレームほど、他のフレームより先に送信開始できる可能性が高く、高い優先度で送信される。ACKはデータフレームと、CTSはRTSと、CTSに続くデータフレームはCTSと一体になった送信であり、他のフレームに割り込まれては困るためである。DIFSやSIFSの時間は、11aや11gなどの規格ごとに異なるが、同じ規格内であればデータ送信速度に依存せず、つねに同じである。
なお、待ち時間が短いほど高優先度で送信できるという考え方は11eで策定された「QoS (EDCA、EnhancedDistributed Channel Access)」にも使われている。
(次ページ、「無線接続の種類」に続く)

この連載の記事
-
第9回
ネットワーク
MAC層から改良したIEEE802.11nの仕組み -
第8回
ネットワーク
高速無線LAN「IEEE802.11n」を支える新技術とは? -
第7回
ネットワーク
無線LANの安全を補う認証技術を知ろう -
第6回
ネットワーク
無線LANのセキュリティは暗号化から -
第4回
ネットワーク
ノイズに対抗する無線LANのスペクトラム拡散とは? -
第3回
ネットワーク
きっちり知りたい無線LANの変調技術の基礎 -
第2回
ネットワーク
数ある無線LAN規格を総ざらいしよう -
第1回
ネットワーク
無線LAN規格「IEEE802.11」について知ろう -
ネットワーク
無線LANのすべて<目次> - この連載の一覧へ