YL_組播_PIM-DM協議原理


PIM-DM協議原理

       1、前言

             組播路由器之間運行組播路由協議,組播路由協議用於建立和維護組播路由,建立一個從數據源端到多個接收端的無環數據傳輸路徑,即構建組播分發樹,並正確、高校地轉發組播數據包。

             PIM(Protocol Independent Multicast)是典型的域內組播路由協議,分為DM(Dense Mode)和SM(Sparse Mode)兩種模型

一、PIM-DM概述與配置

       1、組播路由協議概述

              

             和單播路由一樣,組播路由也分為域內和域間兩大類

                 域內組播路由協議

                     通過發現組播源並構建組播分發樹,將信息傳遞到接收者

                     DVMRP、MOSPF、PIM-DM、PIM-SM、PIM-SSM、CBT

                 域間組播路由協議

                     需要一種機制能發現其他組播域內的組播源:MDSP、PIM-SSM

                     用於RPF檢測的路由信息如何在自治系統間傳遞:M-BGP、BGP

       2、域內的組播路由協議可以分為三類

             密集模式協議(DVMRP和PIM-DM)

             密集模式協議用Push方式,Push原理假設網絡里的每個子網至少有一個組播信息的接收點,因此,信息擴散到網絡中的所有點;然后再利用擴散、剪枝和嫁接來維護組播分發樹。

   稀疏模式協議(PIM-SM)、CBT

             稀疏模式協議用Pull而不是Push的方式,即組播信息被拉入網絡中的接收站點。這種方式假定組播數據不被需要,除非有加入申請,否則組播信息不會被傳送到接收站點。

鏈路狀態協議(MOSPF)--使用密集模式

       3、PIM概述

             PIM(Protocol Independent Multicast)稱為協議無關組播,表示組播依靠的單播路由可以由靜態、RIP、OSPF、IS-IS、BGP等提供,組播路由和單播路由協議無關,只要單播路由協議產生所需路由表項能夠完成RPF檢查即可。

                協議號:103

                PIM路由器組播地址為:224.0.0.13

                PIM協議分為:

                    PIM-DM(協議無關組播-密集模式)

                    PIM-SM(協議無關組播-稀疏模式)

                協議假設:網絡中的每個子網都存在至少一個對組播源感興趣的接收站點,因此組播數據包被擴散到網絡中的所有網段。(Push模式)

                PIM-DM對沒有組播數據轉發的分支進行Prune剪枝操作,只保留包含接收者的分支

                為了使減掉的有組播數據轉發需求的分支能夠重新接收組播數據流,減掉的分支周期性地回復稱轉發狀態。(泛洪修剪時間周期是3分鍾)

                為了減少等待被剪掉的分支恢復成轉發狀態的延遲時間,PIM-DM使用Graft嫁接機制主動恢復組播報文的轉發。

             

       4、PIM-DM中數據包的轉發

             PIM-DM域中數據包的轉發路徑是“有源樹”

             以“組播源”為根、組播組成員為枝葉的一棵樹

             由於有源樹使用的是從組播源到接收者的最短路徑,因此也稱為最短路徑樹SPT(Shortest Path Tree)

                PIM-DM不依賴於特定的單播路由協議,而是使用現存的單播路由進行RPF檢查

                路由器收到組播數據的接口稱為上游接口,轉發組播數據的接口稱為下游接口

              

 

 

        5、PIMv2報文頭格式

              

             版本

                 版本字段標識版本信息,當前為2

             類型

                 0:hello

                 3:加入/剪枝

                 5:assert

                 6:嫁接

                 7嫁接回應

                 9:狀態刷新

       6、PIM-DM基本配置

             Pim                    // 全局開啟PIM

             Multicast routing-enable  // 在路由器全局開機組播路由功能

             Interface Ethernet 0/0/0   // 進入接口模式

             Pim dm                 // 設置接口為PIM的DM模式

二、PIM-DM協議機制

       1、鄰居發現hello報文

             Hello報文的目的地址是224.0.0.13

               

       2、hello報文

             

            Hello(默認30秒)報文類型(Option Type)=1

            Holdtime(默認為105)定時器,這個定時器只是接收方何時終止與發送方的鄰接關系

            組播路由器需要使用hello消息來發現鄰居,並維護鄰居關系

            通過比較hello消息上攜帶的優先級(越高越好)和IP地址(越大越好),各路由器為多路由器網段選舉指定路由器DR

       3、構建STP樹—擴散

          

           當某組播源S開始向組播組G發送數據時,路由器接收到組播報文后,首先根據單播路由進行RPF檢查如果檢查通過則創建一個(S,G)表項,然后數據向網絡上所有下游PIM-DM節點轉發,這個過程稱為擴散(Flooding)

       4、構建SPT樹—剪枝

  

            如果下游節點沒有組播成員,則向上游節點發Prune剪枝消息(224.0.0.13),通知上游節點不用再轉發數據到該分支。上游節點接收到Prune剪枝消息后,就將相應的接口從某組播轉發表項(S,G)對應的輸出接口列表中至於Prune狀態(列表中刪除),剪枝過程繼續指導PIM-DM中僅剩下了必要的分支,這就建立了一個組播源S為根的SPT

       6、SPT樹的形成

              

             網路中的每個路由器仍然會保留(S,G)表項

             注意:擴散—剪枝周期性進行!每3分鍾重復一次!

       7、剪枝的觸發條件

                流量達到非RPF點對點接口

                沒有直連接收者的葉節點路由器

                位於點到點鏈路上的非葉節點路由器從其鄰居收到剪枝信息

                LAN網段上的非葉路由器從其鄰居接收到剪枝信息,而且LAN網段上的其他鄰居沒有剪枝信息的否決(oevrride)

       8、多路訪問網段的修剪延遲

              

             B是葉節點路由器並且沒有接收者,發送修剪信息

             A收到修剪信息后要等待3S才能繼續向上修剪

             C收到了B的修剪信息,立馬發送否決信息

             A接收到join信息后放棄向上修剪。(Prune override)

              

       9、嫁接機制

              

             由誰觸發的:接收者(發送了一個IGMP的report報文)

             由誰發送的:最后一跳路由器(發送group信息:PIM信息)

       10、RPF檢查

                 利用單播路由表(默認),可以是任何方式生成的路由表項;如果組播包到達接口是單播路由只是的通往組播源S的接口,就認為這個組播包是從正確路徑來的。

       11、RPF細則

              RPF檢查也可以使用其他信息源來選擇RPF接口,有MBGP(多播BGP),靜態多播路由表等。當路由是從多個路由源學到時,組播RPF將使用路由協議優先級來進行計算。如果有多條路由匹配並且管理距離相同,那么最長匹配原則。

              

                  步驟一:依據上述規則找到RPF接口(或者說找到RPF的鄰居)

                  步驟二、當多播數據包從接口收到后進行RPF檢查

             Display multicast rpf-info 10.1.123.100(組播源IP)   // 查看關於組播源的RPF信息

             IP rpf-route-static 1.1.1.1 24 2.2.2.2 // 指定組播的單播路由,1.1.1.1:源IP 2.2.2.2:下一跳

       12、Assert機制

             

             觸發規則:一台路由器的OIL列表接口收到一份多播信息,會觸發發送PIM assert信息

             網絡中的各路由器通過發送Assert報文選出一條最優的路徑,獲勝路由器稱為該(S,G)項的上游鄰居,由它負責該(S,G)組播報文的轉發,而其他落選路由器則剪掉對應的接口以禁止轉發信息。

       13、PIM-DM協議機制概括

             鄰居發現、擴散、剪枝、嫁接、Assert機制(只有收到多分相同的報文都會選舉Assert)

三、PIM-DM配置驗證

       Display pim routing-table   // 查看PIM-DM組播路由表

       Display pim neighbor       // 查看PIM鄰居

       Display pim interface verbose // 查看PIM接口配置

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM