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
热门推荐
口感像蛋黄一样的水果,你吃过吗?
新任美队犹豫复联重组?背后原因让人深思
古埃及神话中的权力之争
二战苏联的冷门武器,用其他火炮拼凑的M1943步兵炮
永生水母:大自然永恒奇迹启发的长寿研究
三角形三边关系:从基本判定到直角三角形的特殊性质
《冰汽时代2》:一次以生存为背景板的思想实验
试管婴儿VS自然怀孕:风险对比速览
猫咪频繁放屁?可不是一件小事!
哪些疾病不能考公务员?六大类
花卉苗木防病虫害正当时
健身吃芒果好吗?芒果营养成分解析!
从线性变换到相似矩阵的本质探讨
膝关节测试和诊断方法
当游戏遇到安全问题,怎么做?游戏治理至关重要!
人体解剖学基础——心脏篇(Heart)
这几类食物变质之后千万别吃,就算一直放冰箱也没用
为什么到了新疆,你就会爱上吃馕?
银行贷款基准利率怎么算利息?关键看实际利率和计算公式
使用wpa_supplicant和wpa_cli 扫描WiFi热点及配网
当孩子心跳不再“童真”——如何识别儿童心肌炎
老年人白内障手术,早做还是晚做?
河南省直住房公积金哪个银行支持提取?
律师解读:协议管辖的五个实务要点
在路边埋狗犯法吗?可能面临哪些法律后果?
独创性在著作权法中的规定与应用
法律硕士公务员限制:2024年法学硕士和法律硕士的就业困境
这次,国产游戏真的在颁奖季「赢了又赢」
二战日本,最精锐的17个甲种师团,是如何被消灭的
简述食物中毒的处理原则