文章目錄
PIM協議
- PIM(Protocol Independent Multicast)協議無關組播,PIM直接利用單播路由表的路由的路由信息進行組播報文RPF檢查,創建組播路由表項,轉發組播報文
PIM—DM
PIM-DM基本概述
- DM密集模式
- 采用“推(Push)模式”轉發組播報文
- PIM-DM的關鍵任務:
- 建立SPT(Shortest Path Tree)
- 組播地址:224.0.0.13
- 推(Push)模式:無論是否有主機需要該組播報文,都將轉發
PIM-DM鄰居發現
- 使用Hello機制發現鄰居
- 選舉DR
- 優先級高的成為DR
- IP地址大的成為DR
PIM-DM構建SPT
- 擴散
- RPF檢查
- 剪枝
- 組播源向組播組發送數據報文,組播組內的所有設備都會繼續向下轉發數據報文(擴散)
- 當有路徑不需要該組播的數據,最后一跳路由器會向上發送Prune
- 上游設備收到后,將不會再向這條下游設備轉發該組的數據(剪枝)
- RPF檢查:當設備從多個接口收到同一份組播數據以后,會根據RIB(本地路由表)檢查到達這份數據的源怎么走,從而選擇相應接口的數據報文
剪枝計時器210s,剪枝已知計時器3s
狀態刷新(SR)
- 周期性的刷新剪枝端口狀態(60s)
嫁接(Graft機制)
- 新的組成員加入組播組后,快速得到組播報文
斷言(Assert機制)
- 避免重復組報文
- 當多台設備同時向一個設備發送相同的組播報文時,多台設備都會發送斷言報文
- 通過比較RIB中學習的路由條目,選擇單播路由協議優先級高的
- 各設備到組播源的開銷,開銷小的優先
- 下游接口IP地址最大的優先
沒有被選為轉發數據的設備,180s會重新轉發一次數據
PIM-DM配置
- 運行了IGMP后,直接在接口下使用
pim dm
配置
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]pim dm
dis pim neighbor
查看pim鄰居建立dis multicast routing-table
查看組播路由表
- PIM-DM適用於組播成員分布較為密集的園區網絡
- PIM-DM在組播成員分布較為稀疏的網絡中,組播流量的周期性擴散會給網絡帶來較大負擔
PIM—SM
PIM-SM基本概述
- SM稀疏模式
- 使用“拉(Pull)模式”轉發組播報文
- PIM-SM的關鍵任務:
- 建立RPT(Rendezvous Point Tree,匯聚點樹,也叫共享樹)
- 建立SPT(Shortest Path Tree,最短路徑樹)
- 適用於組播成員分布較為稀疏的網絡環境
匯聚點RP(Rendezvous Point)
- 充當RPT樹的根節點
- 共享樹中的所有組播流量都經過RP轉發給接收者
- 所有PIM路由器都要知道RP的位置
RPT建立
- 主機加入某個組播時,發送IGMP成員關系報告
- 最后一跳路由器向RP發送(*,G)Join
- (,G)Join報文到達RP的過程中,沿途各路由器都會生成響應的(,G)組播轉發條目
RPT實現了組播數據按需轉發的目的,減少了數據泛洪對網絡帶寬的占用
接收者側DR和組播源側DR
- 運行PIM-SM的網絡,都會進行DR的選舉
- 組播接收者側DR:與組播組成員相連的DR,負責向RP發送(*,G)的Join加入消息
- 組播源側DR:與組播源相連的DR,負責向RP發送單播的Register報文
PIM-SM中DR的選舉原則與PIM-DM相同
SPT建立
- 組播源向組播組發送第一個組播報文
- 源端DR將該組播報文封裝成Register報文,並以單播方式發送給響應的RP
- RP接收到Register報文后,從Register報文中提取出組播報文,將該組播報文沿RPT分支發送給接收者
- SPT樹建立后,組播源發出的組播報文沿着SPT轉發至RP
- RP沿SPT收到該組播報文后,向源端DR單播發送Register-Stop報文,停止注冊
模式 | 類型 | 使用場景 |
---|---|---|
PIM-DM | (S,G) | 第一跳路由器到最后一跳路由器的SPT |
PIM-SM | (*,G) | RP到最后一跳路由器的RPT |
(S,G) | 源端DR到RP的SPT | |
(S,G) | Switchover之后,從第一跳路由器到最后一跳路由器的SPT |
PIM-SM轉發樹
- 組播源發出的組播報文沿着SPT到達RP,從RP沿RPT到達接收者
- 從組播源到接收者的路徑不一定最優,且RP的工作負擔大
Switchover機制
- 切樹
- 用戶端DR周期性檢測組播報文的轉發速率,當速率超過閾值(默認為0),則會觸發SPT切換
- 用戶端DR逐跳向源DR發送(S,G)Join報文,並創建(S,G)表項,建立源端DR到用戶端DR的SPT
- SPT建立后,用戶端DR沿RPT逐跳向RP發送剪枝報文,收到剪枝報文的路由器將(*,G)復制成相應的(S,G),並將相應的下游接口置為剪枝狀態。剪枝結束后,RP不再沿RPT轉發組播報文到組成員
- 如果SPT不經過RP,RP會繼續向源端DR逐跳發送剪枝報文,刪除(S,G)表項中相應的下游接口。剪枝結束后,源端DR不再向RP轉發組播報文
以上內容均屬原創,如有不詳或錯誤,敬請指出。
本文鏈接: https://blog.csdn.net/qq_45668124/article/details/106879431
版權聲明: 本博客所有文章除特別聲明外,均采用
CC BY-NC-SA 4.0 許可協議。轉載請注明出處!並附帶本文鏈接!