关注公众号

关注公众号

手机扫码查看

手机查看

喜欢作者

打赏方式

微信支付微信支付
支付宝支付支付宝支付
×

MLD协议测试:网络测试仪实操(一)

2020.10.19

一、简介

1.MLD简介

MLD

· Multicast Listener Discovery Protocol

· 组播侦听者发现协议

功能

· 在终端主机和与其直接相邻的组播路由器之间建立/维护组播组成员关系

标准

· RFC2710: MLD, 1999.10

· RFC3810: MLDv2, 2004.06

其定义是:组播侦听者发现协议MLD(Multicast Listener Discovery)是负责IPv6组播成员管理的协议,用来在IPv6成员主机和与其直接相邻的组播路由器之间建立和维护组播组成员关系。MLD通过在成员主机和组播路由器之间交互MLD报文实现组成员管理功能,MLD报文封装在IPv6报文中。

在功能上:出现于IPv4时代的组播技术,有效解决了单点发送、多点接收的问题,实现了网络中点到多点的高效数据传送,能够大量节约网络带宽、降低网络负载。在IPv6网络中,组播技术的应用得到了进一步的丰富和加强。MLD可以理解为IGMP的IPv6版本,两者的协议行为完全相同,区别仅仅在于报文格式。

因此,MLD定义了一个IPv6网段内组播路由器与成员主机之间如何建立和维护组成员关系

2.IGMP与MLD

MLDv1的工作机制与IGMPv2相同,基于查询和响应机制完成对IPv6组播组成员的管理。MLDv2在MLDv1的基础上,增加的主要功能是成员主机可以指定接收或不接收某些组播源的报文。MLD两个版本在演进过程中对协议报文的处理是向前兼容的,即运行MLDv2的组播路由器可以识别MLDv1的协议报文。

image.png

这里,我们以MLDv1进行举例:

3.MLDv1工作原理

MLDv1主要基于查询和响应机制完成对IPv6组播组成员的管理

· 查询器选举机制

· 加入IPv6组播组机制

· 离开IPv6组播组机制

MLDv1包含四种报文

· 普遍组查询报文(General Query):查询器向共享网络上所有主机和路由器发送的查询报文,用于了解哪些组播组存在成员;

· 特定组查询报文(Multicast Address Specific Query):查询器向共享网段内指定组播组发送的查询报文,用于查询该组播组是否存在成员;

· 成员报告报文(Multicast Listener Report):主机向查询器发送的报告报文,用于申请加入某个组播组或者应答查询报文;

· 成员离开报文(Multicast Listener Done):主机离开组播组时主动向查询器发送的报文,用于宣告自己离开了某个组播组。

4.MLDv1:查询器选举机制

网段内有多个IPv6组播组路由器时,需要确定一台路由器作为查询器发送查询报文

· 所有Router都网络中发送MLD普遍查询报文;

· 收到其他router的普遍查询报文后,自行与自己的IPv6地址比较,地址最小的成为查询器;

· 所有非查询器上会启动一个定时器(Other Querier Present Timer)。在定时器超时前收到来自查询器的MLD查询报文,则重置该定时器;否则,认为查询器失效,并发起新的查询器选举。

image.png


推荐
关闭