如前所述,二層裝置上如果沒有部署組管理機制的話,它會像處理廣播那樣處理組播訊息。這不僅會增加某個子網中的流量,而且這些訊息還會傳送(泛洪)給這個子網中的所有裝置。而這些裝置對待組播訊息的處理方法可能並不統一,這要取決於作業系統和相關硬體的行為。組播訊息可以在硬體和/或軟體中進行處理。因此組播訊息,或者說有太多的組播訊息可能會給一台裝置帶來負面影響。工程師最好能在網路中對組播訊息進行管理,只把組播訊息傳送給希望接收它的裝置。
有兩種協議可以用來管理lan網段中的組播行為:cgmp(cisco組管理協議)和rgmp(路由器埠組管理協議)。雖然這兩種協議還都活躍在當今的網路中,但由於igmp探測(在接下來的小節中進行介紹)的關係,管理員通常都不使用它們。出於這種原因,我們只對這兩種協議進行簡要介紹。
要想解決二層裝置將組播訊息處理為廣播的問題,cisco 首先開發了乙個私有解決方案:cgmp(cisco組管理協議)。在開發這項協議時,二層交換機還不能實現三層資訊的監測或探測(如今可以了)。cgmp當時用於直連的路由器與交換機之間。路由器會使用cgmp向交換機傳送igmp訊息,說明哪些客戶端已註冊。接收到這個訊息的交換機就能根據這些訊息,決定從哪些介面向外傳送組播訊息。
cgmp的行為如下所示:當主機有意從某個gda(組目的位址)接收組播流時,它會傳送igmp報告訊息。路由器會收到這個訊息,然後路由器會向目的mac位址0x0100.0cdd.ddd,傳送cgmp snap(子網訪問協議)資料幀,其中攜帶以下資訊。
注釋由於和其他協議有衝突,比如hsrpv1,cgmp可能禁用了一些特性。工程師在啟用cgmp之前一定要檢視當前的配置指南。使用igmp探測可以輕鬆避免發生衝突。
cgmp離開過程
離開過程取決於主機上的igmp版本。igmpv1不提供這種機制,當主機不再希望接收某個組播流時,主機無法向網路中通知自己的意願。當igmpv1主機離開時,網路能夠意識到主機不再屬於這個組播流的唯一途徑,是通過igmp查詢訊息。想象當一台主機加入了乙個流,然後加入了另乙個,以此類推;久而久之會在網路中引入大量組播流。比如使用者**iptv時快速換台。為了解決這個問題,路由器需要周期性地傳送igmp查詢訊息,來確定是否仍有主機對某個組播流感興趣。如果在3次傳送出igmp查詢訊息後,路由器都沒有收到響應,它就會通過cgmp通知交換機,讓它刪除有關這個gda的全部條目。
igmpv2中新增了離開訊息;這樣當主機不想再接收某個組播流時,可以向網路中表達這種意願。當主機傳送了igmp離開訊息後,路由器會傳送查詢訊息並啟動查詢響應訊息計時器。這個過程是為了確認在這個網路中,是否還有主機對這個組播流感興趣。如果路由器沒有收到響應,它就會向交換機傳送cgmp訊息,讓交換機刪除與這個gda相關的條目。
與cgmp一樣,另乙個協議rgmp(路由器埠組管理協議)也是用來解決交換網路中路由器組播通訊的問題。當多個路由器連線在同乙個二層交換網路時,組播訊息會被**到所有pim(協議無關組播)路由器,包括那些並不希望接收組播流的路由器。
rgmp是和igmp探測特性(2.10節就會介紹igmp探測特性)一起配置在交換機上的。連線交換機的路由器上配置了pim稀疏模式和rgmp。配置了rgmp的路由器會向直連交換機傳送rgmp hello訊息。交換機上會建立乙個條目,表明收到rgmp hello訊息的介面連線著rgmp路由器,並且只有當從這台路由器那裡收到加入訊息後,交換機才會向這個介面**組播流。如果路由器希望接收某個組播流,它就會向交換機傳送rgmp加入訊息,其中包含相應的gda。然後交換機會為這個gda建立乙個條目,然後關聯cam表中的路由器介面。
我們已經提到了4種rgmp訊息型別中的2種:「hello」和「加入」。另2個訊息型別是「bye」和「離開」。「bye」rgmp訊息告訴交換機,將指定介面放入普通的**模式。最後當路由器無意接收某個組播後,它會發出「離開」訊息。
《IP組播(第1卷)》一2 13 總結
ip網路中的裝置之間要想實現通訊,必須能夠處理或封裝osi參考模型中每一層的資料。資料報是由mac位址 ip位址 埠號和其他必要資訊組成的。二層組播對於mac位址,以及如何將ip位址對映為mac位址有獨特的需求。在對映過程中,ip位址中有5位元與oui mac位址重疊,這也導致組播ip位址與組播ma...
《IP組播(第1卷)》一2 4 組的註冊
前文我們已經看到了,為了使本地網段和整個網路中的 ip 組播 能夠正常工作,交換機和閘道器路由器需要知道有哪些主機對組播組感興趣,以及這些主機都連線在 如果沒有這些資訊的話,唯一的做法只有在整個網路域中泛洪組播資料幀。這樣做就破壞了使用 ip組播帶來的好處。主機組成員的註冊和離開是個動態的過程。當有...
《IP組播(第1卷)》一2 3 組播資料幀的交換
二層交換機會根據目的mac位址將資料幀傳送到物理介面或邏輯介面。組播mac位址與單播mac位址是不同的,因為單播mac位址應該是唯一的,它應該對應著唯一乙個目的介面。組播mac位址可能會對應著多個目的介面,這取決於有多少臺裝置請求接收這個ip組播流中的內容。在二層交換機能夠 組播資料幀之前,它必須知...