组播流量转发管理——IGMP Snooping简述

问题背景

在一个交换网络中,如果部署了组播业务,那么组播数据将不可避免地经过一些交换设备,在这种场景下,有一些问题需要格外关注。

如下图所示,以太网二层交换机SW通过自己的GE0/0/20接口连接到组播路由器R1,同时它还连接着一些PC。在这些PC中,PC1及PC2是某个组播组的成员,它们将会向网络中发送IGMP成员关系报告宣告自己加组,在此之后,如果R1收到发往该组播组的流量便会将这些流量转发到该交换网络,那么组成员PC1及PC2都会收到所需的组播流量。
在这里插入图片描述
众所周知,缺省情况下,当交换机在某个VLAN内收到目的MAC地址未知的单播帧、组播帧或广播帧时,它都会将这些数据帧在相同VLAN内进行泛洪,因此SW将会把发往该组播组的流量从自己的GE0/0/1,GE0/0/2及GE0/0/3等接口都转发出去(假设这些接口都属于相同的VLAN),这么一来,即使有些PC(例如图中的PC3)不是该组播组的成员,它们也将收到组播流量,这就造成了网络带宽和设备性能的浪费。

解决方法

通过在交换机上部署IGMP Snooping可以解决上述问题。

IGMP Snooping

  • IGMP Snooping ( Internet Group Management Protocol Snooping)技术主要用于在交换机上优化组播流量的转发行为。

  • IGMP是组播中颇为重要的一个协议,组播路由器通过IGMP管理组成员,而组播接收者也通过IGMP宣告加组及离组。

  • 当路由器与组成员之间存在二层交换机时,缺省时,交换机只是简单地转发网络中的IGMP报文,不会对这些报文的内容感兴趣。此外,当交换机在某个VLAN内收到组播流量时,它会将这些流量在相同VLAN内所有接口上进行泛洪,如下图所示:
    在这里插入图片描述

  • 当交换机部署了IGMP Snooping之后,它将会侦听组成员与IGMP查询器之间交互的IGMP报文,并解析IGMP报文中的相关信息,然后结合
    这些信息与接口、VLAN-ID等建立二层组播转发表项,这些转发表项将用于指导组播流量转发,确保流量只被转发到正确的接口上。

如图所示,在SW部署了IGMP Snooping之后,当组成员PC1及PC2通过IGMP membership report报文宣告自己加组时,SW除了将这些报文转发给组播路由器R1之外,还会解析报文中的内容,将报文中的组播组地址与接口GE0/0/ 1、GE0/0/2,以及VLAN-ID等信息进行绑定,从而创建二层组播转发表项。
在这里插入图片描述
当SW收到R1发送的组播流量后,会根据二层转发表中的表项将流量从GE0/0/1及GE0/0/2接口转发出去,此时非组成员的PC3将不会收到这些组播流量。因此部署了IGMP Snooping之后,交换机只会将组播流量从正确的接口转发出去。

IGMP Snooping基本术语

路由器接口(Router Port )

  • 所谓路由器接口,指的是运行了IGMP Snooping的交换机朝向上游组播路由器的接口,比如上图中SW的GE0/0/20接口。
  • 路由器接口可通过动态的方式自动发现,也可通过手工配置的方式静态指定。
  • 当动态发现路由接口时,IGMP Snooping交换机会将其收到IGMP常规查询报文或者PIM Hello报文的接口视为动态路由器接口。
  • 交换机将在路由器接口上收到上游组播路由器转发的组播流量。

成员接口(Member Port )

  • 成员接口是IGMP Snooping交换机朝向组播组成员的接口,比如上图中的GE0/0/1及GE0/0/2。
  • 成员接口可通过动态的方式自动发现,也可通过手工配置的方式静态指定。
  • 当动态发现成员接口时,IGMP Snooping交换机会将其收到IGMP成员关系报告的接口视为动态成员接口。

二层组播转发表(Layer 2 Multicast Forwarding Table)

  • 运行IGMP Snooping的交换机会侦听IGMP查询器与组成员之间交互的 IGMP报文,并维护一个重要的数据表——二层组播转发表,该表格中的表项将用于指导交换机转发组播流量。
  • 在二层组播表项中包含组播组地址、接口信息(路由器接口、成员接口)以及VLAN-ID等信息。在交换机上使用display 12-multicast forwarding-table命令(HW)即可查看其二层组播转发表:
    在这里插入图片描述

从上述输出可以看出,交换机Switch在VLAN 10中的路由器接口是GE0/0/24。当其在GE0/0/24接口上收到发往239.1.1.1的组播流量时,它会将这些组播流量转发到GE0/0/1、GE0/0/2及GE0/0/3接口,而同样处于VLAN10中的其他接口,则不会收到该组播流量。同理,如果交换机收到发往239.1.1.2的流量时,它只会将流量转发到GE0/0/7及GE0/0/8接口。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值