PGM 套接字选项

PGM 使用套接字选项来设置状态、提供多播参数,以及实现其多播功能。 此页指定应如何设置 PGM 套接字选项,枚举可用于 PGM 的套接字选项,并在适当情况下提供各种选项的使用示例和其他信息。 有关每个 PCM 套接字选项的基本定义,请参阅 套接字选项

Windowsxp: 不支持可靠的多播编程 (PGM) 。

以下套接字选项可用于 PGM 发送方:

RM\_LATEJOIN RM\_RATE\_WINDOW\_SIZE RM\_SEND\_WINDOW\_ADV\_RATE RM\_SENDER\_STATISTICS RM\_SENDER\_WINDOW\_WINDOW _ADVANCE\_METHOD RM\_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