組播

組播(multicast)

概括:

單播(Unicast)是在一臺源IP主機(jī)和一臺目的IP主機(jī)之間進(jìn)行。
廣播(Broadcast)是在一臺源IP主機(jī)和網(wǎng)絡(luò)中所有其它的IP主機(jī)之間進(jìn)行
組播(Multicast)是在一臺源IP主機(jī)和多臺(一組)IP主機(jī)之間進(jìn)行,中間的交換機(jī)和路由器根據(jù)接收者的需要,有選擇性地對數(shù)據(jù)進(jìn)行復(fù)制和轉(zhuǎn)發(fā)。

ASM 全稱為 Any-Source Multicast,譯為任意源組播
SSM 全稱為 Source-Specific Multicast,譯為指定源組播。

私有 IP 地址
A 類 1.0.0.1-126.255.255.254
B 類 128.1.0.1-191.255.255.254
C 類 192.0.1.1-223.255.255.254

224.0.0.1 地址(表示同一網(wǎng)段內(nèi)所有主機(jī)和路由器)
224.0.0.2 地址(本地網(wǎng)段內(nèi)的所有組播路由器)
224.0.0.13 地址( PIM 路由器)

image.png

組播ip地址:


image.png

組播MAC地址,第一個(gè)字節(jié)的最后一位為1。
單播MAC地址,第一個(gè)字節(jié)的最后一位為0。
組播IP轉(zhuǎn)換為組播MAC地址時(shí),會(huì)有5個(gè)bit的數(shù)據(jù)丟失,一共32個(gè)ip地址。

image.png

組播基本架構(gòu):
組播源到路由器:組播源生成組播數(shù)據(jù),完成數(shù)據(jù)封裝并發(fā)送給網(wǎng)關(guān)路由器。
路由器到路由器:路由器根據(jù)接收者的分布情況有選擇地對數(shù)據(jù)進(jìn)行復(fù)制和轉(zhuǎn)發(fā)。
路由器到接收端:路由器收到組播數(shù)據(jù)并發(fā)送給相應(yīng)的接收者。

IGMP:(Internet Group Management Protocol,因特網(wǎng)組管理協(xié)議)

運(yùn)行于主機(jī)與組播路由器之間

IGMPv1 :主要基于查詢和響應(yīng)機(jī)制來完成組播組的管理。路由器周期(60s)發(fā)送普遍組查詢報(bào)文(224.0.0.1),主機(jī)聽到后發(fā)送Report,加入組播組,主機(jī)離開組播時(shí)不發(fā)送離開報(bào)文,離開后再收到路由器發(fā)送的查詢消息時(shí)不反饋 report 消息,待維護(hù)組成員關(guān)系的定時(shí)器超時(shí)后(130s),路由器會(huì)自動(dòng)刪除該主機(jī)的成員記錄。
IGMPv1主查詢器選舉:依賴于PIM協(xié)議
1.優(yōu)先級:默認(rèn)為1,越大越優(yōu)先
2.ip地址:越大越優(yōu)先
缺點(diǎn):靜默離開,查詢器依賴于pim DR優(yōu)先級和ip地址

IGMPv2:
1.具有某些報(bào)文抑制機(jī)制,可以減少不必要的 IGMP 重復(fù)報(bào)文,從而節(jié)省網(wǎng)絡(luò)帶寬資源
2.主機(jī)離開組播組時(shí),會(huì)主動(dòng)向路由器發(fā)送離開報(bào)文。
3.主查詢器選舉依靠自身ip地址
主機(jī)離開:主機(jī)發(fā)送離開組信息,路由器收到后發(fā)送特定組查詢報(bào)文(224.1.1.1),檢查主機(jī)是否離開,發(fā)送兩次
IGMPv2主查詢器選舉:只比較ip地址,越小越優(yōu)先

IGMPv3:在IGMPv2的基礎(chǔ)上添加指定源、組的功能,能夠選擇特定的組播源。

image.png
multicast routing-enable      開啟路由器組播功能
int g0/0/0 
pim dm 
int g0/0/1 
pim dm 
igmp enable         在接口開啟igmp協(xié)議,連接主機(jī)的接口
igmp version 1 

display igmp interface     查詢igmp接口信息
display igmp group          查詢igmp組信息

IGMP Snooping:在交換機(jī)上配置實(shí)現(xiàn),解決二層組播泛洪的問題。通過0號端口(CPU)監(jiān)聽路由器發(fā)送的普遍組查詢報(bào)文,建立二層組播轉(zhuǎn)發(fā)表,實(shí)現(xiàn)組播數(shù)據(jù)幀在數(shù)據(jù)鏈路層的轉(zhuǎn)發(fā)和控制。

multicast routing-enable   開啟組播功能
igmp-snooping enable       開啟全局igmp-snooping
vlan 1
igmp-snooping enable     開啟vlan igmp-snooping
display igmp-snooping port-info       查詢二層組播轉(zhuǎn)發(fā)表

PIM

Protocol Independent Multicast 協(xié)議無關(guān)組播。目前常用版本是PIMv2,PIM 報(bào)文封裝在 IP 報(bào)文中
1.協(xié)議號為 103
2.PIMv2 組播地址為224.0.0.13。
3.hello周期30s
4.holdtime 105s

DR選舉:
1.優(yōu)先級,默認(rèn)為1,越大越優(yōu)先
2.ip地址,越大越優(yōu)先

int g0/0/0
pim hello-option dr-priority 10    修改DR優(yōu)先級
pim hello-option holdtime 105      在接口視圖下配置Hello消息超時(shí)時(shí)間值。
pim timer hello 30                 在接口視圖下配置發(fā)送 Hello 消息的時(shí)間間隔。 

兩個(gè)常見的組播路由協(xié)議:
PIM-DM ( Protocol Independent Multicast Dense Mode)
PIM-SM ( Protocol Independent Multicast Sparse Mode)
RPF(Reverse Path Forwarding,逆向路徑轉(zhuǎn)發(fā))。
組播分發(fā)樹是指從組播源到接收者之間形成的一個(gè)單向無環(huán)數(shù)據(jù)傳輸路徑。組播分發(fā)樹有兩類:SPT和RPT。
PIM-DM:采用“推(Push)模式”轉(zhuǎn)發(fā)組播報(bào)文。
關(guān)鍵任務(wù):建立SPT(最短路徑樹)
工作機(jī)制:鄰居發(fā)現(xiàn),擴(kuò)散與剪枝,狀態(tài)刷新(60s),嫁接(graft),斷言(assert)。

display pim neighbor
display pim interface verbose
display pim routing-table

PIM-DM假設(shè)網(wǎng)絡(luò)中的組成員分布非常稠密,每個(gè)網(wǎng)段都可能存在組成員。
缺點(diǎn):在組播成員分布較為稀疏的網(wǎng)絡(luò)中,組播流量的周期性擴(kuò)散會(huì)給網(wǎng)絡(luò)帶來較大負(fù)擔(dān)。

其設(shè)計(jì)思想是:
首先將組播數(shù)據(jù)報(bào)文擴(kuò)散到各個(gè)網(wǎng)段。然后再裁剪掉不存在組成員的網(wǎng)段。
通過周期性的“擴(kuò)散—剪枝”,構(gòu)建并維護(hù)一棵連接組播源和組成員的單向無環(huán)SPT。
PIM-DM的關(guān)鍵工作機(jī)制包括鄰居發(fā)現(xiàn)、擴(kuò)散與剪枝、狀態(tài)刷新、嫁接和斷言。
在PIM-DM網(wǎng)絡(luò)中,路由器周期性發(fā)送Hello消息來發(fā)現(xiàn)、建立并維護(hù)鄰居關(guān)系。

DR充當(dāng)IGMPv1的查詢器。 接口 DR 優(yōu)先級大的路由器將成為該 MA 網(wǎng)絡(luò)的 DR,在優(yōu)先級相同的情況下,接口IP地址大的路由器將成為DR。

Assert競選規(guī)則如下:
1.到組播源的單播路由協(xié)議優(yōu)先級較小者獲勝。
2.如果優(yōu)先級相同,則到組播源的路由協(xié)議開銷較小者獲勝。
3.如果以上都相同,則連接到接受者M(jìn)A網(wǎng)絡(luò)接口IP地址最大者獲勝。

PIM-SM:使用“拉(Pull)模式”轉(zhuǎn)發(fā)組播報(bào)文。

multicast routing-enable      開啟路由器組播功能
int g0/0/0 
pim sm  

pim
static-rp 3.3.3.3        指定RP匯聚點(diǎn)

display pim rp-info     查詢RP的信息

PIM-SM假設(shè)網(wǎng)絡(luò)中的組成員分布非常稀疏,幾乎所有網(wǎng)段均不存在組成員,直到某網(wǎng)段出現(xiàn)組成員時(shí),才構(gòu)建組播路由,向該網(wǎng)段轉(zhuǎn)發(fā)組播數(shù)據(jù)。一般應(yīng)用于組播組成員規(guī)模相對較大、相對稀疏的網(wǎng)絡(luò)。

PIM-SM 的關(guān)鍵機(jī)制:鄰居建立、DR 競選、RP 發(fā)現(xiàn)、RPT 構(gòu)建、組播源注冊、SPT切換、Assert

匯聚點(diǎn)RP(Rendezvous Point)
RP的作用:
1.RP是PIM-SM域中的核心路由器,擔(dān)當(dāng)RPT樹根節(jié)點(diǎn)。
2.共享樹里所有組播流量都要經(jīng)過RP轉(zhuǎn)發(fā)給接收者。

組播接收者側(cè) DR:與組播組成員相連的 DR,負(fù)責(zé)向 RP 發(fā)送(*,G)的 Join加入消息。
組播源側(cè)DR:與組播源相連的DR,負(fù)責(zé)向RP發(fā)送單播的Register消息。

Switchover機(jī)制
從組播源到接收者的路徑不一定是最優(yōu)的,并且 RP 的工作負(fù)擔(dān)非常大。為此,我們可以啟用RPT向SPT進(jìn)行的切換機(jī)制。 通過 RPT 樹到 SPT 樹的切換,PIM-SM 能夠以比 PIM-DM 更精確的方式建立SPT轉(zhuǎn)發(fā)樹。
使用配置命令來禁止切換

pim 
spt-switch-threshold infinity     禁止切換
image.png

PIM-SM 的 RP
作用:負(fù)責(zé)這些組播組的注冊消息的處理、加入消息的處理以及組播數(shù)據(jù)的轉(zhuǎn)發(fā),RP 是 PIM-SM 網(wǎng)絡(luò)的核心,網(wǎng)絡(luò)中的路由器必須知道 RP 的地址。
特點(diǎn):
1.一個(gè)PIM-SM 網(wǎng)絡(luò)中可以存在一個(gè)或多個(gè)RP
2.一個(gè)RP 可以對應(yīng)多個(gè)組播組
3.一個(gè)組播組只能對應(yīng)一個(gè)RP

RP 有兩種形式:靜態(tài)RP 和動(dòng)態(tài) RP。

靜態(tài) RP
靜態(tài) RP 是由人工選定的,PIM 網(wǎng)絡(luò)中的所有 PIM 路由器上都需要逐一進(jìn)行配置。通過配置,每臺路由便知道了靜態(tài) RP 的地址。

pim 
static-rp 11.11.11.11      每臺設(shè)備都要配置

動(dòng)態(tài)RP
選舉BSR:BSR 動(dòng)態(tài)映射組播組與RP的關(guān)系
1.選舉過程:C-BSR組播發(fā)送Bootstrap報(bào)文,比較Bootstrap報(bào)文選舉BSR
2.比較參數(shù):ip地址,越大越優(yōu)先
選舉RP:
1.選舉過程
(1).C-RP向BSR單播發(fā)送Advertisement報(bào)文
(2).BSR將信息匯總為RP-Set,封裝在Bootstrap報(bào)文中,發(fā)布給全網(wǎng)的每一臺PIM-SM路由器
(3).全網(wǎng)PIM-SM路由器根據(jù)Bootstrap報(bào)文包含的信息選舉RP
2.比較參數(shù):
(1)優(yōu)先級(越小越優(yōu)先,默認(rèn)為0);
(2)Hash數(shù)值越大越優(yōu)先,(算法參數(shù):組地址、掩碼長度、C-RP 地址)
(3)ip地址,越大越優(yōu)先

int LoopBack 0 
pim sm 

pim 
c-rp LoopBack 0    環(huán)回端口0參與c-rp選舉
c-rp priority 10         修改c-rp優(yōu)先級
c-bsr LoopBack 0    環(huán)回端口0參與c-bsr選舉
c-bsr priority 10         修改c-bsr優(yōu)先級
display pim rp-info       查詢r(jià)p信息
display pim bsr-info      查詢bsr信息

Anycast:
為了能夠在網(wǎng)絡(luò)中配置多個(gè)RP既能實(shí)現(xiàn)備份功能,又能讓所有RP同時(shí)工作實(shí)現(xiàn)流量負(fù)載功能,Anycast RP是一個(gè)很好的選擇。AnycastRP采用了一種很新穎的思路來實(shí)現(xiàn)多個(gè)RP的負(fù)載與冗余,它通過在組播網(wǎng)絡(luò)中將2個(gè)或者2個(gè)以上的RP配置成相同的RP地址來實(shí)現(xiàn)冗余和備份功能,每個(gè)RP路由器上都創(chuàng)建一個(gè)loopback接口來充當(dāng)RP,并且該接口地址的掩碼必須是/32位的,然后將該地址通過動(dòng)態(tài)路由協(xié)議發(fā)布到網(wǎng)絡(luò)中,因?yàn)樗蠷P的這個(gè)loopback接口地址全部是一樣的,所以能夠?qū)崿F(xiàn)冗余功能,當(dāng)其中某一臺RP出現(xiàn)故障后,流量可以很平滑地被轉(zhuǎn)移到另一臺RP上,這都是因?yàn)樗蠷P的地址是同一個(gè)地址。
1.在pim視圖下,所有RP都配置同一個(gè)RP地址
2.用loopback接口充當(dāng)本地地址,掩碼為32位

pim
anycast-rp 1.1.1.1       rp地址
local-address 11.11.11.11    本地地址
peer 6.6.6.6          實(shí)現(xiàn)負(fù)載分擔(dān)鄰居地址

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

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