Internet Wide Area RDMA Protocol

出典: フリー百科事典『ウィキペディア(Wikipedia)』

Internet Wide Area RDMA Protocol (iWARP)とは、RDMA over TCPを実現する通信プロトコル群の総称である。iWARPはRDMAP (RDMA Protocol) とDDP (Direct Data Placement Protocol) により構成される。また、より下層のMPA (Marker PDU Aligned) フレーミングとTCP、 あるいはSCTPを含めることもある。これらのプロトコルはRDMAコンソーシアムによって策定された標準が Internet Engineering Task Force (IETF) によって改版された。

iWARPは、従来のTCP上でゼロコピー通信を可能とする仕様であるVirtual Interface Architectureの上位セットである。

iWARPは InfiniBandの特徴をイーサネットに移植したものとも見ることができる。

概要[編集]

TCPスタックのカーネル実装はボトルネックと考えられていたため、いくつかのベンダーはTCP処理をハードウェアで実装している。 ハードウェア実装されたTCPでは、密結合ネットワーク環境では単純なデータロストは稀なため、TCPのエラー訂正機構はソフトウェアで実行される一方、より頻繁に行われる通信はネットワークカード上の回路で直接処理される。 このようなハードウェアはTCP Offload Engine (TOE) として知られている。

TOE自身は受信側の計算機におけるコピーを削減しないため、ゼロコピー通信を実現するためにはRDMAハードウェアも必要となる。 このRDMA / TCP の使用は異なる複数のプロトコルの集合として、ハードウェア上に実装されている。これは、ソフトウェアとして実現することも可能だが、性能は落ちる。

複数のうち主要なプロトコルはDirect Data Placement (DDP)[1]である。DDPにより実際にゼロコピー通信が実現される。DDP自身は実際のデータ転送は行わず、データ転送はTCPにより行われる。

しかしながら、 TCPはメッセージ境界を意識しない。TCPはデータをバイトシーケンスとして、下層のプロトコルのデータサイズ(Protocol Data Unit, PDU)に配慮することなく送信する。よって、DDP自身はTCPよりSCTPを用いたほうがより効率が良くなるため、IETFは RDMA over SCTP の標準化にも関心を持っている。DDP over TCP にはMarker PDU Aligned (MPA) フレーミング[2]と呼ばれるメッセージ境界を固定する調整が必要となる。

また、DDPは直接アクセスされることは意図されていない。代わりに、RDMA Protocol (RDMAP) [3]がデータを読み書きするサービスを提供する。つまり、RDMA over TCP とは、実はRDMAP over DDP over MPA over TCPであると言える。これらのプロトコル全てがハードウェア実装されることが期待される。

プログラムインタフェース[編集]

iWARPはInfiniBand (IB) と同様、標準プログラムインタフェースを持たず、代わりにverbの集合が定義されている[4]。ただしIBとは異なり、iWARPはTCPとSCTPが提供する高信頼通信方式のみがサポートされている。 同様にiWARP仕様ではアトミックリモート操作などIBの持つ多くの特徴が省かれている。

iWARPのためのネットワークプロトコルは、Linux向けのものは OpenFabrics AllianceによるOpenFabrics Enterprise Distribution (OFED) に、Windows向けのものは Winsock Direct Protocol に含まれている。

iWARP上で用いられるプロトコル[編集]

脚注[編集]

  1. ^ RFC 5041 (DDP Protocol Specification)
  2. ^ RFC 5044 (MPA Framing for TCP)
  3. ^ RFC 5040 (RDMA Protocol Specification)
  4. ^ RDMA verbs Specification (Version 1.0)

外部リンク[編集]