PGM ソケット・オプション
PGM は、ソケット・オプションを使用して状態を設定し、マルチキャスト・パラメーターを提供し、それ以外の場合はマルチキャスト機能を実装します。 このページでは、PGM ソケット・オプションの設定方法を指定し、PGM で使用可能なソケット・オプションを列挙し、必要に応じて、各種オプションの使用例と追加情報を提供します。 各 PCM ソケット オプションの基本的な定義については、「 ソケット オプション」を参照してください。
Windows XP: Reliable Multicast Programming (PGM) はサポートされていません。
PGM 送信側には、次のソケット・オプションを使用できます。
- RM\_LATEJOIN RM\_RATE\_WINDOW\_SIZE RM\_SEND\_WINDOW\_ADV\_RATE RM\_SENDER\_STATISTICS RM\_SENDER\_WINDOW\_ADVANCE _WINDOW\ RM\_METHOD _SET\_MCAST\_TTL RM\_SET\_MESSAGE\_BOUNDARY RM\_SET\_SEND\_IF RM\_USE\_FEC
RM_SENDER_WINDOW_ADVANCE_METHOD オプションは、末尾のエッジ送信ウィンドウを進めるときに使用するメソッドを指定します。 optval パラメーターはE_WINDOW_ADVANCE_BY_TIMEのみ可能です (既定値)。 E_WINDOW_USE_AS_DATA_CACHEはサポートされていないことに注意してください。
PGM レシーバーには、次のソケット・オプションを使用できます。
- RM\_ADD\_RECEIVE\_IF RM\_DEL\_RECEIVE\_IF RM\_HIGH\_SPEED\_INTRANET\_OPT RM\_RECEIVER\_STATISTICS
PGM ソケット・オプションの設定
次のコード スニペットは、PGM ソケット オプションを設定するためのプログラミング ガイドラインを示しています。
ULONG OptionData; // This structure is option-dependent
// :
setsockopt (s,
IPPROTO_RM,
Socket_Option,
(char *) &OptionData,
sizeof (OptionData));
上記のスニペットでは、 OptionData の型と内容は、設定されているソケット オプションに依存します。 すべての PGM ソケット・オプションについて、ソケット・レベルはIPPROTO_RM。 PGM ソケット・オプションは、 バインド 関数の呼び出しの直後に設定する必要があります。ただし、次の例外があります。
- RM\_SET\_MESSAGE\_BOUNDARY RM\_SENDER\_STATISTICS RM\_RECEIVER\_STATISTICS