LDP(Label Distribution Protocol)グレースフルリスタートは、コントロール プレーン メカニズムを提供して、ハイアベイラビリティを保証し、ノンストップ フォワーディング(NSF)サービス中に障害を検出しリカバリできるようにします。グレースフルリスタートは、フォワーディングに影響を与えずに、シグナリングおよびコントロールプレーンの障害から回復する方法です。
LDP グレースフルリスタートを使用しない場合、確立されたセッションで障害が発生すると、対応するフォワーディングステートが、リスタートおよびピアノードからすぐに消去されます。この場合、LDP フォワーディングは、最初から再起動するので、データおよび接続が失われる可能性があります。
LDP グレースフルリスタート機能は、セッション初期化中に FT SESSION TLV で 2 つのピア間でネゴシエーションされます。この Typed Length Value(TLV)では、各ピアは、次の情報をピアにアドバタイズします。
再接続時間
この LSR がコントロールチャネル障害後に再接続するまで他のピアが待機する最大時間をアドバタイズします。
回復時間
他のピアがこの LSR を復元またはリフレッシュする最大時間をアドバタイズします。この時間は、先行のセッション障害後のセッション再確立中のみに使用されます。
FT フラグ
再起動により、このフラグの保存(ローカル)ノードの ステートを復元できるかどうかを指定します。
グレースフル リスタート セッション パラメータが伝達され、セッションが起動し動作していると、グレースフルリスタート手順がアクティブになります。
マルチリンク、または同じネイバーの targeted LDP hello 隣接、あるいはこれら両方のネットワークで LDP グレースフル リスタート プロセスを設定する場合、ネイバー コントロール プレーン障害時に任意の hello 隣接がタイムアウトになる前に、グレースフルリスタートがセッションでアクティブになっていることを確認します。これをアクティブにするには、たとえば、セッションタイムアウトが
hello 隣接タイムアウトの前に発生するように、ネイバー間のセッション保持時間を低く設定します。LDP セッション保持時間は、次の式を使用して設定することを推奨します。
Session Holdtime <= (Hello holdtime - Hello interval) * 3
たとえば、リンク hello の保持時間およびインターバルがそれぞれデフォルト値の 15 秒および 5 秒である場合、セッション保持時間は、30 秒以下に設定します。
グレースフルリスタートのフレーズ
グレースフル リスタート メカニズムは、次のフェーズに分かれます。
制御通信障害の検出
システムが次のいずれかの状況を検出したときに、制御通信障害が検出されます。
障害時のフォワーディング ステート メンテナンス
各 LSR での永続的フォワーディングステートは、LDP コントロールプレーンにより、永続的ストレージ(チェックポイント)を介してアーカイブされます。コントロールプレーンのリカバリ中、フォワーディングプレーンは、フォワーディングステートを保持しますが、ステイルマークを付けます。同様に、ピアコントロールプレーンも(ステイルマークを付けて)再起動中のノードに関連付けられているインストール済みフォワーディングを保持します。ローカル
ノード フォワーディングとリモート ノード フォワーディングのプレーンステートを組み合わせることで、NSF を保証し、トラフィックの損失を防ぎます。
制御ステートのリカバリ
リカバリは、セッションが再確立され、ラベルバインディングが再び交換されるときに発生します。このプロセスにより、ピアノードは、ステイル フォワーディング ステートを同期化およびリフレッシュできます。
コントロールプレーンの障害
コントロールプレーン障害は、接続に影響します。ルータ コントロール プレーンによりインストールされたフォワーディングステートが失われ、転送中パケットがドロップされ、NSF が損失する可能性があります。次の図に、コントロールプレーン障害とグレースフルリスタートによるリカバリを示し、接続の損失につながるコントロールプレーン障害の処理と結果、およびグレースフルリスタートを使用したリカバリについて説明します。
図 3. コントロールプレーンの障害
グレースフルリスタートによるリカバリ
図 4. グレースフルリスタートでのリカバリ
R4 LSR コントロールプレーンが再起動します。
コントロールプレーンが再起動すると、LIB が失われます。
R4 LDP コントロールプレーンによりインストールされたフォワーディングステートがすぐに削除されます。
R3 から R4(ラベルはまだ L4)への転送中の任意のパケットが R4 に到着します。
R4 の MPLS フォワーディングプレーンが、ローカルラベル L4 でルックアップを実行しますが失敗します。これにより、パケットがドロップされ、NSF が満たされなくなります。
R3 LDP ピアが、コントロール プレーン チャネルの障害を検出して、そのラベルバインディングを R4 から削除します。
R3 コントロールプレーンは、R4 からの出ラベルの使用を停止し、対応するフォワーディング ステート(リライト)を削除します。これにより、フォワーディングが失敗します。
R4 に接続されている確立済み LSP は、R3 で終端し、R1 から R4 へのエンドツーエンド LSP が終了します。
R4 に接続されている確立済み LSP は、R3 で終端し、R2 から R4 へのエンドツーエンド LSP が終了します。
LDP コントロールプレーンがリカバリすると、リスタート LSR は、そのフォワーディングステートの保持タイマーを開始し、フォワーディングステートをチェックポイントデータから復元します。これにより、フォワーディングステートおよびエントリが復元され、オールドマークが付けられます。
リスタート LSR は、正常に復元されたかどうかに関係なく、FT セッション TLV に示されているピアに再接続します。ステートが復元できた場合、バインディングは再び同期化されます。
リスタートピアが接続し、ネイバーリカバリタイマーを開始すると、ピア LSR は、(リスタート LSR により開始された)ネイバー再接続タイマーを停止します。ピア LSR は、リスタートピアがそのステートを正常に復元できた場合、FT セッション
TLV をチェックします。次に、対応するフォワーディング ステート エントリを復元し、リスタートピアからバインディングを受信します。リカバリタイマーが失効すると、任意のフォワーディングステート(この段階ではステイルマークが付いています)が削除されます。
リスタート LSR が復元(再起動)に失敗した場合、リスタート LSR フォワーディングステートおよびエントリは、タイムアウトになり削除されます。ネイバー関連のフォワーディングステートまたはエントリは、再接続またはリカバリタイマーが失効すると、ピア
LSR により削除されます。