Internet工作群組管理協議。IGMP主要用來解決網絡上廣播時佔用頻寬的問題。當網絡上的信息要傳輸給所有工作站時,就發出廣播(broadcast)信息(即IP地址主機標識位全為1),交換機會將廣播信息不經過濾地發給所有工作站;但當這些信息只需傳輸給某一部分工作站時,通常採用群播(multicast,也稱多點廣播)的方式,此時就要要求交換機支持IGMP。支持IGMP的交換機會識別群播信息並將其轉發至相應的群組,從而使不需要這些信息的工作站的網絡頻寬不被浪費。IGMP對於提高多媒體傳輸時的網絡性能尤為重要。

參考文章(Wiki)

網際網路組管理協議(Internet Group Management Protocol或簡寫IGMP)是用於管理網際網路協議多播組成員的一種通信協議。IP主機和相鄰的路由器利用IGMP來建立多播組的組成員。像ICMP用於單播連接一樣,IGMP也是IP多播說明的一個完整部分。

網際網路組管理協議(Internet Group Management Protocol或簡寫IGMP)是用於管理網際網路協議多播組成員的一種通信協議。IP主機和相鄰的路由器利用IGMP來建立多播組的組成員。像ICMP用於單播連接一樣,IGMP也是IP多播說明的一個完整部分。  


透過IGMP協議提高IP多媒體流傳輸效率 (作者:Uzi Yahav)

利用IP實現多媒體流傳輸將是未來網際網路的一個重要應用,而提高基於IP傳輸的可靠性、提供更豐富的內容和提高服務品質是該應用取得成功的關鍵。IGMP多重傳播方案能有效利用頻寬,利用該方案設計工程師可建構符合這三個要求的寬頻設備。本文詳細介紹了IGMP協議特點和實現方法。

隨著單一的數據業務收入成長趨緩,廠商必須推出各種新業務。透過已有的寬頻網路提供視訊傳輸服務,能使現有的寬頻網路獲得較 高的投資回報。然而,網路廠商和多重服務業者(MSO)將面臨如何在基於網際網路協定(IP)的網路中進行視訊傳輸的困難。儘管IP為數據網路帶來了許多 好處,但在進行視訊傳輸時面臨很多挑戰,至少對於要求高服務品質(QoS)的視訊流傳輸而言,性能不穩定的IP網路並非一個友好的環境。幸運的是,設計工 程師可以透過多重傳播數據流來解決IP數據流的傳輸問題。多重傳播數據流採用網際網路組群管理協議(IGMP),本文將詳細講述IGMP多重傳播如何在寬 頻網路中有效地傳輸視訊流。

 

IGMP協議

IGMP是透過充分利用IP堆疊來實現的。網路堆疊由不同的層構成,每一層只和相鄰的上、下層通訊。IGMP使用第2層和第3層,使用方式與通常的單播或廣播流略微不同。

IGMP是透過充分利用IP堆疊來實現的。網路堆疊由不同的層構成,每一層只和相鄰的上、下層通訊。IGMP使用第2層和第3層,使用方式與通常的單播或廣播流略微不同。  

 

在網路上傳輸的數據流由數據封包組成,每個數據封包頭均具有該數據封包的起始地址和目的地址資訊。單播數據流(如文件傳輸)的起始地址十分明顯,該地址就是IP地址,位於第3層或IP數據封包頭中,而起始媒體存取控制(MAC)地址則位於第2層或數據鏈路層上。

廣播數據封包的格式與單播數據封包的格式一樣,但在廣播數據封包中,目的地址是一個廣播地址。因此,對於網路地址為192.168.34.0的IP網路來說,它的目的地址是192.168.34.255。

多重傳播數據流也必須遵循與單播和廣播數據流相同的基本格式,它們之間的差別在於其目的地址的不同。IGMP多重傳播數據流 具有一個D類目的地址,範圍為224.0.0.0到239.255.255.255。該目的地址並不對應於網路中某台具體的電腦或主機,而是與網路中距離 最近的第3層設備相匹配,通常為網路中的一個路由器。

當多重傳播數據封包到達路由器時,路由器必須決定是繼續傳輸該數據封包還是停止傳輸。必須注意的是,作為該數據封包目的地 址的D類IP地址並非某一台實際的主機,而是一個組,它們必須先與離它最近的路由器連接,然後再告知數據流傳輸主機。如果是首次到達的數據封包,路由器便 會開始‘建構組’。如果其它主機沒有要求路由器從該組接收數據,那麼這些數據封包將被丟棄。

 

發送D類地址作為請求

多重傳播數據流請求也使用D類地址。如果一台主機希望尋找某個多重傳播組,它會向保留地址224.0.0.2發送一個‘加入 ’資訊。透過該保留地址,此資訊實際上發送給了‘子網上所有的路由器’。當主機要求加入某個特殊組時,這條路徑上的路由器便會將該請求向外發送出去。最 後,當找到該組時,數據流會順著相同路徑傳回給提出請求的主機。

當主機接收完畢,決定不再需要該數據流時,它也向某個特殊的多重傳播地址發送資訊,然後該數據流便會停止發送。在實際作業中,在由各個路由器和其它第3層設備組成的不同樹結構中將會‘刪除’這台接收完畢的主機,數據流也不再發送給它。

 

IGMP的作用

IGMP協議很有用,基於該協議,主機要求加入一個組的請求不必到達離數據流傳輸主機最近的路由器。如果一台主機申請加入數 據流傳輸路由中的某個多重傳播組,那麼離數據流傳輸路由器最近的路由器便會將這些數據封包進行複製,然後從這一請求多重傳播的埠大量地向下傳輸給提出申請 的主機。因此儘管每台提出請求的主機都可以接收到數據流,但由於這些請求並沒有傳輸到原始伺服器,而數據流也只在需要多重傳播的路由器上進行複製而不是在 原始伺服器上複製,因此可以節省整個網路的頻寬。

如果某一系統只能進行單播而不能進行多重傳播,那麼每個請求都必須返回到原始伺服器,然後單獨從原始伺服器獲得所需的數據 流。儘管在某種意義上來說這樣比較方便,例如主機可在從開始到結束的整個過程中的任一時候按自己的需要加入,但這種方法效率較低,而且並不節省網路資源。

 

IGMP多重傳播的實現

在IP多重傳播中,每台請求接收的PC都可以獲得所需的數據流,而網路本身則管理這些PC和客戶組。為了實現IGMP多重傳播,網路必須知道數據流在何處及何時進行複製。

 在IP多重傳播中,每台請求接收的PC都可以獲得所需的數據流,而網路本身則管理這些PC和客戶組。為了實現IGMP多重傳播,網路必須知道數據流在何處及何時進行複製。  

使用IGMP多重傳播時,發送器(原始伺服器)將數據流和附加資訊發送到離它最近,或在同一子網中的路由器。接收到資訊後,路由器製作一個符合D類IP地址定義的組目的地址(GDA)。

路由器隨後查看是否有終端機需要該多重傳播組。如果沒有,路由器便丟棄那些從發送器傳來的數據封包,不再繼續發送(見圖1)。

但是,如果有終端機希望接收這些數據流,即使這一終端機位於遠端網路中,路由器將執行下列步驟:

首先,接收器將一個專用多重傳播IP地址發送到其子網中的所有路由器,並申明它希望加入一個多重傳播組;

如果子網中的路由器找到了該多重傳播組,它開始將數據封包發送給提出請求的接收器。相反,如果路由器沒有找到IGMP組,它便向外發送資訊並開始找尋這個組;

透過與其它路由器通訊,最初發送請求的路由器便可找尋到這個多重傳播組。路由器之間的通訊基於各種IGMP使用的‘路由’協議,如多重傳播開放最短路徑優先(MOSPF)和距離向量多重傳播路由協議(DVMRP)。

當多重傳播組找到後,該路徑上的路由器便作為‘原始’路由器,發送或複製該數據流。
IGMP方案的最大好處在於節省了頻寬。如圖2所示,網路A中的遠端接收器從緊接原始路由器後的第一個路由器接收一個數據 流。支援IGMP第2版的原始路由器僅在需要複製的地方(本例中是在原始路由器後的第一個路由器)將這一數據流進行複製,而不是在原始路由器進行複製,因 此節省了頻寬。

目前使用的IGMP版本為第2版。IGMP第1版和第2版之間的主要差別在於如何從多重傳播組中去除終端機。第1版中規 定,即使接收器不再需要某個數據流,路由器仍繼續向該接收器發送數據流,並持續幾分鐘。在IGMP第1版中,當終端機希望停止接收數據流時,它無法告知路 由器。第2版則規定,接收器可發送資訊告知路由器,如果沒有其它接收器出現便可停止發送數據封包。因此,與第1版相較,第2版能節省更多的頻寬。


IGMP 網際網路組群管理協議(Internet Group Management Protocol)

IGMP是管理網路群組的通訊協定,主要利用IP堆疊實現多重傳播,其最大的好處在於解省整個網路的頻寬。 

網路堆疊有不同的層次構成,每一層只和相鄰的上、下層通訊,IGMP使用第2層與第3層通訊層,而其多重傳播的特性可在寬頻網路中有效的傳輸視訊流。 

基於IGMP協議,提出資料請求的主機都可以接收到數據流,但這些請求並不會傳輸到原始伺服器,數據流也只在需要多重傳播的路由器上進行複製,而不是在原始伺服器上複製,因而得以降低頻寬浪費的情況。 

現行的IGMP版本為第二版,與先前提出的第一版本間的差異在於如何從多重傳播組中去除終端機。換言之,第二版本的IGMP解省頻寬的效能更為卓著。


另可參考iT邦幫忙: http://ithelp.ithome.com.tw/question/10067356,這邊對於IGMP也寫得相當清楚

arrow
arrow
    文章標籤
    IGMP
    全站熱搜
    創作者介紹
    創作者 BENEVO 的頭像
    BENEVO

    BENEVO台灣部落格 之 科技應用。創新與分享

    BENEVO 發表在 痞客邦 留言(0) 人氣()