さらし端末問題

読み:さらしたんまつもんだい / 英語表記:Exposed Terminal Problem

無線LANなどで、ほかの端末の送信を検知した端末が、実際には互いの受信を妨げず同時に通信できる場合にも不要な待機をしてしまう問題である。同じ周波数を離れた場所で同時に使う空間再利用が制限され、ネットワーク全体の通信効率が下がる。

イマシルちゃんの解説

無線LANでは、送る前に周りの電波を調べるキャリアセンスで通信の衝突を避けているんだ。
でも「自分の場所で電波が聞こえる」と「送り先で通信のじゃまになる」は同じではないよ。
近くの端末が別の相手と通信していても、それぞれの送り先ではデータを正しく受け取れる場合があるんだ。
それでも電波を検知したために送信を待ってしまう現象を「さらし端末問題」というよ。
本来は一緒に使えた時間を順番待ちに使うので、周りの端末が増えるほど通信が進みにくくなることがあるの。
電波が届く範囲だけでなく、どこで誰が受け取るかまで考えることが大切なんだね。

より深い解説

送信場所で分かることには限りがある

CSMA/CAを使う無線LANでは、送信を始める前に媒体が空いているかを調べる。この物理的な判定をCCA(Clear Channel Assessment)という。ほかの通信を検知して使用中と判定すれば、端末は送信を延期する。送信中に衝突を検出することが難しい無線で、衝突の可能性を減らすための動作である。

ただし、調べられるのは自分のアンテナに届いた信号である。送信先が受ける干渉の強さまで直接測っているわけではない。近くの送信が自分には聞こえても、自分の送信先では十分に弱い場合がある。そのとき慎重に待ち続けると、同時に成立したはずの通信を止めてしまう。Wangらの研究でも、媒体が使用中かどうかを中心に判断する方式では、送受信の組合せに応じた同時通信の機会を十分に使えないことが問題とされている。

四つの端末で考える

左からA、B、C、Dが並び、BがAへ送り、CがDへ送ろうとする状況を考える。データの向きはA←BとC→Dである。四つとも同じ周波数チャネルを使い、次の条件を満たすものとする。端末の並びだけで条件が決まるわけではなく、距離や遮蔽物などによる電波の減衰も前提に含める。

場所仮定する電波の状態意味
BとC互いの送信を検知できるCはBの通信中に送信を待つ
ABの信号を正しく受け取れ、Cからの干渉は十分弱いCが送ってもBからAへのデータを復号できる
DCの信号を正しく受け取れ、Bからの干渉は十分弱いBが送っていてもCからDへのデータを復号できる

この条件なら、データの受信だけを考えれば二つの通信を重ねられる。それでもCは近くのBを検知して待つ。CはBの送信にさらされているが、Cの送り先Dがその送信で受信不能になるとは限らない。この食い違いが問題の中心である。

実際の電波に「この円の内側だけに届く」という明確な境界はない。受信の成否は目的の信号と、干渉及び雑音との比であるSINRにも左右される。検知できる範囲と、別の受信を失敗させる範囲は同一ではない。上の例は、両方の受信先で必要な品質を満たすという条件付きの説明である。データの後に返す受信確認については、後述する逆方向の干渉も確認する必要がある。受信品質と同時送信の関係を扱う研究も、この区別を前提としている。

衝突を起こす問題との違い

送信端末どうしが互いを検知できないまま、共通の受信先などで信号が衝突するのが隠れ端末問題である。さらし端末では、逆に検知したために通信を控えすぎる。両者とも、送信端末が観測した状況と受信先の状況が一致しないことから生じる。

比較点相手の送信が見えない場合さらし端末の場合
送信前の判断空いているように見える使用中に見える
本来必要な動作干渉する通信を重ねない干渉しない通信は重ねられるとよい
主な損失受信失敗と送り直し過剰な待ち時間と送信機会の減少

したがって「通信が遅い」という結果だけでは区別できない。衝突を減らすために検知範囲を広げると待つ端末が増え、待ち時間を減らそうと検知条件を緩めると衝突が増える可能性がある。どちらか一方だけを最小化すればよいわけではない。

事前の送受信調整で解決しきれない理由

送信要求のRTS(Request to Send)と受信側の許可応答CTS(Clear to Send)を交換する方式は、データを送る前に周辺の端末へ通信予定を知らせる。受信したフレームのDuration情報から媒体を使う予定時間を管理するのが、仮想キャリアセンスに使うNAV(Network Allocation Vector)である。

この仕組みは受信側の応答を聞ける端末にも待つよう知らせるため、送信端末どうしが互いを検知できない場合の衝突を抑える。しかし、Bの送信要求を受け取ったCも予約された時間を待つことがある。データだけなら並行して送れる配置でも、事前調整を追加しただけで必ず送信可能になるわけではない。

「送信要求は聞こえたが許可応答は聞こえなかったので、自分は送ってよい」とも一律には判断できない。応答を聞き逃した理由には電波の減衰や受信誤りもある。また、送信要求を出したB自身が、その後の応答を受信する時間を守る必要がある。Matobaらの研究は、この待機の一部が過剰になることと、受信すべき制御フレームの保護が必要なことを分けて扱っている。研究上の拡張方式の効果を、そのまま通常の無線LANの動作として説明してはならない。

データの逆方向にも電波が流れる

通常のユニキャスト通信では、データを受け取ったことを知らせるACKフレームが返る。これは無線区間のフレームに対する応答であり、TCPの確認応答とは別である。A←Bのデータが終わるとA→Bの向きに応答が返り、C→Dの後はD→Cになる。

先ほどの配置ではBとCが互いを検知できる。Cのデータ送信が続いている間にAからBへ応答が返ると、Cの電波がBの受信を妨げる可能性がある。逆にBの送信中にDからCへ応答が返れば、C側で受信に失敗する可能性がある。データの受信先AとDが安全という条件だけでは、この問題を除けない。

受信確認のフレームを受け取れなければ、元のデータが届いていても送信側は再送を行うことがある。そのため同時通信を増やす設計では、データの宛先だけでなく、制御フレームを含む一連の交換の方向と時間を確認する必要がある。両方のデータが同時に終わるなどの都合のよい条件を、一般的な端末配置の説明へ暗黙に持ち込まない。前述の制御フレームを扱う研究では、まさにこの受信時間を守ることが課題となっている。

設置と無線設定で考える対策

複数の通信が同一チャネルを共有する限り、互いの電波を考慮する必要がある。APの配置や周波数の割当てを見直し、近くの通信を重複しない周波数へ分けられれば、同じ媒体を奪い合う範囲を減らせる。ただし、利用できる周波数の数や端末の対応範囲には限度がある。

送信電力を下げる方法にも利点と代償がある。不必要に遠くまで届く電波を減らせる一方で、本来の相手にも届きにくくなる。APだけ出力を上げても小型端末からの上りが届くとは限らないため、双方向の通信品質を見る必要がある。

媒体を使用中と判定するしきい値の変更も同様である。弱い他局の信号を無視しやすくすると送信の機会は増えるが、受信先への干渉までなくなるわけではない。閾値や出力の変更で何が改善するかは、通信相手の位置や壁の影響に依存する。機器でサポートされた機能と設定範囲の中で、変更前後の結果を比較する設計が必要である。

新しい無線LANでの同時通信の増やし方

IEEE 802.11axでは、BSSカラーリングによって自分の無線LANの通信と別の無線LANの通信を識別しやすくしている。BSSは一つのAPとそれに所属する端末などからなる通信単位である。同じ周波数上に重なった別のBSSをOBSSと呼ぶ。

その識別を用い、別のBSSから届く信号に対して受信強度のしきい値を適用する方式がOBSS-PDである。一定条件の弱い信号なら、その通信中にも自分の送信を進める機会を得られる。単に色が違えば常に送れるという意味ではなく、しきい値や出力の制約などを合わせて扱う。Ciscoの機能説明でも、別BSSの信号を識別して待機の判断を変える仕組みと、対応機器の制限が説明されている。

これは同じ周波数で並行して成立する通信を増やすという点で、さらし端末の課題と関係する。ただし、すべての配置や同じBSS内の問題まで解消する機能ではない。Wi-Fi 6対応という表記だけで利用できる機能や効果を決めず、APと端末の実装、機能の有効化状態、周囲の電波環境を確認する必要がある。

遅さを調べるときの観点

調査では、接続時に表示されるリンク速度だけでなく、媒体が使用中だった時間や送信待ちの時間を見る。リンク速度は送信できたときの速さを示していても、いつ送信できるかまでは表していない。周囲の通信が増えると待ち時間が長くなるという観測は、競合を疑う手掛かりとなる。

同時に再送率や受信強度も比較する。待ち時間が長いだけなのか、受信に失敗して送り直しているのかで調べる対象が変わる。ただし、再送が少ないことだけでさらし端末と断定はできない。正しく通信を保護するための待機もあるからである。

送信側だけの観測で判断せず、相手側の受信状況と通信の組合せを確認する。片方の通信を止めた場合との比較、APや端末を移動した場合の変化などを合わせ、同時送信しても各受信先で必要な品質が得られるかを評価する。そのうえで配置、周波数の割当て、機器が提供する同時通信の制御を選ぶのである。

↑