2017年09月15日 05時00分 UPDATE
特集/連載

NVMe対応ストレージアレイも次々登場「NVMe over Fabrics」でストレージ環境が一変する――注目の技術革新を解説 (1/2)

Non-Volatile Memory Express(NVMe)はSSDストレージの接続規格としてSCSIやSASプロトコルに取って代わり、NVMe over Fabricsはハイエンドネットワーク環境のデータ転送用に採用されていく可能性がある。

[Chris Evans,TechTarget]

 1990年代末から2000年代初め、ストレージネットワークが人気を集め始め、ファイバーチャネル技術が広く採用されるようになった。その数年後にイーサネットで使えるiSCSIプロトコルが登場し、ファイバーチャネルのハードウェア導入コストをかけたくない企業がこれを採用した。これらはどちらも、接続元(イニシエータ)とストレージ機器(ターゲット)の通信にSCSIストレージプロトコルを使う。ところが、永続ストレージ媒体としてフラッシュが台頭すると、SCSIのパフォーマンス不足が問題になってきた。

 その問題を解決し、SCSIに代わる新しいプロトコルとして開発したのが「Non-Volatile Memory Express」(以下、NVMe)だ。NVMeは他のプロトコルとどこが違うのか。「NVMe over Fabrics」の登場でストレージネットワーク状況はどう変わるのか。

いきさつ

 ストレージネットワーク技術は、ストレージハードウェアの進化と統合的な一元管理ストレージのニーズとともに進歩してきた。ファイバーチャネルの起源はメインフレームで採用していた「ESCON」というファイバーベースの接続プロトコルにまでさかのぼることができる。一方、SCSIはサーバ内のHDDの物理接続に端を発している。

 SCSIは当初、パラレル通信プロトコルだったが(サーバにHDDを取り付けたことがあれば、SCSIのフラットケーブルに覚えがあるだろう)、Serial Attached SCSI(SAS)の開発によってシリアルインタフェースに移行した。PC分野ではSerial ATA(SATA)に対応する「Advanced Host Controller Interface」(AHCI)が相当する。これらのプロトコルは今でもHDDやソリッドステートドライブ(SSD)に使われている。

 サーバとストレージを物理的に接続するファイバーチャネルやイーサネットでは、SCSIが依然としてハイレベルストレージ通信プロトコルの役割を果たしている。しかし、SCSIはそもそも、システムメモリやプロセッサより桁違いにレスポンスの遅いHDDを想定して開発されているため、高速のSSDに対して使うにはパフォーマンス不足が問題になる。ほとんどのSATAドライブはまだ、インタフェース上限6Gbps、実効データ転送速度600MbpsのSATA 3.0仕様に基づいている。SASドライブは12GbpsのSAS 3.0に移行しつつあるが、多くはまだ6Gbpsだ。

 しかし、SASとSATAの深刻な問題は、単一デバイスの同時I/Oに対する処理能力不足にある。HDDの構造を考えた場合、複数の同時I/O要求を処理するのは非常に難しく、不可能な場合もある。読み取りヘッドと書き込みヘッドが複数の要求で同じにならない可能性もある。バッファリングを利用するとしても、拡張性がない。SASとSATAのどちらの設計も、複数I/Oキュー処理に対応していない。AHCIには32個しかコマンドを保持しないキューが1つあるだけだ。SCSIのキューは実装に応じて128〜256個のコマンドに対応するが、キューはやはり1つしかない。

 単一キューだけではレイテンシに悪影響がある。キューのサイズが大きくなれば、他の多くの要求が完了するのを待たねばならず、新しい要求のレイテンシが長くなる。HDDではそれほど問題にならないが、可動部品がなく、個別I/Oレイテンの低いSSDでは大きなボトルネックになる。

NVMeの登場

 デバイスレベルとネットワークレベルでこうしたインタフェースの問題を解決するために、SCSIを置き換えるプロトコルとしてNVMeが誕生した。NVMeは専用ストレージバスではなくPCIeバスを使い、内部接続ディスクデバイスに高い帯域幅と低レイテンシを提供する。例えば、PCIe 3.0×4レーンのデバイスでは、1デバイス当たり約4Gbpsの帯域幅を実現できる。

 NVMeで大きく変わったのはストレージプロトコルの最適化だ。I/Oアクセスのシリアル化に必要な内部ロッキングの量を少なくし、割り込み処理の効率を高めた。また、NVMeは最大65535個のキューに対応しており、各キューに65535個のエントリを保持できる。単一キューではないため、大量の同時I/O要求を処理できる。プロセッサのコア数が増え、大量の処理を同時に行う現在のIT環境では、複数のI/Oキューに対応するストレージデバイスの意義は大きく、外部I/Oスループットの向上にもつながる。

 NVMe規格は2011年、メンバー企業約90社で構成するNVM Expressワーキンググループが策定した。2013年、Samsung Electronicsが初のNVMe対応ドライブを発表した。同ワーキンググループは2017年5月、NVMe規格1.3をリリースし、セキュリティやリソース共有、SSD耐久性管理の課題に対応する機能を追加した。

       1|2 次のページへ

この記事を読んだ人にお薦めのホワイトペーパー

この記事を読んだ人にお薦めの関連記事

Loading

注目テーマ

ITmedia マーケティング新着記事

news069.png

Twitter投稿を基に番組視聴者のペルソナを可視化、データセクションのテレビ番組口コミ分析サービスに新機能
データセクションは、テレビ番組口コミ分析サービス「TV Insight」において、ソーシャル...

news058.jpg

アプリ利用者を特定してアンケート調査、「App Ape」と「TesTee」が連携
フラーは、リサーチツールの提供を行うテスティーと共同で、アプリ所持ユーザーや休眠ユ...

news012.jpg

別所哲也氏と考える、ブランディングの必要性を経営者に納得させる方法
「Branded Shorts」をプロデュースする俳優の別所哲也氏と戦略コンサルタントの山口義宏...