PGM 套接字选项

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

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

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

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