BGP タイマーの管理

このページでは、次について説明します。

  • Cloud Router の BGP タイマーとその設定。オンプレミス ルーターで同じ設定を構成するためのガイダンスも含まれます。
  • Cloud Router の BGP キープアライブの間隔の更新。

BGP タイマーと設定

Cloud Router とオンプレミス ルーターは、次のタイマー設定を使用して通信を維持します。

キープアライブ タイマー

BGP システムは、キープアライブ メッセージを交換して、リンクまたはホストに障害が発生したか、使用できなくなったかを判断します。キープアライブ タイマーは、ホールド タイマーと一緒に使用し、ルーターが BGP ピアに到達できるかどうかを示します。

キープアライブ タイマーは、Cloud Router とそれに対応するオンプレミスのピアルーター間で交換される定期的な BGP メッセージ間の KEEPALIVE_INTERVAL です。この値は、BGP キープアライブ間隔の更新の説明に従って構成できます。デフォルト値は 20 秒です。Google Cloud では、オンプレミス ルーターと Cloud Router でキープアライブ タイマーを同じ値に設定することをおすすめします。

ホールド タイマー

このタイマーで、前回の正常なキープアライブ メッセージが検出された後の最低限必要な時間がトラックされます。これは、Cloud Router またはオンプレミス ルーターが他のルーターから学習したルートを削除する前に待機する必要がある時間の長さを示しています(グレースフル リスタートの通知は提供されません)。

Cloud Router はこの値を、構成されたキープアライブ タイマーの値に 3 を掛けた値に設定します。たとえば、キープアライブ タイマーが 20 秒の場合、ホールド タイマーは 60 秒に設定されます。同様に、オンプレミス ルーターのホールド タイマーを、Cloud Router のキープアライブ タイマーに 3 を掛けた値に設定します。

グレースフル リスタート タイマー

このタイマーは、ルーターが別のルーターからグレースフル リスタートの通知(TCP FIN または RST パケット)を受信した後のルーターの待機時間を追跡します。グレースフル リスタートをサポートするルーターは、グレースフル リスタート タイマーの値をアドバタイズします。これにより、グレースフル リスタート通知の受信後に他のルーターが待機する時間を定義します。2 つのピアルーターは異なるグレースフル リスタート タイマーの値を使用できますが、ルーターはピアのグレースフル リスタート タイマーの値を使用することが想定されます。新しい BGP セッションを確立する際、各ルーターは BGP OPEN メッセージを介して独自のグレースフル リスタート タイマーの値をピアルーターに伝えます。

Cloud Router はグレースフル リスタートをサポートし、Cloud Router のグレースフル リスタート タイマーは 60 秒に設定されています。各 Cloud Router は、各ソフトウェア メンテナンス イベントの前にグレースフル リスタート通知を送信します。

オンプレミス ルーターをグレースフル リスタートで構成した場合、オンプレミス ルーターの再起動イベントやメンテナンス イベントの際に Cloud Router にグレースフル リスタート通知を送信することもできます。オンプレミス ルーターのグレースフル リスタート タイマーを、ニーズに適した値に設定してください。

Stalepath タイマー

この設定は、いずれかのルーターが相手ルーターから end-of-record(EOR)メッセージを受信した後、そのルーターから学習したルートを削除するまでの待機時間を指定します。このタイマーは、グレースフル リスタート後に BGP セッションが再初期化されても、対象の接頭辞が UPDATE メッセージによって更新されていない場合に開始されます。Cloud Router の設定に合わせて、オンプレミス ルーターで Stalepath タイマーを 300 秒に設定することをおすすめします。

BGP キープアライブの間隔の更新

Cloud Router の BGP キープアライブの間隔を変更するには:

コンソール

  1. Google Cloud コンソールで [Cloud Router] ページに移動します。

    [Cloud Router] に移動

  2. 変更する BGP 間隔を含む Cloud Router を選択します。

  3. [ルーターの詳細] ページで、[ 編集] をクリックします。

  4. [BGP ピア キープアライブの間隔] を更新します。この値は、間隔の秒数を指定する 20~60 の整数にする必要があります。デフォルト値は 20 秒です。

  5. [保存] をクリックします。

gcloud

update コマンドを実行します。

gcloud compute routers update ROUTER_NAME \
    --project=PROJECT_ID \
    --keepalive-interval=KEEPALIVE_INTERVAL \
    --region=REGION

次のように置き換えます。

  • ROUTER_NAME: Cloud Router の名前
  • PROJECT_ID: Cloud Router が含まれるプロジェクト
  • KEEPALIVE_INTERVAL: ピアルーターに送信される BGP キープアライブ メッセージの間隔

    この値は、間隔の秒数を指定する 20~60 の整数にする必要があります。デフォルト値は 20 秒です。

  • REGION: Cloud Router が配置されているリージョン

出力は次のようになります。

  Updating router [my-router]...done.

API

routers.patch メソッドを使用して bgp.keepaliveInterval フィールドを更新します。

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME
    {
      "bgp": {
        "keepaliveInterval": KEEPALIVE_INTERVAL
     }
   }

次のように置き換えます。

  • PROJECT_ID: Cloud Router が含まれるプロジェクト
  • REGION: Cloud Router が配置されているリージョン
  • ROUTER_NAME: Cloud Router の名前
  • KEEPALIVE_INTERVAL: ピアルーターに送信される BGP キープアライブ メッセージの間隔

    この値は、間隔の秒数を指定する 20~60 の整数にする必要があります。デフォルト値は 20 秒です。

次のステップ