PIM關(guān)鍵技術(shù)介紹_第1頁
PIM關(guān)鍵技術(shù)介紹_第2頁
PIM關(guān)鍵技術(shù)介紹_第3頁
PIM關(guān)鍵技術(shù)介紹_第4頁
PIM關(guān)鍵技術(shù)介紹_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

PIM技術(shù)簡介目錄1PIM簡介 21.1PIM-DM簡介 21.2PIM-DM工作機(jī)制 21.2.1鄰居發(fā)現(xiàn) 21.2.2構(gòu)建SPT 31.2.3嫁接 31.2.4斷言 41.3PIM-SM簡介 41.4PIM-SM工作機(jī)制 51.4.1鄰居發(fā)現(xiàn) 51.4.2DR選舉 51.4.3RP發(fā)現(xiàn) 61.4.4構(gòu)建RPT 81.4.5組播源注冊 81.4.6RPT向SPT切換 91.4.7斷言 91.5SSM模型在PIM中實(shí)現(xiàn) 101.5.1鄰鄰居發(fā)現(xiàn) 101.5.2DR選舉 101.5.3構(gòu)建SPT 102PIM合同報(bào)文格式 122.1PIM報(bào)文通用格式 122.2PIMHello消息格式 132.3PIMRegister消息格式 152.4PIMRegister-Stop消息格式 172.5PIMJoin/Prune消息格式 182.6PIMGraft/Graft-Ack消息格式 212.7PIMBootstrap消息格式 232.8PIMAssert消息格式 262.9PIMC-RPAdvertisement消息格式 273組播有關(guān)概念 303.1IP組播三種傳遞方式 303.2IP組播技術(shù)體系構(gòu)造 301PIM簡介PIM是ProtocolIndependentMulticast(合同無關(guān)組播)簡稱,表達(dá)可以運(yùn)用靜態(tài)路由或者任意單播路由合同(涉及RIP、OSPF、IS-IS、BGP等)所生成單播路由表為IP組播提供路由。組播路由與所采用單播路由合同無關(guān),只要可以通過單播路由合同產(chǎn)生相應(yīng)組播路由表項(xiàng)即可。PIM借助RPF(ReversePathForwarding,逆向途徑轉(zhuǎn)發(fā))機(jī)制實(shí)現(xiàn)對組播報(bào)文轉(zhuǎn)發(fā)。當(dāng)組播報(bào)文到達(dá)本地設(shè)備時(shí),一方面對其進(jìn)行RPF檢查:若RPF檢查通過,則創(chuàng)立相應(yīng)組播路由表項(xiàng),從而進(jìn)行組播報(bào)文轉(zhuǎn)發(fā);若RPF檢查失敗,則丟棄該報(bào)文。依照實(shí)現(xiàn)機(jī)制不同,PIM分為如下兩種模式:PIM-DM(ProtocolIndependentMulticast-DenseMode,合同無關(guān)組播—密集模式)PIM-SM(ProtocolIndependentMulticast-SparseMode,合同無關(guān)組播—稀疏模式)闡明:為了描述以便,本文中把由支持PIM合同組播路由器所構(gòu)成網(wǎng)絡(luò)簡稱為“PIM域”。1.1PIM-DM簡介PIM-DM屬于密集模式組播路由合同,使用“推(Push)模式”傳送組播數(shù)據(jù),普通合用于組播構(gòu)成員相對比較密集小型網(wǎng)絡(luò)。PIM-DM基本原理如下:PIM-DM假設(shè)網(wǎng)絡(luò)中每個(gè)子網(wǎng)都存在至少一種組播構(gòu)成員,因而組播數(shù)據(jù)將被擴(kuò)散(Flooding)到網(wǎng)絡(luò)中所有節(jié)點(diǎn)。然后,PIM-DM對沒有組播數(shù)據(jù)轉(zhuǎn)發(fā)分支進(jìn)行剪枝(Prune),只保存包括接受者分支。這種“擴(kuò)散—剪枝”現(xiàn)象周期性地發(fā)生,被剪枝分支也可以周期性地恢復(fù)成轉(zhuǎn)發(fā)狀態(tài)。當(dāng)被剪枝分支節(jié)點(diǎn)上浮現(xiàn)了組播構(gòu)成員時(shí),為了減少該節(jié)點(diǎn)恢復(fù)成轉(zhuǎn)發(fā)狀態(tài)所需時(shí)間,PIM-DM使用嫁接(Graft)機(jī)制積極恢復(fù)其對組播數(shù)據(jù)轉(zhuǎn)發(fā)。普通說來,密集模式下數(shù)據(jù)包轉(zhuǎn)發(fā)途徑是有源樹(SourceTree,即以組播源為“根”、組播構(gòu)成員為“枝葉”一棵轉(zhuǎn)發(fā)樹)。由于有源樹使用是從組播源到接受者最短途徑,因而也稱為最短途徑樹(ShortestPathTree,SPT)。1.2PIM-DM工作機(jī)制1.2.1鄰居發(fā)現(xiàn)在PIM域中,路由器通過周期性地向所有PIM路由器(224.0.0.13)以組播方式發(fā)送PIMHello報(bào)文(如下簡稱Hello報(bào)文),以發(fā)現(xiàn)PIM鄰居,維護(hù)各路由器之間PIM鄰居關(guān)系,從而構(gòu)建和維護(hù)SPT。闡明:路由器每個(gè)運(yùn)營了PIM合同接口都會周期性地發(fā)送Hello報(bào)文,從而理解與該接口有關(guān)PIM鄰居信息。1.2.2構(gòu)建SPT構(gòu)建SPT過程也就是“擴(kuò)散—剪枝”過程:(1)在PIM-DM域中,組播源S向組播組G發(fā)送組播報(bào)文時(shí),一方面對組播報(bào)文進(jìn)行擴(kuò)散:路由器對該報(bào)文RPF檢查通過后,便創(chuàng)立一種(S,G)表項(xiàng),并將該報(bào)文向網(wǎng)絡(luò)中所有下游節(jié)點(diǎn)轉(zhuǎn)發(fā)。通過擴(kuò)散,PIM-DM域內(nèi)每個(gè)路由器上都會創(chuàng)立(S,G)表項(xiàng)。(2)然后對那些下游沒有接受者節(jié)點(diǎn)進(jìn)行剪枝:由沒有接受者下游節(jié)點(diǎn)向上游節(jié)點(diǎn)發(fā)剪枝報(bào)文(PruneMessage),以告知上游節(jié)點(diǎn)將相應(yīng)接口從其組播轉(zhuǎn)刊登項(xiàng)(S,G)所相應(yīng)出接口列表中刪除,并不再轉(zhuǎn)發(fā)該組播組報(bào)文至該節(jié)點(diǎn)。闡明:1)(S,G)表項(xiàng)涉及組播源地址S、組播組地址G、出接口列表和入接口等。2)路由器上收到組播數(shù)據(jù)接口稱為“上游”,轉(zhuǎn)發(fā)組播數(shù)據(jù)接口稱為“下游”。剪枝過程最先由葉子路由器發(fā)起,如圖1所示,沒有接受者(Receiver)路由器(如與HostA直連路由器)積極發(fā)起剪枝,并始終持續(xù)到PIM-DM域中只剩余必要分支,這些分支共同構(gòu)成了SPT?!皵U(kuò)散—剪枝”過程是周期性發(fā)生。各個(gè)被剪枝節(jié)點(diǎn)提供超時(shí)機(jī)制,當(dāng)剪枝超時(shí)后便重新開始這一過程。闡明:剪枝在PIM-SM中有著相似應(yīng)用。1.2.3嫁接當(dāng)被剪枝節(jié)點(diǎn)上浮現(xiàn)了組播構(gòu)成員時(shí),為了減少該節(jié)點(diǎn)恢復(fù)成轉(zhuǎn)發(fā)狀態(tài)所需時(shí)間,PIM-DM使用嫁接機(jī)制積極恢復(fù)其對組播數(shù)據(jù)轉(zhuǎn)發(fā),過程如下:(1)需要恢復(fù)接受組播數(shù)據(jù)節(jié)點(diǎn)向其上游節(jié)點(diǎn)發(fā)送嫁接報(bào)文(GraftMessage)以申請重新加入到SPT中;(2)當(dāng)上游節(jié)點(diǎn)收到該報(bào)文后恢復(fù)該下游節(jié)點(diǎn)轉(zhuǎn)發(fā)狀態(tài),并向其回應(yīng)一種嫁接應(yīng)答報(bào)文(Graft-AckMessage)以進(jìn)行確認(rèn);(3)如果發(fā)送嫁接報(bào)文下游節(jié)點(diǎn)沒有收到來自其上游節(jié)點(diǎn)嫁接應(yīng)答報(bào)文,將重新發(fā)送嫁接報(bào)文直到被確以為止。1.2.4斷言在一種網(wǎng)段內(nèi)如果存在多臺組播路由器,則相似組播報(bào)文也許會被重復(fù)發(fā)送到該網(wǎng)段。為了避免浮現(xiàn)這種狀況,就需要通過斷言(Assert)機(jī)制來選定唯一組播數(shù)據(jù)轉(zhuǎn)發(fā)者。如圖2所示,當(dāng)RouterA和RouterB從上游節(jié)點(diǎn)收到(S,G)組播報(bào)文后,都會向本地網(wǎng)段轉(zhuǎn)發(fā)該報(bào)文,于是處在下游節(jié)點(diǎn)RouterC就會收到兩份相似組播報(bào)文,RouterA和outerB也會從各自本地接口收到對方轉(zhuǎn)發(fā)來該組播報(bào)文。此時(shí),RouterA和RouterB會通過本地接口向所有PIM路由器(224.0.0.13)以組播方式發(fā)送斷言報(bào)文(AssertMessage),該報(bào)文中攜帶有如下信息:組播源地址S、組播組地址G、到組播源單播路由優(yōu)先級和度量值。通過一定規(guī)則對這些參數(shù)進(jìn)行比較后,RouterA和RouterB中獲勝者將成為(S,G)組播報(bào)文在本網(wǎng)段轉(zhuǎn)發(fā)者,比較規(guī)則如下:(1)到組播源單播路由優(yōu)先級較高者獲勝;(2)如果到組播源單播路由優(yōu)先級相等,那么到組播源度量值較小者獲勝;(3)如果到組播源度量值也相等,則本地接口IP地址較大者獲勝。1.3PIM-SM簡介PIM-DM使用以“擴(kuò)散—剪枝”方式構(gòu)建SPT來傳送組播數(shù)據(jù)。盡管SPT途徑最短,但是其建立過程效率較低,并不適合大中型網(wǎng)絡(luò)。PIM-SM屬于稀疏模式組播路由合同,使用“拉(Pull)模式”傳送組播數(shù)據(jù),普通合用于組播構(gòu)成員分布相對分散、范疇較廣大中型網(wǎng)絡(luò)。PIM-SM基本原理如下:PIM-SM假設(shè)所有主機(jī)都不需要接受組播數(shù)據(jù),只向明確提出需要組播數(shù)據(jù)主機(jī)轉(zhuǎn)發(fā)。PIM-SM實(shí)現(xiàn)組播轉(zhuǎn)發(fā)核心任務(wù)就是構(gòu)造并維護(hù)RPT(RendezvousPointTree,共享樹或匯集樹),RPT選取PIM域中某臺路由器作為公用根節(jié)點(diǎn)RP(RendezvousPoint,匯集點(diǎn)),組播數(shù)據(jù)通過RP沿著RPT轉(zhuǎn)發(fā)給接受者;連接接受者路由器向某組播組相應(yīng)RP發(fā)送加入報(bào)文(JoinMessage),該報(bào)文被逐跳送達(dá)RP,所通過途徑就形成了RPT分支;組播源如果要向某組播組發(fā)送組播數(shù)據(jù),一方面由與組播源側(cè)DR(DesignatedRouter,指定路由器)負(fù)責(zé)向RP進(jìn)行注冊,把注冊報(bào)文(RegisterMessage)通過單播方式發(fā)送給RP,該報(bào)文到達(dá)RP后觸發(fā)建立SPT。之后組播源把組播數(shù)據(jù)沿著SPT發(fā)向RP,當(dāng)組播數(shù)據(jù)到達(dá)RP后,被復(fù)制并沿著RPT發(fā)送給接受者。闡明:復(fù)制僅發(fā)生在分發(fā)樹分支處,這個(gè)過程可以自動重復(fù)直到數(shù)據(jù)包最后到達(dá)接受者。1.4PIM-SM工作機(jī)制1.4.1鄰居發(fā)現(xiàn)PIM-SM使用與PIM-DM類似鄰居發(fā)現(xiàn)機(jī)制,詳細(xì)請參見“鄰居發(fā)現(xiàn)”一節(jié)。1.4.2DR選舉助Hello報(bào)文還可覺得共享網(wǎng)絡(luò)(如Ethernet)選舉DR,DR將作為該共享網(wǎng)絡(luò)中組播數(shù)據(jù)唯一轉(zhuǎn)發(fā)者。無論是與組播源相連網(wǎng)絡(luò),還是與接受者相連網(wǎng)絡(luò),都需要選舉DR。接受者側(cè)DR負(fù)責(zé)向RP發(fā)送加入報(bào)文;組播源側(cè)DR負(fù)責(zé)向RP發(fā)送注冊報(bào)文。闡明:各路由器之間通過比較Hello報(bào)文中所攜帶優(yōu)先級和IP地址,可覺得多路由器網(wǎng)段選舉DR。選舉出DR對于PIM-SM有實(shí)際意義;而對于PIM-DM來說,其自身其實(shí)并不需要DR,但如果PIM-DM域中共享網(wǎng)絡(luò)上運(yùn)營了IGMPv1,則需要選舉出DR來充當(dāng)共享網(wǎng)絡(luò)上IGMPv1查詢器。在充當(dāng)DR設(shè)備上必要使能IGMP,否則連接在該DR上接受者將不能通過該DR加入組播組。如圖3所示,DR選舉過程如下:(1)共享網(wǎng)絡(luò)上各路由器互相之間發(fā)送Hello報(bào)文(攜帶有競選DR優(yōu)先級參數(shù)),擁有最高優(yōu)先級路由器將成為DR;(2)如果優(yōu)先級相似,或者網(wǎng)絡(luò)中至少有一臺路由器不支持在Hello報(bào)文中攜帶競選DR優(yōu)先級參數(shù),則依照各路由器IP地址大小來競選DR,IP地址最大路由器將成為DR。當(dāng)DR浮現(xiàn)故障時(shí),別的路由器在超時(shí)后仍沒有收到來自DRHello報(bào)文,則會觸發(fā)新DR選舉過程。1.4.3RP發(fā)現(xiàn)RP是PIM-SM域中核心設(shè)備。在構(gòu)造簡樸小型網(wǎng)絡(luò)中,組播信息量少,整個(gè)網(wǎng)絡(luò)僅依托一種RP進(jìn)行組播信息轉(zhuǎn)發(fā)即可,此時(shí)可以在PIM-SM域中各路由器上靜態(tài)指定RP位置;但是在更多狀況下,PIM-SM域規(guī)模都很大,通過RP轉(zhuǎn)發(fā)組播信息量巨大。為了緩和RP承擔(dān)并優(yōu)化RPT拓?fù)錁?gòu)造,可以在PIM-SM域中配備各種C-RP(Candidate-RP,候選RP),通過自舉機(jī)制來動態(tài)選舉RP,使不同RP服務(wù)于不同組播組,此時(shí)需要配備BSR(BootStrapRouter,自舉路由器)。BSR是PIM-SM域管理核心,一種PIM-SM域內(nèi)只能有一種BSR,但可以配備各種C-BSR(Candidate-BSR,候選BSR)。這樣,一旦BSR發(fā)生故障,別的C-BSR可以通過自動選舉產(chǎn)生新BSR,從而保證業(yè)務(wù)免受中斷。闡明:一種RP可以同步服務(wù)于各種組播組,但一種組播組只能唯一相應(yīng)一種RP。一臺設(shè)備可以同步充當(dāng)C-RP和C-BSR。如圖4所示,BSR負(fù)責(zé)收集網(wǎng)絡(luò)中由C-RP發(fā)來宣布報(bào)文(AdvertisementMessage),該報(bào)文中攜帶有C-RP地址和優(yōu)先級以及其服務(wù)組范疇,BSR將這些信息匯總為RP-Set(RP集,即組播組與RP映射關(guān)系數(shù)據(jù)庫),封裝在自舉報(bào)文(BootstrapMessage)中并發(fā)布到整個(gè)PIM-SM域。網(wǎng)絡(luò)中各路由器將根據(jù)RP-Set提供信息,使用相似規(guī)則從眾多C-RP中為特定組播組選取其相應(yīng)RP,詳細(xì)規(guī)則如下:(1)一方面比較C-RP優(yōu)先級,優(yōu)先級較高者獲勝。(2)若優(yōu)先級相似,則使用哈希(Hash)函數(shù)計(jì)算哈希值,該值較大者獲勝。(3)若優(yōu)先級和哈希值都相似,則C-RP地址較大者獲勝。哈希函數(shù)表達(dá)式為:Value(G,M,Ci)=(*((*(G&M)+12345)XORCi)+12345)mod231,其中各符號含義如表1所示。1.4.4構(gòu)建RPT如圖5所示,RPT構(gòu)建過程如下:(1)當(dāng)接受者加入一種組播組G時(shí),先通過IGMP報(bào)文告知與其直連DR;(2)DR掌握了組播組G接受者信息后,向該組所相應(yīng)RP方向逐跳發(fā)送加入報(bào)文;(3)從DR到RP所通過路由器就形成了RPT分支,這些路由器都在其轉(zhuǎn)刊登中生成了(*,G)表項(xiàng),這里“*”表達(dá)來自任意組播源。RPT以RP為根,以DR為葉子。當(dāng)發(fā)往組播組G組播數(shù)據(jù)流經(jīng)RP時(shí),數(shù)據(jù)就會沿著已建立好RPT到達(dá)DR,進(jìn)而到達(dá)接受者。當(dāng)某接受者對組播組G信息不再感興趣時(shí),與其直連DR會逆著RPT向該組RP方向逐跳發(fā)送剪枝報(bào)文;上游節(jié)點(diǎn)收到該報(bào)文后在其出接口列表中刪除與下游節(jié)點(diǎn)相連接口,并檢查自己與否擁有該組播組接受者,如果沒有則繼續(xù)向其上游轉(zhuǎn)發(fā)該剪枝報(bào)文。1.4.5組播源注冊組播源注冊目是向RP告知組播源存在。如圖6所示,組播源向RP注冊過程如下:(1)當(dāng)組播源S向組播組G發(fā)送了一種組播報(bào)文時(shí),與組播源直連DR在收到該報(bào)文后,就將其封裝成注冊報(bào)文,并通過單播方式發(fā)送給相應(yīng)RP;(2)當(dāng)RP收到該報(bào)文后,一方面解封裝注冊報(bào)文并將封裝在其中組播報(bào)文沿著RPT轉(zhuǎn)發(fā)給接受者,另一方面向組播源逐跳發(fā)送(S,G)加入報(bào)文。這樣,從RP到組播源所通過路由器就形成了SPT分支,這些路由器都在其轉(zhuǎn)刊登中生成了(S,G)表項(xiàng)。SPT以組播源為根,以RP為葉子。(3)組播源發(fā)出組播數(shù)據(jù)沿著已建立好SPT到達(dá)RP,然后由RP把組播數(shù)據(jù)沿著RPT向接受者進(jìn)行轉(zhuǎn)發(fā)。當(dāng)RP收到沿著SPT轉(zhuǎn)發(fā)來組播數(shù)據(jù)后,通過單播方式向與組播源直連DR發(fā)送注冊停止報(bào)文(Register-StopMessage),組播源注冊過程結(jié)束。1.4.6RPT向SPT切換當(dāng)接受者側(cè)DR發(fā)現(xiàn)從RP發(fā)往組播組G組播數(shù)據(jù)速率超過了一定閾值時(shí),將由其發(fā)起從RPT向SPT切換,過程如下:(1)一方面,接受者側(cè)DR向組播源S逐跳發(fā)送(S,G)加入報(bào)文,并最后送達(dá)組播源側(cè)DR,沿途通過所有路由器在其轉(zhuǎn)刊登中都生成了(S,G)表項(xiàng),從而建立了SPT分支;(2)隨后,接受者側(cè)DR向RP逐跳發(fā)送包括RP位剪枝報(bào)文,RP收到該報(bào)文后會向組播源方向繼續(xù)發(fā)送剪枝報(bào)文(假設(shè)此時(shí)只有這一種接受者),從而最后實(shí)現(xiàn)從RPT向SPT切換。SPT切換,PIM-SM可以以比PIM-DM更經(jīng)濟(jì)方式建立SPT。1.4.7斷言PIM-SM使用與PIM-DM類似斷言機(jī)制,詳細(xì)請參見“斷言”一節(jié)。1.5SSM模型在PIM中實(shí)現(xiàn)SSM(Source-SpecificMulticast,指定信源組播)模型和ASM(Any-SourceMulticast,任意信源組播)模型是兩個(gè)完全對等模型。當(dāng)前,ASM模型涉及PIM-DM和PIM-SM兩種模式,SSM模型可以借助PIM-SM某些技術(shù)來實(shí)現(xiàn)。SSM模型為指定源組播提供理解決方案,通過IGMPv3來維護(hù)主機(jī)與路由器之間關(guān)系。在實(shí)際應(yīng)用中,普通采用PIM-SM模式一某些技術(shù)來實(shí)現(xiàn)SSM模型。由于接受者已經(jīng)通過其他渠道(如廣告征詢等)懂得了組播源詳細(xì)位置,因而在SSM模型中無需RP,無需構(gòu)建RPT,無需組播源注冊過程,也無需通過MSDP(MulticastSourceDiscoveryProtocol,組播源發(fā)現(xiàn)合同)來發(fā)現(xiàn)其他PIM域內(nèi)組播源。與ASM模型相比,SSM模型僅需要IGMPv3和PIM-SM某些子集支持。1.5.1鄰鄰居發(fā)現(xiàn)PIM-SSM使用與PIM-SM完全相似鄰居發(fā)現(xiàn)機(jī)制,詳細(xì)請參見“鄰居發(fā)現(xiàn)”一節(jié)。1.5.2DR選舉PIM-SSM使用與PIM-SM完全相似DR選舉機(jī)制,詳細(xì)請參見“DR選舉”一節(jié)。1.5.3構(gòu)建SPT構(gòu)建為PIM-SM服務(wù)RPT,還是構(gòu)建為PIM-SSM服務(wù)SPT,核心在于接受者準(zhǔn)備加入組播組與否屬于SSM組地址范疇(IANA保存SSM組地址范疇為232.0.0.0/8)。圖7PIM-SSM中構(gòu)建SPT示意圖如圖7所示,HostB和HostC為組播信息接受者(Receiver),由其借助IGMPv3報(bào)告報(bào)文向DR報(bào)告自己對來自組播源S、發(fā)往組播組G信息感興趣。收到該報(bào)告報(bào)文DR先判斷該報(bào)文中組地址與否在SSM組地址范疇內(nèi):如果在SSM組地址范疇內(nèi),則構(gòu)建PIM-SSM,并向組播源S逐跳發(fā)送通道(Channel)訂閱報(bào)文(SubscribeMessage)。沿途所有路由器上都創(chuàng)立(S,G)表項(xiàng),從而在網(wǎng)絡(luò)內(nèi)構(gòu)建了一棵以組播源S為根、以接受者為葉子SPT,該SPT就是PIM-SSM中傳播通道;如果不在SSM組地址范疇內(nèi),則仍舊按照PIM-SM流程進(jìn)行后續(xù)解決,此時(shí)DR需要向RP發(fā)送(*,G)加入報(bào)文,同步需要進(jìn)行組播源注冊。闡明:在PIM-SSM中,借助“通道”概念表達(dá)組播組,借助“訂閱報(bào)文”概念表達(dá)加入報(bào)文。

2PIM合同報(bào)文格式PIM(ProtocolIndependentMulticast)稱為合同無關(guān)組播,作為一種組播路由解決方案,也可支持IPv4和IPv6網(wǎng)絡(luò),在實(shí)踐中得到廣泛應(yīng)用。PIM通過路由器之間交互PIM控制消息實(shí)現(xiàn)組播路由功能。PIM控制消息使用IP報(bào)文封裝。圖1PIM消息封裝格式IP報(bào)文頭合同類型字段值為103,用來標(biāo)記數(shù)據(jù)某些封裝了PIM消息。IP報(bào)文頭目地址字段用來標(biāo)記該P(yáng)IM消息目接受者??梢允菃尾サ刂?,也可以是組播地址。PIM-DM合同與PIM-SM合同,支持不同控制消息。2.1PIM報(bào)文通用格式PIM消息通用頭部格式所有PIM控制消息頭部有相似格式,如下圖2:圖2PIM消息頭部格式字段長度闡明Version4比特PIM版本,值為2。Type4比特消息類型,取值如下:0:Hello(PIM-DM與PIM-SM都合用)1:Register(只合用于PIM-SM)2:Register-Stop(只合用于PIM-SM)3:Join/Prune(PIM-DM與PIM-SM都合用)4:Bootstrap(只合用于PIM-SM)5:Assert(PIM-DM與PIM-SM都合用)6:Graft(只合用于PIM-DM)7:Graft-Ack(只合用于PIM-DM)8:Candidate-RP-Advertisement(只合用于PIM-SM)9:StateRefresh(只合用于PIM-DM)Reserved8比特保存Checksum16比特校驗(yàn)和參照原則原則描述RFC4601ProtocolIndependentMulticast-SparseMode(PIM-SM):ProtocolSpecification(Revised)RFC3973ProtocolIndependentMulticast-SparseMode(PIM-SM):ProtocolSpecification(Revised)RFC4607Source-SpecificMulticastforIP2.2PIMHello消息格式Hello消息PIM路由器之間通過交互Hello消息,發(fā)現(xiàn)PIM鄰居并維護(hù)鄰居關(guān)系。Hello消息同步在PIM-DM與PIM-SM中使用。Hello消息中無法區(qū)別是PIM-DM還是PIM-SM。封裝Hello消息IP報(bào)文源地址為本地接口地址,目地址為224.0.0.13,TTL值為1。使用組播方式發(fā)送。圖1Hello消息格式字段長度闡明Version4比特PIM版本,值為2。Type4比特消息類型,值為0。Reserved8比特保存字段,發(fā)送時(shí)設(shè)立為0,接受時(shí)忽視此值。Checksum16比特校驗(yàn)和。HelloOption[1]...[N]16比特采用Type-Length-Value(TLV)格式,其中:Type:2字節(jié),Option參數(shù)類型。Length:Value字段長度,字節(jié)為單位。Value:Option參數(shù)值。Type值相應(yīng)參數(shù)名:1:Holdtime,表達(dá)保持鄰居為可達(dá)狀態(tài)超時(shí)時(shí)間,若超時(shí)仍沒有收到Hello消息則以為鄰居不可達(dá)。2:該字段由三某些構(gòu)成:LANPruneDelay:在共享網(wǎng)段上傳遞Prune消息延遲時(shí)間。OverrideInterval:在共享網(wǎng)段上執(zhí)行剪枝前否決時(shí)間。T:Join消息抑制能力位。19:DRPriority,表達(dá)各路由器接口競選DR優(yōu)先級,優(yōu)先級越高越容易獲勝。20:GenerationID,Hello消息中攜帶隨機(jī)數(shù),表達(dá)當(dāng)前鄰居狀態(tài)。如果狀態(tài)發(fā)生更新則隨機(jī)數(shù)也會更新。當(dāng)路由器發(fā)現(xiàn)接受到來自上游Hello消息中包括不同GenerationID值,則以為上游鄰居已經(jīng)丟失或上游鄰居狀態(tài)已經(jīng)變化。21:StateRefreshCapable,表達(dá)鄰居狀態(tài)刷新時(shí)間間隔。24:AddressList,PIM接口從地址列表。報(bào)文示例圖2PIMHello消息(IPv4)圖3PIMHello消息(IPv6)參照原則同上2.12.3PIMRegister消息格式Register消息當(dāng)PIM-SM網(wǎng)絡(luò)中浮現(xiàn)活躍組播源時(shí),源端DR向RP發(fā)送Register消息,進(jìn)行源注冊。Register消息只在PIM-SM中使用。封裝Register消息IP報(bào)文源地址為源端DR,目地址為RP。使用單播方式發(fā)送。圖1Register消息格式字段長度闡明Version4比特PIM版本,值為2Type4比特消息類型,值為1Reserved8比特保存位。發(fā)送時(shí)此字段被清零,接受時(shí)不解決此字段。Checksum16比特校驗(yàn)和B1比特邊界位N1比特空注冊位Reserved230比特保存位。發(fā)送時(shí)此字段被清零,接受時(shí)不解決此字段。Multicastdatapacket變長組播數(shù)據(jù)報(bào)文。源端DR將接受到組播數(shù)據(jù)報(bào)文封裝在Register消息中發(fā)往RP。RP解封裝后,學(xué)習(xí)到該組播數(shù)據(jù)報(bào)文(S,G)信息。報(bào)文示例圖2PIMRegister消息參照原則同上2.12.4PIMRegister-Stop消息格式Register-Stop消息在PIM-SM網(wǎng)絡(luò)中,在如下三種狀況下,RP將會向組播源端DR發(fā)送Register-Stop消息。接受者不再通過RP接受發(fā)往某組播組數(shù)據(jù)RP不再為某組播組服務(wù)組播數(shù)據(jù)轉(zhuǎn)發(fā)途徑已經(jīng)由RPT切換到SPT組播源端DR收到Register-Stop消息后,停止使用Register注冊消息封裝組播數(shù)據(jù)報(bào)文,并進(jìn)入注冊抑制狀態(tài)。Register-Stop消息只在PIM-SM中使用。封裝Register-Stop消息IP報(bào)文源地址為RP,目地址為源端DR。使用單播方式發(fā)送。圖1Register-Stop消息格式字段長度闡明Version4比特PIM版本,值為2Type4比特消息類型,值為2Reserved24比特保存位。發(fā)送時(shí)此字段被清零,接受時(shí)不解決此字段。GroupAddress32比特組播組地址GSourceAddress32比特組播源地址S報(bào)文示例圖2PIMRegister-Stop消息參照原則同上2.12.5PIMJoin/Prune消息格式Join/Prune消息一條Join/Prune消息中可以同步包括Join信息和Prune信息。只包括Join信息Join/Prune消息稱為Join消息。只包括Prune信息Join/Prune消息稱為Prune消息。Join/Prune消息同步在PIM-DM和PIM-SM中使用。封裝Join/Prune消息IP報(bào)文源地址為本地接口地址,目地址為224.0.0.13,TTL值為1。使用組播方式發(fā)送。圖1Join/Prune消息格式圖2GroupJ/PRecord字段格式字段長度闡明Version4比特PIM版本,值為2Type4比特消息類型,值為3UpstreamNeighborAddress32比特上游鄰居地址。也就是收到Join/Prune消息路由器上,進(jìn)行Join或Prune操作下游接口地址。NumberofGroup8比特消息中包括組播組數(shù)目。Holdtime16比特接受Join/Prune消息路由器保持相應(yīng)接口加入/剪枝狀態(tài)時(shí)間。GroupAddress32比特組播組地址NumberofJoinedSources16比特針對該組播組,祈求加入組播源總數(shù)。NumberofPrunedSources16比特針對該組播組,祈求剪枝組播源總數(shù)。JoinedSourceAddress32比特祈求加入組播源地址。PrunedSourceAddress32比特祈求剪枝組播源地址。 報(bào)文示例圖3PIMJoin消息圖4PIMPrume消息參照原則同上2.12.6PIMGraft/Graft-Ack消息格式Graft/Graft-Ack消息在PIM-DM網(wǎng)絡(luò)中,路由器上浮現(xiàn)構(gòu)成員時(shí),如果自身不在SPT上,則從相應(yīng)(S,G)表項(xiàng)上游接口發(fā)送Graft消息。上游鄰居及時(shí)恢復(fù)下游接口轉(zhuǎn)發(fā),同步從該下游接口發(fā)出Graft-Ack消息,表達(dá)已經(jīng)接受嫁接祈求。如果上游鄰居不在SPT上,則繼續(xù)向上游發(fā)送Graft消息。封裝Graft-Ack消息IP報(bào)文源地址為下游接口地址,目地址為Graft消息發(fā)出者。使用單播方式發(fā)送。Graft消息格式與Join/Prune消息相似,僅某些字段取值存在差別。Graft-Ack消息與Graft消息格式相似,并復(fù)制了Graft消息內(nèi)容。其中不同是,UpstreamNeighborAddress字段,在Graft-Ack消息中填為Graft消息發(fā)出者地址。圖1Join/Prune消息格式圖2GroupJ/PRecord字段格式字段長度闡明Version4比特PIM版本,值為2。Type4比特消息類型,Graft值為6,Graft-Ack值為7。UpstreamNeighborAddress32比特在Graft消息中填上游鄰居地址。也就是收到嫁接消息路由器上,進(jìn)行嫁接操作下游接口地址。在Graft-Ack消息中填為Graft消息發(fā)出者地址。NumberofGroups8比特消息中包括組播組數(shù)目。Holdtime16比特該字段為0。GroupAddress32比特組播組地址。NumberofJoinedSources16比特針對該組播組,祈求加入組播源總數(shù)。NumberofPrunedSources16比特該字段為0。JoinedSourceAddress32比特待嫁接(S,G)源地址。報(bào)文示例圖3PIMGraft消息參照原則同上2.12.7PIMBootstrap消息格式Bootstrap消息當(dāng)PIM-SM網(wǎng)絡(luò)中使用動態(tài)RP時(shí),配備了C-BSR路由器從所有PIM接口周期性發(fā)送Bootstrap消息,參加BSR競選。競選獲勝者,繼續(xù)發(fā)送Bootstrap消息,向域內(nèi)所有PIM路由器發(fā)布RP-Set信息。Bootstrap消息只在PIM-SM中使用。封裝Bootstrap消息IP報(bào)文源地址為C-BSR地址,目地址為224.0.0.13,使用組播方式發(fā)送。TTL為1,在PIM-SM網(wǎng)絡(luò)中逐跳轉(zhuǎn)發(fā),最后達(dá)到全網(wǎng)泛濫。圖1Bootstrap消息格式圖2Group-RPRecord字段格式字段長度闡明Version4比特PIM版本,值為2Type4比特消息類型,值為4FragmentTag16比特隨機(jī)數(shù),用來區(qū)別Bootstrap消息HashMasklength8比特C-BSRHash掩碼長度BSR-priority8比特C-BSR優(yōu)先級BSR-Address32比特C-BSR地址GroupAddress32比特組播組地址RP-Count8比特但愿為該組服務(wù)C-RP總數(shù)FragRP-Cnt8比特在本段內(nèi)包括C-RP地址個(gè)數(shù)。對于一種給定組來說,如果Bootstrap消息分片,F(xiàn)ragRP-Cnt字段便于將RP-Set分片。RP-address32比特C-RP地址RP-holdtime16比特C-RP發(fā)出advertisement消息老化時(shí)間,表達(dá)C-RP有效時(shí)間。RP-Priority8比特C-RP優(yōu)先級。報(bào)文示例圖3PIMBootstrap消息參照原則同上2.1

2.8PIMAssert消息格式Assert消息在共享網(wǎng)段上,如果PIM路由器從(S,G)或(*,G)表項(xiàng)下游接口收到(S,G)報(bào)文,則表達(dá)該網(wǎng)段存在其她轉(zhuǎn)發(fā)者。路由器從該下游接口發(fā)出Assert消息,參加競選。競選落敗者停止下游接口轉(zhuǎn)發(fā)。Assert消息同步在PIM-DM和PIM-SM中使用。封裝Assert消息IP報(bào)文源地址為本地接口地址,目地址為224.0.0.13,TTL值為1。使用組播方式發(fā)送。圖1Assert消息格式字段長度闡明Version4比特PIM版本,值為2Type4比特消息類型,值為5GroupAddress32比特組播組地址SourcesAddress32比特如果競選(S,G)表項(xiàng)唯一轉(zhuǎn)發(fā)者,則為組播源地址。如果競選(*,G)表項(xiàng)唯一轉(zhuǎn)發(fā)者,則為RP地址。R4比特RPT位。如果競選(S,G)表項(xiàng)唯一轉(zhuǎn)發(fā)者,該位為0;如果競選(*,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論