IGMP
接收者如何接收组播数据
接收者与路由器之间计划的数据
接收者先声明自己是哪个组的
路由器了解哪种组存在接收者
组播的管理工作机制
主机加入和离开
路由器维护组播
查询器选举(加入report 离开leave 路由器查询query)
成员报告抑制
IGMP
负责组播成员管理 运行在主机与路由器之间
主机测 通过IGMP向路由器起通告组成员关系
路由器测 通过IGMP协议维护组成员
IGMP1
定义了基本的成员查询和报告过程
路由器周期性查询成员关系 默认是60S
查询分主动,被动
被动发送:主机收到成员关系查询消息后 发送成员关系报告
主动发送:主机主动发送成员关系报告
工作机制
路由器周期性向子网内所有主机(224.0.0.1)发送成员关系查询
主机收到查询后发送报告表示希望加入哪个组
当路由器130S没收到成员报告 就会认为他离开了(130S是在路由器收到主机报告就开始计时)
响应抑制工作
假设一个子网有2个或以上对一个组感兴趣 只要其中一台主机发送了报告 其他主机就不会发送(注意主动报告不会被抑制)
查询器选举是依靠PIM的DR
IGMP2
在IGM1的基础上添加了查询器选举离开组的机制
从报文来看 IGMP2在1的基础上增加的最大响应时间和增加几种类型
最大响应时间默认是10秒(可以改在复杂的网络环境拥塞的网络建议改)特定查询默认是1S
工作机制
刚开始大家都会发一下普遍查询报文(查询器的选举(IP小的优))
当有主机离开时会发生一个离开报文当查询器收到了离开报文就会发生2次特定组查询 查询之后没收到成员报告就会认为该组没人了 (要是有人就会发送一个成员报告)
IGMP3
可以指定接收者或不接收某些组播源的报文
所有的IGMP都支持ASM模型
IGMP可以直接应用ssm模型 而IGMP2和1则需要SSM-Mapping技术支持
运行IGMP的高版本的路由器可以识别版本低的成员报告