La multidiffusion (multicast) en IPv6
Une adresse multicast ne désigne pas une interface mais un ensemble d’interfaces.
Un couple (adresse multicast, numéro de port) désigne un groupe multicast ou bien encore un groupe de multidiffusion.
Lorsqu’une application s’abonne à un groupe de multidiffusion elle reçoit toutes les données émises par tous les membres du groupe et à l’inverse lorsqu’elle émet des données à destination de ce groupe tous les membres du groupe reçoivent ces données.
Le multicast est donc une technologie tout à fait adaptée à un contexte de diffusion de groupe comme c’est le cas pour la visioconférence.
En multicast, lorsqu’une source émet des données à destination d’un groupe les équipements réseau concernés répliquent les données de telle sorte que toutes les stations membres de ce groupe reçoivent une copie de ces données. Prenons l’exemple suivant : une source émet de la vidéo et 4 ordinateurs (C1, C2, C3 et C4) veulent recevoir le flux vidéo. Sur le schéma de gauche nous pouvons observer la transmission des paquets en unicast et sur le schéma de droite nous pouvons observer la transmission des paquets en multicast.
L’utilisation du multicast permet donc de réaliser une économie de bande passante puisqu’un seul exemplaire des données est émis par la source.
Concernant les protocoles de routage utilisés par le multicast, on peut considérer deux niveaux distincts : les protocoles au niveau intra-domaine et les protocoles au niveau interdomaine. Au niveau intra-domaine on a encore deux types de protocoles : les protocoles au niveau lien local et les protocoles au niveau inter-liens.
Protocoles de routage au niveau local
Au niveau local, le protocole de routage utilisé pour le multicast IPv6 est MLD (Multicast Listener Discovery, découverte de récepteurs multidiffusion) qui remplace le protocole IGMPv2 (Internet Group Management Protocol version 2, protocole de gestion de groupes version 2) d’IPv4. Ce protocole permet aux ordinateurs de rendre compte aux routeurs de sortie de leur réseau de leur appartenance à un groupe multicast. Les applications utilisent donc MLD pour s’abonner ou se désabonner à un groupe multicast. Les messages IGMPv3 sont véhiculés dans des paquets ICMPv6 (Internet Control Message Protocol, protocole de message de contrôle Internet pour IPv6). Sur chaque réseau un routeur est élu par un mécanisme d’élection et ce sera lui qui traitera les appartenances des ordinateurs aux différents groupes multicast.
Protocoles de routage inter-liens
Les réseau locaux qui supportent le multicast peuvent se grouper en domaines afin d’échanger entre eux du trafic multicast. En pratique on constate que sur une même zone géographique des réseaux locaux sont administrés de manière cohérente au sein d’un même domaine. Les protocoles de routage multicast inter-liens ont été developpées pour répondre aux problèmes suivants :
• Comment atteindre les membres des différents groupes de diffusion répartis sur tout un domaine (arbres de diffusion) ?
• Comment économiser de la bande passante en n’acheminant les paquets multicast que là où il y a des abonnés ?
• Comment optimiser les échanges entre routeurs ? (vaut-il mieux annoncer les groupes que l’on veut recevoir où les groupes que l’on ne veut pas recevoir ?)
On peut distinguer deux familles de protocoles multicast qui résultent de deux approches différentes :
• Les protocoles de routage orientés « forte densité de récepteurs » (dense mode, mode dense) comme DVMRP (Distance Vector Multicast Routing Protocol, protocole de routage multicast a vecteur de distance) qui a aujourd’hui presque disparu et PIMDM (Protocol Independant Multicast – Dense Mode, multicast indépendant d u protocole – mode dense) qui est plus récent. Ces protocoles partent du principe qu’il y a des membres de groupe multicast sur la plupart des réseaux et que l’absence de membres sur un réseau constitue l’exception. Dans un domaine PIM-DM, les routeurs vont inonder périodiquement tout le domaine en transmettant tous les flux multicast à leurs voisins. Les routeurs qui ne veulent pas recevoir le trafic multicast demandent à leurs voisins de cesser de leur envoyer ces flux (mécanisme de pruning ou d’élagage). C’est de cette manière qu’est créé l’arbre de diffusion. Le problème est qu’un routeur qui ne désire pas recevoir de trafic multicast va passer son temps à demander qu’on cesse de lui envoyer ces flux multicast, c’est pourquoi cette approche a disparu au profit du mode clairsemé (sparse mode).
• Les protocoles de routage orientés « faible densité de récepteurs » (sparse mode, mode clairsemé) comme PIM-SM (Protocol Independant Multicast-Sparse Mode, multicast indépendant du protocole, mode clairsemé). Ces protocoles supposent au contraire des précedents que les membres de groupes multicast sont très dispersés et peu nombreux par rapport au nombre de réseaux desservis. Un ou plusieurs points de rendez-vous sont configurés dans le domaine PIM. Ces points de rendez-vous connaissent l’ensemble des sources et des récepteurs des différents groupes du domaine, ainsi ils peuvent permettre aux sources et aux abonnés de se rencontrer sans inonder le réseau.