当前位置: 首页 > news >正文

组播基础-2-IGMP协议

文章目录

  • IGMP
    • IGMPv1
    • IGMPv2
    • IGMPv3
    • IGMP总结
    • IGMP Snooping

IGMP

运行于主机和路由器之间

因特网组管理协议,TCP/IP 协议族中负责 IP 组播成员管理的协议,用来在接收者与其他直接相邻的组播路由器之间建立、维护组播组成员关系

  • 负责组播成员管理,运行在主机和组播路由器之间
  • 主机侧:通过IGMP向路由器通告组成员关系
  • 路由器侧:通过IGMP协议维护组成员关系

- 所有IGMP版本都支持ASM模型 - IGMPv3可以直接应用于SSM模型,而 IGMPv1 和 IGMPv2 则需要 SSM-Mapping 技术的支持 - 运行 IGMP 高版本的路由器可以识别低版本的成员报告(向前兼容)



组播组管理协议工作机制:

  • 主机加入或离开组播组
  • 路由器维护组播组
  • 查询器选举
  • 成员报告抑制



IGMPv1

定义基本的组成员查询和报告过程

类型

  • 成员关系查询 0x11
  • 成员关系查询 0x12

组地址

  • 当一个成员关系报告正被发送时,组地址字段包含组播地址
  • 当用于成员关系查询时,本字段为0,并被主机忽略

路由器周期性发送成员关系查询,默认查询周期为 60s,

成员关系报告的发送可以被动发送也可主动发送
被动发送:主机收到成员关系查询消息后,发送成员关系报告
主动发送:主机主动发送成员关系报告

工作机制

  • 普遍组查询与响应
  • 响应抑制机制(当发现已经有人向自己感兴趣的组发送过数据之后,本地这边就不会再次发送报告)

每个收到查询的主机会启动一个计时器,默认0——10秒随机值,超时后发送报告

静默离开

记时130秒,即组成员关系超时时间=IGMP普遍查询消息发送间隔 x 健壮系数 + 最大查询响应时间

查询器选举

查询器依靠组播路由协议PIM,PIM中选择的DR会充当IGMPv1里面的查询器



IGMPv2

IGMPv2为默认版本,在IGMPv1的基础上添加了查询器选举和离开组机制

类型

  • 成员关系查询 0x11
    常规查询:用于确定哪些组播组有效,该组播组是否还有成员在使用,常规查询地址全零表示
    指定组查询:用于查询特定的组播组是否还有组成员,在一台设备发送离开报文后进行特定查询该组是否还有使用者两次
  • 版本2的成员关闭报告 0x16;版本1的成员关系报告 0x12
  • 离开组信息 0x17

组地址

  • 在成员查询消息中,发送一个常规查询时组地址设为0,当发送一个特定组查询时,则应设置为组的地址
  • 在成员报告或离开组的消息中,组的地址保留了要报告或要离开的地址

IGMPv2增加了最大响应时间字段,以动态地调整主机对组查询报文的响应时间

工作机制

  • 独立的查询器选举机制
  • 存在多个组播源的时候IP地址小的获胜,成为查询者,进行普遍组查询



IGMPv3

成员可以指定接受或不接受某个组播源的报文

  • 服务于 SSM 模型
  • 增加了主机的控制能力,对组播源进行过滤
  • 取消了成员报告抑制机制
  • 过滤模式包含 Include 和 Exclude

工作机制

  • 周期性地向 224.0.0.1 发送普通查询
  • 接受端发送成员报告,指出希望加入或拒绝某些组播发送的数据
  • 独立的查询器选举机制
  • 存在多个组播源的时候IP地址小的获胜,成为查询者,进行普遍组查询

IGMPv3主机发送类型

组数和地址数为1

  • Mode Is Include:接收从指定源列表发往该组播组的数据
  • Mode Is Exclude:不接收源地址列表中包含的源发往该组的组播数据
  • Change To Include Mode:表示组播组与源列表之间的对应方式由EXCLUDE转换到INCLUDE
  • Change To Exclude Mode:表示组播组与源列表之间的对应方式由INCLUDE转换到EXCLUDE
  • Allow New Source:现有基础上,还希望从某些组播源接收组播数据
  • Block Old Sources:现有基础上,不再希望从某些组播源接收组播数据

特定源组查询

无离开报文,通过这种方式进行离开

  • 针对某个源某个组进行特定组的查询,确保组还有成员在使用



IGMP总结

机制IGMPv1IGMPv2IGMPv3
查询器选举依靠其他协议自己选举自己选举
普遍组查询支持支持支持
成员报告报文支持支持支持
特定组查询报文不支持支持支持
成员离开方式静默离开主动发送离开报文未定义专门的离开报文,通过特定类型的报告报文传达
特定源、组查询报文不支持不支持支持
指定组播源不支持不支持支持
可识别协议报文IGMPv1IGMPv1 IGMPv2IGMPv1 IGMPv2 IGMPv3
ASM模型支持支持支持
SSM模型需要IGMP Mapping需要IGMP Mapping支持



IGMP Snooping

组播数据在二层被泛洪

  • 网络资源浪费
  • 存在安全隐患

IGMP Snooping概述

  • 解决组播报文在二层泛洪的问题
  • 运行在数据链路层,是二层交换机上的组播约束机制,用于管理和控制组播组
  • 通过监听 IGMP 报文,建立组播MAC地址表

端口角色

路由器端口:接受组播数据----上游接口

  • 收到源地址不为 0.0.0.0 的 IGMP 普遍组查询报文或PIM Hello 报文的接口都将被叫做动态路由器端口
  • 手工配置的路由器端口叫做静态路由器端口

成员端口:发送组播数据----下游接口

  • 收到 IGMP Report 报文的接口,叫做动态成员端口
  • 手动配置的成员叫做静态成员端口

工作原理

启用 IGMP Snooping 机制后,查询响应仅向路由器接口转发

模拟器环境会出现BUG,报告可以,但是普遍组查询和离开报文会被隔离,这种情况要想实现 IGMP 操作就需要在组管理设备上配置静态的 IGMP表项

相关文章:

组播基础-2-IGMP协议

文章目录 IGMPIGMPv1IGMPv2IGMPv3IGMP总结IGMP Snooping IGMP 运行于主机和路由器之间 因特网组管理协议,TCP/IP 协议族中负责 IP 组播成员管理的协议,用来在接收者与其他直接相邻的组播路由器之间建立、维护组播组成员关系 负责组播成员管理&#xf…...

基于Springboot+Vue的视频点播系统设计与实现登录 (含源码数据库)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统中…...

执行力怎么培养?

执行力怎么培养? 并行:适合在初期养成习惯,不抱对结果的期望天才就是强迫症:适合中期修身:适合高级 并行:适合在初期养成习惯,不抱对结果的期望 在你开始做任何事情的时候,不要一开…...

Power apps:一次提交多项申请

1、添加一个Form,导入sharepoint列表,添加确认,继续,取消按钮 2、在页面的onvisible属性中添加 Set(applynumber,Last(付款申请表).申请编号1); #定义一个申请编号变量,每次申请,就将列表最后一个…...

Oracle数据库物理结构操作管理

实验步骤 (1)查询数据库初始化参数中参数名包含sga的参数的名称、值和描述信息。 SQL> select name,value,description from V$PARAMETER where name like %sga%; (2)设置sga_max_size的大小为1G SQL> alter system set sg…...

Python自然语言处理之spacy模块介绍、安装与常见操作案例

文章目录 spacy模块介绍安装spacy常见操作案例及代码1. 加载模型并处理文本2. 词性标注3. 命名实体识别4. 依存句法分析5. 可视化(在Jupyter Notebook中) spacy模块介绍 spacy是一个强大的Python库,用于自然语言处理(NLP&#xf…...

DSPy101

DSPy 介绍 DSPy(Declarative Self-improved Language Programs in Python) 是一个用于系统化和增强在流水线内使用语言模型的框架,它通过数据驱动和意图驱动的系统来优化大型语言模型(LLM)的使用。 DSPy 的核心是模块…...

网格交易策略:从原理、应用到实战Python回测

01 引言 随着金融市场的快速发展,量化交易成为投资者追求收益的一种重要手段。在众多的量化交易策略中,网格交易策略(Grid Trading Strategy)因其简单易用、风险控制灵活等优点而备受青睐。网格交易策略的核心思想是“低买高卖”&…...

软考论文《论大数据处理架构及其应用》精选试读

论文真题 模型驱动架构设计是一种用于应用系统开发的软件设计方法,以模型构造、模型转换和精化为核心,提供了一套软件设计的指导规范。在模型驱动架构环境下,通过创建出机器可读和高度抽象的模型实现对不同问题域的描述,这些模型…...

fatfs API使用手册

配置 /*---------------------------------------------------------------------------/ / Configurations of FatFs Module /---------------------------------------------------------------------------*/#define FFCONF_DEF 80286 /* Revision ID *//*---------------…...

9.23作业

仿照string类&#xff0c;自己手动实现 My_string 代码如下 MyString.h #ifndef MYSTRING_H #define MYSTRING_H #include <iostream> #include <cstring>using namespace std;class My_string { private:char *ptr; //指向字符数组的指针int size; …...

Unity3D 房间去重叠化算法详解

前言 在Unity3D游戏开发中&#xff0c;经常需要生成和处理多个房间的场景&#xff0c;特别是在地牢生成、房屋布局或迷宫设计等应用中。为了确保生成的房间不会重叠&#xff0c;我们需要一种有效的去重叠化算法。以下将详细介绍该算法的原理和代码实现。 对惹&#xff0c;这里有…...

mybatis 配置文件完成增删改查(五) :单条件 动态sql查询,相当于switch

文章目录 单条件 动态sql查询写测试方法 疑问总结 单条件 动态sql查询 <select id"selectByConditionBySingle" resultMap"brandResultMap">.select *from tb_brandwhere<choose>/*相当于switch*/<when test"status ! null">…...

全球IP归属地查询-IP地址查询-IP城市查询-IP地址归属地-IP地址解析-IP位置查询-IP地址查询API接口

IP地址城市版查询接口 API是指能够根据IP地址查询其所在城市等地理位置信息的API接口。这类接口在网络安全、数据分析、广告投放等多个领域有广泛应用。以下是一些可用的IP地址城市版查询接口API及其简要介绍 1. 快证 IP归属地查询API 特点&#xff1a;支持IPv4 提供高精版、…...

Vue3+FastAPI中Token的刷新机制(含代码示例)

在Vue3和FastAPI的应用中&#xff0c;token刷新机制通常涉及以下几个步骤&#xff1a; 登录过程&#xff1a;用户登录时&#xff0c;后端FastAPI验证用户信息&#xff0c;验证通过后生成一个访问令牌&#xff08;access token&#xff09;和一个刷新令牌&#xff08;refresh t…...

【GAN 图像生成】

理论知识学习&#xff1a; PART 1&#xff1a; 生成对抗网络GAN 深度学习模型&#xff0c;用于生成数据 对抗式训练&#xff0c;生成器v判别器 DCGAN>WGAN>StyleGAN技术不断进化 GAN在艺术创作。数据增强领域应用越来越广泛 应用&#xff1a; GAN在图像合成&#x…...

【自然语言处理】词嵌入模型

词嵌入&#xff08;Word Embedding&#xff09; 是一种将词汇表示为实数向量的技术&#xff0c;通常是低维度的连续向量。这些向量被设计为捕捉词汇之间的语义相似性&#xff0c;使得语义相似的词在嵌入空间中的距离也更近。词嵌入可以看作是将离散的语言符号&#xff08;如单词…...

了解针对基座大语言模型(类似 ChatGPT 的架构,Decoder-only)的重头预训练和微调训练

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 随着自然语言处理&#xff08;NLP&#xff09;技术的飞速进步&#xff0c;基于 Transformer 架构的大语言模型在众多任务中取得了显著成就。特别是 Decoder-only 架构&#xff0c;如 GPT 系列模型&…...

cmake如何在编译时区分-std=c++17和-std=gnu++17?检查宏

如何在编译时区分-stdc17和-stdgnu17&#xff1f;检查宏&#xff1f;-腾讯云开发者社区-腾讯云 我正在使用__int128扩展的g。-stdc17的问题是&#xff0c;一些C库不具备对该扩展的全部支持(即std::make_unsigned<>失败)。当使用-stdgnu17时&#xff0c;它工作得很好。 我…...

速通数据结构与算法第七站 排序

系列文章目录 速通数据结构与算法系列 1 速通数据结构与算法第一站 复杂度 http://t.csdnimg.cn/sxEGF 2 速通数据结构与算法第二站 顺序表 http://t.csdnimg.cn/WVyDb 3 速通数据结构与算法第三站 单链表 http://t.csdnimg.cn/cDpcC 4 速通…...

灵当CRM index.php接口SQL注入漏洞复现 [附POC]

文章目录 灵当CRM index.php接口SQL注入漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 灵当CRM index.php接口SQL注入漏洞复现 [附POC] 0x01 前言 免责声明&#xff1a;请勿利用文章内的相关技…...

修复: Flux女生脸不再油光满面, 屁股下巴 -- 超实用Comfyui小技巧

ComfyUI上目前最强画图模型公认为Flux. 初次用Flux基础模型画真实的女生时, 和SD比起来, 会觉得画出来细节更多, 更真实. 但是当画多了, 就会觉得画出来的女生总是似曾相识. 仔细观察, 会发现一些共同的特征. 人偏老气, 像30~50的女生. 改了提示词也效果不大. 颧骨凸起, 嘴…...

Actions Speak Louder than Words Meta史诗级的端到端推荐大模型落地

发现好久之前整理的推荐系统被遗忘在了草稿箱&#xff0c;让它出来见见世面。。。后续空了持续更新 文章目录 1.Background2.Related works2.1 典型推荐模型2.1.1 DIN2.1.2 DIEN2.1.3 SIM2.1.4 MMoE2.1.5 其他 2.2. 生成式推荐 3.Method3.1 统一特征空间3.2 重塑召回排序模型3.…...

金智维KRPA之Excel自动化

Excel自动化操作概述 Excel自动化主要用于帮助各种类型的企业用户实现Excel数据处理自动化&#xff0c;Excel自动化是可以从单元格、列、行或范围中读取数据&#xff0c;向其他电子表格或工作簿写入数据等活动。 通过相关命令&#xff0c;还可以对数据进行排序、进行格式…...

哪款宠物空气净化器能有效去除浮毛?希喂、352实测分享

你是否曾经站在家电卖场里&#xff0c;面对琳琅满目的宠物空气净化器产品而感到无所适从&#xff1f;或者在浏览网上商城时&#xff0c;被海量的参数和功能描述搞得头晕眼花&#xff1f;别担心&#xff0c;你不是一个人。在这个科技飞速发展的时代&#xff0c;选择一台既能满足…...

2024.9.28更换启辰R30汽车火花塞

2024.9.28周六汽车跑了11万公里&#xff0c;实在加速肉&#xff0c;起步顿挫&#xff0c;油耗在8个&#xff0c;决定更换火花塞。第一个火花塞要拆掉进气歧管。第二和第三个可以直接换。打开第二个火花塞一看电极都被打成深坑&#xff0c;针电极都被打凸。我有两个旧的火花塞&a…...

2024上海网站建设公司哪家比较好TOP3

判断一家网建公司的好坏&#xff0c;第一是看公司背景&#xff0c;包括成立时间&#xff0c;工商注册信息等&#xff0c;第二可以去看看建站公司做的案例&#xff0c;例如&#xff0c;网站开发、设计、引流等等的以往案例&#xff0c;了解清楚具体的业务流程。 一、公司背景 …...

TDesign组件库+vue3+ts 如何视觉上合并相同内容的table列?(自定义合并table列)

背景 当table的某一列的某些内容相同时&#xff0c;需要在视觉上合并这一部分的内容为同个单元格 如上图所示&#xff0c;比如需要合并当申请人为同个字段的列。 解决代码 <t-table:data"filteredData":columns"columns":rowspan-and-colspan"…...

BACnet协议-(基于ISO 8802-3 UDP)(2)

1、模拟设备的工具界面如下&#xff1a; 2、使用yet another bacnet explorer 用作服务&#xff0c;用于发现设备&#xff0c;界面如下&#xff1a; 3、通过wireshark 抓包如下&#xff1a; &#xff08;1&#xff09;、整体包如下&#xff1a; &#xff08;2&#xff09;、m…...

android 根据公历日期准确节气计算年月日时天干地支 四柱八字

1 年柱 判断当前日期是否超过本年的立春 未超过年份-1 已超过按当前年份计算 2月柱 当前日期是否超过当月的第一个节气 未超过-1 超过当前月份计算 节气对日柱时柱没影响。 获取某年某月第一个节气的准确日期 private int sTerm(int y, int n) {int[] sTermInfo…...

WordPress做的网站源代码/网上有卖网站链接的吗

1&#xff0c;在wind搭建VisualSVN Server Manager 由于好几次启动server都找不到项目分支。解决办法&#xff1a;卸载重装之后项目出现&#xff0c;服务器项目不会消失。 2&#xff0c;sql更新语句 update DyMyOrderWTCE&#xff08;表1&#xff09; dy set dy.cesdzt (se…...

响应式网站建设报价单/市场营销策略有哪些

搜索单词 Windows&#xff1a; Ctrl F Mac : Cmd F 会在当前激活的文件上查询输入的关键字&#xff0c;以高亮显示 跳转行 Windows: Ctrl L Mac : Cmd L 比Eclipse更加细致&#xff0c;可以先输入行号&#xff0c;然后输入冒号&#xff0c;最后跟上字符的位置 Navig…...

网站IP限制怎么做/常见的网络推广方法

入门快速开始Bootstrap-select需要jQuery v1.9.1 &#xff0c;Bootstrap的dropdown.js组件和Bootstrap的CSS。如果您尚未在项目中使用Bootstrap&#xff0c;则可以在此处下载Bootstrap v3.3.7最低要求的预编译版本。如果在Bootstrap v4 中使用bootstrap-select&#xff0c;你还…...

网站制作费用/百度发布平台官网

发现这不是一个省力的活。如果你的MySQL版本是5.1.7之后&#xff0c;并且是5.1.23之前&#xff0c;有一种简单的方法可以用&#xff1a;RENAME {DATABASE | SCHEMA} db_name TO new_db_name;但这种方法并不可靠&#xff0c;可能会造成数据的丢失&#xff0c;不建议使用。对此官…...

哪个全球购网站做的好/企业网上的推广

1. 概述 路由 是MVC架构的Web框架中相当重要的一个概念&#xff0c;也是本节课程的重点。顾名思意&#xff0c;路由就是在迷茫中找出一条路的意思。在Flask框架中&#xff0c;路由 就表示为用户请求的URL找出其对应的处理函数之意。在本节课程&#xff0c;我们将主要从以下几个…...

企业网站无线端怎么做/南京seo公司排名

一、整体大纲 二、 系统IO函数 1. 一些概念 文件描述符 PCB C库函的IO缓冲区 1&#xff09; 文件描述符 int 类型 一个进程最多可打开多少文件 2&#xff09; pcb 进程控制块 在其中有一个文件描述符表 -- 数组[1024…...