前言:一直對組播這個概念迷迷糊糊,特別是交換機處理組播的方式,非常想搞懂但是懶癌發作。這幾天終于耐心地看了下有關組播的資料,大致了解了一下同一廣播域內組播的相關知識。組播占了計算機網絡的一大部分,特別是組播路由這一塊,知識點、名詞非常多,要完全掌握并不是一件容易的事情。下面海翎光電的小編跟大家分享一下我的學習經驗,如有錯誤請提出,謝謝。還有,此文全部組播均為IPv4環境下的組播,IPv6的組播跟IPv4完全不同,請注意區分。
簡單來說,就是因為在一些諸如視頻點播的應用時,單播對主機的壓力太大、而廣播又對網絡鏈路的壓力太大。所以……
- 224.0.0.0~239.255.255.255 所有組播地址
- 224.0.0.0~224.0.0.255 有特殊用途的組播地址(不能被路由)
- 224.0.1.0~238.255.255.255 公網組播地址
- 239.0.0.0~239.255.255.255 私網組播地址
組播MAC地址的高24bit位是以01-00-5E開頭,低23bit為組播IP地址的低23bit。 由于IP組播地址的高4bit是1110,標識了組播組,而低28bit中只有23bit被映像到組播MAC地址上,這樣IP組播地址中就會有5bit沒有使用,從而出現了32個IP組播地址映像到同一MAC地址上的結果。 根據接收者對組播源處理方式的不同,組播模型分為以下三類: (1) ASM 模型:Any-Source Multicast,任意信源組播 在ASM 模型中,任意一個發送者都可以作為組播源向某組播組地址發送信息。眾多接收者通過加入由該組播組地址標識的組播組以獲得發往該組播組的組播信息。在ASM 模型中,接收者無法預先知道組播源的位置,但可以在任意時間加入或離開該組播組。 (2) SFM 模型:Source-Filtered Multicast,信源過濾組播 該模型繼承了ASM 模型,從發送者角度來看,兩者的組播組成員關系完全相同。SFM 模型在功能上對ASM 模型進行了擴展。 在SFM 模型中,上層軟件對收到的組播報文的源地址進行檢查,允許或禁止來自某些組播源的報文通過。 因此,接收者只能收到來自部分組播源的組播數據。從接收者的角度來看,只有部分組播源是有效的,組播源被經過了篩選。 (3) SSM 模型:Source-Specific Multicast,指定信源組播 在現實生活中,用戶可能只對某些組播源發送的組播信息感興趣,而不愿接收其它源發送的信息。該模型為用戶提供了一種能夠在客戶端指定組播源的傳輸服務。 SSM 模型與ASM 模型的根本區別在于:SSM 模型中的接收者已經通過其它手段預先知道了組播源的具體位置。SSM 模型使用與ASM/SFM 模型不同的組播地址范圍,直接在接收者與其指定的組播源之間建立專用的組播轉發路徑。

(五)組播ip地址

高24bit=0x01005e,第25bit=0,第23bit=組播ip地址的第23bit

優于ip地址的前4bit是1110,代表主筆標識,而后28bit中只有23bit被映射到mac地址表,這樣ip地址中就有5bit信息丟失,直接的結果就是出現32個ip組播地址映射到同一個mac地址上。

(八) 組播路由協議包括
(九)域間組播協議
對于ssm模型,沒有域內和域間劃分。優于接受者預先只掉組播的具體位置,因此可以借助pim sm的功能直接創建組播傳輸路勁 IGMP是Internet Group Management Protocol的簡稱,又被稱為互聯網組管理協議,是TCP/IP協議族中負責IPv4組播成員管理的協議。IGMP用來在接收者主機和與其直接相鄰的組播路由器之間建立和維護組播組成員關系。IGMP通過在接收者主機和組播路由器之間交互IGMP報文實現組成員管理功能,IGMP報文封裝在IP報文中。 該報文由組播路由器發出??杉毞譃橥ㄓ貌樵儓笪暮吞囟ńM查詢報文。組播路由器定時發出通用查詢報文(下圖的組播路由器每125s發送一次)。通用查詢報文的目標IP為224.0.0.1(所有主機),IGMP報頭內的組播IP為0.0.0.0。用來查詢該網段有哪些組播組的成員。特定組查詢報文的目標IP則是要查詢的組播組地址。
該報文由主機發出。可對組播路由器發出的查詢報文進行回應,同時主機在主動加入特定組的時候,也會主動發送該報文報告。報告報文的目標IP和IGMP報頭內的組播IP均為主機加入的組播組地址(注意!這里雖說是回應路由器的,但是數據包的目標IP不是路由器)。
該報文由主機發出。當主機離開組播組時發送此報文,向組播路由器報告離開了特定的組播組。離開報文的目標IP為224.0.0.2(所有組播路由器),IGMP報頭內的組播IP為特定離開組的IP。
1、一切沒有開啟或不支持IGMP監聽功能的交換機,組播數據包都以廣播的形式在廣播域內泛洪。 2、開啟IGMP監聽功能的交換機的每個VLAN會維護一個組播地址表。當收到組播數據包時,如果表中含有該數據包組播IP的條目,則按照表中的組播IP向對應的端口進行轉發,否則以廣播的形式在廣播域內泛洪。
五、交換機組播地址表的學習和維護(IGMP監聽過程) 1、當組播路由器發出IGMP通用查詢報文然后收到主機回應的IGMP報告報文時,交換機會把收到回應的端口和對應的組播地址學習到組播地址表中(其實只要是IGMP報告報文,都會學習,不管有沒有事先查詢)。如下圖所示:
2、當主機發出IGMP離開報文時,組播路由器會發送IGMP特定組查詢報文。如果該端口在一定時間內得不到回應,則刪除條目對應的端口;如果得到回應則不刪除。當開啟端口快速離開功能時,一旦該端口收到離開報文,交換機將立即刪除條目對應的端口。 3、和MAC地址表一樣,自動學習到的條目都有老化時間。若在一定時間內沒有收到對應組播地址某個端口上的IGMP報告報文,條目上相應的端口會自動刪除。當所有端口都被刪除時,條目則自動刪除。 4、組播地址表的學習和維護全靠IGMP監聽(不考慮CGMP)。 5、如果網絡中沒有組播路由器,也就沒有IGMP查詢報文,組播地址表的建立將會變得十分困難(思科2960可以配置定期發送IGMP查詢報文)。 6、除非把交換機配置成IGMP查詢器,否則交換機不會發送任何IGMP報文,只會靜靜地監聽。