2010/10/12

IGMP (2)

群播IP位址

IANA(Internet Assigned Numbers Authority)定義了由 224.0.0.0 到 239.255.255.255 的 Class D 位址範圍內,Class D 位址保留及指派IP群播位址使用。Class D位址的前四個位元永遠是1110,與Class A、B、C位址範圍很不一樣的是,Class D不再區分子網段,故扣除固定的前四個位元,剩下的28個位元共可以產生228個群播群組。

下表是常見的 D 類別位址的部份清單,這些位址保留給IP群播所使用,並且在IANA登錄的。除此之外,仍有一些範圍的IP保留給開放及商業群組,在指定時須特別留意。

表5.1 Class D群播保留位址

IP 群播位址

描述

224.0.0.0

基本位址 (保留)。

224.0.0.1

「所有主機」群播群組包含相同網路區段上的所有系統。

224.0.0.2

「所有路由器」群播群組包含相同網路區段上的所有路由器。

224.0.0.5

「開放最短路徑優先 (OSPF)」All SPF Routers 位址。用來將 OSPF 路由資訊傳送到網路區段上所有 OSPF 路由器。

224.0.0.6

OSPF All Designated Routers 位址。用來將 OSPF 路由資訊傳送到網路區段上 OSPF 指定路由器。

224.0.0.9

RIP Version 2 群組位址。用來將 RIP 路由資訊傳送到網路區段上所有 RIP v2 路由器。

224.0.1.24

WINS 伺服器群組位址。用來支援 WINS 伺服器複寫的自動發現及動態設定。

群播有趣的是,來源端無須知道群組中有哪些接收端,接收者可以隨時加入或離開群組,這與電視廣播或電台是一樣的。群播 IP 傳輸會傳送到單一位址,但是卻由多個主機來處理。只有隸屬於群播群組的主機,會接收並處理傳送到群組的資訊。正在接聽指定的IP 群播位址的主機群組,稱為群播群組。

若來源端與接收端在同一LAN中,接收端只要調成接收此群播位址,即可接收資料。但若來源端與接收端不在同一LAN中,亦或說中間有經過路由器,此時情況較為複雜,路由器是可以選擇將群播的封包轉送到所有的LAN中,這樣的做法如同廣播,違反了群播的基本精神,沒有節省到網路資源。所以,路由器必須知道哪個網路內有隸屬於此群組的成員,方式就是透過查詢。每個版本的 IGMP 都會定義通訊協定,以用來交換及更新群播群組中指定主機成員的相關資訊。

傳送Query給此子網段中所有的系統,位址為224.0.0.1,或傳送給特定的群組位址,若有主機有回應時,則路由器才將封包轉送到此子網路。若於特定時間內,沒有主機做回應時,路由器將視為此子網段內,沒有主機需要此份封包,而停止轉送。

為了減少傳送的等待時間,主機端會主動發出Report訊息給路由器,當路由器收到Report訊息時,會馬上轉送該群播群組的訊務到主機所屬的子網路,而子網路中只要送出一個Report就夠了。或者由主機主動發送Leave訊息給路由器,告知此成員退出這個群播群組。

IP 群播的其他重要方面包含下列項目:成員資格是動態的,允許主機隨時加入及離開群組。將主機加入群播群組的能力乃是透過傳送IGMP的訊息來實現。如果連線路由器支援IP群播及群組成員資格資訊的傳播,則群組大小不受限制,成員可以屬於多個 IP 網路中。

Class D保留範圍中的單一IP位址識別每個群播群組。每個群組的所有主機成員共用該群組所保留的IP位址,他們接聽及接收任何傳送到該群組 IP 位址的資訊。將IP群播位址對應到一組保留的媒體存取控制群播位址。Ethernet與FDDI介面把群播IP位址較低的23個位元對應到保留MAC位址較低的23個位元,以形成群播MAC位址,如CLASS D的IP位址235.147.18.40(十六進位為EB.93.12.28)用來形成MAC位址0100.5E13.1228。

沒有留言:

張貼留言