TCP/IP學習筆記之九 --- 廣播和多播

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

1.       概述

單播(unicast):每一個以太網幀包含源主機和目的主機的以太網地址(48bit)。每個以太網幀僅發往單個目的的主機,目的地址指明單個接收接口,因而稱爲單播。在該方式下任意兩個主機的通訊不會干擾網內其它主機。

廣播(broadcast):一個主機向網上的所有主機發送幀這就是廣播。

多播(multicast):處於廣播和單播之間的就是多播,主機僅傳鬆給屬於多播組的多個主機。

廣播和多播僅應用與UDP

使用廣播其增加了對廣播數據不感興趣主機的處理負荷,而使用多播則減少了對應用不感興趣主機的處理負荷。

 

2.       廣播

受限的廣播地址爲:255.255.255.255,該地址用於主機配置過程中IP數據報的目的地址。任何情況下路由器都不轉發目的地址爲受限的管波地址的數據報。

指向網絡的廣播地址:(A類)netid.255.255.255,其中netidA類網絡的網絡號。指向網絡的廣播路由器必須轉發。

指向子網的廣播:指向子網的廣播地址爲主機號爲全1且有特定子網號的地址。(需要了解子網掩碼)

 

3.       多播

多播提供兩類服務:

1)、向多個目的地址傳送數據;

2)、客戶對服務器的請求;

 

多播組地址:

DIP地址的格式,如下圖:

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

多播組地址包括1110的最高4bit和多播組號。它們通常表示爲點分十進制數,範圍從224.0.0.0239.255.255.255。能夠接收發往一個特定多播組地址數據的主機集合稱爲主機組(host group)。一個主機組可跨越多個網絡。主機組中成員可隨時加入或離開主機組。主機組中對主機的數量沒有限制,同時不屬於某一主機組的主機可以向該組發送信息。

 

 

多播組地址到以太網地址的轉換:

IANA擁有一個以太網地址塊,即高位24bit00:00:5e(十六進制表示),這意味着該地址塊所擁有的地址範圍從00:00:5e:00:00:0000:00:5e:ff:ff:ffIANA將其中的一半分配爲多播地址。爲了指明一個多播地址,任何一個以太網地址的首字節必須是01,這意味着與IP多播相對應的以太網地址範圍從01:00:5e:00:00:0001:00:5e:7f:ff:ff。多播組地址到以太網地址的轉換如下圖。

這種地址分配將使以太網多播地址中的23bitIP多播組號對應起來,通過將多播組號中的低位23bit映射到以太網地址中的低位23bit實現。

由於多播組號中的最高5bit在映射過程中被忽略,因此每個以太網多播地址對應的多播組是不唯一的。

既然地址映射是不唯一的,那麼設備驅動程序或IP層就必須對數據報進行過濾。

單個物理網絡的多播是簡單的。多播進程將目的IP地址指明爲多播地址,設備驅動程序將它轉換爲相應的以太網地址,然後把數據發送出去。這些接收進程必須通知它們的IP層,它們想接收的發往給定多播地址的數據報,並且設備驅動程序必須能夠接收這些多播幀。這個過程就是“加入一個多播組”(使用“接收進程”複數形式的原因在於對一確定的多播信息,在同一主機或多個主機上存在多個接收者,這也是爲什麼要首先使用多播的原因)。當一個主機收到多播數據報時,它必須向屬於那個多播組的每個進程均傳送一個複製。這和單個進程收到單播UDP數據報的UDP不同。使用多播,一個主機上可能存在多個屬於同一多播組的進程。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章