We've used Multicasting for the first time in one of our applications and whilst I have got it working, I'd really like to fully understand how it works and what's going on behind the scenes.
In an attempt to do this, I've run Wireshark on my PC to see what IGMP packets are sent/received by my PC when acting as a source or a member/destination.
I was puzzled to find that my PC is receiving IGMP and multicast packets that have nothing to do with my PC. I have a feeling that our switches are just broadcasting multicasts, rather than sending multicast packets to only the ports that are interested in the multicast.
Having done several Google's, I found this statement which explains and backs up what I thought:
The purpose of Cisco Group Management Protocol (CGMP) and Internet Group Management Protocol (IGMP) snooping is to restrain multicast traffic in a switched network. By default, a LAN switch floods multicast traffic within the broadcast domain, and this can consume a lot of bandwidth if many multicast servers are sending streams to the segment. - Cisco
Okay... so I guess I need to enable IGMP Snooping on our LAN. But what I don't know is, do I need to enable this on all of our Cisco switches (Model SG300-28P), or just one? PS. All switches are layer 2 - our firewall routes traffic between VLAN's.
What I think I need is:
bridge multicast filtering ip igmp snooping ip igmp snooping vlan 1 ip igmp snooping vlan 1 querier
Also, should I do the same for each VLAN (we only have 2, for voice and data).