企業にIP電話を導入するというニュースが当たり前に聞かれるようになった。さらに最近では,無線LANを使って音声パケットをやりとりする「無線IP電話機」の導入を決めたという企業まで登場している。こうした電話機は,シスコシステムズや日立電線,沖電気工業などのメーカーが製品を販売している。

 しかし,ちょっと気になる。無線LANというスループットがあまり出ない環境でもIP電話は使えるものなのだろうか? そこで今回は,トラフィックの面から無線LANでIP電話を利用するケースを検証し,無線LAN環境でのIP電話利用について考えてみた。

そもそもIP電話のトラフィックはどれくらい?

 IP電話がどんなトラフィックを流しているのかがわからないと,無線LANでIP電話を利用できるかどうか検証できないだろう。そこでまずは,IP電話のトラフィックがどんなものなのか確認していく。

 IP電話では,デジタル化した音声データをIPパケットに格納してやりとりする。音声符号化方式には,音声を64kビット/秒のデータに変換するG.711(PCM方式)のほか,8kビット/秒に変えるG.729(CS-ASELP)などがある。ここから先は,G.711をベースに話を進める。

 IP電話では,できるだけ遅延を小さくしつつ,なおかつパケットのオーバーヘッドを大きくしないように,20ミリ秒分の音声データを一つのパケットにして送るようになっている。

 64kビット/秒のG.711では,20ミリ秒の音声データは1280ビット=160バイトになる。これに,RTP(real-time transport protocol),UDP(user datagram protocol),IPのヘッダーが合わせて40バイトある。つまり,音声を入れたIPパケットの長さは200バイトになる。

 IP電話機は,この200バイト長のIPパケットを20ミリ秒に1個ずつ作り出してLANに送り出していく。つまり,1秒間に50個のパケットを送出するわけだ。

IP電話がLAN上の帯域を使う割合

 この音声パケットがLAN上を流れていくとどの程度の伝送帯域を使うのだろうか。

 LANに送り出すとき,IP電話の音声パケットはLANのフレームに格納されることになる。イーサネットの場合,ヘッダーが14バイトとエラー・チェック用のFCSが4バイト付き,合計で218バイトの長さになる。さらに,フレームの直前に付くプリアンブルという信号が8バイト分あり,直前のフレームとの間隔(フレーム間ギャップ)は最小で12バイト分の時間を取る。つまり,一つの音声フレームを送り出す時間は,218+8+12で238バイト(1904ビット)分の時間になる。10メガ・イーサネットの場合,時間に換算して約0.19ミリ秒という長さである。

 このフレームを毎秒コンスタントに50個ずつ送り出すことで,片方向の通話が成り立つ。つまり,IP電話で片方向の通話分の音声データを送るのに使う時間は,0.19(ミリ秒)×50(個)で1秒間のうち9.5ミリ秒になる。10メガ・イーサネットのリピータ・ハブの環境だと,双方向の音声パケットが同じメディア上をやりとりされる。そのため,1通話が占有する時間は1秒間に19ミリ秒になる。スループットでいうと190kビット/秒だ。単純計算で,10メガ・イーサネットのリピータ・ハブ環境であれば,約52のIP電話チャネルが取れることになる。

IEEE802.11bではIP電話の通話チャネルがいくつ取れる?

 では,本題の無線LANではどうなるのだろうか? ほとんどの無線IP電話機は,無線LAN規格として伝送速度が11Mビット/秒のIEEE802.11bを採用している。そこで,802.11bでIP電話のトラフィックを送るとどれくらいの伝送帯域を使うのか見ていこう。