Description
Multicast Listener Discovery (MLD) is a component of the IPv6 protocol suite, derived from the Internet Group Management Protocol (IGMP) for IPv4. It operates between an IPv6 router and the hosts on its directly connected links. The primary function of MLD is to allow the router to discover the presence of multicast listeners—hosts that wish to receive packets destined for specific IPv6 multicast addresses—and to determine which multicast addresses are of interest on each of its attached links. This discovery process is crucial for building the necessary state to forward multicast traffic efficiently, ensuring packets are only sent onto links where there are interested receivers.
MLD operates through the exchange of query and report messages. The router, acting as a multicast querier, periodically sends General Query messages to the link-local all-nodes multicast address (FF02::1) to solicit membership information. Hosts respond by sending Multicast Listener Report messages for each multicast group they wish to join, indicating their interest to the querier. When a host leaves a group, it may send a Multicast Listener Done message (in MLDv1) or a specific Report (in MLDv2) to inform the router. The router maintains a timer for each multicast group on each interface; if no reports are received before the timer expires, the router assumes no listeners are present and stops forwarding traffic for that group onto the link.
The protocol exists in two versions: MLDv1 (specified in RFC 2710) and MLDv2 (specified in RFC 3810). MLDv1 provides basic functionality analogous to IGMPv2, supporting group membership reporting and leaving. MLDv2 introduces source filtering, allowing hosts to report interest in receiving traffic only from specific source addresses (INCLUDE mode) or from all sources except specific ones (EXCLUDE mode). This provides support for Source-Specific Multicast (SSM). Within 3GPP architectures, MLD is relevant for IP-based services, particularly in the context of IP Multimedia Subsystem (IMS) and multicast service delivery over mobile networks, where efficient group management is vital for services like mobile TV or group communications.
Purpose & Motivation
MLD was created to address the need for efficient multicast group management in IPv6 networks. As IPv6 deployment grew, the limitations of using IPv4-centric protocols like IGMP became apparent, necessitating a native IPv6 solution. Multicast is a bandwidth-efficient method for delivering the same content to multiple receivers, but it requires a mechanism for routers to dynamically learn which hosts are interested in which multicast groups on each network segment. Without such a mechanism, routers would either flood multicast traffic to all links (wasting bandwidth) or require static configuration (which is inflexible and non-scalable).
MLD solves the problem of dynamic multicast listener discovery, enabling 'subscribe-and-receive' semantics for IP multicast. This is fundamental for scalable one-to-many and many-to-many communication services. In the context of 3GPP networks, the adoption of all-IP architectures, especially with the introduction of the IP Multimedia Subsystem (IMS) in Release 5, made efficient IP multicast management a critical requirement for delivering multimedia broadcast/multicast services (MBMS) and other group-based applications over mobile bearer networks. MLD provides the standardized, protocol-level mechanism to facilitate this.
Key Features
- Dynamic discovery of IPv6 multicast listeners on a network link
- Exchange of query, report, and done messages between routers and hosts
- Support for both any-source multicast (ASM) and source-specific multicast (SSM) models in MLDv2
- Source filtering capability allowing hosts to specify desired source addresses
- Router-side maintenance of multicast listening state with timers
- Protocol operation independent of the multicast routing protocol used in the network core
Evolution Across Releases
Introduced MLD support within 3GPP specifications, primarily for IPv6-based services. This initial inclusion provided the protocol mechanisms for multicast listener discovery in the context of IP connectivity access network (IP-CAN) bearers, enabling basic multicast service capabilities for early MBMS and IMS deployments.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.316 | 3GPP TS 23.316 |
| TS 23.846 | 3GPP TS 23.846 |
| TS 26.802 | 3GPP TS 26.802 |
| TS 29.060 | 3GPP TS 29.060 |
| TS 29.061 | 3GPP TS 29.061 |