组播介绍
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相同的组播MAC地址 地址 相同的组播 (FDDI和以太网 和以太网) 和以太网
0x0100.5E01.0101
内容
• • • • • 组播编址 组播分发树 反向路径转发(RPF) 组播路由协议 域间组播
组播分发树
最短路径树(基于源的分发树) 最短路径树(基于源的分发树)
源 S1
源 S2
A B D F
组播协议介绍
1
内容
• • • • • 组播编址 组播分发树 反向路径转发(RPF) 组播路由协议 域间组播
组播编址
IP组播 MAC地址映射 (FDDI和以太网 组播 地址映射 和以太网) 和以太网
32 Bits 1110 5 Bits Lost 28 Bits
239.255.0.1 01-00-5e-7f-00-01
反向路径转发(RPF)
• 何谓RPF? 何谓RPF?
路由器收到组播数据报文后, 路由器收到组播数据报文后,只有确认这个数据报文是从自己到 源的出接口上到来的,才进行转发,否则丢弃报文。 源的出接口上到来的,才进行转发,否则丢弃报文。
• RPF检查 RPF检查
• 在单播路由表中查找到组播报文源地址的路由 • 如果该路由的出接口就是报文的入接口,RPF成功 如果该路由的出接口就是报文的入接口, 成功 • 否则 否则RPF失败 失败
25 Bits 48 Bits 23 Bits
组播编址
IP组播 MAC地址映射 (FDDI和以太网 组播 和以太网) 地址映射 和以太网
注意存在32 IP -> 1 MAC地址重叠 注意存在 地址重叠
32 - IP组播地址 组播地址 224.1.1.1 224.129.1.1 225.1.1.1 225.129.1.1 . . . 238.1.1.1 238.129.1.1 239.1.1.1 239.129.1.1
• 潜在问题 潜在问题...
– 泛滥剪枝过程不够高效 – 复杂的 复杂的Assert机制 机制 – 控制和数据平面混合
• 导致网络内部的所有路由器上都有 导致网络内部的所有路由器上都有(S, G) • 可能会导致非确定性的拓扑行为
– 不支持共享树
组播路由协议
PIM-SM (RFC 2362)
• 支持共享树和源树 支持共享树 共享树和
RP 组播源
Traffic Flow Shared Tree Source Tree (S, G) Join
Last-hop router joins the Source Tree. Additional (S, G) State is created along new part of the Source Tree. 接收者
• 进行RPF检查 • 创建“截断广播树”(TBT, 一种组播分发树型结构)
– 使用特殊的“毒性逆转”机制
– 使用泛滥和剪枝机制
• 组播数据开始时延TBT向下泛滥 • 当下游不需要该数据时对TBT枝杈进行剪枝 • 剪枝每过一定时间超时,重新延枝杈进行泛滥
组播路协议
MOSPF协议 协议(RFC 1584) 协议
•组播路由不是单播路由!是完完全全的新 东西,不象OSPF,也不象RIP,不象你熟悉 的任何东西。
组播路由协议
组播路由协议的类型
• 密集模式(Dense-mode)
– – – – 使用“推”(Push)模型(先给你,可以不要) 组播数据整网络的泛滥(Flood) 下游不想接收的话则剪枝(Prune) 泛滥、剪枝、泛滥、剪枝…周而复始 (通常3分钟折腾 一次)
组播路由协议
PIM-SM SPT 切换
RP 组播源
Traffic Flow Shared Tree Source Tree (S, G) Prune
(S, G) traffic flow is no longer needed by the RP so it Prunes the flow of (S, G) traffic.
组播分发树
共享分发树
源 S1 组播路由项 (*, G), iif, oiflist •* 任何源地址 •G 组地址 •iif 入接口 •oiifs 出接口列表 源 S2
A B D (RP) F
C
E
(RP)
PIM汇聚点 汇聚点 共享树 源树
接收者 R1
接收者 R2
内容
• • • • • 组播编址 组播分发树 反向路径转发(RPF) 组播路由协议 域间组播
• 适合于 适合于…
– 大规模的企业网络 – 是任何网络的优选方案,不管其规模和成员密集程度。 是任何网络的优选方案,不管其规模和成员密集程度。
组播路由协议
PIM-SM 共享树加入
RP
(*, G) 加入 共享树
(*, G) 仅在共享树 沿途建立
接收者
组播路由协议
PIM-SM 发送者注册
RP 组播源
– 为每个 (SNet, G) 对都需要单独的计算
组播路由协议
MOSPF评价: 评价: 评价
• 与单播路由协议相关,仅在OSPF网络内运行 • 可伸缩性不好
– 每个组播(SNet, G)对都需要使用Dijkstra算法进行计算! – 不支持共享树
• 不适合于…
– 通用的组播网络,其中发送者可能会非常的多
组播路由协议
初始泛滥
组播源
网络中的每个 网络中的每个路由器 每个路由器 都创建(S, G)! 都创建 组播数据报文
接收者
组播路由协议
剪枝不需要的数据流
组播源
组播数据报文 剪枝消息 接收者
组播路由协议 剪枝之后
组播源
组播数据报文
泛滥和剪枝过程每3 泛滥和剪枝过程每3分钟 重复一次!!! 重复一次!!!
• 对OSPF单播路由协议的扩展
– OSPF: 路由器使用链路状态通告来获取整个网络的可用链路信息 – MOSPF: 在OSPF链路状态通告中包含组播信息,以次构建组播分发 树(每个路由器都维护整个网络的最新拓扑信息)
• 组成员关系LSA(链路状态通告)向OSPF路由域整网泛滥, 这样MOSPF路由器就可以计算出接口列表 • 使用狄杰克斯特拉算法(Dijkstra algorithm)来计算最短 路径树
慢收敛—类似 慢收敛 类似RIP 类似 路由器中组播路由状态信息庞杂, 路由器中组播路由状态信息庞杂,到处都是 (S,G) 不支持共享树 最大不能超过32跳 最大不能超过 跳 不适合于大规模的网络(泛滥剪枝机制、可伸缩性差) 不适合于大规模的网络(泛滥剪枝机制、可伸缩性差)
– DVMRP依赖自己找回来的单播路由:
数据流 共享树 源树 (S, G) 注册 (S, G) 加入
(S, G)仅在源树 仅在源树 沿途建立
(单播 单播) 单播
接收者
组播路由协议
PIM-SM 发送者注册
RP 组播源
数据流 共享树 源树 (S, G)注册 注册 (S, G) 注册停止
数据流从组播源通过 源树到达RP 源树到达 RP向第一跳路由器发送注册停 向第一跳路由器发送注册停 止(Register-Stop)消息,停 )消息, 止注册过程 接收者
C
E
组播路由项 (S, G), iif, oiflist •S 源地址 •G 组地址 •iif 入接口 •oiifs 出接口列表
接收者 R1
接收者 R2
组播分发树
最短路径树(基于源的分发树) 最短路径树(基于源的分发树)
源 S1
源 S2
A B D F
C
E
接收者 R1
接收者 R2
组播路由项 (S, G), iif, oiflist •S 源地址 •G 组地址 •iif 入接口 •oiifs 出接口列表
组播路由表 网络 接口 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0
S1 E0
X
S0 S2
报文从错误接口到达 丢弃数据报文! 丢弃数据报文!
内容
• • • • • 组播编址 组播分发树 反向路径转发(RPF) 组播路由协议 域间组播
组播路由协议
接收者
网络中的每个 网络中的每个路由器 每个路由器 中仍然保留(S, G)! 中仍然保留
组播路由协议
• 对于小型网络来说非常有效 • 优势 优势:
PIM-DM - 评价
– 易于配置 总共只有两条命令 易于配置--总共只有两条命令 总共只有两条 – 实现机制简单(泛滥剪枝) 实现机制简单(泛滥剪枝)
(单播 单播) 单播 (单播 单播) 单播
组播路由协议
PIM-SM 发送者注册
RP 组播源
数据流 共享树 源树 接收者
源数据流延源树( 源数据流延源树(SPT) ) 流向RP 流向 开始, 从RP开始,数据流延 开始 共享树( 共享树(RPT)流向接收者 )
组播路由协议
PIM-SM SPT 切换
– 假设没有主机需要接收组播数据,除非它们明确地发出了请求 假设没有主机需要接收组播数据, – 使用“汇聚点”(RP, Rendezvous Point) 使用“汇聚点” – 发送者和接收者在RP处进行汇聚 发送者和接收者在 处进行汇聚
• 发送者的第一跳路由器把发送者注册到 上(报个到,挂个号) 发送者的第一跳路由器把发送者注册到RP上 报个到,挂个号) • 接收者的 (直连网络上的负责人)为接收者加入到共享树 (树根在 接收者的DR(直连网络上的负责人) 树根在 RP)
组播路由协议
PIM-SM SPT 切换
RP 组播源
Traffic Flow Shared Tree Source Tree (S, G)RP-bit Prune
Traffic begins flowing down the new branch of the Source Tree. 接收者 Additional (S, G) State is created along along the Shared Tree to prune off (S, G) traffic.
组播路由协议
距离矢量组播路由协议DVMRP(Distance Vector Multicast Routing Protocol) ( 距离矢量组播路由协议 ) 一个较为古老,具有实验性质的协议,现已经不常使用,鲜有厂家设备支持。
• 密集模式协议
– 基于距离矢量
• 类似于RIP • 最大32跳 32
• 使用逆向路径转发(RPF)机制 使用逆向路径转发( )
– 先向网络泛滥(Flood),然后根据组播组成员关系进行剪枝 先向网络泛滥 网络泛滥 ,然后根据组播组成员关系进行剪枝 (Prune) – 使用 使用Assert机制来剪枝冗余数据流 机制来剪枝冗余数据流
• 适合于 适合于...
– 小规模的网络
• 稀疏模式(Sparse-mode)
– 使用 “拉”(Pull)模型(你要了,才给你) – 组播数据只发送到有需要的地方 – 有显式的加入(Join)过程
组播路由协议
组播路由协议一览
• 目前,主要有4个组播路由协议:
– DVMRPv3 (草案)
– DVMRPv1 (RFC 1075)已经废止。
– MOSPF (RFC 1584) – PIM-DM (Internet草案) – PIM-SM V2 (RFC 2362) – 其他(CBT, OCBT, QOSMIC, SM, 等等)
组播路由协议
PIM-SM SPT 切换
RP 组播源
Traffic Flow Shared Tree Source Tree 接收者
(S, G) Traffic flow is now pruned off of the Shared Tree and is flowing to the Receiver via the Source Tree.
反向路径转发(RPF)
举例: RPF检查 举例 RPF检查
源 151.10.3.21
RPF检查失败 RPF检查失败 报文从错误接口到来! 报文从错误接口到来! 组播报文
反向路径转发(RPF)
看得更仔细点: RPF检查失败 看得更仔细点 RPF检查失败
源151.10.3.21 发出的组播数据报文
RPF检查失败 检查失败! 检查失败
• 如IP/TV—(每个IP/TV客户端都是一个组播源)
• 支持厂家较少,市场鲜有使用
组播路由协议
PIM-DM协议 协议
• 协议无关组播(Protocol Independent Multicast) 协议无关组播(
– 支持所有的单播路由协议 静态路由、RIP、IGRP、IS-IS、 支持所有的单播路由协议: 静态路由、 、 、 、 BGP、OSPF,总之了,单播路由是什么都没关系。 、 ,总之了,单播路由是什么都没关系。
可以配置多个候选bsrcbsr一旦某个bsrdown掉可以切换到另外一个bsr在rp集存储所有的crp通告bsr周期性地向所有路由器发送bsr消息bsr消息包含整个rpset和bsr地址所有路由器都使用相同的rp选择算法选择的rp也是一致的协议组播路由协议ippimrpcandidateinterfacenamegrouplistaclcrp通告周期发送缺省60秒rpannounceinterval组播路由协议向allpimrouters2240013组以组播方式发送激活bsr地址组播路由协议通过全局命令配置ippimbsrcandidateinterfacenamehashmasklengthprioritycbsr优先级缺省优先级相同的话地址高的优先组播路由协议实现rp负载分担不同组映射到不同rp组播路由协议和mbgpmsdp共同结合使用可以完成跨域的组播内容mbgp组播边界网关协议用于在自治域之间交换组播路由信息