ネットワーク仮想化とオープン化によって、ネットワークの構築・運用法は劇的に変わる。ユーザー企業は、ベンダーや通信キャリアが提供する製品/サービスをただ使うのではなく、「必要な機能を必要な分だけ」使う、さらには「要件に合うものが市場になければ自ら作る」という新たな選択肢を手にすることになる。
それを体現しているのが北米のハイパースケールクラウドプロバイダーだ。
その1社であるアマゾンが5月末、AWSの最新動向を紹介するイベント「AWS Summit Tokyo 2018」を開催。アマゾン ウェブサービス ジャパン 技術統括本部 ソリューションアーキテクトの岡本京氏が「AWSを支えるネットワークインフラと要素技術」と題したセッションを行った。
「AWSは世界最大規模のオンプレミスデータセンター(DC)を運用する事業者。それだけにスケーラビリティとコストの課題は常々ある。その課題を解決するイノベーションが日々起こっている」と切り出した同氏の講演内容から、AWSのネットワークがどのように進化してきたのかを見ていこう。
AWSのインフラ構成まず、AWSのインフラ構成を整理する。
AWSのインフラは、1つないし複数のDCからなる「アベイラビリティゾーン(AZ)」と、AZを複数束ね、外部ネットワークと接続するトランジットセンターも含めた「リージョン」で構成される。2006年のAWSサービス開始当初は4つだったリージョンは現在18に増加、2018年末には22になる予定だ。
ユーザーは、1つあるいは複数のリージョンに、Amazon EC2インスタンス等のリソースとデータを配置することができる。この際、論理的に分離された“専用領域”を作り、ユーザー自ら定義した仮想ネットワーク内でリソースを起動できるサービスが「Amazon VPC」だ。ユーザーはVPC内で、IPアドレス範囲の選択、サブネットの作成、セキュリティやネットワークゲートウェイの設定等の管理・制御が行える。
SDNソフトとハードを自社開発この仮想ネットワークの管理・制御にはSDN技術が用いられている。VPCが登場した2009年以前のAWSでは、ネットワークベンダー製のコアルーターを用いて、エンジニアが設定変更を行いながらVLAN/VRF(Virtual Routing and Forwarding)による仮想ネットワークを運用していた。だが、ユーザーが増えるに従ってVLAN/VRFの数が不足。また、設定変更の工数の増大と「何より、ベンダーの固有機能やリリースサイクルにアジリティが依存してしまう」ことが課題だった。
AWSはこれを解決するため、独自にSDNソフトウェアを開発した。
一般的なSDNと異なる点が“分散処理型”である点だ。経路制御や管理を行うコントロールプレーンを分散型で実装することにより耐障害性を高め、かつコントロールプレーンの負荷が増大してボトルネックとなることを回避しているという。
特徴はもう1つある。データプレーンに当たるルーターとNIC(ネットワークインターフェースカード)も自社開発したことだ。
ルーターは、ブロードコムのカスタムASICを使用。NICは、PCIデバイスの仮想化に関する標準規格であるSR-IOVを採用し、2012年から導入した。現在は第2世代に移行しており、2015年に買収したAnnnapurna Labsが開発・製造するASICを搭載している。
これにより、AWSは「ハードからソフトまですべて自社でコントロールできる」ようにしたわけだ。