グーグルのクラウドを支えるテクノロジー > 第75回 VPCネットワークを支える仮想ネットワーク基盤:Andromeda(パート3)
- 編集部の見解や意向と異なる内容の場合があります
- 編集部は内容について正確性を保証できません
- 画像が表示されない場合、編集部では対応できません
- 内容の追加・修正も編集部では対応できません
CTC教育サービスはコラム「グーグルのクラウドを支えるテクノロジー > 第75回 VPCネットワークを支える仮想ネットワーク基盤:Andromeda(パート3)」を公開しました。
###
はじめに
前回に引き続き、2018年に公開された論文「Andromeda: Performance, Isolation, and Velocity at Scale in Cloud Network Virtualization」を元にして、Google Cloud Platform(GCP)のVirtual Private Cloud(VPC)ネットワークを支える仮想ネットワーク基盤を紹介します。今回は、Andromedaによる性能向上を表すデータを紹介します。
データプレーンの性能向上
はじめに、データプレーンの性能向上を表すデータとして、論文内で図1のグラフが紹介されています。これを見ると、Andromeda2.0の導入により、スループット、レイテンシー共に2倍以上の性能向上が実現されています。
図1 データプレーンの性能向上データ(論文より抜粋)
Andromeda2.0における主要な変更として、OSのネットワークスタックをバイパスして、データプレーンにおけるパケット処理をすべてユーザースペースで実装するモデルに切り替えたことが説明されています。物理NICからのパケット受信については、専用に予約されたCPU coreが「busy-polling」を行う仕組みが採用されています。また、この段階では、VMの仮想NICとのパケットのやり取りは、VMM(仮想化ハイパーバイザー)が仲介していましたが、その後、Andromeda2.1では、メモリ・リングを介して、データプレーンが直接にパケットをやり取りするモデルに更新されました。さらに、Andromeda2.2では、Intel QuickData DMA Engineと呼ばれる機構を用いて、大きなパケットデータのコピーをCPUハードウェアにオフロードする機能が追加されました。
OSレイヤーをバイパスすることでネットワーク処理の性能向上を図るというアイデアは、2010年にIntelが公開したDPDK(Data Plane Development Kit)により広く知られるようになりました。このアイデアが現実のサービスに有効活用できることが、実証された事例と言えるでしょう。
この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai275.html
ソーシャルもやってます!