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

部署PIM-SM

拓扑图

配置

使能组播路由

配置OSPF

组播路由器接口配置pim-sm

连接组成员的接口使能igmp

pim路由器上配置静态RP

sysname AR1
#
multicast routing-enable
#
interface GigabitEthernet0/0/0ip address 10.1.12.1 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/1ip address 10.1.13.1 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/2ip address 10.1.100.1 255.255.255.0 pim sm
#
ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 0.0.0.0 255.255.255.255 
#
pimstatic-rp 2.2.2.2
#
 sysname AR2
#
multicast routing-enable
#
interface GigabitEthernet0/0/0ip address 10.1.12.2 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/1ip address 10.1.150.2 255.255.255.0 pim sm
#
interface LoopBack0ip address 2.2.2.2 255.255.255.255 pim sm
#
ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 0.0.0.0 255.255.255.255 
#
pimstatic-rp 2.2.2.2
#
 sysname AR3
#
multicast routing-enable
#
interface GigabitEthernet0/0/0ip address 10.1.13.3 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/1ip address 10.1.150.3 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/2ip address 10.1.36.3 255.255.255.0 pim sm
#
ospf 1 router-id 3.3.3.3 area 0.0.0.0 network 0.0.0.0 255.255.255.255 
#
pimstatic-rp 2.2.2.2
#
 sysname AR4
#
multicast routing-enable
#
interface GigabitEthernet0/0/0ip address 10.1.150.4 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/1ip address 10.1.1.4 255.255.255.0 pim smigmp enable
#
ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 0.0.0.0 255.255.255.255 
#
pimstatic-rp 2.2.2.2
#
sysname AR5
#
multicast routing-enable
#
interface GigabitEthernet0/0/0ip address 10.1.150.5 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/1ip address 10.1.1.5 255.255.255.0 pim smigmp enable
#
ospf 1 router-id 5.5.5.5 area 0.0.0.0 network 0.0.0.0 255.255.255.255 
#
pimstatic-rp 2.2.2.2spt-switch-threshold infinity
#

注意配置spt-switch-threshold infinity命令,先不进行SPT切换(重要)

sysname AR6
#
multicast routing-enable
#
interface GigabitEthernet0/0/0ip address 10.1.36.6 255.255.255.0 pim sm
#
interface GigabitEthernet0/0/1ip address 10.1.2.1 255.255.255.0 pim smigmp enable
#
ospf 1 router-id 6.6.6.6 area 0.0.0.0 network 0.0.0.0 255.255.255.255 
#
pimstatic-rp 2.2.2.2spt-switch-threshold infinity
#

PC1加组239.1.1.1

拓扑中需要注意IGMPv2的查询器为AR4

IGMPv2查询器选举规则:

  • 接收查询报文的源IP地址和接收接口的IP地址比较,IP地址小的为查询器

连接组播成员端的DR为AR5

成员端DR负责

  • 向RP发送(*,G)Join报文,建立RPT
  • 转发组播流量

源端DR负责

  • 向RP发送Register注册报文
  • 转发组播流量

DR选举规则

  • DR-Priority优先级高的优选
  • 路由优先级相同,或有Hello报文中不支持写到DR-Priority的路由器,则IP地址大的优选

验证PIM-SM中DR选举机制

拓扑中AR5为组播成员端的DR(IP地址大)

AR4和AR5交互的报文中携带的信息

DR优先级都为1,IP地址大的为DR

查看RPT树的建立

成员端DR向RP发送(*,G)Join报文,沿途建立RPT树,建立(*,G)表项

RPF检查为到RP的地址

AR4上有(*,G)表项,但没有下游接口

抓包查看,成员端DR向RP发送Join报文

查看SPT树的建立

组播源发送组播数据

源端DR,也就是AR1将组播数据封装到注册报文中,单播发送给RP

RPF检查为到组播源的地址

RP收到注册报文后:

  • 进行解封装,向下游接口转发
  • 向源端DR发送(S,G)Join报文,建立SPT树,沿途建立(S,G)表项

  • 单播发送Register-Stop报文给源端DR,通告DR停止发送注册报文(模拟器中抓包并未看到

RP到源端DR沿途建立(S,G)表项,AR1中可以看到注册信息

收到组播数据的路由器也会产生(S,G)表项,将(*,G)表项的下游接口信息复制到(S,G)表项中

不在组播转发路径上(但能收到组播数据)的路由器产生(S,G)表项,没有下游接口,如AR4、AR3

组播转发树

由于配置了不进行SPT切换,组播树如下图

将PC2加入组播组239.1.1.1

  • 成员端DR(AR6)向RP发送(*,G)Join报文,创建RPT树
  • RPF检查地址为RP的IP地址

AR1的(S,G)表项中下游接口并没有G0/0/1

AR3的(S,G)表项下游接口G0/0/1

所以PC2的组播转发路径为AR1->AR2->AR3->AR6

思考:组播转发树是什么样的(由于AR6配置了SPT不切换)

SPT切换

取消AR5、AR6上的SPT不切换配置

pimundo spt-switch-threshold infinity 
#
  • 组成员端DR路由器收到组播流量到一定阈值后,进行SPT切换
  • 默认情况下,华为的SPT切换的流量阈值为0,所以当组播流量下来时,会发生SPT切换

SPT切换过程

当组成员端DR检测到组播报文的转发速率超过阈值:

  • 组成员端DR向源端DR逐跳发送(S,G)Join报文,创建SPT,沿途生成(S,G)表项(包含下游接口)
  • SPT建立后,组成员端DR向RP发送剪枝报文,修剪(S,G)表项的下游接口
  • 如果组播流量不经过RP,则RP向源端DR逐跳发送剪枝报文,修剪(S,G)表项的下游接口

想组播源端DR发送Join报文

SPT切换后,流量不经过RP,RP向源端DR发送剪枝

可以看到RP上的(S,G)表项下游接口为空,被修剪

AR1上的下游接口为连接AR3的接口

AR3上(S,G)表项出现下游接口

切换后的SPT

相关文章:

部署PIM-SM

拓扑图 配置 使能组播路由 配置OSPF 组播路由器接口配置pim-sm 连接组成员的接口使能igmp pim路由器上配置静态RP sysname AR1 # multicast routing-enable # interface GigabitEthernet0/0/0ip address 10.1.12.1 255.255.255.0 pim sm # interface GigabitEthernet0/0/…...

一分钟揭秘面试官真实意图,稳拿offer的面试秘诀!

想要在面试中脱颖而出,顺利获得心仪的offer吗?那么,你需要了解面试官背后的潜台词。通过解析这些潜台词,你将能更准确地把握面试官的期望,并给出他们最喜欢的回答。下面,就让我们一起揭开这层神秘的面纱&am…...

【源码】2024心悦搜剧源码百万级网盘资源

1、一键转存他人链接:就是将别人的分享链接转为你自己的 2、转存心悦搜剧资源:就是将心悦搜剧平台上的所有资源都转成你自己的 3、每日自动更新:自动转存每天的资源并入库 前端uin-app,后端PHP,兼容微信小程序...

燃数科技前端25-40K*14薪一面超简单,下周二面啦

​​​​​​​ 文章末尾扫描二维码领取地址 一面 1、自我介绍 2、低代码如何设计的 3、react路由原理 4、react生命周期 5、什么是回调地狱,如何解决 6、jwt和session有什么区别 7、js文件相互引用有什么问题?如何解决 8、一个很大的json文件…...

读人工智能时代与人类未来笔记14_管控人工智能

1. 管控人工智能 1.1. 历史上的战场进一步推进到与数字网络相连的所有地方 1.2. 数字程序现在控制着一个由众多实体系统构成的庞大且仍在不断增长的领域,而且越来越多的此类系统已实现网络化 1.2.1. 在某些情况下甚至连门锁和冰箱都实现了网络化 1.2.2. 这催生出…...

高效并发编程:Java阻塞队列深度解析与最佳实践

1.阻塞队列的基本概念与应用场景 1.1 阻塞队列的定义 阻塞队列(BlockingQueue)是Java并发包中的一个接口,它支持两个附加操作:当队列为空时,获取元素的线程会等待队列变为非空;当队列满时,存储…...

会话机制:Session

1、什么是会话: 会话对应的英语单词:session 用户打开浏览器,进行一系列操作,然后最终将浏览器关闭,这个整个过程叫做:一次会话。会话在服务器端也有一个对应的java对象,这个java对象叫做&…...

MySQL中, 自增主键和UUID作为主键有什么区别?

首先我们来看看, 存储自增主键和uuid的数据类型 我们知道, mysql中作为主键的通常是int类型的数据, 这个 数据从第一条记录开始, 从1开始主键往后递增, 例如我有100条数据, 那么根据主键排序后, 里面的记录从上往下一次就是1, 2, 3 ... 100, 但是UUID就不一样了, UUID是根据特殊…...

机器人与AI:结合应用与未来展望

机器人与AI:结合应用与未来展望 引言 机器人与人工智能(AI)的结合已经成为现代科技发展的重要方向。随着AI技术的不断进步,机器人不仅在工业领域中得到广泛应用,还逐渐渗透到家庭、医疗、服务等各个领域。本文将探讨…...

PyTorch学习笔记:新冠肺炎X光分类

前言 目的是要了解pytorch如何完成模型训练 https://github.com/TingsongYu/PyTorch-Tutorial-2nd参考的学习笔记 数据准备 由于本案例目的是pytorch流程学习,为了简化学习过程,数据仅选择了4张图片,分为2类,正常与新冠&#xf…...

【Python】 XGBoost模型的使用案例及原理解析

原谅把你带走的雨天 在渐渐模糊的窗前 每个人最后都要说再见 原谅被你带走的永远 微笑着容易过一天 也许是我已经 老了一点 那些日子你会不会舍不得 思念就像关不紧的门 空气里有幸福的灰尘 否则为何闭上眼睛的时候 又全都想起了 谁都别说 让我一个人躲一躲 你的承诺 我竟然没怀…...

Java中print,println,printf的功能以及区别

在Java中,System.out.print, System.out.println, 和 System.out.printf 都是用于在控制台输出的方法,但它们在使用和功能上有所不同。 System.out.print: * 功能:将指定的内容输出到控制台,但不换行。 * 示例:Sy…...

vue3+electron+typescript 项目安装、打包、多平台踩坑记录

环境说明 这里的测试如果没有其他特别说明的,就是在win10/i7环境,64位 创建项目 vite官方是直接支持创建electron项目的,所以,这里就简单很多了。我们已经不需要向开始那样自己去慢慢搭建 yarn create vite这里使用yarn创建&a…...

实际案例分析

实际案例分析 一、数据准备与特征工程 1.1数据收集 在实际案例分析中,首先需要收集相关数据。数据来源可以包括公开数据集、企业内部数据、互联网爬虫抓取等。为了保证数据的质量和准确性,数据收集过程中需遵循以下原则: -针对性强&#…...

JAVA实现图书管理系统(初阶)

一.抽象出对象: 1.要有书架,图书,用户(包括普通用户,管理员用户)。根据这些我们可以建立几个包,来把繁杂的代码分开,再通过一个类来把这些,对象整合起来实现系统。说到整合&#xf…...

【Torch学习笔记】

作者:zjk 和 的区别是逐元素相乘,是矩阵相乘 cat stack 的区别 cat stack 是用于沿新维度将多个张量堆叠在一起的函数。它要求所有输入张量具有相同的形状,并在指定的新维度上进行堆叠。...

LeetCode算法题:42. 接雨水(Java)

题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3…...

LINGO:存贮问题

存贮模型中的基本概念 模型: 基本要素: (1)需求率:单位时间内对某种物品的需求量,用D表示。 (2)订货批量:一次订货中,包含某种货物的数量,用 Q表…...

《微服务王国的守护者:Spring Cloud Dubbo的奇幻冒险》

5. 经典问题与解决方案 5.3 服务追踪与链路监控 在微服务架构的广袤宇宙中,服务间的调用关系错综复杂,如同一张庞大的星系网络。当一个请求穿越这个星系,经过多个服务节点时,如何追踪它的路径,如何监控整个链路的健康…...

(九)npm 使用

视频链接:尚硅谷2024最新版微信小程序 文章目录 使用 npm 包自定义构建 npmVant Weapp 组件库的使用Vant Weapp 组件样式覆盖使用 npm 包 目前小程序已经支持使用 npm 安装第三方包,因为 node_modules 目录中的包不会参与小程序项目的编译、上传和打包, 因此在小程序项目中要…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性&#xff1a;电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中&#xff0c;电力载波技术&#xff08;PLC&#xff09;凭借其独特的优势&#xff0c;正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据&#xff0c;无需额外布…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

Nginx server_name 配置说明

Nginx 是一个高性能的反向代理和负载均衡服务器&#xff0c;其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机&#xff08;Virtual Host&#xff09;。 1. 简介 Nginx 使用 server_name 指令来确定…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

力扣-35.搜索插入位置

题目描述 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

关于uniapp展示PDF的解决方案

在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项&#xff1a; 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库&#xff1a; npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...

华为OD机试-最短木板长度-二分法(A卷,100分)

此题是一个最大化最小值的典型例题&#xff0c; 因为搜索范围是有界的&#xff0c;上界最大木板长度补充的全部木料长度&#xff0c;下界最小木板长度&#xff1b; 即left0,right10^6; 我们可以设置一个候选值x(mid)&#xff0c;将木板的长度全部都补充到x&#xff0c;如果成功…...