アクセス制御:CSMA/CAのしくみ
1つの電波の道を、たくさんの機器が同時に使えば「衝突」が起きます。無線LANはこれをどう防いでいるのでしょうか。有線LANの方式と比べると、無線ならではの工夫が見えてきます。
有線LANの方式:CSMA/CD
有線のイーサネットでは、CSMA/CDという方式が使われてきました。仕組みはこうです。
- CSMA(キャリアセンス多元接続)…送信前に通信路が空いているか確認し、使われていない時だけデータを送る。
- CD(衝突検出)…もし送信中に衝突が起きたらそれを検出し、ランダムな時間だけ待ってから再送信する。
有線では自分の送信と他者の送信が重なったことを「検出」できるため、この方式が成立します。
無線LANの方式:CSMA/CA
ところが無線では、事情が違います。電波は放射状に広がり、場所によって受信強度が大きく変わるため、「衝突が起きたこと」をその場で検出するのが難しいのです。そこで無線LANは、衝突を検出するのではなくあらかじめ避ける方式――CSMA/CA(衝突回避)を採用します。
- 通信路が空いていることを確認する(ここは有線と同じ)。
- すぐには送らず、さらに一定時間の待機とランダムな待ち時間を置いてから送信する。
- これにより、複数の機器が同時に送信に踏み切る確率を下げ、衝突を未然に防ぐ。
💡 ワンポイント
「検出(Detection)」ではなく「回避(Avoidance)」——この一字の違いが、有線と無線の設計思想の差を表しています。ぶつかってから対処できないので、ぶつからないように譲り合うわけです。
隠れ端末問題とRTS/CTS
無線ならではの難問が「隠れ端末問題」です。AとCがそれぞれ中央のBとは通信できても、AとCはお互いの電波が届かず、相手が送信中だと気づけない。すると両者が同時にBへ送り、Bのところで衝突してしまいます。
これを緩和するのがRTS/CTSという仕組みです。送信前に「送っていい?(RTS)」と問い合わせ、APが「どうぞ(CTS)」と全体に知らせることで、周囲の端末に「今は待つべき」と伝えます。混雑した環境での衝突を減らす仕掛けです。
まとめ
- 有線は衝突を検出するCSMA/CD、無線は衝突を回避するCSMA/CA。
- 無線は衝突を検出しにくいため、待機と譲り合いで事前に避ける設計。
- 隠れ端末問題への対策としてRTS/CTSがある。