RoCE と Infiniband と TCP/IPプロトコル:定義・違い・データセンターに最適な選択とは?
Jun 24th 2022より更新読了時間約1分
周知のように、ネットワークプロトコルは、ネットワーク上でデータを通信するための手順や規約の集合のことです。分散ストレージネットワークでは、通常、RDMA(Remote Direct Memory Access)とTCP/IPと2つのネットワークプロトコルが使用される。一般に、RDMAにはRoCE(RDMA over Converged Ethernet)、Infiniband、IWARP(Internet Wide Area RDMA Protocol)の3種類があります。この記事では、RoCE と Infiniband と TCP / IPプロトコルについて詳しく紹介します。
RoCE プロトコルとは
RoCE(RDMA over Converged Ethernet)は、IBTA(InfiniBand Trade Association)規格で定義されたイーサネットネットワークでリモートダイレクトメモリーアクセス (RDMA) を有効にするネットワークプロトコルで、CPUの負担を大幅に軽減してマシン間のデータ転送を可能にします。
一般に、RoCEにはRoCEv1とRoCEv2という2つのバージョンがあります。RoCE v1はイーサネットリンク層のプロトコルで、RoCE v2はインターネット層のプロトコルです。
前身であるIWARPプロトコルよりも低遅延を実現しているRoCEは、高いコスト効率、高性能、低消費電力などの利点を持っていて、現代の商用データセンターに多くの利点をもたらすことができます。特に、クラウドコンピューティングのような性能を重視したり、コスト制約には限りがあるコンピューティング環境に適しています。
Infiniband(インフィニバンド)プロトコルとは
Infinibandは、IBTA ( InfiniBand Trade Association ) で定義されているオープンスタンダードなインターコネクト・プロトコルで、RDMAをサポートする新世代のネットワークプロトコルです。
非常に高いスループットと低レイテンシーのため、、通常、コンピューター、サーバー、ハイパフォーマンス・コンピューティング、ストレージシステム間のデータ相互接続で使用されています。
RoCEとは異なり、イーサネットネットワークの代わりにInfinibandアダプタやスイッチ上でRMDAを有効にするため、InfinibandはRoCEよりも低遅延で広帯域を実現することができます。例えば、特定タイプのイーサネットスイッチのポート間のレイテンシが230nsであるのに対し、同じポート数のInfiniBandスイッチでは100nsとなります。したがって、IB NICやスイッチのサポートが必要なため、Infinibandの方が高価です。

TCP / IPプロトコルとは
TCP/TP(Transmission Control Protocol/Internet Protocol)は、インターネットを含む多くのコンピュータネットワークにおいて、世界標準的に利用されている通信プロトコルで、インターネット上のネットワーク機器を相互接続するために使用されます。

TCP/IP は、データのパケット化、アドレス指定、送信、ルーティング、受信の方法を特定します。TCP/IPは、2台のコンピューター間で正確にデータを伝送することに重点を置いて、一度にメッセージを送信する際に何らかの問題が発生した場合、メッセージ全体を再度送信しなければなりません。
また、TCP/IPの機能は、上からアプリケーション層、トランスポート層、インターネット層、ネットワークインターフェース層/リンク層という4つの層に分かれています。TCP/IP 4階層モデルの構造・詳細は「TCP/IP4階層モデルの構造・詳細について解説」をご覧ください。

RoCE と Infiniband と TCP/IP の比較
以下のように、それぞれの違いを述べています。
RoCE | Infiniband | TCP/IP | |
高いスケーラビリティ | √ | √ | × |
高いパフォーマンス | √ | √√ | √ |
容易な管理 | × | × | √ |
費用対効果 | √ | × | × |
ネットワークデバイス | ネットワークデバイス | IB スイッチなどIB プロトコルをサポートする機器 | ネットワークデバイス |
高いスケーラビリティ いずれも高いスケーラビリティと柔軟性を持っていますが、中でもInfinibandは最もスケーラビリティに優れています。なぜなら、Infinibandの1つのサブネットで数万台のノードをサポートできるためです。また、比較的シンプルでスケーラブルなアーキテクチャのため、Infinibandルータを通じてほぼ無制限のクラスタサイズを作成することができます。
高いパフォーマンス TCP/IPは、CPUの処理能力やレイテンシーに負担がかかるため、RoCEとInfiniband に比べてパフォーマンスが劣ります。RoCEは、企業のデータセンターのスピードとパワーを向上させ、TCOを削減することができます。Infinibandについては、高速シリアル通信リンクとバスを使用してデータを1ビットずつ送信するため、より高速で効率的な通信が可能になります。
容易な管理 RoCEやInfinibandはTCP/IPよりも低遅延で高性能ですが、後者の方が導入や管理が簡単です。TCP/IPを使用してデバイスやネットワーク接続を構築するネットワーク管理者は、安心かつ簡単に中央管理ができます。
費用対効果 予算には限りがある企業データセンターでは、Infinibandはおそらく良い選択ではありません。高価なIBスイッチングポートを使って多数のアプリケーションを伝送するため、企業の計算コスト、メンテナンスコスト、管理コストを増大させます。その一方、イーサネットスイッチを使った RoCE や TCP/IP は、よりコストパフォーマンスに優れています。
ネットワークデバイス 上表に示しているように、RoCE と TCP/IP はイーサネットスイッチでデータ転送を実現しますが、Infiniband は独立したアーキテクチャの IB スイッチでアプリケーションを転送します。一般的に、IB スイッチは IB プロトコルをサポートする機器と相互接続する必要があります。
データセンターに最適な選択とは?
現在、データセンターでは、基礎となるインターコネクトに最大限の帯域幅と極めて低いレイテンシーが要求されています。このような状況において、従来のTCP/IPプロトコルは、CPUの処理リソースに負担をかけ、レイテンシーも高いため、データセンターの要件にどんどん満足できなくなります。
RoCE と Infiniband プロトコル間の選択は、企業独自の要件とコストを考慮する必要があります。最も高性能なネットワーク接続を好む場合、Infinibandの方がはるかに優れています。一方、最高のパフォーマンスと簡単な管理、限られたコストを求める場合は、データセンターにはRoCEを選んだほうがいいです。