DPUテクノロジーの進化:未来のイノベーションにパワーを与える
DPUテクノロジーの進化:未来のイノベーションにパワーを与える
Jan 19th 2024より更新読了時間約1分
クラウドコンピューティングと仮想化技術の進化に伴い、ネットワークカードも機能とハードウェア構造に関して、NIC、SmartNIC、FPGAベースDPU、DPU SoC NICの4つの段階を経てきました。この記事では、データセンターで使用されるさまざまな種類のネットワークカードとプロセッサについて、そのハードウェア、プログラマビリティ機能、開発、応用に焦点を当てて説明します。
ネットワーク・インターフェイス・コントローラ(NIC)の進化と応用
従来の基本的なネットワークカードは、NICまたはネットワークアダプタとも呼ばれ、コンピュータネットワークにおいて重要な役割を果たしています。その主な機能は、ネットワーク機器間の効率的な伝送のためにデータを変換することです。時間の経過とともに、進歩はその機能を拡張してきました。さらに、CRCチェック、TSO/UF0、LSO/LR0、VLANサポートなど、基本的なハードウェア・オフロード機能を備えています。また、仮想化のためのSR-IOVやネットワーク性能向上のためのQoSもサポートしています。ネットワーク・インターフェイスの帯域幅については、100Mや1000Mの速度から進化し、10G、25G、さらには100Gという高速をサポートしています。

クラウドコンピューティングの仮想化ネットワークにおいて、従来の基本的なネットワークカードは、仮想マシンにネットワークアクセスを提供するための3つの主要な方法を提供しています。
オペレーションシステムのカーネル・プロトコル・スタックを介して、ネットワークカードは受信トラフィックを仮想マシンに転送します。
DPDKユーザーモードドライバはカーネルプロトコルスタックをバイパスし、データパケットを仮想マシンのメモリに直接コピーすることでパフォーマンスを向上させます。
SR-IOVテクノロジーは、物理ネットワークカードを仮想マシンに直接割り当てられる複数の仮想ファンクション(VF)に仮想化します。
VxLANのようなトンネル・プロトコルや仮想スイッチング・テクノロジーによってネットワークが複雑化するにつれ、CPUリソースの要求も高くなっています。SmartNICは、CPUからネットワーク処理タスクをオフロードすることでこの課題に対処し、ネットワーク全体のパフォーマンスを向上させます。
SmartNICの進化と応用
SmartNICは、従来の基本的なネットワークカードに見られるネットワーク伝送機能以上のものを提供します。FPGAまたはFPGAとプロセッサ・コアの統合プロセッサを使用して、OVS/vRouterハードウェア・オフロードなどのデータプレーン・ハードウェア・オフロード機能を組み込んでいます。これらのSmartNICは、クラウド・コンピューティング・ネットワークの転送速度を向上させ、ホストCPUのコンピューティング・リソースの負担を軽減します。
従来のネットワークカードとは異なり、SmartNICは汎用CPUを搭載していません。その代わり、制御プレーンの管理はホストCPUに依存しています。0VS/vRouterのような仮想スイッチのファストパス・オフロード、RDMAネットワーク・オフロード、NVMe-oFストレージ・オフロード、IPsec/TLSデータプレーン・セキュリティ・オフロードなどのタスクを含みます。

しかし、このような進歩にもかかわらず、クラウド・コンピューティング・アプリケーションではネットワークの速度が上昇し続けているため、ホストCPUは依然としてトラフィックの分類、追跡、および制御にかなりのリソースを費やしています。ホストCPUの「ゼロ消費」を達成することが、クラウドベンダーの次の研究方向となっており、ホストCPUがこれらのタスクに関与するのを最小限に抑えることを目指しています。
FPGAベースのDPUの進化と応用
FPGAベースのDPUは、データのオフロードとプレーン制御機能を持つスマートなネットワークカードです。また、コントロールプレーン、データプレーンともに部分的にプログラマブルです。ハードウェアとしては、Intel CPUのようなFPGAベースの汎用CPUプロセッサを搭載しています。
SmartNICと比較して、FPGAベースのDPUは汎用のCPU処理ユニットを組み込むことでハードウェアアーキテクチャを強化し、FPGA+CPUアーキテクチャを実現しています。この構成により、ネットワーク、ストレージ、セキュリティ、管理など、さまざまなインフラコンポーネントのアクセラレーションとオフロードが容易になります。現在、DPUの主流はFPGA+CPU構成です。このアーキテクチャに基づくDPUは、ソフトウェアとハードウェアのプログラマビリティに優れています。

DPU開発の初期段階では、ほとんどのメーカーがこの方法を選択しました。開発期間が短縮され、迅速な反復が可能になり、機能の迅速なカスタマイズが容易になったからです。そのため、DPUメーカーは迅速に製品を投入し、市場機会をつかむことができました。しかし、ネットワーク帯域幅が25Gから100Gに移行するにつれ、FPGA+CPU DPUアーキテクチャはチッププロセスとFPGA構造による制限に直面しました。これらの制限により、より高いスループットを追求しながら、チップ面積と消費電力を効果的に制御することが困難になりました。その結果、このDPUアーキテクチャの継続的な開発が妨げられました。
DPU SoC NICの進化と応用
ASIC(特定用途向け集積回路)をベースとしたDPU SoCは、専用アクセラレータの性能と汎用プロセッサのプログラマビリティを兼ね備えています。FPGAベースのアーキテクチャとは異なり、DPU SoCはコスト、消費電力、機能性といった課題に対応し、特に次世代の100Gサーバーに適しています。DPUは、コスト、消費電力、高スループット、柔軟なプログラミング機能において優位性を発揮します。DPU SoCはアプリケーション管理、仮想マシン、コンテナ、ベアメタルアプリケーションをサポートします。

DPU技術は進歩しており、汎用プログラマブルDPU SoCは今やクラウドベンダーのデータセンター構築に欠かせないものとなっています。DPUはコンピューティングリソースとネットワークリソースの効率的な管理を可能にし、多様なクラウドコンピューティングシナリオをサポートし、データセンターのリソース利用を最適化します。チップ大手や主要なクラウドサービスプロバイダーは、DPUの研究、開発、活用に多大な投資を行っており、継続的な探求と実用的な実装を通じて、顕著な費用対効果を達成しています。
AWS(アマゾンクラウド)におけるDPU
クラウドコンピューティングサービスのトッププロバイダーであるAWS(Amazon Web Services)は、重要な技術基盤としてNitro DPUシステムに依存しています。Nitro DPUシステムは、ネットワーク、ストレージ、セキュリティ、監視機能を専用のハードウェアとソフトウェアに効率的にオフロードします。これにより、サービスインスタンスはほぼすべてのサーバーリソースにアクセスできるようになり、大幅なコスト削減と年間収益の増加につながります。Nitro DPUシステムは複数のコンポーネントから構成されます。
Nitroカード:ネットワーク、ストレージ、コントロール専用のハードウェアで、システム全体のパフォーマンスを向上させます。
Nitroセキュリティチップ:仮想化とセキュリティ機能を専用のハードウェアとソフトウェアに移行することで、攻撃対象領域を減らし、安全なクラウドプラットフォームを実現します。
Nitroハイパーバイザー:メモリとCPUの割り当てを効率的に管理し、ベアメタルに匹敵するパフォーマンスを提供する軽量ハイパーバイザー管理プログラムです。

主要なネットワーク、セキュリティ、サーバー、モニタリング機能を提供することで、Nitro DPUシステムは、顧客の仮想マシンのために基礎となるサービスリソースを解放します。これにより、AWSはより多くのベアメタルインスタンスタイプを提供することができ、特定のインスタンスに対して最大100Gbpsのネットワークパフォーマンスを実現することも可能です。
NVIDIA DPU
高性能コンピューティング(HPC)におけるグラフィック・プロセッシング・ユニット(GPU)で有名な著名半導体企業であるNVIDIAは、2020年4月、ネットワークチップおよびデバイス企業であるMellanoxを69億ドルで買収しました。買収後、NVIDIAはDPUのBlueFieldシリーズを発表しました。
アクセラレーション・コンピューティングのために特別に設計されたNVIDIA BlueField-3 DPUは、BlueField-2 DPUの高度な機能を継承しています。最大400Gのネットワーク接続を提供し、ソフトウェア定義ネットワーキング、ストレージ、セキュリティ、管理機能のオフロード、アクセラレーション、分離機能を提供します。
Intel IPU
Intel IPU(インフラストラクチャ・プロセッシング・ユニット)は、ハード化されたアクセラレータとイーサネット接続を備えた高度なネットワークデバイスです。緊密に結合された専用のプログラマブルコアを利用して、インフラストラクチャ機能を高速化し、管理します。IPUはインフラストラクチャーの完全なオフロードを可能にし、実行中のインフラストラクチャー・アプリケーションのホスト・コントロール・ポイントとして機能することで、さらなるセキュリティレイヤーを提供します。すべてのインフラサービスをサーバーからIPUにオフロードすることで、サーバーのCPUリソースを解放し、クラウドサービスプロバイダーに独立した安全なコントロールポイントを提供します。

Intelのロードマップには、Oak Springs CanyonとMount Evans IPU製品が含まれています。Oak Springs CanyonはFPGAベースのIPU製品で、Mount Evans IPUはASICベースのIPU製品です。Oak Springs CanyonはIntel Agilex FPGAとXeon-D CPUを搭載し、Mount EvansはIntelとGoogleが共同で設計したもので、パケット処理用のASICと16個のARM Neoverse N1コアを内蔵し、強力なコンピューティング能力を備えています。
AlibabaクラウドにおけるDPU
AlibabaクラウドはDPU技術開発の最前線にいます。2022年のAlibaba Cloud Summitでは、Shenlongアーキテクチャで開発されたクラウド・インフラ・プロセッサCIPUを発表しました。CIPUは、その前身であるMoCカード(Micro Server on a Card)の機能と位置づけを継承しており、DPUの定義に合致しています。MoCカードは、独立したI/O、ストレージ、プロセッシング・ユニットを誇り、ネットワーク、ストレージ、デバイスの仮想化タスクを処理します。MoCカードは下記の4つの開発段階を経てきました。
第1世代と第2世代のMoCカードは、ネットワークとストレージの仮想化をソフトウェアで実装し、オーバーヘッドをゼロにしたコンピューティング仮想化という課題に取り組んできました。
第3世代のMoCカードは、強化されたネットワーク転送機能を導入し、ネットワーク性能を大幅に向上させました。
第4世代のMoCカードは、ネットワーキングとストレージ操作の完全なハードウェア・オフロードを実現し、RDMA機能もサポートしています。
Feitianシステム用に設計されたAlibabaクラウドのCIPUは、新世代の包括的なソフトウェアとハードウェアのクラウド・コンピューティング・アーキテクチャ・システムを構築する上で極めて重要です。
Volcano EngineのDPU
Volcano Engine(ボルケーノ・エンジン)は、弾力的でスケーラブルな高性能コンピューティング・サービスのために、ソフトとハードを統合した仮想化アプローチを用いて、自社開発のDPU技術の発展に専念しています。第2世代のエラスティックなベアメタルサーバーと第3世代のクラウドサーバーは、いずれも自社開発のDPUを搭載しています。これらのDPUは、その能力と様々なアプリケーションへの適合性を保証するため、広範なテストを受けています。2022年に発表された第2世代のEBMインスタンスは、物理マシンの安定性とセキュリティを仮想マシンの柔軟性と組み合わせたもので、新世代の高性能クラウドサーバーを象徴するものです。2023年前半にリリースされる第3世代ECSインスタンスは、Volcano Engineの最新のDPUアーキテクチャと独自の仮想スイッチおよび仮想化技術を統合し、ネットワークとストレージのI/O性能を大幅に向上させます。Volcano Engineは、自社開発のDPU、仮想スイッチ、仮想化技術を組み合わせることで、クラウド・コンピューティングの進化する要求に応えるスケーラブルで効率的な高性能コンピューティング・ソリューションの提供を目指しています。