IGMPv1的工作原理
概述介绍

IGMPv1 主要基于 Query 和 Report 机制完成组播组管理。在网络中,大致工作过程如下:
1)组播路由器被称为 IGMP Querier(Querier 查询器),向共享网络上所有主机和路由器发送的 Membership Query(普遍组查询报文)查询,用于查询哪些组播组存在成员。
2)主机向 IGMP Querier 发送的 Membership Report(成员关系报告报文)报文,用于申请加入某个组播组或者应答查询报文;
通过 Query 与 Report 报文,IGMP Querier 可以解到该网段内哪些组播组存在成员。
查询器和非查询器均能收到成员关系报告(目的地址 224.0.0.1),因此均能形成 IGMP Route Table 与 IGMP Group Table;
查询器选举机制
由于 Memebership Query 报文是组播报文,所以在多路访问网络中只需要一个 IGMP Querier 发送查询报文,即可查询所有组成员的加组信息。
IGMPv1 没有基于 IGMP 的查询器选举机制,所以需要依赖组播路由协议(PIM)进行 IGMP Querier 选举。IGMPv1将组播路由协议(PIM)选举出唯一的组播信息转发者(Assert Winner 或 DR,用于转发组播流量)作为 IGMPv1 的查询器,负责该网段的组成员关系查询。

组成员加组机制
在初始时,IGMPv1 组成员将主动发送 IGMPv1 Memebership Report 报文,来加组。
组成员探测机制
当网络稳定后,IGMP Querier 需要了解网络内是否有存活组播成员。
IGMPv1 组成员存活的基本流程如下:
IGMP Querier 发送目的地址为 224.0.0.1(表示同一网段内所有主机和路由器)的普遍组查询报文;普遍组查询报文是周期性发送的(默认每 60 秒发送,可通过命令配置)。
收到该 Query 报文的 Membership 启动定时器。该示例的 Membership-1 和 Membership-2 是 Multicast-Group-G1 的成员,则在本地启动定时器 Timer-G1(缺省情况下,定时器的范围为 0s~10s 间的随机值)。首个定时器超时的组成员,将发送针对该组的报告报文。
IGMP Querier 接收到 Membership-1 的报告报文后,了解到在本网段的 Multicast-Group-G1 中存在成员,则由生成 IGMP Group Table 与 IGMP Route Table((*, G),“*”代表任意组播源)。而后在网络中一旦有组播组 Multicast-Group-G1 的数据到达路由器,将向该网段转发。
抑制 Membership Report 报文(定时器)
1)Membership-1 和 Membership-2 是 Multicast-Group-G1 的成员,当收到 Membership Query 报文后,则分别在本地启动 Timer-G1 定时器。
2)假设 Membership-1 上的 Timer-G1 先超时,则 Membership-1 向该网段发送目的地址为 G1 的报告报文。
3)也想加入 Multicast-Group-G1 的 Membership-2 收到此报告报文,则停止 Timer-G1 定时器,不再发送针对 G1 的 Report 报文;
通过这种即使,这样 Report 报文被抑制,能够减少网段上的流量。
注意事项:实际场景,PC 的抑制机制不一定生效,取决于终端的实现方式;
组成员离组机制
IGMPv1 没有专门定义离开组消息,
1)当所有组播组成员离开组播组时,将不会存在响应 Query 报文的设备;
2)IGMP Querier 不会收到特定组成员的报告报文,则在一定时间(缺省值为130s,2 * 查询时间 + 10s)后,删除特定组所对应的组播转发表项。
The post 「IGMPv1」- 工作原理 appeared first on K4NZ BLOG.
随机文章
关键词排名优化网站内容优化
GEO培训
SEO小小课堂网
SEO教程
站长导航
搜素引擎算法
关键词排名优化
百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:用户投稿,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/199043.html

微信扫一扫
支付宝扫一扫