PIM-SM(Sparse-mode) --重點
SM兩棵樹:1、SPT (最短路徑樹)2、RPT(共享樹) 最後形成一棵樹SPT
【SPT校驗源:sh ip rpf+源 RPT共享樹,rpf檢查對象是RP:sh ip rpf +rp地址】
PIM-SM ---協議獨立組播-稀疏模式,主要用於組成員分佈相對分散、範圍較廣、大規模的網絡。
顯示加入模型,組播流被轉發到需要的網絡中去,這種方式通過PIM完成
PIM-SM模型實現組播轉發的核心任務是構造並維護兩顆數。(共享樹RPT和源樹SPT)
共享樹選擇PIM域中某一路由器作為公用樹根,為匯聚點RP,葉節點是最後一跳路由器
源樹選擇第一跳路由器作為某個組播組的樹根,葉節點是RP
====================================================
RPT共享樹
共享樹由接收者觸發(igmp report )請求加入組播組,最後一跳設備(DR)完成RPF檢查後向著RP的方向逐跳形成RPT
SPT最短路徑樹
源發送組播數據流,因為沒有組播路由表,所以向RP去單播註冊,RP收到註冊,反向(向著源)發送(S,G),形成組播路由表
1、IGP(完成RPF檢查及回包--單播)
2、使能組播和PIM
3、需要配置RP (show ip pim rp show ip rpf S/RP)
4、接收者(loopback模擬)---意味著環回口是最後一跳設備,需要運行PIM,加入組播組
1、R8模擬PC組播源不需要運行組播協議,R1-R6運行EIGRP
2、使能組播和PIM
R1(config)#ip multicast-routing ----R1到R6都要開啟組播
R6的環回口模擬接收者,所以需要運行PIM
R1-R6建立PIM鄰居,行成組播路由表,轉發組播數據
R1(config)#int e 0/0
R1(config-if)#ip pim sparse-mode
R1(config-if)#int e 0/1
R1(config-if)#ip pim sparse-mode
驗證: show ip pim interface show ip pim nei
R6(config)#int lo 0
R6(config-if)#ip igmp join-group 224.1.1.1 ---加入組播組
R8#ping 224.1.1.1 repeat 10
Type escape sequence to abort.
Sending 10, 100-byte ICMP Echos to 224.1.1.1, timeout is 2 seconds:
..........
如果沒有配置RP則無法形成組播路由表
3、需要配置RP
所有設備都需要知道RP的位置,目的是註冊,另外RPT共享樹形成,也需要知道RP的位置
靜態RP,R1到R6:ip pim rp-address 44.1.1.1(靜態RP獲得方式弱於動態,靜態配置後加override後由於動態)
在組播源R8 ping 組播組回覆正常:
R6#show ip mroute 224.1.1.1
====================================================
DR選舉:DR的作用藉助Hello消息可以為共享網絡(如Ethernet,FR)選舉DR
查看DR為R3:
R2(config)#interface ethernet 0/0
R2(config-if)#ip pim dr-priority 100---更改DR優先級為100,此時R2優先級高成為DR
R1(config-if)#no ip igmp join-group 239.100.100.100
R1(config-if)#ip igmp join-group 239.100.100.100
R2#debug ip pim
接收者多個設備將由DR完成RP樹的加入,DR向RP發送igmp join (組播方式)加入消息
RP發現:
三種方式:1、靜態 2、Auto-rp [cisco] 3、BSR-RP[RFC]
RP到接收者是共享樹RPT(*,G),RP到源是最短路徑樹SPT(S,G) *G父項 S,G子項
(例:客戶S---前臺RP---客房)
PIM-SM最短路徑樹
缺省情況下,連接接收者的路由器(最後一跳路由器)在探測到組播源之後(即接收到第一個數據報文),便立即加入最短路徑樹(源樹),從RPT向SPT切換
R4#show ip mroute 224.1.1.1-查看出接口為空,修剪
R6(config)#ip pim spt-threshold infinity 永遠不切換
R4#clear ip mroute *
R6配置永遠不切換後,R4查看從出接口空修剪狀態變為轉發:
=====================================================
SSM (Source Specific Multicast) 特定源組播
1、最後一跳路由器直接創建到源的(S,G)沒有共享樹
2、針對每個源一個分發樹,不需要RP
SSM兼容Sparse-Mode
R6(config)#ip pim ssm default
interface Loopback0
ip address 66.1.1.1 255.255.255.0
ip pim sparse-mode
ip igmp join-group 232.2.2.2 source 18.1.1.8
ip igmp version 3
===================================================
靜態RP配置:
R1(config)#access-list 1 permit 224.1.1.1
R1(config)#access-list 2 permit 224.1.1.2
R1(config)#ip pim rp-address 33.1.1.1 1
R1(config)#ip pim rp-address 44.1.1.1 2
R5#show ip mroute 224.1.1.1
R5#show ip mroute 224.1.1.2 分別查看:
======================================================
Auto-AP (自動RP,思科私有)
V1:224.0.0.2 V2:224.0.0.13
君主獨裁製
候選RP--候選者,有可能成為RP
MA(mapping agent )---決策者
224.0.1.39和40 BSR是單播方式試下的
靜態RP環回口可以不運行PIM,但是動態的環回口作為RP需要在該接口使能PIM
動態RP配置使用15.4版本沒有復現現象,我們用GNS3中其他版本進行:
候選RP:R2(config)#ip pim send-rp-announce lo0 scope 10
MA:R3(config)#ip pim send-rp-discovery lo0 scope 10
動態RP配置:
候選RP配置:R2(config)#ip pim send-rp-announce lo0 scope 10 ----跳數10
MA配置:R3(config)#ip pim send-rp-discovery Loopback0 scope 10
ip pim autorp listener-----所有組播設備運行(Auto-RP在Sparse-Mode模式,運行這個命令否則只能傳遞一跳的RP信息)
R3#show ip pim rp mapping ----驗證RP
PIM Group-to-RP Mappings
This system is an RP-mapping agent (Loopback0)
Group(s) 224.100.100.100/32
RP 22.1.1.1 (?), v2v1
Info source: 22.1.1.1 (?), elected via Auto-RP
Uptime: 00:32:04, expires: 00:02:55
Auto-rp配置總結:
1、pim sparse-mode
2、ip pim send-rp-announce(候選RP)
3、ip pim send-rp-discovery(MA)
4、ip pim autorp listener (不建議sparse-dense模式)
如果兩個候選RP,地址大的優選成為RP
歡迎關注和轉發,更多精彩內存下期繼續分享!
閱讀更多 專注分享網絡技術 的文章