With Voice and Video over IP we often use an Internet Protocols known as IGMP (Internet Group Management Protocol) so that client devices can indicate their desire to receive specific multicast traffic streams. IP multicast senders forward traffic addressed to a multicast IP address, and the receivers sent IGMP join messages to the local router. The local router forwards the multicast stream into the LAN and the layer 2 switches flood the traffic to ensure that the intended recipient actually receives the stream. IGMP has 3 versions, with version 1 being the simplest. Version 1 of IGMP does not have a specific leave method and the routers must employ query messages and timers to discover the presence of receivers. Versions 2 and 3 of IGMP employ a method where receivers communicate with the multicast router, and use leave messages to indicate when they are finished with the multicast stream of packets.
IGMP snooping can be employed on compliant Layer 2 switches so that the switch is configured to listen for join messages from receivers to the local router, and make a note of which interface the message was sent from. The Layer 2 switch actually reads the content of the Ethernet frame to read the Multicast Group Address contained in the IGMP join message. This information is entered in the switch’s CAM (Content Addressable Memory) so that when the multicast stream flows from the router, it knows which specific ports out of which to forward the traffic. Once the receiving device eventually sends a leave message, the switch will remove that host from the CAM table. So now the traffic is only delivered to specific receivers, thus making the delivery of this Multicast traffic more efficient.
One thing to bear in mind with IGMP snooping is that on busy switches this additional configurable feature may have an impact on the performance of the switch in terms of memory and CPU and in extreme circumstances cause the switch to be overloaded. This is normally only true on small, low-end switches that already have high traffic flows to and from attached hosts.
There are alternatives to IGMP snooping. Watch out for our future post on CGMP (Cisco Group Management Protocol).