NVMe Over Fabricsメリット

NVMeはPCIe SSDの性能を最大化するだけでなく、数百台を超える膨大な数のSSDを扱える、ホスト・インタフェースでもある。

 ところで、実際に使われている高速なインタフェースや高速なネットワークなどは、PCIeとは限らない。既に設置してある高速のネットワークにも、SSDを接続するケースは当然ながらあり得る。特に重要なのは、リモートアクセス(厳密にはリモートDMA(Remote Direct Memory Access))が可能なネットワークである。

 リモートDMAでは、CPUを介在せずに、別のホスト・システムのSSDからデータを直接、読み込んだり、あるいはデータを直接、書き込んだりする。ネットワークを介して別のシステムのSSDに読み出しアクセスするときはふつう、システムメモリにSSDのデータをいったん読み込み、それから、ネットワーク経由でデータを伝送する。このため、CPUの介在と、長い待ち時間が避けられない。リモートDMAでは、このようなボトルネックが解消される。

 リモートアクセスが可能なネットワーク(あるいはスイッチドファブリック)を経由してNVMeのホストとNVMeのデバイスを接続する。このために策定中の技術仕様が「NVMe Over Fabrics(NVMeオーバーファブリック)」である。

 NVMeオーバーファブリックでは、NVMeとスイッチドファブリックの間に、抽象化層(トランスポート・アブストラクション層)を挟んでデータを変換し、スイッチドファブリックにデータを載せる。スイッチドファブリック経由で受け取ったデータは、再び抽象化層を通して変換される。

 NVMeオーバーファブリックで想定しているネットワークは現在のところ、「InfiniBand(インフィニバンド)」「iWARP(Internet Wide Area RDMA Protocol)」「RoCE(RDMA Over Converged Ethernet)」などである。いずれも、リモートDMA(Remote Direct Memory Access)をサポートするファブリックだ。

リモートアクセスによる遅延の増加と性能の低下

 ファブリック経由でのSSD接続で問題となるのが、ローカルのSSDに対するアクセスで発生するレイテンシ(遅延時間)と、リモートアクセスで発生するレイテンシの違いである。当然、リモートアクセスのレイテンシは長くなる。NVMeオーバーファブリックでは、リモートアクセスによるレイテンシの増加を10マイクロ秒以内に抑えることを目標仕様としている。

 また、リモートアクセスによる入出力速度(IOPS)の低下も考慮すべき問題点である。NVMeオーバーファブリックでは具体的な数値は定めず、「IOPSの低下は最小限にとどめる」としている。

IntelのNVMe SSD「P3700」を使用してローカルとリモートでSSDの性能を比較した結果、リモートアクセスによるレイテンシの増加は8マイクロ秒にとどまった。また、リモートアクセスによるIOPS性能の低下は発生しなかった。