Aller au contenu principal

2. Overview of the Protocol

The Multicast Listener Discovery (MLD) protocol is used by an IPv6 router to discover the presence of multicast listeners on its directly attached links, and to discover specifically which multicast addresses are of interest to those neighboring nodes. MLDv2 is an asymmetric protocol, specifying different behaviors for multicast listeners (hosts or routers) and multicast routers.

Le protocole Multicast Listener Discovery (MLD) est utilisé par un routeur IPv6 pour découvrir la présence d'auditeurs multicast sur ses liens directement rattachés, et pour découvrir spécifiquement quelles adresses multicast intéressent ces nœuds voisins. MLDv2 est un protocole asymétrique, spécifiant des comportements différents pour les auditeurs multicast (hôtes ou routeurs) et les routeurs multicast.

2.1. Building Blocks

The protocol is built on two types of messages:

Le protocole repose sur deux types de messages :

  1. Multicast Listener Query (Query): Sent by multicast routers to query the multicast reception state of neighboring interfaces.

    Multicast Listener Query (Query) : Envoyé par les routeurs multicast pour interroger l'état de réception multicast des interfaces voisines.

  2. Multicast Listener Report (Report): Sent by multicast listeners to report their current multicast reception state.

    Multicast Listener Report (Report) : Envoyé par les auditeurs multicast pour signaler leur état actuel de réception multicast.

2.2. Protocol Operations

The basic operation of MLDv2 is as follows:

Le fonctionnement de base de MLDv2 est le suivant :

  • Multicast routers use MLDv2 to determine which multicast addresses have listeners on their attached links.

    Les routeurs multicast utilisent MLDv2 pour déterminer quelles adresses multicast ont des auditeurs sur leurs liens rattachés.

  • Multicast listeners use MLDv2 to report their interest in receiving multicast packets for specific multicast addresses.

    Les auditeurs multicast utilisent MLDv2 pour signaler leur intérêt pour la réception de paquets multicast pour des adresses multicast spécifiques.

  • Routers maintain a state for each attached link, indicating which multicast addresses have listeners and, for MLDv2, which source addresses are of interest.

    Les routeurs maintiennent un état pour chaque lien rattaché, indiquant quelles adresses multicast ont des auditeurs et, pour MLDv2, quelles adresses source présentent un intérêt.

  • When a router receives a Report from a listener, it updates its state.

    Lorsqu'un routeur reçoit un rapport d'un auditeur, il met à jour son état.

  • When a router receives a multicast packet, it forwards the packet to all links that have listeners for that packet's destination address (and source address, if applicable).

    Lorsqu'un routeur reçoit un paquet multicast, il transmet le paquet à tous les liens qui ont des auditeurs pour l'adresse de destination (et l'adresse source, le cas échéant) de ce paquet.

2.3. MLDv2 Improvements

MLDv2 improves upon MLDv1 by adding support for Source-Specific Multicast (SSM). In MLDv1, a listener could only report interest in a group address (G). In MLDv2, a listener can report interest in a specific source (S) sending to a group (G), denoted as (S,G). This allows the network to optimize multicast delivery trees and prevent denial-of-service attacks from unwanted sources.

MLDv2 améliore MLDv1 en ajoutant la prise en charge du Source-Specific Multicast (SSM). Dans MLDv1, un auditeur ne pouvait signaler son intérêt que pour une adresse de groupe (G). Dans MLDv2, un auditeur peut signaler son intérêt pour une source spécifique (S) envoyant à un groupe (G), noté (S,G). Cela permet au réseau d'optimiser les arbres de distribution multicast et d'empêcher les attaques par déni de service provenant de sources indésirables.