网络技术
H3C网络技术
H3C 设备CLI(命令行)管理
H3C基础配置知识
H3C 设备型号概述
H3C网络端口基础信息与配置
H3C网络设备概述
HCL模拟器使用简介
H3C WX2540H 本地portal认证+本地用户认证实现web认证
网络的基本概念与定义
VLAN简介与配置
生成树配置
STP简介与配置
RSTP简介
MSTP基本概念
交换机FTP和TFTP操作
配置文件与升级
网络设备登录管理方式
网络设备文件系统操作
H3C MSR路由器出口双线负载均衡
策略路由配置
以太网链路聚合
DHCP中继
防火墙简单配置实验
华为_HCIP
认识设备-硬件架构与逻辑平面
路由基础-HCIP
OSPF路由基础概述
Router LSA详解
OSPF-Network LSA(二类LSA)与区域内路由计算
OSPF-区域间路由计算
计算机网络-OSPF防环机制
计算机网络-RIP动态路由协议简介
OSPF区域外部路由计算
OSPF特殊区域-Stub区域
计算机网络-NSSA区域与Totally NSSA区域
OSPF路由汇总
OSPF其它特性
IS-IS路由协议基础概念
IS-IS基础概念二
IS-IS邻接关系建立
IS-IS链路状态数据库同步
IS-IS路由计算
IPv6基础概念
IPv6缩写规范与地址分类
ICMPv6基础知识
ICMPv6之NDP协议
计算机网络-IPv6地址配置
DHCPv6基础概念
DHCPv6配置
IPv6路由配置
路由策略与路由工具
计算机网络-Filter-Policy过滤策略
Route-Policy路由策略
策略路由概念与应用
MQC策略简介与配置
流量过滤策略
BGP的背景与概述
BGP基本概念
BGP报文类型简介
BGP状态机制与对等体表项
BGP路由生成与路由表
BGP路由通告原则
BGP基础实验配置
BGP路由优选概述
BGP路由优选原则一Preferred-Value
BGP路由优选原则二-本地优先级
BGP路由优选原则三-路由类型
BGP路由优选原则四-AS_Path属性
BGP路由优选原则五-Origin属性优选
BGP路由优选原则六-优选MED属性值最小的路由
BGP路由优选原则七-EBGP优于IBGP
BGP路由优选原则八-优选IGP Cost值小的路由
BGP路由负载分担
BGP路由反射器与Cluster list选路原则
BGP路由优选原则九-优选Router ID小的设备通告的路由
计算机网络-IP组播基础
组播地址与组播网络组成
组播数据转发原理与RPF
组播分发树与组播协议
IGMP协议简介
IGMPv1工作原理
IGMPv2工作原理简介
IGMPv3的工作原理
IGMP Snooping特性
计算机网络-PIM协议基础概念
PIM-DM密集模式工作原理
基于PIM-DM+IGMP的组播实验配置
PIM-SM(ASM)基础
PIM-SM(SSM)基本原理
PIM-SM组播实验
BFD检测机制
BFD配置实验
VRRP基础概念
VRRP工作原理与选举过程
VRRP主备切换与主备回切
VRRP基础实验一
RSTP基础概念
RSTP工作原理与P/A机制
MSTP概述
MSTP基础概念
MSTP工作原理概述
MSTP基础实验一(单域多实例)
计算机网络-VPN虚拟专用网络概述
计算机网络-GRE(通用路由封装协议)简介
GRE-动态路由协议实验
IPSec VPN基本概念
IPSec VPN工作原理
IPSec VPN基础实验一(主模式)
GRE Over IPSec实验
计算机网络-L2TP VPN基础概念与原理
L2TP VPN基础实验配置
L2TP Over IPSec基础实验
SSH理论基础
VRF基本概念
MPLS基础概念
MPLS转发原理
MPLS静态标签实验
计算机网络-LDP标签分发协议
LDP工作原理-LDP会话建立
LDP标签发布与管理
LDP工作过程详解
VPN实例应用于交换机带外管理接口
H3C V7防火墙IPSECVPN配置(主模式配置)
网络设备拨号设置
网络地址分类与子网划分
防火墙区域以及安全策略配置(命令行版)
H3C V7 IPSEC_VPN配置(野蛮模式配置)
华为_HCIA
路由基础
以太网交换基础
VLAN的原理与配置
VLAN间通信
STP生成树简介
华为VRP系统简介
NAT网络地址转换
ACL访问控制列表
AAA的原理与配置
DHCP配置
链路聚合原理与配置
PPP与PPPoE协议
OSPF路由基础
无线通信基础原理
无线组网基本概念
无线网络配置原理与步骤
典型无线组网实验配置
网络设备防火墙是什么?
防火墙工作原理与安全策略
华为VRP系统基础命令配置
本文档使用 MrDoc 发布
-
+
首页
IGMPv3的工作原理
## 一、SSM模型带来的挑战 出于安全考虑,组播组成员可以只选择接收从特定组播源发来的组播数据。组成员需要告知组播网络,接收来自哪些特定组播源的组播流量。 IGMPv1与IGMPv2的报文中均无法携带组播源的信息,因此无法配合SSM使用(可使用SSM Mapping功能解决这个问题)。  回顾我们学习过的IGMPv1和IGMPv2,组播组成员通过成员关系报告在组播网络中告诉查询器自己要加入组G1,查询器生成对应的IGMP表项,**但是在一个组播网络中是可以有多个组播源的**,V1和V2无法指定在一个组播网络中指定接收特定组播源的报文数据。 IGMPv3主要是为了配合SSM(Source-Specific Multicast)模型发展起来的,提供了在报文中携带组播源信息的能力,即**主机可以对组播源进行选择。** SSM模型的组播地址范围:232.0.0.0~232.255.255.255。SSM Mapping功能将在IGMP特性章节介绍。 ## 二、IGMPv3工作原理 ### 2.1 IGMPv3简介 IGMPv3大部分工作机制与IGMPv2类似: - 查询器选举机制一致:IP地址小的为查询器。 - 使用普遍组查询报文查询组成员加组信息。 - 使用特定组查询报文查询特定组播的成员存活情况。 IGMPv3需要支持上报组播源信息,与IGMPv2相比IGMPv3的变化如下: - IGMPv3查询报文除了包含普遍组查询报文和特定组查询报文,还新增了**特定源组查询报文**(Group-and-Source-Specific Query)。 - IGMPv3成员关系报告报文不仅包含主机想要加入的组播组,而且包含主机想要接收来自哪些组播源的数据。 - 由于同个组播组的不同成员可能希望接收来自不同源的组播,因此IGMPv3无需成员关系报告报文抑制机制。 - IGMPv3**没有定义专门的成员离开报文**,成员离开通过特定类型的报告报文来传达。 ### 2.2 IGMPv3报文 IGMPv3报文有**查询报文**和**成员关系报告报文**。 IGMPv3的查询报文共有三类: - 普遍组查询报文(General Query)。该报文作用与IGMPv1,IGMPv2中的普遍组查询报文作用一致。 - 特定组查询报文(Group-Specific Query) 。该报文作用与IGMPv2中的特定组查询报文作用一致。 - 特定源组查询报文(Group-and-Source-Specific Query)。该报文用于查询该组成员是否愿意接收特定源发送的数据。特定源组查询通过在报文中携带一个或多个组播源地址来达到这一目的。  IGMPv3查询报文重要字段说明: - Type:报文类型,取值为0x11。 - Max Response Code:最大响应时间。成员主机在收到IGMP查询器发送的普遍组查询报文后,需要在最大响应时间内做出回应。 - Group Address:组播组地址。在普遍组查询报文中,该字段设为0;在特定组查询报文和特定源组查询报文中,该字段为要查询的组播组地址。 - Number of Sources:报文中包含的组播源的数量。对于普遍组查询报文和特定组查询报文,该字段为0;对于特定源组查询报文,该字段非0。此参数的大小受到所在网络MTU大小的限制。 - Source Address:组播源地址,其数量受到Number of Sources字段值大小的限制。 IGMPv3成员关系报告报文: IGMPv3成员关系报告报文除了通告组成员的加组信息外,还能通告组成员希望接收的组播源信息。通告组播源主要有两种模式: - INCLUDE:希望接收来自特定组播源的组播流量 - EXCLUDE:希望过滤来自特定组播源的组播流量 成员关系报告报文中的组播组信息和组播源信息的关系会记录在组记录(Group Record)字段,发送给IGMP查询器。IGMPv3成员关系报告报文的目的地址为**224.0.0.22**,报文格式如下:  在IGMPv3中一个成员关系报告报文可以携带多个组播组信息,而之前的版本一个成员关系报告只能携带一个组播组。这样在IGMPv3中报文数量大大减少。 IGMPv3成员关系报告报文重要字段说明: - Type:报文类型,取值为0x22。 - Number of Group Records:报文中包含的组记录的数量。 - Group Record:组记录。 Group Record重要字段说明: - Record Type - Number of Sources:本记录中包含的源地址数量。 - Multicast Address:组播组地址。 - Sources Address:组播源地址。 ### 2.3 IGMPv3加组机制 IGMPv3组成员加组机制与IGMPv2类似,但有以下不同: - IGMPv3的成员关系报告报文能够携带组播源信息。 - IGMPv3成员关系报告报文没有成员关系报告报文抑制机制。 IGMPv3组成员加组流程如下: 1、查询器发送普遍组查询报文。  2、组播组成员回复成员关系报告报文,发往224.0.0.22,这样查询器接能够知道哪个组播组成员需要加入的组播组以及特定的组播源服务器,形成IGMP表项。  ### 2.4 IGMPv3组成员离组机制 **IGMPv3没有专门的成员离开报文,成员离开需要借助组成员关系报告实现。** IGMP查询器在收到**改变源组对应关系**的成员关系报告后,会发送特定源组查询报文,确认是否还有组成员存在。  1. 组成员发送改变源组关系的成员关系报告 2. IGMP查询器收到特定的成员关系报告 3. IGMP查询器返回特定源组查询报文,询问是否还有成员接收特定源组的组播流量 4. 如果特定源组还有成员会发送关系报告报文则保留IGMP表项,如果没有成员则定时器过期删除IGMP表项 总结:IGMPv3的特点是主机可以对组播源进行选择。IGMPv3报文有**查询报文**和**成员关系报告报文**。IGMPv3没有专门的成员离开报文,成员关系报告报文组播目的地址224.0.0.22。 IGMP各版本差异: | **机制** | **IGMPv1** | **IGMPv2** | **IGMPv3** | | ------------ | ------------ | ---------- | -------------- | | 查询器选举 | 依靠其他协议 | 自己选举 | 自己选举 | | 成员离开方式 | 静默离开 | 主动离开 | 主动离开 | | 特定组查询 | 不支持 | 支持 | 支持 | | 指定源、组 | 不支持 | 不支持 | 支持 | | 版本兼容性 | | IGMPv1 | IGMPv1、IGMPv2 | 如果对文章感兴趣欢迎微信搜索公众号:不喜欢热闹的孩子 
Chuck
2024年7月17日 14:25
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码