PIM-SM协议初探(三)SPT构建
来源:互联网 发布:韩国类似blued的软件 编辑:程序博客网 时间:2024/04/30 23:41
组播源注册
组播源注册的目的是向RP通知组播源的存在。
图6 组播源注册示意图
如图6所示,组播源向RP注册的过程如下:
(1) 当组播源S向组播组G发送了一个组播报文时,与组播源直连的DR在收到该报文后,就将其封装成注册报文,并通过单播方式发送给相应的RP;
(2) 当RP收到该报文后,一方面解封装注册报文并将封装在其中的组播报文沿着RPT转发给接收者,另一方面向组播源逐跳发送(S,G)加入报文。这样,从RP到组播源所经过的路由器就形成了SPT的分支,这些路由器都在其转发表中生成了(S,G)表项。SPT以组播源为根,以RP为叶子。
(3) 组播源发出的组播数据沿着已建立好的SPT到达RP,然后由RP把组播数据沿着RPT向接收者进行转发。当RP收到沿着SPT转发来的组播数据后,通过单播方式向与组播源直连的DR发送注册停止报文(Register-Stop Message),组播源注册过程结束。
组播源直连的DR 在第一次收到组播报文时,内核检查MFC表中是否存在该组播源的转发信息,若不存在则向PIM-SM 进程发送cache_miss 消息, PIM-SM收到此消息后向内核
注册MFC表项。之后,若内核再次收到该组播源的报文(这时内核的MFC表项已经存在)将向PIM-SM进程发送whole_packet消息, 这时DR单播Register报文给RP。RP回复Register stop消息, 然后RP反向注册(S,G)。
6. RPT向SPT切换
当接收者侧的DR发现从RP发往组播组G的组播数据速率超过了一定的阈值时,将由其发起从RPT向SPT的切换,过程如下:
(1) 首先,接收者侧DR向组播源S逐跳发送(S,G)加入报文,并最终送达组播源侧DR,沿途经过的所有路由器在其转发表中都生成了(S,G)表项,从而建立了SPT分支;
(2) 随后,接收者侧DR向RP逐跳发送包含RP位的剪枝报文,RP收到该报文后会向组播源方向继续发送剪枝报文(假设此时只有这一个接收者),从而最终实现从RPT向SPT的切换。
从RPT切换到SPT后,组播数据将直接从组播源发送到接收者。通过由RPT向SPT的切换,PIM-SM能够以比PIM-DM更经济的方式建立SPT。
- PIM-SM协议初探(三)SPT构建
- PIM-SM协议初探(二)RPT构建
- PIM-SM协议初探(一)路由角色选举
- PIM-DM/SM (2)(协议包的区别)
- PIM-DM/SM (1)
- PIM-SM协议内核触发机制及协议运行机制记录
- PIM-DM/SM
- PIM SM + IGMP Snooping 适用性测试(二) ttl 问题
- PIM SM 报文转发规则
- PIM-DM与SM对比
- RPF机制,PIM-DM工作机制,PIM-SM工作机制
- RPF机制,PIM-DM工作机制,PIM-SM工作机制
- PIM SM + IGMP Snooping 适用性测试
- CISCO学习笔记(五)SPT生成树协议
- 在PIM(IPv4)协议报文默认的CPCAR值
- IP Multicast: PIM-SM Auto-RP and BootStrap
- 组播(IGMP,IGMP SNOOPING,PIM-DM,PIM-SM,MSDP,MBGP)
- 简述 RPF机制,PIM-DM工作机制,PIM-SM工作机制
- MongoDB之DBref(关联插入,查询,删除) 实例深入
- 汇编指令
- 【公交防扒保安全】
- 我对机器的一点思考
- 作为面试官,告诉你们互联网公司需要什么样的人
- PIM-SM协议初探(三)SPT构建
- 【转藏】Makefile学习
- 如何做到每天写代码?
- 【树】二叉树
- 类的初识
- HDU-OJ-2795 Billboard
- Java基本开发环境搭建(适合第一次使用)
- gdb工具的使用
- MySQL for Mac 安装和基本操作