版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系我們

[科普中國]-組播協(xié)議

科學(xué)百科
原創(chuàng)
科學(xué)百科為用戶提供權(quán)威科普內(nèi)容,打造知識(shí)科普陣地
收藏

概述

組播協(xié)議與現(xiàn)在廣泛使用的單播協(xié)議的不同之處在于,一個(gè)主機(jī)用單播協(xié)議向n個(gè)主機(jī)發(fā)送相同的數(shù)據(jù)時(shí),發(fā)送主機(jī)需要分別向n個(gè)主機(jī)發(fā)送,共發(fā)送n次。一個(gè)主機(jī)用組播協(xié)議向n個(gè)主機(jī)發(fā)送相同的數(shù)據(jù)時(shí),只要發(fā)送1次,其數(shù)據(jù)由網(wǎng)絡(luò)中的路由器和交換機(jī)逐級(jí)進(jìn)行復(fù)制并發(fā)送給各個(gè)接收方,這樣既節(jié)省服務(wù)器資源也節(jié)省網(wǎng)絡(luò)主干的帶寬資源。

與廣播協(xié)議相比,只有組播接收方向路由器發(fā)出請求后,網(wǎng)絡(luò)路由器才復(fù)制一份數(shù)據(jù)給接收方,從而節(jié)省接收方的帶寬。而廣播方式無論接收方是否需要,網(wǎng)絡(luò)設(shè)備都將所有廣播信息向所有設(shè)備發(fā)送,從而大量占據(jù)接收方的接入帶寬。

組播歷史在1980年代初斯坦福大學(xué)的一位博士生叫Steve Deering,在為其導(dǎo)師David Cheriton工作,設(shè)計(jì)一種叫做Vsystem的分布式操作系統(tǒng)。此操作系統(tǒng)允許一臺(tái)計(jì)算機(jī)使用MAC層組播向在本地Ethernet段的一組其他計(jì)算機(jī)傳遞信息。

隨著工作的擴(kuò)展組播必須跨越路由器,所以必須將組播擴(kuò)展到OSI模型的第三層,此歷史重任落到了Steve Deering身上,他總結(jié)了組播路由的通信協(xié)議基礎(chǔ),并最終在1991年12月發(fā)表的博士論文中進(jìn)行了詳細(xì)的闡述。

優(yōu)勢組播協(xié)議的優(yōu)勢在于當(dāng)需要將大量相同的數(shù)據(jù)傳輸?shù)讲煌ㄖ鳈C(jī)時(shí):

1.能節(jié)省發(fā)送數(shù)據(jù)的主機(jī)的系統(tǒng)資源和帶寬;

2.組播是有選擇地復(fù)制給又要求的主機(jī);

3.組播可以穿越公網(wǎng)廣泛傳播,而廣播則只能在局域網(wǎng)或?qū)iT的廣播網(wǎng)內(nèi)部傳播;

4. 組播能節(jié)省網(wǎng)絡(luò)主干的帶寬。

缺點(diǎn)與單播協(xié)議相比,組播沒有補(bǔ)包機(jī)制,因?yàn)榻M播采用的是UTP的傳輸方式,并且不是針對一個(gè)接受者,所以無法有針對的進(jìn)行補(bǔ)包。所以直接組播協(xié)議傳輸?shù)臄?shù)據(jù)是不可靠的。

組成組播協(xié)議主要包括組管理協(xié)議(IGMP)和組播路由協(xié)議(密集模式協(xié)議(如DVMRP,PIM-DM)、稀疏模式協(xié)議(如PIM-SM,CBT) 和鏈路狀態(tài)協(xié)議(MOSPF))。

* 組管理協(xié)議IGMP

主機(jī)使用IGMP通知子網(wǎng)組播路由器,希望加入組播組;路由器使用IGMP查詢本地子網(wǎng)中是否有屬于某個(gè)組播組的主機(jī)。

* 加入組播組

當(dāng)某個(gè)主機(jī)加入某一個(gè)組播組時(shí),它通過“成員資格報(bào)告”消息通知它所在的IP子網(wǎng)的組播路由器,同時(shí)將自己的IP模塊做相應(yīng)的準(zhǔn)備, 以便開始接收來自該組播組傳來的數(shù)據(jù)。如果這臺(tái)主機(jī)是它所在的IP子網(wǎng)中第一臺(tái)加入該組播組的主機(jī), 通過路由信息的交換,組播路由器加入組播分布樹。

* 退出組播組

在IGMP v1中,當(dāng)主機(jī)離開某一個(gè)組播組時(shí),它將自行退出。組播路由器定時(shí)(如120秒) 使用“成員資格查詢” 消息向IP子網(wǎng)中的所有主機(jī)的組地址(224.0.0.1)查詢,如果某一組播組在IP子網(wǎng)中已經(jīng)沒有任何成員, 那么組播路由器在確認(rèn)這一事件后, 將不再在子網(wǎng)中轉(zhuǎn)發(fā)該組播組的數(shù)據(jù)。與此同時(shí),通過路由信息交換, 從特定的組播組分布樹中刪除相應(yīng)的組播路由器。 這種不通知任何人而悄悄離開的方法, 使得組播路由器知道IP子網(wǎng)中已經(jīng)沒有任何成員的事件延時(shí)了一段時(shí)間,所以在IGMP v2.0中,當(dāng)每一個(gè)主機(jī)離開某一個(gè)組播組時(shí), 需要通知子網(wǎng)組播路由器,組播路由器立即向IP子網(wǎng)中的所有組播組詢問,從而減少了系統(tǒng)處理停止組播的延時(shí)。

* 組播路由協(xié)議

要想在一個(gè)實(shí)際網(wǎng)絡(luò)中實(shí)現(xiàn)組播數(shù)據(jù)包的轉(zhuǎn)發(fā),必須在各個(gè)互連設(shè)備上運(yùn)行可互操作的組播路由協(xié)議。 組播路由協(xié)議可分為三類:密集模式協(xié)議(如DVMRP,PIM-DM)、稀疏模式協(xié)議(如PIM-SM,CBT) 和鏈路狀態(tài)協(xié)議(MOSPF),下面分別介紹各個(gè)協(xié)議的工作原理。

* 距離向量組播路由協(xié)議(Distance Vector Multicast Routing Protocol:DVMRP)

DVMRP由單播路由協(xié)議RIP擴(kuò)展而來,兩者都使用距離向量算法得到網(wǎng)絡(luò)的拓?fù)湫畔?,不同之處在于RIP根據(jù)路由表前向轉(zhuǎn)發(fā)數(shù)據(jù), 而DVMRP則是基于RPF。為了使新加入的組播成員能及時(shí)收到組播數(shù)據(jù),DVMPR采用定時(shí)發(fā)送數(shù)據(jù)包給所有的LAN的方法, 然而這種方法導(dǎo)致大量路由控制數(shù)據(jù)包的擴(kuò)散,這部分開銷限制了網(wǎng)絡(luò)規(guī)模的擴(kuò)大。另一方面,DVMRP使用跳數(shù)作為計(jì)量尺度, 其上限為32跳,這對網(wǎng)絡(luò)規(guī)模也是一個(gè)限制。目前提出了分層DVMRP,即對組播網(wǎng)絡(luò)劃分區(qū)域, 在區(qū)域內(nèi)的組播可以按照任何協(xié)議進(jìn)行,而對于跨區(qū)域的組播則由邊界路由器在DVMRP協(xié)議下進(jìn)行,這樣可大大減少路由開銷1。

* 開放式組播最短路徑優(yōu)先協(xié)議(Multicast Open Shortest Path First:MOSPF)