組播-igmp測(cè)試小結(jié)

本文描述的設(shè)備為我們自研的RTK switch,有igmp-snooping功能和igmp query功能,沒(méi)有igmp proxy功能

本文列出的測(cè)試點(diǎn)并不是組播所有的測(cè)試點(diǎn),僅可以作為相關(guān)測(cè)試概念的參考。

測(cè)試點(diǎn)1:路由端口測(cè)試

組播路由器端口是連接路由器的端口且該路由器會(huì)發(fā)送igmp query報(bào)文或者pim hello消息。交換機(jī)上所有路由器端口都記錄在交換機(jī)的路由器端口列表中。交換機(jī)路由器端口列表中有靜態(tài)路由器端口和動(dòng)態(tài)路由器端口以及forbidden路由器端口(禁止成為路由器端口)

測(cè)試點(diǎn)2:成員端口測(cè)試

組播組成員端口為開(kāi)啟igmp-snooping后形成的組播轉(zhuǎn)發(fā)表中的端口,組播組成員端口表示該組播組可以轉(zhuǎn)發(fā)到的端口。

測(cè)試點(diǎn)3:普遍組查詢報(bào)文的轉(zhuǎn)發(fā)

普遍組query報(bào)文為組播查詢器定期發(fā)送的報(bào)文,該報(bào)文會(huì)轉(zhuǎn)發(fā)到交換機(jī)vlan內(nèi)的所有端口,該報(bào)文的目的地址為224.0.0.1。

測(cè)試點(diǎn)4:join報(bào)文

當(dāng)收到查詢報(bào)文后,客戶端會(huì)發(fā)送join報(bào)文到交換機(jī),如果開(kāi)啟了igmp-snooping功能會(huì)形成組播轉(zhuǎn)發(fā)表,該報(bào)文會(huì)轉(zhuǎn)發(fā)到交換機(jī)的所有路由器端口,而不會(huì)轉(zhuǎn)發(fā)到其他端口,如果其他端口下面也有該組播組的成員,那么當(dāng)他收到了一個(gè)客戶端的報(bào)告報(bào)文后就不再發(fā)送join報(bào)文了,導(dǎo)致組播轉(zhuǎn)發(fā)表不能再學(xué)習(xí)到該端口。

測(cè)試點(diǎn)5:leave報(bào)文

當(dāng)一個(gè)客戶端想要離開(kāi)某組播組,會(huì)發(fā)送離開(kāi)報(bào)文。IGMPv1不支持leave報(bào)文。如果不存在該組播組對(duì)應(yīng)的轉(zhuǎn)發(fā)表項(xiàng),或者該組播組對(duì)應(yīng)轉(zhuǎn)發(fā)表項(xiàng)的出端口列表中不包含該端口,交換機(jī)不會(huì)向任何端口轉(zhuǎn)發(fā)該報(bào)文,而將其直接丟棄;如果存在該組播組對(duì)應(yīng)的轉(zhuǎn)發(fā)表項(xiàng),且該組播組對(duì)應(yīng)轉(zhuǎn)發(fā)表項(xiàng)的出端口列表中包含該端口,交換機(jī)會(huì)將該報(bào)文通過(guò)VLAN 內(nèi)的所有路由器端口轉(zhuǎn)發(fā)出去。同時(shí),由于并不知道該接收端口下是否還有該組播組的其它成員,所以交換機(jī)不會(huì)立刻把該端口從該組播組所對(duì)應(yīng)轉(zhuǎn)發(fā)表項(xiàng)的出端口列表中刪除,而是重置其老化定時(shí)器。

測(cè)試點(diǎn)6:報(bào)告報(bào)文抑制功能

為防止交換機(jī)下所有客戶端向同一個(gè)組的報(bào)告報(bào)文都發(fā)送給路由器,造成網(wǎng)絡(luò)負(fù)載過(guò)大,交換機(jī)可以開(kāi)啟報(bào)告報(bào)文抑制功能。抑制效果見(jiàn)下圖

測(cè)試點(diǎn)7:快速離開(kāi)功能測(cè)試

當(dāng)交換機(jī)開(kāi)啟快速離開(kāi)功能后,當(dāng)一個(gè)端口收到了某組的離開(kāi)報(bào)文,查詢器不會(huì)向該端口發(fā)送特定組查詢報(bào)文,所以該端口會(huì)立即從該組播組成員端口中快速刪除,導(dǎo)致該端口下的其他的客戶端也收不到該組播組的流量。反之如果沒(méi)有開(kāi)啟快速離開(kāi)功能的話,該端口收到了某組的離開(kāi)報(bào)文,會(huì)在該組播組轉(zhuǎn)發(fā)表中保留3s,等待特定組查詢報(bào)文的到來(lái),如果3s中內(nèi)未收到特定組查詢報(bào)文,再將該端口從組播組成員端口中刪除。

測(cè)試點(diǎn)8:特定組查詢報(bào)文測(cè)試

特定組查詢報(bào)文配合測(cè)試點(diǎn)7的快速離開(kāi)功能測(cè)試,注意特定組查詢報(bào)文只會(huì)發(fā)給該組播組的成員端口。

下面結(jié)合兩種拓?fù)鋱D對(duì)上面報(bào)文的轉(zhuǎn)發(fā)進(jìn)行分析

拓?fù)?:rtk switch igmp snooping開(kāi)啟、query關(guān)閉,vlc只有一個(gè)組播組

路由器定期發(fā)送查詢報(bào)文,交換機(jī)端口1收到query報(bào)文后動(dòng)態(tài)加入到交換機(jī)的路由器端口列表中同時(shí)將query報(bào)文轉(zhuǎn)發(fā)到除接收端口外的其他端口,此時(shí)pc a、pc b和pc c都收到了查詢報(bào)文,他們都會(huì)發(fā)送join報(bào)文到交換機(jī),但是pc a和pc b的報(bào)告報(bào)文互相都可以收到,所以端口2每次只會(huì)收到他們中的一個(gè)join報(bào)文,由于交換機(jī)開(kāi)啟了igmp snooping,交換機(jī)收到j(luò)oin報(bào)文后會(huì)形成端口2和端口3的組播轉(zhuǎn)發(fā)表,同時(shí)將join報(bào)文轉(zhuǎn)發(fā)到路由端口1,然后再轉(zhuǎn)發(fā)到路由器,如果開(kāi)啟了報(bào)告報(bào)文抑制的話,那么只會(huì)從交換機(jī)路由器端口轉(zhuǎn)發(fā)同一個(gè)組的一個(gè)join報(bào)文到路由器。如果關(guān)閉的話,pc a、pc b和pc c的join報(bào)文都會(huì)轉(zhuǎn)發(fā)到路由器。

交換機(jī)開(kāi)啟快速離開(kāi)功能,pc a發(fā)送leave報(bào)文到交換機(jī),交換機(jī)端口2收到leave報(bào)文后,發(fā)現(xiàn)端口2在它的端口轉(zhuǎn)發(fā)表中,立馬將其刪除,并轉(zhuǎn)發(fā)leave報(bào)文到所有路由器端口,路由器收到leave報(bào)文后會(huì)發(fā)送特定組查詢報(bào)文到收到leave報(bào)文的端口,交換機(jī)收到路由器發(fā)送的特定組查詢報(bào)文后,轉(zhuǎn)發(fā)到它的成員端口,此時(shí)端口2收不到特定組查詢報(bào)文,端口3收到特定組查詢報(bào)文,所以pc a快速離開(kāi)后,pc a和pc b立馬停止接收組播流,pc c繼續(xù)接收組播流。

交換機(jī)不開(kāi)啟快速離開(kāi)功能,pc a發(fā)送的leave報(bào)文到交換機(jī),交換機(jī)端口2收到leave報(bào)文后,發(fā)現(xiàn)端口2在它的端口轉(zhuǎn)發(fā)表中,將會(huì)重置其定時(shí)器,我們的交換機(jī)將其置為3s,并轉(zhuǎn)發(fā)leave報(bào)文到所有路由器端口,然后再轉(zhuǎn)發(fā)到路由器,路由器收到后會(huì)發(fā)送特定組查詢報(bào)文到交換機(jī)的路由器端口,然后再轉(zhuǎn)發(fā)到交換機(jī)組播組的所有成員端口,所有交換機(jī)會(huì)將特定組查詢報(bào)文轉(zhuǎn)發(fā)到端口2和端口3,pc b和pc c都將會(huì)回復(fù)這個(gè)特定組查詢報(bào)文,所以pc a快速離開(kāi)后,pc b和pc c都會(huì)繼續(xù)接收組播流。

拓?fù)?:rtk switch igmp snooping開(kāi)啟、query開(kāi)啟

如上圖,交換機(jī)定期發(fā)送查詢報(bào)文到所有端口。此時(shí)交換機(jī)上不會(huì)存在路由端口,交換機(jī)web頁(yè)面上的報(bào)告報(bào)文抑制功能在此拓?fù)鋱D下不起作用。pc a、pc b和pc c同時(shí)收到了交換機(jī)發(fā)送的query報(bào)文,由于pc a和pc b處在同一鏈路上,他們的報(bào)告報(bào)文會(huì)自動(dòng)抑制,端口2每次只會(huì)收到一個(gè)join報(bào)文。pc c會(huì)發(fā)送加入報(bào)文到交換機(jī)端口3。交換機(jī)開(kāi)啟了igmp snooping,會(huì)形成組播轉(zhuǎn)發(fā)表。

交換機(jī)開(kāi)啟快速離開(kāi)功能,pc a發(fā)送leave報(bào)文到交換機(jī),交換機(jī)立馬將端口2從組播轉(zhuǎn)發(fā)表中刪除,此時(shí)pc b也不會(huì)收到組播數(shù)據(jù)流了,只能等下一個(gè)igmp genery query的到來(lái)。端口3不會(huì)受到影響,依然存在于組播轉(zhuǎn)發(fā)表中。

交換機(jī)關(guān)閉快速離開(kāi)功能,pc a發(fā)送leave報(bào)文到交換機(jī),交換機(jī)不會(huì)立馬將端口2從組播轉(zhuǎn)發(fā)表中刪除,而是重置其老化定時(shí)器,等待特定組查詢報(bào)文的到來(lái)。pc b和pc c都為特定組查詢報(bào)文的接收端口,他們都會(huì)回應(yīng)該報(bào)文。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 五、因特網(wǎng)的路由選擇協(xié)議 1.有關(guān)路由選擇協(xié)議的幾個(gè)基本概念 Ⅰ、理想的路由算法 路由表中的路由是怎樣得出的呢?核...
    dmmy大印閱讀 2,162評(píng)論 0 4
  • 本篇結(jié)構(gòu): ICMP IGMP 附 反思 接著上一篇TCP/IP--劃分子網(wǎng)和構(gòu)造超網(wǎng),本章接著分享IP協(xié)議的兩個(gè)...
    w1992wishes閱讀 11,259評(píng)論 0 4
  • 個(gè)人認(rèn)為,Goodboy1881先生的TCP /IP 協(xié)議詳解學(xué)習(xí)博客系列博客是一部非常精彩的學(xué)習(xí)筆記,這雖然只是...
    貳零壹柒_fc10閱讀 5,185評(píng)論 0 8
  • 1.這篇文章不是本人原創(chuàng)的,只是個(gè)人為了對(duì)這部分知識(shí)做一個(gè)整理和系統(tǒng)的輸出而編輯成的,在此鄭重地向本文所引用文章的...
    SOMCENT閱讀 13,352評(píng)論 6 174
  • 最近有什么好看的劇呢?盤(pán)點(diǎn)下,不知道看什么的跟我看(*^__^*) 嘻嘻…… 周一 綜藝《認(rèn)識(shí)的哥哥》 來(lái)源:愛(ài)...
    y_journey閱讀 350評(píng)論 0 0

友情鏈接更多精彩內(nèi)容