Cisco IOS ソフトウェア コンフィギュレーション ガイド Cisco IOS Release 15.1SY
マルチプロトコル ラベル スイッチング(MPLS)
マルチプロトコル ラベル スイッチング(MPLS)
発行日;2013/10/06 | 英語版ドキュメント(2013/09/29 版) | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 11MB) | フィードバック

目次

マルチプロトコル ラベル スイッチング(MPLS)

MPLS の前提条件

MPLS の制約事項

MPLS について

MPLS の概要

IP to MPLS

MPLS to MPLS

MPLS to IP

MPLS VPN 転送

再循環

ハードウェアでサポートされる機能

サポートされている MPLS 機能

MPLS のデフォルト設定

MPLS 機能の設定方法

MPLS の設定

LAN カードでの MUX-UNI サポートの設定

MPLS の設定例

マルチプロトコル ラベル スイッチング(MPLS)

「MPLS の前提条件」

「MPLS の制約事項」

「MPLS について」

「MPLS のデフォルト設定」

「MPLS 機能の設定方法」

「MPLS の設定例」


) • この章で使用しているコマンドの構文および使用方法の詳細については、次の資料を参照してください。

http://www.cisco.com/en/US/products/ps11846/prod_command_reference_list.html

Cisco IOS Release 15.1SY は、イーサネット インターフェイスだけをサポートしています。Cisco IOS Release 15.1SY は、WAN 機能またはコマンドをサポートしていません。


 

ヒント Cisco Catalyst 6500 シリーズ スイッチの詳細(設定例およびトラブルシューティング情報を含む)については、次のページに示されるドキュメントを参照してください。

http://www.cisco.com/en/US/products/hw/switches/ps708/tsd_products_support_series_home.html

技術マニュアルのアイデア フォーラムに参加する


 

MPLS の前提条件

なし。

MPLS の制約事項

PFC および DFC は、最大 16 個の負荷分散パスをサポートします(他のプラットフォーム用の Cisco IOS リリースでは、8 個の負荷分散パスのみをサポート)。

MTU サイズ チェックはハードウェアでサポートされます。

IP として入り、MPLS として出るトラフィックなど、フラグメンテーションはソフトウェアでサポートされます。過剰な CPU 使用率を回避するために、 mls rate-limit all mtu-failure コマンドを使用して、RP に送信されるトラフィックのフラグメンテーションのレートを制限できます。

MPLS では以下のコマンドがサポートされます。

mpls ip default route

mpls ip propagate-ttl

mpls ip ttl-expiration pop

mpls label protocol

mpls label range

mpls ip

mpls label protocol

mpls mtu

これらのコマンドの詳細については、次の資料を参照してください。

http://www.cisco.com/en/US/products/ps11846/prod_command_reference_list.html

Cisco IOS Release 15.1SY は、イーサネット インターフェイスだけをサポートしています。Cisco IOS Release 15.1SY は、WAN 機能またはコマンドをサポートしていません。

MPLS について

「MPLS の概要」

「IP to MPLS」

「MPLS to MPLS」

「MPLS to IP」

「MPLS VPN 転送」

「再循環」

「ハードウェアでサポートされる機能」

「サポートされている MPLS 機能」

MPLS の概要

MPLS は、ラベル スイッチングを使用して、イーサネット経由でパケットを転送します。ラベルはグループ化または Forwarding Equivalence Class(FEC)に基づいて、パケットに割り当てられます。ラベルはレイヤ 2 ヘッダーとレイヤ 3 ヘッダーの間に追加されます。

MPLS ネットワークでは、ラベル エッジ ルータ(LER)が着信ラベルのラベル検索を実行し、着信ラベルを発信ラベルに切り替えて、パケットをラベル スイッチ ルータ(LSR)のネクスト ホップに送信します。ラベルがパケットに対してインポーズ(プッシュ)されるのは、MPLS ネットワークの入力エッジ上に限定されます。出力エッジでは、ラベルが削除(ポップ)されます。コア ネットワーク LSR(プロバイダー、または P ルータ)はラベルを読み取り、適切なサービスを適用し、ラベルに基づいてパケットを転送します。

着信ラベルには集約または非集約の 2 つのタイプがあります。集約ラベルの場合は、ネクスト ホップおよび発信インターフェイスを検出するときに、IP 検索を通して着信 MPLS パケットをスイッチングする必要があります。非集約ラベルの場合は、パケットに IP ネクスト ホップ情報が格納されます。

図 36-1 に、カスタマー ネットワークの 2 つのサイトを接続するサービス プロバイダーの MPLS ネットワークを示します。

図 36-1 MPLS ネットワーク

 

ルート プロセッサ(RP)は、アドレス解決やルーティング プロトコルなどのレイヤ 3 コントロール プレーン機能を実行します。RP はルーティング プロトコルおよびラベル配布プロトコル(LDP; Label Distribution Protocol)からの情報を処理し、IP 転送(Forwarding Information Base(FIB; 転送情報ベース))テーブルおよびラベル転送(Label Forwarding Information Base(LFIB))テーブルを構築します。RP は両方のテーブルの情報を PFC および DFC に配布します。

PFC および DFC は情報を取得し、FIB および LFIB テーブルのコピーを独自に作成します。同時に、これらのテーブルから FIB Ternary Content Addressable Memory(TCAM)を作成します。PFC および DFC は FIB TCAM テーブル内で、着信 IP パケットおよびラベル付きパケットを検索します。検索結果は、特定の隣接エントリへのポインタです。この隣接エントリには、ラベルのプッシュ(IP から MPLS へのパスの場合)、ラベルのスワップ(MPLS から MPLS へのパスの場合)、ラベルのポップ(MPLS から IP へのパスの場合)、およびカプセル化に関する適切な情報が格納されます。

図 36-2 に MPLS をサポートする各機能ブロックを示します。ルーティング プロトコルは、IP および MPLS データ パケットの転送に使用される Routing Information Base(RIB)を生成します。Cisco Express Forwarding(CEF; シスコ エクスプレス フォワーディング)の場合、必要なルーティング情報が RIB から抽出されて、Forwarding Information Base(FIB; 転送情報ベース)に構築されます。ラベル配布プロトコル(LDP)は RIB からルートを取得して、ラベル スイッチ パスを介してラベルを配布し、各 LSR および LER 内に Label Forwarding Information Base(LFIB)を構築します。

図 36-2 MPLS 転送、制御、およびデータ プレーン

 

IP to MPLS

PFC は MPLS ネットワークへの入口で IP パケットを調べて、FIB TCAM 内でルートを検索します。検索結果は、特定の隣接エントリへのポインタです。隣接エントリには、ラベルのプッシュ(IP から MPLS へのパスの場合)およびカプセル化に関する適切な情報が格納されています。PFC は、MPLS パケットのスイッチングに必要なインポジション ラベルを含む結果を生成します。

MPLS to MPLS

PFC は MPLS ネットワークのコアで最上位ラベルを使用して、FIB TCAM 内で検索を実行します。正常な検索結果によって隣接を示すと、パケット内の最上位ラベルを、ダウンストリーム Label Switch Router(LSR; ラベル スイッチング ルータ)によってアドバタイズされた新しいラベルで置き換えます。ルータが直前ホップ LSR ルータ(出力 LER の次のアップストリーム LSR)である場合、隣接は PFCBXL に最上位ラベルをポップするように指示します。これにより、VPN または Any Transport over MPLS(AToM)で使用するラベルが残っている MPLS パケット、またはネイティブ IP パケットが作成されます。

MPLS to IP

MPLS ネットワークの出口では、いくつかの処理が考えられます。

ネイティブ IP パケットの場合(直前ルータがラベルをポップした場合)、PFC は FIB TCAM 内でルートを検索します。

MPLS VPN パケットの場合は、 内部ゲートウェイ プロトコル(IGP) ラベルが直前ルータでポップされたあとに、VPN ラベルが残ります。PFC が実行する処理は、VPN ラベル タイプによって異なります。集約ラベルを伝送するパケットでは、集約ラベルのポップ後に、IP ヘッダーに基づいてさらに検索する必要があります。非集約ラベルの場合、PFC は FIB TCAM 内でルートを検索し、IP ネクスト ホップ情報を取得します。

IGP ラベルおよび VPN ラベルが付加されたパケットの場合、Penultimate Hop Popping(PHP)が発生しなければ、パケットは VPN ラベルの上部で明示的 null ラベルを伝送します。PFC は FIB TCAM 内で最上位ラベルを検索し、パケットを再循環させます。その後、PFC は上記段落の説明に従って、集約ラベルであるか非集約ラベルであるかに応じて残りのラベルを処理します。

EoMPLS、MPLS、および MPLS VPN の場合、明示的 null ラベルが付加されたパケットについて、MPLS は同様に処理されます。

MPLS VPN 転送

直接接続ネットワークまたは集約ルート用の集約ラベル、および非集約ラベルという 2 種類の VPN ラベルがあります。集約ラベルを伝送するパケットでは、集約ラベルのポップ後に、IP ヘッダーに基づいてさらに検索する必要があります。VPN 情報(VPN-IPv4 アドレス、拡張コミュニティ、およびラベル)は Multiprotocol-Border Gateway Protocol(MP-BGP)によって配布されます。

再循環

場合により、PFC はパケットの再循環機能を提供します。再循環を使用すると、ACL または QoS TCAM、NetFlow テーブル、または FIB TCAM テーブル内で追加検索を実行できます。再循環は次の状況で必要となります。

4 つ以上のラベルをインポジションにプッシュする場合

3 つ以上のラベルをディスポジションにポップする場合

最上位の明示的 null ラベルをポップする場合

VPN ルーティング/転送(VRF)番号が 511 よりも大きい場合

出力インターフェイスの IP ACL の場合(非集約(プレフィックス単位)ラベル専用)

パケット再循環が発生するのは、特定のパケット フローに対してだけです。その他のパケット フローには影響しません。パケットの書き替えはモジュールで行われます。書き替えられたパケットは PFC に転送されて、さらに処理されます。

ハードウェアでサポートされる機能

次の機能はハードウェアでサポートされます。

ラベル処理:任意の個数のラベルをプッシュまたはポップできます。ただし、最適な結果を得るために、同じ処理内でプッシュするラベル数を最大で 3 つに、ポップするラベル数を最大で 2 つにしてください。

IP から MPLS へのパス:IP パケットを受信して、MPLS パスに送信できます。

MPLS から IP へのパス:ラベル付きパケットを受信して、IP パスに送信できます。

MPLS から MPLS へのパス:ラベル付きパケットを受信して、そのラベル パスに送信できます。

MPLS Traffic Engineering(MPLS TE):MPLS バックボーンは、レイヤ 2 ATM およびフレーム リレー ネットワークのトラフィック エンジニアリング機能を反復および拡張できます。

Time to Live(TTL)処理:MPLS ネットワークの入力エッジでは、MPLS フレーム ヘッダーの TTL 値を、IP パケット ヘッダーの TTL フィールドから受信したり、隣接エントリのユーザ設定値から受信したりできます。MPLS ネットワークの出口では、最終 TTL はラベル TTL と IP TTL のいずれか小さい方の値から 1 を引いた値になります。


) 均一モードでは、TTL は IP TTL から取得されます。パイプ モードでは、ハードウェア レジスタから取得した値 255 が発信ラベルに使用されます。


QoS:IP パケットから取得された Differentiated Services(DiffServ)および ToS に関する情報を、MPLS EXP フィールドにマッピングできます。

MPLS/VPN サポート:最大 1024 個の VRF をサポートできます(511 個を超える VRF を再循環する必要があります)。

Ethernet over MPLS:MPLS ドメインの入口でイーサネット フレームをカプセル化し、出口でカプセル化解除できます。

パケット再循環:PFC にはパケット再循環機能があります。「再循環」を参照してください。

MPLS スイッチング設定は、mpls ip コマンドを使用した VLAN インターフェイスでサポートされます。

サポートされている MPLS 機能

MPLS 機能:

基本的な MPLS

MPLS TE

MPLS TE DiffServ 認識(DS-TE)

MPLS TE 転送隣接

MPLS TE エリア間トンネル

MPLS バーチャル プライベート ネットワーク(VPN)

MPLS VPN Carrier Supporting Carrier(CSC)

MPLS VPN Carrier Supporting Carrier IPv4 BGP ラベル配信

MPLS VPN 相互自律システム(InterAS)のサポート

MPLS VPN Inter-AS IPv4 BGP ラベル配信

詳細については、次のマニュアルを参照してください。

http://www.cisco.com/en/US/docs/ios-xml/ios/mpls/config_library/15-sy/mp-15-sy-library.html

http://www.cisco.com/en/US/tech/tk436/tk428/technologies_configuration_example09186a0080093fcb.shtml

http://www.cisco.com/en/US/tech/tk436/tk428/technologies_configuration_example09186a0080093fd0.shtml

MPLS VPN の HSRP サポート:次のマニュアルを参照。

http://www.cisco.com/en/US/docs/ios-xml/ios/ipapp_fhrp/configuration/15-sy/fhp-15-sy-book.html

MPLS VPN の OSPF 模造リンク サポート:次のマニュアルを参照。

http://www.cisco.com/en/US/docs/ios-xml/ios/iproute_ospf/configuration/15-sy/iro-sham-link.html

CE ルータ(VRF Lite)用のマルチ VPN ルーティングおよび転送(VRF):VRF Lite は、次の機能でサポートされます。

VRF インターフェイス間の IPv4 転送

IPv4 ACL

IPv4 HSRP

次の資料を参照してください。

http://www.cisco.com/en/US/products/hw/routers/ps259/prod_bulletin09186a00800921d7.html

MPLS のデフォルト設定

なし。

MPLS 機能の設定方法

「MPLS の設定」

「LAN カードでの MUX-UNI サポートの設定」

MPLS の設定

MPLS を設定するには、次のマニュアルを使用してください。

http://www.cisco.com/en/US/docs/ios-xml/ios/mpls/config_library/15-sy/mp-15-sy-library.html

LAN カードでの MUX-UNI サポートの設定

ユーザ ネットワーク インターフェイス(UNI)は、CE 機器と入力 PE の接続ポイントで、接続 VLAN は UNI ポートの VLAN です。

LAN カードの MUX-UNI サポート機能では、接続 VLAN の物理ポートを分割して、単一の UNI で複数のレイヤ 2 およびレイヤ 3 サービスを提供できます。

LAN カードで MUX-UNI サポートを設定する場合、PE ルータで次の作業を行ってください。

 

コマンド
目的

ステップ 1

Router# configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

Router(config)# interface type number

設定するインターフェイスを選択し、インターフェイス コンフィギュレーション モードを開始します。イーサネット ポートだけで有効です。

ステップ 3

Router(config-if)# switchport

レイヤ 3 モードになっているインターフェイスを、レイヤ 2 設定用にレイヤ 2 モードにします。

ステップ 4

Router(config-if)# switchport trunk encapsulation dot1q

802.1Q カプセル化をサポートするようポートを設定します。

リンクの両端を同一カプセル化タイプで設定する必要があります。

ステップ 5

Router(config-if)# switchport mode trunk

ポートを VLAN トランクとして設定します。

ステップ 6

Router(config-if)# switchport trunk allowed vlan vlan-list

デフォルトの場合は、すべての VLAN が許可されます。VLAN を明示的に許可するには、このコマンドを使用します。 vlan-list の有効な値は、1 ~ 4094 です。

(注) メイン インターフェイスとサブインターフェイス間で VLAN 割り当てが重複しないようにしてください。メイン インターフェイスとサブインターフェイス間の VLAN 割り当ては、相互に排他的にする必要があります。

ステップ 7

Router(config-if)# exit

インターフェイス コンフィギュレーション モードを終了します。

ステップ 8

Router(config)# interface type slot/port.subinterface-number

設定するサブインターフェイスを選択し、インターフェイス コンフィギュレーション モードを開始します。イーサネット ポートだけで有効です。

ステップ 9

Router(config-if)# encapsulation dot1q vlan_id

サブインターフェイスでの 802.1Q VLAN パケットの受信をイネーブルにします。

Ethernet over MPLS が稼働している CE ルータと PE ルータ間のサブインターフェイスは、同じサブネット内になければなりません。その他のすべてのサブインターフェイスおよびバックボーン ルータは、同じサブネット内になくてもかまいません。

ステップ 10

Router(config-if)# xconnect peer_router_id vcid encapsulation mpls

接続回線を疑似接続 VC にバインドします。このコマンドの構文は、その他のレイヤ 2 トランスポートの場合と同じです。

次に、UNI として使用される物理トランク ポートの例を示します。

Router(config)# interface gigabitethernet 3/1
Router(config-if)# switchport
Router(config-if)# switchport encapsulation dot1q
Router(config-if)# switchport mode trunk
Router(config-if)# switchport trunk allowed vlan 200-250

Router(config-if)# exit

 
Router(config)# interface gigabitethernet 3/1.10
Router(config-if)# encap dot1q 3000
Router(config-if)# xconnect 10.0.0.1 3000 encapsulation mpls

Router(config-if)# exit

 
 

次に、UNI として使用されるレイヤ 2 ポート チャネルの例を示します。

Router(config)# interface port-channel 100
Router(config-if)# switchport
Router(config-if)# switchport trunk encapsulation dot1q
Router(config-if)# switchport trunk allowed vlan 100-200
Router(config-if)# switchport mode trunk
Router(config-if)# no ip address

Router(config-if)# exit

 
Router(config)# interface port-channel 100.1
Router(config-if)# encapsulation dot1Q 3100
Router(config-if)# xconnect 10.0.0.30 100 encapsulation mpls

Router(config-if)# exit

 
 

次に、多重化 UNI ポートのレイヤ 3 終端および VRF の例を示します。

 
Router(config)# vlan 200, 300, 400
Router(config)# interface gigabitethernet 3/1
Router(config-if)# switchport
Router(config-if)# switchport encapsulation dot1q
Router(config-if)# switchport mode trunk
Router(config-if)# switchport trunk allowed vlan 200-500

Router(config-if)# exit

 
Router(config)# interface gigabitethernet 3/1.10
Router(config-if)# encap dot1q 3000
Router(config-if)# xconnect 10.0.0.1 3000 encapsulation mpls

Router(config-if)# exit

 
Router(config)# interface vlan 200
Router(config-if)# ip address 1.1.1.3

Router(config-if)# exit

 
Router(config)# interface vlan 300
Router(config-if)# ip vpn VRF A
Router(config-if)# ip address 3.3.3.1

Router(config-if)# exit

 
Router(config)# interface vlan 400
Router(config-if)# ip address 4.4.4.1
Router(config-if)# ip ospf network broadcast
Router(config-if)# mpls label protocol ldp
Router(config-if)# mpls ip

Router(config-if)# exit

MPLS の設定例

次に、MPLS の基本設定の例を示します。

*****
Basic MPLS
*****
 
 
IP ingress interface:
 
Router# mpls label protocol ldp
 
interface GigabitEthernet6/2
ip address 75.0.77.1 255.255.255.0
media-type rj45
speed 1000
end
 
Label egress interface:
 
interface GigabitEthernet7/15
mtu 9216
ip address 75.0.67.2 255.255.255.0
logging event link-status
mpls ip
 
 
Router# show ip route 188.0.0.0
Routing entry for 188.0.0.0/24, 1 known subnets
 
O IA 188.0.0.0 [110/1] via 75.0.77.2, 00:00:10, GigabitEthernet6/2
 
 
Router# show ip routing 88.0.0.0
Routing entry for 88.0.0.0/24, 1 known subnets
 
O E2 88.0.0.0 [110/0] via 75.0.67.1, 00:00:24, GigabitEthernet7/15
[110/0] via 75.0.21.2, 00:00:24, GigabitEthernet7/16
Router# show mpls forwarding-table 88.0.0.0
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
30 50 88.0.0.0/24 0 Gi7/15 75.0.67.1
50 88.0.0.0/24 0 Gi7/16 75.0.21.2
 
 
Router# show mls cef 88.0.0.0 detail
 
Codes: M - mask entry, V - value entry, A - adjacency index, P - priority bit
D - full don't switch, m - load balancing modnumber, B - BGP Bucket sel
V0 - Vlan 0,C0 - don't comp bit 0,V1 - Vlan 1,C1 - don't comp bit 1
RVTEN - RPF Vlan table enable, RVTSEL - RPF Vlan table select
Format: IPV4_DA - (8 | xtag vpn pi cr recirc tos prefix)
Format: IPV4_SA - (9 | xtag vpn pi cr recirc prefix)
M(3223 ): E | 1 FFF 0 0 0 0 255.255.255.0
V(3223 ): 8 | 1 0 0 0 0 0 88.0.0.0 (A:344105 ,P:1,D:0,m:1 ,B:0 )
M(3223 ): E | 1 FFF 0 0 0 255.255.255.0
V(3223 ): 9 | 1 0 0 0 0 88.0.0.0 (V0:0 ,C0:0 ,V1:0 ,C1:0 ,RVTEN:0 ,RVTSEL:0 )
Router# show mls cef adj ent 344105
 
Index: 344105 smac: 0005.9a39.a480, dmac: 000a.8ad8.2340
mtu: 9234, vlan: 1031, dindex: 0x0, l3rw_vld: 1
packets: 109478260, bytes: 7006608640
 
Router# show mls cef adj ent 344105 detail
 
Index: 344105 smac: 0005.9a39.a480, dmac: 000a.8ad8.2340
mtu: 9234, vlan: 1031, dindex: 0x0, l3rw_vld: 1
format: MPLS, flags: 0x1000008418
label0: 0, exp: 0, ovr: 0
label1: 0, exp: 0, ovr: 0
label2: 50, exp: 0, ovr: 0
op: PUSH_LABEL2
packets: 112344419, bytes: 7190042816

ヒント Cisco Catalyst 6500 シリーズ スイッチの詳細(設定例およびトラブルシューティング情報を含む)については、次のページに示されるドキュメントを参照してください。

http://www.cisco.com/en/US/products/hw/switches/ps708/tsd_products_support_series_home.html

技術マニュアルのアイデア フォーラムに参加する