日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Internet組管理協(xié)議 IGMP報文及協(xié)議

【Internet組管理協(xié)議 IGMP報文及協(xié)議】
13.1 引言
12.4節(jié)概述了IP多播給出,并介紹了D類IP地址到以太網(wǎng)地址的映射方式 。也簡要說明了在單個物理網(wǎng)絡(luò)中的多播過程,但當涉及多個網(wǎng)絡(luò)并且多播數(shù)據(jù)必須通過路由器轉(zhuǎn)發(fā)時,情況會復雜得多 。
本章將介紹用于支持主機和路由器進行多播的Internet組治理協(xié)議(IGMP) 。它讓一個物理網(wǎng)絡(luò)上的所有系統(tǒng)知道主機當前所在的多播組 。多播路由器需要這些信息以便知道多播數(shù)據(jù)報應(yīng)該向哪些接口轉(zhuǎn)發(fā) 。IGMP在RFC 1112中定義[Deering 1989] 。
正如ICMP一樣, IGMP 也被當作IP 層的一部分 。IGMP報文通過IP數(shù)據(jù)報進行傳輸 。不像我們已經(jīng)見到的其他協(xié)議, IGMP有固定的報文長度,沒有可選數(shù)據(jù) 。圖13-1顯示了IGMP報文如何封裝在IP數(shù)據(jù)報中 。

IGMP報文通過IP首部中協(xié)議字段值為2來指明 。
13.2 IGMP報文
圖1 3 - 2顯示了長度為8字節(jié)的IGMP報文格式 。

這是版本為1的IGMP 。IGMP類型為1說明是由多播路由器發(fā)出的查詢報文,為2說明是主機發(fā)出的報告報文 。檢驗和的計算和ICMP協(xié)議相同 。
組地址為D類IP地址 。在查詢報文中組地址設(shè)置為0,在報告報文中組地址為要參加的組地址 。在下一節(jié)中,當介紹IGMP如何操作時,我們將會更具體地了解它們 。
13.3 IGMP 協(xié)議
13.3.1 加入一個多播組
多播的基礎(chǔ)就是一個進程的概念(使用的術(shù)語進程是指操作系統(tǒng)執(zhí)行的一個程序),該進程在一個主機的給定接口上加入了一個多播組 。在一個給定接口上的多播組中的成員是動態(tài)的—它隨時因進程加入和離開多播組而變化 。
這里所指的進程必須以某種方式在給定的接口上加入某個多播組 。進程也能離開先前加入的多播組 。這些是一個支持多播主機中任何API所必需的部分 。使用限定詞“接口”是因為多播組中的成員是與接口相關(guān)聯(lián)的 。一個進程可以在多個接口上加入同一多播組 。
Stanford大學伯克利版Unix中的IP 多播具體說明了有關(guān)socket API的變化,這些變化在Solaris 2.x和ip(7)的文檔中也提供了 。
這里暗示一個主機通過組地址和接口來識別一個多播組 。主機必須保留一個表,此表中包含所有至少含有一個進程的多播組以及多播組中的進程數(shù)量 。
13.3.2 IGMP 報告和查詢
多播路由器使用IGMP報文來記錄與該路由器相連網(wǎng)絡(luò)中組成員的變化情況 。使用規(guī)則如下:
1) 當?shù)谝粋€進程加入一個組時,主機就發(fā)送一個IGMP報告 。假如一個主機的多個進程加入同一組,只發(fā)送一個IGMP報告 。這個報告被發(fā)送到進程加入組所在的同一接口上 。
2) 進程離開一個組時,主機不發(fā)送IGMP報告,即便是組中的最后一個進程離開 。主機知道在確定的組中已不再有組成員后,在隨后收到的IGMP查詢中就不再發(fā)送報告報文 。
3) 多播路由器定時發(fā)送IGMP查詢來了解是否還有任何主機包含有屬于多播組的進程 。多播路由器必須向每個接口發(fā)送一個IGMP查詢 。因為路由器希望主機對它加入的每個多播組均發(fā)回一個報告,因此IGMP查詢報文中的組地址被設(shè)置為0 。
4) 主機通過發(fā)送IGMP報告來響應(yīng)一個IGMP查詢,對每個至少還包含一個進程的組均要發(fā)回IGMP報告 。
使用這些查詢和報告報文,多播路由器對每個接口保持一個表,表中記錄接口上至少還包含一個主機的多播組 。當路由器收到要轉(zhuǎn)發(fā)的多播數(shù)據(jù)報時,它只將該數(shù)據(jù)報轉(zhuǎn)發(fā)到(使用相應(yīng)的多播鏈路層地址)還擁有屬于那個組主機的接口上 。
圖1 3 - 3顯示了兩個IGMP報文,一個是主機發(fā)送的報告,另一個是路由器發(fā)送的查詢 。該路由器正在要求那個接口上的每個主機說明它加入的每個多播組 。

推薦閱讀