IPPROTO_RM Socket Options

The following table describes IPPROTO_RM socket options that apply to sockets created for the IPv4 address family (AF_INET) with the protocol parameter to the socket function specified as reliable multicast (IPPROTO_RM). See the getsockopt and setsockopt function reference pages for more information on getting and setting socket options.

To enumerate protocols and discover supported properties for each installed protocol, use the WSAEnumProtocols, WSCEnumProtocols, or WSCEnumProtocols32 function.

Windows XP: Reliable Multicast Programming (PGM) is not supported.

Some socket options require more explanation than these tables can convey; such options contain links to additional pages.

**IPPROTO\_RM Socket Options**
Option Get Set Optval Type Description
RM_ADD_RECEIVE_IF yes ULONG Receiver only. Adds an interface on which to listen (the default is the first local interface enumerated). The optval parameter specifies the network interface in network byte order to add. The value specified replaces the default interface on the first call for a given socket, and adds other interfaces on subsequent calls. To obtain INADDR_ANY behavior, each network interface must be added separately.
RM_DEL_RECEIVE_IF yes ULONG Receiver only. Removes an interface added using RM_ADD_RECEIVE_IF. The optval parameter specifies the network interface in network byte order to delete.
RM_FLUSHCACHE yes N/A Not implemented.
RM_HIGH_SPEED_INTRANET_OPT yes yes ULONG Receiver only. Specifies whether a high bandwidth LAN (100Mbps+) connection is used.
RM_LATEJOIN yes yes ULONG Sender only. Percentage of window size allowed to be requested by late-joining receivers upon session acceptance. Maximum value is 75% (default is zero). Disable this setting by calling again with value set to zero.
RM_RATE_WINDOW_SIZE yes yes RM_SEND_WINDOW Sender only. Sets the transmission rate limit, window advance time, and window size.
RM_RECEIVER_STATISTICS yes RM_RECEIVER_STATS Receiver only. Retrieves statistics for the receiving session.
RM_SEND_WINDOW_ADV_RATE yes yes ULONG Sender only. Specifies the incremental advance rate for the trailing edge send window (default is 15%). Maximum value is 50%.
RM_SENDER_STATISTICS yes RM_SENDER_STATS Sender only. Retrieves statistics for the sending session.
RM_SENDER_WINDOW_ADVANCE_METHOD yes yes ULONG Sender only. The optval parameter specifies the method used when advancing the trailing edge send window. The optval parameter can only be E_WINDOW_ADVANCE_BY_TIME (the default). Note that E_WINDOW_USE_AS_DATA_CACHE is not supported.
RM_SET_MCAST_TTL yes ULONG Sender only. Sets the maximum time to live (TTL) setting for multicast packets. Maximum and default value is 255.
RM_SET_MESSAGE_BOUNDARY yes ULONG Sender only. Specifies size of the next message to be sent, in bytes. Meaningful only to message mode sockets (SOCK_RDM). Can be set while the session is in progress.
RM_SET_SEND_IF yes yes ULONG Sender only. Sets the sending interface IP address in network byte order.
RM_USE_FEC yes yes RM_FEC_INFO Sender only. Notifies sender to apply forward error correction techniques to send repair data. FEC has three modes: pro-active parity packets only, OnDemand parity packets only, or both. See RM_FEC_INFO structure for more information.

 

**Windows Support for IPPROTO\_RM options**
Option Windows 7 Windows Server 2008 Windows Vista Windows Server 2003 Windows XP Windows 2000 Windows NT4 Windows 9x/Me
RM_ADD_RECEIVE_IF x x x x x
RM_DEL_RECEIVE_IF x x x x x
RM_FLUSHCACHE x x x x x
RM_HIGH_SPEED_INTRANET_OPT x x x x x
RM_LATEJOIN x x x x x
RM_RATE_WINDOW_SIZE x x x x x
RM_RECEIVER_STATISTICS x x x x x
RM_SEND_WINDOW_ADV_RATE x x x x x
RM_SENDER_STATISTICS x x x x x
RM_SENDER_WINDOW_ADVANCE_METHOD x x x x x
RM_SET_MCAST_TTL x x x x x
RM_SET_MESSAGE_BOUNDARY x x x x x
RM_SET_SEND_IF x x x x x
RM_USE_FEC x x x x x

 

Remarks

The IPPROTO_RM socket options and the structures used by these socket options are defined in the Wsrm.h header file.

The IPPROTO_RM or the IPPROTO_PGM constant can be used to specify the protocol parameter to the socket function to use the RM socket options. On the Microsoft Windows Software Development Kit (SDK) released for Windows Vista and later, the IPPROTO_PGM constant is defined in the Ws2def.h header file to the same value as the IPPROTO_RM constant defined in the Wsrm.h header file.

Requirements

Requirement Value
Header
Wsrm.h