複製鏈接
請複製以下鏈接發送給好友

多播地址

鎖定
多播地址是一個48位的標示符,命名了一組應該在這個網絡中應用接收到一個分組的站點。多播使用一種虛擬組地址的概念進行工作, 數據包的目的地址不是一個而是一組, 形成多播組地址, 因此, 為多播通信保留了大量多播地址空間。
中文名
多播地址
外文名
multicast address
又    稱
組播地址
含    義
一組主機的標示符
工作方法
使用一種虛擬組地址的概念進行工作
作    用
為多播通信保留了大量多播地址空間
在IPv4中,它歷史上被叫做D類地址,一種類型的IP地址,它的範圍從224.0.0.0到239.255.255.255,或,等同的,在224.0.0.0/4。在IPv6,多播地址都有前綴ff00::/8。但是注意,224.0.0.0被保留,不能賦給任何多播組。
多播是第一個字節的最低位為1的所有地址,例如01-12-0f-00-00-02。廣播地址是全1的32位地址,也屬於多播地址。但是廣播又是多播中的特例,就像是正方形屬於長方形,但是正方形有長方形沒有的特點。

多播地址多播地址

Internet管理機構把舊的+類地址空間分配為,(多播地址-) 該地址空間用四組八位的二進制數表示,地址格式如下所示:1110××××.××××××××.××××××××.××××××××。第一組八位數的頭四位用1110表示,這代表該地址是一個多播地址,其餘28位比特標識具體的多播地址 。因此,多播地址的範圍從224.0.0.0到239.255.255.255。其中,後28比特的地址字段中不再有結構層次,也不標出組的來源,不會象A、B、C類地址那樣包含一個網絡地址。多播地址的使用分配現在由互聯網地址指派機構(IANA)控制 [1] 
其中,239.0.0.0~239.255.255.255的地址使用要求被限制在特定的多播域內,不應該和其他地方的多播地址發生衝突, 因此這塊組播地址在 ,#$%&#%$上不同地方可以重複使用 [1] 

多播地址IP多播

多播是一種允許一個或者多個發送者發送單一數據包到多個接收者的網絡技術。不論組成員數量的多少,數據源只發送一次數據包,並且組播只向那些需要數據包的主機和網絡發送包(以多播地址尋址)。在IP多播中,組成員的關係是動態的,多播接收主機可以在任何時候加入或退出多播組。此外,多播接收主機可以是任意多個多播組的成員。在共享的鏈路上,相同的信息只需要一個多播流,從而能夠很好地控制流量,減少了主機和網絡的負擔,提高了網絡應用服務的效率和能力 [1] 
多播技術是TCP/IP傳送方式的一種。TCP/IP有三種傳輸方式:單播、多播、廣播。傳統的IP通信是在一個源IP主機和一個目標IP主機之間(單播)或者一個源IP主機和網絡中所有的IP主機之間(廣播)進行的。要將信息發送給網絡中的多個而非所有IP主機,採用傳統的IP通信技術只有兩種方法可以選擇:採用廣播方式或者由源IP主機分別向網絡中的多個目標IP主機單播發送IP包 [1] 
廣播方式會將信息發送給不需要的IP主機而浪費帶寬,而且可能的路由迴環會引起廣播風暴。單播方式由於IP包的重複發送會浪費掉大量帶寬,同時也增加了服務器的負載。可見,傳統的IP通信技術不能有效地解決單點發送多點接收的問題。而IP多播卻很好地解決了這個問題。IP多播是指在IP網絡中數據包以盡力傳送的形式發送到所有網絡節點的某個確定子集,這個子集稱為多播組。IP多播的基本思想是源護主機只發送一份數據,然後經過路由器或交換機拷貝發送數據到一個或多個接收者。即允許源IP主機向網上所有IP主機的一部分(子集)發送IP分組,只有該子集內的主機(目標主機)可以接收該分組,而網絡中其他IP主機不能收到該分組。這種邏輯上的子集就是多播組,用D類IP地址(224.0.0.0~239.255.255.255來標識。IP多播技術有效地解決了寬業務中的單點發送多點接收,多點發送多點接收的問題,實現了IP網絡中點到多點高效數據傳輸,有效地節約了網絡帶寬,降低了網絡負載 [2] 

多播地址相關的多播協議

多播協議標準組織是因特網工程任務小組(IETF)。多播協議從結構上主要分為三部分:主機和路由器之間建立及維護多播成員關係的協議——(789:798組管理協議(IGMP);路由器和交換機之間控制多播擴散的協議——CISCO組管理協議(CGMP)、IGMP=竊聽(snoopping);多播路由器之間構造多播分發樹的協議——多播路由協議 [1] 
1.IGMP
I
IGMP是最基本的主機成員關係協議,一般用於路由器與其直接相連的主機之間進行有關多播組成員狀態的通信 [1]  ,使用規則如下:
1)當第一個進程加入一個組時,主機就發送一個IGMP報告。如果一個主機的多個進程加入同一組,只發送一個IGMP報告。這個報告被髮送到進程加入組所在的同一接口上 [1] 
2)進程離開一個組時,主機不發送IGMP報告,即便是組中的最後一個進程離開。主機知道在確定的組中已不再有組成員後,在隨後收到的IGMP查詢中就不再發送報告報文 [1] 
3)多播路由器定時發送IGMP查詢來了解是否還有任何主機包含有屬於多播組的進程。多播路由器必須向每個接口發送一個IGMP查詢。因為路由器希望主機對它加入的每個多播組均發回一個報告,因此IGMP查詢報文中的組地址被設置為0 [1] 
4)主機通過發送IGMP報告來響應一個IGMP查詢,對每個至少還包含一個進程的組均要發回IGMP報告 [1] 
在具有多層結構的本地網中,第三層IP多播數據包經地址映射轉換成第二層交換層的MAC多播地址,並被轉發到第二層交換機的所有端口)即在傳統的交換或橋接環境中多播被當成廣播一樣對待,所以只要是連在同一個第二層交換機上的客户端,不管客户端是否要求接收多播數據,都會收到多播傳來的信息流,這種現象稱為多播“泛洪”或多播擴散,將嚴重影響本地網的性能。 [1] 
處理多播擴散一種方法是IGMPsnoopping,即本地網交換機竊聽主機與路由器之間的IGMP對話,根據所連主機有無加入多播組來添加、修改交換機多播內容可尋址存儲器CAM表,以控制多播擴散。 [1] 
另一種方式就是CGMP。CGMP.是CISCO.公司開發的用於解決多播擴散問題、處理交換機與路由器之間進行多播通信的協議,是CISCO交換機和路由器專用協議。CGMP.工作基於客户6服務器模式,其中路由器被看作是一個CGMP7服務器,交換機則扮演客户角色。當有明確的主機加入或離開多播組時,IP多播路由器查看所有"#$%.信息包,並通告交換機;交換機利用這個通告信息構造交換機的轉發CAM表,由此來去除不必要的多播流從交換機的端口轉發出去。 [1] 
3.多播路由協議
實現IP多播路由一般方式是在多播組成員之間構造一棵多播樹。多播樹是根為源節點且覆蓋所有多播成員的一棵生成樹,不同的IP多播路由協議使用不同的技術來構造這些多播生成樹,一旦這個樹構造完成)所有的多播流量都將通過它來傳播。 [1] 
組播路由協議可分為兩類:密集模式協議(如距離向量多播路由協議(DVMRP)、多播開放最短路徑優先(MOSPF)、協議無關組播(PIM)-DM和稀疏模式協議(如PIM-SM、有核樹組播路由協議(CBT)。 [1] 
1)DVMRP
DVMRP基於RPF,使用距離向量算法得到網絡的拓撲信息。為了使新加入的組播成員能及時收到組播數據,DVMRP採用定時發送數據包給所有的局域網,然而這種方法導致大量路由控制數據包的擴散,這部分開銷限制了網絡規模的擴大。另一方面,DVMRP使用跳數作為計量尺度,其上限為32跳,這對網絡規模也是一個限制。目前提出了分層DVMRP,即對組播網絡劃分區域,在區域內的組播可以按照任何協議進行,而對於跨區域的組播則由邊界路由器在DVMRP協議下進行,這樣可大大減少路由開銷。 [1] 
2)MOSPF
MOSPF是一種基於鏈路狀態的路由協議,定義了三種級別的路由MOSPF區域內組播路由:用於瞭解各網段中的組播成員,構造(源網絡(S),組(G))對的SPT;MOSPF區域間組播路由:用於彙總區域內成員關係,並在自治系統(AS)主幹網(區域0)上發佈組成員關係記錄通告,實現區域間組播包的轉發。MOSPFAS間組播路由:用於跨AS的組播包轉發。 [1] 
MOSPF與DVMRP相比,路由開銷較小,鏈路利用率高,然而92DE/FGH算法計算量很大,為了減少路由器的計算量,MOSPF執行一種按需計算方案,即只有當路由器收到組播源的第一個組播數據包後,才對((S,G)SPT計算,否則利用轉發緩存(cache)中的((S,G)SPT。MOSPF對網絡拓撲的變化響應速度快,但拓撲變動使所有路由器的緩存失效重新計算4%!,因而消耗大量路由器(%L資源。這就決定了MOSPF不適合高動態性網絡(組成員關係變化大、鏈路不穩定),而適用於網絡連接狀態比較穩定的環境。 [1] 
3)PIM
PIM由域間組播路由(IDMR)工作組設計。顧名思義,PIM不依賴於某一特定單播路由協議,它可利用各種單播路由協議建立的單播路由表完成RPF檢查功能,而不是維護一個分離的組播路由表實現組播轉發。由於PIM無需收發組播路由更新,所以與其它組播協議相比,PIM開銷降低了許多。PIM的設計出發點是在"0FKG0KF範圍內同時支持SPT和共享樹,並使兩者之間靈活轉換,因而集中了它們的優點提高了組播效率。 [1] 
4)CBT
CBT的基本目標是減少網絡中路由器組播狀態,以提供組播的可擴展性。為此,CBT被設計成稀疏模式(與PIM-SM相似)。CBT使用雙向共享樹,雙向共享樹以某個核心路由器為根,允許組播信息在兩個方向流動。這一點與PIM-SM不同(PIM-SM中共享樹是單向的,在RP與組播源之間使用SPT將組播數據轉發到RP,所以CBT不能使用RP檢查,而使用IP包頭的目標組地址作檢查轉發緩存。這就要求對CBT共享樹的維護非常小心,以確保不會產生組播路由循環。從路由器創建的組播狀態的數量來看,CBT比支持SPT的協議效率高,在具有大量組播源和組的網絡中,CBT能把組播狀態優化到組的數量級。 [1] 
CBT為每個組播組建立一個生成樹,所有組播源使用同一棵組播樹。CBT工作過程大體如下:首先選擇一個核,即網絡中組播組的固定中心,來構造一棵CBT;主機向這個核發送1234命令;所有中間路由器都接收到該命令,並把接收該命令的接口標記為屬於這個組的樹;如果接收到命令的路由器已是樹中一個成員,那麼只要再標記一次該接口屬於該組;如果路由器第一次收到1234命令,那麼它就向核的方向進一步轉發該命令,路由器就需要為每個組保留一份狀態信息;當組播數據到達一個在CBT樹上的組播路由器時,路由器組播數據到樹的核,以保證數據能夠發送到組的所有成員。 [1] 
CBT將組播擴張限制在接收者範圍內,即使第一個數據包也無需在全網擴散,但CBT導致核周圍的流量集中,網絡性能下降。所以某些版本的CBT支持多個核心以平衡負載。儘管CBT很有代表性,但至今卻幾乎沒有已實現的CBT網絡。 [1] 

多播地址多播技術現狀

乏有效的用户管理,具體表現在下面幾個方面:
·認證難:多播協議不提供用户認證功能,用户可隨意地加入或離開 [2] 
·計費難:多播協議不涉及計費,加上多播源無法得知用户何時加入或離開,也無法統計某時間段到底有多少用户在收看多播節目,因此無法進行準確的計費 [2] 
·管理難:多播源缺乏有效的管理手段去控制多播信息在網上傳遞的範圍和方向 [2] 
為了解決這些困難,迫切需要對多播功能進行優化和改進,以適應網絡的運營現狀,多播業務管理(可控多播)技術應運而生。可控多播技術主要包含信源控制、用户控制和安全控制三個方面 [2] 
1.信源控制
信源管理在多播流進入骨幹網絡之前,多播業務控制設備區分合法和非法的媒體服務器,轉發合法的多播信息流,阻斷非法的多播信息流。同時,對於信源發出的多播流量進人網絡的速度(cAR)和優先級(MARK)進行控制,從而控制多播業務的開通、類型、帶寬和對非法信源的過濾 [2] 
2.用户控制
用户控制是二層設備首先根據web、802.lx和PPPOE等認證方式對用户的多播權限進行驗證。如果驗證通過,則二層設備接收用户的GIMP加入/離開的信息,並建立相應的轉發表項,允許用户接收多播流量。否則,丟棄用户的IGMP報文,禁止用户接收多播流量 [2] 
3.安全管理
在標準的多播中,接受者可以加入任意的多播組,也即多播樹的分支是不可控,信源不知道多播樹的範圍與方向,安全性較低。為了實現對一些較重要的信息的保護,需要控制其擴散範圍的,華為的靜態多播樹滿足此需求。實現靜態多播樹的配置,滿足高價值用户的安全需求。靜態多播樹就是多播樹事先配置,控制多播樹的範圍與方向,不接受其他動態的多播成員的加入,這樣能使多播信源的報文在規定的範圍內擴散 [2] 

多播地址IP多播的展望

網絡的寬帶化已經不僅僅是使人們能夠在寬闊的信息高速公路上順暢地進行交流,而是越來越多地希望寬帶網絡能夠帶來更直觀、更豐富的多媒體信息。多播技術為多媒體業務的開展提供了基礎傳送技術,有效地支撐了多點通信業務,涵蓋了從地址方案、成員管理到路由和安全等各個層面,其中多播地址的分配方式、域間多播路由以及多播安全等仍是研究的熱點。從目前的情況看,組成員管理普遍採用GIMP、PIM一sM協議,是因為其良好的擴展性和從共享樹向源樹轉換的能力從而成為域內多播路由的首選協議,域間路由技術現階段普遍採用IPM一SMM/BGp刀班SDP協議組合的方案。目前,多播的域內技術已基本成熟,域間技術也在不斷完善。我們可以預見在下一代互聯網技術中,多播技術必將大放異彩 [2] 
參考資料
  • 1.    汪浩, 韓濤. IP 多播技術探討:電信快報,2005
  • 2.    李長永, 陳常嘉. IP 多播技術研究和探討:中國數據通信,2005