中圖分類號:TN915.04 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-6868(2002)-30-08-04
摘要:
文章在簡介IPv6和組播技術(shù)的基礎(chǔ)上,詳細(xì)介紹了IPv6下的組播新特性,指出目前IPv6組播技術(shù)的幾個研究方向,最后介紹了有關(guān)IPv6組播技術(shù)的研究成果。
關(guān)鍵詞:
IP版本6;組播;群組管理協(xié)議;組播路由;組播主干網(wǎng);組播地址
ABSTRACT:
Based on the brief introduction to IPv6 and the multicast technology, this article presents new features of IPv6 multicast in detail, points out key fields for the research of the present IPv6 multicast technology, and ends with some research results in the field of IPv6 multicast.
KEY WORDS:
IPv6; Multicast; IGMP; Multicast route; Mbone; Multicast address
1 IPv6的產(chǎn)生
互聯(lián)網(wǎng)絡(luò)協(xié)議(IP)產(chǎn)生于20世紀(jì)70年代,經(jīng)過20年的發(fā)展,目前已經(jīng)成為最主流的網(wǎng)絡(luò)層協(xié)議。但它的很多設(shè)計已經(jīng)制約了互聯(lián)網(wǎng)的進(jìn)一步發(fā)展。
早在1992年,人們就開始討論制訂下一代互聯(lián)網(wǎng)絡(luò)協(xié)議(IPng)。1995年,IETF(因特網(wǎng)工程任務(wù)組)采用了SIPP(簡單因特網(wǎng)協(xié)議)作為IPng的制訂基礎(chǔ)。IPng被IANA(因特網(wǎng)編號管理局)正式賦予版本號6,即IPv6。1996年,IPv6的基本協(xié)議規(guī)范發(fā)表,并于1998年發(fā)表了修訂版。IPv6擴(kuò)展了地址空間,并提供了對數(shù)據(jù)傳輸?shù)耐暾院桶踩缘闹С郑С忠?guī)模更大的網(wǎng)絡(luò)結(jié)構(gòu),以及網(wǎng)絡(luò)的自動配置、更快的路由選擇、更有效的路由聚合、增強(qiáng)的組播技術(shù)等。目前工業(yè)界廣泛認(rèn)可IPv6的優(yōu)勢,并且開始進(jìn)行IPv4向IPv6的演進(jìn)工作。各大路由器廠商已經(jīng)開始提供IPv6路由支持,各種操作系統(tǒng)也開始嵌入IPv6協(xié)議棧。由于目前IPv4網(wǎng)絡(luò)的商業(yè)化運行,在演進(jìn)過程中會出現(xiàn)多種不同類型的混合網(wǎng)絡(luò),主機(jī)會同時具備IPv4和IPv6雙協(xié)議棧,然后逐漸進(jìn)化到純IPv6網(wǎng)絡(luò)。
2 組播技術(shù)的產(chǎn)生和發(fā)展
近年來互聯(lián)網(wǎng)的飛速發(fā)展產(chǎn)生了很多新應(yīng)用,特別是高帶寬需求的多媒體應(yīng)用。為了緩解網(wǎng)絡(luò)“瓶頸”問題,業(yè)內(nèi)提出了以下4種主要解決方案:增加網(wǎng)絡(luò)帶寬;采用QoS(服務(wù)質(zhì)量)機(jī)制,控制不同業(yè)務(wù)的帶寬使用;服務(wù)器的分散和集群;IP組播(IP Multicast)技術(shù)。其中,IP組播技術(shù)由于它所具有的獨特優(yōu)越性——在IP組播網(wǎng)絡(luò)中,即使用戶數(shù)量成倍增加,主干網(wǎng)絡(luò)帶寬不需要隨之增加,而成為通行的網(wǎng)絡(luò)技術(shù)之一。
如圖1所示,組播是一種允許一個或多個發(fā)送者(組播源)發(fā)送同一報文到多個接收者的技術(shù)。組播源將一份報文發(fā)送到特定組播地址,組播地址不同于單播地址,它并不特定屬于某單個主機(jī),而是屬于一組主機(jī)。一個組播地址表示一個群組,需要接收組播報文者加入這個群組。這樣,無論有多少個組播報文接收者,整個網(wǎng)絡(luò)中任何一條鏈路只傳送單一的報文,大大節(jié)省了帶寬。
(1)組播群組管理
IGMP(群組管理協(xié)議)被用來動態(tài)地管理群組成員加入和退出。當(dāng)一臺主機(jī)希望加入一個群組,它向本地的組播路由器發(fā)送IGMP消息。組播路由器監(jiān)聽IGMP消息,并作出相應(yīng)的操作。同時它還周期性地發(fā)送查詢,以維持當(dāng)前活躍的群組。
IGMP有多個版本。其中IGMPv1只有兩種消息,分別是成員查詢和成員報告。通過這兩種消息以完成最基本的群組加入和群組維護(hù)工作。IGMPv2基本上與IGMPv1相同,主要的區(qū)別是增加了一個離開群組的消息,這樣就以通告的方式退出一個群組,而在IGMPv1中要通過組播路由器發(fā)出查詢請求,發(fā)現(xiàn)沒有響應(yīng)才能確定群組成員的離開。目前正在制訂的IGMPv3增加了源點過濾的功能,它允許一個群組加入者通知組播路由器所希望接收的組播數(shù)據(jù)源點,即只有該源點的數(shù)據(jù)才會被接收[1,2]。
(2)組播路由
在組播中,報文由組播源發(fā)送到一組主機(jī)。為了保證所有加入群組的主機(jī)都能接收到報文,需要一種描述報文在網(wǎng)絡(luò)中所經(jīng)過路徑的方法,這就是組播分發(fā)樹。組播樹有3種基本類型:泛洪法、有源樹和共享樹。組播路由就是確定從組播源到群組的接收方所有成員的組播分發(fā)樹。為了提高分發(fā)效率,組播路由方法必須在保證接收群組所有成員都能接收到組播報文的條件下,盡量減少網(wǎng)絡(luò)資源占用量和組播的發(fā)送范圍。組播路由協(xié)議可以分為稠密模式和稀疏模式兩大類。
3 IPv6對組播技術(shù)的
繼承和增強(qiáng)
由于組播技術(shù)的優(yōu)越性,IETF在制訂IPv6協(xié)議時保留了組播,而取消了廣播;并且為了更好地使用和管理組播應(yīng)用,IPv6對組播作了進(jìn)一步的增強(qiáng),主要表現(xiàn)在以下方面。
3.1 組播地址
IPv6組播地址格式如圖2所示。IPv6組播地址的前8位為11111111;4位的組播標(biāo)志用于區(qū)分眾所周知組播地址(值為0)和臨時組播地址(值為1),該字段的高3位保留;4位的范圍字段決定了組播報文能游走的范圍。已分配的范圍字段值如下(其他值或者還沒有分配,或者已經(jīng)保留):
*9誗1:節(jié)點局部——節(jié)點局部報文禁止從端口輸出
*9誗2:鏈路局部——鏈路局部報文不能被路由器轉(zhuǎn)發(fā)
*9誗5:網(wǎng)點局部——網(wǎng)點的定義由該網(wǎng)點的組播路由器管理員決定
*9誗8:組織局部——組織的定義由該組織的組播路由器管理員決定
*9誗14:全球
從IPv6的組播地址格式定義,可見其相對于IPv4所具有的優(yōu)越性:
(1)具有足夠的地址空間。IPv4所定義的地址空間只相當(dāng)于16個A類地址,對于全球的組播應(yīng)用來說是遠(yuǎn)遠(yuǎn)不夠的。而IPv6的地址空間從理論上來說,可以達(dá)到2 120個。
(2)范圍字段的應(yīng)用。組播地址不同于單播地址,它不專屬于某一個主機(jī)或應(yīng)用。除了少數(shù)為協(xié)議實現(xiàn)而預(yù)留的地址外,其他地址都是根據(jù)需求動態(tài)地分布給組播應(yīng)用的用戶。這樣會出現(xiàn)一個組播地址同時被多個組播應(yīng)用所使用的情況,這就需要保證它們之間傳播的范圍不會重疊。IPv4雖然使用了TTL(報文存活時間)來控制組播報文傳送的范圍,但是TTL不夠精確,還是會存在不同應(yīng)用間報文范圍重疊的情況。而IPv6在地址格式中規(guī)定了范圍字段,這樣就可以很方便地劃分組播域,根據(jù)組播域來控制組播應(yīng)用的傳播范圍。
每個組播域有自己的組播地址空間,該地址空間的組播報文只在本組播域中轉(zhuǎn)發(fā),域的邊界路由器不向域外轉(zhuǎn)發(fā)該地址空間的組播報文。這樣可以劃分范圍從小到大、依次包含的多層次組播域,即多個處于相同層次的范圍較小的組播域組成一個更高層次的范圍較大的組播域。不同層次的組播域的組播地址空間不相互重疊,相同層次的組播域可以有相同的組播地址空間。其優(yōu)點在于用戶可以根據(jù)自己的要求選擇使用適當(dāng)組播域的組播地址,使組播報文在期望范圍內(nèi)轉(zhuǎn)發(fā),以保證組播應(yīng)用的有序運行[3]。
3.2 MLD協(xié)議
MLD協(xié)議(組播監(jiān)聽發(fā)現(xiàn)協(xié)議)是從IGMPv2協(xié)議中派生出來,專門用于IPv6組播群組的管理。其主要功能為:IPv6路由器利用MLD協(xié)議發(fā)現(xiàn)直接相連的鏈路上是否有組播組成員,以及相鄰的路由器正在監(jiān)聽哪些組播地址。IPv6路由器上運行的組播路由協(xié)議根據(jù)這些信息,保證組播報文能發(fā)送給正確的接收者。
雖說MLD協(xié)議的前身是IGMPv2,但是MLD協(xié)議不使用IGMP報文格式,而是使用全新的ICMPv6的報文格式(ICMPv6協(xié)議是為IPv6網(wǎng)絡(luò)定義的一套控制信息協(xié)議)。從某種意義上說,MLD協(xié)議就是ICMPv6協(xié)議的一個子集[4,5]。
4 IPv6組播技術(shù)的研究方向
隨著IPv6網(wǎng)絡(luò)的逐步演進(jìn)以及組播應(yīng)用的飛速增長,組播服務(wù)勢必會成為下一代IPv6 Internet上的一種主要的網(wǎng)絡(luò)服務(wù)。目前許多制訂關(guān)于組播技術(shù)的協(xié)議標(biāo)準(zhǔn),在服務(wù)于IPv4的基礎(chǔ)上,都充分考慮了對IPv6的支持。雖然它們目前的研究重點環(huán)境是IPv4,但是作為IPv6的研究者來說,需要將更多的注意力放在組播在IPv6環(huán)境下所體現(xiàn)的新特性上。
4.1 組播地址管理
組播應(yīng)用需要一個組播地址管理方法來得到地址。組播服務(wù)可以通過3種方法來得到組播地址,分別是:
(1)編碼方式:將組播地址寫入程序代碼,使之成為程序的一部分,或者固化在ROM中。該方法適用于IANA靜態(tài)分配的組播地址。
(2)通告方式:組播服務(wù)隨機(jī)挑選一個組播地址,然后在使用該地址之前向網(wǎng)絡(luò)通告它將要使用的地址。目前Mbone(組播主干網(wǎng))中的組播服務(wù)就是使用這種方式,其代表工具為SDR(會議目錄工具)。
(3)算法推導(dǎo)方式:使用一種程序化的算法為組播服務(wù)分配一個在全球范圍內(nèi)不與其他服務(wù)沖突的組播地址。
組播地址管理中的另一個主要問題是組播域的發(fā)現(xiàn)。組播域是一個組播服務(wù)的有效傳播范圍,不同的組播域有不同的組播地址空間,所以組播域的發(fā)現(xiàn)也就是用戶選擇組播地址空間的過程。
目前,IETF在組播地址管理方面成立了MALLOC(組播地址分配)工作組。該工作組的工作重點是制訂與組播地址相關(guān)的一系列協(xié)議規(guī)范,為全球范圍的組播地址分配提供保證。其主要工作成果包括:Internet組播地址分配體系結(jié)構(gòu)(MAAA)、組播地址動態(tài)分配協(xié)議(MADCAP)、組播地址分配協(xié)議(AAP)、組播地址集申請協(xié)議(MASC)等等。同時,IETF的Mbone工作組制訂了關(guān)于組播域發(fā)現(xiàn)的組播域聲明協(xié)議(MZAP)。上述協(xié)議的制訂充分考慮了IPv6組播地址的特性,并制訂了相關(guān)的IPv6組播地址分配標(biāo)準(zhǔn)[6—8]。
4.2 組播網(wǎng)絡(luò)管理
網(wǎng)管早已成為網(wǎng)絡(luò)技術(shù)的一個熱點,在這方面的研究成果和產(chǎn)品都很多。但是到目前為止,網(wǎng)管的重點主要集中在對單播流量的管理上,而對于組播流量卻鮮有涉及。雖然有些技術(shù)在單播模式的網(wǎng)管和組播模式的網(wǎng)管上是同樣適用的,但是,單播通信與組播通信在機(jī)制上的根本區(qū)別必然要求組播模式網(wǎng)管采用不同的技術(shù)。這就造成了主要針對單播流量進(jìn)行管理的網(wǎng)絡(luò)管理產(chǎn)品無法對組播流量進(jìn)行有效的管理。同時,隨著組播技術(shù)的廣泛使用,組播流量在網(wǎng)絡(luò)流量中所占的比重越來越大,對組播流量進(jìn)行管理的需求也越發(fā)迫切。所以目前針對組播流量的網(wǎng)管技術(shù)研究正在成為一個新興的熱點。
雖然SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)通過MIB(管理信息庫)定義被管理對象,它本身和網(wǎng)絡(luò)傳輸協(xié)議無關(guān),可以完全應(yīng)用于IPv6環(huán)境下(目前IETF已經(jīng)制訂了IPv6相關(guān)的MIB),但是IPv6環(huán)境下的組播網(wǎng)管具有更多的新特性。例如規(guī)模更大的IPv6網(wǎng)絡(luò)需要更健壯的網(wǎng)絡(luò)管理,SNMP信息的處理需要更高的安全性等等。目前絕大多數(shù)路由器廠商提供IPv6路由支持,這為IPv6環(huán)境下的組播網(wǎng)管的研究提供了很好的條件[9-11]。
4.3 可靠組播傳輸
組播報文是通過UDP(用戶數(shù)據(jù)報協(xié)議)進(jìn)行傳輸?shù)模运狈CP(傳輸控制協(xié)議)所提供的可靠傳輸?shù)墓δ?。有些組播服務(wù)(如視頻/音頻服務(wù))是可以容忍一定的丟包率的,而對于另一些組播服務(wù)如MFTP(Multicast FTP),則要求可靠的組播服務(wù)。雖然目前有許多可靠組播協(xié)議,例如:SRM(可升級可靠組播)協(xié)議、RMTP(可靠組播傳輸協(xié)議)、TMTP(基于樹的組播傳輸協(xié)議),并且一些已經(jīng)被商業(yè)化,但都還沒形成標(biāo)準(zhǔn)。
IETF的RMT(可靠組播傳輸)工作組和IRTF(因特網(wǎng)研究部)的RMRG(可靠組播研究組)也正在進(jìn)行相關(guān)協(xié)議標(biāo)準(zhǔn)的制訂。其內(nèi)容包括:如何在大規(guī)模組播環(huán)境下保證可靠的組播傳輸,其中又包括:設(shè)計基于負(fù)確認(rèn)機(jī)制(NACK)的可靠組播協(xié)議、設(shè)計基于樹型確認(rèn)機(jī)制的可靠組播協(xié)議、設(shè)計使用前向糾錯機(jī)制的異步分層編碼協(xié)議等;支持延期加入的接收者;可靠組播的安全問題等[12-14]。
4.4 組播網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全不論是對單播網(wǎng)絡(luò)還是對組播網(wǎng)絡(luò)的正常運行都是至關(guān)重要的。組播網(wǎng)絡(luò)安全與單播網(wǎng)絡(luò)安全有著相似的要求:用戶認(rèn)證,數(shù)據(jù)一致性檢查,數(shù)據(jù)加密,用戶授權(quán)等方面。但是,考慮到組播技術(shù)的特點,如多點到多點傳輸,無需加入群組就可以向群組中發(fā)送數(shù)據(jù)等,在組播網(wǎng)絡(luò)中實現(xiàn)網(wǎng)絡(luò)安全的難度更大。組播網(wǎng)絡(luò)安全的內(nèi)容包括:限制發(fā)送者、限制接收者、限制訪問、驗證組播內(nèi)容、保護(hù)接收者、穿越防火墻。
IETF的MSEC工作組(組播安全研究組)和IRTF的GSEC工作組(組安全研究組)也正在進(jìn)行組播安全的相關(guān)協(xié)議標(biāo)準(zhǔn)的制訂。其工作內(nèi)容包括:定義組播安全總體結(jié)構(gòu)(包括總體功能模塊及其間的相互關(guān)系);定義組播密鑰管理方法等等[15,16]。
5 結(jié)束語
在1999年9月,東南大學(xué)與清華大學(xué)、華南理工大學(xué)合作承擔(dān)國家“863”計劃通信技術(shù)主題“九五”第2期研究課題:IPv6示范網(wǎng)絡(luò)的建設(shè)及其關(guān)鍵技術(shù)的研究。在該研究項目中,我們的工作重點是建設(shè)IPv6示范網(wǎng)絡(luò)的CERNET華東(北)地區(qū)中心節(jié)點,為華東(北)地區(qū)單位加入IPv6示范網(wǎng)絡(luò)創(chuàng)造條件,并且承擔(dān)了IPv6組播技術(shù)的研究。
我們成功地將Mbone中著名的音頻會議工具vat移植到IPv6的環(huán)境下,并自行開發(fā)了支持IPv6的組播服務(wù)器mcastmp3。該工具組播MP3格式的音頻文件,實現(xiàn)了在IPv6示范網(wǎng)絡(luò)上傳輸組播多媒體數(shù)據(jù)流的要求,而且充分注意了協(xié)議無關(guān)性,可以支持IPv6和IPv4雙協(xié)議,為開發(fā)與協(xié)議無關(guān)的網(wǎng)絡(luò)通信軟件進(jìn)行了有益的嘗試。上述工具的源代碼可以在http://www.njnet6.edu.cn獲得。
根據(jù)IETF制訂的組播地址分配體系,我們開發(fā)了組播地址動態(tài)分配服務(wù)器,用于對CERNET華東(北)地區(qū)提供IPv4和IPv6組播地址的分配和管理,為組播應(yīng)用的展開(例如遠(yuǎn)程教育)提供了支持。
IPv6協(xié)議和組播技術(shù)作為目前熱門的研究領(lǐng)域,相應(yīng)的協(xié)議和標(biāo)準(zhǔn)還在不斷的制訂、討論和變化中,這些都需要我們積極地參與研究、開發(fā)和實踐?!?/p>
參考文獻(xiàn)
1 Fenner W.Internet Group Management Protocol. Version 2.IETF RFC2236, 1997
2 Cain B.Internet Group Management Protocol. Version 3.Internet-Drafts,2002
3 Hinden R, Deering S.IP Version 6 Addressing Architecture.Internet-Drafts,2001
4 Conta A, Deering S. Internet Control Message Protocol(ICMPv6) for the Internet Protocol Version 6(IPv6)Specification. IETF RFC 2463, 1998
5 Deering S, Fenner W. Multicast Listener Discovery(MLD) for IPv6. IETF RFC 2710,1999
6 Thaler D, Handley M, Estrin D. The Internet Multicast Address Allocation Architecture. IETF RFC 2908, 2000
7 Hanna S, Patel B, Shah M. Multicast Address Dynamic Client Allocation Protocol (MADCAP). IETF RFC 2730, 1999
8 Handley M, Stephen R H. Multicast Address Allocation Protocol (AAP). Internet-Drafts, 2000
9 Almeroth K.Managing IP Multicast Traffic: A First Look at the Issues, Tools, and Challenges. IP Multicast Initiative white paper, 1999
10 Diot C, Levine B, Lyles J, et al. Deployment issues for the IP multicast service and architecture. IEEE Networks, 2000
11 Sarac K, Kevin C A. Supporting Multicast Deployment Efforts: A Survey of Tools for Multicast Monitoring. Journal of High Speed Networking——Special Issue on Management of Multimedia Networking, 2001
12 Handley M, Whetten B, Kermode R, et al.The Reliable Multicast Design Space for Bulk Data Transfer. IETF RFC 2887, 2000
13 Whetten B, Vicisano L, Kermode R, et al. Reliable Multicast Transport Building Blocks for One-to-Many Bulk-Data Transfer. IETF RFC 3048, 2001
14 Luby M, Vicisano L, Gemmell J, et al. The Use of Forward Error Correction in Reliable Multicast. Internet-Drafts, 2001
15 Hardjono T, Canetti R, Baugher M, et al. Secure IP Multicast: Problem Areas, Framework and Building Blocks. Internet-Drafts, 1999
16 Harney H,Colegrove A,Harder E, et al. Group Secure Association Key Management Protocol. Internet-Drafts, 2001
(收稿日期:2002-04-05)
作者簡介
梅飛,東南大學(xué)計算機(jī)系助研。2000年6月畢業(yè)于東南大學(xué)計算機(jī)系計算機(jī)應(yīng)用專業(yè)。研究領(lǐng)域有:網(wǎng)絡(luò)管理、IPv6、組播。曾參與國家“863”通信主題課題項目研究。
龔儉,東南大學(xué)計算機(jī)系教授,博士生導(dǎo)師,CERNET專家組成員,CERNET華東(北)地區(qū)網(wǎng)絡(luò)中心主任。研究領(lǐng)域有:網(wǎng)絡(luò)安全、網(wǎng)絡(luò)體系結(jié)構(gòu)、網(wǎng)絡(luò)入侵檢測。曾主持國家自然科學(xué)基金重點課題、國家“863”通信主題、智能計算機(jī)主題等重大課題的研究。曾獲國家科技進(jìn)步二等獎等多項獎項。著有《計算機(jī)網(wǎng)絡(luò)安全》、《計算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)》等著述以及上百篇論文。