Protocoles de routage IP multicast

Documents pareils
Le service IPv4 multicast pour les sites RAP

Chapitre 11 : Le Multicast sur IP

Multicast. protocoles de routage. Bernard Rapacchi Bernard Tuy CNRS/UREC

ROUTEURS CISCO, PERFECTIONNEMENT

Chapitre 1 Le routage statique

Le Multicast. A Guyancourt le

Service de VPN de niveau 3 sur RENATER (L3VPN MPLS)

Les communications multipoint 7

Internet Group Management Protocol (IGMP) Multicast Listener Discovery ( MLD ) RFC 2710 (MLD version 1) RFC 3810 (MLD version 2)

Configuration de Serveur 2003 en Routeur

RAPPORT DE STAGE DE MASTER INFORMATIQUE DE L UNIVERSITE PIERRE ET MARIE CURIE Sécurité des infrastructures critiques.

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

Multicast & IGMP Snooping

Hypervision et pilotage temps réel des réseaux IP/MPLS

DESCRIPTION DU CONCOURS QUÉBÉCOIS INFORMATIQUE (GESTION DE RÉSEAUX)

Installation et configuration d un serveur DHCP (Windows server 2008 R2)

DIFF AVANCÉE. Samy.

Architecture Principes et recommandations

Introduction aux Technologies de l Internet

Groupe Eyrolles, 2000, 2004, ISBN :

Réseaux IUP2 / 2005 IPv6


de trafic sur l infrastructure de production MPLS de RENATER

Les Réseaux Privés Virtuels (VPN) Définition d'un VPN

La surveillance centralisée dans les systèmes distribués

Le protocole VTP. F. Nolot 2007

TD 2 Chapitre 4 : Support des Services et Serveurs. Objectifs : Maîtriser l'exploitation des tables de routage dynamique.

Configuration des routes statiques, routes flottantes et leur distribution.

Travaux pratiques IPv6

Algorithmique répartie

NOTIONS DE RESEAUX INFORMATIQUES

Algorithmique et langages du Web

Compte-rendu du TP n o 2

Réseaux grande distance

Mise en place du réseau métropolitain grenoblois TIGRE

Les réseaux de campus. F. Nolot

Sommaire. Introduction. I. Notions de routage a) Technologies actuelles b) Avantages et désavantages

Programme formation pfsense Mars 2011 Cript Bretagne

La VOIP :Les protocoles H.323 et SIP

Présentation et portée du cours : CCNA Exploration v4.0

Support de cours RTEL. Guy Pujolle. Figure 1. Réseau maillé à transfert de paquets.

1 DHCP sur Windows 2008 Server Introduction Installation du composant DHCP Autorisation d'un serveur DHCP...

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

Principes de DHCP. Le mécanisme de délivrance d'une adresse IP à un client DHCP s'effectue en 4 étapes : COMMUTATEUR 1. DHCP DISCOVER 2.

Internet - Outils. Nicolas Delestre. À partir des cours Outils réseaux de Paul Tavernier et Nicolas Prunier

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

Adresse 15 avenue du Hoggar Parc Victoria - Le Vancouver ZA de Courtaboeuf LES ULIS. Site web Téléphone

Filière : Génie Réseaux & Télécoms. Rapport du projet de semestre. Etude et simulation sur GNS 3 du service MP- BGP/VPN-IP. Réalisé par : Asmaa KSIKS

Plan. Programmation Internet Cours 3. Organismes de standardisation

Cisco Certified Network Associate Version 4

Votre Réseau est-il prêt?

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement

IPv6. Protocole, format et applications. Tuyêt Trâm DANG NGOC. Université de Cergy-Pontoise. Tuyêt Trâm DANG NGOC IPv6 1 / 150

Olympiades canadiennes des métiers et des technologies

Fonctions Réseau et Télécom. Haute Disponibilité

Spécifications de raccordement au service de Téléphonie sur IP (ToIP) de RENATER

Les systèmes pare-feu (firewall)

Présentation et portée du cours : CCNA Exploration v4.0

CONVENTION AVEC LES MAITRES D OUVRAGES DES RESEAUX DE COLLECTE

ADSL. Étude d une LiveBox. 1. Environnement de la LiveBox TMRIM 2 EME TRIMESTRE LP CHATEAU BLANC CHALETTE/LOING NIVEAU :

Cours n 12. Technologies WAN 2nd partie

SIP. Sommaire. Internet Multimédia

Pare-feu VPN sans fil N Cisco RV120W

QU EST-CE QUE LA VISIOCONFERENCE?

1.Introduction - Modèle en couches - OSI TCP/IP

Gestion et Surveillance de Réseau

Introduction. Adresses

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

1 PfSense 1. Qu est-ce que c est

KASPERSKY DDOS PROTECTION. Découvrez comment Kaspersky Lab défend les entreprises contre les attaques DDoS

Mise en place d un cluster NLB (v1.12)

TP7. DHCP. 1 Comportement en présence d un serveur unique

Chapitre 7. Le Protocole SNMP 7.1 INTRODUCTION COMPOSANTES POUR L UTILISATION FONCTIONNEMENT LE PAQUET SNMPV1...

//////////////////////////////////////////////////////////////////// Administration systèmes et réseaux

Cisco Certified Network Associate

Evolution de l infrastructure transport

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Fonctionnement du protocole DHCP. Protocole DHCP (S4/C7)

Dynamic Host Configuration Protocol

Annexe A : Énoncé des travaux. Service d interconnexion Internet (SII) pour Services partagés Canada (SPC)

Guide de configuration Aastra 5000 pour le raccordement d un trunk Sip OPENIP

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

Routage Statique. Protocoles de Routage et Concepts. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

LA VIDÉOSURVEILLANCE SANS FIL

IPFIX (Internet Protocol Information export)

18 TCP Les protocoles de domaines d applications

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

Note d Application. Bascule d ALOHA via injection de route en BGP

Déploiement de la visioconférence IP dans un établissement Etat de l art et évolution des protocoles

Calcul de la bande passante réelle consommée par appel suivant le codec utilisé

Multimedia. Systèmes, Communications et Applications. Ahmed MEHAOUA

Un concept multi-centre de données traditionnel basé sur le DNS

Sécuriser le routage sur Internet

Cisco Discovery - DRSEnt Module 7

Janvier ItrainOnline MMTK

Pare-feu VPN sans fil N Cisco RV110W

Transcription:

Protocoles de routage IP multicast par Sébastien LOYE Ingénieur de l École nationale supérieure de télécommunications de Bretagne (ENSTBr) Ingénieur R&D, France Télécom 1. Routage multicast intradomaine... TE 7 529 2 1.1 Caractéristiques générales... 2 1.2 Protocole PIM... 4 1.2.1 PIM Sparse Mode... 4 1.2.2 PIM Dense Mode... 8 1.2.3 PIM-BIDIR... 10 1.2.4 PIM-SSM... 11 1.2.5 Mécanismes de découverte du... 12 1.2.6 Cohabitation entre les modes PIM-SM, PIM-DM, PIM-BIDIR et PIM-SSM... 13 1.3 Protocole DVM... 14 1.4 Protocole MOSPF... 14 2. Routage multicast interdomaine... 15 2.1 Protocole MSDP... 16 2.1.1 Vue générale... 16 2.1.2 Fonctionnement... 16 2.1.3 Problèmes existant avec MSDP... 17 2.2 Protocole BGMP... 18 2.2.1 Vue générale... 18 2.2.2 Fonctionnement... 18 2.3 Utilisation de PIM-SSM en interdomaine... 19 2.4 Utilisation d adresses multicast de type Embedded-... 19 3. Conclusion... 20 Pour en savoir plus... Doc. TE 7 529 L es protocoles de routage IP multicast permettent à un ensemble de routeurs multicast de construire ou joindre des arbres de distribution multicast lorsqu un terminal demande à recevoir le trafic d un certain groupe. Un arbre de distribution spécifie un chemin de transmission unique entre la source de trafic multicast et chaque sous-réseau qui contient au moins un membre du groupe. En contrôlant ainsi le chemin que le trafic multicast doit suivre dans le réseau afin d atteindre l ensemble des récepteurs, les arbres de distribution permettent d assurer une transmission efficace du trafic multicast au sein du réseau (une seule copie de chaque paquet est transmise sur chaque branche de l arbre). Plusieurs protocoles de routage multicast ont été définis, chacun ayant des caractéristiques particulières, ce qui les rend appropriés pour des utilisations dans des environnements différents. De façon similaire aux protocoles de routage unicast, qui sont divisés en protocoles de type IGP (Interior Gateway Protocol) et protocoles de type EGP (Exterior Gateway Protocol), les protocoles de routage multicast dynamique sont classifiés en deux grandes familles : les protocoles de routage dynamique qui permettent de construire des arbres de distribution limités au sein d un domaine multicast : ce sont les Techniques de l Ingénieur TE 7 529 1

PROTOCOLES DE ROUTAGE IP MULTICAST protocoles de routage multicast intradomaine MIGP (Multicast Interior Gateway Protocol) ; Nota : la notion de domaine IP multicast est une notion administrative, elle définit un ensemble de routeurs IP activant le même protocole de routage multicast. En théorie, cette notion est indépendante de la notion de domaine IP unicast ; toutefois, dans la réalité, cette notion de domaine IP multicast coïncide généralement avec celle de système autonome ou AS (Autonomous System). les protocoles de routage dynamique qui permettent de connecter des domaines multicast en construisant des arbres de distribution qui s étendent entre plusieurs domaines : ce sont les protocoles de routage multicast interdomaine MEGP (Multicast Exterior Gateway Protocol). Cette grande variété et richesse protocolaire rend parfois difficile la compréhension du fonctionnement de tous ces protocoles et la façon dont ils coopèrent ou interopèrent. Un aperçu détaillé des plus importants protocoles de routage multicast dans les réseaux IPv4 et IPv6 est donné ici. À ce titre, ce dossier s articule autour des éléments suivants : une description et une analyse détaillée des principaux protocoles de routage multicast utilisés actuellement au sein d un domaine multicast, parmi lesquels PIM-SM, PIM-DM, PIM-BIDIR, PIM-SSM, DVM et MOSPF, ainsi qu une analyse des avantages, inconvénients et déploiements actuels de chacun ; une présentation des différents mécanismes de découverte du routeur point de rendez-vous, parmi lesquels BSR, Auto-, Anycast-, Embedded- ; enfin, une description des solutions permettant de faire du routage multicast entre des domaines multicast distincts, à savoir MSDP, BGMP, PIM-SSM et l utilisation d adresses multicast IPv6 de type Embedded-. Le dossier [TE 7 527] détaille les types d adresses multicast existantes, décrit les protocoles de gestion des groupes multicast (IGMP, MLD, GM et CGMP), puis compare les modèles de diffusion ASM et SSM et analyse les principes fondamentaux du mode de transmission multicast. 1. Routage multicast intradomaine 1.1 Caractéristiques générales Un protocole de routage IP multicast permet à un ensemble de routeurs multicast de construire ou joindre un arbre de distribution multicast lorsqu un terminal demande à recevoir le trafic d un certain groupe. La source de trafic constitue la racine de l arbre, les récepteurs sont les feuilles de l arbre tandis que les branches correspondent à tous les routeurs intermédiaires traversés. Dès qu un arbre a été construit, les données multicast sont transmises puis répliquées aux branches de cet arbre de distribution. Il existe deux types différents d arbres de distribution, des arbres partagés et des arbres spécifiques à une source. La forme la plus simple d un arbre de distribution multicast est un arbre spécifique à une source, dont la racine est un routeur adjacent à la source et dont les branches s étendent à travers le réseau vers l ensemble des récepteurs du groupe. Cet arbre est également appelé arbre de plus court chemin, ou SPT (Shortest Path Tree), parce qu il utilise le plus court chemin à travers le réseau entre la source et les récepteurs d un groupe donné. Un arbre spécifique à une source est donc un arbre dédié à une source de trafic donnée qui transmet des données à destination d un groupe. Les arbres partagés quant à eux utilisent une seule racine commune placée, non pas à la source, mais à un point choisi dans le réseau. Ce routeur essentiel, qui est la racine de l arbre partagé, est appelé point de rendez-vous, ou (Rendezvous Point). Un arbre partagé, aussi appelé T (Rendez-vous Point Tree), désigne donc un arbre unique à un groupe utilisé par toutes les sources du groupe pour diffuser leurs données. Les protocoles de routage multicast sont classifiés en deux catégories : les protocoles en mode dense ou DM (Dense Mode) et les protocoles en mode épars ou SM (Sparse Mode). Les protocoles DM supposent que la répartition des récepteurs d un groupe donné soit dense et homogène sur l ensemble d un domaine et par conséquent que la plupart des routeurs dans le réseau doivent distribuer le trafic de chaque groupe. Les protocoles SM supposent que la répartition des récepteurs d un groupe donné soit inhomogène et donc fortement dispersée sur l ensemble d un domaine, et par conséquent que peu de routeurs dans le réseau soient impliqués dans la transmission du trafic de chaque groupe. Enfin, afin d éviter les boucles de routage dans un réseau multicast, les paquets multicast sont transmis le long des arbres de distribution en utilisant une technique appelée contrôle du chemin inverse ou Reverse Path Forwarding (F). Un routeur multicast aiguille et réplique un paquet multicast en sortie uniquement si celui-ci a été reçu sur l interface F, c est-à-dire sur l interface de plus court chemin vers la racine de l arbre, sinon le paquet multicast est détruit. TE 7 529 2 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST Glossaire ASM (Any Source Multicast) : modèle de transmission de données multicast où les récepteurs demandent à recevoir toutes les données émises à destination d un groupe multicast, quelle que soit la source de trafic. BGMP (Border Gateway Multicast Protocol) : protocole de routage multicast qui construit des arbres de distribution multicast bidirectionnels qui s étendent entre plusieurs domaines multicast. BSR (Bootstrap Router) : routeur utilisé dans le protocole PIM-SM pour disséminer des informations servant à sélectionner et localiser tous les routeurs points de rendez-vous. (Designated Forwarder) : routeur utilisé dans le protocole PIM-BIDIR qui assure la retransmission bidirectionnelle des flux multicast associés à des arbres T. Un est élu par réseau LAN et par. (Designated Router) : dans PIM-SM, routeur particulier sur un LAN dont le rôle est de traiter les opérations liées à l émission de messages PIM Assert, Join/Prune ou Register. IANA (Internet Assigned Numbers Authority) : organisme de contrôle qui gère les adresses IP publiques. IETF (Internet Engineering Task Force) : organisme de standardisation de l Internet qui publie les RFC. IGMP (Internet Group Management Protocol) : protocole utilisé entre un terminal et un routeur qui gère l appartenance à des groupes multicast IPv4. IGP (Interior Gateway Protocol) : sigle générique qui s applique à tout protocole de routage dynamique susceptible d être activé à l intérieur d un domaine ou d un système autonome (AS). MBGP (Multiprotocol Extensions for Border Gateway Protocol) : extensions au protocole de routage unicast BGP qui permettent de distribuer différents types d adresses (adresses IPv4, adresses IPv6, adresses IPv4 de type VPN RFC 2547, etc.) et d échanger des informations concernant la topologie des routeurs multicast séparément des informations concernant la topologie des routeurs uniquement unicast. MLD (Multicast Listener Discovery) : protocole utilisé entre un terminal et un routeur qui gère l appartenance à des groupes multicast IPv6. MRIB (Multicast Routing Information Base) : table de routage unicast maintenue par un routeur multicast et utilisée par des protocoles de routage multicast tels que PIM-SM afin de déterminer le routeur amont pour un groupe multicast particulier ou une combinaison source/groupe multicast. OSPF (Open Shortest Path First) : protocole de routage dynamique de type IGP, et de la famille link state (état de lien). RFC (Request For Comments) : série de documents et normes concernant l Internet. RIB (Routing Information Base) : table de routage unicast maintenue par un routeur et alimentée par des informations recueillies grâce à l activation d un protocole de routage unicast dynamique. (Rendez-vous Point) : routeur dans PIM-SM qui forme la racine d un arbre de distribution multicast partagé. F (Reverse Path Forwarding) : mode de transmission particulier appliqué à la diffusion de paquets IP multicast où seuls les paquets multicast reçus sur l interface de plus court chemin vers la source de ce flux sont diffusés. SSM (Source-Specific Multicast) : modèle de transmission de données multicast où un canal est identifié par un couple «adresse source, adresse de groupe multicast» plutôt que seulement par l adresse de groupe multicast. TIB (Tree Information Base) : base de données qui contient l ensemble des états décrivant les arbres de distribution multicast pour tous les groupes multicast. Cette table est créée et maintenue par un routeur multicast grâce à l activation d un protocole de routage multicast. AS ASBR ASM BGMP BGP BR BSR CBT DM DoS DVM EGP GRE G-RIB IGMP IGP IP IS-IS LAN LSA LSP MASC MBGP MBONE MEGP MIGP MLD MOSPF MPLS MRIB MSDP NBMA OIF OSPF PIM RIB RIP F T SA SAP S SM SPT SSM TIB Sigles et abréviations Autonomous System Autonomous System Border Router Any Source Multicast Border Gateway Multicast Protocol Border Gateway Protocol Border Router Boutstrap Router Core Based Tree Designated Forwarder Dense Mode Denial of Service Designated Router Distance Vector Multicast Routing Protocol Exterior Gateway Protocol Generic Routing Encapsulation Group Routing Information Base Internet Group Message Protocol Interior Gateway Protocol Internet Protocol Intermediate System to Intermediate System Local Area Network Link State Advertisement Label Switched Path Multicast Address-Set Claim MPLS BGP Multicast Backbone Multicast Exterior Gateway Protocol Multicast Interior Gateway Protocol Multicast Listener Discovery Multicast Extension to OSPF Multi Protocol Label Switching Multicast Routing Information Base Multicast Source Discovery Protocol Non-Broadcast Multiple Access Outgoing Interface Open Shortest Path First Protocol Independent Multicast Routing Information Base Routing Information Protocol Rendez-vous Point Reverse Path Forwarding Rendez-vous Point Tree Source Active Session Announcement Protocol Session Directory Sparse Mode Shortest Path Tree Source-Specific Multicast Tree Information Base (0) Techniques de l Ingénieur TE 7 529 3

PROTOCOLES DE ROUTAGE IP MULTICAST 1.2 Protocole PIM Le protocole PIM (Protocol Independent Multicast) est une collection de protocoles de routage multicast qui ont un commun : un format de message de contrôle identique ; la propriété de dépendre d informations de routage unicast pour construire les arbres de distribution. Comme son nom l indique, PIM est indépendant du protocole de routage unicast particulier utilisé pour remplir la MRIB (Multicast Routing Information Base). Les messages de contrôle PIM sont des datagrammes IP brut (protocole = 103), qui sont soit transmis en multicast sur le groupe multicast ALL-PIM-ROUTERS (224.0.0.13 en IPv4 et FF02:0:0:0:0:0:0:D en IPv6) de portée limitée au lien local, ou transmis en unicast à destination d un routeur spécifique. Il existe deux protocoles PIM principaux : PIM-SM (PIM Sparse Mode) ( 1.2.1) est un protocole de type épars qui construit explicitement à la fois des arbres partagés et des arbres spécifiques à une source. PIM-SM est de facto le protocole de routage multicast standard et le plus largement utilisé et déployé aujourd hui ; PIM-DM (PIM Dense Mode) ( 1.2.2) est un protocole de type dense qui met uniquement en œuvre des arbres spécifiques à une source. PIM-DM est utilisé principalement dans des domaines multicast individuels de petite taille. De plus, il existe deux autres protocoles, PIM-BIDIR (PIM Bidirectionnel) et PIM-SSM (PIM pecific Multicast) qui sont basés sur PIM-SM mais comportent quelques différences significatives. PIM-BIDIR ( 1.2.3) permet de construire explicitement des arbres partagés bidirectionnels tandis que PIM-SSM ( 1.2.4) met en œuvre uniquement des arbres spécifiques à une source, pouvant potentiellement s étendre à travers plusieurs domaines multicast. Bien que PIM-BIDIR et PIM-SSM soient généralement supportés par les équipementiers, ils ne sont pas encore aussi répandus que PIM-SM. 1.2.1 PIM Sparse Mode PIM Sparse Mode (PIM-SM) est de facto le protocole de routage multicast standard le plus largement répandu aujourd hui. La version 1 de PIM-SM a été créée en 1995, mais n a jamais été standardisée par l IETF. Cette version est désormais considérée comme obsolète, bien qu elle soit toujours supportée par la plupart des équipementiers. La version 2 de PIM-SM a été standardisée en 1997 dans la RFC 2117, puis mise à jour dans la RFC 2362 en 1998. Cependant, un certain nombre de problèmes existaient avec la RFC 2362, et une nouvelle spécification de PIM-SM version 2 est actuellement en cours de production à l IETF (Internet draft). La version 2 diffère de façon significative et est incompatible avec la version 1. Comme son nom l indique, PIM-SM est un protocole de routage multicast intradomaine en mode épars. Pour recevoir des données multicast et construire dynamiquement des arbres de distribution, les routeurs doivent explicitement informer leurs voisins amont de leur intérêt pour des groupes et des sources particuliers. Cela est réalisé en utilisant des messages PIM Join ou PIM Prune afin de joindre ou quitter dynamiquement un arbre de distribution multicast. Par défaut, PIM-SM utilise des arbres partagés ou T (Rendezvous Point Tree) par groupe, car ils ont pour racine un routeur particulier appelé point de rendez-vous (). Le rôle du routeur, comme son nom l indique, est de servir de point de rendez-vous aux sources et aux récepteurs d une diffusion multicast donnée. Les sources émettent leurs flux multicast vers le routeur qui les retransmet vers les récepteurs de ce flux. L architecture de PIM-SM définit également un autre routeur particulier, le routeur désigné (Designated Router). Un seul routeur parmi tous les routeurs connectés à un même sous-réseau LAN est élu pour le LAN. Nota : le routeur est déterminé par un mécanisme d élection sur chaque interface de type LAN. La procédure d élection du routeur sur un réseau IP est simple : en l absence de tout attribut de priorité, c est celui dont l adresse IP, ou l adresse de loopback si elle est définie, est la plus élevée. Le routeur est également employé dans les réseaux NBMA mais le processus d élection est statique ; il repose sur un paramètre de configuration. En revanche, le protocole PIM n utilise pas la notion de routeur sur les interfaces de type point à point. Le rôle du routeur est double : vis-à-vis des sources, son rôle est de les déceler et d initier périodiquement les procédures d enregistrement auprès du routeur ; vis-à-vis des terminaux récepteurs, son rôle est de maintenir à jour la table des groupes actifs, de déclencher le cas échéant les opérations d ajout ou de suppression de branches de l arbre T et enfin de transmettre le trafic multicast sur le LAN à destination de ses récepteurs locaux. En outre, le routeur est celui qui peut optionnellement déclencher le basculement de la réception d une diffusion de l arbre T sur l arbre SPT. Les données multicast sont envoyées d une source vers le en unicast en étant encapsulées dans des messages PIM Register. PIM- SM supporte aussi des arbres spécifiques à une source, ou SPT (Shortest Path Tree), qui peuvent être utilisés dans les circonstances suivantes : le peut joindre un arbre spécifique à une source afin d éviter l encapsulation/décapsulation des données dans des paquets PIM Register ; un routeur d accès peut choisir de basculer de l arbre T vers l arbre spécifique à une source afin d optimiser le chemin entre source et récepteurs. Les arbres de distribution sont consignés sous la forme d états dans une table particulière appelée TIB (Tree Information Base). Un état de routage IP multicast dans la table TIB comporte les éléments suivants : l adresse de la racine de l arbre de distribution (l adresse d une source S ou d un routeur ), l adresse d un groupe multicast G, l interface d entrée iif (incoming interface) relative à l adresse de la racine de l arbre, la liste des interfaces de sortie oif (outgoing interface) et leurs états associés en transmission (forward) ou élagué (prune), ainsi qu un certain nombre de drapeaux et de timers. Les états des arbres SPT sont notés (S, G) ; ceux des arbres T sont notés (*, G). PIM-SM est un protocole dit softstate, c est-à-dire que les états qui sont créés par les messages de contrôle PIM sont non persistants et expirent automatiquement après un délai s ils ne sont pas rafraîchis. Par conséquent, tous les messages PIM Join doivent donc être périodiquement retransmis afin de maintenir vivants les états de routage multicast de la TIB. Les paragraphes suivants décrivent les étapes essentielles du fonctionnement de PIM-SM de manière plus détaillée. 1.2.1.1 Découverte du voisinage PIM Un dispositif de base du protocole PIM est le mécanisme de découverte des voisins PIM. C est un protocole de type Hello similaire à celui qui est mis en œuvre dans les protocoles de routage unicast OSPF ou IS-IS. Dès que le protocole PIM est activé sur une interface d un routeur, celui-ci émet périodiquement sur cette interface un message PIM de type Hello visant à signaler son existence aux routeurs voisins. Ainsi, chaque routeur PIM maintient une table des voisinages PIM qui identifie les routeurs voisins en activité sur chacune de ses interfaces. Le protocole PIM-SM permet de construire des arbres de distribution, sans que les sources et les récepteurs d un groupe multicast donné aient connaissance les uns des autres, en trois phases distinctes et pouvant survenir à n importe quel moment les unes par rapport aux autres. 1.2.1.2 Phase de construction de l arbre partagé La figure 1 illustre comment, dans un premier temps, est construit l arbre partagé T. Les carrés représentent les terminaux récepteurs ou émetteurs qui sont connectés aux réseaux LAN ; les ronds représentent les routeurs qui activent PIM-SM. TE 7 529 4 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST 1 2 PIM Join (*, G) Arbre T (*, G) IGMP Report (*, G) Figure 1 Création de l arbre T (*, G) Le récepteur, connecté à un réseau LAN, veut joindre le groupe G, il émet donc un message IGMP ou MLD Membership Report pour le groupe G. Le routeur, qui est le routeur désigné sur ce réseau LAN, émet alors un message PIM Join (*, G) vers le routeur et crée une entrée (*, G) dans sa table TIB. Nota : les messages Join (*, G) sont retransmis périodiquement, par défaut toutes les 60 s, aussi longtemps que les récepteurs renouvellent leurs demandes de souscription. Un état de routage multicast (*, G) caractérise la diffusion d un paquet IP multicast émis à destination du groupe G par n importe quelle source. Un état de type (S, G) caractérise la diffusion du flux IP multicast émis par la source S sur le groupe G. L adresse du routeur voisin PIM amont, vers lequel le message Join (*, G) est transmis, est déterminée au moyen d une recherche dans la table MRIB. Lorsque le routeur voisin PIM amont reçoit le message Join (*, G), si cet état (*, G) n existe pas déjà dans sa table TIB, il le crée et transmet à son tour un message Join (*, G) vers son routeur voisin PIM amont par rapport au routeur. Ainsi, le message Join (*, G) est transmis de proche en proche jusqu à ce qu il atteigne le routeur ou un routeur PIM intermédiaire qui fait déjà partie de l arbre partagé (*, G). Le crée un état interne (*, G), et ajoute l interface vers dans la liste de ses interfaces de sortie oif pour le groupe G. 1.2.1.3 Phase d enregistrement de la source auprès du Lorsque la source S commence à émettre des données à destination du groupe G, le routeur, du réseau LAN de la source, reçoit ces paquets multicast et crée un état (S, G) dans sa table TIB. Puis il encapsule un à un les paquets multicast reçus dans des messages PIM Register et les transmet en unicast vers le routeur. Quand le reçoit les paquets PIM Register, il les décapsule pour en extraire les datagrammes IP multicast et les transmet sur chacune des branches de l arbre partagé T (*, G) préalablement construit. Ainsi, chaque routeur sur le T reçoit les flux de son voisin PIM amont et les transmet à son tour vers l aval, en répliquant le trafic aux branches de l arbre. De cette façon, les données parviennent à tous les récepteurs intéressés, en suivant le chemin opposé à celui suivi par les messages PIM Join (*, G). La figure 2 illustre le flux des données multicast sur l arbre T construit dans le diagramme précédent. L encapsulation et la décapsulation des paquets multicast, qui imposent un traitement supplémentaire aux routeurs et, sont des opérations coûteuses à réaliser et entraînent une charge CPU importante pour ces routeurs. Par conséquent, le protocole PIM-SM prévoit par défaut que le joigne l arbre de plus court chemin (S, G), dont la racine est le routeur adjacent à la source S, dès qu il commence à recevoir des messages PIM Register relatifs à un nouveau groupe G. Flux de trafic Arbre T (*, G) Arbre SPT (S, G) PIM Register (S, G) PIM Join (S, G) (unicast) Figure 2 Encapsulation du trafic (S, G) dans des paquets Register Le routeur émet donc un message Join (S, G), spécifiant à la fois la source S et le groupe multicast G desquels il désire recevoir du trafic, vers le routeur amont en direction de la source et crée un état (S, G) dans sa table TIB. Ce message Join (S, G) est transmis de proche en proche vers la source et crée des états (S, G) dans chacun des routeurs traversés, jusqu à atteindre un routeur PIM sur le réseau LAN de la source ( dans notre exemple) ou un routeur intermédiaire qui a déjà un état (S, G) dans sa table TIB, formant ainsi une branche de l arbre de distribution SPT. 1.2.1.4 Phase d émission de message PIM Register Stop Dès que la branche d arbre SPT, entre la source et le routeur, est construite et que les données sont transmises nativement vers le le long de l arbre SPT, le se met à répliquer ces données sur l arbre T. Le flux IP multicast émis par la source étant alors reçu en double, à la fois encapsulé dans des messages PIM Register et nativement via la branche SPT, par le routeur, celui-ci se met alors à détruire tous les messages PIM Register qu il reçoit. Afin d indiquer au routeur d interrompre l envoi des messages PIM Register dont il n a plus utilité, le envoie un message PIM Register Stop en unicast vers le routeur de la source. Au terme de cette phase, le flux IP multicast est transmis nativement en multicast le long d une branche d arbre SPT, allant de la source au routeur, puis de là transmis vers tous les récepteurs le long des branches de l arbre T. La figure 3 illustre le flux des données multicast quand un arbre SPT est construit pour la source S. Le routeur a joint l arbre SPT de racine, qui est situé sur le même LAN que la source S. Tant que la source est active, le envoie périodiquement des messages Null-Register (Null indiquant que ces messages ne contiennent aucune donnée encapsulée) vers le pour indiquer que la source reste active. Comme auparavant, le répond à chaque message en envoyant un autre message Register Stop. Si une autre source S 2 souhaitait émettre des données à destination du même groupe multicast, il serait nécessaire de construire un nouvel arbre SPT entre S 2 et : un arbre SPT différent est créé pour chaque source active dans le réseau. À l issue de cette phase, les flux multicast sont donc transmis nativement en mode multicast de la source vers le via l arbre SPT puis du vers les récepteurs via l arbre T comme illustré sur la figure 4. Techniques de l Ingénieur TE 7 529 5

PROTOCOLES DE ROUTAGE IP MULTICAST Flux de trafic Arbre T (*, G) Arbre SPT (S, G) PIM Register (S, G) PIM Register Stop (S, G) 2 (unicast) (unicast) Figure 3 Le joint l arbre SPT (S, G) vers la source S 1 Flux de trafic Arbre T (*, G) Arbre SPT (S, G) PIM Join (S, G) Figure 5 Le initie le basculement vers l arbre SPT (S, G) Flux de trafic Arbre T (*, G) Arbre SPT (S, G) Figure 4 Trafic (S, G) transmis en natif via le seul SPT (S, G) entre S et Flux de trafic Arbre T (*, G) Arbre SPT (S, G) 1.2.1.5 Phase de construction des arbres de plus court chemin Quand les flux multicast transitent de la source au (soit encapsulés dans des messages PIM Register, soit nativement via le SPT) puis le long de l arbre T du vers les récepteurs, il est probable que cela ne constitue pas le plus court chemin entre source et récepteurs. C est pourquoi un routeur d accès qui a des membres directement connectés peut décider de construire une branche d arbre SPT vers la source. La décision de basculer ou non de l arbre T vers l arbre SPT et les critères conduisant à un basculement ne sont pas spécifiés par le protocole PIM-SM mais sont laissés dépendants de l implantation. Les implantations permettent en général de paramétrer sur les routeurs un seuil en débit qui, lorsqu il est atteint par un groupe G, déclenche le basculement du flux sur l arbre SPT. En pratique, les administrateurs de réseau multicast choisissent généralement soit de ne jamais basculer, soit de basculer immédiatement leur flux multicast vers le SPT (dès réception du premier paquet par le T) comme illustré sur la figure 5. Afin de basculer de l arbre T vers l arbre SPT, le routeur d accès ( dans notre exemple) envoie un message PIM Join (S, G) vers la source S. Lorsque la branche SPT est construite et que des états additionnels (S, G) sont créés le long de cette nouvelle branche, le flux IP multicast est alors reçu en double, provenant à la fois de l arbre SPT et de l arbre T comme illustré sur la figure 6. Figure 6 Le flux trafic (S, G) arrive en double via le T et le SPT Le routeur PIM ( dans notre exemple), qui est à la jonction des arbres SPT et T et reçoit deux copies des données (S, G), doit par conséquent se couper de l arbre T, mais pour la source S seulement. Il envoie donc un message PIM Prune spécial vers le routeur, dénommé Prune (S, G, rpt). Ce message, qui a priorité sur les messages Join (*, G), crée des états (S, G) supplémentaires le long de la branche de l arbre T du groupe G afin d arrêter la transmission des données (S, G) qui arrivent via le comme illustré sur la figure 7. Désormais, le trafic (S, G) n est plus transmis par l arbre T, le récepteur reçoit le flux émis par la source S uniquement par l arbre SPT comme illustré sur la figure 8. Le n ayant plus utilité du trafic (S, G), il se coupe donc de l arbre SPT vers la source S en envoyant un message PIM Prune (S, G) vers S comme illustré sur la figure 9. La figure 10 illustre le flux des données (S, G) qui est maintenant transmis vers le récepteur via une seule branche de l arbre SPT. 1.2.1.6 Élagage d une branche d un arbre de distribution Quand un terminal multicast ne souhaite plus recevoir les données d un groupe multicast G, il signale avec IGMP ou MLD en TE 7 529 6 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST 1 2 Flux de trafic Arbre T (*, G) Arbre SPT (S, G) PIM Prune (S, G, rpt) Flux de trafic Arbre T (*, G) Arbre SPT (S, G) Figure 7 Élagage de la branche de l arbre T pour le flux (S, G) Figure 10 Le trafic (S, G) est désormais transmis sur le seul arbre SPT créé par le récepteur émettant un message Leave Group. Si le terminal est le dernier membre du réseau LAN à quitter le groupe et que le n a plus aucun récepteur connecté, alors il arrête la transmission sur le LAN et se coupe de l arbre T en envoyant un message PIM Prune (*, G) en direction du. Ce message Prune (*, G) indique au routeur PIM amont d arrêter la transmission du flux multicast via cette interface. Si le message Prune (*, G) est accidentellement perdu, le routeur PIM amont arrête la transmission via cette interface lorsque le timer de cette interface relatif à l état (*, G) de la TIB expire. Nota : par défaut, une interface oif d un état (*, G) de la TIB expire trois minutes après la réception du dernier message PIM Join (*, G). Flux de trafic Arbre T (*, G) Arbre SPT (S, G) Figure 8 Le trafic (S, G) est transmis au récepteur uniquement via le SPT Flux de trafic Arbre T (*, G) Arbre SPT (S, G) PIM Prune (S, G) Figure 9 Le se coupe de l arbre SPT 1.2.1.7 Mécanisme Assert Dans certaines configurations de la topologie du domaine IP multicast, le fonctionnement du protocole PIM peut conduire à la création de branches parallèles dans les arbres T et les arbres SPT. Ces phénomènes parasites peuvent apparaître d une part lorsque des branches d arbres SPT et T se croisent au niveau d un réseau LAN et d autre part lorsque certaines informations contenues dans les tables TIB des routeurs PIM sont incohérentes (par exemple, du fait de l activation de plusieurs protocoles de routage IP unicast au sein du domaine ou d erreurs de configuration de route multicast statiques). Lorsqu un routeur PIM connecté à un arbre de distribution détecte la duplication du flux multicast associé, en recevant le même flux multicast par son interface amont mais aussi par l interface d émission connectée à un réseau LAN, c est la preuve qu un autre routeur PIM raccordé au réseau LAN est également connecté au même arbre de distribution et diffuse également le flux multicast associé sur le LAN. Pour pallier ce dysfonctionnement, le protocole PIM met en œuvre un mécanisme de suppression des branches redondantes d un arbre de distribution : les deux routeurs émettent un message PIM Assert sur le réseau LAN. Ces messages indiquent notamment le coût de la route IP multicast utilisée pour joindre la racine de l arbre de distribution T ou SPT considéré. Par comparaison des messages PIM Assert, celui qui annonce la meilleure route reste connecté à l arbre de distribution, tandis que l autre routeur se coupe de l arbre en envoyant un message PIM Prune vers son routeur voisin PIM amont. Nota : le coût est le critère de préférence du protocole IGP de découverte de topologie multicast associé à cette route ainsi que la valeur de la métrique attribuée à cette route par ce protocole. Dans le cas où la valeur de préférence administrative et les valeurs des métriques annoncées sont identiques, c est le routeur PIM dont l adresse IP est la plus élevée qui demeure connecté à l arbre de diffusion. Techniques de l Ingénieur TE 7 529 7

PROTOCOLES DE ROUTAGE IP MULTICAST 1.2.1.8 Synthèse Parmi les avantages de PIM-SM, on peut citer : comme tous les protocoles PIM, PIM-SM est indépendant du protocole de routage unicast sous-jacent et fonctionne quel que soit le type d IGP employé ; PIM-SM ne pose pas de problèmes de déploiement à l échelle dans des réseaux multicast de grande taille et étendus ; PIM-SM est un protocole en mode épars : les informations de routage multicast relatives à un groupe sont uniquement créées et maintenues sur les seuls routeurs du réseau qui font partie de l arbre de distribution associé ; PIM-SM supporte aussi bien les diffusions de type SSM et ASM ; PIM-SM peut mettre en œuvre soit des arbres partagés, qui ont l avantage de réduire au minimum le nombre d états de routage multicast dans la TIB des routeurs, soit des arbres spécifiques à une source qui optimisent le parcours des flux multicast entre la source de trafic considérée et les récepteurs du groupe ; PIM-SM peut fonctionner de pair avec MSDP, BGMP ou Embedded- pour offrir une solution de routage multicast interdomaine ( 2). Parmi les inconvénients de PIM-SM, on peut citer : le processus initial d encapsulation et de décapsulation des paquets Register entre la source et le est une opération inefficace et coûteuse en temps CPU pour les routeurs des sources et ; pour fonctionner, PIM-SM nécessite beaucoup d interactions avec le plan de transfert (l envoi des messages PIM Register, Register Stop et Assert est déclenché par la réception de trafic multicast dans le plan de transfert). C est un protocole complexe à implanter qui peut affecter les performances globales des routeurs ; PIM-SM ne met en œuvre aucun mécanisme pour contrôler ou empêcher un terminal IP d émettre du trafic multicast sur un groupe de diffusion donné. Par conséquent, un récepteur reçoit toutes les données envoyées à un groupe de diffusion par n importe quelle source, qu elle soit légitime ou non. PIM-SM est vulnérable aux attaques par déni de service où une source malveillante envoie un trafic parasite sur une diffusion existante afin de perturber les participants et d engorger le réseau multicast de trafic non désiré ; PIM-SM ne fournit pas de solution pour empêcher des collisions d adresse de groupe entre plusieurs applications concurrentes sélectionnant la même adresse de groupe, ce qui aboutit à entremêler leurs flux de diffusion. Le problème d unicité globale des adresses multicast est beaucoup moins sérieux pour IPv6 que pour IPv4 puisque la taille de l espace d adresse multicast est beaucoup plus grand, mais particulièrement sensible si du routage multicast entre domaines est mis en œuvre. PIM-DM utilise uniquement des arbres spécifiques à une source pour distribuer les données multicast, les arbres partagés ne sont jamais utilisés. Cependant, plutôt que les routeurs joignent explicitement les arbres de distribution en fonction des demandes des récepteurs, le protocole PIM-DM suppose initialement que chaque lien du réseau soit une branche de l arbre de distribution, à charge ensuite aux routeurs d élaguer les branches inutiles en envoyant des messages PIM Prune. Au final, les flux multicast sont seulement envoyés vers les parties du réseau qui les nécessitent. Cet algorithme de construction des arbres SPT mis en œuvre par PIM-DM est surnommé inondation et élagage, la première phase correspond à une diffusion dans tout le domaine, la deuxième phase correspond à une restriction de la diffusion aux seules parties intéressées par cette diffusion. 1.2.2.2 Fonctionnement Ce paragraphe donne une vue détaillée du fonctionnement du protocole PIM-DM. Néanmoins, par souci de simplicité, les mécanismes tels que la découverte des voisins PIM ou l envoi de messages PIM Assert ne sont pas illustrés. Quand une source commence à envoyer des données sur un groupe multicast, chaque routeur connecté sur le réseau LAN de la source les reçoit et les transmet à tous ses voisins PIM et sur tous les liens qui ont des récepteurs pour le groupe. Chaque routeur qui reçoit un paquet multicast procède de même, mais seulement après avoir vérifié que le paquet est arrivé sur l interface F, c est-à-dire l interface topologiquement la plus proche de la source. Si ce n est pas le cas, le paquet est détruit. Ce contrôle du chemin inverse, ou F check, vers la source empêche que des boucles de transmission puissent se former. De cette façon, les données sont dans un premier temps diffusées de proche en proche vers toutes les parties du réseau multicast. La figure 11 illustre le processus initial d inondation des données émises par la source S à destination du groupe G à travers tout le domaine PIM-DM, où seuls les terminaux et T2 sont intéressés par les données du groupe G. Les routeurs et 0 détruisent les paquets (S, G) qui ont été transmis respectivement par et, car ces paquets (S, G) n ont pas été reçus par l interface F la plus proche de la source S. et 0 demandent aussitôt à se couper de l arbre SPT en envoyant un message PIM Prune (S, G) vers et respectivement. De façon symétrique, et exécutent les mêmes opérations. T2 1.2.2 PIM Dense Mode 1.2.2.1 Vue générale PIM Dense Mode (PIM-DM) est bien moins répandu que PIM-SM et est majoritairement déployé dans des petits réseaux individuels, puisque le passage à l échelle de PIM-DM pose problème pour des domaines multicast étendus. Le développement de PIM-DM a suivi un cheminement parallèle à celui de PIM-SM. La version 1 de PIM- DM a été créée en 1995, mais n a jamais été standardisée et est désormais considérée comme obsolète. La version 2 de PIM-DM a été standardisée à l IETF dans la RFC 3973. À l instar de PIM-SM, la version 2 de PIM-DM diffère de façon significative et est incompatible avec la version 1. PIM-DM est un protocole de routage multicast en mode dense qui, à l opposé de PIM-SM, suppose que les récepteurs de n importe quel groupe multicast soient répartis de façon dense et homogène au travers du réseau, et par conséquent que la plupart des sousréseaux souhaitent recevoir les flux de données multicast. PIM Prune (S, G) Flux de trafic (S, G) F NOK Figure 11 Diffusion initiale du trafic multicast à travers l ensemble du réseau PIM-DM F NOK F NOK 0 TE 7 529 8 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST T2 T2 2 1 0 1 2 0 T3 Flux de trafic (S, G) PIM Prune (S, G) PIM Join (S, G) Figure 12 Élagage des branches inutiles de l arbre SPT Flux de trafic (S, G) PIM Graft (S, G) PIM Graft-Ack (S, G) Figure 13 Greffe d un nouveau récepteur à l arbre SPT Il est probable que certains routeurs n aient pas besoin des données multicast, soit parce qu ils n ont pas d autres voisins PIM, soit parce qu ils n ont pas de récepteurs directement connectés pour ce groupe. Ces routeurs répondent alors à la réception de ces données (S, G) en envoyant un message PIM Prune (S, G) vers la racine de l arbre. Lorsqu un routeur amont reçoit un message Prune (S, G), il met alors l interface par laquelle il a reçu le message à l état pruned dans l entrée (S, G) de sa table TIB, et stoppe alors la transmission des données (S, G) sur cette interface vers son voisin aval. Si à son tour un routeur amont n a pas besoin des données (S, G), c est-àdire que toutes ses interfaces de sortie oif relatives à l entrée (S, G) sont dans l état pruned, alors il envoie à son tour un message PIM Prune (S, G) vers la racine de l arbre SPT. La figure 12 illustre l enchaînement des messages Prune pour élaguer les branches inutiles de l arbre de distribution. Suite au traitement des messages Prune illustré sur la figure 12, les routeurs, et 0 ont toutes leurs interfaces de sortie oif de l entrée (S, G) à l état pruned. Ils doivent à leur tour se couper de l arbre de distribution (S, G) et envoient donc un message PIM Prune (S, G) vers leurs voisins F respectifs. Comme et sont connectés à leur routeur amont par le même réseau LAN, l envoi par d un message PIM Prune (S, G) déclenche l envoi immédiat par, qui lui a un récepteur pour le groupe G, d un message PIM Join (S, G) afin d annihiler l effet du Prune précédent et de maintenir la diffusion par du trafic (S, G) sur le LAN. Cette opération est appelée pruned-override. Si un nouveau terminal qui souhaite joindre un groupe multicast est situé dans une partie du réseau qui a été coupée de l arbre de distribution associé, son routeur local est capable de greffer une branche à l arbre SPT car l entrée (S, G) est encore présente dans sa table TIB mais dans un état pruned, bloquant toute diffusion. Le routeur envoie alors un message PIM Graft (S, G) en mode unicast vers le routeur voisin amont au sens F, pour forcer le routeur amont à rejoindre l arbre multicast. Le routeur amont accuse ensuite réception du message Graft en envoyant à son tour un message PIM Graft-Ack en mode unicast vers son routeur aval. Il s agit du seul et unique cas dans PIM où un acquittement explicite est mis en œuvre. La figure 13 illustre l opération de greffe d une branche à l arbre SPT après que les branches inutiles ont été élaguées. Le terminal T3 demande à recevoir les données du groupe G. Son routeur d attachement 0 qui s était préalablement coupé de l arbre SPT (S, G) émet alors un message PIM Graft (S, G) vers son voisin F afin de se greffer à l arbre. accuse réception de ce message en envoyant à son tour un message Graft-Ack (S, G) vers 0. Flux de trafic (S, G) T2 Figure 14 Arbre SPT établi vers tous les récepteurs du groupe La figure 14 illustre le cheminement des données (S, G) et l allure finale de l arbre SPT après traitement du message Graft et greffe de la branche résultante -0. Il est important de signaler que les états pruned dans chaque routeur PIM-DM expirent par défaut toutes les 3 min, et provoquent par conséquent le redémarrage périodique de la phase d inondation et des opérations précédentes. Ainsi, le trafic multicast recommence périodiquement à être inondé vers toutes les parties du réseau, notamment celles qui avaient été préalablement coupées de l arbre de distribution SPT, et déclenche ensuite un nouvel élagage des branches inutiles par l envoi de messages PIM Prune. Un mécanisme, appelé State-Refresh permet d améliorer les performances de l algorithme «inondation et élagage» en dispensant d inonder périodiquement le domaine PIM-DM. Lorsqu une source de trafic multicast S est active sur un groupe G, le routeur d attachement de cette source émet périodiquement un message PIM State- Refresh (S, G) via toutes les interfaces exceptée celle relative au réseau LAN de la source. Lorsqu un routeur voisin aval reçoit via son interface F un message State-Refresh (S, G), celui-ci d une part réinitialise les timers associés aux interfaces de sortie positionnées à l état pruned, et d autre part retransmet ce message via toutes les autres interfaces. 0 T3 Techniques de l Ingénieur TE 7 529 9

PROTOCOLES DE ROUTAGE IP MULTICAST Flux de trafic (S,G) PIM State Refresh (S,G) La figure 15 illustre le rafraîchissement des états pruned le long de l arbre de distribution par diffusion périodique de messages PIM State Refresh. Ainsi, le mécanisme PIM State Refresh empêche l état pruned du mode PIM-DM d expirer, ce qui permet d une part de sauver de la bande passante réseau en évitant la rediffusion périodique de trafic multicast vers des branches élaguées du réseau PIM-DM, et d autre part d améliorer le temps de convergence du routage IP multicast en cas de changement de la table topologique multicast MRIB (cela permet aux routeurs PIM-DM de détecter des changements de topologie avant la fin de la période de validité d un état multicast qui est par défaut de 3 min). 1.2.2.3 Synthèse Comme principaux avantages de PIM-DM, on peut noter : PIM-DM est un protocole efficace quand les récepteurs sont distribués de manière dense au niveau du réseau ; à l instar de tous les protocoles PIM, il est indépendant du protocole de routage unicast sous-jacent ; PIM-DM ne met pas en œuvre de, ce qui fait de lui un protocole plus simple à configurer, mettre en œuvre et déployer que PIM- SM. Comme principaux inconvénients de PIM-DM, on peut noter : tous les routeurs PIM, à la fois ceux qui font partie des arbres de distribution comme ceux qui n en font pas partie, doivent maintenir et conserver des états par source, et ce pour chaque source dans le domaine ; le déploiement à l échelle de PIM-SM pose problème dans des topologies réseau où la plupart des terminaux ne sont pas intéressés par recevoir les flux de diffusion, comme l Internet par exemple. Par conséquent, PIM-DM est principalement utilisé dans de petits domaines multicast individuels, comme un réseau de campus ou d entreprise. 1.2.3 PIM-BIDIR 1.2.3.1 Vue générale T2 Figure 15 Rafraîchissement des états le long de l arbre SPT PIM Bidirectionnel (PIM-BIDIR) est basé sur le protocole PIM-SM et vise à créer un seul et même arbre partagé bidirectionnel par groupe de diffusion G. Comparé aux autres protocoles PIM-SM, 0 T3 PIM-DM ou DVM, PIM-BIDIR est largement moins déployé bien qu il soit supporté par la plupart des équipementiers. PIM-BIDIR a été spécialement défini pour la diffusion du trafic d applications de type p vers n (p émetteurs vers n récepteurs), où chaque participant à un groupe est à la fois source et récepteur de trafic car PIM-SM, qui met en œuvre des arbres unidirectionnels, est peu approprié pour transporter le trafic de telles applications multipoint à multipoint. PIM-BIDIR diffère principalement de PIM-SM par la façon de transmettre des données d une source vers le : avec PIM-SM, les données multicast sont soit encapsulées via des messages Register entre la source et le lorsque la diffusion se fait par un arbre partagé, soit directement transmises via un arbre spécifique à une source ; avec PIM-BIDIR, les données multicast sont transmises directement en mode multicast natif de la source vers le le long d une branche de l arbre partagé, qui est bidirectionnelle. Ainsi, le trafic issu des émetteurs est diffusé le long de l arbre partagé bidirectionnel du groupe à la fois dans le sens montant des sources vers le et dans le sens descendant du vers les récepteurs. Pour fonctionner, PIM-BIDIR nécessite trois modifications principales au protocole PIM-SM. définition par lien d un routeur (Designated Forwarder). Nota : un est élu sur chaque liaison de réseau, quel que soit le type de réseau considéré : LAN, NBMA (Non Broadcast Multiple Access) ou point à point. Afin d éviter des boucles de transmission, un routeur sur chaque lien est élu en tant que pour chaque existant : le routeur élu, pour un sous-réseau donné, est celui qui annonce le chemin de meilleur coût pour atteindre le routeur. Le est élu, au moment de la découverte du, en utilisant de nouveaux messages de type PIM -Election. Il faut noter qu avec PIM-BIDIR, les routeurs ne jouent plus aucun rôle dans le fonctionnement et la gestion des groupes bidirectionnels. Le rôle du routeur est essentiel dans le fonctionnement de PIM-BIDIR : c est le seul routeur sur un lien donné qui, en initiant ou transmettant un message PIM Join (*, G) vers le, crée une branche d un arbre partagé (*, G), c est le seul routeur, sur un lien donné, qui transmette le trafic multicast dans le sens descendant du vers les récepteurs sur l arbre partagé (*, G), c est le seul routeur, sur un lien donné, qui transmette le trafic multicast dans le sens montant (de la source vers le ) sur l arbre partagé (*, G) ; modification des règles du calcul F sur les arbres (*, G) : les acceptent les paquets multicast reçus sur les interfaces de sortie d une entrée multicast (*, G) ; suppression du processus initial d encapsulation des paquets dans les messages Register : les paquets multicast sont transmis nativement entre la source et le le long de l arbre partagé bidirectionnel. 1.2.3.2 Fonctionnement La figure 16 illustre la phase initiale de création de l arbre partagé bidirectionnel (*, G) des récepteurs vers le routeur. Le récepteur T3 demande à joindre le groupe G, son routeur d attachement émet donc un message PIM Join (*, G) vers le qui est transmis de proche en proche par les routeurs jusqu à atteindre le routeur, racine de l arbre partagé (*, G). Un seul routeur est élu par lien réseau : par exemple, sur le réseau LAN auquel sont connectés les trois routeurs, et, c est le routeur qui est élu et transmet donc le message PIM Join (*, G) vers le. Les branches de l arbre T (*, G) issues des récepteurs et T2 sont créées de la même façon. TE 7 529 10 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST T3 LAN Arbre T (*, G) PIM Join (*, G) T2 Figure 16 Création de l arbre partagé bidirectionnel entre les récepteurs et le 1.2.3.3 Synthèse Pour résumer, on peut citer comme principaux avantages de PIM- BIDIR : il n y a pas d arbre spécifique à une source, et de fait aucun état (S, G). Seules des entrées (*, G) sont créées dans la table TIB, ce qui réduit considérablement le nombre d états multicast maintenus dans les routeurs. L absence d états (S, G) fait que le passage à l échelle ne pose pas problème lorsqu il y a beaucoup de sources pour chaque groupe ; contrairement à PIM-SM, le coûteux mécanisme d encapsulation dans des messages PIM Register n est pas mis en œuvre : les messages PIM Register et Register-Stop ne sont jamais utilisés ; PIM-BIDIR est un protocole simple à implanter, qui ne comporte pas d interaction avec le plan de transfert. Par conséquent, les règles d aiguillage des paquets multicast sont bien plus simples avec PIM- BIDIR qu avec PIM-SM : aucun événement du plan de contrôle n est déclenché par la réception de trafic dans le plan de transfert ; à l instar de tous les protocoles PIM, il est indépendant du protocole de routage unicast sous-jacent. Comme principaux inconvénients de PIM-BIDIR, on peut citer : l absence d arbre de plus court chemin avec PIM-BIDIR implique que le trafic multicast soit forcé de rester sur l arbre partagé qui n est pas optimal ; le fonctionnement de PIM-BIDIR en interdomaine pose problème puisqu il est impossible d utiliser MSDP, SSM ou Embedded- avec PIM-BIDIR. T2 1.2.4 PIM-SSM T3 LAN Flux de trafic (S, G) Arbre T (*, G) PIM Join (*, G) Figure 17 Transmission bidirectionnelle du trafic multicast le long de l arbre T La figure 17 illustre le processus de diffusion de trafic multicast dans les deux sens, dans le sens montant de la source vers le et dans le sens descendant du vers les récepteurs. La source S commence à émettre du trafic multicast sur le groupe G. Ce trafic est tout d abord transmis sur l arbre partagé (*, G), de routeur en routeur, dans le sens montant vers le : un routeur qui reçoit ce trafic multicast par un lien pour lequel il est élu transmet ce flux sur l interface F vers le et également sur toutes les interfaces de sortie oif (hormis celle par laquelle il a reçu le trafic de la source). Par exemple, le routeur, qui est sur le réseau LAN, duplique le flux multicast reçu à la fois sur l interface F vers le mais aussi sur l interface de sortie oif vers le routeur (afin d atteindre le récepteur T2). Dès que le trafic multicast atteint le, il est transmis sur les autres branches de l arbre partagé (*, G) dans le sens descendant, du vers les récepteurs : c est ainsi que le trafic atteint le récepteur via les routeurs et. Dans beaucoup de topologies, il serait souhaitable et beaucoup plus efficace de pouvoir construire directement un arbre SPT vers la source sans être contraint, d une part, d utiliser un algorithme de diffusion inefficace de type inondation et élagage, et d autre part, de passer par l étape intermédiaire et complexe consistant à construire un arbre partagé. Le modèle SSM répond à ce double objectif. Il part du principe que l application du terminal multicast connaît, via un mécanisme hors bande, à la fois l adresse du groupe et celle de la source. Dans la terminologie SSM, cette paire (S, G), qui est globalement unique, est appelée canal afin de différencier des groupes du modèle ASM. La connaissance par le récepteur de la source de trafic et du groupe permet de construire directement un arbre de plus court chemin vers la source et d éviter les procédures d établissement d un arbre partagé préalable. La mise en œuvre du modèle SSM est réalisée en apportant quelques modifications au protocole PIM-SM, de sorte qu il élimine la phase de construction de l arbre partagé et les procédures d enregistrement des sources auprès du mais conserve l efficacité des procédures d adhésion explicite et établisse directement des arbres SPT spécifiques à une source. Cette version modifiée de PIM-SM est appelée PIM-SSM. Le formalisme des messages PIM utilisé en mode SSM est identique à celui des messages définis pour le mode SM. Les modifications apportées au protocole PIM-SM sont minimes et concernent les routeurs qui ont ainsi la capacité de générer directement des messages de type PIM Join (S, G) en direction de la source S. Les routeurs PIM de cœur ne sont pas impactés. Pour que PIM-SSM puisse fonctionner, les terminaux multicast doivent donc être capables de signaler à leur routeur local non seulement le groupe qu ils désirent joindre, mais aussi la source de laquelle ils veulent recevoir du trafic. Par conséquent, PIM-SSM nécessite l utilisation conjointe du protocole IGMPv3 ou MLDv2, qui offre chacun la capacité de filtrage ou de sélection de source. Cette nécessité de disposer dans les terminaux récepteurs d une implantation du protocole IGMPv3 ou MLDv2 constitue le frein majeur à un déploiement massif de PIM-SSM dans les réseaux multicast car cette pile protocolaire IGMPv3/MLDv2 n est pas encore disponible dans tous les types de terminaux multicast. Techniques de l Ingénieur TE 7 529 11

PROTOCOLES DE ROUTAGE IP MULTICAST Afin qu un réseau multicast puisse supporter simultanément les modèles ASM et SSM et différencier les deux types de trafic, l Internet Assigned Numbers Authority (IANA) a réservé la plage d adresses IPv4 232/8 et la plage d adresses IPv6 FF3x::96 pour les adresses de groupe SSM. En réservant ces espaces d adresses SSM, PIM- SSM peut coexister avec PIM-SM en imposant les règles suivantes : empêcher des récepteurs de joindre un arbre partagé pour des adresses de groupe dans l espace SSM : les ne doivent pas envoyer de messages PIM Join (*, G) vers un avec des adresses de groupe SSM, les ne doivent pas accepter PIM Join (*, G) pour des adresses de groupe dans l espace SSM ; interdire toute source d émettre du trafic multicast dont l adresse de destination est dans l espace SSM sur un arbre partagé : les routeurs qui ont une source connectée ne doivent pas tenter d enregistrer des paquets multicast auprès d un si ces paquets ont une adresse de destination dans l espace SSM, un ne doit pas accepter des messages Register pour des groupes appartenant à l espace SSM, les ne doivent pas accepter de transmettre sur des arbres partagés des paquets multicast dont l adresse de destination est dans l espace SSM ; empêcher des sources distantes, émettant sur l espace SSM, d être apprises ou jointes via MSDP : un qui active MSDP ne doit en aucun cas accepter, propager ou initier des messages MSDP Source Active (SA) pour des adresses dans l espace SSM, un qui met en œuvre le mécanisme BSR ne doit pas être Candidat- sur l espace d adresses SSM. Pour résumer, l utilisation de PIM-SSM comporte les avantages suivants comparativement à PIM-SM : ingénierie de routage multicast simplifiée : le réseau multicast n a plus à maintenir des informations sur les sources actives par groupes multicast, et donc les et les mécanismes (Anycast-, BSR...) de gestion de ces points de rendez-vous ne sont plus nécessaires. Par conséquent, la complexité mais aussi l installation, la gestion et la maintenance d un réseau multicast SSM est plus simple que celle d un réseau PIM-SM ; allocation des adresses simplifiée : PIM-SSM résout le problème d allocation et d unicité globale des adresses multicast. Un canal de diffusion étant identifié par le couple (S, G) et du fait de l unicité des adresses sources publiques, les problèmes de collision d adresse multicast, et donc d entremêlement de trafic entre plusieurs applications multicast utilisant simultanément la même adresse de groupe G, sont résolus ; sécurité et contrôle d accès renforcés : SSM est bien moins sensible aux attaques par déni de service (DoS), où des sources malveillantes et non autorisées envoient des données à destination d un groupe multicast afin d engorger les ressources de bande passante ou de perturber la diffusion d un service existant. Bien que des sources non autorisées puissent toujours, dans certaines conditions, usurper l adresse de la source légitime afin d introduire du trafic multicast pollueur au sein d un canal, la sécurité est de façon inhérente plus grande que dans le modèle ASM qui accepte des paquets émis par n importe quelle source. Cette robustesse, propre à SSM, aux attaques par détournement de groupe multicast est un argument de poids auprès des diffuseurs de contenu qui souhaitent contrôler et garantir la transmission et l intégrité de leurs émissions ; routage multicast interdomaine simplifié : il est plus facile de recevoir du trafic SSM à travers des domaines multicast que de recevoir du trafic ASM. Par exemple, il n y a pas besoin de coordonner la racine d un arbre partagé global interdomaine ou d utiliser un autre mécanisme de découverte des sources comme le protocole MSDP. 1.2.5 Mécanismes de découverte du De par sa fonction centrale, le routeur constitue naturellement un point de concentration des flux multicast. L une des opérations les plus sensibles dans l ingénierie d un réseau multicast avec PIM- SM ou PIM-BIDIR est de choisir l emplacement des routeurs au sein du réseau multicast. En général, l administrateur d un réseau multicast choisit de configurer un ou plusieurs routeurs et associe à chacun une plage d adresses multicast spécifique. Tous les routeurs PIM du domaine doivent connaître l identité des et les plages d adresses multicast associées. Plusieurs mécanismes ou protocoles permettent d annoncer à un routeur PIM ces associations plage d adresses de groupe adresse du ; idéalement, ces mécanismes de découverte de doivent être capables d offrir les fonctions suivantes : partage de charge, passage à l échelle : le routeur doit réaliser, pour chacun des groupes dont il a la charge, un certain nombre d opérations et traitements spécifiques, en particulier décapsuler les paquets PIM Register reçus, ce qui peut lui occasionner une charge importante. Par conséquent, il serait souhaitable de pouvoir distribuer cette charge de manière égale sur plusieurs ; tolérance aux fautes : un est un point unique de panne d un réseau multicast, donc idéalement il doit y avoir un mécanisme de redondance qui permette de traiter la panne d un ; facilité de configuration : pour qu un réseau multicast fonctionne normalement, chaque routeur dans un domaine PIM-SM ou PIM-BIDIR doit avoir les mêmes correspondances entre groupes et. Idéalement, la mise en place de ces correspondances ne doit pas nécessiter trop de travail de configuration de la part des gestionnaires de réseau. Les paragraphes suivants détaillent les quelques méthodes de découverte du envisageables. 1.2.5.1 Configuration statique L administrateur réseau assigne, de manière statique, à chaque de son réseau multicast IP une plage d adresses de groupe qu il devra gérer et configure manuellement sur chaque routeur PIM les associations groupe-. Cette méthode présente l avantage d être très simple techniquement et de permettre n importe quelle correspondance groupe-. Quant aux inconvénients de cette solution, on peut souligner l important travail de configuration nécessaire dans les réseaux de grande taille pour mettre en place sur tous les routeurs PIM les associations groupe-, et l absence totale de tolérance en cas de panne du. 1.2.5.2 Mécanisme BSR Le mécanisme PIM Bootstrap Router (BSR) fait partie intégrante du protocole PIM-SM et fonctionne comme suit : certains routeurs dans le domaine multicast sont configurés en tant que Candidats-BSR ou C-BSR. Un routeur parmi ceux-ci est élu routeur BSR et diffuse périodiquement des messages PIM Bootstrap dans tout le domaine, les routeurs perdants deviennent des routeurs BSR de secours ; Nota : le BSR élu est celui qui est configuré par l administrateur réseau avec la plus grande priorité. En cas d égalité, c est celui qui a la plus grande adresse IP qui est élu. Ces deux informations sont transportées dans les messages PIM Bootstrap à travers tout le domaine et permettent aux routeurs C-BSR d identifier le routeur BSR élu. certains routeurs dans le domaine multicast sont configurés en tant que Candidats- ou C-. Chaque C- émet périodiquement des messages unicast PIM Candidate--Advertisement vers le BSR élu afin d annoncer sa candidature en tant que pour un espace d adresses de groupe ; le BSR sauvegarde les annonces reçues des Candidats- dans une base de données appelée -Set, ces informations sont ensuite incluses dans des messages PIM Bootstrap et diffusées périodiquement à tous les autres routeurs PIM du domaine : un message Bootstrap contient d une part le -Set complet, c est-à-dire les annonces TE 7 529 12 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST de tous les routeurs C- du domaine reçus par le BSR élu et d autre part les caractéristiques du routeur BSR élu (priorité et adresse IP) ; les routeurs PIM mettent en cache les associations -groupes reçues des messages Bootstrap et déterminent, grâce à un algorithme de hachage commun à tous les routeurs PIM, un actif par groupe multicast parmi l ensemble des C- candidats pour le groupe en question. Puisque tous les routeurs PIM exécutent le même algorithme de hachage sur la même base -Set, cela garantit qu ils sélectionnent tous le même pour un groupe donné. Le mécanisme BSR garantit une tolérance en cas de panne du et permet le partage de charge entre différents routeurs en attribuant à chacun des plages d adresses multicast distinctes à gérer. L inconvénient majeur de BSR consiste en un allongement des temps de convergence, en cas de panne d un, mais tient aussi à sa complexité technique. Nota : en cas de défaillance d un routeur, il faut attendre que les annonces de ce expirent dans le -Set du BSR et ne soient plus diffusées pour qu un nouveau soit élu pour les groupes initialement gérés par le défaillant. Dans le pire cas, la sélection d un nouveau par les routeurs PIM peut prendre 2,5 C Adv_Period, soit par défaut 2,5 60 = 150 s pendant lesquelles le service de diffusion multicast par les arbres T du défaillant est interrompu. En revanche, si l administrateur a configuré dans son réseau multicast PIM-SM un basculement systématique vers des arbres SPT, alors seuls les nouveaux terminaux tentant de souscrire aux groupes initialement gérés par le défaillant sont impactés et interdits de service pendant cette période. 1.2.5.3 Auto- Auto- est un protocole, non standardisé et développé par le constructeur Cisco, similaire à BSR, qui présente donc les mêmes avantages et inconvénients. Il fonctionne comme suit : certains routeurs dans le domaine sont configurés en tant que Candidats-. Chaque Candidat- émet des messages Announcement sur l adresse de groupe multicast CISCO-- ANNOUNCE ; certains routeurs dans le domaine sont configurés en tant que Agents -Mapping. Ces routeurs écoutent sur le groupe multicast CISCO--ANNOUNCE et reçoivent par conséquent les messages Announcement. Ils sélectionnent un sous-ensemble des Candidats- qu ils incluent et émettent des messages Discovery sur l adresse de groupe multicast CISCO--DISCOVERY ; tous les routeurs PIM écoutent sur le groupe CISCO--DIS- COVERY et reçoivent les messages Discovery. Cette information leur permet de déterminer le routeur pour un groupe donné. Soit ces deux groupes d annonce particuliers CISCO-- ANNOUNCE et CISCO--DISCOVERY sont configurés pour fonctionner en mode dense, soit tous les routeurs PIM du réseau sont configurés statiquement avec l adresse du qui les gère. 1.2.5.4 Anycast- Anycast-, qui est défini dans la RFC 3446, n est pas à proprement parler une méthode de découverte du, mais un moyen de contourner la restriction d avoir un seul par groupe multicast. Tout en étant moins complexe que les deux solutions précédentes, il en conserve les avantages essentiels du point de vue du passage à l échelle et de la tolérance aux fautes. Plusieurs dans un domaine multicast sont configurés avec la même adresse IP unicast (en général, l adresse IP choisie est celle d une interface de loopback), et cette adresse de partagée est configurée sur tous les routeurs. Ainsi, les des sources et des récepteurs sélectionnent automatiquement le le plus proche au sens de leur IGP. Afin que tous les aient connaissance de toutes les sources du domaine émettant sur les groupes de diffusion, des sessions MSDP doivent être établies entre les afin qu ils s échangent des informations sur leurs sources respectives. Nota : une solution alternative, qui permet de s affranchir de l usage du protocole MSDP avec Anycast-, est en cours de définition à l IETF (voir draft IETF) : elle propose une extension au protocole PIM-SM pour propager les informations sur les sources actives parmi les du domaine multicast. L avantage d Anycast- est double : partage de charge, passage à l échelle. La charge liée à la décapsulation des paquets PIM Register est distribuée sur plusieurs. Cela offre la possibilité, par rapport aux précédentes méthodes, de faire sur le du partage de charge pour chaque groupe : il n est plus nécessaire de répartir la gestion des groupes multicast entre les, comme c était le cas pour les deux autres méthodes ; tolérance aux fautes : si un tombe en panne, les sources et récepteurs qu il gère sont automatiquement distribués aux autres par l infrastructure de routage unicast : les consultent leur table de routage unicast pour trouver un chemin alternatif vers l adresse du et n ont pas conscience que cet autre chemin conduit à un différent qui a la même adresse. Le temps de restauration, qui dépend uniquement du temps de reroutage unicast, est donc bien plus court que pour les autres protocoles de découverte du. De ce fait, il est en général préféré et recommandé d utiliser Anycast- combiné avec une configuration statique du, plutôt que d utiliser Auto- ou BSR, puisque cela évite les complexités des deux mécanismes précédents tout en préservant leurs bénéfices. 1.2.5.5 Adresses multicast de type Embedded- Embedded-, qui est défini dans la RFC 3956, est une méthode qui permet d insérer l adresse du d un groupe dans l adresse du groupe elle-même. Ce mécanisme est disponible uniquement en IPv6, et fonctionne pour un sous-ensemble de l espace d adresses IPv6 (FF70::/12). L avantage d utiliser Embedded- est qu aucun mécanisme ou configuration de découverte du n est nécessaire, mais l inconvénient majeur est que l adresse du devient visible globalement dans tout le réseau multicast, ce qui rend le vulnérable vis-à-vis d attaques par déni de service de la part de récepteurs malveillants. De plus, comme Embedded- ne peut être utilisé que pour un sous-ensemble de l espace d adresses multicast IPv6, un autre mécanisme de découverte du est nécessaire pour toutes les autres adresses IPv6 multicast. Enfin, il est important de noter que Embedded- est aussi incompatible avec PIM-BIDIR, puisque le protocole PIM-BIDIR implique d élire le, et donc d avoir découvert le, avant que les données multicast commencent à être transmises, ce qui est impossible avec la solution Embedded-. 1.2.6 Cohabitation entre les modes PIM-SM, PIM-DM, PIM-BIDIR et PIM-SSM En mode multicast, un réseau IP peut supporter simultanément aussi bien les communications de groupe de type «1 vers n» que celles de type «p vers n». Moyennant une ingénierie et une configuration appropriées des routeurs multicast, les quatre protocoles PIM-SM, PIM-DM, PIM-SSM et PIM-BIDIR cohabitent sans problème sur un seul et même réseau multicast. D un point de vue fonctionnel, PIM-SSM est à part puisqu une plage d adresses (232/8 en IPv4 et FF3x::/96 en IPv6) a été réservée spécifiquement et exclusivement pour l usage de PIM-SSM : le modèle de service SSM doit être le seul possible dans cette plage d adresses de groupe spécifique. La cohabitation entre les trois autres protocoles PIM-SM, PIM-DM et PIM-BIDIR est différente. La distinction ne peut se faire cette fois, comme dans le cas de PIM-SSM, en fonction de l adresse de groupe, car ils partagent et fonctionnent sur la même plage d adresses multicast. En général, un seul protocole parmi PIM-SM, PIM-DM et PIM- BIDIR est utilisé à travers un domaine multicast. Cependant, rien n interdit d utiliser simultanément une combinaison de ces trois protocoles en distribuant les groupes multicast entre les différents protocoles. Chaque groupe doit opérer en mode épars, dense ou bidirectionnel ; il n est pas possible d utiliser un même groupe dans plus d un mode à la fois. Dès lors que les adresses de groupe multicast ont été réparties entre les protocoles PIM, ceux-ci opèrent parfaitement et coexistent alors presque indépendamment les uns des autres. Techniques de l Ingénieur TE 7 529 13

PROTOCOLES DE ROUTAGE IP MULTICAST La seule façon dont ces protocoles interagissent est via le même protocole Hello, qui est utilisé et exécuté une seule fois sur chaque LAN, quel que soit le nombre de protocoles PIM activés sur le réseau. Les informations apprises à partir de l échange des messages Hello doivent être partagées entre les trois protocoles de routage. La méthode pour distribuer les groupes entre les trois protocoles n est pas décrite dans les protocoles PIM mais c est une question de configuration locale sur les routeurs. Il est important de souligner que les assignations de groupes à chaque protocole doivent être identiques et cohérentes sur chaque routeur dans le domaine. Voici les techniques envisageables : le protocole BSR a été étendu afin d ajouter un bit «bidirectionnel» pour chaque plage d adresses de groupe. Cette méthode peut être utilisée afin d assigner les groupes entre les modes épars et bidirectionnel si BSR est utilisé ; les routeurs peuvent être configurés afin d utiliser le mode dense si le mécanisme de découverte du employé échoue à trouver un disponible pour un groupe, et d utiliser les modes épars et bidirectionnel autrement ; les routeurs peuvent être configurés manuellement avec des plages d adresses de groupe distinctes pour les modes épars, dense ou bidirectionnel. 1.3 Protocole DVM La première version du protocole DVM (Distance Vector Multicast Routing Protocol) a été créée en 1988 et est documentée dans la RFC 1075. Depuis, deux autres versions ont suivi, mais ne sont pas allées au terme de la procédure de standardisation à l IETF. Néanmoins, ce protocole était, et est toujours, largement déployé dans le réseau MBONE. DVM est un protocole de routage multicast de type dense qui utilise son propre algorithme de routage par vecteur de distance pour calculer les routes multicast dans le réseau. Le fonctionnement de DVM est similaire à celui du protocole PIM-DM dans la phase de construction des arbres multicast : dès qu une source commence à transmettre des données sur un groupe multicast, un arbre multicast, spécifique à la source et au groupe multicast, est construit selon la technique inondation et élagage. Cet arbre de plus court chemin s étend de la source, qui est racine de l arbre, à tous les récepteurs multicast du groupe qui constituent les feuilles de cet arbre. Néanmoins, DVM diffère de PIM-DM des points suivants : il utilise son propre algorithme par vecteur de distance, similaire à RIP (Routing Information Protocol) ; pour calculer les routes multicast dans le réseau, plutôt que de dépendre d une table de routage multicast MRIB externe ; le processus d échange des routes résout automatiquement les conflits d aiguillage. En fait, DVM utilise dans sa phase de construction des arbres de distribution multicast un processus d inondation plus sélectif que celui de PIM-DM, grâce à des informations spécifiques fournies par le protocole de routage unicast. Un routeur DVM, appelons-le, contient dans sa table de routage unicast des informations lui permettant de déterminer si un routeur DVM adjacent, appelons-le, voit comme étant sur le plus court chemin vers la source multicast. Ainsi, ne transmet un paquet multicast à que si en a besoin pour prolonger à son tour l arbre de distribution multicast. Cette amélioration permet de réduire significativement le nombre de paquets multicast inondés sur le réseau afin de construire les arbres de distribution multicast ; son algorithme de routage supporte nativement l établissement de tunnels entre routeurs DVM au travers de réseaux uniquement unicast. Ces tunnels utilisent typiquement des encapsulations IP-in-IP (RFC 1853) ou GRE (Generic Routing Encapsulation, définie dans la RFC 1702) ; les messages de contrôle de DVM sont encapsulés directement dans des paquets IP avec le champ «protocole» de l en-tête IP égal à 2 (comme avec IGMP). Les avantages et inconvénients de DVM sont similaires à ceux de PIM-DM, excepté que DVM n est pas indépendant du protocole de routage unicast comme PIM. On considère DVM comme un protocole convenable pour des petits réseaux, particulièrement ceux qui transportent uniquement du trafic multicast, mais comme tout protocole de type dense, il a des limites de passage à l échelle pour des réseaux de plus grande taille. 1.4 Protocole MOSPF Le protocole MOSPF (Multicast Extensions to OSPF) est une extension du protocole de routage unicast OSPF qui en fait un protocole de routage combiné unicast et multicast. Une seule version de ce protocole a été standardisée (RFC 1584) et il n a été que marginalement déployé. La portée de MOSPF est limitée à un seul domaine de routage, c est-à-dire un réseau contrôlé et opéré par une seule organisation. MOSPF implique l utilisation conjointe du protocole OSPF comme protocole de routage unicast compagnon. MOSPF diffère essentiellement de tous les autres protocoles de routage multicast en ce sens qu il n y a pas de messages protocolaires échangés entre voisins MOSPF pour construire les arbres de distribution multicast. Chaque routeur MOSPF diffuse périodiquement à tous les routeurs dans son domaine de routage les informations sur les appartenances à des groupes multicast qu il a appris via IGMP, plus les informations de type état de lien d OSPF. Ainsi, chaque routeur maintient une image à jour de la topologie globale du réseau et utilise cette information de type état de lien pour pouvoir calculer les arbres pour chaque source et groupe. MOSPF construit les arbres multicast comme suit : MOSPF utilise le même mécanisme link-state qu OSPF pour calculer et distribuer les routes unicast à travers le domaine, à l exception près que dans MOSPF, certains liens sont marqués comme étant «capables multicast» et d autres non. Ce mécanisme permet ainsi de définir des topologies réseau non congruentes pour les flux unicast et multicast ; le même mécanisme de diffusion est aussi utilisé pour distribuer à tous les routeurs dans le domaine les informations concernant l appartenance aux groupes de diffusion apprises via IGMP. Ce LSA supplémentaire permettant de localiser les membres d un groupe contient uniquement des états (*, G), le support de SSM, à savoir la possibilité de sélectionner explicitement des sources de trafic, n est donc pas possible avec MOSPF ; le calcul de l arbre de distribution multicast est actionné par les données multicast (événement data-driven en anglais). Lorsqu il reçoit un paquet multicast (S, G), un routeur utilise les informations qu il a apprises sur les routes et les appartenances aux groupes multicast pour calculer l arbre complet de plus court chemin pour ce flux (S, G). Si le routeur découvre qu il est situé sur l arbre en question, il aiguille et réplique les paquets multicast vers les seuls liens aval. MOSPF utilise l algorithme de Dijkstra pour calculer cet arbre de plus court chemin : un calcul distinct est nécessaire pour chaque paire (source, groupe). Afin de réduire et d échelonner quelque peu le nombre de calculs à effectuer, un routeur ne fait cette opération que lorsqu il reçoit le premier paquet d un flux multicast. Dès que l arbre est calculé, cette information est stockée pour router les paquets suivants du flux. Comme tous les routeurs connaissent et partagent la même information sur la topologie globale du réseau, ils calculent de façon indépendante l arbre de coût minimum dont la racine est la source multicast et les feuilles sont les membres du groupe. Tous les routeurs calculent exactement le même arbre, puisqu ils partagent et s annoncent périodiquement toute information de type état de lien. Ce fonctionnement est illustré sur la figure 18 : TE 7 529 14 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST 1 Flux de trafic (S,G) T2 2 2 Figure 18 Calcul de l arbre de plus court chemin réalisé par MOSPF 1. le routeur reçoit le premier paquet multicast (S, G), il calcule l arbre de plus court chemin vers les membres du groupe G : il connaît l emplacement de et T2 via IGMP et par conséquent sait que le plus court chemin vers est via, et que le plus court chemin vers est via. Il duplique le paquet multicast sur ses deux interfaces aval ; 2. le routeur reçoit le paquet multicast (S, G) et calcule l arbre : il sait que le plus court chemin vers est via et transmet le paquet multicast sur cette interface. Le routeur reçoit le paquet multicast (S, G) et calcule l arbre : il détermine que le chemin vers est direct et transmet le paquet multicast sur cette interface ; 3. le routeur reçoit le paquet multicast (S, G) et calcule l arbre : il détermine que le chemin vers est direct et transmet le paquet multicast sur cette interface. Un des avantages de MOSPF tient à sa simplicité de mise en œuvre : il n est pas nécessaire de définir de routeurs et aucun des mécanismes Assert, Designated Router et Designated Forwarder présents dans PIM n est nécessaire. Le protocole MOSPF peut présenter un éventuel intérêt dans les réseaux qui activent déjà OSPF comme protocole de routage unicast. Néanmoins, il a les mêmes limitations de passage à l échelle inhérentes à OSPF, à cause de la diffusion périodique d informations d état de lien entre tous les routeurs du domaine. 3 0 Les caractéristiques essentielles des protocoles de routage multicast intradomaine sont résumées et comparées dans le tableau 1. 2. Routage multicast interdomaine Le routage multicast interdomaine présente un certain nombre de difficultés et de défis supplémentaires comparés au routage multicast intradomaine. Le but n est plus de déployer des services multicast IP au sein du réseau d un fournisseur de service, mais plutôt de permettre de partager et de distribuer des services de diffusion entre plusieurs domaines et fournisseurs de service. Pour y arriver, le protocole de routage multicast interdomaine candidat doit répondre à un certain nombre d exigences, parmi lesquelles : le protocole candidat doit permettre et traiter des différences de topologie et/ou de politique de routage pour les services unicast et multicast ; le protocole candidat doit permettre aux opérateurs réseau de préserver leur autonomie de contrôle de leur propre : un fournisseur de service ne veut en aucun cas être dépendant de réseaux tiers. Par exemple, il ne veut pas dépendre d un situé dans un autre domaine, maintenu et géré par un opérateur concurrent, pour pouvoir offrir un service de diffusion et transmettre des flux multicast à ses propres clients ; un fournisseur de service doit pouvoir avoir toute latitude et flexibilité dans le placement de son. Par exemple, il ne veut pas être contraint et forcé pour s interconnecter avec d autres domaines PIM-SM, de placer son à un endroit commun avec d autres opérateurs, comme un point d interconnexion multicast public ; des mécanismes d allocation d adresses multicast globales doivent être définis. Ce paragraphe décrit les différentes méthodes envisageables pour mettre en œuvre un routage multicast interdomaine. Dans un premier temps, on décrit le protocole MSDP (Multicast Source Discovery Protocol) ( 2.1) qui est utilisé pour échanger des informations sur les sources entre des situés dans des domaines PIM-SM différents. C est la solution qui est principalement déployée dans les réseaux multicast actuels, permettant d interconnecter des domaines PIM-SM, mais elle ne peut pas être déployée à grande échelle et à long terme, puisque la quantité d informations de contrôle MSDP augmente linéairement avec le nombre total de sources dans les domaines multicast. (0) Tableau 1 Comparaison des protocoles de routages multicast intradomaine PIM-SM PIM-DM PIM-SSM PIM-BIDIR DVMPR MOSPF Dépendant de l IGP X X Indépendant de l IGP X X X X Mode dense X X X Mode épars X X X Mode d adhésion implicite X X Mode d adhésion explicite X X X X Arbre partagé X X Arbre basé source X X X X Techniques de l Ingénieur TE 7 529 15

PROTOCOLES DE ROUTAGE IP MULTICAST Ensuite, on présente la solution à plus long terme que constitue BGMP (Border Gateway Multicast Protocol) ( 2.2) : ce protocole a pour ambition d être un vrai protocole de routage multicast interdomaine, fonctionnant entre domaines pouvant activer différents protocoles de routage multicast intradomaine. Enfin, deux solutions alternatives sont aussi discutées : d une part, PIM-SSM pour des diffusions multicast point à multipoint interdomaines ( 2.3), et d autre part, l utilisation d adresses de groupe Embedded- dans le cas de réseaux multicast IPv6 ( 2.4). 2.1 Protocole MSDP 2.1.1 Vue générale Dans le modèle PIM-SM, la diffusion des données multicast entre sources et récepteurs du groupe est possible au sein d un domaine grâce à un qui a connaissance des sources et récepteurs de son domaine. En revanche, un n a aucun moyen de connaître l existence de sources situées dans d autres domaines multicast, ce qui empêche toute transmission de données multicast à travers plusieurs domaines. Les dans des domaines distincts ont donc besoin d un protocole qui leur permette de partager et découvrir des informations à propos des sources de trafic multicast. Ce protocole est MSDP (Multicast Source Discovery Protocol), qui est documenté dans la RFC 3618. MSDP est un protocole compagnon de PIM-SM qui permet de connecter des domaines PIM-SM grâce à des arbres interdomaines spécifiques à une source plutôt que des arbres partagés. Il permet à des routeurs situés dans des domaines multicast différents d échanger des informations sur les sources multicast qu ils contrôlent dans leur domaine. Cette information consiste essentiellement en une liste de paires source/groupe pour les sources multicast actives dans leur domaine, permettant à d autres PIM-SM de découvrir et joindre des sources dans le domaine. L intérêt du protocole MSDP est qu il permet de mettre en œuvre des diffusions multicast interdomaines, tout en autorisant chaque fournisseur de service à conserver localement son propre indépendant. Même si, en théorie, il est possible d utiliser MSDP avec d autres protocoles de routage que PIM-SM, aucune autre spécification n existe. Enfin, comme il a été vu précédemment, le protocole MSDP peut également être utilisé pour échanger des informations de routage multicast entre des d un même domaine via Anycast-. Le protocole MSDP fonctionne comme suit : les dans chaque domaine activent le protocole MSDP. Il est également possible d activer MSDP sur des routeurs qui ne sont pas ; dans ce cas, ils peuvent relayer des annonces MSDP à d autres nœuds MSDP, mais ils ne peuvent pas être à l origine ou réagir à des messages MSDP ; chaque nœud MSDP est configuré explicitement avec un ensemble de pairs MSDP dans d autres domaines avec lesquels il crée des sessions MSDP (via l établissement de connexions TCP) ; quand un reçoit un message PIM Register d une nouvelle source dans son domaine multicast, il crée un message MSDP Source-Active (SA) et le diffuse à tous ses pairs MSDP. Chaque message SA contient l adresse IP de la source, l adresse du groupe multicast et l adresse IP du nœud MSDP à l origine du message. Le routeur émet alors périodiquement ce message SA tant que la source de trafic est active ; les messages MSDP, qui contiennent un ou plusieurs messages SA, sont diffusés de proche en proche à travers le réseau MSDP jusqu à atteindre l ensemble des routeurs MSDP faisant partie des réseaux multicast interconnectés. La diffusion des messages SA par les pairs MSDP est contrôlée par une procédure F modifiée pour éviter toute boucle de transmission. Un nœud MSDP utilise les informations de routage distribuées par MBGP et n accepte un message SA que s il a été envoyé par le pair MSDP qui est sur le meilleur chemin vers le nœud MSDP origine ; quand un reçoit un nouveau message SA qui annonce une paire source S/groupe G et qu il a une entrée (*, G) dans sa table TIB (c est-à-dire qu il y a au moins un récepteur dans son domaine qui demande à recevoir le trafic multicast issu de ce groupe G), le crée un arbre de plus court chemin vers la source (et non vers le de la source) en émettant un message PIM Join (S, G) vers cette source, exactement comme s il avait reçu directement un message PIM Register de la source S. Dès que cette branche SPT vers la source est établie et que le transmet les données sur l arbre partagé, un routeur d accès, qui a des membres du groupe G directement connectés, a la possibilité d après les conventions de PIM-SM de basculer vers un arbre de plus court chemin en joignant l arbre spécifique à la source S ; un routeur MSDP a la possibilité de filtrer les messages SA qu il émet mais aussi, dans le cas de groupes à portée administrée (voir la description des adresses à portée administrée faite dans la RFC 2365), les messages SA reçus de pairs MSDP qu il doit diffuser. 2.1.2 Fonctionnement La figure 19 illustre le processus de diffusion des messages MSDP SA entre pairs MSDP lorsqu une source de trafic multicast devient active. Dans cet exemple sont schématisés cinq domaines multicast PIM- SM A à E qui ont chacun leur propre. Ces, qui sont également des pairs MSDP, établissent entre eux des sessions MSDP via TCP. Supposons qu un récepteur dans le domaine E joigne le group multicast G=225.1.1.1, ce qui provoque l émission par son, le routeur Rr, d un message PIM Join (*, G) vers son et la création d une branche de l arbre partagé (*, G) du du domaine E vers le routeur Rr. Quand la source de trafic multicast S dans le domaine A commence à émettre du trafic sur le groupe G, le routeur d attachement Rs de la source envoie un message PIM Register à son afin de l informer qu une source est active dans le domaine local. Le crée alors un message MSDP SA (S, G) et le transmet à ses deux pairs MSDP situés dans les domaines B et C. Quand les des domaines B et C reçoivent les messages MSDP SA, ils font un contrôle F sur ces messages et les transmettent à leur tour à leurs pairs MSDP. Ainsi, les messages SA sont diffusés à tous les domaines multicast et atteignent finalement le routeur MSDP du domaine E. Nota : certains messages MSDP SA sont détruits à cause d un contrôle F non valide. C est notamment le cas du message SA transmis par le pair MSDP du domaine B à son pair du domaine C, et celui transmis par le du domaine D au du domaine E. Dès que le premier message MSDP SA atteint le du domaine E, celui-ci constate qu il a une branche de l arbre partagé active pour le groupe 225.1.1.1. Il réagit à ce message MSDP SA en envoyant un message PIM Join (S, G) vers la source afin de recevoir le trafic émis par la source S sur le groupe G. Ce message PIM Join (S, G) va suivre la route interdomaine de plus court chemin vers la source S. Le cheminement de ce message PIM Join entre domaines multicast, qui n est pas nécessairement le même que celui emprunté par les messages SA via les sessions MSDP, est illustré sur la figure 20. Dès que l arbre de plus court chemin (S, G) est construit entre le routeur Rs d attachement de la source dans le domaine A et le du domaine E, le flux de trafic (S, G) commence à être transmis nativement via cet arbre. Puis le du domaine E transmet à son tour ce flux via l arbre partagé (*, G) à destination du récepteur comme illustré sur la figure 21. Dès que le premier paquet (S, G) atteint le routeur (Rr) du récepteur dans le domaine E, ce dernier routeur peut optionnellement émettre un message PIM Join (S, G) vers la source afin d éviter le passage par le du domaine E et de construire l arbre de plus court chemin entre la source et le récepteur. Ce fonctionnement est illustré sur la figure 22. TE 7 529 16 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST Sessions MSDP MSDP Source Active PIM Join PIM Register SA SA Domaine B SA Domaine C F NOK SA SA SA Message SA 198.1.1.1, 225.1.1.1 Domaine E PIM Join (*, 225.1.1.1) Rr F NOK SA Domaine D Message SA 198.1.1.1, 225.1.1.1 S RS Domaine A PIM Register 198.1.1.1, 225.1.1.1 Figure 19 Diffusion des messages MSDP SA entre pairs MSDP Sessions MSDP PIM Join Domaine C Domaine E Rr Sessions MSDP Trafic multicast PIM Join Domaine C Domaine E Rr PIM Join (S, 225.1.1.1) Domaine B Domaine B Join (S, 225.1.1.1) Domaine D Domaine D Rs Domaine A Rs Domaine A Figure 20 Construction de l arbre SPT interdomaine entre le côté récepteur et la source Figure 22 Construction de l arbre SPT interdomaine entre le récepteur et la source Sessions MSDP Trafic multicast Domaine C Domaine E Rr Sessions MSDP Trafic multicast Domaine C Domaine E Rr Domaine B Domaine B Rs Domaine A Domaine D Figure 21 Transmission du trafic via l arbre SPT entre la source et le puis via l arbre T La figure 23 illustre la transmission de bout en bout du trafic multicast (S, G) le long de l arbre de plus court chemin entre la source S située dans le domaine A et le récepteur situé dans le domaine E. Rs Domaine A Figure 23 Le trafic (S, G) est transmis de bout en bout via l arbre SPT 2.1.3 Problèmes existant avec MSDP Domaine D Le déploiement de MSDP pose quelques problèmes, parmi lesquels la prise en compte de sources de trafic sporadiques et les limites de passage à l échelle. Techniques de l Ingénieur TE 7 529 17

PROTOCOLES DE ROUTAGE IP MULTICAST 2.1.3.1 Cas des sources sporadiques Quelques-unes des applications multicast les plus utilisées sur le MBONE ont la particularité d être sporadiques, c est-à-dire qu au plus, seuls quelques paquets sont émis à la suite sur le groupe. Or, le protocole MSDP est inadapté au support des sources à débit irrégulier. Dans la plupart des cas, les premiers paquets d une telle transmission sont perdus, et si la transmission est courte et irrégulière, il est probable que toutes les données seront perdues. Nota : afin de s assurer que les premiers paquets d une transmission soient correctement délivrés, les premières spécifications du protocole MSDP permettaient que les messages SA puissent également transporter des données multicast en plus des informations de contrôle. Cependant, utiliser une connexion de contrôle TCP pour transporter des données est une solution inappropriée et dangereuse, et finalement la spécification initiale a été modifiée et recommande désormais d utiliser UDP plutôt que TCP pour transmettre des données multicast entre pairs. Pour illustrer les problèmes liés à des sources sporadiques, prenons le cas de l application S (Session Directory), qui émet périodiquement des paquets multicast SAP (Session Announcement Protocol) afin d annoncer l existence et la description de sessions multicast. Sitôt que le de la source reçoit le premier paquet SAP, il crée et diffuse un message SA vers ses pairs MSDP. Mais compte tenu du temps nécessaire à la diffusion de proche en proche des messages SA entre pairs MSDP puis à la construction par les qui ont des récepteurs connectés, d une branche de l arbre SPT vers la source, il est possible que la source ait déjà cessé d émettre des paquets SAP avant que les récepteurs n aient eu le temps de recevoir la moindre donnée. En outre, si la diffusion reprend quelques minutes plus tard et que d autres paquets SAP sont émis après que l entrée multicast a expiré (sans réception de trafic, la validité d une entrée multicast dans la table TIB d un routeur PIM-SM est par défaut de 3 min), alors le processus de diffusion des messages MSDP et celui de création des branches de l arbre SPT vers la source doivent être recommencés. 2.1.3.2 Passage à l échelle S il y a sur les réseaux multicast interconnectés des milliers de groupes et sources multicast actifs simultanément, alors le nombre de messages SA inondés entre pairs MSDP est tellement important qu il peut engorger les ressources et capacités de traitement des routeurs MSDP. La charge associée au traitement des messages MSDP est d autant plus importante que les groupes sont dynamiques, du fait de sources sporadiques ou d abonnements/désabonnements fréquents de la part des membres. Puisque la quantité de trafic MSDP augmente linéairement avec le nombre de sources, le protocole MSDP est considéré par les experts du domaine comme une solution intérimaire mais qui ne convient pas pour un déploiement à long terme et à grande échelle. Cependant, étant donné que des solutions à long terme ne sont pas prêtes à être déployées, MSDP est une solution de compromis fonctionnelle et acceptable pour le futur proche. 2.2 Protocole BGMP 2.2.1 Vue générale Alors que la suite de protocoles PIM-SM/MBGP/MSDP est actuellement utilisée pour mettre en œuvre un routage multicast interdomaine, d autres solutions à plus long terme ont été examinées, parmi lesquelles le protocole BGMP (Border Gateway Multicast Protocol) est la proposition qui a reçu la plus d attention. Le protocole BGMP supporte à la fois les modèles SSM et ASM, son but est de permettre un routage multicast interdomaine complet au travers d un ensemble de réseaux et domaines multicast qui peuvent activer des protocoles de routage multicast intradomaine différents. BGMP est décrit dans la RFC 3913 : le statut «informationnel» de cette RFC souligne le fait que ce protocole ne peut pas être déployé et qu il est incertain qu il devienne un standard IETF. Nota : en 2006, aucun constructeur de routeur ne fournit d implantation de ce protocole. Les routeurs de frontière d un domaine, appelés BR (Border Router), exécutent BGMP pour construire un arbre partagé interdomaine par groupe multicast. Ces mêmes routeurs activent aussi un protocole de routage multicast intradomaine, appelé Multicast Interior Gateway Protocol (MIGP). Ce protocole MIGP, tel PIM-SM, DVM, etc., est chargé de router le trafic multicast au sein du domaine. On dit de ces routeurs, qui exécutent à la fois un MIGP et BGMP, qu ils ont un composant MIGP et un composant BGMP. BGMP inclut dans son architecture des concepts empruntés à PIM-SM et CBT en nécessitant que chaque groupe multicast global soit associé avec un seul point de rendez-vous. Les arbres partagés ont toujours un point de rendez-vous racine, mais la définition du a été étendue : dans le cas de BGMP, celui-ci n est plus un seul routeur mais un domaine multicast entier. Le modèle ASM nécessite que chaque groupe multicast soit associé à un seul domaine racine. Une fonction clé pour BGMP est de pouvoir déterminer où se trouve le d un groupe. Le domaine racine est le domaine où l initiateur du groupe est localisé. Par conséquent, pour savoir où est le domaine racine, BGMP doit connaître quel domaine possède la plage d adresses contenant l adresse multicast du groupe. Cette association adresse de groupe domaine multicast peut être : soit apprise via un protocole d adressage hiérarchique, tel MASC (Multicast Address-Set Claim) ou un protocole équivalent, qui permette d associer des plages d adresses multicast à des domaines spécifiques et de distribuer ces associations ; soit encodée, dans des adresses multicast IPv6 de type Préfixe Unicast s il s agit de réseaux multicast IPv6. Nota : l encodage des adresses IPv6 de type Préfixe Unicast est spécifié dans la RFC 3306. Voici résumées les caractéristiques essentielles du protocole BGMP : BGMP est exécuté sur les routeurs de frontière entre des domaines multicast. BGMP crée et utilise des connexions TCP entre pairs pour qu ils s échangent des informations de contrôle, et notamment des requêtes d adhésion ou de résiliation à un groupe ; les routeurs BGMP envoient des messages Join et Prune vers des pairs dans d autres domaines en fonction des requêtes reçues de la part des membres. Un routeur BGMP utilise ces messages Join et Prune pour construire des entrées de routage (*, G) pour l aiguillage des paquets multicast entre domaines ; si un routeur BGMP qui reçoit un paquet de données multicast n a pas d entrée (*, G) dans sa table pour ce paquet, il le transmet alors vers le domaine racine. 2.2.2 Fonctionnement Dans cet exemple, on suppose que le domaine B soit le domaine racine pour l espace de groupe 225.1.1.0/24 (l espace de groupe 225.1.1.0/24 a été assigné au domaine B et annoncé à l ensemble des domaines via des sessions MBGP) et qu un terminal dans le domaine E joigne le groupe G = 225.1.1.1. Le routeur d attachement auquel est connecté le récepteur multicast communique cette requête d abonnement Join (*, G) au routeur de frontière BGMP Border Router (B) via le protocole de routage multicast MIGP (PIM, MOSPF, DVM, etc.) activé dans le domaine E. Lorsque le composant MIGP du routeur B reçoit ce message Join, il le notifie au composant BGMP associé. Celui-ci recherche dans la partie G-RIB (Group Routing Information Base) de la table MRIB le domaine racine du groupe G. Nota : cette table qui contient des blocs d adresses multicast (adresses de la classe D) est construite et alimentée grâce à l activation du protocole MBGP entre domaines multicast. Un domaine racine d un préfixe multicast annonce via MBGP à tout l Internet qu il possède le préfixe multicast en question. TE 7 529 18 Techniques de l Ingénieur

PROTOCOLES DE ROUTAGE IP MULTICAST Sessions BGMP BGMP Join MIGP Join Join Domaine A B2 B Join Domaine D B B B Domaine B Racine de 225.1.1.1 B1 Join B B Domaine F B B Domaine E 225.1.1.1 225.1.1.1 B3 B Domaine C B4 Join B0 Domaine G 225.1.1.1 Sessions BGMP Trafic multicast (S, G) Domaine A B B B2 B B Domaine B Racine de 225.1.1.1 B1 B B Domaine F B B Domaine E 225.1.1.1 225.1.1.1 B3 B Domaine C B4 B0 Domaine G 225.1.1.1 Figure 24 Construction d un arbre partagé bidirectionnel interdomaine avec BGMP Figure 25 Transmission de trafic le long de l arbre partagé bidirectionnel interdomaine Il détermine ainsi que le prochain bond en direction du domaine B, domaine racine de G, est le routeur de frontière B situé dans le domaine D. B crée alors une entrée (*, G) et émet un message BGMP Join pour le groupe 225.1.1.1 à destination de B. Quand le composant BGMP de B reçoit le message Join de B, il crée une entrée (*, G) puis cherche l entrée 225.1.1.1 dans sa table G- RIB et détermine que le routeur B est le prochain élément pour atteindre le domaine racine de l adresse 225.1.1.1. Comme B est un pair BGMP interne au domaine D, B utilise son composant MIGP afin de générer et transmettre un message Join (*, G) à B, ce qui crée la branche d arbre interne au domaine D permettant de transmettre les flux multicast du groupe G de B à B. Ce message Join continue à être transmis de domaine en domaine jusqu à atteindre le domaine racine B et construit au final une branche de l arbre partagé bidirectionnel BGMP. Le même mécanisme se produit si des récepteurs situés dans les domaines F et G joignent également le groupe multicast 225.1.1.1 : le routeur d attachement du récepteur va aussi transmettre à son routeur de frontière BGMP un message Join (*, G) qui va être relayé vers l amont jusqu à atteindre le domaine racine B. Au final, un arbre partagé bidirectionnel est construit, qui connecte tous les domaines multicast ayant au moins un récepteur actif pour le groupe 225.1.1.1. La construction de cet arbre interdomaine qui s étend du domaine racine du groupe multicast G vers l ensemble des récepteurs de ce groupe est illustrée sur la figure 24. Supposons qu une source S devienne active dans le domaine D. Le trafic de cette source est routé par le protocole de routage multicast MIGP actif dans le domaine D (cela peut être PIM, MOSPF, DVM, etc.) vers les BR BGMP qui sont situés sur l arbre partagé bidirectionnel pour le groupe multicast G=225.1.1.1. Quand les BR BGMP reçoivent ce trafic, ils le transmettent le long de l arbre partagé bidirectionnel relatif au groupe G à la fois dans le sens montant vers le domaine racine et dans le sens descendant vers les récepteurs des domaines aval. Le trafic multicast est ainsi transmis via l arbre partagé bidirectionnel vers les BR BGMP de tous les domaines multicast qui font partie de l arbre. Les BR BGMP qui reçoivent le trafic multicast le transmettent ensuite via leur protocole MIGP vers les routeurs d accès qui ont des récepteurs directement connectés. Dans certaines topologies, il est possible qu un domaine multicast ne soit qu un domaine de transit. Dans notre exemple, c est notamment le cas du domaine racine B qui n a ni source ni récepteur actif sur le groupe G. Dans ce cas, le trafic multicast est transmis par le protocole MIGP activé dans le domaine B du routeur de frontière B à son pair BGMP B, de sorte que le trafic continue à descendre le long de l arbre partagé bidirectionnel jusqu à atteindre le domaine G. La transmission de trafic multicast le long de cet arbre partagé bidirectionnel qui s étend entre plusieurs domaines multicast est illustrée sur la figure 25. 2.3 Utilisation de PIM-SSM en interdomaine Lorsqu un opérateur de réseau veut uniquement fournir un service SSM interdomaine, c est-à-dire un service de diffusion point à multipoint spécifique à une source, l architecture globale du réseau multicast est alors très simple. La solution consiste pour le fournisseur de service à déployer PIM-SSM dans son réseau multicast ; de ce fait, aucun routeur et aucune session MSDP n est nécessaire pour fournir le service multicast interdomaine. PIM SSM doit donc être activé sur les routeurs du domaine multicast, mais également sur le lien entre routeurs de frontière d AS (ASBR) afin de permettre la diffusion du trafic multicast à travers plusieurs domaines AS. Quand un récepteur joint une diffusion, il identifie spécifiquement, via IGMPv3 ou MLDv2, à la fois l adresse de la source et celle du groupe désiré. Ainsi, le routeur auquel est connecté le récepteur peut directement initier la création de l arbre SPT en direction de la source. Le protocole PIM-SSM choisit, en fonction des annonces apprises via MBGP, l ASBR qui donne la meilleure route vers la source S pour créer l arbre SPT. La branche de l arbre SPT est tout d abord créée dans le domaine du récepteur, puis prolongée de domaine en domaine jusqu à atteindre la source. 2.4 Utilisation d adresses multicast de type Embedded- Le protocole MSDP n ayant pas été spécifié pour supporter et fonctionner avec des adresses IPv6 et faute d implantation disponible du protocole BGMP, la seule façon de mettre en œuvre un routage multicast entre des domaines IPv6 est d utiliser le mécanisme Embedded-. L architecture réseau globale du service de diffusion interdomaine est alors très simple : puisqu un groupe Embedded- inclut dans son format l adresse du, il suffit alors de définir un seul pour Techniques de l Ingénieur TE 7 529 19

PROTOCOLES DE ROUTAGE IP MULTICAST l ensemble des domaines multicast IPv6 interconnectés (à comparer à un par domaine dans le cas de PIM-SM/MSDP) et de choisir les adresses Embedded- des groupes de manière à ce qu elles désignent toutes ce unique. L inconvénient majeur de la solution Embedded- est qu elle fonctionne uniquement pour des réseaux IPv6 et est donc très peu déployée. Néanmoins, l usage d Embedded- va s accroître avec le temps à mesure que les réseaux multicast IPv6 se développeront. 3. Conclusion Nous avons décrit ici les principes et le fonctionnement des principaux protocoles de routage multicast activés dans les réseaux IP multicast afin de construire des arbres de distribution entre sources et récepteurs d un groupe multicast donné. Parmi cet ensemble de protocoles, PIM-SM est à ce jour le protocole de routage multicast le plus largement utilisé au sein d un domaine multicast. Le protocole PIM-BIDIR est encore très peu déployé tandis que PIM-SSM devient de plus en plus important et courant à mesure que les protocoles de souscription à des groupes IGMPv3/MLDv2 sont disponibles dans les terminaux. Les seuls déploiements du protocole PIM-DM concernent des réseaux de petite taille, tandis que le protocole DVM n est plus utilisé que pour interopérer avec des déploiements existants. MSDP est le protocole le plus largement déployé aujourd hui pour le routage multicast interdomaine entre des domaines PIM-SM mais il ne fonctionne que pour du trafic IPv4, tandis que BGMP est un protocole de routage multicast interdomaine complet mais aucun équipementier ne fournit aujourd hui une implantation de ce protocole. En dehors de cet ensemble de protocoles, d autres solutions apparaissent, notamment pour supporter de façon optimale le transport de flux IP multicast dans des réseaux privés virtuels. Enfin, plusieurs propositions sont en cours d étude et de définition afin d étendre les capacités de MPLS et de permettre la transmission de paquets multicast en utilisant des LSP point à multipoint. Aucune de ces solutions n a encore été complètement standardisée à ce jour, mais à mesure que l utilisation conjointe de MPLS et du multicast grandit, il est probable que ce mode de transmission devienne un domaine important pour le support des communications de groupes. TE 7 529 20 Techniques de l Ingénieur