Cloud Router の仕組み

Cloud Router は、複数の冗長 BGP タスク、動的ルート コントロール プレーン、Virtual Private Cloud(VPC)ネットワーク コントロールとデータプレーンで実装された API の抽象化です。これらの 3 つのソフトウェア コンポーネントが連携して動作する仕組みを理解すると、Cloud Router の動作と、学習したルートの最適パス選択オプションの仕組みを理解できます。

Cloud Router のソフトウェア コンポーネント

Cloud Router と VPC には、いくつかのソフトウェア コンポーネントがあります。

Cloud Router BGP タスク
Cloud Router BGP タスクはリージョン内でグループ化されます。各 BGP タスクは、リージョンとグループの動的ルート コントロール プレーンと通信します。BGP タスクはパケットデータの処理を行いません。代わりに、BGP セッションを管理して BGP プレフィックスの送受信を行います。
動的ルート コントロール プレーン
各リージョンには、リージョンとグループの BGP タスクと通信する動的ルート コントロール プレーンが存在します。グローバル動的ルーティング モードでは、リージョンの動的ルート コントロール プレーンが他のリージョンの動的ルート コントロール プレーンとも通信を行います。各動的ルート コントロール プレーンは、VPC ネットワーク コントロール プレーンにメッセージを送信します。
VPC ネットワークのコントロール プレーンとデータプレーン

Trusted Cloud by S3NS は、VPC ネットワーキングの分散型コントロール プレーンとデータプレーンとして Andromeda ネットワーク仮想化スタック(PDF ダウンロード)を使用します。これは、次のコンポーネントから構成されています。

VPC ネットワーク コントロール プレーン
各リージョンには、リージョン内の動的ルート コントロール プレーンのグループから情報を受信する VPC ネットワーク コントロール プレーンが存在します。各 VPC ネットワーク コントロール プレーンは、受信 VPC ネットワークで動的ルートをプログラムします。VPC ネットワーク コントロール プレーンは、動的ルートの割り当ても適用します。
VPC ネットワーク データプレーン
各リージョンには、VPC ネットワーク コントロール プレーンの情報を使用して動的ルートの評価と実装を行う VPC ネットワーク データプレーンが存在します。VPC ネットワーク データプレーンはパケット転送を実行します。

Cloud Router BGP タスク

次の表に、一般的なシナリオで Cloud Router が使用する BGP タスクの数を示します。

サンプル シナリオ Cloud Router の実装に使用される BGP タスクの数
1 つ以上のインターフェース(それぞれが Classic VPN トンネルに接続) 1 つの BGP タスク
1 つ以上のインターフェース(それぞれが VLAN アタッチメントに接続)。VLAN アタッチメントは、同じエッジ アベイラビリティ ドメインにあります。 1 つの BGP タスク
任意の数のインターフェース(それぞれが HA VPN トンネルに接続)。これらのトンネルはすべて 1 つ以上の HA VPN ゲートウェイ上で同じインターフェース番号に接続されています。たとえば、2 つのトンネルがそれぞれ、異なる HA VPN ゲートウェイ上の interface 0 に接続しています。 1 つの BGP タスク
2 つ以上のインターフェース(1 つはエッジ アベイラビリティ ドメイン内の VLAN アタッチメントに接続し、もう 1 つは HA VPN トンネルに接続)。エッジ アベイラビリティ ドメインと VPN ゲートウェイ インターフェースの番号は同じです。たとえば、エッジ アベイラビリティ ドメインのペアの最初のエッジ アベイラビリティ ドメインや、最初の VPN ゲートウェイ インターフェースなどです。 1 つの BGP タスク
2 つ以上のインターフェース(それぞれがルーター アプライアンス インスタンスに接続)。そのうちの 1 つのインターフェースが冗長インターフェースとして構成されます。冗長インターフェースを作成するには、redundant-interface フラグ(Google Cloud CLI)または redundantInterface フィールド(Compute Engine API)を使用します。ルーター アプライアンス(Network Connectivity Center の一部) 2 つの BGP タスク
2 つ以上のインターフェース(それぞれが VLAN アタッチメントに接続)。VLAN アタッチメントは異なるエッジ アベイラビリティ ドメインにあります。 2 つの BGP タスク
2 つ以上のインターフェース(それぞれが HA VPN トンネルに接続)。各トンネルは、異なる HA VPN ゲートウェイ インターフェース番号に接続しています。たとえば、1 つのトンネルが HA VPN ゲートウェイの interface 0 に接続し、もう 1 つのトンネルが同じまたは別のゲートウェイの interface 1 に接続しています。 2 つの BGP タスク
少なくとも次のものを含む Cloud Router。
  • edge availability domain 0 の VLAN アタッチメントに接続の 1 つのインターフェース、および HA VPN ゲートウェイの interface 0 に接続されている HA VPN トンネルに接続の 1 つのインターフェース。またはそのどちらか。
  • edge availability domain 1 の VLAN アタッチメントに接続の 1 つのインターフェース、および HA VPN ゲートウェイの interface 1 に接続されている HA VPN トンネルに接続の 1 つのインターフェース。またはそのどちらか。
  • Classic VPN トンネルに接続している 1 つのインターフェース。
3 つの BGP タスク

ソフトウェアのメンテナス

Cloud Router のメンテナンス イベントによって新機能をリリースし、信頼性を向上させています。メンテナンス中は、新しい BGP タスクが BGP スピーカーとレスポンダーとして引き継ぎます。メンテナンスの前に、最後の BGP タスクは次のいずれかの方法でピアルーターに通知します。

  • ピアルーターがグレースフル リスタートをサポートしている場合、Cloud Router はグレースフル リスタート通知(TCP FIN パケット)を送信します。

  • ピアルーターがグレースフル リスタートをサポートしていない場合、Cloud Router は BGP CEASE 通知をピアルーターに送信して、BGP セッションを終了します。

ピアルーターがグレースフル リスタートをサポートしている限り、メンテナンス イベントは自動で中断されないため、Cloud Router のメンテナンス イベントは事前に通知されません。メンテナンス イベントは 120 秒未満で完了するように設計されているため、Cloud Router は 120 秒のグレースフル リスタート タイマーを使用します。完了したメンテナンス イベントを見つける方法については、ルーターのメンテナンス イベントを特定するをご覧ください。

ピアルーターがグレースフル リスタートをサポートしている場合、ピアルーターは Cloud Router のメンテナンス中にグレースフル リスタート イベントをログに記録します。RFC 4724 のセクション 4.2 に従って、ピアルーターは、次の場合において、120 秒の Cloud Router グレースフル リスタート タイマーを尊重し、学習したルートを保持してルートのアドバタイズを継続する必要があります。

  • Cloud Router は BGP キープアライブ パケットの送信を停止します。

  • BFD が構成されている場合にのみ適用可能: Cloud Router は BFD パケットの送信を停止します。そのため、Cloud Router はコントロール プレーン依存の BFD 実装を使用するため、ピアルーターは BFD コントロール プレーン非依存ビット値 0 を尊重する必要があります。詳細については、グレースフル リスタートと BFD をご覧ください。

ピアルーターがグレースフル リスタートをサポートしていない場合、またはピアルーターでグレースフル リスタートが無効になっている場合、Cloud Router は RFC 4271 のセクション 4.5 に従って BGP CEASE 通知を送信します。CEASE 通知の後、Cloud Router が BGP タスクを置き換えるまで、BGP セッションはダウンしたままになります。Cloud Router のホールド タイマーまたはピアルーターのホールド タイマーを調整しても、BGP セッションの終了を防ぐことはできません。

Cloud Interconnect の計画メンテナンス

計画された Cloud Interconnect のメンテナンスの場合、Cloud Router は BGP セッションを終了する BGP CEASE 通知を送信し、セッションの学習したルートとアドバタイズされたルートを削除します。計画メンテナンス イベント中は、グレースフル リスタート タイマーもネゴシエートされた BGP ホールド タイマーも適用されません。

予期しない BGP タスクの失敗

Cloud Router は複数の BGP タスクを使用するため、Cloud Interconnect SLA を満たす HA VPN トンネルペア、ルーター アプライアンス、VLAN アタッチメントは単一の BGP タスクに依存しません。詳細については、このドキュメントの Cloud Router BGP タスクをご覧ください。Cloud Router BGP タスクが予期せず失敗した場合、Cloud Router は通常ソフトウェア メンテナンス中に送信する通知の 1 つを送信できません。ただし、学習したルートとアドバタイズされたルートの両方が、ネゴシエートされたホールド タイマーの期間中残ります。