實(shí)驗拓?fù)?/p>
實(shí)驗需求
網(wǎng)絡(luò)拓?fù)洹P地址規(guī)劃如上圖所示;
R1、R2、R3、R4運(yùn)行OSPF協(xié)議,打通網(wǎng)絡(luò)的單播路由;
R1、R2、R3、R4同時也是組播路由器,運(yùn)行PIM-DM;
接收者加入組播組224.1.1.1,在R4上觀察IGMP信息;
組播源開始向組播組224.1.1.1發(fā)送組播數(shù)據(jù),觀察Assert現(xiàn)象、Prune現(xiàn)象。
實(shí)驗步驟及配置
R1、R2、R3、R4完成接口IP地址的配置,并運(yùn)行OSPF。R1的配置如下:
[R1]interfaceGigabitEthernet0/0/0 [R1-GigabitEthernet0/0/0]ipaddress10.1.12.124 [R1]interfaceGigabitEthernet0/0/1 [R1-GigabitEthernet0/0/1]ipaddress10.1.134.124 [R1]ospf1router-id1.1.1.1 [R1-ospf-1]area0 [R1-ospf-1-area-0.0.0.0]network10.1.12.10.0.0.0 [R1-ospf-1-area-0.0.0.0]network10.1.134.10.0.0.0 [R1-ospf-1-area-0.0.0.0]quit [R1-ospf-1]quit
R2的配置如下:
[R2]interfaceGigabitEthernet0/0/0 [R2-GigabitEthernet0/0/0]ipaddress10.1.12.224 [R2]interfaceGigabitEthernet0/0/1 [R2-GigabitEthernet0/0/1]ipaddress10.1.23.224 [R2]interfaceGigabitEthernet0/0/2 [R2-GigabitEthernet0/0/2]ipaddress10.10.10.25424 [R2]ospf1router-id2.2.2.2 [R2-ospf-1]area0 [R2-ospf-1-area-0.0.0.0]network10.1.12.20.0.0.0 [R2-ospf-1-area-0.0.0.0]network10.1.23.20.0.0.0 [R2-ospf-1-area-0.0.0.0]network10.10.10.2540.0.0.0 [R2-ospf-1-area-0.0.0.0]quit [R2-ospf-1]silent-interfaceGigabitEthernet0/0/2#G0/0/2口未連接OSPF路由器 [R2-ospf-1]quit
R3的配置如下:
[R3]interfaceGigabitEthernet0/0/0 [R3-GigabitEthernet0/0/0]ipaddress10.1.23.324 [R3]interfaceGigabitEthernet0/0/1 [R3-GigabitEthernet0/0/1]ipaddress10.1.134.324 [R3]ospf1router-id3.3.3.3 [R3-ospf-1]area0 [R3-ospf-1-area-0.0.0.0]network10.1.23.30.0.0.0 [R3-ospf-1-area-0.0.0.0]network10.1.134.30.0.0.0 [R3-ospf-1-area-0.0.0.0]quit [R3-ospf-1]quit
R4的配置如下:
[R4]interfaceGigabitEthernet0/0/0 [R4-GigabitEthernet0/0/0]ipaddress10.1.134.424 [R4]interfaceGigabitEthernet0/0/1 [R4-GigabitEthernet0/0/1]ipaddress10.1.1.25424 [R4]ospf1router-id4.4.4.4 [R4-ospf-1]area0 [R4-ospf-1-area-0.0.0.0]network10.1.134.40.0.0.0 [R4-ospf-1-area-0.0.0.0]network10.1.1.2540.0.0.0 [R4-ospf-1-area-0.0.0.0]quit [R4-ospf-1]silent-interfaceGigabitEthernet0/0/1 [R4-ospf-1]quit
R1、R2、R3及R4部署PIM-DM
R1的配置如下:
[R1]multicastrouting-enable#激活組播路由功能 [R1]interfaceGigabitEthernet0/0/0 [R1-GigabitEthernet0/0/0]pimdm#在接口上激活PIM密集模式 [R1]interfaceGigabitEthernet0/0/1 [R1-GigabitEthernet0/0/1]pimdm
R2的配置如下:
[R2]multicastrouting-enable#激活組播路由功能 [R2]interfaceGigabitEthernet0/0/0 [R2-GigabitEthernet0/0/0]pimdm#在接口上激活PIM密集模式 [R2]interfaceGigabitEthernet0/0/1 [R2-GigabitEthernet0/0/1]pimdm [R2]interfaceGigabitEthernet0/0/2 [R2-GigabitEthernet0/0/2]pimdm
R3的配置如下:
[R3]multicastrouting-enable#激活組播路由功能 [R3]interfaceGigabitEthernet0/0/0 [R3-GigabitEthernet0/0/0]pimdm#在接口上激活PIM密集模式 [R3]interfaceGigabitEthernet0/0/1 [R3-GigabitEthernet0/0/1]pimdm
R4的配置如下:
[R4]multicastrouting-enable#激活組播路由功能 [R4]interfaceGigabitEthernet0/0/0 [R4-GigabitEthernet0/0/0]pimdm#在接口上激活PIM密集模式 [R4]interfaceGigabitEthernet0/0/1 [R4-GigabitEthernet0/0/1]igmpenable#在接口上激活I(lǐng)GMP
完成配置后,首先做個查看:
[R2]displaypimneighbor VPN-Instance:publicnet TotalNumberofNeighbors=2 NeighborInterfaceUptimeExpiresDr-PriorityBFD-Session 10.1.12.1GE0/0/0000800371N 10.1.23.3GE0/0/1002000251N
上面輸出的是R2的PIM鄰居,可以看到R2有兩個PIM鄰居,分別是R1及R2。確保所有的PIM路由器兩兩之間都建立起鄰居關(guān)系。
3.完成PC及組播源的配置
本實(shí)驗可以使用eNSP來模擬并且能夠直觀的看到實(shí)驗現(xiàn)象。在使用eNSP進(jìn)行組播實(shí)驗時,組播接收者采用”終端“設(shè)備中的PC來模擬,而組播源則使用”終端“ 設(shè)備中的MCS來模擬:
組播接收者(PC)的IP地址配置如下:
組播源的IP地址配置如下:
現(xiàn)在,各臺設(shè)備都已經(jīng)就緒了,我們主要分析以下幾個內(nèi)容:
4.組成員加入組播組224.1.1.1
現(xiàn)在讓組播接收者加入一個用于測試的組播組224.1.1.1,一般組播接收者就是我們的電腦或者其他便攜設(shè)備,例如視頻的業(yè)務(wù),在電腦上安裝一個視頻客戶端,打開客戶端進(jìn)行簡單的操作就會觸發(fā)電腦發(fā)送IGMP成員關(guān)系報告,宣稱自己所要加入的組播組。
在eNSP中,PC作為組播接收者的配置如下,切換到組播選項卡,源IP填寫PC的IP地址10.1.1.1 ,目的IP地址填寫組播組地址224.1.1.1:
點(diǎn)擊“加入“按鈕,PC即開始發(fā)送IGMP成員關(guān)系報告消息申請加入組播組224.1.1.1。現(xiàn)在在最后一跳路由器R4上查看:
[R4]displayigmpgroup InterfacegroupreportinformationofVPN-Instance:publicnet GigabitEthernet0/0/1(10.1.1.254): Total1IGMPGroupreported GroupAddressLastReporterUptimeExpires 224.1.1.110.1.1.100140057
R4已經(jīng)發(fā)現(xiàn)了組播組224.1.1.1內(nèi)有一個組播成員10.1.1.1,但是由于現(xiàn)在R4還沒有收到組播數(shù)據(jù),所以自然沒有組播數(shù)據(jù)轉(zhuǎn)發(fā)給接收者。
5.組播源開始發(fā)送組播數(shù)據(jù)觀察擴(kuò)散過程、Assert機(jī)制
現(xiàn)在組播源開始向組播組224.1.1.1發(fā)送組播數(shù)據(jù)。在eNSP上模擬組播源的設(shè)備做如下操作(開始測試前,確保電腦上已安裝媒體播放器:VLC media player):
在配置界面中切換到組播源選項卡,在文件路徑處選擇電腦中的一個視頻文件(FLV、MP4等格式),在組播組IP地址中填入224.1.1.1。點(diǎn)擊運(yùn)行按鈕,這個組播源便開始播放視頻,視頻播放的過程中組播源會持續(xù)地向224.1.1.1這個組播地址發(fā)送組播流量,如果網(wǎng)絡(luò)配置正確的話,組播接收者(PC)能夠收到這些組播流量,并且在本地開始同步播放視頻。在eNSP中,當(dāng)組播源開始播放視頻時,可以在組播接收者處點(diǎn)擊“啟動VLC“按鈕:
VLC啟動后,就能開始在接收者處看到正在播放的視頻:
上面的截圖中,左圖是組播源正在播放中的視頻,而右圖則是組播接收者處正在同步播放的視頻,這就是組播業(yè)務(wù)的直觀體現(xiàn)。
現(xiàn)在我們來分析一下數(shù)據(jù)流量的轉(zhuǎn)發(fā)過程。視頻開始播放時,組播流量開始從組播源泛洪出來,組播數(shù)據(jù)到達(dá)第一跳路由器R2,則R2創(chuàng)建組播路由表項(10.10.10.10,224.1.1.1):
displaymulticastrouting-table MulticastroutingtableofVPN-Instance:publicnet Total1entry 00001.(10.10.10.10,224.1.1.1) Uptime:0005 UpstreamInterface:GigabitEthernet0/0/2 Listof2downstreaminterface 1:GigabitEthernet0/0/1 2:GigabitEthernet0/0/0
在該表項中,上行接口朝向源,所以就是GE0/0/2口,而在開始時由于運(yùn)行的是PIM-DM模式,因此R2將GE0/0/1及GE0/0/0接口都添加到下行接口列表中,然后將組播數(shù)據(jù)從GE0/0/0口和 GE0/0/1口都轉(zhuǎn)發(fā)下去。
隨后R1及R3都會收到R2轉(zhuǎn)發(fā)下來的組播數(shù)據(jù),同樣的他們也是創(chuàng)建一個組播路由表項,然后將所有接口(除了RPF接口)都添加到下行接口列表中,并開始向下行接口發(fā)送數(shù)據(jù)數(shù)據(jù)。
在這個過程中,R1及R3都會向自己的GE0/0/1口轉(zhuǎn)發(fā)組播流量,一旦雙方在自己的GE0/0/1口上收到(10.10.10.10,224.1.1.1)組播組的數(shù)據(jù)時,他們就知道在這個LAN中有兩臺組播路由器在轉(zhuǎn)發(fā)數(shù)據(jù),這將觸發(fā)Assert機(jī)制,R1及R3都去發(fā)送Assert消息,在R1或R2的GE0/0/1口上抓包可以看到:
看一下R1發(fā)送的Assert消息:
可以看到報文里包含組播組地址、源地址、優(yōu)先級和度量值。R3發(fā)出的Assert消息類似,由于此時R1及R3都是通過OSPF學(xué)習(xí)到10.10.10.0/24網(wǎng)絡(luò)的,并且metric相等都是2,因此接口IP地址大的路由器,也就是R3會Assert勝出,由它繼續(xù)向10.1.134.0/24網(wǎng)絡(luò)來轉(zhuǎn)發(fā)組播組224.1.1.1的數(shù)據(jù)。
如此一來R1就不需要組播數(shù)據(jù)了,因此它會向上行接口發(fā)送一個Prune剪枝消息,將自己從組播樹上剪除,R1的組播路由表就變成:
[R1]displaymulticastrouting-table MulticastroutingtableofVPN-Instance:publicnet Total1entry 00001.(10.10.10.10,224.1.1.1) Uptime:0019 UpstreamInterface:GigabitEthernet0/0/0
從上面的輸出可以看到,R1的(10.10.10.10,224.1.1.1)組播表項沒有下行接口。
R2的組播表項就變成:
[R2]displaymulticastrouting-table MulticastroutingtableofVPN-Instance:publicnet Total1entry 00001.(10.10.10.10,224.1.1.1) Uptime:0027 UpstreamInterface:GigabitEthernet0/0/2 Listof1downstreaminterface 1:GigabitEthernet0/0/1
(10.10.10.10,224.1.1.1)表項中,下行接口列表只有一個接口了,也就是GE0/0/1口。這是因為它收到了R1發(fā)過來的剪枝消息。
R4在收到組播數(shù)據(jù)后,也是創(chuàng)建一個組播表項:
[R4]displaymulticastrouting-table MulticastroutingtableofVPN-Instance:publicnet Total1entry 00001.(10.10.10.10,224.1.1.1) Uptime:0041 UpstreamInterface:GigabitEthernet0/0/0 Listof1downstreaminterface 1:GigabitEthernet0/0/1
然后將組播數(shù)據(jù)從GE0/0/1口轉(zhuǎn)發(fā)出去,如此一來接收者也就收到組播數(shù)據(jù)了。因此,最終網(wǎng)絡(luò)穩(wěn)定下來之后,組播流量的傳輸路徑是這樣的:
6.組播成員離組、觀察Prune剪枝過程
現(xiàn)在,組播源仍然在不斷的發(fā)送組播流量,我們讓接收者離開組播組224.1.1.1。
由于接收者一旦離開組播組,R4的GE0/0/1口上關(guān)于224.1.1.1的組播組就沒有成員了,因此它將接口GE0/0/1從自己的(10.10.10.10,224.1.1.1)組播表項的下行接口列表中去除,如此一來下行接口列表也就空了,R4知道自己不再需要224.1.1.1的組播數(shù)據(jù),于是它向上行接口GE0/0/0發(fā)一個Prune剪枝消息,請求將自己從組播樹上剪除。
R3收到這個剪枝消息后,將自己的GE0/0/1口從(10.10.10.10,224.1.1.1)組播表項的下行接口列表中去除,然后它發(fā)現(xiàn)接口列表空了,于是也發(fā)現(xiàn)自己不再需要組播數(shù)據(jù)了,因此向上行接口發(fā)送Prune消息,此刻R3的組播路由表如下:
displaymulticastrouting-table MulticastroutingtableofVPN-Instance:publicnet Total1entry 00001.(10.10.10.10,224.1.1.1) Uptime:0020 UpstreamInterface:GigabitEthernet0/0/0 R2收到R3發(fā)出的Prune消息后,其組播表如下: displaymulticastrouting-table MulticastroutingtableofVPN-Instance:publicnet Total1entry 00001.(10.10.10.10,224.1.1.1) Uptime:0004 UpstreamInterface:GigabitEthernet0/0/2
下行接口列表為空,因此直接將源發(fā)送過來的組播數(shù)據(jù)丟棄,不從任何接口轉(zhuǎn)發(fā)。
7.組播成員再次加組,觀察Graft嫁接過程
經(jīng)過前面的步驟,雖然組播源仍然在不斷的向224.1.1.1發(fā)送組播數(shù)據(jù),但是由于網(wǎng)絡(luò)中不存在任何的組成員,因此組播流量被R2直接丟棄。
現(xiàn)在我們再次讓組播接收者加入組播組224.1.1.1。PC發(fā)送IGMP成員關(guān)系報文,R4在收到這個報告之后意識到接口GE0/0/1下出現(xiàn)了組播組224.1.1.1的成員,于是將GE0/0/1接口添加到(10.10.10.10,224.1.1.1)表項的下行接口列表中,并向R3發(fā)送一個嫁接Graft消息:
這個消息是一個單播包,R3收到之后將接口GE0/0/1添加到組播表項的下行接口列表,并向R4回送一個Graft-ACK報文以作確認(rèn)。同時R3向自己的上行PIM鄰居R2發(fā)送一個Graft消息。R2在收到這個消息的時候,也是將收到該消息的接口GE0/0/2添加到(10.10.10.10,224.1.1.1)表項的下行接口列表,隨后開始向該接口轉(zhuǎn)發(fā)224.1.1.1的組播流量。自此,組播樹又重新構(gòu)建完成。
審核編輯:湯梓紅
-
網(wǎng)絡(luò)
+關(guān)注
關(guān)注
14文章
7829瀏覽量
91093 -
路由器
+關(guān)注
關(guān)注
22文章
3841瀏覽量
116961 -
PIM-DM
+關(guān)注
關(guān)注
0文章
2瀏覽量
5473
原文標(biāo)題:組播Multicast進(jìn)階:PIM-DM實(shí)驗配置
文章出處:【微信號:網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號:網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
zigbee協(xié)調(diào)器與路由之間的組播實(shí)驗,求代碼
萬兆交換機(jī)那家強(qiáng)?深圳百聯(lián)豐BL5704萬兆交換機(jī)最棒
無法接收多播過濾器集pic32mz/mrf24wg0ma
為什么LWIP + ENC28J60 + 組播不能發(fā)送組播數(shù)據(jù)?
Harmony UDP組播變得簡單
聚集組播組-樹匹配算法
基于MPLS網(wǎng)絡(luò)的PIM-Prox 的研究
基于MPLS網(wǎng)絡(luò)的PIM-Proxy的研究
Agilent N2X Multicast Routing
PIM-DM基本配置實(shí)例
組播Multicast進(jìn)階:PIM-SM實(shí)驗配置
為何網(wǎng)絡(luò)傳輸方式中的組播這么重要?有什么限制嗎?

評論