和单播路由协议类似,组播路由器在进行数据转发时也要依赖于组播路由协议。组播路由器依靠自己维护的组播路由表,对数据报文进行转发。

组播路由协议的主要作用:

确定朝向组播源的接口,这个接口被称为上游接口,在组播路由表的一个表项中,只允许存在一个上游接口,只有从上游接口到达的组播流量才被是为是合法的。

确定朝向组播接收者的接口,这个接口被称为下游接口。组播流量到达后,会被转发到下游接口,但组播流量永远不会从上有接口转发出去,因为这样有可能形成回路。

维护组播路由表项,每一个组播路由表项都以一对二元组(组播源及组播组)进行标识,每一个组播路由表项都包含上游、下游接口信息。

12.5.1 组播分发树

组播路由协议一个很重要的任务就是,在组播网络中构建一个无环树,也就是组播分发树(Multicast Distribution Tree),简称组播树。常见的组播树有以下两种:

1、SPT(Shortest-Path Tree,最短路径树)

在SPT中,使用(S, G)表项,以组播源为根,组播组路由器会为组播组分别建立独立的SPT。

(S, G)表项中,S为组播源IP地址,G为组播组IP地址,表项中还包含着上游接口和下游接口信息。例如下图所示,假设只存在一个组播组239.1.1.13。所以在R1中的(S,G)表项为:(10.1.1.1,239.1.1.13),上游接口为连接组播源的接口,路由器其余的两个接口为下游接口。

SPT有很大的局限性,因为SPT会为每个组播源建立单独的SPT树,当组播网络规模大、组播源数量众多时,组播网络会很臃肿,众多的组播路由表项会给路由器造成较大负担。

2、RPT(Rebdezvous Point Tree,共享树)

在RPT中,首选会选择一个性能较好的路由器作为RP,然后以RP为中心,向各个组播接收者发送组播报文,而网络中所有的组播源仅需要将组播流量都发送给RP即可。

RPT使用的是(*,G)表项,“ * ”代表的是任意组播源,RP只需要为每个组播组维护一个(*,G)表项即可。但是从上图发现,对于R2而言,组播流量先到RP再到R2并不是最优路径,但是组播路由协议中也有相应的机制来规避这种次优路径的问题。

第十二章:组播 — 组播路由协议相关推荐

  1. matlab矩阵最大无关组,MATLAB 第十二章 矩阵的秩与向量组的最大无关组.ppt

    MATLAB 第十二章 矩阵的秩与向量组的最大无关组 MATLAB 高等数学实验 实验十二矩阵的秩与向量组的最大无关组 实验目的 学习利用MATLAB命令求矩阵的秩, 对矩阵进行初等行变换, 求向量组 ...

  2. Linux云计算【第一阶段】第十二章:网络管理、进制及SSH管理与攻防

    第十二章:网络管理及SSH管理与攻防 [重难点] 一.网络发展概述 局域网 城域网 广域网 基本网络协议 客户端与服务器的概念 从客户端到服务器的经过 No.1 客户端与服务器的概念 客户端: 即表示 ...

  3. 「第十二章」Web框架安全

    「第三篇」服务器端应用安全批注[--] 表示他人.自己.网络批注参考资料来源于* 书中批注* CSDN* GitHub* Google* 维基百科* YouTube* MDN Web Docs由于编写 ...

  4. 鸟哥的Linux私房菜(服务器)- 第十二章、网络参数控管者: DHCP 服务器

    第十二章.网络参数控管者: DHCP 服务器 最近更新日期:2011/07/27 想象两种情况:(1)如果你在工作单位使用的是笔记本电脑,而且常常要带着你的笔记本电脑到处跑, 那么由第四章.连上 In ...

  5. CoreJava 笔记总结-第十二章 并发-1

    第十二章 并发 线程 package chapter12_concurrent.threads;public class ThreadsTest {public static final int DE ...

  6. linux i2c adapter 增加设备_「正点原子Linux连载」第六十二章Linux SPI驱动实验(一)...

    1)实验平台:正点原子Linux开发板 2)摘自<正点原子I.MX6U嵌入式Linux驱动开发指南>关注官方微信号公众号,获取更多资料:正点原子 第六十二章Linux SPI驱动实验 上一 ...

  7. 第十二章_网络搭建及训练

    文章目录 第十二章 网络搭建及训练 CNN训练注意事项 第十二章 TensorFlow.pytorch和caffe介绍 12.1 TensorFlow 12.1.1 TensorFlow是什么? 12 ...

  8. 20190825 On Java8 第十二章 集合

    第十二章 集合 java.util 库提供了一套相当完整的集合类(collection classes)来解决这个问题,其中基本的类型有 List . Set . Queue 和 Map. 不要在新代 ...

  9. 《Kotlin 程序设计》第十二章 Kotlin的多线程:协程(Coroutines)

    第十二章 Kotlin的多线程:协程(Coroutines) Kotlin 1.1 introduced coroutines, a new way of writing asynchronous, ...

  10. MLAPP————第十二章 隐线性模型

    第十二章 隐线性模型 12.1 要素分析(factor analysis) 在我们之前提到的混合模型中,数据的生成都是由某个隐状态控制的,然后是那个隐状态控制的分布生成的,但是这样的模型在表示上还是具 ...

最新文章

  1. 【ZJOI2008】树的统计(树链剖分)
  2. CodeVIO:紧耦合神经网络与视觉惯导里程计的稠密深度重建(ICRA2021 Best Paper Finalist)...
  3. Java并发编程:线程池
  4. Codeforces Round #462 (Div. 2)题解
  5. W ndoWs7重启按F11没用,windows7无法正常启动按F8也没有效果的解决方法
  6. Angular Template expression operators介绍
  7. ubuntu系统下Java环境JDK的安装
  8. 索引超出矩阵维度怎么修改程序_seo怎么学?seo自己能学会吗?
  9. mysql 优化器_mysql之优化器、执行计划、简单优化
  10. 写一个带输入输出的存储过程_携程大佬带你写一个可扩展的Spring插件。
  11. 7部必看的纪录片,每一部都堪称经典,让人叹为观止!
  12. Selenium用户指南 - 第一章 Selenium 2.0 文档修订注解
  13. arcgis for js 画圆圈(会跟地图一起缩小),而不是打点然后加半径的圆点(不会缩小),制作打卡功能选点。可以点击地图自动画圆圈
  14. ARM GICv3 ITS介绍及代码分析
  15. 如何设置分布式IO模块Profinet的地址
  16. 猪猪女孩有多蠢,猫爪杯就有多火
  17. 百万调音师—Audition EQ均衡器
  18. eclipse + pydev远程调试OpenStack
  19. python验证手机号是否注册过微博
  20. 转载:中国部分酱香型白酒名录

热门文章

  1. 完美天空下载站php程序,天空下载站(skycn)程序存在SQL注入漏洞及最新解决方案...
  2. F - Candle Box (思维)
  3. KaiwuDB 分布式数据库-介绍
  4. 安装captcha-killer-modified插件(windos+python环境)
  5. 【八大排序(一)】排序还只会用冒泡?进来给我学!
  6. Map双列集合的用法,遍历方法
  7. 佟强老师的Java课件
  8. 量化投资 第27章 K线图 27.1
  9. IFrame使用-1
  10. BBB通过usb联网