组播协议原理与应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第10页 页
组播路由协议
剪枝与嫁接
嫁接报文正好与剪枝报文相反,它是用来通知上游路由器将组 播报文转发给自己.
发送着 224.5.5.5的 的 组播数据 R1 S1接口 接口down掉 接口 掉 发送着 224.5.5.5的 的 组播数据
S1 S2 R2 嫁接消息 R3 所连接的子网内 有接收的需求 无接收的需求
如何能够将224.5.5.5 如何能够将 的组播数据发送到网 络中有需求的地方 发送224.5.5.5的 的 发送 Membership Report
需要接收 224.5.5.5的 的 组播数据
需要一种机制,可以让组播数据在网络中传输有接收需求的地方 需要一种机制 可以让组播数据在网络中传输有接收需求的地方
SPT
SPT是以组播源为根构造的从根到所有接收者路径都最短的分 布树。 优势:最短路径保证转发组播数据的网络时延最小 劣势:路由器必须为每个组播源维护路径信息,开销过大. 在组播设计时,如果选用PIM-DM(SPT),那么组播源的数量、带 宽情况、有组播接收需求的子网分布情况都应该成为设计者 考虑的各种因素.
PIM-SM与PIM-DM不同,采用的是一种共享树的机制。 PIM-SM引入了一个非常重要的概念,RP(Rendezous Point), 汇聚点。 RP的作用:所有的组播源在发送组播数据时,与组播源相连 的第一跳路由器都会把组播数据发送给RP,然后再由RP把组 播数据发送给有接收需求的路由器,依次类推。
第6页 页
组播路由协议
组播路由协议分类
分为域内组播路由协议及域间组播路由协议 域内的组播路由协议又分为密集模式与稀疏模式.域内组播路 由协议主要PIM-DM,PIM-SM,DVMRP等协议. 我们在园区网中经常使用的域内组播路由协议为PIM-DM和 PIM-SM.
第7页 页
组播路由协议
逆向路径转发
第17页 页
组播路由协议
组播路由器的组播转发表项是怎么样的呢? 组播路由器的组播转发表项是怎么样的呢?
单播:目的地址->下一跳 目的地址 下一跳 192.168.0.0/24 1.1.1.1 110.112.119.0/24 2.2.2.2 4.4.0.0/16 3.3.3.3 组播:组地址->下一跳? 在R4上会出现一个组地址有两个下一跳?
第9页 页
组播路由协议
剪枝与嫁接
当组播路由器的某个接口RPF检查失败时,该路由器会从这个 接口发出一个剪接报文,以通知邻居路由器不要再向它发送组 播数据.
发送着 224.5.5.5的 的 组播数据 R1 发送着 224.5.5.5的 的 组播数据
S1 S2 R2 RPF检查失败 检查失败 剪枝消息 R3 所连接的子网内 没有接收的需求
创建(*,G)的转发表 的转发表 创建 将收到(*,G)加入 项,将收到 将收到 加入 报文的接口加到出 口集合中,向 方向 口集合中 向RP方向 发送加入(*,G)报文 发送加入 报文
创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到Membership Report的 收到 的 接口加到出口集合中,向 方 接口加到出口集合中 向RP方 向发出加入(*,G)报文 向发出加入 报文
两个接口都收到了目的 地址为224.5.5.5,源地 地址为 源地 址为192.168.1.1的组 址为 的组 播报文
第8页 页
组播路由协议
PIM
PIM(Protocol Independent Multicasting)独立于单播协议,使用任 意单播路由协议进行RPF检查.与其他的路由协议不同,PIM不 在路由器之间发送和接收路由更新信息。 UDP端口号:103 PIM路由器组地址为:224.0.0.13 PIM协议分为: PIM-DM(协议无关组播-密集模式) PIM-SM(协议无关组播-稀疏模式)
第26页 页
组播路由协议
PIM-SM工作过程 工作过程
剪枝
RP R2 R1 剪枝消息 组播源 组播组G 组播组 R6 组播组G 组播组 剪枝消息 R3 R4 剪枝消息 R5 不想接收G 不想接收 将收到剪枝的接口从(*,G)的转 的转 将收到剪枝的接口从 发表项中的出口集合中删除,发 发表项中的出口集合中删除 发 现(*,G)的转发表项中的出口集 的转发表项中的出口集 合为空,于是向 于是向RP方向发送一 合为空 于是向 方向发送一 个剪枝消息,将自己从共享树上 个剪枝消息 将自己从共享树上 修剪 将收到leave报文的接口从 将收到 报文的接口从(*,G) 报文的接口从 的转发表项中的出口集合中删 发现(*,G)的转发表项中的出 除,发现 发现 的转发表项中的出 口集合为空,于是向 于是向RP方向发 口集合为空 于是向 方向发 送一个剪枝消息,将自己从共享 送一个剪枝消息 将自己从共享 树上修剪 Leave 接收者 将收到剪枝消息的接口从(*,G) 将收到剪枝消息的接口从 中删除,发现 发现(*,G)的转发表项中 中删除 发现 的转发表项中 的出口集合为空.向 的组播源 的出口集合为空 向G的组播源 发送剪枝消息. 发送剪枝消息
锐捷网络技术培训系列课程
组播协议原理与应用
第1页 页
前 言
本PPT主要介绍了组播协议原理和实际应用,适 PPT主要介绍了组播协议原理和实际应用, 主要介绍了组播协议原理和实际应用 用于对组播协议有一定了解的工程师和网络维护人员。 用于对组播协议有一定了解的工程师和网络维护人员。
第2页 页
课程目标
第15页 页
组播路由协议
SPT
PIM-DM采用扩散与剪接的方式来构建组播路由表. PIM-DM形成的组播路由表呈现一种树型结构 我们通常称这种树型结构为SPT(Shortest Path Tree)最短路径树
组播源 R1 组播源
R1
R2
R3
R2
R3
R4 R6 R4 R5 R6
R5
第16页 页
组播路由协议
RP R2 R1
组播源
组播组G 组播组 R6
加入信息 注册报文 保留信息
R3
R4
R5
第24页 页
组播路由协议
PIM-SM工作过程 工作过程
接收者到RP
RP R2 R1
创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到(*,G)加入报文的接口加 收到 加入报文的接口加 到出口集合中,将组播组 将组播组G的 到出口集合中 将组播组 的 数据从出口集合中发送出去
注册报文 注册暂停
R3
R4
R5
第23页 页
组播路由协议
PIM-SM工作过程 工作过程
RP在收到单播注册报文后会做哪些动作呢? 当RP上存在(*,G)的转发表项,RP将解封装单播报文,并将 组播报文从(*,G)的转发表项的出口集合中发送出去。 向R6发送PIM保留信息,以终止R6继续发送单播注册报文。 同时RP还会向源的方向发送一条(S,G)的加入消息,形成与组 播源之间的SPT,按照这个SPT从组播源接收组播数据。
第11页 页
组播路由协议
PIM-DM
PIM-DM用于指导路由器如何将组播数据在网络中传输到有组 播接收需求的地方. PIM-DM使用推(push)模式将组播数据包扩散(flood)到网 络的每个角落。这种推模式是一种使用蛮力将数据包传送到 接收者的方法。如果网络中的每个子网都有接收者,那么这 种方法是高效的。
第21页 页
组播路由协议
PIM-SM工作过程 工作过程
组播源到RP
RP R2 来自百度文库1
组播源
组播组G 组播组 R3 R4 R5
检测到组播报文, 检测到组播报文, 查找组播组G对应 查找组播组 对应 的RP的IP地址 的 地址
根据单播路由表, 根据单播路由表,将注 册报文发给RP 册报文发给
将收到的组播报文封装 在单播报文中, 在单播报文中,目的地 址为RP的 地址 址为 的IP地址
R4 E1
第19页 页
组播路由协议
PIM-SM
PIM-SM用于指导路由器如何将组播数据在网络中传输到有组 播接收需求的地方。 PIM-SM使用一种拉(pull)模式来传送组播数据包。只有包 含活动接收者,并且接收者直接发送数据接收请求的网段才 会收到数据。
第20页 页
组播路由协议
PIM-SM工作过程 工作过程
R1
组播源
R2
R3
R6
R4
R5
第18页 页
组播路由协议
组播转发表项的形式
组播转发表项可以简单地理解为{S,G,入口,出口集合},S代表组 播源地址,G代表组播组地址,入口代表离组播源最近的接口(RPF 检查通过的接口),出口集合代表经过PIM协议计算后没有被修剪掉 的所有接口集合。
S,G,E0,{S1,S2} , , , E0 S1 S,G,S1,{E0} , , , S1 S2 R2 E0 S2 R3 E0 S,G,E0,{E1} , , , E0 R1 S2 S1 S,G,S1,{E0} , , ,
所连接的子网内有接 收的需求
第13页 页
组播路由协议
PIM-DM工作过程 工作过程
嫁接
组播源
R1
R2
R3
s1 s2 R6 所连接的子网内 无接收的需求 有接收的需求 嫁接 R4 R5
第14页 页
组播路由协议
PIM-DM工作过程 工作过程
剪枝
组播源 收到R3的剪枝消息 收到 的剪枝消息, 的剪枝消息 将相应的接口修剪 R1 确认所连接子网内没有 接收需求,但还有 但还有R6需要 接收需求 但还有 需要 从这里接收数据,因此将 从这里接收数据 因此将 不发送剪枝信息给R2 不发送剪枝信息给 R2 R3 剪枝 s1 s2 R6 所连接的子网内 有接收的需求 R4 所连接的子网内 无接收的需求 有接收的需求 R5 所连接的子网内 有接收的需求 无接收的需求 确认所连接子网内没有 接收需求,因此发送剪枝 接收需求 因此发送剪枝 信息给R3,同时将相应端 信息给 同时将相应端 口置为修剪状态 收到R5的剪枝消息 将响 收到 的剪枝消息,将响 的剪枝消息 应接口修剪,并确认其他 应接口修剪 并确认其他 接口都没有接收需求,因 接口都没有接收需求 因 此发送剪枝消息给R1,并 此发送剪枝消息给 并 将相应的接口修剪
查找单播路由表,去往 查找单播路由表 去往 192.168.1.0/24的下一 的下一 跳接口是S1,于是丢弃 跳接口是 于是丢弃 收到的组播报文. 从S2收到的组播报文 收到的组播报文 发送着 224.5.5.5的 的 组播数据 R1 ip:192.168.1.1
S1 S2 R2 R3
重复的组播 数据流
第22页 页
组播路由协议
PIM-SM工作过程 工作过程
RP在收到单播注册报文后会做哪些动作呢? 当RP上没有存在关于(*,G)的转发表项,它将向R6返 回一个注册暂停报文,以通知R6不要再将组播报文封装在 单播报文中发送,并且也不会建立到组播源的SPT
RP R2 R1
组播组G 组播组 组播源 R6
第25页 页
组播路由协议
PIM-SM工作过程 工作过程
完整的PIM-SM过程
存在(*,G)的表项 向组播源 的表项,向组播源 存在 的表项 方向发送注册保留信息,并 方向发送注册保留信息 并 不存在关于 向组播源发送加入消息 (*,G)的表项 的表项 创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到加入报文的接口加到出 口集合中,将组播组 将组播组G的数据 口集合中 将组播组 的数据 从出口集合中发送出去,如果 从出口集合中发送出去 如果 没有组播组G的数据 的数据,需等待 没有组播组 的数据 需等待 组播源的注册. 组播源的注册 接收者 R5
RP R2 R1
组播源
组播组G 组播组 R6
组播组G 注册报文 组播组 保留信息 注册暂停 加入信息
R3
R4
检测到组播报文, 检测到组播报文, 查找组播组G对应 查找组播组 对应 的RP的IP地址 的 地址
根据单播路由表, 根据单播路由表,将注 册报文发给RP 册报文发给
将收到的组播报文封装 在单播报文中, 在单播报文中,目的地 址为RP的 地址 址为 的IP地址
组播源
组播组G 组播组 R3 R4 R5
接收者
创建(*,G)的转发表项 将收 的转发表项,将收 创建 的转发表项 到(*,G)加入报文的接口加 加入报文的接口加 到出口集合中,向 方向 到出口集合中 向RP方向 发送加入(*,G)报文 发送加入 报文
创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到Membership Report的 收到 的 接口加到出口集合中,向 方 接口加到出口集合中 向RP方 向发出加入报文
通过本课程的学习,您可以掌握如下知识点: 通过本课程的学习,您可以掌握如下知识点:
组播路由协议 组播在实际工程中的应用
第3页 页
提 纲
组播路由协议 组播在实际工程中的应用
第4页 页
提纲
组播路由协议 组播在实际工程中的应用
第5页 页
组播路由协议
为什么需要组播路由协议? 为什么需要组播路由协议
从哪里能够得 的 到224.5.5.5的 组播数据 发送着 224.5.5.5的 的 组播数据
第12页 页
组播路由协议
PIM-DM工作过程 工作过程
扩散并剪枝
组播源
从两个接口都收到 了组播报文,在 上 了组播报文 在S2上 检查失败. 做RPF检查失败 检查失败 R2
R1
R3
s1 s2 R6 所连接的子网内 无接收的需求 置为修剪状态 pruned 剪枝 R4 所连接的子网内 有接收的需求 R5