IP ルーティング

冗長 VPN ネットワークでの PfR の使用

ホワイトペーパー





冗長 VPN ネットワークでの PfR の使用



パフォーマンス ルーティング(PfR)を使用する利点:PfR を使用すると、エンタープライズ WAN またはインターネットのソフト エラーを動的に迂回できるインテリジェントなトラフィック管理が有効になります。また、ルーティングが拡張されて、ユーザ定義のポリシーに基づく最適なパスを選択できます。PfR ポリシーを使用して、コストの最小化、トラフィック負荷の効率的な分散、およびアプリケーションに最適なパフォーマンスのパスの選択を行うことができます。PfR では、詳細な基準(応答時間、パケット損失、ジッター、Mean Opinion Score(MOS; 平均オピニオン評点)、アベイラビリティ、トラフィック負荷、コスト($)ポリシー)に基づいて適応型ルーティング調整を行います。つまり、PfR では、ネットワーク内の問題を検出することでエンタープライズの冗長 VPN ネットワークのアベイラビリティを高め、ポリシー ベースのルーティングを使用することで、ルータ コンバージェンスの高速化、および冗長パスの効率的な使用を実現します。


図 1 パフォーマンス ルーティング(PfR)

図 1 パフォーマンス ルーティング(PfR)


目的:このドキュメントは、PfR テクノロジーを使用したアベイラビリティの高い冗長 VPN ネットワークのためのソリューション導入ガイドです。

このドキュメントでは、次の 3 つの一般的なソリューション テスト事例を扱います。

トラフィックのほとんどは MPLS プライベート WAN パス経由でルーティングされます。MPLS パスでオーバーフローまたはエラー状態が発生した場合、トラフィックはパブリック WAN パスにルーティングされます。また、トラフィックは、PfR トラフィック クラスに基づいてルーティングされます。

1. MPLS ネットワークで停電または電圧低下状態が発生した場合のトラフィックのルーティング:

PfR を使用して MPLS VPN ネットワーク パスをパブリック L3 VPN ネットワーク パスにフェールオーバーし、MPLS ネットワークの停電および電圧低下状態に対処します。プライベート WAN で高レベルのトラフィック損失(20 % 以上)が検出された場合、PfR はトラフィックをパブリック WAN 経由で転送します。MPLS パスの損失が回復すると、トラフィックは MPLS パス経由へ経路変更されます。

  • MPLS ネットワーク パスで電圧低下(大きな損失や極度の遅延)または停電(データ パケットの全損失)が発生した場合は、すべてのトラフィックをパブリック WAN に移動します。
  • トラフィック クラスを使用せずに、ネットワーク プレフィクスに基づいて PfR を使用します。
  • MPLS リンクの利用率が 80 % に達すると、超過トラフィックをパブリック WAN 経由でルーティングします。
  • MPLS パスの利用率やエラーが回復すると、すべてのトラフィックは MPLS パスに戻ります。

2. トラフィック負荷、応答時間、およびジッターに基づいたトラフィックのルーティング:

音声などの重要なアプリケーションにパフォーマンス ポリシーを使用し、PfR を使用したデータ分散のために負荷ポリシーを使用して、使用率が高すぎたり低すぎたりするリンクを適切に利用します。

  • MPLS リンクの利用率が 80 % に達すると、超過データ トラフィックをパブリック WAN 経由でルーティングします。
  • MPLS パスでデータ パケットの遅延やジッターが増加した場合、音声トラフィックを MPLS ネットワークではなく、パブリック WAN にルーティングします。
  • MPLS パスの利用率とエラーが回復したら、すべてのトラフィックを MPLS パスに戻します。

3.アプリケーションに最適なパフォーマンスのパスの選択:

PfR トラフィック クラス ベースのルーティングを使用します。

  • PfR トラフィック クラス ベースのルーティングを使用し、音声およびビデオ トラフィックを MPLS 経由でルーティングし、データ トラフィックをパブリック WAN 経由でルーティングします。
  • MPLS パスで中レベルのトラフィック損失(5 % 以上)が検出された場合、すべてのトラフィックがパブリック WAN にルーティングされます。
  • MPLS パスのトラフィック損失エラーが回復すると、トラフィックは PfR トラフィック クラスの設定に従って流れます。

1 ネットワーク トポロジ


ここでは、冗長 VPN ネットワークで PfR をテストする際に使用するソリューション テスト セットアップ トポロジの概要を示します。

  • 使用するルーティング プロトコル:ブランチ A と本社間の冗長 VPN ネットワークには、プライマリ ルーティング パスとして MPLS プライベート ネットワーク、およびセカンダリ ルーティング パスとして DMVPN 暗号化を使用する ISP ネットワークが含まれています。PfR と使用される暗号化方式に依存関係はありません。ソリューション テスト セットアップの MPLS ネットワーク パスでは GET VPN 暗号化が使用されます。ただし、GET VPN 暗号化がプライマリ VPN で使用されない場合でもソリューションは機能します。MPLS プライベート ネットワークに接続されている顧客およびサービス プロバイダーの機器では、BGP ルーティング プロトコルを使用します。ISP ネットワークに接続されている顧客およびサービス プロバイダーの機器では、EIGRP ルーティング プロトコルを使用します。
  • VPN ネットワークの詳細:次に、冗長 VPN ネットワークの詳細を示します。
    1. GET VPN 暗号化と復号化は、MPLS ネットワークのエッジ ルータの CE デバイスで実行されます。ブランチ オフィス A の PfR MC/BR ルータおよび本社の BR2 ルータでは、GET VPN 暗号化と復号化が実行されます。
    2. ブランチ オフィス A の MC/BR ルータおよび本社の BR1 ルータでは、DMVPN 暗号化と復号化が実行されます。
図 2 PfR のテストに使用されるソリューション テスト セットアップ トポロジ

図 2 PfR のテストに使用されるソリューション テスト セットアップ トポロジ
※画像をクリックすると、大きな画面で表示されますpopup_icon


機器リスト:次に、テストに使用する機器を示します。

  • MC および BR の PfR 機能はどちらも、ブランチ A にある CE ルータで動作しています。ビデオフォンとノート PC は、そのブランチ ルータの VLAN に接続されています。このブランチ ルータは PE1 サービス プロバイダーのルータ経由で MPLS ネットワークに接続され、ISP ネットワークにも接続されています。
  • MC および BR の PfR 機能は、パフォーマンス上の理由から本社では分離されています。集約トラフィックを転送する BR ルータは高性能です。したがって、MC 機能は本社内の別のルータで実行されます。
  • BR2 ボーダルータは本社にあります。BR2 ボーダルータは PE2 サービス プロバイダーのルータ経由で MPLS ネットワークに接続されています。
  • BR1 ボーダルータは本社にあります。BR1 ボーダルータは ISP ネットワークに接続されています。
  • BR1 および BR2 はルータ内の同じ VLAN に接続されています。また、BR2 は BR1 から 1 IP ホップ離れており、PfR に必要なポリシー ベースのルーティングを有効にします。
  • PfR MC ルータは本社にあります。このルータは、Pagent ルータ P 、ビデオフォン、およびノート PC と同じ VLAN に接続されています。
  • トラフィック ジェネレータ P はトラフィックの生成に使用されます。
  • ルータ D は、上記の図でオレンジ色で表されている本社の BR と本社の VLAN の両方に接続されているディストリビューション ルータです。
  • MPLS ネットワーク内にセットアップされているルータ E は、ジッター、パケット損失、遅延を含むエラーのシミュレーションに使用されます。

2 構成


次の図は、本社およびブランチ オフィス A の PfR コンポーネントのトポロジを示しています。

図 3 本社で使用されるソリューション テスト セットアップ トポロジ

図 3 本社で使用されるソリューション テスト セットアップ トポロジ
※画像をクリックすると、大きな画面で表示されますpopup_icon


図 4 ブランチ オフィス A で使用されるソリューション テスト セットアップ トポロジ

図 4 ブランチ オフィス A で使用されるソリューション テスト セットアップ トポロジ
※画像をクリックすると、大きな画面で表示されますpopup_icon


以降の各セクションでは、PfR のプロビジョニングに必要なコンフィギュレーション コマンドを示します。次に、本社のマスター コントローラ ルータ MC の一般的な PfR コンフィギュレーション コマンドを示します。

! This is the basic configuration required to establish session
! between MC and BR. It includes
! - Key-chain configuration for authentication.
! - Specification of BR’s IP Address and internal/external interface
!   on the BR.
! - Specification of link-group for each external interface. In this
!   case it is MPLS and DMVPN.
! - Specification of Maximum transmit utilization of 80% on MPLS
!   Default is 75% (on DMVPN)
key chain PFR-SOL-TEST
 key 1
  key-string 7 *perfrtg 
oer master
 border 10.32.231.163 key-chain PFR-SOL-TEST  interface FastEthernet1 internal
  interface Tunnel20 external
   link-group DMVPN
 !
 border 10.32.231.162 key-chain PFR-SOL-TEST
  interface FastEthernet1 internal
  interface FastEthernet0.1 external
  ! route excess traffic via Public WAN when the utilization in MPLS link reaches 80%
  max-xmit-utilization percentage 80
  link-group MPLS
 !
!
--------------------------------------------------------------------------------------
! Following configuration is
! - to enable logging. This will print PfR related syslog messages on
!   the console.
! - to disable default policy of load balancing.
oer master
 no max-range-utilization
 logging
--------------------------------------------------------------------------------------
! - To enable continuous learn cycle, each 1 minute duration - 
!   configure periodic-interval value 0 and monitor-period value 1 (minutes)
!   By default each cycle is 5 minute and occurs ever 2 hrs.
! - Sort the traffic-class based on ‘throughput’ at the end of
!   each learning cycle.
! - Anything traffic that doesn’t match the learn list will be
!   learned under global learn and will be optimized using default
!   policy. To disable global learn configure a filter using a
!   named access-list.
!   The goal here is to learn only branch traffic
!   using learn list (described in the next section).
oer master
 learn
  throughput
  periodic-interval 0
  monitor-period 1
  ! Disable Global learn
  traffic-class filter access-list DENY_GLOBAL_LEARN_LIST
 ! 
! Access-list for disabling global learn.
ip access-list extended DENY_GLOBAL_LEARN_LIST
 deny ip any any
--------------------------------------------------------------------------------------

次に、本社のボーダルータ BR1 および BR2 の一般的な PfR コンフィギュレーション コマンドを示します。

! This is the minimum configuration required to BR. It includes
! - Key-chain configuration for authentication.
! - Specification of MC’s IP Address and Local interface. The IP address
!   of the local interface will be used as source IP address in communicating
!   with MC.
key chain PFR-SOL-TEST
 key 1
  key-string 7 *perfrtg
!
oer border
 logging
 local FastEthernet1
 master 10.32.241.62 key-chain PFR-SOL-TEST
!

2.1 MPLS ネットワークの停電および電圧低下のテスト事例


まとめ

PfR を使用して MPLS VPN ネットワーク パスをパブリック L3 VPN ネットワーク パスにフェールオーバーし、MPLS ネットワークの停電および電圧低下状態に対処します。プライベート WAN で中レベルのトラフィック損失(20 % 以上)が検出された場合、PfR はトラフィックをパブリック WAN 経由で転送します。MPLS パスの損失が回復すると、トラフィックは MPLS パス経由へ経路変更されます。これを実現するために、3 つのタスクがあります。

1. トラフィックの識別

特定のブランチを宛先とするすべてのトラフィックにポリシーが適用されます。つまり、(次のテスト事例にあるように)アプリケーションごとに異なるポリシーはありません。そのため、ブランチあたり 1 つの学習リストを使用してブランチ固有のプレフィクスを学習します。

2. ポリシー パラメータの決定

  • 到達不能しきい値は、停電や電圧低下状態を検出するために設定します。たとえば、10 個のプローブ パケットのうち 5 個のプローブ パケットが到達不能な場合、到達不能測定値は 50 %(100 万フローあたり 50 万フロー)になります。
  • PfR は、優先度に従って決定を行います。到達不能は最優先され、変更もできません。そのため、到達不能の優先度を設定する必要はありません。ただし、遅延や帯域使用率といった無効にすることが可能なデフォルトの優先度がいくつかあります。
  • アクティブ プローブは、到達可能性を測定するために設定されます。測定を向上させるため、複数のプローブが設定されます。
  • Fast モードの設定とプローブの頻度を短くすることにより、反応時間を短縮することができます。反応時間は、エラー状態(ここでは停電と電圧低下)が検出されてからそれを緩和するのに要する時間です。
  • periodic タイマーは、MPLS が正常状態(停電や電圧低下がない状態)に戻ったときに、トラフィックを MPLS へ戻すために設定します。
  • プライマリ リンク グループ(ここでは MPLS)およびフォールバック リンク グループ(ここでは DMVPN)を指定します。

コンフィギュレーション

次に、本社の MC ルータの PfR 設定を示します。

! Following is a learn list configuration specific to one branch.
! This should be repeated for each branch. It includes
! - Learning destination-only traffic-class that matches prefixes specified in the
!   prefix-list BRANCH1_PREFIX.
! - ‘aggregation prefix-length 32’ is configured to monitor and control
!   traffic-class at granularity of /32 (eg 10.1.1.1/32)
! - throughput command is to sort the traffic-class based on throughput at the end
!   of learn cycle. 
oer master
 learn
  list seq 20 refname LEARN_LIST_BRANCH1_PREFIX
   traffic-class prefix-list BRANCH1_PREFIX
   aggregation-type prefix-length 32
   throughput
! 
ip prefix-list BRANCH1_PREFIX seq 5 permit 10.32.240.136/29
--------------------------------------------------------------------------------------
! Following is a policy configuration specific to one branch.
! This should be repeated for each branch. It includes
! - match command is to specify that this policy should be applied
!   to all the traffic-class learned under list LEARN_LIST_BRANCH1_PREFIX.
!
! - periodic: Every 90 second each traffic class is re-evaluated.
!   It is required to bring the traffic-class back to primary link
!   (MPLS) when the utilization drops below the limit. A Higher value
!   can be used if longer time to switch back to primary link is acceptable.
!
! - Unreachable threshold is set to 200,000 (Flows-per-million) i.e 20% 
!   Unreachability.
!
! - monitor mode is set to fast. This means probe all external interfaces
!   all the time. When Out-of-Policy condition is detected on the current exit
!   results on alternate exit is available for quick decision. In other modes
!   alternate exits are probed only when current link is determined to be OOP.
!   The fast mode  helps in switching the path quickly when the problem
!   is detected.
!
! - The requirement is to only switch when the blackout/brownout (unreachable)
!   occurs OR when the utilization exceeds the threshold. 
!   Unreachable is ON by default and cannot be disabled.
!   Delay and Range is ON by default, so it is turned off.
!   Utilization is set to priority 2 with variance 10. Variance 10 means that
!   if the free BW on the link are within 10% of each other then they are equal.
!
! - Probe frequency is set to 4 second to detect the problem quickly. For
!   critical application such as video lower probe frequency is desirable.
!
! - MPLS is set as primary link-group and DMPVN is set as fallback link-group.
!
! - UDP probe is configured because only reachability is required. Two probes are
!   configured for better result. Each probe sends control packet followed by
!   probe packet. ‘ip sla responder’ should be configured on target router on the
!   branch side.
oer master
 policy-rules MAP-TEST1
! OER Map
oer-map MAP-TEST1 10
 match oer learn list LEARN_LIST_BRANCH1_PREFIX
 set periodic 90
 set unreachable threshold 200000
 set mode monitor fast
 set resolve utilization priority 2 variance 10
 no set resolve delay
 no set resolve range
 set probe frequency 4
 set link-group MPLS fallback DMVPN
 set active-probe udp-echo 10.32.240.137 target-port 3000
 set active-probe udp-echo 10.32.240.137 target-port 3001
! VERY IMPORTANT CONFIG
! =====================
! Turn ON the route control and set the control protocol to ‘pbr’.
! By default the control mechanism is in the order, BGP, EIGRP, STATIC and PBR.
! In DMVPN (EIGRP)/ MPLS (BGP) environment route control using either BGP or EIGRP
! results into failure or ineffective control. The only option that
! works is using PBR. So it is necessary to set ‘router protocol pbr’ to
! force PfR to use PBR as control mechanism.
Oer master
 ! This command is only available in version 15.0(1)M4 and later
 mode route protocol pbr
 mode route control

2.2 PfR のパフォーマンスと負荷ポリシーのテスト事例


まとめ

このテストの目的は、音声などの重要なアプリケーションについてパフォーマンス ポリシーを使用し、PfR を使用したデータ分散のために負荷ポリシーを使用して、使用率が高すぎたり低すぎたりするリンクを適切に利用することです。

通常の状態では、すべてのトラフィックは MPLS ネットワーク上で送信されます。たとえば損失が 5 % を超えるなど、パフォーマンス上の問題がある場合は、ビデオと音声のトラフィックをパブリック L3 VPN に切り替える必要があります。超過トラフィックがある場合(つまり使用率が 80 % を超える場合)は、重要ではないトラフィックをパブリック L3 VPN に切り替える必要があります。

1. トラフィックの識別

トラフィックには 2 種類あります。重要なアプリケーション(音声やビデオ)とそれ以外のトラフィックです。異なるポリシーを適用するには、2 つの学習リストを設定する必要があります。1 つの学習リストはアプリケーションを識別し(ここでは dscp af41 を基にします)、もう 1 つは残りのトラフィックを学習します。

2. ポリシー パラメータの決定

  • 重要ではないトラフィックの場合、唯一の変更は帯域使用率の優先度の追加です。MPLS リンクの使用率が 80 % を超える場合、重要ではない超過トラフィックを DMVPN リンクに移動することをお勧めします。
  • 重要なアプリケーション向けには、別のポリシー(MAP-TEST2 10)が作成されます。
  • 損失しきい値は 100 万パケットあたり 5 万パケット(5 %)に設定されます。損失が 5 % を超えると、ビデオ品質が大幅に低下します。たとえば、緊密にインターリーブされた 100 個のプローブ パケットのうち 5 個のパケットがドロップした場合、損失測定値は 5 %(100 万パケットあたり 5 万パケット)になります。
  • 30 ミリ秒を超えるジッターがあると、ビデオ品質が低下します。
  • 遅延しきい値は 300 ミリ秒に設定されます。これは、それよりも大きな遅延があると、ビデオ会議のユーザ体感品質が低下するおそれがあるためです。
  • 優先度は、各メトリックがビデオに与える影響に基づいて、損失、ジッター、遅延の順に設定されます。
  • ジッター プローブのみが損失、ジッター、遅延を測定できるため、プローブ タイプはジッターです。
  • 残りの設定は、重要ではないトラフィックのポリシーと非常に似ています。

次に、本社の MC ルータの PfR 設定を示します。

コンフィギュレーション

! Following is a learn list configuration for video application 
! specific to one branch.
! This should be repeated for each branch. It includes
! - Here Video (assuming it is marked as af41) is learned using
!   access-list DSCP_VIDEO and brach specific filter BRANCH1_PREFIX.
! - Every thing else remains the same. 
! This configuration will learn following traffic-class
! 10.32.240.136/32 dscp af41
! 10.32.240.137/32 dscp af41
! 10.32.240.138/32 dscp af41
! 10.32.240.139/32 dscp af41
! 10.32.240.140/32 dscp af41
! 10.32.240.141/32 dscp af41
! 10.32.240.142/32 dscp af41
! 10.32.240.143/32 dscp af41
oer master
 learn
  list seq 10 refname LEARN_LIST_BRANCH1_VIDEO
   traffic-class access-list DSCP_VIDEO filter BRANCH1_PREFIX
   aggregation-type prefix-length 32
   throughput
! ACCESS-LIST and PREFIX-LIST FOR VIDEO
ip access-list extended DSCP_VIDEO
 permit ip any any dscp af41
ip prefix-list BRANCH1_PREFIX seq 5 permit 10.32.240.136/29
--------------------------------------------------------------------------------------
! Following is a policy configuration video application specific to one branch.
! This should be repeated for each branch. It includes
! - match command is to specify that this policy should be applied
!   to all the traffic-class learned under list LEARN_LIST_BRANCH1_VIDEO.
!
! - delay threshold is configured as 300 msec. The delay measured by PfR is
!   Round-Trip-Time. For video conference delay higher than 150 ms one-way
!   decreases the Qualit-of-Experience.
!
! - Loss is set to 50,000 (packets-per-million). i.e 5%
!
! - Resolver setting is configure to set the priority in the order of
!   loss, jitter and delay. Range and utilization are DISABLED for video application.
!
! - Jitter probe is configured to measure loss and jitter. Codec configuration is
!   to simulate the packet as close to that codec as possible. Three probes are
!   configured for better estimation. Just like udp-echo probe jitter probe sends
!   control packet followed by probe packet. If control packet fails then probe
!   packets are not sent at all. If one probe is used then loss control packet
!   results into no loss data or no jitter data.
!
! - Probe packets are set to 20 to reduce the probe traffic.
!   Instead of configuring 1 probe with  60 probe packet it is better to configure
!   3 probes with 20 probe packets (resulting into same number of total probe packet)
! Performace POLICY
oer-map MAP-TEST2 10
 match oer learn list LEARN_LIST_BRANCH1_VIDEO
 set periodic 90
 set delay threshold 300
 set loss threshold 50000
 set jitter threshold 30
 set mode monitor fast
 set resolve loss priority 2 variance 5
 set resolve jitter priority 3 variance 5
 set resolve delay priority 4 variance 5
 no set resolve range
 no set resolve utilization
 set link-group MPLS fallback DMVPN
 set probe frequency 4
 set active-probe jitter 10.32.240.137 target-port 2002 codec g729a
 set active-probe jitter 10.32.240.137 target-port 2001 codec g729a
 set active-probe jitter 10.32.240.137 target-port 2000 codec g729a
oer master
 probe packets 20
--------------------------------------------------------------------------------------
! A learn list configuration for non-video traffic specific to one branch.
! There is no difference from previous test case.
oer master
 learn
  list seq 20 refname LEARN_LIST_BRANCH1_PREFIX
   traffic-class prefix-list BRANCH1_PREFIX
   aggregation-type prefix-length 32
   throughput
! PREFIX-LIST
ip prefix-list BRANCH1_PREFIX seq 5 permit 10.32.240.136/29
--------------------------------------------------------------------------------------
! - monitor mode is set to ‘active throughput’ instead of ‘fast’. For non-critical
!   traffic it is not necessary to switchover quickly. By changing to
!   ‘active throughput’ mode probed traffic is reduced because it only probes
!   current exit most of the time.
! - Probe frequence can also be changed to a higher value.
oer-map MAP-TEST2 20
 match oer learn list LEARN_LIST_BRANCH1_PREFIX
 set periodic 90
 set unreachable threshold 200000
 set mode monitor active throughput
 set resolve utilization priority 2 variance 10
 no set resolve delay
 no set resolve range
 set link-group MPLS fallback DMVPN
 set probe frequency 4
 set active-probe udp-echo 10.32.240.137 target-port 3000
 set active-probe udp-echo 10.32.240.137 target-port 3001}

2.3 PfR トラフィック クラスに基づくルーティングのテスト事例


まとめ

このテストの目的は、MPLS リンクをビデオなどの重要なアプリケーションのプライマリ リンクとして使用し、DMVPN リンクを重要ではないアプリケーションのプライマリ リンクとして使用することです。ただし、MPLS リンクのパフォーマンスが悪い(損失が 5 % を超える)場合は、重要なアプリケーションを DMVPN に移動することをお勧めします。同様に、DMVPN の使用率が 80 % を超える場合、十分な帯域幅があれば、重要ではない超過トラフィックを MPLS に移動します。この設定を使用することで、重要なトラフィックと重要ではないトラフィックを分散させることにより、DMVPN リンクをより効率的に使用できます。

1. トラフィックの識別

前のテスト事例と同じです。

2. ポリシー パラメータの決定

  • 2 つの変更があります。前のテスト事例からの 1 つ目の変更点は、重要ではないアプリケーション トラフィックのプライマリ リンクとフォールバック リンクが入れ替わっていることです。つまり、DMVPN がプライマリで MPLS がフォールバックになります。2 つ目の変更点は、モニタ モードのアクティブ スループットを使用していることです。
  • 重要なアプリケーションのポリシーに変更はありません。

コンフィギュレーション

! Config on HQ
! 80% Threshold is set on DMVPN link.
oer master
 border 10.32.231.163 key-chain PFR-SOL-TEST
  interface Tunnel20 external
   max-xmit-utilization percent 80
oer-map MAP-TEST3 10
 match oer learn list LEARN_LIST_BRANCH1_VIDEO
 set periodic 90
 set delay threshold 100
 set loss threshold 50000
 set jitter threshold 30
 set mode monitor fast
 set resolve loss priority 2 variance 5
 set resolve jitter priority 3 variance 5
 set resolve delay priority 4 variance 5
 no set resolve range
 no set resolve utilization
 set link-group MPLS fallback DMVPN 
 set probe frequency 4
 set active-probe jitter 10.32.240.137 target-port 2001 codec g729a
 set active-probe jitter 10.32.240.137 target-port 2002 codec g729a
 set active-probe jitter 10.32.240.137 target-port 2000 codec g729a
oer master
 probe packet 20
--------------------------------------------------------------------------------------
! - monitor mode is set to ‘active throughput’ instead of ‘fast’. For non-critical
!   traffic it is not necessary to switchover quickly. By changing to
!   ‘active throughput’ mode probed traffic is reduced because it only probes
!   current exit most of the time.
! - Probe frequence can also be changed to a higher value.
oer-map MAP-TEST3 20
 match oer learn list LEARN_LIST_BRANCH1_PREFIX
 set periodic 90
 set unreachable threshold 200000
 set mode monitor active throughput
 set resolve utilization priority 2 variance 10
 no set resolve delay
 no set resolve range
 set link-group DMVPN fallback MPLS
 set probe frequency 4
 set active-probe udp-echo 10.32.240.137 target-port 3001
 set active-probe udp-echo 10.32.240.137 target-port 3000

3 確認


このテストは、2 つの show コマンドを使用して確認します。

show oer master traffic-class

このコマンドは、すべてのトラフィック クラスに関する現在の情報を表示します。これには、トラフィック クラスがルーティングされる現在の出口と、トラフィック クラスに関連付けられたパフォーマンス メトリックが含まれます。

  • トラフィック クラスの状態は、別の出口に移動した後、HOLDDOWN に変更されます。
  • トラフィック クラスのパフォーマンスが設定されたしきい値内にある場合、状態は INPOLICY に設定されます。

状態と現在の出口フィールドは確認を行うために使用します。

show log

このコマンドは、ルータのコンソール ロギングを表示します。PfR は、Out-of-Policy(OOP; ポリシー違反)イベントが発生するか、ルート変更が発生した場合、syslog メッセージをコンソールに出力します。下の例には、テストを確認するため、これらのメッセージも含まれています。

注:これらのメッセージのロギングを有効にするには、「oer master」で「logging」を設定する必要があります。

3.1 本社 MC での確認


次のコマンドは、テスト事例 1 の PfR の動作を確認します。

MC#show oer master traffic-class
OER Prefix Statistics:
 Pas - Passive, Act - Active, S - Short term, L - Long term, Dly - Delay (ms),
 P - Percentage below threshold, Jit - Jitter (ms),
 MOS - Mean Opinion Score
 Los - Packet Loss (packets-per-million), Un - Unreachable (flows-per-million),
 E - Egress, I - Ingress, Bw - Bandwidth (kbps), N - Not applicable
 U - unknown, * - uncontrolled, + - control more specific, @ - active probe all
 # - Prefix monitor mode is Special, & - Blackholed Prefix
 % - Force Next-Hop, ^ - Prefix is denied
DstPrefix           Appl_ID Dscp Prot     SrcPort     DstPort SrcPrefix
                         Flags         State     Time    CurrBR  CurrI/F Protocol
         PasSDly  PasLDly   PasSUn   PasLUn  PasSLos  PasLLos      EBw      IBw
         ActSDly  ActLDly   ActSUn   ActLUn  ActSJit  ActPMOS  ActSLos  ActLLos
--------------------------------------------------------------------------------
10.32.240.138/32          N    N    N           N           N N
                          INPOLICY      @57     10.32.231.162       Fa0.1    RIB-PBR
               U        U        0        0        0        0       14        0
               3        3        0        0        N        N        N        N
10.32.240.141/32          N    N    N           N           N N
                          INPOLICY      @60     10.32.231.162       Fa0.1    RIB-PBR
               U        U        0        0        0        0      165      222
               3        3        0        0        N        N        N        N

電圧低下状態の後、トラフィックは Tunnel 20(DMVPN)に移動します。

*Oct  8 22:53:31.995: %OER_MC-5-NOTICE: Route changed Prefix 10.32.240.141/32, 
BR 10.32.231.163, i/f Tu20, Reason Unreachable, OOP Reason Unreachable
*Oct  8 22:56:14.831: %OER_MC-5-NOTICE: Route changed Prefix 10.32.240.138/32, 
BR 10.32.231.163, i/f Tu20, Reason Unable to probe, OOP Reason Unreachable

次の show oer master traffic-class による CLI 表示に示すように、Tunnel 20 インターフェイスは HOLDDOWN 状態に設定されています。


10.32.240.138/32          N    N    N           N           N N
                          HOLDDOWN      @22     10.32.231.163      Tu20       RIB-PBR
               U        U        0        0        0        0       20        0
               2        2        0        0        N        N        N        N
10.32.240.141/32          N    N    N           N           N N
                          HOLDDOWN      @28     10.32.231.163      Tu20       RIB-PBR
               U        U        0        0        0        0       67      174
               2        2        0        0        N        N        N        N

ボーダルータでは、トラフィック クラスを制御するために、ダイナミック ルートマップとダイナミック アクセスリストが作成されます。

BR1#show route-map dynamic 
route-map OER_INTERNAL_RMAP, permit, sequence 0, identifier 3539992579
  Match clauses:
    ip address (access-lists): oer#1 
  Set clauses:
    ip next-hop 10.7.12.8
    interface Tunnel20
  Policy routing matches: 305030 packets, 123481090 bytes
Current active dynamic routemaps = 1
manis-spoke#show ip access-lists dynamic                   
Extended IP access list oer#1
    1073741823 permit ip any host 10.32.240.138 (138719 matches)
    1073741823 permit ip any host 10.32.240.141 (166311 matches)

次の show oer master traffic-class による CLI 表示に示すように、Tunnel 20 インターフェイスは、HOLDDOWN タイマーが期限切れになった後、INPOLICY 状態に設定されます。

10.32.240.138/32          N    N    N           N           N N
                          INPOLICY      @10     10.32.231.163      Tu20       RIB-PBR
               U        U        0        0        0        0       31        0
               2        2        0        0        N        N        N        N
10.32.240.141/32          N    N    N           N           N N
                          INPOLICY      @17     10.32.231.163 Tu20            RIB-PBR
               U        U        0        0        0        0      101      120
               2        2        0        0        N        N        N        N

電圧低下状態から回復した後、MPLS ネットワーク経由でルーティングされるトラフィック

*Oct  8 23:09:52.471: %OER_MC-5-NOTICE: Route changed Prefix 10.32.240.141/32, 
BR 10.32.231.162, i/f Fa0.1, Reason None, OOP Reason Timer Expired
*Oct  8 23:10:58.303: %OER_MC-5-NOTICE: Route changed Prefix 10.32.240.138/32, 
BR 10.32.231.162, i/f Fa0.1, Reason None, OOP Reason Timer Expired

次の show oer master traffic-class による CLI 表示に示すように、MPLS に接続されているインターフェイスは INPOLICY 状態に設定されます(HOLDDOWN 状態後)。

10.32.240.138/32          N    N    N           N           N N
                          INPOLICY      @77     10.32.231.162   Fa0.1         RIB-PBR
               U        U        0        0        0        0       33        0
               2        2        0        0        N        N        N        N
10.32.240.141/32          N    N    N           N           N N
                          INPOLICY       @7     10.32.231.162    Fa0.1        RIB-PBR
               U        U        0        0        0        0       85      135
               2        2        0        0        N        N        N        N

3.2 ブランチ MC での確認


このテストでは、確認用に syslog メッセージのみが含まれています。最初のメッセージが、損失が原因でトラフィック クラスが OOP になったことを示し、次のメッセージは、損失 OOP の結果としてのルート変更を示します。

*Oct 15 23:19:02.154: %OER_MC-5-NOTICE: Active ABS Loss OOP Appl Prefix 10.32.240.141/32 af41 256, 
loss 53304, BR 10.32.231.162, i/f Fa0.1
*Oct 15 23:19:02.358: %OER_MC-5-NOTICE: Route changed Appl Prefix 10.32.240.141/32 af41 256, 
BR 10.32.231.163, i/f Tu20, Reason Loss, OOP Reason Loss

4 制限事項

  1. 複数の BR がある場合、すべての BR を互いに直接接続する必要があります。
  2. MC がファイアウォールの背後にある場合、ポート 3949 をオープンして、MC と BR の間で通信チャネルを確立する必要があります。

5 基準となるルーティング設定


5.1 本社の BR1 のルーティング設定


次に、本社の BR1 ルータのルーティング設定を示します。

interface FastEthernet0
 ip address  10.32.148.208 255.255.255.248
interface FastEthernet0.1
 description outside interface
 bandwidth 1000
 encapsulation dot1Q 33
 ip address 10.32.178.34 255.255.255.252
 ip pim sparse-mode
 crypto map gdoi
interface FastEthernet1
 ip address 10.32.231.163 255.255.255.248
interface Tunnel20
 bandwidth 2000
 ip address 10.7.13.136 255.255.254.0
 no ip redirects
 ip mtu 1400
 ip pim nbma-mode
 ip pim sparse-dense-mode
 ip nhrp map multicast <IP address>
 ip nhrp map 10.7.12.8 <IP address>
 ip nhrp network-id 8800
 ip nhrp holdtime 300
 ip nhrp nhs 10.7.12.8
 ip nhrp registration no-unique
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 load-interval 30
 delay 2000
 qos pre-classify
 tunnel source FastEthernet0
 tunnel mode gre multipoint
 tunnel key 2048
 tunnel protection ipsec profile proftest
 !
!        	
router eigrp 7
 ! AS for network towards SP
 network 10.7.12.0 0.0.1.255
 redistribute eigrp 80 route-map LAN
 passive-interface default
 no passive-interface Tunnel20
!
router eigrp 80
 ! AS for LAN network
 network 10.32.231.160 0.0.0.7
 redistribute eigrp 7
 passive-interface default
 no passive-interface FastEthernet1
!
ip access-list standard LAN_ACL
 permit 10.32.231.160 0.0.0.7
 permit 10.32.241.56 0.0.0.7
!
route-map LAN permit 10
 match ip address LAN_ACL
!

5.2 本社の BR2 のルーティング設定


次に、本社の BR2 ルータのルーティング設定を示します。

interface FastEthernet0.1
 description outside interface
 encapsulation dot1Q 33
 ip address 10.32.178.34 255.255.255.252
 ip pim sparse-mode
 ...
interface FastEthernet1
 ip address 10.32.231.162 255.255.255.248
 ...
!
router eigrp 80
 default-metric 4000 100 255 1 1500
 network 10.32.231.160 0.0.0.7
 redistribute bgp 65002
 passive-interface default
 no passive-interface FastEthernet1
!
router bgp 65002
 bgp router-id 10.32.178.34
 bgp log-neighbor-changes
 neighbor 10.32.178.33 remote-as 65001
 !
 address-family ipv4
  no synchronization
  network 10.32.176.8 mask 255.255.255.248
  redistribute eigrp 80 route-map LAN
  neighbor 10.32.178.33 activate
  ... 
!
ip access-list standard LAN_ACL
 permit 10.32.231.160 0.0.0.7
 permit 10.32.241.56 0.0.0.7
!
route-map LAN permit 10
 match ip address LAN_ACL
!

5.3 本社の D(ディストリビューション ルータ)のルーティング設定


次に、本社のディストリビューション ルータのルーティング設定を示します。

ip dhcp pool client_vlan20
   network 10.32.231.160 255.255.255.248
   domain-name cisco.com
   dns-server <IP address> 
   default-router 10.32.231.161 
!
ip dhcp pool client_vlan30
   network 10.32.241.56 255.255.255.248
   domain-name cisco.com
   dns-server <IP address> 
   default-router 10.32.241.57 
!
interface FastEthernet2
 switchport access vlan 20
 spanning-tree portfast
 !
!
interface FastEthernet3
 switchport access vlan 30
 spanning-tree portfast
 !
!
interface FastEthernet4
 switchport access vlan 20
 spanning-tree portfast
 !
!
interface FastEthernet5
 switchport access vlan 30
 spanning-tree portfast
!
interface FastEthernet6
 switchport access vlan 30
 spanning-tree portfast
! 
interface Vlan20
 ip address 10.32.231.161 255.255.255.248
 ip flow egress
 ip pim sparse-mode
 !                 
interface Vlan30
 ip address 10.32.241.57 255.255.255.248
 ip pim sparse-mode
 !
router eigrp 80
 network 10.32.231.160 0.0.0.7
 network 10.32.241.56 0.0.0.7
!         
ip sla responder ??? <any other place or node this need to be defined)

5.4 ブランチ ルータの PfR およびルーティング設定


次に、ブランチの MC/BR ルータの RfR およびルーティング設定を示します。

ip sla
ip dhcp pool client_vlan20
   network 10.32.240.136 255.255.255.248
   domain-name cisco.com
   dns-server  <IP address> 
   default-router 10.32.240.137 
   netbios-name-server <IP address> 
   option 150 ip <IP address>
!
key chain PFR-SOL-TEST
 key 1    
  key-string 7 041159160A334A5C1D1E
oer master
 policy-rules BR-MAP-TEST3
 no max-range-utilization
 logging  
 !        
 border 10.32.240.137 key-chain PFR-SOL-TEST
  interface Tunnel20 external
   link-group DMVPN
  interface FastEthernet0.1 external
   link-group MPLS
  interface Vlan30 internal
 !        
 learn    
  throughput
  delay   
  periodic-interval 0
  monitor-period 1
  traffic-class filter access-list DENY_GLOBAL_LEARN_LIST
  list seq 10 refname LEARN_LIST_HQ_VIDEO
   traffic-class access-list DSCP_VIDEO filter HQ_PREFIX
   aggregation-type prefix-length 32
   throughput
  list seq 20 refname LEARN_LIST_HQ_PREFIX
   traffic-class prefix-list HQ_PREFIX
   aggregation-type prefix-length 32
   throughput
 max prefix total 100
 holddown 90
 backoff 90 3000 300
 mode route protocol pbr
 mode route control
 probe packets 20
!         
oer border
 logging  
 local Vlan30
 master 10.32.240.137 key-chain PFR-SOL-TEST
!
interface FastEthernet0.1
 encapsulation dot1Q 10
 ip address 10.32.178.98 255.255.255.252
 ip pim sparse-mode
 crypto map getvpn-map1
!
interface FastEthernet1
 no ip dhcp client request tftp-server-address
 ip address dhcp
 duplex auto
 speed auto
!
interface Tunnel20
 bandwidth 2000
 ip address 10.7.13.133 255.255.254.0
 no ip redirects
 ip mtu 1400
 ip pim nbma-mode
 ip pim sparse-dense-mode
 ip nhrp map multicast <IP address>
 ip nhrp map 10.7.12.8 <IP address>
 ip nhrp network-id 8800
 ip nhrp holdtime 300
 ip nhrp nhs 10.7.12.8
 ip nhrp registration no-unique
 ip nhrp shortcut
 ip nhrp redirect
 ip tcp adjust-mss 1360
 load-interval 30
 delay 2000
 qos pre-classify
 tunnel source FastEthernet1
 tunnel mode gre multipoint
 tunnel key 2048
 tunnel protection ipsec profile proftest
!         
interface Vlan30
 ip address 10.32.240.137 255.255.255.248
 ip pim sparse-mode
 no autostate
!
router eigrp 7
 network 10.7.12.0 0.0.1.255
 network 10.32.240.136 0.0.0.7
 passive-interface default
 no passive-interface Tunnel20
!         
router bgp 65002
 bgp router-id 10.32.178.98
 bgp log-neighbor-changes
 neighbor 10.32.178.97 remote-as 65001
 !        
 address-family ipv4
  no synchronization
  network 10.32.176.152 mask 255.255.255.248
  network 10.32.240.136 mask 255.255.255.248
  neighbor 10.32.178.97 activate
  no auto-summary
 exit-address-family
!
oer-map BR-MAP-TEST1 10
 match oer learn list LEARN_LIST_HQ_PREFIX
 set periodic 90
 set mode monitor fast
 set resolve utilization priority 2 variance 10
 no set resolve delay
 no set resolve range
 set unreachable threshold 200000
 set active-probe udp-echo 10.32.241.57 target-port 3000
 set active-probe udp-echo 10.32.241.57 target-port 3001
 set probe frequency 4
 set link-group MPLS fallback DMVPN
!
oer-map BR-MAP-TEST2 10
 match oer learn list LEARN_LIST_HQ_VIDEO
 set periodic 90
 set delay threshold 300
 set loss threshold 50000
 set jitter threshold 30
 set mode monitor fast
 set resolve loss priority 2 variance 5
 set resolve jitter priority 3 variance 5
 set resolve delay priority 4 variance 5
 no set resolve range
 no set resolve utilization 
 set active-probe jitter 10.32.241.57 target-port 2001 codec g729a
 set active-probe jitter 10.32.241.57 target-port 2002 codec g729a
 set probe frequency 4
 set link-group MPLS fallback DMVPN
!
oer-map BR-MAP-TEST2 20
 match oer learn list LEARN_LIST_HQ_PREFIX
 set periodic 90
 set mode monitor fast
 set resolve utilization priority 2 variance 10
 no set resolve delay
 no set resolve range
 set unreachable threshold 200000
 set active-probe udp-echo 10.32.241.57 target-port 3001
 set active-probe udp-echo 10.32.241.57 target-port 3000
 set probe frequency 4
 set link-group MPLS fallback DMVPN
!
oer-map BR-MAP-TEST3 10
 match oer learn list LEARN_LIST_HQ_VIDEO
 set periodic 90
 set delay threshold 300
 set loss threshold 50000
 set jitter threshold 30
 set mode monitor fast
 set resolve loss priority 2 variance 5
 set resolve jitter priority 3 variance 5
 set resolve delay priority 4 variance 5
 no set resolve range
 no set resolve utilization
 set active-probe jitter 10.32.241.57 target-port 2002 codec g729a
 set active-probe jitter 10.32.241.57 target-port 2001 codec g729a
 set probe frequency 4
 set link-group MPLS fallback DMVPN
!
oer-map BR-MAP-TEST3 20
 match oer learn list LEARN_LIST_HQ_PREFIX
 set periodic 90
 set mode monitor fast
 set resolve utilization priority 2 variance 10
 no set resolve delay
 no set resolve range
 set unreachable threshold 200000
 set active-probe udp-echo 10.32.241.57 target-port 3000
 set active-probe udp-echo 10.32.241.57 target-port 3001
 set probe frequency 4
 set link-group DMVPN fallback MPLS
!         
ip sla responder
!
ip access-list extended CSM_GET_GM_CRYPTO_ACL_1
 deny   ip 10.32.176.0 0.0.0.255 host 10.32.178.23
 deny   ip 10.32.176.0 0.0.0.255 host 10.32.178.56
 deny   ip any host 239.192.1.190
ip access-list extended DENY_GLOBAL_LEARN_LIST
 deny   ip any any
ip access-list extended DSCP_VIDEO
 permit ip any any dscp af41
!
ip prefix-list HQ_PREFIX seq 5 permit 10.32.241.56/29

6 便利な PfR コマンド


次の PfR コマンドは、動作を確認し問題をデバッグするために使用できます。

MC show コマンド


1. show oer master

PfR マスター コントローラの全般的なステータスを表示します。MC が動作しているかどうかや、学習のステータスなどを確認するために使用します。

2. show oer master learn list

学習リストのステータスと、各学習リストで学習したトラフィック クラスを表示します。学習が機能しているかどうかを確認するのに便利です。

3. show oer master border detail

Tx 使用率、Rx 使用率などのリンクの詳細を表示します。リンクがしきい値内かどうかを確認するのに便利です。

MC debug コマンド


1. debug oer master prefix [detail]

送信先プレフィクスに基づくトラフィック クラス(非アプリケーション)に関連付けられたデバッグ メッセージを表示します。

2. debug oer master prefix appl [detail]

アプリケーション トラフィック クラス(プレフィクス + dscp、プレフィクス + ポートなど)に関連付けられたデバッグ メッセージを表示します。

BR show コマンド


1. show oer border passive learn

マスターから送信された学習リストの設定を表示します。データは学習サイクルが進行中の場合のみ表示されます。

2. show oer border active

各出口で動作しているアクティブ プローブを表示します。

3. show ip access-list dynamic

ルート制御を適用するために PfR によって動的に作成されたアクセスリストを表示します。このコマンドの出力は、「show route-map dynamic」の出力と組み合わせて使用する必要があります。

4. show route-map dynamic

ルート制御を適用するために PfR によって動的に作成されたルートマップを表示します。このコマンドの出力は、「show ip access-list dynamic」の出力と組み合わせて使用する必要があります。このコマンドは、トラフィック クラスが正しい外部インターフェイス経由でルーティングされているかどうかを確認するために使用します。複数の BR がある場合、トラフィックは、ダイナミック PBR(アクセスリスト + ルートマップ)を使用して、BR1 から内部インターフェイス上の別の BR2 へ、そして BR2 上の外部インターフェイスへと転送される可能性があります。

7 ソフトウェア バージョン


このソリューションをテストするためには、次の IOS ソフトウェア バージョンを使用します。

PfR マスター コントローラ:15.0(1)M4

PfR ボーダー:15.0(1)M4

8 参考資料

9 用語集


次に、このドキュメント全体で使用している用語の略語と定義を示します。

GET VPN Group Encrypted Transport。グループ テクノロジーを使用したスケーラブルな VPN

DMVPN Dynamic Multipoint Virtual Private Network(ダイナミック マルチポイント バーチャル プライベート ネットワーク)

PfR Performance Routing(パフォーマンス ルーティング)

MC Master Controller(マスター コントローラ)

BR Border Router(ボーダルータ)

お問い合わせ