音声 : H.323

ISDN での VoIP の設計と導入

2016 年 6 月 18 日 - 機械翻訳について
その他のバージョン: PDFpdf | 英語版 (2015 年 12 月 19 日) | フィードバック


目次


概要

Integrated Service Digital Network(ISDN)を経由する Voice over IP(VoIP)は、特に IP テレフォニーを使用する企業ネットワークにおいて、望ましい組み合わせである場合があります。 VoIP に必要な Quality of Service(QoS)を提供するために必要な機能(低遅延キューイング(LLQ)、クラスベース重み付け均等化キューイング(CBWFQ)、および Link Fragmentation and Interleaving(LFI))は、ISDN と組み合わせに対してサポートされています。 ただし、考慮する必要のある重要な設計上の考慮事項があります。 このドキュメントでは、これらの VoIP 関連の QoS 機能を ISDN で使用する場合の注意事項および制約事項について解説し、テスト済みの設定例をいくつか紹介します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

  • ISDN

  • ポイントツーポイント プロトコル(PPP)

  • マルチリンク PPP(MLPPP)

  • LFI

  • LLQ

  • CBWFQ:

  • 圧縮リアルタイム プロトコル(cRTP)

このドキュメントでは、次のテーマの技術トレーニングを提供しませんが、この技術が VoIP ネットワークでどのように連携して動作するかを説明します。 これらのサブジェクトに関する詳細については「関連情報」セクションを参照して下さい。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

  • Cisco IOS(R) ソフトウェア リリース 12.2

  • Cisco IOS ソフトウェア リリース 12.2(2)T から 12.2(10)T

  • Cisco IOS ソフトウェア リリース 12.2(12)T 以降

次のデザインは、このドキュメントで説明し、記載されている Cisco IOS ソフトウェア リリースでテストされています。

テストは、次の機器を使用して実行されました。 これらのルータは、ISDN 経由で直接接続されています。 Pagent が RTP トラフィックをシミュレートし接続をオーバーサブスクライブするために使用されました。

  • PRI インターフェイスを搭載した Cisco 7200 ルータ

  • BRI インターフェイスを搭載した Cisco 2600 ルータ

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

設計上の問題

ISDN ネットワークでの VoIP を設計する場合は、特別な考慮を必要とする 3 つの問題があります。 これらは次の表で簡単に説明し、あとで詳細に説明します。

問題 説明
可変帯域幅 B チャネルは追加または切断されるので、ISDN のリンク帯域幅は変化します。
LFI が原因のパケット リオーダー RTP パケットがインターリーブされる場合に、複数の B チャネルを介して転送された際に順序から外れて到着することがあります。
Cisco CallManager コール アドミッション制御(CAC)制限 Cisco CallManager のロケーション ベースの CAC は現在対応されているトポロジではありません。

可変帯域幅

ISDN では、B チャネルが帯域幅の要求に応じて追加または切断されます。 リンクの帯域幅が長期にわたって変化するという事実はは、Cisco IOS の CBWFQ および LLQ キューイング メカニズムにとっては特別な課題となります。 Cisco IOS ソフトウェア リリース 12.2(2)T まで、LLQ または CBWFQ を実装するポリシーマップでは固定の帯域幅しか割り当てられませんでした。 デフォルトでは、割り当てられた帯域幅は、使用できる帯域幅の 75% しか使用できません。 ISDN のインターフェイスでは、CBWFQ および LLQ が 1.544 または 2.408 Mbps の帯域幅を提供できる能力があっても、これらのインターフェイスではたった 64 Kbps が使用できるみなされます。 したがって、64 Kbps の 75% だけ、つまり 48 Kbps が、この ISDN インターフェイス上のポリシーマップによって割り当てることができます。 これは伝送する VoIP のコール数を制限します。 より多くの帯域幅が割り当てられると、ポリシーマップが ISDN のインターフェイスに適用されている場合にはエラー メッセージが生成されます。

次のポリシーマップの使用を例として検討します。

policy-map コマンド
policy-map isdn-qos
  class VoIP-RTP
  priority 64
  class VoIP-Sig
  bandwidth 10

これが BRI インターフェイスに適用されると、1 つの B チャネルの 75%(48 Kbps)以上が予約されるため、policy-map コマンドは拒否されます。

service-policy output コマンド

!--- Note the highlighted error message when the policy 
!--- is applied to the dialer interface
.

router(config)# interface dialer 0
  router(config-if)# service-policy output isdn-qos
  I/f Dialer0 class VoIP-RTP requested bandwidth 64 (kbps) Available only 47 (kbps)

この問題の解決方法は、Cisco IOS ソフトウェア リリース 12.2(2)T で導入されました。 このリリースでは、絶対値の帯域幅の代わりに使用できる帯域幅のパーセンテージで予約することができます。 合計が 128 Kbps の 2 本の B チャネルと 8 Kbps の 1 本の D チャネルのある BRI のインターフェイスで RTP 用に 64 Kbps およびシグナリング用に 8 kbps を予約するには、次のサービス ポリシーを使用します。

policy-map コマンド
policy-map isdn-qos
  class VoIP-RTP
  priority percent 50
  class VoIP-SIG
  bandwidth 8

その結果、最初の B チャネルが立ち上がると RTP 用の 32 kbps が、2 番目のチャネルが立ち上がると 64 kbps が使用可能になります。 また、Cisco IOS ではオーバーサブスクリプションが発生できないため、オーバーサブスクリプションが理由でインターフェイスからサービス ポリシーを削除することはありません。

LFI が原因のパケット リオーダー

ISDN での VoIP を実行すると、MLPPP が LFI に使用されます。 LFI では、大きなデータ パケットが小さいフラグメントに分割され、バンドル内の B チャネルすべてにわたって並列で転送します。 同時に、音声パケットはフラグメントの間にインターリーブされ、遅延が削減されます。 インターリーブされたパケットは MLPPP カプセル化の対象とならず、通常の PPP パケットとしてカプセル化されます。 したがって、これらのパケットには MLPPP のシーケンス番号がなく、順序に関係なく到着するのでリオーダーすることができません。 リオーダーの可能性は現実的です。 バンドル内のさまざまなリンクのキューの深さは異なる場合があり、これが結果としてキューイング遅延の違いとなる RTP パケット同士の追い越しの原因になります。 また、異なる B チャネルで ISDN のネットワークを介して異なるパスを使用でき、異なる伝搬遅延で終了します。

通常、パケットのリオーダーは、RTP パケットの問題ではありません。 受信 VoIP デバイスのデジッタ バッファは RTP シーケンス番号に基づいてパケットをリオーダーします。 ただし、cRTP を使用している場合はリオーダーすると問題になります。 cRTP のアルゴリズムでは RTP パケットが同じ順序で圧縮され、そして圧縮解除されると想定されています。 リオーダーが行われた場合、圧縮解除は正しく行われません。 MLPPP のバンドルに複数の B チャネルがある場合、cRTP を使用することは現時点では安全ではありません。 同じ制限が ATM での MLPPP またはフレーム リレーに適用されます。 この場合、バンドルに複数の仮想回線(VC)がある場合は cRTP は使用できません。

リオーダー問題の解決方法は複数クラスのマルチリンク PPP (MCMP)で提供されます。 MCMP はインターリーブされたパケットにシーケンス番号の小さいヘッダーを追加します。 これにより、cRTP の圧縮解除が行われる前に、インターリーブされたパケットがバンドルの遠端でリオーダーされることができます。 Cisco IOS ソフトウェア リリース 12.2(12)T では MCMP がサポートされる予定です。 詳細については、RFC 2686 および Cisco Bug ID CSCdv46666登録ユーザ専用)を参照してください。

Cisco CallManager CAC 制限

ブランチ ネットワークを持つ企業のお客様は、データ バックアップに ISDN を使用することがよくあります。 IP テレフォニーが導入されると、データと同様に音声にも ISDN バックアップのリンクを使用することを好みます。 この設定は可能ですが、いくつかの警告が発生します。

ブランチ ネットワーク内の IP テレフォニーでは、一元化されたコール プロセス モデルに基づいており、WAN 全体のコール数を制限するためにロケーション ベースの CAC を使用します。 ロケーション ベースの CAC ではネットワークのトポロジ変更を追跡する機能は現在ありません。 Cisco CallManager は、プライマリ リンクがダウンして ISDN バックアップをアクティブ化した場合にこれを認識していません。 したがって、ISDN バックアップのリンクでメインのリンクと同じ数の VoIP コールをサポートすることが重要になります。 それ以外の場合、CAC はバックアップ リンクをオーバーサブスクライブできます。

プライマリ リンクとバックアップ リンクの実際の帯域幅は同じである必要はありません。 このリンクでは、同じ数の VoIP コールを転送できることだけが必要です。 たとえば、バックアップ リンクは、プライマリ リンクで cRTP を使用できない間バックアップ リンクでこれを使用できます。 この場合、プライマリ リンクと数と同数のコールを伝送するために低い帯域幅がバックアップ リンクで必要です。

設計オプション

使用している Cisco IOS ソフトウェア リリースに応じてネットワーク設計者が使用できる各種の幅広い設計オプションがあります。 オプションは次の通りです。

次の各オプションと設定例を説明します。

cRTP を使用または使用しない単一の B チャネルの音声およびデータの共存

Cisco IOS ソフトウェア リリース 12.2 では、ポリシーマップの帯域幅は、リンク帯域幅の 75% のデフォルト値まで固定数としてのみ指定できます。 また、BRI または PRI インターフェイスで使用される B チャネルの数に関係なく ISDN で提供される帯域幅は常に 64 Kbps とみなされます。 したがって、ISDN のポリシーマップで予約できるデフォルトの最大帯域幅は 48 Kbps です。

これらの制限は、RTP パケットの転送に 1 つの B チャネルを使用することが意識されているだけであることを意味します。 要件に基づいて、同じ B チャネルでデータと音声を伝送することを選択できます。 また、BRI の第 2 の B チャネルをデータ専用に使用できます。 これら両方のデザイン オプションでは、すべての RTP パケットが単一の B チャネルを移動し、誤った順序で到着することができないため、cRTP を使用することは安全です。

このデザイン オプションではすべての音声およびデータ トラフィックを単一の B チャネルで送信します。 音声とデータは同じリンクで競合するため、LFI、LLQ、および CBWFQ が必要です。 また、RTP パケットがリオーダーされる機会がないので cRTP を安全に使用できます。

デフォルトでは、サービス ポリシーは RTP および VoIP シグナリングに対して 48 Kbps (64 Kbps の 75%)より多くは予約できません。 VoIP シグナリング クラスに割り当てることができる最小の量は 8 Kbps です。 RTP によって使用できる残りの 40 Kbps を使用して、単一の BRI を通じて転送できる最大コール数を示すテーブルを生成できます。

サンプル サイズ(バイト) PPS cRTP パケット長(バイト) 帯域幅(Kbps) BRI ごとのコール数
20 50 なし 66 26.4 1
20 50 28 11.2 3
30 33 なし 76 20.1 1
30 33 38 10.0 3
40 25 なし 86 17.2 2
40 25 48 9.6 4

この出力は、同じ B チャネルでの音声とデータの設定例を示しています。

cRTP を使用する単一の B チャネルの音声とデータの設定

!--- This section shows only relevant parts of the configuration.


class-map match-all VoIP-RTP
 match ip dscp ef
 
!--- RTP packets.

class-map match-all VoIP-SIG
 match ip dscp af31
 
!--- VoIP signaling packets.


policy-map voice-and-data
 class VoIP-RTP
  priority 40
 
!--- 40 Kbps available for voice.

 class VoIP-SIG
  bandwidth 8
  
!--- 8 Kbps is the minimum value allowed by Cisco IOS.


interface BRI0/0
 encapsulation ppp
 dialer pool-member 1
 ppp authentication chap

interface Dialer1
 encapsulation ppp
 bandwidth 64
 
!--- Increase the bandwidth from 56 to 64 Kbps
. 
 dialer pool 1
 dialer remote-name routerB-dialer1
 dialer-group 1
 dialer string 12345678
 service-policy output voice-and-data
 
!--- The service policy.

 ppp authentication chap
 ppp chap hostname routerA-dialer1
 ppp chap password cisco
 ppp multilink
 ppp multilink fragment-delay 10
 
!--- THe LFI delay equals 10 msec.

 ppp multilink interleave
 
!--- Enable LFI.

 ip rtp header-compression
 
!--- RTP header compression is OK.

cRTP を使用または使用しない分離 B チャネルの音声およびデータ

この設計は、Cisco IOS ソフトウェア リリース 12.2 を使用しても可能です。 ただし、使用可能な ISDN の B チャネルをより効果的に使用するには、音声とデータを分離しています。 選択した例では、RTP パケットが単一の B チャネルを使用する基本レート設定に適しており、データおよび音声のシグナリングが 2 番目の B チャネルを使用します。 同様の概念が、より多くのチャネルがデータ用に使用できるプライマリ レート設定に適用されます。

RTP パケットがどのデータとも競合しないため、音声チャネルの LFI および LLQ は必要ありません。 ただし、いずれにしろ有効にすることをお勧めします。 Cisco Discovery Protocol(CDP)およびルーティング アップデートが誤って有効になる場合があります。そうでない場合、サービス拒否(DoS)攻撃が音声チャネルをフラッディングすることができます。 D チャネルで、LFI は必要ではありません。 しかし、一般的なデータから VoIP シグナリングを保護するために CBWFQ が必要です。 音声チャネルのルーティング アップデートは、このインターフェイスを通ってルートするトラフィックを避けるために抑制する必要があります。 代わりに、RTP パケットを強制的に音声チャネルに通すルートに基づくポリシーを使用します。 RTP パケットがリオーダーされる機会がないので cRTP を安全に使用できます。

デフォルトでは、サービス ポリシーは RTP および VoIP シグナリングに対して 48 Kbps (64 Kbps の 75%)より多くは予約できません。 ただし、音声チャネルに他のトラフィックがないため、この設計では 90% までパーセンテージを増やしても安全です。 この最大値への増加は max-reserved-bandwidth コマンドで指定できます。

RTP の 57 Kbps に基づいて、単一の BRI で転送できる最大コール数を示すテーブルを生成できます。

サンプル サイズ(バイト) PPS cRTP パケット長(バイト) 帯域幅(Kbps) BRI ごとのコール数
20 50 なし 66 26.4 2
20 50 28 11.2 5
30 33 なし 76 20.1 2
30 33 38 10.0 5
40 25 なし 86 17.2 3
40 25 48 9.6 5

この表は、分離した B チャネルでの音声とデータの設定例を示しています。

cRTP を使用する分離 B チャネルの音声およびデータの設定

!--- This section shows only relevant parts of the configuration.



Class-map match-all VoIP-RTP
 match ip dscp ef
class-map match-all VoIP-SIG
 match ip dscp af31 

policy-map voice-only
 class VoIP-RTP
  priority 57

policy-map data-and-signaling
 class VoIP-SIG
  bandwidth 8

interface BRI0/0
 encapsulation ppp
 dialer pool-member 1
 ppp authentication chap

interface Dialer1
 encapsulation ppp
 bandwidth 64
 
!--- Increase the bandwidth from 56 to 64 Kbps.

 dialer pool 1
 dialer remote-name routerB-dialer1
 max-reserved-bandwidth 90
 
!--- Allow 90% of the bandwidth to be reserved.

 dialer-group 1
 dialer string 12345678
 service-policy output voice-only
 
!--- RTP packets only.

 ppp authentication chap
 ppp chap hostname routerA-dialer1
 ppp chap password cisco
 ppp multilink
 ppp multilink fragment-delay 10
 ppp multilink interleave 
 ip rtp header-compression

interface Dialer2
 encapsulation ppp
 dialer pool 1
 dialer remote-name routerB-dialer2
 dialer-group 1
 dialer string 12345678
 service-policy output data-and-signaling
 
!--- Data and VoIP signaling.

 ppp authentication chap
 ppp chap hostname routerA-dialer2
 ppp chap password cisco

router eigrp 1
 passive-interface dialer 1
 
!--- Suppress routing on the voice channel.


interface fastethernet 0/1
 ip policy route-map ip-rtp
 
!--- Policy route RTP packets.


route-map ip-rtp permit 10
 match ip address 100
 set interface dialer 1
 
!--- Route RTP packets out dialer 1.


access-list 100 permit udp any range 16384 32768
  any range 16384 32768 dscp ef

cRTP を使用しない複数 B チャネルの音声とデータの共存

この設計は Cisco IOS ソフトウェア リリース 12.2(2)T 以降で、ポリシーマップで絶対数の代わりにパーセンテージで帯域幅を指定できるという事実を利用します。 この機能によって、複数の B チャネルをバンドルするサービス ポリシーを適用することができます。 その結果、RTP パケットは複数の B チャネルを通じて伝送できます。 その代わり、複数パスの実装は、RTP パケットのリオーダーの可能性があるため cRTP の使用が安全ではないことを意味します。

Cisco IOS は、追加の B チャネルを必要に応じて持ち込む方法を制御するメカニズムを 2 種類提供します。 最初のメカニズムは、一般にダイヤル オンデマンド ルーティング(DDR)と呼ばれます。 DDR では、使用できる帯域幅の一部分として指定する負荷しきい値が必要です。 トラフィック フローがこのしきい値を超えた場合、追加チャネルがバンドルに追加されます。 しきい値は稼働平均として計算され、負荷が増加したときに追加の B チャネルを持ち出すことで一定の遅延があります。 この遅延は、データの問題ではありません。 ただし、音声に関しては、電話をかける場合には遅延は受け入れられません。そして、このコールの QoS をサポートするために必要な帯域幅で起動するためには数分かかります。

物理的な ISDN のインターフェイスで load-interval コマンドを使用すると追加チャネルが起動するまでの遅延を約 30 秒に減らすことができます。 しかし、30 秒でも必要な QoS を使わずに転送されるコールに対しては長すぎます。 解決策は、適切な QoS を使って少なくとも 1 つの追加 VoIP コールをサポートするために予約で十分な帯域幅を確保する値に dialer load-threshold コマンドを設定します。

2 つのコールが 30 秒以内に起動する場合でもまだ問題がある場合、2 番目またはそれ以上に堅牢な解決策が優先されます。 解決策は、すべての B チャネルをすぐに起動し、ISDN サービスが必要な限り維持することです。 このアクションを指定するには ppp multilink links minimum コマンドを使用できます。

2 本の使用可能な B チャネルを使用すると、サービス ポリシーで 96 Kbps (128 Kbps の 75%)を RTP および VoIP シグナリング用に予約できます。 VoIP シグナリングに 8 Kbps が必要なので、残っているのは RTP 用の 88 Kbps です。 2 本の B チャネルの使用に基づき、次の表では BRI で伝送できる最大コール数を示します。

— — —
サンプル サイズ(バイト) PPS cRTP パケット長(バイト) 帯域幅(Kbps) BRI ごとのコール数
20 50 なし 66 26.4 3
20 50 28 11.2
30 33 なし 76 20.1 4
30 33 38 10.0
40 25 なし 86 17.2 5
40 25 48 9.6

この出力は、cRTP を使用しない複数の B チャネルで共存する音声およびデータ用の設定例を示します。

cRTP を使用しない複数 B チャネルの音声とデータの共存の設定

!--- This section shows only relevant parts of the configuration.



Class-map match-all VoIP-RTP
 match ip dscp ef
class-map match-all VoIP-SIG
 match ip dscp af31 

policy-map voice-and-data
 class VoIP-RTP
  priority percent 65
  
!--- This is 65% of 64/128K for RTP.

 class VoIP-SIG
  bandwidth percent 10
  
!--- This is 10% of 64/128K for VoIP signaling.


interface BRI0/0
 encapsulation ppp
 dialer pool-member 1
 ppp authentication chap

interface Dialer1
 encapsulation ppp
 dialer pool 1
 dialer remote-name routerB-dialer1
 dialer-group 1
 dialer string 12345678
 service-policy output voice-and-data
 ppp authentication chap
 ppp chap hostname routerA-dialer1
 ppp chap password cisco
 ppp multilink
 ppp multilink fragment-delay 10
 ppp multilink interleave 
 ppp multilink links minimum 2
 
!--- Bring up two B-channels immediately.

 no ip rtp header-compression
 
!--- cRTP is not safe

cRTP を使用する複数 B チャネルの音声とデータの共存

Cisco IOS ソフトウェア リリース 12.2(12)T での MCMP の発表に伴い、cRTP のリオーダーの問題は解決し、cRTP がまだ行われていても音声で複数の B チャネルを使用することが可能です。 これの設計原則は「cRTP を使用しない複数 B チャネルの音声とデータの共存」の項での説明と同じですが、cRTP を有効にできるようになったことが唯一の違いです。 次の表は、2 つの B チャネルでの cRTP の使用に基づいて BRI で伝送できる最大コール数を追加します。

サンプル サイズ(バイト) PPS cRTP パケット長(バイト) 帯域幅(Kbps) BRI ごとのコール数
20 50 なし 66 26.4 3
20 50 28 11.2 7
30 33 なし 76 20.1 4
30 33 38 10.0 8
40 25 なし 86 17.2 5
40 25 48 9.6 9

このシナリオでは「cRTP を使用しない複数 B チャネルの音声とデータの共存の設定」適用されます。 例外は、この出力をダイヤラ インターフェイスに追加したときに MCMP が有効になっていることと cRTP がオンになっていることです。

PPP マルチリンク複数クラスの設定例

!--- This command is available with Cisco IOS Software Release 12.2(12)T.
 
interface Dialer1 ppp multilink multiclass
	  
!--- Enable MCMP.

 ip rtp header-compression
    
!--- Support cRTP on the bundle

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 25610