摘要:通信工程師互聯(lián)網(wǎng)技術(shù)應(yīng)用層組播:在Internet體系結(jié)構(gòu)中,網(wǎng)絡(luò)層為位于不同子網(wǎng)的主機(jī)提供分組轉(zhuǎn)發(fā)功能。和這種策略相適應(yīng),Deering首先提出了IP組播體系結(jié)構(gòu),設(shè)想組播功能在網(wǎng)絡(luò)層實(shí)現(xiàn)。在IP組播體系結(jié)構(gòu)中,網(wǎng)絡(luò)中的路由器采用分布式算法構(gòu)造一棵數(shù)據(jù)轉(zhuǎn)發(fā)樹。
2.6.4 應(yīng)用層組播
組播(multicast)是指把分組發(fā)送給多于一個(gè)的接收者。在Internet體系結(jié)構(gòu)中,網(wǎng)絡(luò)層為位于不同子網(wǎng)的主機(jī)提供分組轉(zhuǎn)發(fā)功能。和這種策略相適應(yīng),Deering首先提出了IP組播體系結(jié)構(gòu),設(shè)想組播功能在網(wǎng)絡(luò)層實(shí)現(xiàn)。在IP組播體系結(jié)構(gòu)中,網(wǎng)絡(luò)中的路由器采用分布式算法構(gòu)造一棵數(shù)據(jù)轉(zhuǎn)發(fā)樹。當(dāng)組播分組沿著轉(zhuǎn)發(fā)樹進(jìn)行轉(zhuǎn)發(fā)時(shí),在樹的分支節(jié)點(diǎn)處.由路由器進(jìn)行分組復(fù)制。IP組播是實(shí)現(xiàn)組播分組轉(zhuǎn)發(fā)的最有效的方式,因?yàn)樗梢允谷W(wǎng)范圍的分組復(fù)制數(shù)量達(dá)到最少。
從Deering的論文提出IP組播模型到現(xiàn)在已經(jīng)過去了十幾年的時(shí)間,IP組播仍然沒有得到廣泛應(yīng)用,在實(shí)際中卻遇到了很多問題.技術(shù)上的原因是IP組播需要每個(gè)路由器維護(hù)每個(gè)組播組的狀態(tài),路由器的路由表也需要為每個(gè)組播組維護(hù)一個(gè)地址項(xiàng),這在現(xiàn)在的因特網(wǎng)上是很難實(shí)現(xiàn)的;而且IP組播中擁塞控制也太復(fù)雜。這些因素使IP組播無法得到廣泛應(yīng)用。而近年對組播的越來越多的需求使人們重新考慮這一問題,新的解決方案也就應(yīng)運(yùn)而生了,這就是應(yīng)用層組播。應(yīng)用層組播是使用覆蓋網(wǎng)絡(luò)進(jìn)行組播的一種組播形式,下面將以O(shè)vercast這種較有代表性的體系結(jié)構(gòu)來介紹使用覆蓋網(wǎng)絡(luò)的應(yīng)用層組播。
Overcast被設(shè)計(jì)用于單源組播,一個(gè)Over cast覆蓋網(wǎng)絡(luò)由一個(gè)源服務(wù)器(為了應(yīng)付可能出現(xiàn)的故陣一般會有備份)、任意數(shù)目分布在因特網(wǎng)上的Overcast中間結(jié)點(diǎn)和標(biāo)準(zhǔn)的HTTP客戶端構(gòu)成。Overcast使用一個(gè)簡單的建樹協(xié)議(tree building protocol)將中間結(jié)點(diǎn)組織成一棵轉(zhuǎn)發(fā)樹,使用一種叫做“上/下行協(xié)議”(Up/Do Wnprotocol)的協(xié)議來有效地維護(hù)Overcast網(wǎng)絡(luò)的全局狀態(tài)。
結(jié)點(diǎn)之間的虛擬鏈接是建立在下層的因特網(wǎng)上的,因此轉(zhuǎn)發(fā)樹的構(gòu)造對于覆蓋網(wǎng)絡(luò)的性能有很大的影響。在Overcast中建立轉(zhuǎn)發(fā)樹的原則是盡撤增大從根結(jié)點(diǎn)(源服務(wù)器)到所有中間結(jié)點(diǎn)的帶寬。當(dāng)一個(gè)新的結(jié)點(diǎn)加人覆蓋網(wǎng)絡(luò)時(shí),建樹協(xié)議便開始工作了。新結(jié)點(diǎn)要連接根結(jié)點(diǎn),根結(jié)點(diǎn)現(xiàn)在就被看做“當(dāng)前結(jié)點(diǎn)”(currentnode),接著這個(gè)新結(jié)點(diǎn)便開始一次次地試探.在不犧牲到根結(jié)點(diǎn)的帶寬的前提下盡量將自己定位到遠(yuǎn)離根結(jié)點(diǎn)的結(jié)點(diǎn)上,成為其孩子結(jié)點(diǎn)。每次試探中新結(jié)點(diǎn)都檢測其到“當(dāng)前結(jié)點(diǎn)”的帶寬和到“當(dāng)前結(jié)點(diǎn)”的每一個(gè)孩子結(jié)點(diǎn)的帶寬,如果到一些孩子結(jié)點(diǎn)的帶寬和到“當(dāng)前結(jié)點(diǎn)”的帶寬一樣高,則其中距離該新結(jié)點(diǎn)網(wǎng)絡(luò)距離最短(跳數(shù)最少)的一個(gè)孩子結(jié)點(diǎn)成為當(dāng)前結(jié)點(diǎn)”,新的一次試探開始。這就是Overcast建樹協(xié)議的基本思想。
為了讓客戶快速方便地加人,Overcast網(wǎng)絡(luò)必須實(shí)時(shí)掌握Overcast結(jié)點(diǎn)的狀態(tài),這就需要用到“上/下行協(xié)議”。網(wǎng)絡(luò)中的每個(gè)結(jié)點(diǎn),包括根結(jié)點(diǎn).都維護(hù)一張信息表,記錄所有在樹的層次結(jié)構(gòu)中低于自己的結(jié)點(diǎn),并保存網(wǎng)絡(luò)變更的日志。協(xié)議的基礎(chǔ)是每一個(gè)結(jié)點(diǎn)周期性地向其直接父結(jié)點(diǎn)報(bào)告自己的存在,如果一個(gè)孩子結(jié)點(diǎn)在一定的時(shí)間間隔內(nèi)沒有報(bào)告,則父結(jié)點(diǎn)認(rèn)為該孩子結(jié)點(diǎn)“死了”。有可能是結(jié)點(diǎn)自身的故障、鏈路故障或該孩子終點(diǎn)改變了父結(jié)點(diǎn)。
當(dāng)一個(gè)客戶想要加人組播組時(shí),它使用一個(gè)組的URL來發(fā)送HTTPGET請求,根結(jié)點(diǎn)根據(jù)結(jié)點(diǎn)的位置和組播樹的狀態(tài)來決定該用戶應(yīng)連接到哪一個(gè)結(jié)點(diǎn)上去。組播樹的狀態(tài)信息能夠?qū)崟r(shí)傳到根結(jié)點(diǎn),所以根結(jié)點(diǎn)可以很快做出決定,這就實(shí)現(xiàn)了快速加人。
返回目錄:
編輯推薦:
中級通信專業(yè)實(shí)務(wù)
中級通信專業(yè)實(shí)務(wù)傳輸與接入教程匯總
通信工程師備考資料免費(fèi)領(lǐng)取
去領(lǐng)取
共收錄117.93萬道題
已有25.02萬小伙伴參與做題