前文我们了解了组播路由协议PIM以及PIM-DM密集模式相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16084310.html;今天我们来聊一聊PIM的另外一种模式SM稀疏模式相关话题;

  PIM-SM概述

  PIM-SM(PIM Sparse Mode,协议无关组播-稀疏模式)是组播PIM的另外一种模式稀疏模式,该模式和密集模式相反,使用“拉(pull)”的方式来传输数据;适用于范围较广的大中型网络中,组成员分布相对分散的环境中;

  PIM-SM工作流程

  1、邻居发现和DR选举

  提示:PIM-SM邻居发现过程和PIM-DM相同,都是通过发送hello包相互建立起邻居;不同的是DM只会在靠近用户侧路由器选一个DR来充当IGMPv1的查询器,v2v3版本不依赖PIM来选举查询器;简单讲就是DM里只会在靠近用户侧侧的路由器上选举一个DR,其作用就仅仅是充当IGMPv1的查询器;而SM模式里DR不但要在靠近接收者侧的路由器上选举DR,在靠近组播源的路由器上也会选择DR,其作用就是作为共享网段中唯一转发组播数据的转发者;

  DR选举规则

  1、先比较优先级,优先级高者成为DR;

  2、如果优先级一样,则比较ip地址,ip地址大者成为DR;

  提示:接收者侧的DR主要负责向RP发送加入报文,组播源侧的DR主要负责向RP发送组成报文;RP就是共享点从源到RP一路建立源树,RP到接收者一路建立共享树;

  提示:连接接收者的路由器向组播组对应的RP发送加入报文,该报文被逐跳送达RP,所经过的路径就形成了RPT的分支;组播源如果要想组播组发送组播数据,首先由于组播源侧DR负责向RP进行注册,把注册报文通过单播的方式发送给RP,该报文到达RP后触发构建SPT。之后组播源把组播数据沿着SPT发向RP,但组播数据达到RP后,被复制并沿着RPT发送给接收者;

  2、用户加入过程

  提示:SM和DM不一样有扩散-剪支-嫁接的过程;SM默认会认为整个网段里没有用户存在,所以它不会一上来就扩散;而是通过接收者DR向RP发起加入消息,该消息沿着每一台路由器都创建(*,G)表项,形成以RP为根的RPT;也就是说SM模式中只有出现接收者,才会构建组播路由,才会向对应网段转发组播数据;如果有用户离开,则也是用户侧发送剪支消息;加入-剪支是随用户侧的变化而变化;

  提示:不管是靠近用户侧还是组播源侧的路由器,都是在共享网段中选举DR,不同共享网段的用户是不同的DR;

  3、组播源注册过程

  提示:首先是由DR通过组播报文中封装单播注册消息发送给RP,RP收到组播源的注册消息后,会发送加入消息,从而组播源到RP的路由器建立起SPT;随后在由RP向用户侧DR转发组播数据(通过RPT),最终组播数据送达至用户;

  注册停止过程

  提示:当RP发送加入消息后,对应SPT形成后,RP会向组播源侧DR发送注册停止消息,意思就是告诉组播源你的注册我这边已经收到了,你那边不用一直发送注册消息;你可以停了,类似一个确认消息吧;

  通过上述过程,我们不难看出从源到RP,然后再从RP到用户侧,这样一条转发路径不一定是最优的,并且如果有多个组播源,此时RP的流量是非常高的,负载也比较重;所以为了避免次优路径和RP的负载,就有了下面的RPT向SPT切换到过程;、

  4、RPT向SPT切换过程

  提示:这个切换我们可以手动配置是否要切换,这个根据个人的环境来配置,默认情况下华为的模拟器是当接收者收到第一个组播报文后,接受者侧DR发送加入消息,当组播源侧DR收到用户侧DR发送的加入消息后,会随加入消息的路径建立起源树,从而实现RPT向SPT的切换;

  提示:由用户侧DR或上游路由器向RP发送Prune消息,RP向组播源DR发送Prune消息进行多余路径剪支;

  提示:通过Prune剪支消息去把对应的源树剪掉,从而完成源树切换,最终形成源到接收者之间新的源树;

  通过上述RPT向SPT的切换,我们可以看到PIM-SM能够以比PIM-DM根经济的方式建立SPT(其原因是SM不用全网扩散,全网扩散会消耗沿路路由器的内存资源、网络带宽等);

  PIM-SM中的“Assert”断言机制和PIM-DM中的断言机制一样,没有区别;

HCNP Routing&Switching之组播技术PIM-SM 稀疏模式的更多相关文章

  1. HCNP Routing&Switching之组播技术PIM-SM RP

    前文我们了解了组播技术中,组播路由协议PIM的稀疏模式相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16142795.html:今天我们来聊一聊组播路 ...

  2. HCNP Routing&Switching之组播技术-组播路由协议PIM

    前文我们了解了组播技术中组播分发树相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16019334.html:今天我们来聊一聊组播路由协议PIM相关话题 ...

  3. HCNP Routing&Switching之组播技术-组播协议IGMP

    前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...

  4. HCNP Routing&Switching之组播技术-组播基础

    组播技术背景 随着internet网络的不断发展,网络中交互的各种数据.语音.视频信息数量突增:新型的在线直播.网络电视.视频会议等应用也在逐渐兴起:这些业务大多符合点到多点的模式,对信息安全性.传播 ...

  5. HCNP Routing&Switching之组播技术-组播地址

    前文我们聊到了组播技术背景,单播.广播在点到多点应用中的问题,以及组播对比单播.广播在点到多点的网络环境中的优势.劣势,相关回顾请参考https://www.cnblogs.com/qiuhom-18 ...

  6. HCNP Routing&Switching之组播技术-组播分发

    前文我们了解了组播技术中的igmp-snooping相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15860484.html:今天我们来聊一聊组播技术 ...

  7. HCNP Routing&Switching之组播技术-IGMP-Snooping

    前文我们了解了组播协议IGMP相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15700550.html:今天我们来聊一聊二层交换机处理组播报文所面临的 ...

  8. IP组播技术介绍及实现例子

    引 言 近年来,随着Internet的迅速普及和爆炸性发展,在Internet上产生了许多新的应用,其中不少是高带宽的多媒体应用,譬如网 络视频会议.网络音频/视频广播.AOD/VOD.股市行情发布. ...

  9. IP组播技术

      1  概述 1.1  产生背景 传统的IP通信有两种方式:一种是在源主机与目的主机之间点对点的通信,即单播:另一种是在源主机与同一网段中所有其它主机之间点对多点的通信,即广播.如果要将信息发送给多 ...

随机推荐

  1. session 会话机制以及变量覆盖

    session会话机制介绍如下 http是无状态协议.服务器靠cookie和session来记住用户.$_SESSION 和 $_GET等一样,是超全局变量. 后台脚本里面会写: session() ...

  2. 14图像边缘检测的sobel_ctrl控制模块

    一设计功能 计算得到的dxy,再通过和阈值比较大小,输出po_sum作为VGA的输入,在显示器器上显示图像的轮廓. 二设计思路 根据前一篇博客对sobel算法的介绍,先通过FIFO的双流水线操作采集到 ...

  3. java面试--360

    1题执行以下程序后的输出结果是()public class Test {public static void main(String[] args) {StringBuffer a = new Str ...

  4. 编写 Shell 程序,实现自动删除 50 个账号的功能,账号名为stud1 至 stud50 ?

    #!/bin/bashfor((i=1;i<51;i++))do  userdel -r stud$idone

  5. 事务的 ACID 是指什么?

    原子性(Atomic):事务中各项操作,要么全做要么全不做,任何一项操作 的失败都会导致整个事务的失败: 一致性(Consistent):事务结束后系统状态是一致的: 隔离性(Isolated):并发 ...

  6. 你如何确保 main()方法所在的线程是 Java 程序最后结束 的线程?

    我们可以使用 Thread 类的 join()方法来确保所有程序创建的线程在 main()方法退出前结束.

  7. dos 循环读取当前文件夹下的视频名字

    @echo off for /R %%i in (*.mp4) do ( echo -isma %%~nxi ) pause

  8. js技术之input只读功能可以通过js设置readonly

    一.input标签 输入项标签,不同type属性,会有不同的显示效果和不同的作用 input标签的属性: disabled:表单项禁用,不可修改值,也不会被提交 readonly:表单项只读,不可修改 ...

  9. SpringAop实现原理及代理模式

    Spring Aop的原理 Spring的AOP就是通过动态代理实现的.当为某个Bean或者某些Bean配置切面时,Spring会为其创建代理对象,当调用该对象的某个方法时,实际是调用生成的代理类的对 ...

  10. ctfhub 双写绕过 文件头检查

    双写绕过 进入环境 上传一句话木马 上传路径感觉不对检查源代码 从此处可以看出需要双写绕过 使用bp抓包 此处这样修改即可双写绕过 使用蚁剑连接 即可找到flag 文件头检查 进入环境 上传一句话木马 ...