组播技术基础——IGMPv1简介

十五、组播(Multicast) 组播(Multicast) 组播基础 前言 当网络中部署点到多点通信应用时,若采用单播方式,网络中传输的信息量与需要该信息的用户量成正比。多份内容相同的信息发送给不同用户,对信源及网络带宽都将造成巨大压力。若采用广播方式,无需接收信息的主机也将收到该信息,这样不仅信息安全得不到保障,且会造成同一网段中信息泛滥。 IP组播技术有效地解决了单播和广播在点到多点应用中的问题。组播源只发送一份数据,数据在网络节点间被复制、分发,且只发送给需要该信息的接收者。 传统点到点应用 服务 阅读详情

IGMPv1报文类型

  1. 成员关系查询(Membership Query)
  • IGMP查询器使用该报文向直连网段进行查询,以便确认该网段中是否存在组播组成员。
  • 成员关系查询报文的目的IP地址是224.0.0.1 (所有节点组播地址)。
  1. 成员关系报告(Membership Report)
  • 当组播组成员收到查询器发送的成员关系查询报文后,会以成员关系报告报文进行回应,以便告知查询器自已所加入的组播组。
  • 当有新加入组播组的成员时,无需等待查询器的成员关系查询报文,可以直接发送成员关系报告报文以宣告自己加组。
  • 成员关系报告报文的目的IP地址是主机期望加入的组播组的IP 地址,而且报文载荷中的“组地址”字段也记录了该组播组的IP地址。

IGMPv1报文格式

IGMPv1的报文格式如下图所示:
在这里插入图片描述
字段含义如下:

  • 版本(version):对IGMPv1而言,该字段值为1.
  • 类型(type):指示了IGMPv1报文的报文类型。如果是成员关系查询报文,该字段值为1,若是成员关系报告报文,该字段值为2。
  • 校验和(checksum):用于校验IGMPv1报文。
  • 组地址(group address):若是IGMPv1成员关系查询报文,该字段值为0(0.0.0.0);若是IGMPv1成员关系报告报文,该字段值是主机加入组播组的组地址。

IGMPv1应用示例

在这里插入图片描述
如上图所示的网络拓扑,PC1、PC2、PC3以及R1连接到了同一台二层交换机,并且都属于相同的VLAN,使用相同的IP网段。
在R1的GE0/0/1接口激活了IGMPv1。PC1及PC3是组播组239.1.1.1的成员,而PC2是组播组239.1.1.2的成员。

IGMPv1查询和响应

(1)R1激活IGMPv1后,它将在GE0/0/1接口上周期性地(缺省以60秒为周期)发送IGMPv1成员关系查询报文,该报文的目的IP地址是224.0.0.1(所有节点组播地址),并且报文中“组地址”字段的值为0.0.0.0,该查询面向所有组播组。
(2)R1发送的IGMPv1成员关系查询报文到达交换机后,会被后者进行泛洪,因此PCI、PC2 及PC3都会收到该报文。
(3)为了使组成员能够正常地收到组播流量,组成员收到IGMPv1成员关系查询报文后需要使用IGMPv1成员关系报告报文进行回应,以便刷新IGMP路由器的相关表项(IGMP组成员表项、IGMP路由表项、组播路由表项)。

成员报告抑制

问题背景

对于查询器R1而言,它只关系GE0/0/1上是否存在哪几种组播成员,但是对于同一种的组播成员有多少个,它并不关系。

若一个广播域内存在多个同属于一个组播组的成员,比如上图所示,PC1及PC3是组播组239.1.1.1的成员,如果没有做特殊的处理,二者都会向目的地址为239.1.1.1的组播地址发送membership report报文,那么将会产生多余的IGMP流量。

解决方法

通过组成员本地启动一个报告延时计时器(Report Delay Timer)来解决上述问题。

  1. 如下图所示,当连接在交换机上的PC收到R1发送的IGMPv1成员关系查询报文时,所有的PC都会在本地启动一个报告延迟计时器( Report Delay Timer),计时器的值被设置为0至10秒之间的一个随机数,当该计时器超时的时候,PC便立即发送IGMPv1成员关系报告报文。
  2. 假设PC1的计时器率先超时,那么它将立即发送IGMPv1成员关系报告报文,这个报文的目的IP地址是239.1.1.1,也就是其加入的组播组的IP地址,这个组播报文被封装成帧并发往交换机,交换机将这个数据帧进行泛洪,R1及其他PC都会收到该帧。
  3. R1收到这个IGMP报文后,了解到其GE0/0/1接口上存在组播组239.1.1.1的成员,于是它将维护相关IGMP组表项及IGMP路由表项,当它收到发往239.1.1.1的组播流量后,便将这些组播流量从该接口转发出去。
  4. 当PC3收到PC1发送的IGMPv1成员关系报告报文后(此时它的报告延迟计时器并未超时),发现后者所加入的组播组与自己相同,于是它将抑制自己的成员关系报告,如此即可减少网络中多余的IGMP流量。
  5. 当PC2收到PC1发送的IGMPv1成员关系报告报文后(若此时它的报告延迟计时器并未超时),发现后者所加入的组播组与自己不相,会丢弃该报文。因此它的计时器超时后,将自行发送成员关系报告报文,该报文的目的IP地址是239.1.1.2。
  6. R1路由器收到该报文后,了解到接口GE0/0/1上还存在着另一个组播组239.1.1.2的成员,于是它将维护相关IGMP组表项及IGMP路由表项,当其收到发往该组播组的流量时,便会将流量从该接口转发出去。
    在这里插入图片描述

IGMPv1组成员加入

当网络中某个PC想要加入某个组播组时,它无需等待查询器的成员关系查询,可以直接发送成员关系报告。

  • 如下图所示,PC4新接入到该网络中,此时它加入了组播组239.1.1.3,它将直接发送IGMPv1成员关系报告报文,该报文的目的IP地址为239.1.1.3。
  • 路由器R1收到这个报文后,了解到其GE0/0/1接口的直连网段中出现了组239.1.1.3的成员,于是它将维护相关IGMP组表项及IGMP路由表项,当它收到发往239.1.1.3的组播流量时,便会将这些流量转发到该网络中。
    在这里插入图片描述

IGMPv1组成员离开

IGMPv1并没有明确定义组成员离开组播组的机制,当组成员离开组播组时,它只是简单地不再回应成员关系查询,因此我们也常说,在IGMPv1中,组成员是“默默”地离开的。

IGMPv1查询器

问题背景

如果在同一个网段中连接着多台组播路由器,并且这些路由器都在接入该网段的接口上激活IGMPv1,且都向该网段发送IGMPv1成员关系查询报文,这显然会增加网络中的多余IGMP流量。

解决方法

在IGMP中,查询器(Querier )负责在网段中发送IGMP查询报文,而非查询器则不会发送。(查询器只能在最后一跳路由器中选择)

  • 如下图所示,R1及R2这两台最后一跳组播路由器都在各自的GE0/0/1接口上激活了IGMPv1,它们会进行竞争,胜出的路由器(的接口)将成为该网段的IGMP查询器。(IGMPv2增加了查询器选举机制、IGMPv1借助组播路由协议实现选举(比如PIM的DR选举))
    在这里插入图片描述

  • 假设R1胜出,那么R1将以缺省60秒为周期,向该网段发送IGMPv1成员关系查询报文,而R2则不会发送这些报文,它只是默默地在一旁侦听R1发送的IGMPv1成员关系查询报文,当R1发生故障时,R2可随时接替其工作。

【HCIE-R&S 天梯路】组播 组播 IP数据传输三种方式:单播、组播、广播 组播网络也需要单播可达(因为需要RPF检查) 现网中组播:IPTV 组播较单播,节省带宽 协议组播:各协议的Hello、BSR自举报文等(TTL=1,逐跳发送) 普通组播:从源到接收者 组播IP地址 组播IP地址 = D类地址(1110打头) = [224.0.0.0,240.0.0.0) 仅作为目的地址,不作为源地址 组播地址没有掩码 224.0.0.1 节点 224.0... 阅读详情

相关推荐

IGMP工作原理

目的地址为该发出Leave Group的主机所在组的组地址。l 这个消息包含有退出的组的地址,但与Membership Report消息不同的是,Leave group消息是发向“子网中的所有路由器”地址224.0.0.2的,而Membership Report是发向想要加入的组播组地址。l 主机收到其他相同子网内主机所发送的Membership report时,该主机将不再向相同的组播组发送Membership report,因为IGMP路由器已经知道本地子网中有对该组播组感兴趣的主机了。

2301_81072370的博客 1295

IP组播协议——IGMP协议之IGMPv1

组播协议分为主机-路由器之间的组成员关系协议和路由器-路由器之间的组播路由协议。组成员关系协议包括IGMP(互连网组管理协议)。组播路由协议分为域内组播路由协议及域间组播路由协议。域内组播路由协议包括PIM-SM、PIM-DM、DVMRP等协议,域间组播路由协议包括MBGP、MSDP等协议。IGMP(Internet Group Management Protocol)作为因特网组管理协议,是TCP/IP协议族中负责IP组播成员管理的协议,它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关

Adsjddjjej的博客 5516

华为数通笔记-组播协议介绍之IGMP

组播网络需要基于多种组播协议才能建立转发路径: 工作在成员端网络的主要是IGMP(Internet Group Management Protocol,因特网组管理协议)协议 用于告知组播网络,组成员的位置与所加组播组。 工作在组播转发网络的协议主要有PIM,MSDP,MBGP。 PIM(Protocol Independent Multicast,协议无关组播)协议主要作用是生成AS域内的组播分发树。 MSDP(Multicast Source Discovery Protocol,组播源..

qq_45959697的博客 1万+

IP组播协议基础3(IGMPv1)

1 IPv4组播协议 要实现一套完整的组播服务,需要在网络各个位置部署多种组播协议相互配合,共同运作。但不同结构的组播网络所需使用的组播协议不完全一样。IPv4组播网络中所涉及的主要组播协议有一下几个。 1.1 IGMP和MDL 接收者信息的收集和管理的工作通过 IGMP(Internet Group Management Protocol,因特网组管理协议)或MLD(Multicast Listener Discovery,组播监听器发现)协议来完成的。其中,IGMP用于IPv4网络,MLD用于IPv6

Shass的博客 6353

从AD到HFSS:Gerber文件驱动的PCB三维电磁仿真全流程解析

本文详细解析了从AD到HFSS的Gerber文件驱动的PCB三维电磁仿真全流程,重点介绍了Gerber文件作为桥梁的重要性、AD端Gerber文件导出实战指南、HFSS 3D Layout导入技巧及高级问题排查方法。通过实际案例和技巧分享,帮助工程师高效完成PCB电磁仿真,提升设计验证效率。

weixin_33735077的博客 259

ArcGIS高效拆分shp文件:无需依赖属性表的实用技巧

本文针对ArcGIS中shp文件因属性表缺失而难以拆分的问题,详细介绍了无需依赖属性表的实用技巧。核心是使用“拆分多部件要素”工具,直接根据图形结构将多个独立但被合并的部件拆分为单个要素,并提供了ArcGIS Pro和ArcMap的操作流程、关键注意事项及拆分后的属性处理方案。

n2o3p4的博客 376

华为 组播之IGMPv2、IGMPv3

离组报文有2种发送机制: 1、只要主机离组,就发送离组报文。 2、只有本轮查询的报告者离组时,由报告者发送离组报文,本轮的非报告者离组不会送离组报文,静默离组。

艺博东的博客 1万+

从原理图到代码:深入解析SX1278 LoRa模块与STM32的SPI通信驱动(附完整工程)

本文深入解析了SX1278 LoRa模块与STM32的SPI通信驱动实现,从硬件原理图到完整工程代码,详细介绍了LoRa技术的通信原理、寄存器配置、SPI接口设计及低功耗优化策略。适合物联网开发者和嵌入式工程师提升远距离无线通信能力,附完整工程代码助力快速开发。

weixin_42715608的博客 423

什么是组播?让我们一起解密组播协议(IGMP、PIM)

本文包括组播协议的IGMP、PIM等全面内容!是一份超全的组播协议笔记!

Arouroua的博客 2万+

AI赋能传染病建模:从数据到动力学模型的本地实践指南

这次我们来看一个将 AI 与传染病动力学建模结合的前沿方向。想象一下,你手头有一份流感爆发的病例数据,传统的建模方法可能需要复杂的微分方程和大量的手动调参,而 AI 模型能否直接从数据中“学习”出传播规律,甚至自动跑通整个建模流程?这正是当前研究的热点。根据《Nature》的最新综述,人工智能正在重塑传染病流行病学建模,从参数推断、趋势预测到多源数据融合,AI 技术为解决传统建模中的计算瓶颈和数据难题提供了全新路径。 对于开发者、数据科学家或公共卫生领域的研究者而言,最关心的是:这套方法能不能在本地跑起来?

weixin_29051811的博客 298

ABAP Cloud:面向云时代的 ABAP 开发范式与实践指南

摘要: 本文系统讲解SAP ABAP Cloud开发模型,涵盖其架构、工具链、规范及实践。ABAP Cloud作为统一开发模型,支持在SAP BTP和S/4HANA上构建云就绪应用,遵循clean core原则,通过RAP(RESTful应用编程模型)实现低耦合扩展。文章详细解析其核心构成(RAP、稳定API、clean core约束)、工具链(ADT、软件物流)及两种典型扩展场景(on-stack与side-by-side),并附可运行RAP示例代码(如销售笔记应用)。重点强调通过规范开发确保系统可升级性

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 391

组播技术基础——IGMPv2简介

报文类型 报文格式 示例 IGMPv2查询及响应 IGMPv2组成员离开 IGMPv2查询器

mn3321的博客 1万+

华为 组播之IGMPv1

ASM 组成员无法对组播源做出选择时,我们应该部署ASM服务模型。 SSM 组成员可以对组播源做出选择时,我们可以部署SSM服务模型。 组播 IGMPv1

艺博东的博客 1万+

华为 MetaERP 通过元数据驱动的多组织架构 + 内部交易协同 + 自动对账引擎 + 合并规则引擎,实现多组织内部往来与合并报表的全流程自动抵消,核心是源头标准化、过程自动化、结果可追溯

摘要: 华为MetaERP通过元数据驱动的多组织架构与主数据标准化,实现内部往来与合并报表全流程自动化。其核心包括:统一组织模型与主数据(确保数据口径一致)、内部交易协同(自动生成对称凭证)、智能对账引擎(多维度自动匹配差异)、合并规则引擎(配置化抵消模板)。依托GaussDB高性能数据库与流批一体架构,华为全球88家子公司合并报表效率提升400%,关账时间缩短至2小时,支持多准则、多币种自动抵消,审计全程可追溯。相比传统ERP,MetaERP在协同性、自动化与扩展性上优势显著,为跨国集团提供高效、准确的合

金牌架构师 264

【Bug已解决】Failed to fetch version ECONNREFUSED 解决方案

方案适用场景推荐指数难度方案一:NODE_EXTRA_CA_CERTS代理/企业网关证书⭐⭐⭐⭐⭐低方案二:浏览器导出证书不知证书在哪⭐⭐⭐⭐中方案三:使用系统证书macOS 用户⭐⭐⭐⭐中方案四:关闭代理直连快速验证⭐⭐⭐低方案五:更新 Node.js证书列表过时⭐⭐⭐低方案六:同步系统时间时间偏差导致⭐⭐⭐低根本原因。

博客 9973

组播基础(一)

一.为什么需要组播 IPV4包含三种数据传送方式:单播,广播和组播。其中单播在传送数据时,主机和客户端之间进行一对一的通信,如果有多台客户端请求相同的数据,主机需要逐一发送多次。在客户端数量较少时,这种重复是可以接受的,当客户端数量过多时,网络带宽将无法支撑。而广播在传送数据时,不管接受者是否需要,都将收到主机广播的数据。在浪费了网络带宽的同时,也有可能造成数据的泄露,增加网络安全风险。但是由于组...

Matthew Jiang的博客 2万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

深入理解 IGMPv2 与 IGMPv3:组播协议的进阶探索

IGMPv2和IGMPv3在组播技术的发展中具有重要意义。IGMPv2通过改进离组机制和查询器选举方式,优化了组播流量的管理,减少了流量冗余和浪费。IGMPv3则进一步扩展了功能,支持主机对组播源的精细控制,满足了更复杂的组播应用需求。在实际网络部署中,需根据网络需求和应用场景选择合适的IGMP版本,合理配置参数,以实现高效、稳定的组播通信。

m0_57836225的博客 2047

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

IP组播协议基础5(IGMPv3)

本文通过拓扑实验讲述IGMPv3与之前两个版本的区别以及该版本的报文类型特性。

Shass的博客 1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

一个实验带你搞懂IP组播和IGMPV1 V2 V3 各版本的关系

直接上实验图: 看不懂不要紧,准备好瓜子,辣条慢慢给你讲解。 那个MCS玩意就是发送组播的东西,基础配置就按图上的来,点进去组播源按下图配置,那个文件路径就是待会播放小视频的链接来源。两个统一配置组播源为 224.1.1.1 ,为什么配一样的地址,这个待会再给你讲解,不要着急。先了解一下IPV4的组播地址为D类:224.0.0.0-239.255.255.255,啥也不用问,背它就完事了。那个组播MAC地址点一下会自动生成。 上面的接口图先配置上,测试联通性,PC1上测试路由器,交换机啥也不用配。

qq_43378196的博客 4462

组播简介(二层组播)

1 承载网组播模型 2 二层组播技术 2.1 组管理协议 Internet 组管理协议称为IGMP协议(Internet Group Management Protocol),是因特网协议家族中的一个组播协议。该协议运行在主机和组播路由器之间。IGMP协议共有三个版本,即IGMPv1、v2 和v3。 主机IP软件需要进行组播扩展,才能使主机能够在本地网络上收发组播分组。但仅靠这一点是不够的,因为跨越多个网络的组播转发必须依赖于路由器。路由器为建立组播转发路由必需了解每个组员在Internet中的分布,这要求

qq_28105413的博客 9464

第十九天 组播基础 IGMP

当主机收到了RTA发来的消息,就会发送报告响应自己需要加组,每个组只需要有一台设备发送报告就行了 一般都是最后一个加组的设备发送。路由器RTA会周期性(60秒)的向224.0.0.1这个组中发送消息,询问谁要加组 这就是普遍组查询。ASM Any-source Multicast 任意源 就是无所谓是那个源。所有运行了IGMP协议的设备都会加入到224.0.0.1这个组地址中。In(includ)类似与白名单,就是我可以接收那些组成员发来的消息。也可以理解为D类地址都是32位的地址。

qq_33794290的博客 1050

IGMP协议(IGMPv1、IGMPv2、IGMPv3)

IGMP:用来在接收者与其直接相邻的组播路由器之间建立、维护组播成员关系 主要运行在主机与组播路由器之间 作用: 主机侧:向路由器通告组成员关系 路由器侧:维护组成员关系 IGMPv1 普遍组查询(224.0.0.1)与响应 响应抑制机制:同一组中成员监听到同组成员发送GMP报文后不再发送 成员加入:主动申请加组(发IGMP报文) 成员离开: 普遍组查询...

KI0323的博客 1万+

组播学习之——IGMP协议简介

优快云文章转载地址 组播学习之——IGMP协议简介 IGMP 是Internet Group Management Protocol(互联网组管理协议)的简称。它是TCP/IP 协议族中负责IP 组播成员管理的协议,用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。 IGMP协议(IPv4) 和MLD协议(IPv6)用来帮助主机指定对那些组感兴趣(加入哪一些多播组),以及确定来自某些特定源的报文应该被接收还是过滤掉。为了实现这一目标,主机需要向本地子网的组播路由器发送一些报文来向组播路

qq_40052606的博客 6776

组播服务模型——SSM

SSM概述 到目前为止,本书讨论的都是组播服务模型中的ASM (Any-Source Multicast,任意 源组播),在ASM中,对于每个组播组而言,任意的设备都可以成为组播源。对于接收 者而言,它们事先并不知晓组播源的地址,只要它们加入了一个组播组,当任意的源向 该组发送组播流量时,接收者会收到这些流量。 PIM-DM及PIM-SM都支持ASM a PIM-DM适用于组成员分布较为密集的小型...

mn3321的博客 7967

组播基础原理——IGMP

本篇是HCNP阶段学习组播基础原理中的IGMP相关笔记!

坏坏-5的博客 3293
上一篇: 组播技术基础——IGMP概述
下一篇: 组播技术基础——IGMPv2简介
nice阿宝
博客等级 码龄7年 138粉丝 92原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值