IGMP协议详解:IPv4组播管理核心协议
创作时间:
作者:
@小白创作中心
IGMP协议详解:IPv4组播管理核心协议
引用
CSDN
1.
https://blog.csdn.net/weixin_55299404/article/details/146347121
IGMP(Internet Group Management Protocol,互联网组管理协议)是IPv4网络中用于管理组播组成员关系的核心协议,负责在主机(接收者)和本地路由器之间传递组播组的加入/离开信息,确保路由器能够动态维护组播组的成员关系,并正确转发组播数据。
目录
- IGMP的核心功能
- IGMP版本演进
2.1 IGMPv1(RFC 1112)
2.2 IGMPv2(RFC 2236)
2.3 IGMPv3(RFC 3376) - IGMP工作流程
3.1 加入组播组
3.2 主机离开组播组
3.3 路由器维护组成员 - IGMP报文格式(以IGMPv3为例)
- 对比总结
5.1 IGMPv1、IGMPv2、IGMPv3 在处理主机加入的对比
5.2 IGMPv1、IGMPv2、IGMPv3 在处理主机离开的对比
5.3 IGMPv1、IGMPv2、IGMPv3 在成员报告抑制机制上的对比
5.4 IGMPv1、IGMPv2、IGMPv3 在选举查询器上的对比 - 基本配置
1. IGMP的核心功能
- 组播成员管理:主机通过IGMP通知路由器其希望加入或离开某个组播组。
- 组播成员查询:路由器定期发送成员关系查询报文,确认当前活跃的组成员。
- 组播转发控制:路由器根据组成员信息决定是否向特定网段转发组播流量。
2. IGMP版本演进
2.1 IGMPv1(RFC 1112)
- 基本机制:
- 成员关系报告:主机发送 Membership Report 报文加入组播组。
- 成员关系查询:路由器周期性(每60s)发送 General Query(目的地址 224.0.0.1,所有主机)查询组成员。
- 抑制机制:主机收到其他成员向组播组发送的报告消息后,会将自己成员关系报告抑制,不发送,并且删除本地计时器随机延时响应报告(避免报文冲突)。
- 主机离组:主机静默离开,路由器需等待超时(默认3分钟)后停止转发。仅支持组播组的加入,不支持指定特定源。
2.2 IGMPv2(RFC 2236)
- 改进点:
- 主机离开:主机通过 Leave Group 报文(目的地址 224.0.0.2)通知路由器离开组。
- 特定组查询:路由器可针对特定组播组发送查询(Group-Specific Query)。
- 查询器选举:同一子网中多个路由器通过比较IP地址选出唯一查询器(Querier)。
- 典型流程:
- 主机发送 Leave Group。路由器发送 Group-Specific Query 确认是否仍有成员。若无响应,路由器停止转发该组流量。
2.3 IGMPv3(RFC 3376)
- 核心增强:
- 源过滤(Source Filtering):主机可指定仅接收来自特定源(Allow)或排除特定源(Block)的组播流量。
- 支持SSM(Source-Specific Multicast):直接实现单源组播,无需依赖共享树(RPT)。
- 报文结构优化:支持携带多个组和源的列表,提高效率。
- 成员报告:主机报告目标IP地址为224.0.0.22 ,以方便两层交换机Snooping。
- 报文类型:
- Membership Report:携带(组,源)的包含或排除列表。
- General Query 与 Group-Specific Query:与IGMPv2类似。
3. IGMP工作流程
3.1 加入组播组
- 主机主动加入:
- 主机发送 Membership Report 报文(目的地址为要加入的组播地址)。
- 路由器收到后,记录该组播组与接口的绑定关系,并开始转发数据。
- 响应查询:
- 若路由器发送查询报文,主机需回复报告以维持组成员状态。
3.2 主机离开组播组
- IGMPv2/v3的主机离开:
- 主机发送 Leave Group 报文(IGMPv2)或 To_Exclude{} 报告(IGMPv3)。
- 路由器发送 Group-Specific Query 确认无其他成员后,停止转发。
3.3 路由器维护组成员
- 定时器机制:
- 组成员状态由 Membership Interval(默认260秒)维护。
- 若超时未收到主机的报告,则删除该组记录。
4. IGMP报文格式(以IGMPv3为例)
- 类型字段:
- 0x11:查询报文(General Query/Group-Specific Query)。
- 0x22:报告报文(Membership Report)。
- 0x17:离开报文(IGMPv2 Leave Group)。
- 关键字段:
- 组地址(Group Address):查询或报告的目标组播地址。
- 源地址列表(Source Address List)(仅IGMPv3):指定允许或拒绝的源IP列表。
5. 对比总结
5.1 IGMPv1、IGMPv2、IGMPv3 在处理主机加入的对比
- IGMPv1 的加入机制是由路由器周期发送查询报文,主机接收到查询报文后,如果希望接收某组组播,则发送报告报文。路由器收到报告报文后,就会向该接口转发该组组播。
- IGMPv2 的加入机制与 IGMPv1 一致,只是IGMPv2 的查询报文分为了普遍查询报文和指定组查询报文。加入机制中发送的是普遍查询报文,内容与IGMPv1 的查询报文一致。
- IGMPV3 由于区分组播源,所以主机端也要维护一张组播信息表来记录本机对组播源的取舍。当路由器发送普遍查询报文后,主机会发送成员关系报告报文来上报本机组播信息表状态。路由器汇总收到的所有成员关系报告报文后,再产生相应的组播信息表。
5.2 IGMPv1、IGMPv2、IGMPv3 在处理主机离开的对比
- IGMPv1 没有离开机制,主机默默离开
- IGMPv2 的主机希望离开某组播组时,会发送 Leave 报文。路由器收到 leave 报文后会发送指定组查询报文,询问 Leave 报文希望离开的组。如果收到了 Report 报文,则不删除该组,如果没有收到,则删除该组。
- IGMPv3 的主机离开分两种情况:
- 离开某个组播源:主机不再希望接收某个组播源的组播,则发送 Report 报文,携带信息Block(组播源地址)。路由器收到后会发送指定组查询报文,询问该组播组和该组播源。如果收到了 Report 报文,则不删除该组播源;如果没有收到,则删除该组播源。
- 离开某个组播组:主机不再希望接收某个组播组的组播,则发送 Report 报文,携带信息NULL。路由器收到后会发送指定组查询报文,询问该组播组。如果收到了 Report 报文,则不删除该组播组记录;如果没有收到,则删除该组播组记录。
5.3 IGMPv1、IGMPv2、IGMPv3 在成员报告抑制机制上的对比
- IGMPv1 主机的报告报文以组播发送,其他主机也能收到该报文。主机收到报告报文后,启动计时器,计时器时间内,如果本机也希望接收该组组播,不再发送报告报文。
- IGMPv2 的成员报告抑制机制与 IGMPv1 一致。
- IGMPv3取消成员报告抑制机制。由于IGMPV3 每台主机还自行维护组播信息表,考虑到不同主机对组播源取舍情况相同的几率较低,所以取消该机制。
5.4 IGMPv1、IGMPv2、IGMPv3 在选举查询器上的对比
- 查询器是为了防止组播被重复处理,一个网段中要选出的唯一组播转发者。
- IGMPv1 无法选举查询器,需要依靠上层组播路由协议来选举。
- IGMPv2 与 IGMPv3 可以自行选举查询器,IP地址小的优先。
- PIM 协议的 DM 模式下,如果路由器运行了 IGMPv1、则 PIM 会进行查询器选举,IGMPv2 和IGMPv3 则不选举。
- PIM 协议的 SM 模式下,无论路由器运行了什么版本的 IGMP,都由 PIM 来选举查询器。
6. 基本配置
# 思科设备配置
ip igmp version ? //启用igmp版本(默认为IGMPv2)
# 华为、华三设备配置
igmp enable //需要手动开启
igmp version ? //默认为v2
热门推荐
以太坊2.0全面落地!2025年底价格暴涨逻辑深度解析
麦粒肿吃消炎药有用吗
如何深入了解各类基金的稳健性表现?这些基金的稳健性对投资回报有何影响?
保质期太长的东西不能买,里面加了很多防腐剂?这是真的吗?
如何合理选择投资基金?这些投资基金的选择依据是什么?
钠电池降本潜力待挖
中国保护矿种钨锡锑,最新的9个规划区和26个重点勘查区
阴魂不散的「故事大纲」vs 深藏不露的「工作大纲」
络石:一种常见的园林植物
苹果的营养价值与健康益处:让生活更美好的水果选择
小孩遗尿症是什么原因造成的
青柠檬和黄柠檬的区别:哪个更适合泡水喝?
《红楼梦》中,宝玉和黛玉的爱情,是凡人相爱的最高境界
“腊八不忘仨,来年把财发”,腊八节就做这三事,简单好寓意
“阿赖耶识”到底是什么
汽车放多久需要启动一次?全面解析与保养建议
天然气流量测量的几种流量计类型
喉结变大变硬是怎么回事
女子长期吃牛黄解毒片后“砒霜”中毒……医生紧急提醒
概率图模型在机器学习中的应用:贝叶斯网络与马尔可夫随机场
无人机战争:俄乌冲突如何重塑未来战场?
炒芋头时,记住不要焯水和直接炒,教你一招,搭配米饭连汤都不剩
美的空调尘满指示灯怎么消除
法律上赡养老人儿子和女儿怎样承担义务
留学研究生申请条件及要求
潍坊文化,何以历久弥新
历史上唐僧独自西天取经,是如何演化成《西游记》中四人组的?
毛坯房物业费怎么算?一文详解缴纳规定与计算方法
如何计算股票支撑位?这种计算方法对投资决策有何帮助?
无人继承的财产如何处理