NVMe トランスポートは、信頼性の高い NVMe コマンドとデータ転送を提供するために設計された抽象プロトコル レイヤーです。データセンターのネットワーク ストレージをサポートするために、NVMe over Fabric を使用して PCIe バス上の NVMe 標準を拡張し、SAN における SCSI の優位性に挑戦します。 NVMe over Fabric は、 FC、InfiniBand、RoCE v2、iWARP、TCP などの複数のファブリック伝送オプションへの NVMe のマッピングをサポートします。
ただし、これらのファブリック オプション プロトコルの中で、 InfiniBand、RoCE v2 ( Routable RoCE) 、および iWARP は RDMA をサポートしているため、理想的なファブリックであると考えられることがよくあります。
では、ファブリックよりも NVMe を選択する場合、RDMA をサポートすることにはなぜ固有の利点があるのでしょうか?これは、RDMA の機能と利点から始まります。 RDMA は、プロセッサによる時間のかかる処理を必要とせずに、コンピュータが他のコンピュータのメモリに直接アクセスできるようにする新しいメモリ アクセス テクノロジです。 RDMA は、オペレーティング システムに影響を与えることなく、あるシステムからリモート システムのメモリにデータをすばやく移動します。 RDMA テクノロジーの原理と TCP/IP アーキテクチャとの比較を下の図に示します。 したがって、RDMA は、関連するハードウェアとネットワーク テクノロジを使用して、サーバー 1 のネットワーク カードがサーバー 2 のメモリを直接読み書きできるようにすることで、最終的に高帯域幅、低レイテンシ、および低リソース使用率の効果を実現すると簡単に理解できます。下の図に示すように、アプリケーションはデータ転送プロセスに参加する必要はありません。メモリの読み取りアドレスと書き込みアドレスを指定し、転送を開始して、転送が完了するまで待つだけです。 RDMA の主な利点は次のようにまとめられます。 1) ゼロコピー:ネットワーク プロトコル スタックのさまざまな層間でデータをコピーする必要がないため、データ フロー パスが短縮されます。 2) カーネルバイパス:アプリケーションはデバイス インターフェイスを直接操作し、システム コールを介してカーネル状態に切り替えることはなくなり、カーネル切り替えのオーバーヘッドは発生しません。 3) CPU なし:データ転送には CPU の関与は必要なく、ネットワーク カードによって完全に処理されます。パケット送受信の割り込み処理を行う必要がなく、CPU リソースを消費しません。 まとめると、これらの利点により、処理効率が向上し、レイテンシが短縮されます。他のネットワーク ファブリックが RDMA と同様のテクノロジーを通じて NVMe over Fabric の効率性とレイテンシの要件を満たすことができる場合、それらを NVMe over Fabric のファブリックとして使用することもできますか? NVMe-oF と NVMe の違いを見てみましょう。 NVMe-oF と NVMe の主な違いは、コマンドを送信するメカニズムです。 NVMe は、Peripheral Component Interconnect Express (PCIe) インターフェイス プロトコルを通じて、要求と応答をホスト内の共有メモリにマッピングします。 NVMe-oF はメッセージベースのモデルを使用して、ネットワーク経由でホストとターゲット ストレージ デバイス間で要求と応答を送信します。 NVMe-oF は PCIe に代わるもので、NVMe ホストと NVMe ストレージ サブシステム間の通信距離を延長します。 NVMe-oF の当初の設計目標は、ローカル ホストの PCIe バスを使用する NVMe ストレージ デバイスのレイテンシと比較して、適切なネットワーク ファブリックを介して接続された NVMe ホストと NVMe ストレージ ターゲット間のレイテンシを 10 マイクロ秒以下に抑えることでした。 さらに、両者は技術的な詳細と動作メカニズムにおいて大きく異なります。 NVMe-oF は、NVMe (NVMe over PCIe) をベースに拡張および改善されています。具体的な違いは次のとおりです。
まず、Brocade がこれまで提唱してきた FC ファブリックについてお話ししましょう。 FC-NVMe は、NVMe コマンド セットを基本的な FCP 命令に簡素化します。ファイバー チャネルはストレージ トラフィック用に設計されているため、デバイスの検出、管理、エンドツーエンドの検証などの機能がシステムに組み込まれています。 ファイバー チャネルは、100 社を超えるテクノロジー企業が加盟する非営利団体 NVMExpress Inc. によって開発された仕様である NVMe over Fabrics (NVMe-oF) のファブリック トランスポート オプションです。その他の NVMe トランスポート オプションには、イーサネット経由のリモート ダイレクト メモリ アクセス (RDMA) と InfiniBand が含まれます。 NVM Express Inc. は、2016 年 6 月 5 日に NVMe-oF バージョン 1.0 をリリースしました。 国際情報技術標準化委員会 (INCITS) の T11 委員会は、NVMe-oF をファイバー チャネルに適用するためのフレーム形式とマッピング プロトコルを定義しました。 T11 委員会は 2017 年 8 月に FC-NVMe 標準の最初のバージョンを完成させ、INCITS に公開のために提出しました。 FC プロトコル (FCP) を使用すると、NVMe、Small Computer System Interface (SCSI)、IBM 独自の Fiber Optic Connection (FICON) などの上位層トランスポート プロトコルをマッピングして、ホストと周辺ターゲット ストレージ デバイスまたはシステム間のデータおよびコマンドの転送が可能になります。 NVMe over FC は、大規模なブロック フラッシュ ベースのストレージ環境で採用される可能性が最も高くなります。 FC-NVMe ファイバー チャネルは、SCSI と同じ NVMe-oF ファブリック、予測可能性、信頼性機能を提供し、さらに、NVMe-oF トラフィックと従来の SCSI ベースのトラフィックを同じ FC ファブリック上で同時に実行できます。 FC 標準に基づく NVMe は、FC-NVMe プロトコル層を定義します。 NVMe over Fabrics 仕様は、NVMe-oF プロトコル層を定義します。 NVMe 仕様は、NVMe ホスト ソフトウェアと NVM サブシステム プロトコル層を定義します。 潜在的なメリットを実現するために NVMe over Fibre Channel をサポートする必要があるインフラストラクチャ コンポーネントには、ストレージ オペレーティング システム (OS) やネットワーク アダプタ カードなどがあります。 FC ストレージ システム ベンダーは、自社製品を FC-NVMe 要件に準拠させる必要があります。 FC-NVMe をサポートするホスト バス アダプタ (HBA) の現在のベンダーには、Broadcom と Cavium が含まれます。 Broadcom と Cisco が主要な FC スイッチ サプライヤーです。現在、Brocade の Gen 6 FC スイッチはすでに NVMe-oF プロトコルをサポートしています。 NVMe over Fabric のホワイト ペーパーでは、ファイバー チャネルが NVMe over Fabrics のオプションとして明示的にリストされており、理想的なファブリックには信頼性の高いクレジット ベースのトラフィック制御および配信メカニズムが必要であることも説明されています。ただし、クレジットベースのフロー制御メカニズムは、FC および PCIe 伝送のネイティブ機能です。 NVMe のホワイト ペーパーでは、RDMA は「理想的な」NVMe over Fabric の重要な属性としてリストされていません。つまり、RDMA は NVMe Fabric を実装するための単なる方法であること以外は特別なものではありません。 FC は、DMA データ転送をサポートするゼロコピー テクノロジーも提供します。 RDMA は、ローカル サーバーからリモート サーバーにスキャッター ギャザー リストを渡すことによってローカル メモリをリモート サーバーと効果的に共有し、リモート サーバーがローカル サーバーのメモリを直接読み書きできるようにします。 NVMe over FC の詳細については、「NVMe over FC または FC-NVMe 標準」および「Brocade が FC を最適なファブリックと考える理由」を参照してください。 次に、RDMA テクノロジーをベースに NVMe over Fabric を実装する Fabric テクノロジーについて説明します。 RDMA テクノロジーは Infiniband ネットワークで初めて登場し、HPC 高性能コンピューティング クラスターの相互接続に使用されます。 NVMe over InfiniBand は、非常に高い帯域幅と低いレイテンシを必要とする高性能コンピューティング ワークロードに適しています。 InfiniBand ネットワークは通常、ホストとストレージ間の通信ではなく、バックエンド ストレージ システム内の通信に使用されます。 FC と同様に、InfiniBand は特別なハードウェアを必要とするロスレス ネットワークですが、フローおよび輻輳制御やサービス品質 (QoS) などの利点があります。しかし、FC とは異なり、InfiniBand にはファブリックにノードを自動的に追加する検出サービスがありません。 RDMA の詳細については、「RDMA テクノロジの原理の分析、主流の実装の比較と分析」の記事を参照してください。 ***、NVMe/TCP プロトコル オプション (一時的に NVMe over TCP と呼ばれます) について説明します。数年前、NVMe Express 組織は、伝送制御プロトコル (TCP) 伝送オプション (TCP ベースの iWARP とは異なる) をサポートすることを計画していました。最近、NVM Express Inc. は 16 か月ぶりに NVMe over TCP の最初のバージョンをリリースしました。このファブリック標準の出現により、NVMe プロトコル標準に準拠したファブリックを NVMe over Fabric として使用できるかどうかという疑問が解消されました。 ただし、TCP プロトコルはローカル PCIe アクセスよりもはるかに高いネットワーク遅延をもたらし、NVMe プロトコルの低遅延目標を損ないます。 RDMA テクノロジーを使用せずに、NVMe/TCP はどのようなテクノロジーを使用して RDMA テクノロジーと同様の伝送効果を実現しますか?以下は、Intel ストレージ ソフトウェア エンジニアの Yang Ziye 氏の言葉を引用し、NVMe/TCP の誕生につながったいくつかの技術的な理由について説明しています。 1. NVMe 仮想化の出現: NVMe 仮想化を前提としているため、NVMe-oF ターゲットには必ずしも実際の NVMe デバイスは必要ありません。これは分散システムから抽象化された仮想 NVMe デバイスである可能性があり、物理 NVMe デバイスの高性能特性を継承しない可能性があります。この前提の下では、低速 TCP プロトコルを使用することは悪い考えではありません。 2. 下位互換性: NVMe-oF プロトコルは、ある程度 iSCSI プロトコルを置き換えることを目指しています (元の iSCSI プロトコルは RFC3720 であり、多くの拡張機能があります)。 iSCSI プロトコルはイーサネット上でのみ実行できます。ネットワーク カードに対する要件はそれほど多くなく、ネットワーク カードが RDMA をサポートする必要もありません。もちろん、RDMA がサポートされている場合は、iSER プロトコルを使用してデータ転送用の CPU リソースをオフロードできます。ただし、NVMe-oF プロトコルは当初 TCP をサポートしていませんでした。そのため、ユーザーが iSCSI から NVMe-oF に移行すると、多くの既存のネットワーク デバイスが使用できなくなります。これにより、NVMe-oF プロトコルの受け入れが減少します。ユーザーがパフォーマンスを第一に考慮していないという前提の下では、既存の NVMe-oF プロトコルのハードウェア要件が顧客の変革に障害となり、ユーザーのデータセンターのスムーズなアップグレードを妨げることは明らかです。 3. TCP オフロード: TCP プロトコルはパフォーマンスを大幅に低下させますが、TCP でもオフロードを使用したり、スマート NIC や FPGA を使用したりすることができます。そうすれば、潜在的なパフォーマンス損失をある程度補うことができます。一般的に、短期的にはパフォーマンスが低下しますが、長期的にはプロトコルのハードウェア要件が削減され、パフォーマンスが向上します。その結果、全体的な受容性が向上します。 4. ソフトウェア RoCE との比較: TCP トランスポートが存在せず、ユーザーが RDMA ネットワーク カード デバイスを持っていない場合。 NVMe-oF をテストする場合は、ソフトウェア RoCE を使用してネットワーク デバイスを RDMA 機能を備えたデバイスにシミュレートし、対応するテストを実行する必要があります。実際の実装では、カーネルの対応するモジュールを使用して実際の UDP パケットをカプセル化し、RDMA プロトコルをシミュレートします。 TCP トランスポート プロトコルでは、それほど複雑ではありません。ユーザーは、より信頼性の高い TCP プロトコルを使用して、NVMe-oF の関連テストを実行できます。テスト展開の点では、よりシンプルで効果的です。 NVMe/TCP (NVMe over TCP) プロトコルは、iSCSI データの読み取りと書き込みの伝送プロトコルなど、ある程度 iSCSI プロトコルを借用しています。これは驚くべきことではありません。なぜなら、プロトコルの指定された参加者の中には、iSCSI プロトコルの指定された参加者もいるからです。また、iSCSI プロトコルの一部は非常によく記述されています。しかし、NVMe/TCP は iSCSI プロトコルよりもシンプルで、両者の本質を併せ持つとも言えます。 |
<<: 予想外に、分散キャッシュによって登録センターがこのようにダウンしてしまいました。
>>: 2019 年のクラウド コンピューティング市場の競争は企業にとって何を意味するのでしょうか?
6月26日午後、A5フォーラム(bbs.admin5.com)は正式に「A5トランザクション」に改名...
a2ghosting は、Minecraft ホスティング プロバイダーとして 2011 年 3 月...
[51CTO.comよりオリジナル記事] 現在、サイバー空間は陸、海、空、宇宙の4つの領域に次ぐ、国...
今日、「微音フォーラムがダウンしている」というニュースが注目を集めています。微音フォーラムは公式に発...
[[349916]]この記事はWeChatの公開アカウント「笑い好きの建築家」から転載したものです。...
ウェブサイトをランク付けするのは実はとても簡単です。現在、多くの新しいウェブサイトは、価値あるコンテ...
レバレッジマーケティングに関しては、従来の電子商取引ウェブサイトで作業する多くのマーケターがそれを非...
クラウド コンピューティングの登場により、従来は物理的なコンピューターでのみ提供されていたサーバー、...
モノのインターネットとエッジコンピューティングは、将来の技術開発に関する議論において長い間注目されて...
2009年4月17日から19日まで、「ボアオ・アジアフォーラム2009年次会議」が開催されました。今...
画像提供:CFPネット生活におけるあらゆる小さな行動、検索ボックスに入力するキーワード、何気ないチェ...
キーワードはウェブサイトの魂です。適切なキーワード拡張作業が行われないと、多くのキーワードはランキン...
地理位置情報データは、さまざまな政府機関に必要な情報を提供することができ、法執行機関は位置データを使...
検索エンジンのアルゴリズムが継続的に更新され、改善されるにつれて、ウェブサイト内の要素がウェブサイト...
[[405315]]写真は穆海傑氏(中央)が市政協商会議で演説しているところ(ファイル写真)今では、...