@CHIP-RTOS C Library - TCP/IP API
Add_IGMP_Membership
Install an IP multicast address entry. int Add_IGMP_Membership ( const unsigned long far *MulticastIP,
const unsigned char far *MacAddress,
int *error ); Parameters
MulticastIP
- Pointer to multicast IPv4 address
in network byte order.
MacAddress
- Pointer to a 6 byte array that
contains the corresponding Ethernet address.
error
- Output parameter: Failure
code, 0 on success.
Return Value
- 0: success
-1: See reported error
code.
Comments
- IP Multicasting is the Internet abstraction of hardware multicasting. It allows transmission of
IP datagrams to a group of hosts that form a single multicast group. Membership in a multicast group
is dynamic. Hosts may join or leave the group at any time. Each multicast group
has unique IP multicast address (Class D address). The first four bits of an IP multicast
address must match to binary 1110. IP multicast addresses range from 224.0.0.0 through
239.255.255.255.
For the usage of IP multicasting on an Ethernet interface, IP multicast addresses must be mapped to
Ethernet hardware addresses. The Ethernet device of the IPC@CHIP® will be switched into the Ethernet
multicast mode. In this mode it receives any incoming IP packet with the mapped Ethernet multicast
address and forwards it to the TCP/IP layer.
Each IP multicast packet will be sent with the mapped Ethernet multicast address.
Because of the feature, that a multicast IP packet will be received by any member of a multicast group,
sending and receiving of IP multicast packets is only usable with UDP sockets (datagram sockets).
After installing a IP multicast address with this API, the application programmer is able use this
address as a destination address when sending datagrams. A UDP socket is able to receive datagrams
at the specified multicast address.
The maximum number of supported IP multicast addresses in the IPC@CHIP® is limited to 15.
Before installing an IP multicast address, you can find out the corresponding Ethernet multicast address
with IPMulticast_to_MacAddr API.
This implementation does not support multicast routing.
Sending and receiving multicast datagrams works only at local network.
Using multicast addresses is only possible on the Ethernet interface.
SC1x3/SC2x Comments- This API applies only to IPv4 multicast.
See Also
RTOS API
- This library function invokes a RTOS software interrupt.
Refer to this RTOS API function's
documentation
for more details.
Supported since or modified in @CHIP-RTOS version-
SC12 | SC13 | SC11 | SC1x3 | SC2x |
-
V1.02 | V1.00 | V1.00 | V0.90 | V1.00 |
This API List
List of C Libraries
@CHIP-RTOS Main Index
End of document
|