IGMP详解

一、什么是IGMP?

        IGMP(Internet Group Management Protocol)是互联网组管理协议,它是一种用于IPv4网络中的第3层协议,主要作用是支持组播功能。

        IGMP的功能主要包括:主机通过发送IGMP报文来通知路由器加入或离开组播组,路由器则根据这些信息来维护组播组成员列表,并将组播数据转发给相应的主机。

二、IGMP协议版本说明

PV4版本: IGMPv1 IGMPv2 IGMPv3
IPV6版本:MLDv1,等同于IGMPv2;MLDv2,等同于IGMPv3

1.IGMPv1

1.1.功能说明

普遍组查询报文:

  • 组播路由器周期向224.0.0.1发送查询报文(周期60s),用来查询哪些组播组存在成员
  • 网段内的所有主机和路由器都可以接收

成员关系报告报文:

  • 主动报告:当主机加入某个组播组时,主动发送此报文
  • 被动报告:当主机收到查询报文后,必须在最大响应时间内随机取一个值进行计时,计时结束后被动发送成员关系报告报文。(最大响应时间10s)

响应抑制机制:

  • 当有多台主机同属一各个组播组时,只由计时器(最大响应时间)先超时的主机发送成员报告报文,其余主机不再发送成员报告报文。

注意:最大响应时间+响应抑制机制,可以节约网络带宽

1.2.存在的问题

没有单独的离开报文:

  •    当查询130s没有收到响应时,则才会认为该成员离开,无法及时进行成员状态的更新;
  •    130s来源:查询报文周期(60s)×健壮系数(2)+最大响应时间(10s)。健壮系数——指的是特定组查询连续发送的次数(v2有特定组查询)

查询器选举:

  • IGMPv1没有选举查询器的功能,需要依赖组播路由协议PIM来进行选举

IGMPv1中路由器无法控制成员的最大响应时间(10s)

1.2.IGMPv2

新增功能说明

特定组查询报文:

  • 查询报文新增特定组查询报文
  • 报文的组播地址字段为被查询的组播组IP地址,向网段内特定组播组的主机发送的查询报文,用于查询该组播组是否存在成员
  • 仅当查询者收到主机的离组报文后,才发送特定组查询报文。当连续2次特定组查询报文都无响应时,代表成员已经从此组播组离开;

成员关系报告报文的最大响应时间可更改

  • 主机收到普遍组查询报文的最大响应时间为10s(0~10取一个随机值),计时结束时发送此报文。(此最大响应时间可调---最大调为25s)
  • 主机收到特定组查询报文的最大响应时间为1s(0~1取一个随机值),计时结束时发送此报文。(此最大响应时间可调--最大为5s)

成员离开报文:

  • 报文的组播地址字段为被查询的组播组IP地址
  • 成员离开组播组后主动向网段内所有组播路由器发送离开报文
  • 发送的目的地址是224.0.0.2

查询器选举——不依赖组播路由协议

  • 当网段内有多台组播路由器时,选举IP地址最小的IGMPv2路由器为查询器。
  • 初次成为查询者时,前两次发送的普遍组查询报文间隔15s,之后再每隔60s发送一次普遍组查询报文
  • 非查询者在125s内收不到查询者发的查询报文,则会认为查询器失效,重新失效
  • 125s是“其它IGMP查询者的存活时间”,可以修改。此时间=健壮系数*普遍组报文发送间隔+一半的最大响应时间

1.3.IGMPv3

新增功能说明

组播源查询报文

  • 查询报文包括普遍组查询报文、特定组查询报文和特定组及源查询报文
  • 报文的组播地址字段为被查询的组播组IP地址
  • 向网段内特定组播组的主机发送的查询报文,用于查询该组成员是否愿意接收特定源发送的数据

报告报文(目的地址为224.0.0.22)

  • IGMPv3主要使用224.0.0.22地址来进行成员关系报告
  • v3使用组记录来表达组播组和组播源的对应关系
  • v3并且一份报文可以携带多个组记录(v1、v2一份报文只能携带一个组播组)
  • 成员离开不再发送特定的报文,而是使用含有组记录的成员报告来表达

删除了响应抑制机制

三、 IGMP配置

        IGMP snooping是在交换机和路由器中维护的端口和组播地址之间的关键。IGMP Snooping的交换机减少了不必要的报文传输,避免网络阻塞。

1.IGMP snooping

        启用IGMP Snooping能有效地节省带宽浪费。所有下游主机仅接收指定的报文,这些报文已通过组播请求。因此,支持IGMP Snooping的交换机适用于带宽需求较大的网络,如IPTV或其他流媒体服务,及Web会议网络等。

2.igmp snooping querier

        为启用IGMP Snooping,用户必须在网络中配置组播路由器,以生成IGMP查询器。如果没有查询器,用户无法定期检索、更新IGMP成员资格报告及组播成员资格表,这将导致IGMP Snooping无法正常工作。

结论:要启用IGMP功能,一般需要在交换机或路由器中启用igmp snooping 和 querier功能

  • 17
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷咪哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值