original link http://baike.baidu.com/view/1517032.htm
IGMP Snooping简介
IGMP Snooping是Internet Group Management Protocol Snooping(互联网组管理协议窥探)的简称,它是运行在二层设备上的组播约束机制,用于管理和控制组播组。
IGMP Snooping原理
运行IGMP Snooping的二层设备通过对收到的IGMP报文进行分析,为端口和MAC组播地址建立起映射关系,并根据这样的映射关系转发组播数据。当二层设备没有运行IGMP Snooping时,组播数据在二层被广播;当二层设备运行了IGMP Snooping后,已知组播组的组播数据不会在二层被广播,而在二层被组播给指定的接收者。 IGMP Snooping和IGMP协议一样,两者都用于组播组的管理和控制,它们都使用IGMP报文。IGMP协议运行在网络层,而IGMP Snooping则运行在链路层,当二层以太网交换机收到主机和路由器之间传递的IGMP报文时,IGMP Snooping分析IGMP报文所带的信息,在二层建立和维护MAC表,以后从路由器下发的组播报文就根据CAM表进行转发。IGMP Snooping只有在收到某一端口的IGMP离开报文或者某一端口的老化时间定时器超时的时候才会主动向端口发IGMP特定组查询报文,除此之外,它不会向端口发任何IGMP报文。