9.4 PIM-DM
- 实验目的
- 熟悉PIM-DM的应用场景
- 掌握PIM-DM的配置方法
- 实验拓扑
实验拓扑如图9-28所示:

图9-28:PIM-DM
- 实验步骤
(1)IP地址的配置
MCS1的配置如图9-29所示:

图9-29:配置MCS1的IP地址
R1的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
[Huawei]sysname R1
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.1.1 24
[R1-GigabitEthernet0/0/0]quit
[R1]interface g0/0/1
[R1-GigabitEthernet0/0/1]ip address 12.1.1.1 24
[R1-GigabitEthernet0/0/1]quit
[R1]interface g0/0/2
[R1-GigabitEthernet0/0/2]ip address 13.1.1.1 24
[R1-GigabitEthernet0/0/2]quit
R2的配置
[Huawei]sysname R2
[R2]interface g0/0/2
[R2-GigabitEthernet0/0/2]ip address 12.1.1.2 24
[R2-GigabitEthernet0/0/2]quit
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]ip address 100.1.1.2 24
[R2-GigabitEthernet0/0/0]quit
R3的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
Info: Information center is disabled.
[Huawei]sysname R3
[R3]interface g0/0/3
[R3-GigabitEthernet0/0/3]ip address 13.1.1.3 24
[R3-GigabitEthernet0/0/3]quit
[R3]interface g0/0/0
[R3-GigabitEthernet0/0/0]ip address 100.1.1.3 24
[R3-GigabitEthernet0/0/0]quit
R4的配置
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
Info: Information center is disabled.
[Huawei]sysname R4
[R4]interface g0/0/0
[R4-GigabitEthernet0/0/0]ip address 100.1.1.4 24
[R4-GigabitEthernet0/0/0]quit
[R4]interface g0/0/1
[R4-GigabitEthernet0/0/1]ip address 10.1.1.4 24
[R4-GigabitEthernet0/0/1]quit
PC1的配置
配置PC1的IP地址如图9-30所示:

图9-30:配置PC1的IP地址
(2)配置IGP
R1的配置
[R1]ospf router-id 1.1.1.1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 13.1.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]quit
R2的配置
[R2]ospf router-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]network 100.1.1.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0]quit
R3的配置
[R3]ospf router-id 3.3.3.3
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 13.1.1.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]network 100.1.1.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0]quit
R4的配置
[R4]ospf router-id 4.4.4.4
[R4-ospf-1]area 0
[R4-ospf-1-area-0.0.0.0]network 100.1.1.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]network 10.1.1.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0]quit
(3)配置PIM
R1的配置
[R1]multicast routing-enable
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]pim dm
[R1-GigabitEthernet0/0/0]quit
[R1]interface g0/0/1
[R1-GigabitEthernet0/0/1]pim dm
[R1-GigabitEthernet0/0/1]quit
[R1]interface g0/0/2
[R1-GigabitEthernet0/0/2]pim dm
[R1-GigabitEthernet0/0/2]quit
R2的配置
[R2]multicast routing-enable
[R2]interface g0/0/2
[R2-GigabitEthernet0/0/2]pim dm
[R2-GigabitEthernet0/0/2]quit
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]pim dm
[R2-GigabitEthernet0/0/0]quit
R3的配置
[R3]multicast routing-enable
[R3]interface g0/0/3
[R3-GigabitEthernet0/0/3]pim dm
[R3-GigabitEthernet0/0/3]quit
[R3]interface g0/0/0
[R3-GigabitEthernet0/0/0]pim dm
[R3-GigabitEthernet0/0/0]quit
R4的配置
[R4]multicast routing-enable
[R4]interface g0/0/0
[R4-GigabitEthernet0/0/0]pim dm
[R4-GigabitEthernet0/0/0]quit
[R4]interface g0/0/1
[R4-GigabitEthernet0/0/1]pim dm
[R4-GigabitEthernet0/0/1]quit
(4)开启IGMP
[R4]interface g0/0/1
[R4-GigabitEthernet0/0/1]igmp enable
[R4-GigabitEthernet0/0/1]igmp version 2
[R4-GigabitEthernet0/0/1]quit
(5)设置组播服务器
MCS1的配置如图9-31所示:

图9-31:配置组播服务器
(6)设置组播组成员
PC1的配置如图9-32所示:

图9-32:配置PC1让其加入组239.1.1.1
- 实验调试
(1)在R1上查看PIM的邻居关系
<R1>display pim neighbor
VPN-Instance: public net
Total Number of Neighbors = 2
Neighbor Interface Uptime Expires Dr-Priority BFD-Session
12.1.1.2 GE0/0/1 00:10:18 00:01:27 1 N
13.1.1.3 GE0/0/2 00:09:35 00:01:40 1 N
【技术要点】
- Neighbor:邻居的接口IP地址
- Interface:我的哪个接口和邻居相连
- Uptime:邻居建立的时间
- Expires:失效时间,每隔30s发送一次hello包文,失效时间为105s,
- Dr-Priority:DR的优选级,默认为1。范围是0-4294967295
- BFD-Session:没有双向转发检测会话
(2)查看每一台路由器的组播路由表
查看R1的组播路由表
<R1>display multicast routing-table
Multicast routing table of VPN-Instance: public net
Total 1 entry
00001. (192.168.1.2, 239.1.1.1)
Uptime: 00:00:21
Upstream Interface: GigabitEthernet0/0/0 //上游接口
List of 1 downstream interface
1: GigabitEthernet0/0/2 //下游接口
查看R2的组播路由表
<R2>display multicast routing-table
Multicast routing table of VPN-Instance: public net
Total 1 entry
00001. (192.168.1.2, 239.1.1.1)
Uptime: 00:00:24
Upstream Interface: GigabitEthernet0/0/2 //上游接口
查看R3的组播路由表
<R3>display multicast routing-table
Multicast routing table of VPN-Instance: public net
Total 1 entry
00001. (192.168.1.2, 239.1.1.1)
Uptime: 00:00:29
Upstream Interface: GigabitEthernet0/0/3 //上游接口
List of 1 downstream interface
1: GigabitEthernet0/0/0 //下游接口
查看R4的组播路由表
<R4>display multicast routing-table
Multicast routing table of VPN-Instance: public net
Total 1 entry
00001. (192.168.1.2, 239.1.1.1)
Uptime: 00:00:38
Upstream Interface: GigabitEthernet0/0/0 //上游接口
List of 1 downstream interface
1: GigabitEthernet0/0/1 //下游接口
通过以上输出可以得到组播流量的走向,其走向如图9-33所示:

图9-33:组播流量走向图
华为Datacom网络工程师HCIP全套学习课程(全套理论+实验)-学习视频教程-腾讯课堂
【技术要点】
R4会收到R2和R3发送过来的组播流量,于是会产生assert机制,选举原则为:
- 单播路由协议优先级较高者获胜。
- 如果优先级相同,则到组播源的开销较小者获胜。
- 如果以上都相同,则下游接口IP地址最大者获胜。
它们都为OSPF路由协议,所以优选级都为10,组播源的开销都为2,R2的g0/0/0接口地址为100.1.1.2,R3的g0/0/0接口为100.1.1.3,所以R3成为了winner
查看R2的组播路由表
[R2]display pim routing-table fsm
VPN-Instance: public net
Total 0 (*, G) entry; 1 (S, G) entry
Abbreviations for FSM states and Timers:
NI - no info, J - joined, NJ - not joined, P - pruned,
NP - not pruned, PP - prune pending, W - winner, L - loser,
F - forwarding, AP - ack pending, DR - designated router,
NDR - non-designated router, RCVR - downstream receivers,
PPT - prunepending timer, GRT - graft retry timer,
OT - override timer, PLT - prune limit timer,
ET - join expiry timer, JT - join timer,
AT - assert timer, PT - prune timer
(192.168.1.2, 239.1.1.1)
Protocol: pim-dm, Flag: ACT
UpTime: 00:01:00
Upstream interface: GigabitEthernet0/0/2
Upstream neighbor: 12.1.1.1
RPF prime neighbor: 12.1.1.1
Join/Prune FSM: [P, PLT Expires: 00:03:04]
Downstream interface(s) information: None
FSM information for non-downstream interfaces:
1: GigabitEthernet0/0/2
Protocol: pim-dm
DR state: [DR]
Join/Prune FSM: [NI]
Assert FSM: [L, AT Expires: 00:02:34]
Winner: 12.1.1.1, Pref: 0, Metric: 0
2: GigabitEthernet0/0/0
Protocol: pim-dm
DR state: [NDR]
Join/Prune FSM: [NI]
Assert FSM: [L, AT Expires: 00:02:34] // 本路由器为loser 定时器180s,还有154s
Winner: 100.1.1.3, Pref: 10, Metric: 2 //winner是100.1.1.3 它的优选级为10,开销为2
(3)在R1的g0/0/1口抓包分析
第一个包hello包,其包文格式如图9-34所示:

图9-34:hello的包文格式
【技术要点】
- Hello包发往组播地址224.0.0.13
- 组播的版本为2
- 包的类型为hello
- 失效时间为105s,hello的间隔时间为30s
- DR的优选级为1
- 状态刷新时间为60s
- 华为Datacom网络工程师HCIP全套学习课程(全套理论+实验)-学习视频教程-腾讯课堂
(3)开启组播源,然后在在PC1上点击加入再离开,在R4的g0/0/0抓包
第二个包join/prune包,其报文格式如图9-35所示:

图9-35:join/prune包的包文格式
第三个包graft包,其报文格式如图9-36所示:

图9-36:graft包的包文格式
第四个包graft-ack包,其包文格式如图9-37所示:

图9-37:graft-ack包的包文格式
第五个包assert包,其包文格式如图9-38所示:

图9-38:assert包的包文格式
第六个包stata-refresh包,其包文格式如图9-39所示:

图9-39:stata-refresh包的包文格式
相关文章:
9.4 PIM-DM
实验目的 熟悉PIM-DM的应用场景掌握PIM-DM的配置方法 实验拓扑 实验拓扑如图9-28所示: 图9-28:PIM-DM 实验步骤 (1)IP地址的配置 MCS1的配置如图9-29所示: 图9-29:配置MCS1的IP地址 R1的配置 <Huawe…...
程序员推荐的良心网站合集!
今天来给大家推荐几个程序员必看的国外良心网站合集。 IBM developer 技术性很强的博客网站,网站自带真实示例代码和架构解决方案,大家可以在上面找到适合自己的语言方向开始学习交流。 https://developer.ibm.com/ infoq 技术论坛社区,内…...
信息安全概论之《密码编码学与网络安全----原理与实践(第八版)》
前言:在信息安全概论课程的学习中,参考了《密码编码学与网络安全----原理与实践(第八版)》一书。以下内容为以课件为主要参考,课本内容与网络资源为辅助参考,学习该课程后作出的总结。 一、信息安全概述 1…...
跬智信息全新推出云原生数据底座玄武,助力国产化数据服务再次升级
2月28日,跬智信息(Kyligence)宣布全新推出国产化云原生数据底座开源项目玄武(XUANWU),以助力企业加速数据平台上云,并实现国产化升级。玄武(XUANWU)是在容器化技术上形成…...
【离线数仓-9-数据仓库开发DWS层设计要点-DWS层汇总表以及数据装载】
离线数仓-9-数据仓库开发DWS层设计要点-DWS层汇总表以及数据装载离线数仓-9-数据仓库开发DWS层设计要点-DWS层汇总表以及数据装载一、交易域用户商品粒度订单最近1日/N日汇总表1.交易域用户商品粒度订单最近1日汇总表2.交易域用户商品粒度订单最近N日汇总表二、交易域优惠券粒度…...
我的十年编程路 序
算起来,从决定并从事编程开始,已十年有余了。 这十年是怎么算的呢? 我的本科是从2009年至2013年,现在回想起来,应该是从2012年下半年,也就是大四还未正式开始的时候决定从事Android开发。参加了培训班&am…...
xs 180
选择题(共180题,合计180.0分) 1. 你被任命为某项目的敏捷教练,为了更好的交付产品,你与团队召开会议,讨论项目过程中团队应该如何做到有效沟通。最有可能确定项目过程中主要以下列哪种方式沟通? A 团队成员在各自的办公室自行办公&#…...
时间序列分析 | BiLSTM双向长短期记忆神经网络时间序列预测(Matlab完整程序)
时间序列分析 | BiLSTM双向长短期记忆神经网络时间序列预测(Matlab完整程序) 目录 时间序列分析 | BiLSTM双向长短期记忆神经网络时间序列预测(Matlab完整程序)预测结果评价指标基本介绍完整程序参考资料预测结果 评价指标 训练集数据的R2为:0.99302 测试集数据的R2为&…...
0101基础-认证授权-springsecurity
文章目录1 基础概念1.1 认证1.2 会话1.3 jwt1.4 授权2 授权的数据模型3 RBAC3.1 基于角色的访问控制3.2 基于资源的访问控制4 名词解析4.1 SSO4.2 CAS4.3 联合登陆4.4 多端登录:同一账号不同终端登录4.5 OAuth1 基础概念 1.1 认证 认证是为了保护系统的隐私数据和…...
一文简单了解THD布局要求
一、什么是THD? THD指总谐波失真。谐波失真是指输出信号比输入信号多出的谐波成分。谐波失真是系统不完全线性造成的。所有附加谐波电平之和称为总谐波失真。总谐波失真与频率有关。一般说来,1000Hz频率处的总谐波失真最小,因此不少产品均以…...
[C++]多态
🥁作者: 华丞臧 📕专栏:【C】 各位读者老爷如果觉得博主写的不错,请诸位多多支持(点赞收藏关注)。如果有错误的地方,欢迎在评论区指出。 推荐一款刷题网站 👉LeetCode 文章目录一、多态…...
中国版ChatGPT高潮即将到来,解密ChatGPT底层网络架构
2022年11月30日人工智能研究实验室OpenAI发布全新聊天机器人ChatGPT,在中国用户无法访问的前提下,上线仅两个月月活用户就突破了1亿。ChatGPT如同重磅炸弹,一时间火遍全球。面对这一万亿级市场机遇,在国内,无论是资本方…...
PingCAP 唐刘:一个咨询顾问对 TiDB Chat2Query Demo 提出的脑洞
导读 近日,TiDB Cloud 发布了 Chat2Query 功能,在 TiDB Cloud 上通过自然语言提问,即可生成相应的 SQL,通过 TiDB Cloud 对上传的任意数据集进行分析。Gartner 也在一份有关 ChatGPT 对数据分析影响研究的报告中提及了 PingCAP 的…...
力扣-销售分析III
大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:1084. 销售分析III二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他总结…...
U-Boot 之七 详解 Driver Model 架构、配置、命令、初始化流程
U-Boot 在 2014 年 4 月参考 Linux Kernel 的驱动模型设计并引入了自己的 Driver Model(官方简称 DM) 驱动架构。这个驱动模型(DM)为驱动的定义和访问接口提供了统一的方法,提高了驱动之间的兼容性以及访问的标准性。 …...
大数据算法重点
1 大数据亚线性空间算法 场景:用二进制存储一个数字N,需要log(N)的空间 问题:如果N特别大而且这样的N又特别的多,该怎么办呢? 思路:减少一些准确性,从而节省更多的空间。 解决办法:使…...
【Eclipse】The import xxxx cannot be resolved 问题解决
在Eclipse使用过程中,某一个类明明存在,但是使用import导入时,却总是提示The import xxxx cannot be resolved的错误,解决办法如下: 点击Project->Clean......
LinkWeChat系统Docker版部署注意事项
具体部署手册:https://www.yuque.com/linkwechat/help/ffi7bu注意事项:启动类配置文件路径需要修改,各个模块启动类原配置如下:.properties("spring.config.name:bootstrap", "config/run/bootstrap.yml")各个…...
【高数】不定积分之有理函数的积分
文章目录前言有理函数积分的通用解法有理函数的特殊解法前言 这个专栏开始更新高等数学的解题方法,本专栏没有特别强调概念,主要是让大家熟悉考研中的一些题型以及如何求解 关键步骤用蓝色高亮提示 总结方法用红色高亮提示 注意事项用绿色高亮提示 希望…...
Java——数组
目录 前言 一、数组的定义 二、数组声明和创建 三、三种初始化及内存分析 Java内存分析 三种初始化 静态初始化 动态初始化 数组的默认初始化 数组的四个基本特点 四、下标越界及小结 五、数组的使用 For-Each循环 数组作方法入参 数组作返回值 六、二维数组 七…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
