Creating an IP Multicast Application

Although IP multicast traffic is sent to a single address, multiple hosts process it. Collectively, the hosts listening to a specific IP multicast address are called a multicast group. With IP multicasting, only hosts that belong to a multicast group receive and process IP traffic sent to the group IP address. This process is similar to sending an e-mail message to an alias: only members of the alias receive the broadcast message. Multicasting is supported only on connectionless, UDP datagram sockets. For more information about membership in a multicast group, see Joining and Leaving a Multicast Group.

Other important aspects of IP multicasting include the following:

  • Dynamic group membership. A host can join and leave the group at any time.
  • A host can join a multicast group by sending an IGMP message.
  • A group can be any size. It can have members spread out across multiple IP networks.
  • A host can send IP traffic to a multicast group IP address without belonging to that group.

There are two types of messages used by IGMP:

  1. Host membership report, which is used by a multicast router to poll a network for any members of a specified group.

    When a host joins a multicast group, it sends an IGMP message to the All Hosts IP multicast address, 224.0.0.1, declaring its membership in a specific host group.

  2. Host membership query, which is used by a multicast router to poll a network for any members of a specified group.

    A router polls each network to verify members of a specific host group. If no hosts respond after the router makes several polls, it assumes no group members exist on that network. The router then stops propagating multicast traffic to that network and stops advertising to other routers data that it obtained previously about group members on that network.

The following section describes how to use Winsock functions in a Windows CE–based application to join a multicast group and receive IGMP support messages. It also describes how to send messages to a multicast address.

See Also

Winsock Application Development | Mapping an IP Multicast Address | Sending an IP Multicast Datagram | Joining and Leaving a Multicast Group | Receiving an IP Multicast Datagram | Reading Socket Options | Socket Options Not Supported

 Last updated on Saturday, April 10, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.