概要
このドキュメントでは、IP Fast Reroute(FRR)がLabel Distribution Protocol(LDP)ベースのネットワークで高速リカバリ方式を提供する方法について説明します。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
これは実装が非常に簡単です。Loop Free Alternate(LFA)は、マルチプロトコルラベルスイッチング(MPLS)FRRに似ています。たとえば、バックアップネクストホップをフォワーディングプレーンに事前にインストールします。LFAはプロトコル拡張を導入せず、ルータ単位で実装できるため、非常に魅力的なオプションです。
MPLSについて
FRRオプション:
Loop Free Alternate(LFA)FRRは、ループフリーの代替パスを事前に計算し、フォワーディング場所にインストールします。LFAは、ルートに基づいて等価で計算されます。
LFA:
不等式1:D(N,D) < D(N,S) + D(S,D)
最適なパスがローカルルータを経由していないため、パスはループフリーです。バックアップのネクストホップに送信されたトラフィックはSに送り返されません。
ダウンストリームパス:
不等式2:D(N,D) < D(S,D)
ネイバールータがローカルルータよりも宛先に近い。複数の障害が発生した場合でも、ループフリーが保証されます(すべての修復パスがダウンストリームパスの場合)。
ノード保護:
不等式3: D(N,D) < D(N,E) + D(E,D) DへのNパスはEを通過してはならない。
ノードNからプライマリネクストホップを経由するプレフィクスまでの距離は、ノードNからプレフィクスまでの最適な距離よりも厳密に大きくなります。
ブロードキャストリンクのループフリーリンク保護:
不等式4:D(N,D)<D(N,PN)+D(PN,D)
SからNへのリンクは、保護されたリンクと同じであってはいけません。
NからDへのリンクは、保護されたリンクと同じであってはいけません。
LFAおよびrLFAの利点:
- 設定の簡素化
- リンクとノードの保護
- リンクとパスの保護
- LFAパス
- IPとLDPの両方をサポート
- LFA FRRは、等コストマルチパス(ECMO)でサポートされます
LFAおよびrLFAの短所:
- LDPはあらゆる場所で有効にする必要がある
- Enabled Target LDP everywhere
- MPLS以外のトンネルメカニズムはサポートされていません
- PQノードはリンクだけを保護し、ノードは保護しません
- PQノードの計算は、保護可能なプレフィックスに対して保護されていないパスがある場合にのみ実行されます
- PQノードへのターゲットLDPセッションは、まだ何も存在しない場合にのみ構築されます
- リンクごとのリモートLFAがない
リモートLFA(rLFA):
LFAは完全なカバレッジを提供せず、トポロジに大きく依存します。理由は単純です。たとえば、多くの場合、ネクストホップをバックアップするために、ベストパスはルータを通過し、バックアップのネクストホップを計算します。
この問題は、計算を行うルータから1ホップ以上離れたルータが見つかり、このルータから、障害が発生したリンクを通過しない宛先にトラフィックが転送された後、そのルータにパケットをトンネリングできる場合に解決できます。
このような種類のマルチホップ修復パスは、シングルホップ修復パスよりも複雑です。パスが(最初に)存在するかどうかを判断するための計算と、パケットをそのホップに送信するメカニズムが必要になるためです。
Point of Presence(POP)の詳細については、上記のリング構造に従ったリングトポロジ。
R3は不等式# 1(3 < 1 + 2)を満たしません。したがって、R3のベストパスは障害が発生したリンクを経由します。
障害が発生したリンクを通過しない宛先にトラフィックが転送されるノードが見つかり、そのノードにトラフィックが送信された場合は、ループを引き起こさないFRRを実現できます。
Pスペース:
保護されたリンクに関するルータのPスペースは、その特定のルータから到達可能な一連のルータです。この場合、保護されたリンクを通過するパスは経由せず、プレコンバージェンス最短パスが使用されます。
Pスペースは、R2(S)- R1リンク(R3(Pスペース)およびR4(Pスペース)ノード)を使用せずにR2(送信元)が到達できるルータのセットです。
拡張Pスペース:
保護されたリンクに対して保護するルータの拡張Pスペースは、保護されたリンクに対する、そのネイバーのセット内のネイバーのPスペースの和です。これによって、そのネイバーのセット内のネイバーの、保護されたリンクに対するPスペースの和になります。
拡張Pスペースには、R2(直接のネイバー、R3)であるルータが含まれます。R2 - R1リンク(R4およびR5ノード)を使用せずに到達できます。拡張P-Spaceの背後にあるポイントは、カバレッジの拡大に役立つことです。
Qスペース:
保護されたリンクに対するルータのQスペースとは、パスなしで到達できる特定のルータ(ECMPスプリットを含む)とその保護されたリンクを通過するルータのセットです。
Q-Spaceには、R1、R5、およびR4ノードであるR2(S)R1リンクを使用せずに通常R6に到達するルータが含まれています。
PQ ノード:
拡張P空間とQ空間の両方を持つルータはPQノードです。
PQノードである任意のルータをリモートLFA候補にすることができます。R2(S)がパケットを送信できる候補ルータは、パケットを宛先に転送し、R2(S) R1リンクを通過しません。この場合、R4とR5はPQノードであり、R2(S)のリモートLFA候補と見なされます。
IPinIP、GRE、およびLDPなど、トラフィックをトンネリングする方法はさまざまです。ただし、最も一般的な実装の形式はLDPトンネルです。
IPトラフィック保護の場合:
IPトラフィックを保護する場合、R2(S)はIPパケットの上にLDPラベルをプッシュして、R4(R2(S)パケットR4をリモートLFAノードと仮定)に到達します。R3はパケットを受信すると、通常のPHPの動作のため、パケットをプレーンIPパケットとしてR4に転送します。R4はR6宛てのパケットを受信すると(D)、R5ノードに向けてパケットをアップストリームに転送します。
LDPトラフィック保護の場合:
この場合、2つのLDPラベルで構成されるスタックがR2で使用されます。
外部LDPラベルxはR4に到達するためのラベルで、内部LDPラベルYはR4からR6(D)に到達するためのラベルです。
ここで問題となるのは、R4がLDPラベルYを使用してR6(D)にトラフィックを送信していることをR2(S)が認識する方法です。保護ノード間でPQノードが宛先(D)の転送に使用するラベルを認識するには、PQノードはPQノードとの間でターゲットLDPセッションを確立する必要があります。FECからラベルマッピングを取得するためのPQノード。 したがって、リモートLFAのすべてのノードでTLDPセッションを有効にする必要があります。
LFAに対するrLFAの利点:
- rLFAは、リングおよびメッシュトポロジのLFAカバレッジを改善します
- リモートトンネルエンドポイントが選択された場合の一貫性が向上する
- RSVPを使用し、運用および計算のオーバーヘッドを最小限に抑えることができます。
- RSVPはLFA/eLFAを補完するために使用でき、その逆も可能です
- MPLS LDPと組み合わせて使用すると、コントロールプレーンに追加のプロトコルは必要ありません
- MPLSのデータプレーンは、ラベルスタックを使用して、そこからPQノードにパケットをトンネリングします
- トラフィックは宛先に流れ、送信元に戻らず、保護されたリンクを通過しません
設定
ネットワーク図
設定
LDPトラフィックを保護するためのラボの詳細:
ISIS設定:
router isis 20
net 20.0000.0000.0005.00
is-type level-1
metric-style wide level-1
fast-reroute per-prefix level-1 route-map LFA >>>>>>>>>>> rLFA Configuration
fast-reroute remote-lfa level-1 mpls-ldp >>>>>>>>>>>>>>>>> rLFA Configuration
mpls ldp autoconfig level-1
MPLS必須設定:
mpls ldp explicit-null
fast-reroute remote-lfa level-1 mpls-ldp
mpls ldp router-id Loopback0
確認
ここでは、設定が正常に機能しているかどうかを確認します。
ISISのリモートLFAトンネルを表示するには、次の手順を実行します。
R1#show isis fast-reroute remote-lfa tunnels
Load for five secs: 0%/0%; one minute: 0%; five minutes: 0%
No time source, *11:28:59.528 UTC Wed Jan 3 2018
タグ20:FRRリモートLFAトンネル:
MPLS-Remote-Lfa1: use Gi2/0, nexthop 10.3.4.4, end point 10.0.0.5
MPLS-Remote-Lfa2: use Gi3/0, nexthop 10.3.3.3, end point 10.0.0.5
特定のプレフィックスのCisco IOSプログラミングを確認するには、CLIを実行します。
R1#show ip cef 10.0.0.5
Load for five secs: 0%/0%; one minute: 0%; five minutes: 0%
No time source, *11:32:04.857 UTC Wed Jan 3 2018
10.0.0.4/32
nexthop 10.31.32.32 GigabitEthernet3/0 label [17|17]
repair: attached-nexthop 10.3.4.4 GigabitEthernet2
nexthop 10.3.4.4 GigabitEthernet2/0 label [17|17]
repair: attached-nexthop 10.3.3.3 GigabitEthernet3
この出力では、プライマリとバックアップのラベル[17|17]をそれぞれ確認できます。修復パスはリモートLFAトンネルを経由します。すべてのプレフィックスをリモートLFAトンネルを使用して保護する必要はありません。ループの可能性に基づいて、LFAロジックは通常のバックアップパスまたはトンネル化されたバックアップパスのいずれかを選択します。
R1#show ip route repair-paths 10.0.0.8
Load for five secs: 1%/0%; one minute: 0%; five minutes: 0%
No time source, *11:39:07.467 UTC Wed Jan 3 2018
Routing entry for 10.0.0.81/32
Known via "isis", distance 115, metric 30, type level-1
Redistributing via isis 20
Last update from 10.3.4.4 on GigabitEthernet2/0, 1d12h ago
Routing Descriptor Blocks:
* 10.3.4.4, from 10.10.0.81, 1d12h ago, via GigabitEthernet2/0
Route metric is 30, traffic share count is 1
Repair Path: 10.10.0.42, via MPLS-Remote-Lfa2
[RPR]10.0.0.4, from 10.0.0.8, 1d12h ago, via MPLS-Remote-Lfa2
Route metric is 20, traffic share count is 1
トラブルシュート
現在のところ、この設定に関する特定のトラブルシューティング情報はありません。