VoIP帯域幅計算ツールとは?
VoIP帯域幅計算ツールは、IP電話(Voice over IP)の通話がどれだけのネットワーク帯域を消費するかを試算するツールです。音声コーデックのビットレート、パケット化間隔(パケットを送出する頻度)、そしてEthernet・IP・UDP・RTPの各層が付加するパケットごとのヘッダーオーバーヘッドを考慮します。計算結果から、通話1本あたりと多数の同時通話に必要な帯域幅がわかるため、インターネット回線やSIPトランクの容量設計に欠かせません。
使い方
まずコーデックのビットレートを選びます(例:G.711=64kbps、G.729=8kbps、G.722=64kbps)。次にパケット化間隔をミリ秒で設定します(標準は20msで、1秒あたり50パケットになります)。続いてパケットごとのヘッダーオーバーヘッドを指定します。一般的なEthernet+IP+UDP+RTPの構成では約58バイトが追加されます。最後に同時通話数を入力すると、通話1本あたりのキロビット毎秒(kbps)と、全同時通話の合計値が表示されます。
計算式の解説
1秒あたりのパケット数 = 1000 ÷ パケット化間隔(ms)。各パケットが運ぶコーデックのペイロードは、コーデックビットレート ÷ パケット数(pps)で求まります。これにヘッダー(ビット単位)を加え、再びppsを掛けると通話1本あたりの帯域幅が得られます。
$$\text{通話1本あたりの帯域幅(kbps)} = \left( \frac{\text{コーデックビットレート}_{bps}}{\text{pps}} + \text{オーバーヘッド}_{bytes} \times 8 \right) \times \frac{\text{pps}}{1000}$$
これは結局、コーデックビットレートに毎秒のオーバーヘッドビットを足したものに等しくなります。合計帯域幅は、単純に「通話1本あたりの帯域幅 × 同時通話数」で算出できます。
$$\text{Total} = \left( C + \frac{O \times 8 \times \frac{1000}{I}}{1000} \right) \times \text{Calls} \;\text{kbps}$$ $$\text{where}\quad \left\{ \begin{aligned} C &= \text{Codec (kbps)} \\ O &= \text{Overhead (bytes)} \\ I &= \text{Interval (ms)} \end{aligned} \right.$$
計算例
G.711(64kbps)、パケット化間隔20ms(50pps)、オーバーヘッド58バイト、10通話の場合:パケットごとのオーバーヘッド \( = 58 \times 8 = 464 \) ビット、\( \times 50\,\text{pps} = 23{,}200\,\text{bps} = 23.2\,\text{kbps} \)。通話1本あたり \( = 64 + 23.2 = 87.2\,\text{kbps} \)。同時通話10本では872kbpsとなります。
よくある質問
なぜ実際の帯域はコーデックのレートより大きくなるの? 小さな音声パケット1つ1つに大きなネットワークヘッダーが付くためです。1秒あたり50パケットも送ると、このオーバーヘッドが積み重なって無視できない大きさになります。
VoIPの帯域を減らせますか? 低ビットレートのコーデック(G.729)を使う、パケット化間隔を大きくする(パケット数を減らして1つを大きくする)、またはRTPヘッダー圧縮を利用するといった方法があります。
無音抑制(サイレンス・サプレッション)は含まれていますか? いいえ。本計算は通話が途切れず続く最悪ケースの試算です。音声検出(VAD)を使えば、使用量をおおよそ半分まで削減できます。