複数の無線LAN端末が同時に通信するとき,無線LANの実効速度はどのように変化するのか。そんなテーマで最近実験を行った。アクセス・ポイント1台,無線LAN端末1台での実験結果は,日経バイトをはじめとする多くのメディアが報告している。しかし,複数の無線LAN端末が同時に通信している環境での実測例はあまり見かけない。日経バイトの10月号でこの実測に取り組んだ。

 その実験結果をまとめながら気になったことがある。無線LANの表記速度と,理論的な実効速度の間の違いが大きすぎるということである。

 IEEE802.11a/11gに準拠した製品のパッケージには最大54Mビット/秒,802.11bのパッケージには最大11Mビット/秒と書いてある。ところが,TCP/IPによるデータ転送の実測値は,無線LAN端末が1台のときで11a/11gが最大22Mビット/秒程度,11bでは4Mビット/秒程度にしかならない。

 この結果は理論的にもうなずけるものだ。なぜなら,無線LANレベルの理論上の最大実効速度を計算すると,11a/11gが30Mビット/秒,11bが6Mビット/秒になるからだ。実測値を理論値と比べると30%程度の低下となるが,これはアプリケーションの処理やデータ転送プロトコル(TCP/IP)のオーバヘッドを考えれば妥当なものといえる。これほどまでに表示速度と実測値(あるいは理論値)の差が大きいと,表記速度を最大速度として伝えることにひっかかりを感じてしまう。
 
瞬間的には表記速度が出るが・・・

 無線LANにおいて,理論上の実効速度と表記速度が大きく異なるのは,表記速度がそもそも実効速度を表していないからだ。54Mビット/秒,11Mビット/秒というのは,「瞬間的にはこの速度で送っています」という表示でしかない。無線LANでは,必ずデータが流れない時間がある。この時間があるので,実効速度が表記速度以下になるのだ。
 もう少し詳しく説明しよう。無線LANでは,大きくデータ・フレームとACKフレームという二つのフレームのやり取りで通信する。データ・フレームには実際にやり取りするデータ(TCP/IPのパケットなど)が含まれる。ACKフレームはデータを正しく受け取ったことを相手に知らせるためのものである。データ転送の際は,送信側がデータ・フレームを送り,これを受け取った側がACKフレームを返して完了する。

 ただし,このフレームのやり取りは,間断なく行われているわけではない。必ず,一定の時間を空けてからフレームを送り出している。送信側は,ACKフレームを受信してDIFS(Distributed Coordination Function Interframe Space)と呼ばれる一定時間を待ち,さらに乱数発生器で生成したランダムな時間を待ってから,データ・フレームを送信する。受信側もデータ・フレームを受け取ってからSIFS(Short Interframe Space)と呼ばれる一定時間を空けてからACKフレームを送信する。

 DIFSやSIFS,ランダム待ち時間の値は,11b,11a,11gそれぞれの規格で定められている。これらを考慮して計算したのが,先ほどの示した実効速度の理論値である。しかも,この理論値は最大値だ。無線LAN機器間の距離が離れていたり,間に障害物があるなどして電波が弱い場合は,この理論値はさらに低くなる。11a/11gでは信号の減衰の度合いによって,54Mビット/秒から48M,36M,24M,12M,9M,6Mビット/秒と伝送速度を落としていく。11bの場合は11Mビット/秒から5.5Mビット/秒,2Mビット/秒,1Mビット/秒という具合になる。

情報の継続的な提供が必要

 実測値だけならまだしも,理論値との乖離(かいり)もこれだけあると,「最大54Mビット/秒のIEEE802.11g・・・」といった記事を書くのはどうかと思ったりもする。

 ただ,この表記は誤っていないし,無線LAN規格に明るい人なら違和感もないだろう。むしろ,「理論上の実効速度は最大30Mビット/秒」といった付加情報を入れた方が,多くの読み手に混乱を与えてしまうことになりかねない。結局,このような表記速度と実効速度の違いは,今回の記者の眼のような場面でお知らせするのが適切ではないかと考えた。

 表記上の最大速度とフィールドでの実効速度の違いはADSLでよく言われる問題であるが,筆者は無線LANにおける“ずれ”もかなり大きいように感じているのである。

(中道 理=日経バイト)