SPI でマルチキャストとマルチポイントをProtocol-Independentする

Windows Sockets 2 を使用すると、多数のトランスポート プロトコルの基本的なデータ転送機能に汎用的な方法でアクセスできるように、これらの機能を実装するトランスポートのマルチポイントおよびマルチキャスト機能を一般的に使用することもできます。 簡略化するために、マルチ ポイント という用語は、以降、マルチキャスト通信とマルチポイント通信の両方を指すために使用されます。

現在のマルチポイント実装 (IP マルチキャスト、ST-II、T.120、ATM UNI など) は、ノードがマルチポイント セッションに参加する方法、特定のノードが中央ノードまたはルート ノードとして指定されているかどうか、およびデータがすべてのノード間で交換されるか、ルート ノードとさまざまなリーフ ノードの間でのみ交換されるかに関して、大きく異なります。 Windows Sockets 2 WSAPROTOCOL_INFO 構造体は、プロトコルのマルチポイント属性を宣言するために使用されます。 これらの属性を調べることで、プログラマは、該当する Winsock 関数を使用してマルチポイント セッションを設定、使用、および破棄するために従う規則を把握できます。

マルチキャストをサポートする Windows ソケット 2 の機能は、次のように要約できます。

  • WSAPROTOCOL_INFO構造体の 3 つの属性ビット。
  • WSPSocketdwFlags パラメーターに対して定義された 4 つのフラグ
  • マルチポイント セッションにリーフ ノードを追加するための 1 つの関数 WSPJoinLeaf
  • マルチポイント ループバックを制御し、マルチキャスト転送のスコープを確立するための 2 つの WSPIoctl コマンド コード。 (後者は、IP マルチキャストの有効期間または TTL パラメーターに対応します)。

注意

これらのマルチポイント機能を Windows Sockets 2 に含めることは、サービス プロバイダーが IP マルチキャストの Deering ソケット オプションなどの既存のプロトコル依存インターフェイスもサポートすることを妨げるものではありません。