Application notes and white papers
IP multicast control (IGMP)—executive summary
Unlike the majority of today's point-to-point network applications, emerging multimedia applications such as LAN TV, collaborative computing, and desktop conferencing depend on the ability to send the same information from one host to many or many hosts to many hosts. The rising need for this type of multipoint communication presents an interesting challenge for networks. For example, email systems can use multipoint communication to deliver mail updates to multiple servers simultaneously. Mail servers can update their databases in one session instead of having to establish multiple point-to-point sessions between systems. Future multimedia applications can also use multipoint services to facilitate the delivery of CD-ROM, live TV video feeds to multiple systems across the network, or multipoint video conferencing.
The IP community developed IP multicasting as an efficient means to support these demands. Multicasting (directing the same information packets to multiple destinations at the same time) is much more efficient than unicasting (sending a separate copy to each individual destination). The benefits of IP Multicasting are; 1) the sender only has to send out one copy of the information packet instead of many, 2) the information is delivered in a more timely, synchronized fashion because all destinations receive the same source packet, 3) multicasting can be used to send information to destinations whose individual addresses are unknown (similar to a broadcast), and 4) it reduces the overall number of packets on the network (that is, one multicast packet sent instead of many unicast packets). Unfortunately networks without some type of multicast control treat a multicast as a broadcast. This means that all hosts that reside in a destination network must process all multicasts sent to that network. In an environment rich in multicast types of applications, this could require performance robbing CPU cycles from all hosts on the network. Internet Group Management Protocol (IGMP) was developed to address this problem.
What is IGMP?
Internet Group Management Protocol (IGMP), an internal protocol of the Internet Protocol (IP) suite, provides a means to automatically control and limit the flow of multicast traffic through the network. Applications that implement IGMP, on networks that support IGMP, effectively eliminate multicast traffic on segments that are not destined to receive this traffic.
IGMP manages multicast traffic throughout networks with the use of special multicast queriers and hosts that support IGMP. (A "querier" is a network device that sends queries. It is typically a router but can be another type of device that is designed to behave as a querier, such as the HP switches that support this feature). Each set of queriers and hosts that send and/or receive multicast data streams from the same set of sources is called a multicast group. IGMP identifies members of the multicast group per "subnet" and provides mechanisms (messages) by which queriers and hosts can join and leave multicast groups.
The queriers and hosts use three specific message structures, "query", "report", and "leave group", to communicate to each other about the multicast traffic. Query messages are used queriers to discover which network devices are members of a given multicast group. Report messages are sent by hosts in response to queries to inform the querier of a host's membership. The host may also use the report message to join a new group. Leave group messages are sent when the host wishes to leave the multicast group.
HP switches have a standards based IGMP implementation which allows our switches to recognize and take actions based on IGMP packets flowing through the switch. These actions include;
1) learning which of the switch's interfaces are linked to other hosts and multicast routers and
2) becoming a querier when discovering that a multicast router is not present on the network. Figure 1 depicts IGMP running over an entire network. Notice that Switch #1 without IGMP does not differentiate IP multicast group members from non-members, thus two PCs on Net A that are not video clients receive large amounts of unwanted multicast traffic. However, Switch #2 with IGMP enabled, is only sending this traffic out the port connected to a subscribing Video Client PC. Thus Switch 2 is much more efficient in eliminating unnecessary traffic.
Figure 1. IGMP Running Over an entire Network
Switch #2 limits multicast traffic by first monitoring IGMP traffic and learning which hosts are in which multicast groups. The switch then only allows IP multicast traffic to be sent to ports with valid host group members. Hosts join a multicast group by successfully completing an IGMP Join Host Group operation (controlled by the client's software application). When the switch receives an IGMP packet, it processes this information and creates/updates IP multicast forwarding tables to reflect the IGMP membership changes. The switch also propagates the IGMP packet to the appropriate hosts and routers on the network.
For more information
There are many technical aspects of IP Multicast that were not discussed here. The IP Multicast Initiative Web site at www.ipmulticast.com has a technical resource center which provides more background and in-depth information The Web site also offers a product and services directory and lists members of the IP Multicast Initiative who can be contacted for information and assistance.