cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
552
Views
0
Helpful
5
Replies

IGMP Snooping

kfarrington
Level 3
Level 3

Does every packet that enters a switch port on an IGMP enabled switch get IGMP snooped? say TCP, UDP etc

Thx in advance :)

5 Replies 5

DALE FRANCIS
Level 3
Level 3

Ken,

From Cisco IGMP Doc:

A switch running IGMP snooping examines every multicast data packet to determine if it contains any pertinent IGMP control information. If IGMP snooping is implemented on a low end switch with a slow CPU this could have a severe performance impact when data is transmitted at high rates.

Regards

Dale

dfelter
Level 1
Level 1

No. If you recall, IGMP uses IP Protocol Type 2. Switches with specialized ASICs (to support IGMP Snooping) can simply recognize the IP Protocol Type to distinguish IGMP packets (Type 2) from actual multicast packets that use TCP (Type 6) or UDP (Type 17). As a result, only IGMP packets get snooped.

One of the inherent difficulties in implementing IGMP Snooping is that IGMP Membership Reports are transmitted to the destination IP address of the multicast group that the host wants to join. As a result, IGMP Membership Report packets and actual multicast packets (that use TCP or UDP) are indistinguishable at Layer 2 for a given multicast group since both packets use the same destination MAC address. Had the original designers of IGMP used the "All Hosts" IP multicast address (224.0.0.1), IGMP Snooping would be much easier to implement in software without undue stress to the switch CPU, since all IGMP Membership Reports would use a destination MAC address of 01-00-5e-00-00-01.

Many thx, that is great

one thing,

If a host IGMP membership report did use the 224.0.0.1 GDA, IGMP would not have to snoop all multicast packets. Is that correct? as the L2 forwarding table would just forward these packet with the mac of 01-00-5e-00-00-01 to the switching engine, or is that nonsense?

The point is moot - the IGMP v2 spec says that reports are sent to the group address.

None of the cisco switches that support IGMP snooping do it in software. All have hardware that picks out IGMP packets from all others based on IP protocol type, as mentioned in another post.

Every packet is checked, and if protocol type = 2 the CPU gets it. Otherwise, it is forwarded in hardware. No perf penalty for this.

Ken,

As discussed the switch can easily distinguish between M/cast control traffic and data flow. Here i show the Cat6k handles IGMP:

Only the 1st IGMP report per VLAN and per IP multicast group is forwarded to the router.

Subsequent reports for the same VLAN and group are suppressed.

The switch processor creates one entry per VLAN in the Layer 2 forwarding table for each MAC group from which it receives an IGMP join request then hosts interested in this multicast traffic send join (AKA Reports) requests and are added to the port list of this forwarding table entry.

Regards

Dale