IP組播技術(shù)原理及其應(yīng)用管理的經(jīng)驗介紹
目前,不少企業(yè)或政府部門,通過自建或租用線路,開發(fā)屬于自己的寬帶IP城域網(wǎng),并在其上開展視頻會議等應(yīng)用。一般來說,搭建一個星型網(wǎng)絡(luò),進行點對點的TCP/IP數(shù)據(jù)包傳輸,并非難事,只要能Ping通對方就行,因為TCP/IP 提供可靠傳輸,接收方如果沒有收到數(shù)據(jù)包,發(fā)送方會重發(fā)這些包。但是在組播方式下,采用的是不可靠的UDP傳輸,發(fā)送方?jīng)]有重發(fā)數(shù)據(jù)包的機制,如果傳輸環(huán)境不進行優(yōu)化,或者網(wǎng)絡(luò)交換機的配置不很合理,就很容易造成數(shù)據(jù)包的延時或丟失,導(dǎo)致傳輸視頻會議的圖像時,在接收端出現(xiàn)馬賽克、停頓,甚至黑屏等現(xiàn)象。
一、網(wǎng)絡(luò)概況
筆者所在的地級市,下轄9個縣,我們利用IP over Optical技術(shù),組建了覆蓋全市的光纖千兆IP城域網(wǎng),在該網(wǎng)絡(luò)上利用組播技術(shù),成功地召開了多次交互式視頻會議,網(wǎng)上用戶還可以實時收看CCTV-5轉(zhuǎn)播的視頻新聞和世界杯足球賽等。該網(wǎng)絡(luò)選用了美國Foundry公司的產(chǎn)品,其中在地級市的核心交換機采用BigIron 8000,而在9個縣中,有5個單位的匯接層交換機為BigIron 4000,另外4個單位的匯接層交換機為NetIron,這些型號的交換機都是第三層交換機。至于各個單位的接入層交換機則有多種型號,包括3Com、 Cisco、Intel和華為等。以上這些產(chǎn)品組成了以BigIron 8000為中心的樹型網(wǎng)絡(luò),這種網(wǎng)絡(luò)結(jié)構(gòu)正好與政府部門的分級管理模式相符合。
二、組播協(xié)議
組播技術(shù)是根據(jù)路由器下游是否有組播成員來決定是否轉(zhuǎn)發(fā)數(shù)據(jù)包的,這樣,支持組播協(xié)議的網(wǎng)絡(luò),由于只在路由有分支的節(jié)點復(fù)制數(shù)據(jù)包,與傳統(tǒng)單播協(xié)議在源端復(fù)制后,再一一發(fā)送出去的方式比較,不但大大節(jié)省了帶寬資源,還減輕了源端及中間路由器節(jié)點處理重復(fù)分組的負擔,縮短了通信所需的處理時間,大大提高了網(wǎng)絡(luò)工作的效率。
IP網(wǎng)上的組播有以下三個常用的協(xié)議
1.Internet群組管理協(xié)議(IGMP)
該協(xié)議被主機用來通知直連的路由器,提出具體組播地址,申請加入或離開一個組播組。發(fā)送者則要確定一個合適的地址,這個地址代表一個主組,然后,組播數(shù)據(jù)包通過普通的IP地址以UDP廣播方式傳送到提出申請的主機所在子網(wǎng)內(nèi)的各主機用戶。
2.獨立組播協(xié)議(PIM)
該協(xié)議實現(xiàn)對各種組播應(yīng)用的支持,有密集模式PIM-DM和稀疏模式PIM-SM兩種。在Foundry產(chǎn)品上,加載PIM會自動啟用IGMP。
3.距離矢量組播路由協(xié)議(DVMRP)
該協(xié)議屬于密集模式,它根據(jù)自己的算法建立組播路由表。在Foundry產(chǎn)品上,加載DVMRP也會自動啟用IGMP。
要想在IP網(wǎng)絡(luò)上召開交互式視頻會議或發(fā)布視頻新聞,就需要利用IP網(wǎng)絡(luò)組播的密集模式,并且啟動PIM或DVMRP協(xié)議。在Foundry產(chǎn)品上啟動這些協(xié)議時,不同的VLAN配置方法可產(chǎn)生不同的效果。 {{分頁}}
三、重在管理
在管理方面,我們做了以下工作。
1.劃分VLAN
劃分VLAN(虛擬局域網(wǎng))是為了控制廣播包的擴散。對于我們的視頻會議應(yīng)用,采用MPEG 2標準,由于設(shè)備相對獨立,與網(wǎng)上其他桌面用戶之間不存在信息交流,所以我們在全市范圍內(nèi)共10臺三層交換機上專門開辟了一個VLAN 24,并給定一個單獨的網(wǎng)段,不設(shè)網(wǎng)關(guān)。Foundry的802.1p/q標準標記允許建立跨越交換機邊界的虛擬局域網(wǎng),于是VLAN 24跨越了不同的交換機,使得盡管這10臺三層交換機最遠距離為90km以上,還能處在同一VLAN內(nèi),避免了一些不相干廣播包的干擾,大大提高了接收端處理數(shù)據(jù)的效率。
對于視頻新聞,采用MPEG 1標準,由于接收方是城域網(wǎng)上的普通用戶,所以只在源端設(shè)定一個獨立的VLAN 25。目前在網(wǎng)上運行的視頻新聞有2套系統(tǒng),一套采用MediaPlayer 7.1,另一套采用專用的客戶端軟件。
2.設(shè)置優(yōu)先級
網(wǎng)絡(luò)管理員利用可選服務(wù)質(zhì)量,通過IEEE 802.1p/q虛擬局域網(wǎng)標記和優(yōu)先級別分配,將QoS的優(yōu)點延伸到交換機邊界。
Foundry的BigIron交換機支持8個等級(0~7)的優(yōu)先級,這8個優(yōu)先級被分為4組,在默認狀態(tài)下,最高級別的優(yōu)先級可請求到80%的帶寬。對于VLAN 24來說,就需要為它設(shè)置最高級別的優(yōu)先級(第7級)。
3.配置組播協(xié)議
在視頻會議系統(tǒng)調(diào)試時,由于沒有配置好組播協(xié)議,整個城域網(wǎng)存在著丟失數(shù)據(jù)包較多的現(xiàn)象,我們先用HP公司的 Netperf軟件對網(wǎng)絡(luò)點對點狀態(tài)下的TCP連接與UDP連接性能(包括丟包率)進行測試,測試時網(wǎng)絡(luò)所傳遞的數(shù)據(jù)量為11.29Mbps,遠大于視頻會議的數(shù)據(jù)流量(6Mbps),測試結(jié)果表明沒有任何丟包,而且交換機CPU的使用率也很低(NetIron為4%,BigIron 8000為1%)。后來,又邀請第三方用美國Fluke公司的Enterprise LANMeter 683測試儀對全網(wǎng)進行更為嚴密的檢測,結(jié)論為該網(wǎng)絡(luò)是穩(wěn)定和健壯的。
以上測試結(jié)果說明網(wǎng)絡(luò)交換性能良好,那么為什么在整個視頻會議系統(tǒng)調(diào)試時,卻會出現(xiàn)丟包現(xiàn)象呢?我們仔細檢查了組播協(xié)議的配置。
對于VLAN 24 來說,由于所有參加視頻會議的設(shè)備均處在同一個虛擬局域網(wǎng)內(nèi),不需要組播路由,只需在最靠近組播源的三層交換機上加載 IGMP即可。實際應(yīng)用中,我們就在核心層交換機BigIron 8000中屬于VLAN 24的 int ve 24上啟用了DVMRP,由它來自動加載IGMP;在5個匯接層交換機BigIron 4000上不再啟用 DVMRP,否則就要引起混亂,造成組播數(shù)據(jù)包的丟失;但是由于BigIron和NetIron上的 DVMRP版本不同,所以在另外4個匯接層交換機 NetIron上仍然需要啟用 DVMRP。{{分頁}}
對于VLAN25來說,由于接收方是城域網(wǎng)上的所有普通用戶,他們與組播源分別屬于不同的VLAN和不同的IP子網(wǎng),所以需要在所有VLAN的虛擬端口上啟用組播路由協(xié)議,包括千兆口上用于級聯(lián)的VLAN。實際應(yīng)用中,我們在每個VLAN(不包括VLAN 24)的虛擬端口上都啟用了PIM。經(jīng)過多次試驗,我們發(fā)現(xiàn):(1)PIM使用IP ROUTE中的路由信息,而DVMRP則根據(jù)它自己的算法,另外生成一個路由表;(2)在同一交換機上,不同的VLAN如果有的使用PIM,有的使用 DVMRP,則這些VLAN中的主機不能加入同一組地址;(3)在同一交換機上,不同VLAN、不同子網(wǎng)的主機在相同的PIM或DVMRP的支持下,可以加入同一組地址;(4)在同一交換機上,同一VLAN下的不同子網(wǎng)的主機可以公用一個PIM或DVMRP;(5)同一VLAN下的不同子網(wǎng),只有地址最小的網(wǎng)段能進入DVMRP的路由表中。
4.協(xié)調(diào)交換機的互連
不同型號的交換機相連時,需要協(xié)調(diào)好彼此的配置,否則會影響組播數(shù)據(jù)的傳輸。例如,其中一個縣級單位的匯接層交換機是 BigIron 4000,如果視頻會議終端與它直接相連,則能正常工作;如果在BigIron 4000與視頻會議終端之間加入一臺接入層交換機,型號為Intel 530,結(jié)果圖像傳輸不正常,有嚴重丟幀現(xiàn)象。經(jīng)過仔細分析,發(fā)現(xiàn)是兩臺交換機的配置沒有協(xié)調(diào)好,后來開通了Intel 530交換機的雙工功能,圖像傳輸即恢復(fù)正常。
5.檢查端口流量
在視頻會議的調(diào)試初期,地級單位控制中心上的解碼設(shè)備收到了很多額外的數(shù)據(jù)包,仔細檢查與這些解碼設(shè)備直連的接入層交換機FastIron上各個端口的流量后,發(fā)現(xiàn)當在城域網(wǎng)上進行視頻傳輸時,F(xiàn)astIron會打開組播協(xié)議,如果此時組播組里沒有接收設(shè)備,則 FastIron會將其接收到的組播數(shù)據(jù)包廣播給每一個端口,直到有接收設(shè)備加入到組播組時,F(xiàn)astIron才停止廣播,把數(shù)據(jù)包只發(fā)給已加入組播組的端口。
這是因為Foundry的FastIron屬于接入層設(shè)備,是第2層交換機,當交換機檢測進入的數(shù)據(jù)流,并且檢查目的 MAC地址以確定如何轉(zhuǎn)發(fā)這個數(shù)據(jù)流時,由于目的MAC地址是一個組播地址,且在交換表中沒有該數(shù)據(jù)流應(yīng)該轉(zhuǎn)發(fā)到何處的條目,所以這個視頻流就簡單地被發(fā)送到其所有的端口。
要解決這個問題有以下方法:(1)第2層交換機可以窺探IGMP查詢和報告消息以了解組播組成員的端口對應(yīng)關(guān)系,這使得交換機可以動態(tài)跟蹤組播組成員,不過,窺探每個組播數(shù)據(jù)包和控制包會消耗交換機很多的處理能力,并會因此降低交換機的轉(zhuǎn)發(fā)性能、增加包轉(zhuǎn)發(fā)延時;(2)在打開與FastIron直接相連的編解碼設(shè)備時,按照先開接收設(shè)備,后開視頻發(fā)送設(shè)備的順序操作,這種方法的缺點是工作人員往往由于疏忽而造成誤操作;(3)將只有二層交換功能的FastIron換成三層交換機NetIron,由于后者的價格比前者貴很多,所以這種方法會造成浪費。
實際應(yīng)用中,對視頻傳輸軟件進行改進,每當需要發(fā)送視頻組播包時,先用軟件模擬一個接收設(shè)備,提出申請,加入組播組,這樣就不會引發(fā)FastIron的廣播,從根本上解決這個問題。
6.優(yōu)化傳輸環(huán)境
在視頻會議系統(tǒng)的調(diào)試初期,另一個造成數(shù)據(jù)包丟失的原因是有些三層交換機光纖端口的校驗碼(FCS)值較大,這會引起頻繁啟用握手信號,影響正常數(shù)據(jù)的傳輸。由于產(chǎn)生FCS錯誤的原因主要有壞的網(wǎng)卡及驅(qū)動、電磁干擾,及其他線路噪聲、超負荷工作的路由和網(wǎng)橋、傳輸線纜超標等,所以有針對性地檢查了一些光纖的光功率,有幾條光纖的功率已將到交換機接受范圍的臨界,于是將這幾條光纖的尾纖和跳線接頭用無水酒精擦洗干凈,重新接上后再進行測試,一切正常。
7.管理組播地址
根據(jù)Internet地址分配機構(gòu)的規(guī)定,應(yīng)用系統(tǒng)中可采用的組播地址范圍是:224.0.1.0~238.255.255.255。
在實際應(yīng)用中,我們一般都采用靜態(tài)設(shè)置,如在視頻會議系統(tǒng)中設(shè)置好組播地址,以后永遠不變,這種方式雖然比較簡單,在目前視頻會議系統(tǒng)使用不多時沒有問題,但是如果有兩個此類會議系統(tǒng)同時運行,或使用相同組播地址的不同系統(tǒng)同時運行(由于沒有統(tǒng)一管理組播地址,開發(fā)商互相不知道),那么就會出現(xiàn)無法解決的地址沖采用了堅固、符合人類工程學(xué)的新式外殼,能夠適應(yīng)任何工作環(huán)境。注塑成型的防護套能夠承受現(xiàn)場的惡劣環(huán)境,同時提供舒適的、防滑握持。
路由器相關(guān)文章:路由器工作原理
路由器相關(guān)文章:路由器工作原理
交換機相關(guān)文章:交換機工作原理
評論