当前位置:文档之家› 组播协议原理与应用

组播协议原理与应用


创建(*,G)的转发表 的转发表 创建 将收到(*,G)加入 项,将收到 将收到 加入 报文的接口加到出 口集合中,向 方向 口集合中 向RP方向 发送加入(*,G)报文 发送加入 报文
创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到Membership Report的 收到 的 接口加到出口集合中,向 方 接口加到出口集合中 向RP方 向发出加入(*,G)报文 向发出加入 报文
第12页 页
组播路由协议
PIM-DM工作过程 工作过程
扩散并剪枝
组播源
从两个接口都收到 了组播报文,在 上 了组播报文 在S2上 检查失败. 做RPF检查失败 检查失败 R2
R1
R3
s1 s2 R6 所连接的子网内 无接收的需求 置为修剪状态 pruned 剪枝 R4 所连接的子网内 有接收的需求 R5
第6页 页
组播路由协议
组播路由协议分类
分为域内组播路由协议及域间组播路由协议 域内的组播路由协议又分为密集模式与稀疏模式.域内组播路 由协议主要PIM-DM,PIM-SM,DVMRP等协议. 我们在园区网中经常使用的域内组播路由协议为PIM-DM和 PIM-SM.
第7页 页
组播路由协议
逆向路径转发
第26页 页
组播路由协议
PIM-SM工作过程 工作过程
剪枝
RP R2 R1 剪枝消息 组播源 组播组G 组播组 R6 组播组G 组播组 剪枝消息 R3 R4 剪枝消息 R5 不想接收G 不想接收 将收到剪枝的接口从(*,G)的转 的转 将收到剪枝的接口从 发表项中的出口集合中删除,发 发表项中的出口集合中删除 发 现(*,G)的转发表项中的出口集 的转发表项中的出口集 合为空,于是向 于是向RP方向发送一 合为空 于是向 方向发送一 个剪枝消息,将自己从共享树上 个剪枝消息 将自己从共享树上 修剪 将收到leave报文的接口从 将收到 报文的接口从(*,G) 报文的接口从 的转发表项中的出口集合中删 发现(*,G)的转发表项中的出 除,发现 发现 的转发表项中的出 口集合为空,于是向 于是向RP方向发 口集合为空 于是向 方向发 送一个剪枝消息,将自己从共享 送一个剪枝消息 将自己从共享 树上修剪 Leave 接收者 将收到剪枝消息的接口从(*,G) 将收到剪枝消息的接口从 中删除,发现 发现(*,G)的转发表项中 中删除 发现 的转发表项中 的出口集合为空.向 的组播源 的出口集合为空 向G的组播源 发送剪枝消息. 发送剪枝消息
RP R2 R1
组播源
组播组G 组播组 R6
组播组G 注册报文 组播组 保留信息 注册暂停 加入信息
R3
R4
检测到组播报文, 检测到组播报文, 查找组播组G对应 查找组播组 对应 的RP的IP地址 的 地址
根据单播路由表, 根据单播路由表,将注 册报文发给RP 册报文发给
将收到的组播报文封装 在单播报文中, 在单播报文中,目的地 址为RP的 地址 址为 的IP地址
两个接口都收到了目的 地址为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(协议无关组播-稀疏模式)
PIM-SM与PIM-DM不同,采用的是一种共享树的机制。 PIM-SM引入了一个非常重要的概念,RP(Rendezous Point), 汇聚点。 RP的作用:所有的组播源在发送组播数据时,与组播源相连 的第一跳路由器都会把组播数据发送给RP,然后再由RP把组 播数据发送给有接收需求的路由器,依次类推。
RP R2 R1
组播源
组播组G 组播组 R6
加入信息 注册报文 保留信息
R3
R4
R5
第24页 页
组播路由协议
PIM-SM工作过程 工作过程
接收者到RP
RP R2 R1
创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到(*,G)加入报文的接口加 收到 加入报文的接口加 到出口集合中,将组播组 将组播组G的 到出口集合中 将组播组 的 数据从出口集合中发送出去
查找单播路由表,去往 查找单播路由表 去往 192.168.1.0/24的下一 的下一 跳接口是S1,于是丢弃 跳接口是 于是丢弃 收到的组播报文. 从S2收到的组播报文 收到的组播报文 发送着 224.5.5.5的 的 组播数据 R1 ip:192.168.1.1
S1 S2 R2 R3
重复的组播 数据流
第21页 页
组播路由协议
PIM-SM工作过程 工作过程
组播源到RP
RP R2 R1
组播源
组播组G 组播组 R3 R4 R5
检测到组播报文, 检测到组播报文, 查找组播组G对应 查找组播组 对应 的RP的IP地址 的 地址
根据单播路由表, 根据单播路由表,将注 册报文发给RP 册报文发给
将收到的组播报文封装 在单播报文中, 在单播报文中,目的地 址为RP的 地址 址为 的IP地址
SPT
SPT是以组播源为根构造的从根到所有接收者路径都最短的分 布树。 优势:最短路径保证转发组播数据的网络时延最小 劣势:路由器必须为每个组播源维护路径信息,开销过大. 在组播设计时,如果选用PIM-DM(SPT),那么组播源的数量、带 宽情况、有组播接收需求的子网分布情况都应该成为设计者 考虑的各种因素.
第9页 页
组播路由协议
剪枝与嫁接
当组播路由器的某个接口RPF检查失败时,该路由器会从这个 接口发出一个剪接报文,以通知邻居路由器不要再向它发送组 播数据.
发送着 224.5.5.5的 的 组播数据 R1 发送着 224.5.5.5的 的 组播数据
S1 S2 R2 RPF检查失败 检查失败 剪枝消息 R3 所连接的子网内 没有接收的需求
第10页 页
组播路由协议
剪枝与嫁接
嫁接报文正好与剪枝报文相反,它是用来通知上游路由器将组 播报文转发给自己.
发送着 224.5.5.5的 的 组播数据 R1 S1接口 接口down掉 接口 掉 发送着 224.5.5.5的 的 组播数据
S1 S2 R2 嫁接消息 R3 所连接的子网内 有接收的需求 无接收的需求
第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上会出现一个组地址有两个下一跳?
注册报文 注册暂停
R3
R4
R5
第23页 页
组播路由协议
PIM-SM工作过程 工作过程
RP在收到单播注册报文后会做哪些动作呢? 当RP上存在(*,G)的转发表项,RP将解封装单播报文,并将 组播报文从(*,G)的转发表项的出口集合中发送出去。 向R6发送PIM保留信息,以终止R6继续发送单播注册报文。 同时RP还会向源的方向发送一条(S,G)的加入消息,形成与组 播源之间的SPT,按照这个SPT从组播源接收组播数据。
R4 E1
第19页 页
组播路由协议
PIM-SM
PIM-SM用于指导路由器如何将组播数据在网络中传输到有组 播接收需求的地方。 PIM-SM使用一种拉(pull)模式来传送组播数据包。只有包 含活动接收者,并且接收者直接发送数据接收请求的网段才 会收到数据。
第20页 页
组播路由协议
PIM-SM工作过程 工作过程
第15页 页
组播路由协议
SPT
PIM-DM采用扩散与剪接的方式来构建组播路由表. PIM-DM形成的组播路由表呈现一种树型结构 我们通常称这种树型结构为SPT(Shortest Path Tree)最短路径树
组播源 R1 组播源
R5 R6
R5
第16页 页
组播路由协议
第25页 页
组播路由协议
PIM-SM工作过程 工作过程
完整的PIM-SM过程
存在(*,G)的表项 向组播源 的表项,向组播源 存在 的表项 方向发送注册保留信息,并 方向发送注册保留信息 并 不存在关于 向组播源发送加入消息 (*,G)的表项 的表项 创建(*,G)的转发表项,并将 的转发表项, 创建 的转发表项 收到加入报文的接口加到出 口集合中,将组播组 将组播组G的数据 口集合中 将组播组 的数据 从出口集合中发送出去,如果 从出口集合中发送出去 如果 没有组播组G的数据 的数据,需等待 没有组播组 的数据 需等待 组播源的注册. 组播源的注册 接收者 R5
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} , , ,
锐捷网络技术培训系列课程
组播协议原理与应用
第1页 页
相关主题