IGMP、IGMP-SNOOPING工作状态机流程图及报文交换流程
IGMP(Internet Group Management Protocol)是一种TCP/IP协议族中负责IP组播成员管理的协议,用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。IGMP有三个版本:IGMPv1、IGMPv2和IGMPv3。
**IGMPv1**
IGMPv1是由RFC1112定义的,报文格式包含版本、类型、校验和、组地址四个字段。IGMPv1的工作机制流程图包括组成员加入过程、查询与响应过程、抑制机制和组成员离开过程。
在组成员加入过程中,主机发送成员加入报告给组播组。路由器周期性地向子网内所有主机发送成员关系查询信息,主机收到IGMP成员关系查询信息后,首先向组播组发送IGMP成员关系报告。组的其他成员监听到报告后抑制自己的成员关系报告发送。
在查询与响应过程中,路由器周期性地向子网内所有主机发送成员关系查询信息,主机收到IGMP成员关系查询信息后,启动一个倒计数报告计时器。计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地址。
在抑制机制中,当主机收到IGMP成员关系查询时,对它已经加入的每个组播组启动一个倒计数报告计时器。其它主机收到该成员关系报告,则抑制成员关系报告的发送,并删除计时器。
在组成员离开过程中,主机“默不作声”地离开组,不发送报告。路由器发送成员关系查询信息,路由器没有收到该组的IGMP报告,则再发送成员关系信息(3次查询周期过后)。组播组超时,剪枝。
**IGMPv2**
IGMPv2是由RFC2236定义的,相比IGMPv1,IGMPv2增加了查询器选择过程和离开机制流程图。查询器选择过程中,路由器周期性地向子网内所有主机发送成员关系查询信息,主机收到IGMP成员关系查询信息后,启动一个倒计数报告计时器。计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地址。
**IGMPv3**
IGMPv3是由RFC3376定义的,相比IGMPv2,IGMPv3增加了携带源地址的查询报文和包含多组记录的报告报文。IGMPv3工作机制流程图包括携带源地址的查询报文、包含多组记录的报告报文和IGMPv3工作机制流程图。
**IGMP SNOOPING**
IGMP Snooping是一种基于交换机的IGMP代理技术,可以实现组播流量的控制和过滤。IGMP Snooping基本概念包括查询模块、加入模块、离开报文模块和定时器超时模块。IGMP Snooping工作机制流程图包括查询模块、加入模块、离开报文模块和定时器超时模块。
在IGMP和IGMP Snooping都是重要的组播技术,可以实现组播流量的控制和过滤。但是,IGMP和IGMP Snooping的工作机制流程图非常复杂,需要深入了解IGMP和IGMP Snooping的原理和机制。