1、二层组播协议介绍贡嘎仁青贡嘎仁青 RCYF-1904u组播概述uIGMP SNOOPINGuIGMP PROXYu组播VLAN uFAQ内容概要组播概述所有的通信流都以下列方式之一传输:所有的通信流都以下列方式之一传输:单播、广播和组播单播、广播和组播组播传输:数据源只发送一份数据信息给一个特殊的地址,组播传输:数据源只发送一份数据信息给一个特殊的地址,该地址则代表多个用户该地址则代表多个用户组播概述组播地址:组播地址:IP 组播地址、组播地址、MAC组播地址组播地址IANA规定规定IPV4组播地址:组播地址:224.0.0.0239.255.255.255IANA规定规定IPV4MAC组播地
2、址:组播地址:组播组播MAC地址的高地址的高 24位为位为 0 x01005E,第,第 25位为位为 0,低,低 23位为位为IPv4组播地址的低组播地址的低 23位位组播概述IP组播地址映射到组播地址映射到MAC组播地址:组播地址:IGMP SNOOPINGIGMP SNOOPING 是是 Internet Group Management Protocol Snooping(互联网组管理协议窥探)的简称,它是运行在二层设备上(互联网组管理协议窥探)的简称,它是运行在二层设备上的组播约束机制,用于管理和控制组播组。的组播约束机制,用于管理和控制组播组。IGMP SNOOPING 简介:简介:
3、运行运行 IGMP Snooping的二层设备通过对收到的的二层设备通过对收到的 IGMP报文进行分析,报文进行分析,为端口和为端口和 MAC组播地址建立起映射关系,并根据这样的映射关系转发组播地址建立起映射关系,并根据这样的映射关系转发组播数据。组播数据。IGMP SNOOPING 原理:原理:IGMP SNOOPING类型字段:组播消息类型类型字段:组播消息类型最长响应时间:群组成员计算的最大随机时延间隔,单位为最长响应时间:群组成员计算的最大随机时延间隔,单位为0.1秒。默认的最大秒。默认的最大值为值为10秒秒校验和:报文校验和,计算方法与校验和:报文校验和,计算方法与ICM校验和相同。
4、校验和相同。组地址:组播组地址组地址:组播组地址组地址0 7 15 31校验和最长响应时间类型IGMP SNOOPINGIGMP SNOOPINGIGMP SNOOPING 相关的端口概念:相关的端口概念:路由器端口:交换机上朝向三层组播设备一侧的端口,交换机将本设备上路由器端口:交换机上朝向三层组播设备一侧的端口,交换机将本设备上的所有路由器端口都记录在路由器端口列表中。(在运行了的所有路由器端口都记录在路由器端口列表中。(在运行了 IGMP Snooping的交换机上,所有收到源地址不为的交换机上,所有收到源地址不为 0.0.0.0的的 IGMP普遍组查询普遍组查询报文或报文或PIM He
5、llo报文的端口都将被视为动态路由器端口)报文的端口都将被视为动态路由器端口)成员端口:又称组播组成员端口,表示交换机上朝向组播组成员一侧的端成员端口:又称组播组成员端口,表示交换机上朝向组播组成员一侧的端口。交换机将本设备上的所有成员端口都记录在口。交换机将本设备上的所有成员端口都记录在 IGMP Snooping转发表转发表中。中。IGMP SNOOPINGIGMP SNOOPING动态端口老化定时器动态端口老化定时器IGMP SNOOPINGIGMP SNOOPING工作机制:工作机制:普遍组查询普遍组查询IGMP查询器定期向本地网段内的所有主机与路由器(查询器定期向本地网段内的所有主机
6、与路由器(224.0.0.1)发送)发送 IGMP普遍组查询报文,以查询该网段有哪些组播组的成员。普遍组查询报文,以查询该网段有哪些组播组的成员。在收到在收到 IGMP普遍组查询报文时,交换机将其通过普遍组查询报文时,交换机将其通过 VLAN内除接收端口以外内除接收端口以外的其它所有端口转发出去,并对该报文的接收端口做如下处理:的其它所有端口转发出去,并对该报文的接收端口做如下处理:1.如果在路由器端口列表中已包含该动态路由器端口,则重置其老化定时器。如果在路由器端口列表中已包含该动态路由器端口,则重置其老化定时器。2.如果在路由器端口列表中尚未包含该动态路由器端口,则将其添加到路由如果在路由
7、器端口列表中尚未包含该动态路由器端口,则将其添加到路由器端口列表中,并启动其老化定时器。器端口列表中,并启动其老化定时器。IGMP SNOOPING以下情况以下情况,主机会向,主机会向 IGMP查询器发送查询器发送 IGMP成员关系报告报文:成员关系报告报文:1.当组播组的成员主机收到当组播组的成员主机收到 IGMP查询报文后,查询报文后,如果要加入会回复如果要加入会回复 IGMP成成员关系报告报文。员关系报告报文。2.如果主机要加入某个组播组,它会主动向如果主机要加入某个组播组,它会主动向 IGMP 查询器发送查询器发送 IGMP 成员关成员关系报告报文以声明加入该组播组。系报告报文以声明加
8、入该组播组。IGMP SNOOPING工作机制:工作机制:报告成员关系报告成员关系IGMP SNOOPINGIGMP SNOOPING工作机制:工作机制:成员关系报文成员关系报文在收到在收到 IGMP成员关系报告报文时,交换机将其通过成员关系报告报文时,交换机将其通过 VLAN内的所有路由器内的所有路由器端口转发出去,从该报文中解析出主机要加入的组播组地址,并对该报文的端口转发出去,从该报文中解析出主机要加入的组播组地址,并对该报文的接收端口做如下处理:接收端口做如下处理:1.如果不存在该组播组所对应的转发表项,则创建转发表项,将该端口作为如果不存在该组播组所对应的转发表项,则创建转发表项,将
9、该端口作为动态成员端口添加到出端口列表中,并启动其老化定时器;动态成员端口添加到出端口列表中,并启动其老化定时器;2.如果已存在该组播组所对应的转发表项,但其出端口列表中不包含该端口,如果已存在该组播组所对应的转发表项,但其出端口列表中不包含该端口,则将该端口作为动态成员端口添加到出端口列表中,并启动其老化定时器;则将该端口作为动态成员端口添加到出端口列表中,并启动其老化定时器;3.如果已存在该组播组所对应的转发表项,且其出端口列表中已包含该动如果已存在该组播组所对应的转发表项,且其出端口列表中已包含该动态成员端口,则重置其老化定时器。态成员端口,则重置其老化定时器。IGMP SNOOPING
10、IGMP SNOOPING工作机制:工作机制:离开组播组离开组播组运行运行 IGMPv1的主机离开组播组时不会发送的主机离开组播组时不会发送 IGMP离开组报文,因此交换机离开组报文,因此交换机无法立即获知主机离开的信息。但是,由于主机离开组播组后不会再发送无法立即获知主机离开的信息。但是,由于主机离开组播组后不会再发送 IGMP成员关系报告报文,因此当其对应的动态成员端口的老化定时器超时成员关系报告报文,因此当其对应的动态成员端口的老化定时器超时后,交换机就会将该端口对应的转发表项从转发表中删除。后,交换机就会将该端口对应的转发表项从转发表中删除。运行运行 IGMPv2或或 IGMPv3的主
11、机离开组播组时,会通过发送的主机离开组播组时,会通过发送 IGMP离开组报离开组报文,以通知组播路由器自己离开了某个组播组。文,以通知组播路由器自己离开了某个组播组。IGMP SNOOPING当交换机从某动态成员端口上收到当交换机从某动态成员端口上收到 IGMP离开组报文时,首先判断要离开离开组报文时,首先判断要离开的组播组所对应的转发表项是否存在,以及该组播组所对应转发表项的出端的组播组所对应的转发表项是否存在,以及该组播组所对应转发表项的出端口列表中是否包含该接收端口:口列表中是否包含该接收端口:1.如果不存在该组播组对应的转发表项,或者该组播组对应转发表项的出端如果不存在该组播组对应的转
12、发表项,或者该组播组对应转发表项的出端口列表中不包含该端口,交换机不会向任何端口转发该报文,而将其直接丢口列表中不包含该端口,交换机不会向任何端口转发该报文,而将其直接丢弃;弃;2.如果存在该组播组对应的转发表项,且该组播组对应转发表项的出端口列如果存在该组播组对应的转发表项,且该组播组对应转发表项的出端口列表中包含该端口,交换机会将该报文通过表中包含该端口,交换机会将该报文通过 VLAN 内的所有路由器端口转发内的所有路由器端口转发出去。同时,由于并不知道该接收端口下是否还有该组播组的其它成员,所出去。同时,由于并不知道该接收端口下是否还有该组播组的其它成员,所以交换机不会立刻把该端口从该组
13、播组所对应转发表项的出端口列表中删除,以交换机不会立刻把该端口从该组播组所对应转发表项的出端口列表中删除,而是重置其老化定时器。而是重置其老化定时器。IGMP SNOOPING工作机制:工作机制:离开组报文离开组报文IGMP PROXYIGMP PROXY组播VLAN组播VLANFAQ什么是组播什么是组播MAC地址?地址?IEEE规定规定48位比特最高字节的最后一位为位比特最高字节的最后一位为1的的MAC地址为组播地址为组播MAC地址地址IANA规定组播规定组播MAC地址的高地址的高 24位为位为 0 x01005E,第,第 25位为位为 0,低,低 23位为位为IPv4组播地址的低组播地址的低 23位位IGMP SNOOPING 和和IGMP PROXY的区别?的区别?FAQIGMP SNOOPING模式下测试仪端口为什么抓不到主机发送的模式下测试仪端口为什么抓不到主机发送的report和和leave报文?报文?