MLD(Multicast Listener Discovery)组播监听者发现协议,是经过ICMPv6报文传递(ICMPv6报文传递的有NDP和MLD协议。)。
MLD和IPv4网络中的IGMP功能相似,用于IPv6路由器发现其直连网段上组播监听者(Multicast Listener)、创建、维护组成员关系。
现有MLDv1和MLDv2两个版本,MLDv2在MLDv1的基础上增长了对SSM模型的支持。网络
MLD版本:
一、 MLDv1 版本(由 RFC 2710 定义),对应 IGMPv2。
二、 MLDv2 版本(由 RFC 3810 定义),对应 IGMPv3。
全部 MLD 版本都支持 ASM(Any-Source Multicast)模型。MLDv2 能够直接应用于 SSM(Source-Specific Multicast)模型,而 MLDv1 则须要 SSM-Mapping 技术的支持。并发
MLDv1查询器选举:
一、 全部 MLD 路由器在初始时都认为本身是查询器,并向本地网段内的全部主机和路由器发送 MLD 广泛组查询(General Query)报文(目的地址为 FF02::1)。
二、 本地网段中的其它 MLD 路由器在收到该报文后,将报文的源 IPv6 地址与本身的接口地址做比较。经过比较, IPv6 地址(link-local地址)最小的路由器将成为查询器,其它路由器成为非查询器(Non-Querier)。
三、 全部非查询器上都会启动一个定时器(即其它查询器存在时间定时器 Other Querier Present Timer)。在定时器超时前,若是收到了来自查询器的 MLD 查询报文,则重置该定时器;不然,就认为原查询器失效,并发起新的查询器选举过程。app
MLDv2的改进:
MLDv2 的原理与 MLDv1 基本相同,并新增了如下特性:
一、 对 IPv6 组播源的过滤。
二、 IPv6 组播组状态跟踪。
三、 接收者主机的状态侦听。ide
对 IPv6 组播源的过滤:
MLDv2 增长了针对 IPv6 组播源的过滤模式(INCLUDE/EXCLUDE),使主机在加入某 IPv6 组播组 G 的同时,可以明确要求接收或拒绝来自某特定 IPv6 组播源 S 的 IPv6 组播信息。接口