IGMP相关知识总结

#HCIP备考

IGMP协议

当组播数据在组播网络中传递的时候,组播路由器需要知道组播成员的位置以及所加组播组才能进行转发,那么我们怎样进行感知呢?

有两种方式:

手工感知:手工静态灵活性差,且配置工作量大,但是比较稳定,对于新上线的成员够尽快组播转发

动态感知:通过IGMP协议检测到组播成员所在接口以及组成员加组信息,动态感知比较灵活,配置简单,一般都用动态感知。

IGMP用来建立和维持组播组成员关系。

IGMP有三个版本

IGMPV1

IGMPV2

IGMPV3

组播路由器与组成员交互后会产生IGMP路由表项以及IGMP组表项。

IGMP路由表项以及IGMP组表项帮助设备生成组播路由表项

在最后一跳路由表,组播路由表可以基于IGMP路由表项、IGMP组表项、以及组播协议路由表(PIM路由表)汇总后形成。

IGMP路由表项和IGMP组表项能够为组播协议路由表提供组播组地址信息以及出接口信息。

IGMPV1

查询和响应机制由两种报文实现:

普遍组查询报文:查询器向共享网络中的所有主机和路由器发送的查询报文,用于查询哪些组播组存在成员

成员关系报告报文:主机向查询器发送的报告报文,用于查询加入某个组播组或者答应查询报文。

由于IGMP是组播报文,因此一个多路访问网络里只需要一个组播路由器发送查询报文即可,该组播路由器被称为IGMP查询器。

IGMPV1查询器选举

IGMPV1没有特定的查询器选举机制,依赖于组播路由器协议(PIM)进行IGMP查询器选举。

IGMPV1将组播路由协议(PIM)选举出的唯一组播信息转发者(ASSERT winner或DR)作为IGMPV1的查询器,负责该网段的组成员信息查询。因为只有查询器会发送普遍组查询报文。

查询器和非查询器都能收到成员关系报告(目的地址是224.0.0.1),因此均能形成IGMP路由表和IGMP组表项。

IGMPV1成员离开机制

IGMPv1没有特定的成员离开报文,只是当成员离开后便不会在响应普遍组查询报文,在特定时间(130s)内没有收到成员的报告报文,就判定成员已经离开。普遍查询报文每隔60s发一次,成员报告报文定时器范围是0~10s。

IGMPV2介绍

IGMPV2相对于IGMPV1增加了查询器选举机制以及完善了成员离开机制,IGMPV2可以和IGMPV1兼容。

IGMPV2报文

为了改善组成员离开机制,相对于IGMPV1新增加了两个报文:

特定组查询报文:查询器向共享网段内制定组播组发送的查询报文,用于查询该组播组是否存在成员,目的地址为所查询组播组的组播地址。

成员离开报文:成员离开组播组的时候主动向查询器发送的报文,用于宣告自己离开组播组,报文的目的地址是224.0.0.2。

IGMPV2查询器选举机制

IGMPV2采用独立的查询器选举机制,当共享网段中存在多个组播路由器的时候,接口IP地址最小的选举为查询器。

IGMPV2组成员离开机制

查询器通过特定组查询报文和成员离开报告报文加速感知成员变化。

IGMPV1/V2的缺陷

出于安全考虑,如果我的组成员只想接受特定源组的组播数据,组成员需要告诉查询器接受数据的组播源地址,但是V1/V2又不携带组播源信息,就无法配合SSM使用。所以我们就开发了ICMPV3结合SSM使用。

IGMPV3介绍

IGMPV3工作机制大部分和IGMPV2工作机制类似:

查询器选举机制一致:IP地址小的为查询器

使用普遍组查询报文查询组成员加组信息。

使用特定组成员报文查询特定组播的成员存活情况

IGMPV3相对于IGMPV2的变化如下:

IGMPV3新增加特定源组查询报文

成员报告报文不仅包含了主机所要加入的组播组,还包含了主机想要接受来自哪些组播源的数据。

由于同一个组播组的成员想要接收来自不同组播源的数据,所以就不再采用成员关系报告报文抑制机制。

IGMPV3没有定义专门的成员离开报文,成员通过特定类型的报告报文传达。

IGMPV3的成员加组机制

IGMPV3成员离组机制

IGMPv3没有专门的成员离开报文,成员离开需要借助组成员关系报告实现。

IGMP查询器在收到改变源组对应关系的成员关系报告后,会发送特定源组查询报文,确认是否还有组成员存在。

以太网的组播转发问题

当组播数据从最后一跳转发到组播组成员的时候,往往会经过交换机,由于组播数据的MAC地址是组播地址,所以交换机默认会泛洪此类数据帧,可能导致不同组的组播流量会被别的组的组成员接收。 

IGMP Snooping介绍

可以实现组播数据在数据链路层的转发和控制。

当主机和上游三层设备之间传递的IGMP协议报文通过二层组播设备时,IGMP Snooping分析报文携带的信息,根据这些信息建立和维护二层转发表,从而指导组播数据在数据来链路层按需转发。

端口和转发表介绍

二层转发表中存在两种端口:

路由器端口

成员端口

IGMP SSM Mapping介绍

现在网络中存在着IGMPV1以及V2网络,由于V1V2不携带组播源信息,所以无法使用SSM网络,IGMP SSM Mapping通过静态的将组播源与组播组绑定,使得V1V2得以接入SSM网络。

现实中可能存在一台IGMP查询器管理多台组成员的情况,这样会大大的增加查询器的负担,这时候我们就引进了IGMP Proxy 概念,IGMP Proxy定义了两类接口:

主机接口:配置了IGMP Proxy端口,该接口一般面对IGMP查询器。

路由器接口:IGMP proxy设备上配置了IGMP功能的接口,该接口一般面对组成员。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值