スピード、スケール、信頼性: Google データセンター ネットワーキングの 25 年間の進化
Amin Vahdat
VP/GM, Machine Learning, Systems, and Cloud AI, Google Cloud
※この投稿は米国時間 2024 年 10 月 31 日に、Google Cloud blog に投稿されたものの抄訳です。
「ローマは一日にして成らず」ということわざは、Google のネットワークにも当てはまります。Google は 25 年の年月をかけて、スケールが大きく技術的に洗練された現在のネットワーク インフラストラクチャを構築するに至りました。
Google のネットワーク インフラストラクチャは、当初は比較的単純なものだったため、このことはより感慨深く感じられます。しかし、ユーザーベースとサービスに対する需要が飛躍的に拡大するにつれ、前例のないスケールのデータとトラフィックを処理できること、また、経時的に変化するワークロードに応じて動的なトラフィック パターンに適応できるネットワークが必要であることが明らかになりました。このことが数々のエンジニアリングのイノベーションとマイルストーンを刻む 25 年間の旅の始まりとなり、最終的に現在の第 5 世代 Jupiter データセンター ネットワーク アーキテクチャへとつながりました。Jupiter アーキテクチャは、13 Pb(ペタビット)/秒の二分割帯域幅にスケーリングが可能です。このデータレートをたとえると、このネットワークによって地球上の全人口 80 億人によるビデオ通話(1.5 Mb/秒)をサポートできることになります。
現在、世界中に数百の Jupiter ファブリックが展開されており、数百のサービス、1 日あたり数十億人のアクティブ ユーザー、Google Cloud のすべての顧客、世界最大級の ML トレーニングおよびサービス インフラストラクチャを同時にサポートしています。以下に、Google のこれまでの道のりについて、次世代のデータセンター ネットワーク インフラストラクチャを見据えつつ、さらに詳しくお話ししたいと思います。
指針となった原則
Google のネットワークは、いくつかの重要な原則に基づいて進化してきました。
-
あらゆるものを、どこでも: Google のデータセンター ネットワークは、同じネットワーク ファブリック内の 10 万台以上のサーバーのどこにでも大規模なジョブを配置でき、必要なストレージやサポート サービスに高速でアクセスできるようにすることで、効率性と簡素化を実現しています。このスケールにより、内部および外部のワークロードに対するアプリケーションのパフォーマンスが向上し、内部の断片化が解消されます。
-
予測可能、低レイテンシ: 余裕を持った帯域幅をプロビジョニングし、99.999% のネットワーク可用性を維持し、エンドホストとファブリックの連携を通じて輻輳を積極的に管理することで、一貫したパフォーマンスを優先してテール レイテンシを最小限に抑えます。
-
ソフトウェア定義、システム中心: 柔軟性とアジリティを実現するソフトウェア定義ネットワーキング(SDN)の活用により、グローバル ネットワーク全体で、2 週間ごとに数十もの新機能を検証し、世界規模でリリースしています。
-
段階的な進化と動的なトポロジ: 段階的な進化は、ネットワークを(全体的にダウンさせるのではなく)きめ細かく更新するのに役立ちます。一方、動的なトポロジは、変化するワークロードの需要に継続的に適応するのに役立ちます。光回路スイッチと SDN の組み合わせにより、物理的なインプレース アップグレードや、単一のファブリックで複数世代のハードウェアをサポートする、進化し続ける異種混在ネットワークに対応できます。
-
トラフィック エンジニアリングとアプリケーション中心のサービス品質: トラフィック フローを最適化し、サービス品質を確保することで、各アプリケーションのニーズに合わせてネットワークを調整できます。
上述の原則を統合することが、Google の取り組みの基盤となっています。Google のネットワークは、ストレージから AI に至るまで、あらゆるコンピューティング サービスにおける信頼性の基盤です。そのため、ネットワークを確実に保護し、障害発生時の影響を最小限に抑える必要があります。この基本的な責任をサポートするために、Google はグローバル ネットワーク全体の数百のクラスタと数百万のポートで、あらゆるダウンタイム1を厳密に定義し、モニタリングしています。信頼性に関する進歩は、Google 社内のソフトウェア定義 Jupiter ネットワークが、以前のバージョンのデータセンター ネットワークよりも 50 倍の信頼性を達成していることにも表れています。
2015 年 - Jupiter、最初のペタビット ネットワーク
Google は、影響力のある論文において、Jupiter データセンター ネットワークが市販のスイッチ シリコン、Clos トポロジ、ソフトウェア定義ネットワーク(SDN)を活用することで、総帯域幅 1.3 Pb/秒にスケールできることを紹介しました。この世代の Jupiter は、Google ネットワーキング チームによって社内で開発された 5 世代分のデータセンター ネットワークの集大成です。当時、このデータレートは、Google の 1 つのデータセンターにおけるものでしたが、世界中のインターネットにおける IP トラフィックの総データレートの推定値を上回るものでした。
2022 年 - 6 Pb/秒の実現
2022 年には、Jupiter ネットワークが 6 Pb/s 超にスケールされたことを発表しました。これは、光回路スイッチ(OCS)、波長分割多重方式(WDM)、スケーラビリティに優れた Orion SDN コントローラが組み込まれたことによるものです。これらのテクノロジーにより、段階的なネットワーク構築、パフォーマンス向上、費用削減、消費電力削減、動的なトラフィック管理、シームレスなアップグレードなど、さまざまな進歩がもたらされました。
2023 年 - 13 Pb/秒のネットワーク
Jupiter をさらに強化し、ネットワーク コアにおいてネイティブで 400 Gb/秒のリンク速度をサポートしました。Jupiter ネットワークの基本的な構成要素(集約ブロック)は、現在、エンドホストとデータセンターの残りの部分の両方に対して 400 Gb/秒で接続される 512 ポートで構成されており、1 ブロックあたり合計 204.8 Tb/秒の双方向ノンブロッキング帯域幅を実現しています。このようなブロックを 64 個サポートしているため、合計の二分割帯域幅は 64 × 204.8 Tb/秒 = 13.1 Pb/秒となっています。このテクノロジーは 1 年以上にわたって Google の本番環境データ センターを支えており、AI、ML、ウェブ検索などの大量のデータを扱うアプリケーションの急速な進歩を後押ししています。
2024 年以降 - AI 時代のエクストリーム ネットワーキング
データセンター ネットワーキングにおける 20 年以上にわたるイノベーションを祝う一方で、Google は AI 時代をサポートする次世代のネットワーク インフラストラクチャの方向性をすでに描き始めています。たとえば、今後登場予定の A3 Ultra VM(NVIDIA ConnectX-7 ネットワーキングを搭載し、RoCE(RDMA over Converged Ethernet)経由でサーバーあたり 3.2 Tbps のノンブロッキング GPU 間トラフィックをサポート)や、NVIDIA GB200 NVL72 をベースとした将来のプロダクトなど、ネットワーク インフラストラクチャのニーズに向けた業務に取り組んでいます。
今後数年の間に、ポート単位およびネットワーク全体で、ネットワークの規模と帯域幅を大幅に拡張していきます。また、トランスポートや輻輳の制御スタックなど、エンドホストにおける統合の限界を押し広げ、ネットワーク ステージを合理化して、外れ値を削減しさらに低いレイテンシを実現していきます。リアルタイム トポロジ エンジニアリング、コンピューティング スタックおよびストレージ スタックとのより緊密な統合、ホストベースのロード バランシング手法の継続的な改良により、ネットワークの信頼性とレイテンシのさらなる改善を図ります。これらのイノベーションにより、Google のネットワークは、世界中のユーザーの生活を豊かにする革新的なアプリケーションやサービスの基盤であり続けると同時に、Google の内部サービスと Google Cloud プロダクトの両方を支える画期的な AI 機能もサポートしていきます。
これらの課題と機会に対処し、Google のネットワーキングにとって次の 25 年がどのようなものになるのかを目撃することを楽しみにしています。
その他のリソース
-
Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google’s Datacenter Network、SIGCOMM(2015 年)[論文]
-
市販のスイッチ シリコン、Clos トポロジ、ソフトウェア定義ネットワーキング(SDN)を活用した Jupiter データセンター ネットワークの最初の取り組み。
-
2012 年に初めて本番環境に導入。
-
-
Mission Apollo: Landing Optical Circuit Switching at Datacenter Scale、arxiv.org(2022 年)[論文]
-
2013 年に初めて本番環境に導入。
-
-
Orion: Google's Software-Defined Networking Control Plane、NSDI(2021 年)[論文]
-
データセンターと広域ネットワークの両方で使用される Google の高パフォーマンスでスケーラブルな、インテント ベースの分散型 SDN プラットフォーム。
-
2016 年に初めて本番環境に導入。
-
-
Jupiter Evolving: Transforming Google's Datacenter Network via Optical Circuit Switches and Software-Defined Networking、SIGCOMM(2022 年)[論文]
-
先行の技術: OCS(2013 年)、Orion SDN(2016 年)、200 Gbps ネットワーキング(2020 年)、ダイレクト コネクト トポロジ(2017 年)、動的トラフィック エンジニアリング(2018 年)、動的トポロジ エンジニアリング(2021 年)。
-
-
Swift: Delay is Simple and Effective for Congestion Control in the Datacenter、SIGCOMM(2020 年)[論文]
-
Swift は、ハードウェア タイムスタンプと遅延目標を備えた AIMD 制御を使用する輻輳制御プロトコル。短い RPC では低フロー完了時間、長い RPC では高スループットという優れたパフォーマンスを Google のデータセンターで実現。
-
2017 年に初めて本番環境に導入。
-
-
PLB: Congestion Signals are Simple and Effective for Network Load Balancing、SIGCOMM(2022 年)[論文]
-
Protective Load Balancing(PLB)は、シンプルかつ効果的なホストベースのロード バランシング設計により、ネットワークの輻輳を軽減する。パケットの並べ替えを最小限に抑えるためにアイドル期間後のパス変更を優先することで、輻輳した接続のパスをランダムに変更し、パフォーマンスを向上させる。
- 2020 年に初めて本番環境に導入。
-
1. データセンター ネットワーク内の統計的に有意な数のネットワーク フローが、定義されたしきい値を超えて完全または部分的に停止する時間。
-Google Cloud、ML・システム・クラウド AI 担当ゼネラル マネージャー兼バイス プレジデント Amin Vahdat