互連網組管理協議IGMP(Internet Group Management Protocol)是TCP/IP協議族中負責IPv4組播成員管理的協議,允許主機動態加入或離開組播組,簡化了組播網路的部署和管理。轉寄路由器已支援IGMP協議,使用轉寄路由器建立組播網路時,您無需再手動指定組播源和組播成員,轉寄路由器可以根據IGMP協議互動動態添加和刪除群組播源和組播成員,方便您快速將多個VPC下的資源添加或移除進組播網路,協助您提高組播網路的管理和部署效率。
IGMP方式公測中,僅針對白名單使用者開放。
應用情境
使用IGMP功能支援在同地區的VPC之間建立組播網路。如果您需要在跨地區的VPC之間建立組播網路,則需要通過靜態方式將跨地區的資源加入到組播組中。
在同地區VPC之間建立組播網路(IGMP方式)
在跨地區VPC之間建立組播網路(聯合使用IGMP方式和靜態方式)
使用限制
轉寄路由器使用任意源組播模型(Any-Source Multicast),不支援指定源組播模型(Source-Specific Multicast),建議不要在主機應用上配置任何源過濾行為。
轉寄路由器使用IGMPv2版本,支援接收IGMPv3加入(JOIN)和離開(LEAVE)訊息。
如果轉寄路由器接收到主機的IGMPv3加入(JOIN)訊息,會自動回複IGMPv2查詢(QUERY)訊息,此時主機會回退到IGMPv2行為。
使用IGMP方式建立組播網路時,需要為組播域開啟IGMP功能:
如果一個組播域未開啟IGMP功能,則僅支援靜態建立組播源和組播成員。
如果一個組播域開啟了IGMP功能,則同時支援使用靜態方式和IGMP方式建立組播源和組播成員。
如果一個主機先被手動指定為組播成員,後續該主機又通過IGMP方式加入到該組播組,則IGMP方式不生效,該主機依舊會被認定為靜態指定的組播成員。如果該主機先通過IGMP方式加入組播組,則該主機不支援再被手動指定為組播源或組播成員。
為組播域開啟IGMP功能後,不支援關閉。
轉寄路由器IGMP工作機制
支援IGMPv2的主機通過發送多個IGMP加入(JOIN)訊息(通常會有2到3次重試)加入一個組播組。如果所有的IGMP加入(JOIN)訊息均丟失(這種情況不太可能發生),主機將無法成功加入組播組。在這種情況下,您需要在主機上使用應用程式特定的方法重新觸發IGMP加入(JOIN)訊息。
轉寄路由器將從接收到主機的IGMPv2加入(JOIN)訊息開始,持續跟蹤該主機,在接收到該主機的IGMPv2離開(LEAVE)訊息後會停止跟蹤該主機。作為組播路由器, 轉寄路由器每兩分鐘向所有組播成員發出一次IGMPv2查詢(QUERY)訊息,每個組播成員需回應一個IGMPv2加入(JOIN)訊息來更新群組播成員資格。如果一個組播成員連續三次未回複,轉寄路由器會將其從組播組中移除。如果轉寄路由器明確收到了組播成員發送的IGMPv2離開(LEAVE)訊息,則會立即將主機從任何進一步的組播處理中移除。
轉寄路由器向所有IGMP成員發送組播成員資格查詢資料包,以便跟蹤組播成員資格。如果IGMP主機上配置了安全性群組規則或存取控制策略,需允許IGMP協議訊息通過。
主機通過IGMP協議成功加入組播組後,在轉寄路由器下這個主機會同時成為這個組播組下的組播源和組播成員。