組播路由詳解之稀疏模式
本文詳細(xì)的講述了組播路由稀疏模式的實(shí)現(xiàn),主要從RP的發(fā)現(xiàn),共享樹的建立過程以及源注冊(cè),共享樹到源樹的轉(zhuǎn)換等方面進(jìn)行的詳細(xì)的介紹。
一、RP發(fā)現(xiàn)
RP發(fā)現(xiàn)機(jī)制:配置若干路由器成為備選RP,備選RP發(fā)送包含自身參與競選的接口(一般用還回口來做),到224.0.0.39,被配置為RP映射器的路由器會(huì)監(jiān)聽該地址,并對(duì)所有參選的路由器進(jìn)行比較選出RP,通告到地址224.0.0.40,所有開啟組播DENSE-MODE的路由器將監(jiān)聽這個(gè)地址,獲知RP
二、共享樹的建立,共享樹的建立過程
1、主機(jī)發(fā)送IGMP membership report加入組,葉路由器在本地路由表中添加(*,G)項(xiàng),并添加鏈接主機(jī)的接口到出接口列表,
2.向RPF接口發(fā)出PIM JOIN消息(RPF通過單播路由表指向RP的接口)
3.如果是多路訪問網(wǎng)絡(luò),則此工作由DR來完成,通過DR向上建立共享樹。由此消息一直向上傳遞,直到DR。共享樹建立完畢,注意稀疏模式是一種按需的模式,沒有主機(jī)加入的鏈路上不會(huì)產(chǎn)生相關(guān)共享樹。
4.置于轉(zhuǎn)發(fā)狀態(tài)的接口,如果三分鐘沒有收到來自下游鄰居或主機(jī)的加組消息,則該接口計(jì)時(shí)器到0時(shí),將刪除該接口,如果一個(gè)(*,G)條目下的接口為空,那么將啟動(dòng)(*,G)條目的超時(shí)計(jì)時(shí)器,三分鐘后如果仍無鄰居,則刪除(*,G)條目
5.共享樹剪枝,共享樹剪枝是由葉路由器或下游鄰居的剪枝消息引起的,這和密集模式大致一樣
6.為了適應(yīng)路由表可能的更新,節(jié)點(diǎn)每5S做一次RPF校驗(yàn)。
三、源注冊(cè)
1.***跳路由器,在收到源發(fā)出的數(shù)據(jù)流后在本地創(chuàng)建(S,G),其中出接口為空,RPF接口為0.0.0.0
2.***跳路由器用單播把組播數(shù)據(jù)封裝在注冊(cè)消息里發(fā)送給RP
3.RP收到后,知道了源的存活,如果此時(shí)已存在(*,G)共享樹,就把該注冊(cè)消息解封,把原數(shù)據(jù)向共享樹路由下去。并開始向源樹注冊(cè)SPT,其注冊(cè)過程為向著RPF(方向以源為準(zhǔn))方向逐條發(fā)送JOIN消息,一直到***跳路由器,一路創(chuàng)建(S,G)轉(zhuǎn)發(fā)條目,創(chuàng)建成功后***跳路由器開始將原始數(shù)據(jù)順著源樹組播路由到RP。
4.RP發(fā)送保留消息單播給***跳路由器,***跳路由器停止發(fā)包含一份組播數(shù)據(jù)的單播注冊(cè)消息。
5。源樹(S,G)條目的接口啟用超時(shí)計(jì)時(shí)器,三分鐘內(nèi)沒收到鄰居的JOIN消息就刪除轉(zhuǎn)出接口,如果轉(zhuǎn)出接口為空,則(S,G)條目啟用超時(shí)計(jì)時(shí)器,超時(shí)計(jì)時(shí)器三分鐘到期后仍無JOIN消息,則刪除(S,G)條目,凡(S,G)條目皆是如此處理。
四。共享樹到源樹的切換(SWITCHOVER)
1.在葉路由器收到***個(gè)由共享樹的數(shù)據(jù)包時(shí),開啟共享樹到源樹的轉(zhuǎn)換(默認(rèn)情況下),非默認(rèn)情況下將在達(dá)到組播數(shù)據(jù)速率閥值時(shí)啟動(dòng)
2.葉路由器如果RP計(jì)算的RPF接口和源計(jì)算出的RPF接口是同一個(gè)接口,將只朝著源的RPF方向發(fā)出(S,G)JOIN消息,開始構(gòu)建源樹(最短路徑樹)。如果RP計(jì)算的RPF接口和源計(jì)算出的RPF接口不是同一個(gè)接口,那么將同時(shí)發(fā)出帶RP位的(S,G)剪枝消息,該消息由于帶了RP位,將沿著共享樹向上傳遞,上游一直到RP都會(huì)創(chuàng)建一個(gè)(S,G)條目,該條目將從(*,G)復(fù)制出接口,并以RP為RPF接口的計(jì)算準(zhǔn)則,將收到該消息的接口從轉(zhuǎn)出接口列表中剪除,以RP計(jì)算RPF接口,生成一個(gè)(S,G)條目。這樣保證未達(dá)到閥值的路由器仍能從共享樹正確的接收到消息。
3.一個(gè)很重要的原則是,當(dāng)路由表里有(*,G)和(S,G)時(shí),將以(S,G)為準(zhǔn)轉(zhuǎn)發(fā)數(shù)據(jù)。同時(shí)該過程觸發(fā)的是兩條路線,一條順著最短路徑注冊(cè)源樹,另一條從源樹和共享樹的分叉口開始向共享樹進(jìn)行帶RP位的(S,G)剪枝消息,使共享樹的相關(guān)枝葉上都生成了仍將RPF指向RP的(S,G)轉(zhuǎn)發(fā)條目,然而RP上的(S,G)條目是在源注冊(cè)后就生成的,他只剪除相應(yīng)出接口,直至剪完。
4.最終相關(guān)達(dá)到閥值得路由器將從源樹(SPT)接收到組播數(shù)據(jù)。
【編輯推薦】