IP多播提供的兩類服務
發表于:2007-05-26來源:作者:點擊數:
標簽:
IP多播提供兩類服務: 1)向多個目的地址傳送數據。有許多向多個接收者傳送信息的應用:例如交互式會議系統和向多個接收者分發郵件或新聞。如果不采用多播,目前這些應用大多采用TCP來完成(向每個目的地址傳送一個單獨的數據復制)。然而,即使使用多播,某
IP多播提供兩類服務:
1)向多個目的地址傳送數據。有許多向多個接收者傳送信息的應用:例如交互式會議系統和向多個接收者分發郵件或新聞。如果不采用多播,目前這些應用大多采用TCP來完成(向每個目的地址傳送一個單獨的數據復制)。然而,即使使用多播,某些應用可能繼續采用TCP來保證它的可靠性。
2)客戶對服務器的請求。例如,無盤工作站需要確定啟動引導服務器。目前,這項服務是通過廣播來提供的(正如第16章的BOOTP),但是使用多播可降低不提供這項服務主機的負擔。
多播組地址
下圖顯示了D類IP地址的格式。28位D類

D類IP地址格式 能夠接收發往一個特定多播組地址數據的主機集合稱為主機組(hostgroup)。一個主機組可跨越多個
網絡。主機組中成員可隨時加入或離開主機組。主機組中對主機的數量沒有限制,同時不屬于某一主機組的主機可以向該組發送信息。
一些多播組地址被IANA確定為知名地址。它們也被當作永久主機組,這和TCP及UDP中的熟知端口相似。同樣,這些知名多播地址在RFC最新分配數字中列出。注意這些多播地址所代表的組是永久組,而它們的組成員卻不是永久的。
例如,224.0.0.1代表“該子網內的所有系統組”,224.0.0.2代表“該子網內的所有路由器組”。多播地址224.0.1.1用作網絡時間
協議NTP,224.0.0.9用作RIP-2,224.0.1.2用作SG公司的dogfight應用。
多播組地址到以太網地址的轉換IANA擁有一個以太網地址塊,即高位24bit為00:00:5e(十六進制表示),這意味著該地址塊所擁有的地址范圍從00:00:5e:00:00:00到00:00:5e:ff:ff:ff。IANA將其中的一半分配為多播地址。為了指明一個多播地址,任何一個以太網地址的首字節必須是01,這意味著與IP多播相對應的以太網地址范圍從01:00:5e:00:00:00到01:00:5e:7f:ff:ff。
這里對CSMA/CD或令牌網使用的是Internet標準比特順序,和在內存中出現的比特順序一樣。這也是大多數程序設計員和系統管理員采用的順序。IEEE文檔采用了這種比特傳輸順序。AssignedNumbersRFC給出了這些表示的差別。
這種地址分配將使以太網多播地址中的23bit與IP多播組號對應起來,通過將多播組號中的低位23bit映射到以太網地址中的低位23bit實現,這個過程如圖12-3所示。
由于多播組號中的最高5bit在映射過程中被忽略,因此每個以太網多播地址對應的多播組是不唯一的。32個不同的多播組號被映射為一個以太網地址。例如,多播地址224.128.64.32(十六進制e0.80.40.20)和224.0.64.32(十六進制e0.00.40.20)都映射為同一以太網地址01:00:5e:00:40:20。
既然地址映射是不唯一的,那么設備驅動程序或IP層(見圖12-1)就必須對數據報進行過濾。因為網卡可能接收到主機不想接收的多播數據幀。另外,如果網卡不提供足夠的多播數據幀過濾功能,設備驅動程序就必須接收所有多播數據幀,然后對它們進行過濾。

D類IP地址到以太網多播地址的映射
局域網網卡趨向兩種處理類型:一種是網卡根據對多播地址的散列值實行多播過濾,這意味仍會接收到不想接收的多播數據;另一種是網卡只接收一些固定數目的多播地址,這意味著當主機想接收超過網卡預先支持多播地址以外的多播地址時,必須將網卡設置為“多播混雜(multicastpromiscuous)”模式。因此,這兩種類型的網卡仍需要設備驅動程序檢查收到的幀是否真是主機所需要的。
即使網卡實現了完美的多播過濾(基于48bit的硬件地址),由于從D類IP地址到48bit的硬件地址的映射不是一對一的,過濾過程仍是必要的。盡管存在地址映射不完美和需要硬件過濾的不足,多播仍然比廣播好。
單個物理網絡的多播是簡單的。多播進程將目的IP地址指明為多播地址,設備驅動程序將它轉換為相應的以太網地址,然后把數據發送出去。這些接收進程必須通知它們的IP層,它們想接收的發往給定多播地址的數據報,并且設備驅動程序必須能夠接收這些多播幀。這個過程就是“加入一個多播組”(使用“接收進程”復數形式的原因在于對一確定的多播信息,在同一主機或多個主機上存在多個接收者,這也是為什么要首先使用多播的原因)。當一個主機收到多播數據報時,它必須向屬于那個多播組的每個進程均傳送一個復制。這和單個進程收到單播UDP數據報的UDP不同。使用多播,一個主機上可能存在多個屬于同一多播組的進程。
當把多播擴展到單個物理網絡以外需要通過路由器轉發多播數據時,復雜性就增加了。需要有一個
協議讓多播路由器了解確定網絡中屬于確定多播組的任何一個主機。這個
協議就是Internet組管理
協議(IGMP),也是下一章介紹的內容。
原文轉自:http://www.kjueaiud.com
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|