PIM-SM协议内核触发机制及协议运行机制记录
来源:互联网 发布:微淘号达人和淘宝达人 编辑:程序博客网 时间:2024/05/01 01:31
一、pimreg接口注册
PIM-SM协议为了实现cache-miss、process-whole-packet等消息的生成必须向内核注册一个pim-reg虚拟网卡来处理相应的组播报文。
二、SPT注册过程
1. linux内核协议栈收到组播源S的组播报文后检查MFC表项中是否存在该组播的转发表项,如果没有,内核将生成一条cache-miss消息上送给接收igmp管理报文的应用层程序(例如PIM-SM)。
2.PIM-SM的igmp管理报文socket收到来自内核的cache-miss消息后,解包得到组播报文的内容,并通过一系列的计算,随后下发MFC创建命令到内核,创建组播S的(S,G)路由表项。
3.内核再次收到源S的组播报文时,内核上送process-whole-packet消息给PIM-SM
4.PIM-SM收到process-whole-packet消息后,解包得到组播报文的内容,并单播组播源S的register消息到指定RP,RP收到register报文后向发送者单播register-stop报文, 之后RP会向组播源S直连路由方向发送join消息,这样从组播源到RP这条路径上的所有PIM-SM路由器都会生成(S,G)路由表项,到此SPT树形成。
此后,若组播源S直连DR收到组播S报文后,会将组播报文直接转发给RP。
三、RPT注册过程
1.当某个客户机希望接收组播S的报文时,发送一个igmp report消息给直连DR
2.直连DR收到该igmp-report消息后,在自己的组播路由表中创建(*,G)表项,并向RP方向逐跳发送join报文。
3.收到此join报文的PIM-SM路由均会创建相应的(*,G)表项,直到RP。这样从接收者到RP这条路径上就形成了RPT树。
四、RPT向SPT切换
当接收者侧的DR发现发往组播组G的组播速率超过了一定的阈值时,将由其发起从RPT向SPT切换,过程如下:
1.首先接收者侧的DR向组播源逐跳发送(S,G)加入报文,并最终送达组播源侧DR, 沿途经过的所有PIM-SM路由器在转发表中都生成了(S,G)表项,从而建立起了SPT分支。
2.随后,接收者侧DR向RP逐跳发送包含RP位的剪枝报文,RP收到此报文后会向组播源方向继续发送剪枝报文(假设此时只有一个接收者),从而最终实现从RPT向SPT的切换。从RPT向SPT切换后,组播数据将直接从组播源发送到接收者。通过RPT向SPT切换,PIM-SM能够比DM以更加经济的方式建立SPT,并有效减轻RP的负担。
- PIM-SM协议内核触发机制及协议运行机制记录
- PIM-DM协议内核触发机制及协议运行机制记录
- PIM-SM协议初探(一)路由角色选举
- PIM-SM协议初探(二)RPT构建
- PIM-SM协议初探(三)SPT构建
- PIM-DM/SM (2)(协议包的区别)
- RPF机制,PIM-DM工作机制,PIM-SM工作机制
- RPF机制,PIM-DM工作机制,PIM-SM工作机制
- 蓝牙协议分析(11)_BLE安全机制之SM
- 简述 RPF机制,PIM-DM工作机制,PIM-SM工作机制
- PIM独立组播协议
- PIM-DM/SM
- SSL/TLS协议运行机制
- HTTPS协议运行机制说明
- PIM协议翻译及深入理解分析(rfc2362第二章)
- PIM SM 报文转发规则
- PIM-DM与SM对比
- PIM-DM/SM (1)
- java 发送邮件 例子 (带附件的) 使用org.apache.commons.mail
- JDK1.6生成webservice及访问
- VS2010利用宏为函数添加注释
- WRTNode(MT7620) 通过USB启动OpenWRT过程记录(上)
- 如何显示word文档的目录
- PIM-SM协议内核触发机制及协议运行机制记录
- Memcached真的过时了吗?
- 删除map、list集合元素总结
- TeXworks中文乱码问题
- 程序员职业规划发展
- Android 短信备份
- 蜗牛—ORACLE基础之触发器学习(三)
- Windows Server 2012 R2 and SQL Server 2014 AMIs现已可用!!!
- androidpn-client笔记及BUG修改