Cisco IOS XR セッション ボーダー コントローラ コンフィギュレーション ガイド Cisco IOS XR Software Release 3.5
コーデックの制限
コーデックの制限
発行日;2013/09/18 | 英語版ドキュメント(2013/05/14 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 6MB) | フィードバック

目次

コーデックの制限

内容

コーデック制限の前提条件

コーデックの制約事項

コーデック制限の設定方法

コーデックの設定

コーデック リストを使用するように CAC ポリシーを設定する

コーデック制限の設定例

コーデックの設定例

コーデック リストを使用するように CAC ポリシーを設定する例

その他の関連資料

関連資料

標準

MIB

RFC

シスコのテクニカル サポート

コーデックの制限

Compressor-Decompressor(Codec; コーデック)は、データ ストリームまたは信号上で変換を行うデバイスまたはプログラムです。SBC には認識されている一連のコーデックがハードコードされています( 表 4 表 7 を参照)。これには、一般的に使用されている音声およびビデオのコーデックがすべて含まれています。デフォルトの動作は、認識されているすべてのコーデックがすべてのコールで許可されています。コール シグナリング内に他のコーデックがある場合、そのコーデックは SBC によって削除されます。

この機能拡張により、特定のコールで使用できるコーデックを制限し、許可されたコーデックごとに許容できる最小パケット化時間を設定できます。

コーデック制限機能の履歴

 

リリース
変更内容

リリース 3.4.1

この機能は、Cisco XR 12000 シリーズ ルータで導入されました。

リリース 3.5.0

変更なし。

コーデック制限の前提条件

コーデックを制限する前に、次の前提条件を満たす必要があります。

使用される SBC コマンドの適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。ユーザ グループとタスク ID の詳細については、『Cisco IOS XR Session Border Controller Command Reference』で、コマンドごとに必要な定義済みタスク ID を参照してください。

SBC ソフトウェアのパッケージ インストレーション エンベロープ(PIE)をインストールしてアクティブにする必要があります。

PIE のインストールに関する詳細については、『Cisco IOS XR Getting Started Guide』の「Upgrading and Managing Cisco IOS XR Software」モジュールを参照してください。

SBC を作成しておく必要があります。 「SBC 設定の前提条件」 に記載された手順に従ってください。

コーデックを制限する前に、トランスコーディングを設定する必要があります。 「SBC トランスコーディングの実装」 に記載された手順に従ってください。

単純なコールの作成に必要な SBE および DBE のすべての設定が、すでに完了済みである必要があります。トランスコーディングの設定は、これらの設定の後に行います。

コーデックの制約事項

次のコーデックの制約事項を確認してください。

DBE 上のメディア パケット フォワーダは、各メディア ストリームで消費する帯域幅をポリシングしますが、コーデックのタイプやパケット化時間をポリシングできません。

認識されていないコーデックをコーデック ホワイトリストのメンバーとして設定できません。

コール中にコーデック ホワイトリストへの変更が行われた場合、アクティブ コールは解放されません。

コーデック ホワイトリストが設定されている場合、SBC はリストにないコーデックをコール セットアップ フローおよびメディア ゲート割り当てから削除します。

複数のコーデック ホワイトリストを、CAC ポリシー単位で設定できます。たとえば、「SipAdj1」からのコールに対して許可されるコーデックのリストとは別に、「SipAdj2」からのコールに対して許可されるコーデックのリストを指定できます。

コーデック ホワイトリストが設定されていない場合、認識されているすべてのコーデック( 表 4 から 表 7 を参照)はすべてのコールに対して許可されます。

SDP に示されるコーデック記述のテキスト値(「PCMU」、「telephone-event」など)を使用して、コーデック ホワイトリストを設定する必要があります。

すべてのコーデックを禁止する方法はサポートしていません。ただし、帯域幅制限を 0 に設定して、同様の結果を得ることができます。

コーデック リストはメディア バイパス コールには適用されません(このようなコールでは SBC はメディア リソースを確保しません)。

コーデック名の形式は、SDP 内での表現に使用されるストリングと同じです(例:PCMU、VDVI)。認識されているすべてのコーデック名を 表 4 から 表 7 に示します。

パケット化時間を 1 つ指定して、1 回に各リストに追加できるコーデックは 1 つだけです。

リスト上のコーデックごとに、CAC は、そのコーデックを使用するストリームの信号で受け取ったパケット化時間を、コーデックとともにリストに設定されたパケット化時間以上になるように制限します。ストリームでリスト内の 2 つ以上のコーデックを使用する場合、リスト内でそれぞれのコーデックに設定されたすべてのパケット化時間のうち最大のものがストリームに適用されます。


) 以降の表に示す帯域幅は、トランスポート層のオーバーヘッドを除いた帯域幅です。したがって、SBC によって確保される実際の帯域幅はリストに記載されている値よりも大きくなります。


 

表 4 パケット化時間 10 ms のサンプルベースのオーディオ コーデック

ペイロード タイプ
コーデック名
クロック レート(Hz)
サンプル サイズ(ビット)
チャネル

0

PCMU

8000

8

1

5

DVI4

8000

4

1

6

DVI4

16000

4

1

8

PCMA

8000

8

1

10

L16

44100

16

2

11

L16

44100

16

1

15

G728

8000

2

1

16

DVI4

11025

4

1

17

DVI4

22050

4

1

G726-40

8000

5

1

2

G726-32

8000

4

1

G726-24

8000

3

1

G726-16

8000

2

1

L8

8000

8

1

DAT12

8000

12

2

L20

44100

10

2

L24

44100

24

2

 

表 5 非サンプルベースのオーディオ コーデック

ペイロード タイプ
コーデック名
パケット化時間(ms)
割り当て帯域幅(ビット/秒)

3

GSM

10

13200

7

LPC

10

5600

9

G722

10

64000

13

CN

10

400

18

G729

10

8000

4

G723

30

6400

12

QCELP

該当なし

13300

14

MPA

該当なし

131072

G729D

10

6400

G729E

10

11800

GSM-EFR

10

12400

VDVI

10

25000

AMR

10

12500

AMR-WB

10

24420

dsr-es201108

10

4800

EVRC

10

8550

EVRC0

10

8550

mpa-robust

10

327680

G7221

10

32000

MP4A-LATM

10

131072

SMV

10

8550

SMV0

10

8550

G729AB

10

8000

 

表 6 ビデオ コーデック

ペイロード タイプ
コーデック名
パケット化時間(ms)
割り当て帯域幅(ビット/秒)

25

CelB

該当なし

524228

26

JPEG

該当なし

524228

28

nv

該当なし

524228

31

H261

該当なし

524228

32

MPV

該当なし

524228

33

MP2T

該当なし

524228

34

H263

該当なし

524228

BMPEG

該当なし

524228

BT656

該当なし

170000000

DV

該当なし

1500000000

H263-1998

該当なし

524228

H263-2000

該当なし

524228

MP1S

該当なし

1600000

MP2P

該当なし

524228

MP4V-ES

該当なし

524228

raw

該当なし

1500000000

SMPTE292M

該当なし

1500000000

 

表 7 その他のコーデック

コーデック名
パケット化時間(ms)
割り当て帯域幅(ビット/秒)

telephone-event

20

1600

tone

20

1600

RED

20

1

parityfec

20

1

t140

100

80

pointer

20

1600

H224

20

6560

T.38

該当なし

15500

X-NSE

20

1600

コーデック制限の設定方法

次のセクションで説明するように、最初にコーデックを設定してから適用します。

「コーデックの設定」

「コーデック リストを使用するように CAC ポリシーを設定する」

コーデックの設定

特定のコールで使用できるコーデックを制限し、許可されたコーデックごとに許容できる最小パケット化時間を設定するには、コーデックのリストを指定して CAC を設定し、リストの記述を設定してから、コーデックをリストに追加します。

手順の概要

1. configure

2. sbc service-name sbe codec-list list-name

3. description text

4. codec codec-name [ packetization-period packetization-period ]

5. commit

6. exit

7. show services sbc service-name sbe codec-list list-name

手順の詳細

 

コマンドまたはアクション
目的

ステップ 1

configure

 

RP/0/0/CPU0:router# configure

グローバル コンフィギュレーション モードをイネーブルにします。

ステップ 2

sbc service-name sbe codec-list list-name

 

RP/0/0/CPU0:router(config)# sbc mysbc sbe codec-list my_codecs

指定された名前のコーデック リストを設定できるサブモードを開始します。

service-name 引数を使用して、サービスの名前を定義します。

このコマンドの no 形式を使用すると、コーデック リストが削除されます。

(注) コーデックが 1 つも含まれていなくても、コーデック リストは存在できます。リストからすべてのコーデックを削除しても、リストは削除されません。

ステップ 3

description text

 

RP/0/0/CPU0:router(config-sbc-sbe-codec-list)# description Legitimate codes

指定したコーデック リストに、読み取り可能なテキスト ストリング形式で説明を追加します。

このコマンドの no 形式を使用すると、説明は削除されます。

この説明は、このコーデック リストに対して show コマンドを使用すると表示されます。全コーデック リストの要約を表示する場合も、各コーデック リストにこの説明が使用されます。

ステップ 4

codec codec-name [ packetization-period packetization-period]

 

RP/0/0/CPU0:router(config-sbc-sbe-codec-list)# codec PCMU packetization-period 20

コーデックをコーデック リストに追加し、コーデックの最小パケット化時間(任意)を設定します。

このコマンドの no 形式(パケット化時間を指定しない場合)は、コーデック リストから指定したコーデックを削除します。

形式は、コーデックのパケット化時間だけを削除します。

ステップ 5

commit

 

RP/0/0/CPU0:router(config-sbc-sbe-codec-list)# commit

設定変更を保存します。実行コンフィギュレーション ファイルに変更を保存し、コンフィギュレーション セッションを継続するには、 commit コマンドを使用します。

ステップ 6

exit

 

RP/0/0/CPU0:router(config-sbc-sbe-codec-list)# exit

コーデック リスト モードを終了し、SBE モードに戻ります。

ステップ 7

show services sbc service-name sbe codec-list list-name

 

RP/0/0/CPU0:router# show services sbc mysbc sbe codec-list my_codecs

SBE で設定されたコーデック リストの詳細情報を表示します。

リスト名(my_codecs など)を省略した場合は、SBE のすべてのコーデック リストの詳細が表示されます。

コーデック リストを使用するように CAC ポリシーを設定する

手順の概要

1. configure

2. sbc service-name sbe cac-policy-set policy-set

3. cac-table table-id

4. entry entry-id

5. codec-restrict-to-list list-name

6. commit

7. exit

8. show services sbc service-name sbe cac-policy-set id table name entry entry

手順の詳細

 

コマンドまたはアクション
目的

ステップ 1

configure

 

RP/0/0/CPU0:router# configure

グローバル コンフィギュレーション モードをイネーブルにします。

ステップ 2

sbc service-name sbe cac-policy-set policy-set

 

RP/0/0/CPU0:router(config)# sbc mysbc sbe cac-policy-set 1

コーデックを制限する特定の CAC ポリシーを設定できるサブモードを開始します。

service-name 引数を使用して、サービスの名前を定義します。

ステップ 3

cac-table table-id

 

RP/0/0/CPU0:router(config-sbc-sbe-cacpolicy)# cac-table MyCacTable match-type adjacency

CAC テーブルを指定します。

ステップ 4

entry entry-id

 

RP/0/0/CPU0:router(config-sbc-sbe-cacpolicy-
cactable)# entry 1

特定のテーブル エントリを指定します。

ステップ 5

codec-restrict-to-list list-name

 

RP/0/0/CPU0:router(config-sbc-sbe-cacpolicy-
cactable)# codec-restrict-to-list my_codecs

コールのシグナリングで使用するコーデックを、指定したリストに含まれるコーデックのセットに制限するように CAC を設定します。

コーデック リストが空の場合、SBE で認識されているすべてのコーデックが許可されます。

このコマンドの no 形式を使用するか、またはこのコマンドを設定していなければ、識別されているコーデックを制限なく使用できます。

(注) このコマンドは、初期の CAC エントリで設定された任意のコーデック リストを置換します。初期の CAC エントリからすべての制限をクリアするには、codec-restrict-to-list list-name を設定する必要があります。list-name は、コーデックを含まないリストの名前です。

ステップ 6

commit

 

RP/0/0/CPU0:router(config-sbc-sbe-codec-list)# commit

設定変更を保存します。実行コンフィギュレーション ファイルに変更を保存し、コンフィギュレーション セッションを継続するには、 commit コマンドを使用します。

ステップ 7

exit

 

RP/0/0/CPU0:router(config-sbc-sbe-codec-list)# exit

コーデック リスト モードを終了し、SBE モードに戻ります。

ステップ 8

show services sbc service-name sbe cac-policy-set id table name entry entry

 

RP/0/0/CPU0:router(config-sbc-sbe)# show services sbc mysbc sbe cac-policy-set 1 table standard_policy_list entry 1

制限されたコーデックを含む、CAC ポリシー テーブルの特定エントリの詳細情報を表示します。

コーデック制限の設定例

このセクションでは、コーデックの制限の設定およびコーデック リストを使用する CAC ポリシーの設定に関する設定例および出力例を示します。

コーデックの設定例

次に、コーデック制限の設定に必要なコマンドの例を示します。

図 10 では、3 つの隣接(A、B、および C)があります。「A」に関するコールはすべて、最小優先パケット期間が 10 ミリ秒の G729 と PCMU コーデックだけを使用するように設定する必要があります。ただし、「B」と「C」の間のコールには使用可能なコーデックをどれでも使用できます。

推奨される最小パケット化時間とともに設定された特定のコーデックを含むコーデック リストを作成するには、次のコマンドを使用します。

configure
sbc mysbc
sbe
codec-list allowable_codecs
description The set of codecs allowed on adjacency AdjA
codec g729 packetization-period 20
codec pcmu packetization-period 10
end

 

コーデック制限を設定した後に、コーデック リストを使用するように CAC ポリシーを設定する必要があります。 「コーデック リストを使用するように CAC ポリシーを設定する例」 を参照してください。

図 10 コーデック制限の設定例のシナリオ

 

コーデック リストを使用するように CAC ポリシーを設定する例

次に、コーデック リストを使用するように CAC ポリシーを設定するために必要なコマンドの例を示します。コード リストを設定する場合は、 コーデックの設定例 を参照してください。

configure
sbc mysbc
sbe
cac-policy-set 1
first-cac-table table1
first-cac-scope call
cac-table table1
match-type adjacency
entry 1
match AdjA
codec-restrict-to-list allowable_codecs
action cac-complete
end
end

) コーデック リストの CLI コマンドは、コール単位のレベルでのみ CAC ポリシー テーブルに入力できます。その他のレベルでコーデック リストを設定しても、CAC ポリシー セットはアクティブになりません。ただし、設定のコミット後に表示されるログでは、ポリシー セットに「完了」のマークが付きます。


その他の関連資料

次の各項では、コーデックの制限および最小許可パケット化時間の設定に関連する資料を示します。

関連資料

 

関連項目
マニュアル タイトル

Cisco IOS XR マスター コマンド リファレンス

『Cisco IOS XR Master Commands List』

Cisco IOS XR SBC インターフェイス コンフィギュレーション コマンド

『Cisco IOS XR Session Border Controller Command Reference』

Cisco IOS XR ソフトウェアを使用するルータを初回に起動し設定するための情報

『Cisco IOS XR Getting Started Guide』

Cisco IOS XR コマンド モード

『Cisco IOS XR Command Mode Reference』

標準

標準
タイトル

この機能でサポートされる新規の標準または変更された標準はありません。また、既存の標準のサポートは変更されていません。

--

MIB

 

MIB
MIB のリンク

--

Cisco IOS XR ソフトウェアを使用して MIB の場所を特定してダウンロードするには、次の URL にある Cisco MIB Locator を使用して、[Cisco Access Products] メニューからプラットフォームを選択します。

http://cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml

RFC

 

RFC
タイトル

RFC 2833

『RTP Payload for DTMF Digits, Telephony Tones and Telephony Signals』

RFC 3261

『SIP: Session Initiation Protocol』

シスコのテクニカル サポート

 

説明
リンク

シスコのテクニカル サポート Web サイトでは、製品、テクノロジー、ソリューション、技術的なヒント、およびツールへのリンクなどの、数千ページに及ぶ技術情報が検索可能です。Cisco.com に登録済みのユーザは、このページから詳細情報にアクセスできます。

http://www.cisco.com/en/US/support/index.html