SlideShare une entreprise Scribd logo
1  sur  99
1. IP Multicast
Today’s topics
1. IP multicast (concept)
2. IP multicast addresses and scopes
3. IP multicast routing (in practice)
4. IP Group Membership Protocol (IGMP)
5. Some Multicast routing Protocols
IP Multicast
• IP multicast est une méthode d'envoi de datagrammes IP à un
groupe de récepteurs intéressés dans une seule transmission.
• Défini dans la RFC 1112, (Année 1989): ‘IP multicasting is the
transmission of an IP datagram to a "host group", a set of
zero or more hosts identified by a single IP destination
address.’
• Les nœuds ayant cette adresse IP unique sont dits: Rejoint le
groupe Multicast. (L'adresse est appelée l'adresse du groupe).
L’adresse est l’identifiant du groupe
Exemples d’Application: Télé-séminaire
Types d’applications multicast
❍ Diffusion de 1 vers plusieurs (1 vers n) pas d’interaction des destinataires
• Téléséminaire
• Diffusion des tables de routage RIPv2
• diffusion de logiciels/données/…
• Découverte automatique de ressources sur le réseau
• ...
❍ Diffusion de plusieurs vers plusieurs (n vers m)
chaque membre du groupe peut être source du flux multicast
• Téléconférence
• Jeux interactifs (Star war …)
• ….
tx unicast et multicast
Serveur
Vidéo
Unicast
Transmission unicast :
Le serveur envoie 1 paquet unicast
à chaque destinataire l’ayant demandé
Transmission multicast :
Le serveur envoie 1 seul paquet multicast
à tous les destinataires l’ayant demandé
Serveur
Vidéo
Multicast
Groupe
multicast
Avantages du multicast
• Optimisation des performances: élimine le trafic redondant
• Communication efficace: réduction de la charge CPU
• extensible (Nb récepteurs, de sources, de groupes, …etc.
Concept du groupe multicast
(1)
1. Si vous envoyez a un groupe tous
les membres reçoivent
2. Vous devez être un membre du
groupe pour recevoir ses
données
3. Vous pouvez envoyer des
données a un groupe sans en
être membre
4. Une adresse multicast ne peut
être que destinataire
5. les sources (émetteurs) ont
toujours une adresse unicast
Concept du groupe multicast (2)
Caractéristiques du groupe
• appartenance dynamique
• pas de restriction quant à la localisation et au # de membres
• un hôte peut être simultanément membre de plusieurs groupes
• un hôte n’a pas besoin de faire partie d’un groupe pour être source
• groupe permanent/transitoire
• l’opération de Join est Receiver-Driven
Niveaux de conformité
• Le niveau 0 est le « non-prise en charge de Multicast IP". Beaucoup d'hôtes et
de routeurs dans Internet sont dans cet état, car le support multicast n'est pas
obligatoire dans IPv4 (il est, cependant, dans IPv6).
• Le niveau 1 est le «support pour l'envoi mais pas la réception de
datagrammes IP multicast». (Il n'est pas nécessaire de rejoindre le groupe
pour pouvoir envoyer des datagrammes).
• Le niveau 2 est le «support complet pour la multicast IP». Les hôtes de niveau
2 doivent connaître la manière de rejoindre et de quitter les groupes de
multidiffusion et de propager cette information aux routeurs de
multidiffusion. Ils doivent donc inclure une implémentation IGMP (Internet
Group Management Protocol) dans leur pile TCP / IP.
Adressage Multicast
• Multicast utilise des blocs d'adresses spécialement réservés dans IPv4
et IPv6.
• En IPv6, l'adressage multicast IP remplace l'adressage de diffusion
(broadcast) tel qu'il est implémenté dans IPv4.
• SEULEMENT des adresses de Destination.
IPv4 Multicast Addresses
• Chaque datagramme IP dont l'adresse de destination
commence par "1110" est un datagramme IP Multicast.
• Les 28 bits restants identifient le «groupe» de
multidiffusion auquel le datagramme est envoyé.
Adresses de multidiffusion IPv4
réservées
• Il existe des groupes de multidiffusion bien connus: "well-known
multicast groups":
• 224.0.0.1 est le groupe all-hosts: chaque hôte capable de
multidiffusion doit rejoindre ce groupe lors du démarrage sur toutes
ses interfaces multicast.
• 224.0.0.2 est le groupe tous routeurs: tous les routeurs multidiffusion
doivent rejoindre ce groupe sur toutes ses interfaces compatibles avec
la multidiffusion.
• 224.0.0.4 est le tous les routeurs DVMRP,
• 224.0.0.5 tous les routeurs OSPF,
• 224.0.0.13 tous les routeurs PIM, etc.
Portée des adresses multicast (1)
• Portée des adresses
• Lien-local : 224.0.0.0.0/8
• Limited scope (RFC 2365) : 239.0.0.0/8
• Site-local : 2 39.253.0.0/16
• Organization-local : 239.192.0.0/14
• Non réservées : 239.0.0.0/10, 239.64.0.0/10,
239.128.0.0/10
• Global : 224.0.1.0 – 238.255.255.255
• Gestion de la portée de la diffusion aussi faite avec le champ
TTL
Scoped IPv4 Multicast Addresses
• Dans les routeurs, TTL peut être utilisé pour limiter la portée des
transmissions multicast.
• En effet, les routeurs ont un seuil TTL assigné à chacune de ses
interfaces, et seuls les datagrammes avec un TTL supérieur au
seuil de l'interface sont transmis.
• Voici une liste des seuils TTL et de leur portée:
Questions?
• Donner un algorithme simplifié pour la vérification de la portée des
transmission multicast?
• Quel protocole de couche de transport peut gérer la multidiffusion
IP?
Réponses
Si TTL (de l ’entête IP) > Seuil (fixé sur l’interface) alors :
TTL = TTL - 1
on transmet le paquet
Sinon
on détruit le paquet
Multicast IP: fonctionnement
• Divisé en 2 composantes:
1. Gestion des groupes
• adhésion et résiliation et
maintenance du groupe
1. Routage multicast IP
• Les protocoles permettant
d’acheminer les données
aux membres du groupe
IGMP: généralités
• Protocole d’interaction entre
• le(s) routeur(s) multicast et les hôtes multicast
• Permet à un hôte de s'abonner (désabonner) à un
groupe
• dire au routeur: “envoyez-moi une copie des paquets reçus par
cette adresse de groupe”
• Trois versions existent,
• Le RFC 1112 spécifie IGMP version 1 (1989)
• Le RFC 2236 spécifie IGMP version 2 (1997)
• Le RFC 3376 spécifie la version actuelle d’IGMP (version 3) (2002)
• Adresse réservée
244.0.0.2
IGMPv1 : rejoindre un groupe
Cas d’un seul routeur
Un membre envoie un rapport pour 224.1.1.1 pour
rejoindre immédiatement ce groupe
IGMPv1 : requêtes de sollicitation générales
Le routeur envoie périodiquement des requêtes générales vers
224.0.0.1 avec un TTL = 1 pour déterminer l’appartenance aux
groupes.
IGMPv1 : maintenir un groupe
Le routeur envoie des requêtes périodiques
Un membre par groupe par sous-réseau rapporte
Les autres membres annulent leur rapport
IGMPv1 : quitter un groupe
• Le routeur envoie des requêtes périodiques
• Les stations quittent le groupe sans en référer au
routeur
• Le routeur continue l’envoi périodiques des requêtes
• Pas de réception des rapports pour le groupe, il
disparaît par temporisation
IGMPv1 : cas de plusieurs
routeurs
un routeur requérant IGMP doit être élu:
IGMPv1 ne spécifie pas comment?
IGMPv2
IGMPv2 packet structure
IGMPv2 destination address
• Requête spécifique à un groupe.
• Message pour quitter explicitement un groupe
• Mécanisme d’élection du routeur requérant
IGMPv2: Trois types de messages
étalement des réponses avec 0 < tempo < MaxRespTime
IGMPv2: rejoindre un group
IGMPv2: élection du requérant
• Initialement tous les routeurs envoient une requête
• Le routeur avec l’adresse IP la plus basse est élu
• Les autres routeurs deviennent “non-requérant”
IGMPv2: maintenir un groupe
• Le routeur envoie des requêtes périodiques
• Un membre par groupe et par sous réseau rapport
• Les autres membres annulent leur rapport
IGMPv2: quitter un groupe
H2 envoie un message pour quitter
Le routeur envoie une requête spécifique au groupe
H3 envoie un rapport le groupe reste actif
IGMPv2: quitter un groupe
Etat du retour
après que H2 ait
quitté
Etat du retour
avant de quitter
IGMPv3 (2002)
• Sélection de sources spécifiques à l’intérieur d’un groupe (Group-
Source Leave)
• Filtrage de la source sous forme de « include » ou « exclude »
(Group-Source Reports)
• Opération exploitée par PIM-SSM (Source Specific Multicast)
Extra: IPv6 MLD
• Multicast Listener Discovery (MLD) est un composant de la suite
Internet Protocol Version 6 (IPv6). MLD est utilisé par les routeurs IPv6
pour découvrir les écouteurs multicast sur un lien direct, tout comme
Internet Group Management Protocol (IGMP) est utilisé dans IPv4. Le
protocole est incorporé dans ICMPv6 au lieu d'utiliser un nouveau
protocole. MLDv1 est similaire à IGMPv2 et MLDv2 similaire à
IGMPv3. Le protocole est décrit dans la RFC 3810 qui a été mise à jour
par RFC 4604.
Résumé
• IGMP permet aux hôtes de rejoindre, maintenir et quitter des groupe multicast automatiquement.
• Sur la base des informations sur l'appartenance à un groupe apprises par l'IGMP, un routeur est capable de
déterminer quel (s'il en est) le trafic multicast doit être transmis à chacun de ses sous-réseaux. Les routeurs
de multidiffusion utilisent ces informations, conjointement avec un protocole de routage multicast, pour
prendre en charge la multidiffusion IP sur Internet.
Questions
• Pourquoi un message explicit de résiliation?
• Quelle est l’utilité des requêtes spécifiques aux groupe?
• Est-il nécessaire pour un routeur de sauvegarder la liste des
abonnées?
• Est-il obligatoire que chaque hôte répond aux requetés IGMP
• Le routage multicast peut-il être réalisé sans un protocole IGMP?
Questions
• Les rapports d'hôte doivent-ils être adressés en particulier à l'adresse de
multidiffusion de routeur?
• Qui définit le requêteur de multidiffusion?
Routage IP multicast (1)
• objectif : calculer un arbre de liens connectant tous les routeurs ayant
des hôtes appartenant au groupe
• buts :
• minimiser la distance entre la source et chaque récepteur
• minimiser l’utilisation de liens dans le réseau
Routage IP multicast (1)
• L’adresse de destination IP dans un datagramme multicast est l’adresse du groupe multicast.
• Le routage multicast est “à l’envers” du routage unicast
Le routage unicast détermine où le paquet va : on route en fonction de la Destination.
• Le routage multicast détermine d’où le paquet vient :
on route en fonction de la Source
• Intra et inter-domaines
•
Algorithmes de Routage Multicast
• Inondation : Flooding
• Arbre couvrant : Spanning Trees
• Diffusion de chemin inversé: Reverse Path Broadcasting (RPB)
• Diffusion de chemin inversé tronqué: Truncated Reverse Path Broadcasting (TRPB)
• Multicasting de chemin inversé: Reverse Path Multicasting (RPM)
• Arbres à noyau: Core-Based Trees
Inondation (1)
• La technique la plus simple pour mettre en œuvre un algorithme de routage multicast.
• La procédure d'inondation commence quand un routeur reçoit un paquet qui est adressé à un groupe de
multidiffusion.
• Le routeur emploie un mécanisme pour déterminer si c'est la première fois qu'il a vu ce paquet ou s'il a vu le
paquet avant.
• S'il s'agit de la première réception du paquet, le paquet est transmis sur toutes les interfaces sauf celle sur
laquelle il est arrivé, garantissant que le paquet de multidiffusion atteint tous les routeurs du réseau.
• Si le routeur a vu le paquet avant, il est simplement jeté.
Inondation (2)
Un exemple
Inondation (3)
• Un algorithme d'inondation est très simple à mettre en œuvre, car un routeur n'a
pas à maintenir une table de routage et n'a besoin que de garder une trace des
paquets les plus récemment vus.
• Cependant, les inondations ne sont pas adaptées aux applications Internet car elles
génèrent un grand nombre de paquets redondants et utilisent tous les chemins
disponibles
• De plus, l'algorithme d'inondation rend l'utilisation inefficace des ressources
mémoire du routeur, car chaque routeur est tenu de maintenir une entrée distincte
pour chaque paquet récemment vu.
Arbre couvrant (1)
• Une solution plus efficace que l'inondation serait de sélectionner un sous-ensemble de la topologie Internet
qui forme un arbre d'extension.
• Le spanning tree définit une arborescence où un seul chemin actif connecte deux routeurs quelconques sur
Internet.
Arbre couvrant (2)
• Exemple:
Création de l'arbre couvrant (1)
• Nous allons considérer un algorithme simple qui utilise l'approche au
centre.
• Étapes:
• Définir un nœud central.
• Nœuds unicast <arbre-join> messages au nœud central.
• Un message <tree-join> est redirigé en utilisant unicast vers le centre
jusqu'à ce qu'il arrive à un nœud qui appartient déjà à l'arbre
d'extension ou arrive au centre.
• Le chemin suivi par le message <tree-join> définit la branche de
l'arborescence entre le nœud périphérique qui initie le message de
jointure d'arborescence et le centre.
Création de l'arbre couvrant (2)
• E: nœud de centre. L'ordre de jointure des nœuds: F, B, A, C, G
Arbre couvrant: Avantages et
inconvénients
• Un routeur de multidiffusion transmet simplement chaque paquet de multidiffusion à
toutes les interfaces qui font partie de l'arbre sauf celle sur laquelle le paquet est arrivé.
• Il garantit que le paquet de multidiffusion ne boucle pas et qu'il atteindra finalement
tous les routeurs.
• Il est puissant et est relativement facile à mettre en œuvre car il ya beaucoup
d'expérience dans la communauté.
• Cependant, il peut centraliser le trafic sur un petit nombre de liens et peut ne pas
fournir le chemin le plus efficace entre le sous-réseau source et les membres du
groupe.
Reverse Path Broadcasting (RPB) (1)
• Une solution encore plus efficace que la construction d'un seul arbre Internet serait de construire un arbre
de couvrant spécifique au groupe pour chaque sous-réseau source potentiel.
• Ces arbres entraîneraient des arbres de livraison émanant du sous-réseau directement connecté à la station
source.
• Comme il existe de nombreuses sources potentielles pour un groupe, un autre arbre est construit pour
chaque paire active (source, groupe).
“Reverse Path Forwarding (RPF)” =
“diffuser dans le sens inverse de la source”
Reverse Path Broadcasting (RPB) (2)
• L'algorithme RPB fondamental est assez simple.
• Pour chaque paire (source, groupe), si un paquet arrive sur un lien que le routeur local considère comme
étant le chemin le plus court vers la source du paquet, le routeur envoie le paquet sur toutes les interfaces à
l'exception de l'interface entrante.
• Sinon, le paquet est rejeté.
• L'interface sur laquelle le routeur s'attend à recevoir des paquets de multidiffusion à partir d'une source
particulière est appelée le lien "parent". Les liens sortants sur lesquels le routeur redirige le paquet multicast
sont appelés les liens «enfant».
Reverse Path Broadcasting (RPB) (3)
• Interface RPF = interface qui amène par le plus court chemin vers la source
• Un paquet arrive par l’interface RPF et n’est jamais renvoyé vers l’interface RPF
Qu’est-ce que le contrôle RPF ?
• On cherche l’adresse source du datagramme multicast dans la table de routage unicast
utilisée pour le multicast.
• Si le datagramme est arrivé sur l’interface spécifiée dans la table de routage pour l’adresse
source, alors le contrôle RPF réussi. Sinon, le contrôle RPF échoue.
RPF et propagation multicast (1)
RPF et propagation multicast (2)
RPF et propagation multicast (3)
RPF et propagation multicast (4)
Nous devons aussi considérer le seuil TTL
Paquet Arrive avec TTL = 24
Paquet arrive sur la bonne interface, le
test réussit FPR
Il est propagé sur toutes les interfaces
sortantes sauf E3, car le seuil TTL est
supérieur à TTL du paquet
Arbre de distribution multicast
(1)
1. Arbre basé sur la source
2. Arbre partagé
Arbre qui décrit comment atteindre les membres des différents
groupes de diffusion répartis sur tout un domaine.
Arbre de distribution multicast (2)
Arbre “du plus court chemin” ou “Source”
Arbre de distribution multicast (3)
Arbre “du plus court chemin” ou “Source”
Arbre de distribution multicast (4)
Arbre Partagé
Arbre de distribution multicast (5)
Arbre Partagé
RPB: Avantages et limitations
• Le principal avantage de RPB est qu'il est relativement efficace et facile à mettre en œuvre.
• Il garantit une livraison efficace car les paquets multicast suivent toujours le chemin le plus court depuis la
source.
• Enfin, les paquets sont répartis sur plusieurs liaisons, ce qui permet une meilleure utilisation du réseau car
un arbre différent est calculé pour chaque paire (source, groupe).
• L'une des principales limitations de l'algorithme RPB est qu'elle ne prend pas en compte l'appartenance à un
groupe de multidiffusion lors de la construction de l'arbre de distribution pour une paire (source, groupe).
En conséquence, les datagrammes peuvent être inutilement transmis à des sous-réseaux qui n'ont pas de
membres dans le groupe de destination.
La diffusion à sens inverse tronqué (TRPB)
• TRPB a été développée pour adresser les limites de la diffusion de chemin inverse. Avec l'aide d'IGMP, les
routeurs de multidiffusion déterminent les appartenances de groupe sur chaque sous-réseau de feuille et
évitent de transmettre des datagrammes sur un sous-réseau de feuille s'il n'a pas un membre du groupe
présent.
• L'arbre de livraison est «tronqué» par le routeur si un sous-réseau de feuille n'a pas de membres de
groupe.
TRPB: Exemple
Reverse Path Multicasting (RPM)
• Le premier paquet pour une paire (source, groupe) est transmis suivant l'algorithme TRPB à tous les
routeurs.
• Les routeurs qui sont au bord du réseau et qui n'ont pas d'autres routeurs en aval dans l'arbre TRPB sont
appelés routeurs feuille.
• S'il ya un membre de groupe sur un de ses sous-réseaux de feuille, un routeur feuille envoie le paquet en
fonction de ses informations IGMP.
• Si aucun des sous-réseaux connectés au routeur feuille n'a des membres de groupe, le routeur feuille peut
transmettre un message "prune" sur son lien parent informant le routeur amont qu'il ne doit pas transférer
des paquets pour la paire particulière (source, groupe) sur l'Interface enfant recevant le message de prune.
RPM: Exemple
Limitations du RPM
• Malgré les améliorations apportées par l'algorithme RPM, il existe encore plusieurs problèmes d'échelle.
• La première limitation est que les paquets multicast « prune » doivent être transmis périodiquement à
chaque routeur
• Le deuxième inconvénient est que chaque routeur est tenu de conserver des informations d'état pour tous
les groupes et chaque source.
• L'importance de ces lacunes est amplifiée à mesure que le nombre de sources et de groupes dans l'inter-
réseau de multidiffusion augmente.
Arbres à noyau (CBT)
Core-Based Trees (CBT)
• Contrairement aux algorithmes existants qui construisent un arbre racine source, le chemin le plus court
pour chaque paire (source, groupe), CBT construit une arborescence de distribution unique partagée par
tous les membres d'un groupe.
• L'algorithme CBT est assez similaire à l'algorithme spanning tree, sauf qu'il permet un arbre basé sur le
noyau différent pour chaque groupe.
• Le trafic de multidiffusion pour chaque groupe est envoyé et reçu sur la même arborescence de distribution,
quelle que soit la source.
Core Based Trees (CBT)
Avantages du CBT
• CBT présente plusieurs avantages par rapport à l'algorithme de multidiffusion de chemin inversé (RPM). CBT
utilise efficacement les ressources du routeur car il ne nécessite qu'un routeur pour maintenir les
informations d'état pour chaque groupe, pas pour chaque paire (source, groupe).
• De plus, la CBT conserve la bande passante du réseau car elle ne nécessite pas que les trames de
multidiffusion soient périodiquement transmises à tous les routeurs de multidiffusion.
Limites du CBT
• CBT peut entraîner la concentration du trafic et les goulots d'étranglement près des
routeurs de base puisque le trafic de toutes les sources traverse le même ensemble
de liens qu'il approche du noyau.
• De plus, un seul arbre de distribution partagé peut créer des routes sous-optimales
entraînant un retard accru - un problème critique pour certaines applications
multimédias.
• Enfin, de nouveaux algorithmes doivent encore être développés pour soutenir la
gestion de base qui englobe tous les aspects de la sélection de routeurs principaux et
(potentiellement) des stratégies de placement dynamiques.
Questions
• Quel est le problème du flooding
• Est-il nécessaire pour chaque routeur de connaître tout l’arbre
couvrant.
• Quelles sont les avantages du RPF
• Donner un algorithme simple du RPF
Réponses
If (datagramme reçu sur le lien entrant sur
le chemin le plus court vers l'expéditeur)
Then inondent le datagramme sur tous les
liens sortants
Else ignorer datagramme
Distance Vector Multicast
Routing Protocol (DVMRP)
• DVMRP construit des arbres de distribution multicast source-groupe en utilisant des variantes de
l'algorithme Reverse Path Broadcasting (RPB).
• DVMRP a d'abord été défini dans la RFC-1075. La spécification originale était dérivée du RIP (Routing
Information Protocol) et employait l'algorithme Truncated Reverse Path Broadcasting (TRPB).
• Il est important de noter que la dernière version mrouted 3.8 et les implémentations des fournisseurs ont
étendu DVMRP à employer l'algorithme de multidiffusion de chemin inversé (RPM).
DVMRP Pruning and Grafting
• Un message prune DVMRP contient une durée de vie de la prune qui indique pendant combien de temps
une branche élaguée reste taillée avant qu'elle ne soit restaurée automatiquement.
• Les messages de greffage DVMRP sont envoyés par un routeur à son voisin en amont pour forcer la
ramification préalablement élaguée à être ajoutée à l'arbre de multidiffusion.
DVMRP est obsolète et quasiment plus utilisé
MOSPF (Multicast Open Shortest Path First)
• Les extensions Multicast à OSPF (MOSPF) sont définies dans RFC-1584. Les routeurs MOSPF maintiennent
une image courante de la topologie du réseau via le protocole de routage d'état de liaison OSPF
monodiffusion. MOSPF améliore le protocole OSPF en offrant la possibilité d'acheminer le trafic IP multicast.
Les extensions de multidiffusion à OSPF sont construites au-dessus de la version 2 d'OSPF de sorte qu'une
capacité de routage de multidiffusion puisse être facilement introduite dans un domaine de routage d'OSPF
Version 2. Les améliorations qui ont été ajoutées sont rétrocompatibles pour que les routeurs exécutant
MOSPF interopèrent avec les routeurs OSPF non multidiffusion lors de la transmission de trafic de données
IP unicast.
Protocol Independent Multicast: PIM
• Ne dépend d'aucun algorithme de routage unicast spécifique (fonctionne avec tous)
• Deux scénarios de distribution multicast différents:
• Dense:
• Membres du groupe densément emballés, à proximité.
• Bande passante plus abondante
• Disperse:
• Nombre de réseaux avec des membres de groupe petits par rapport au nombre de réseaux interconnectés
• Membres du groupe "largement dispersés«
• Bande passante peu abondante
PIM - Dense Mode
• Inondation RPF, prune et graft, semblable à DVMRP mais:
• le protocole unicast est indépendant
• les inondations en aval moins compliquées (moins efficaces) que le DVMRP
• a un mécanisme pour le détecter si un routeur est feuille
• Utilisation de déclaration (assert) pour élire un transmetteur sur un LAN à
plusieurs routeurs
PIM-DM: Exemple (1)
PIM-DM: Exemple (2)
PIM-DM: Exemple (3)
PIM-DM: Exemple (4)
PIM-DM: Exemple (5)
PIM - Sparse Mode (1)
• Mode d’abonnement explicite (Join ) :
• La source s’enregistre auprès d'un Point de Rendez-vous (RP)
• Le RP est la racine de l'arbre de diffusion multicast partagé
• le RP est configuré statiquement ou connu dynamiquement par Auto-RP ou « candidate rp » (PIMv2)
• Pour s'abonner le destinataire envoi un Join au RP
• Il peut y avoir plusieurs RP: 1 groupe n ’est enregistré auprès que d ’un seul RP
• Pas d'inondation
PIM - Sparse Mode (2)
• Le flux multicast parcourt l’arbre partagé (RPT) ou/puis l’arbre centré sur la source (SPT)
• Pour recevoir des données multicast, 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.
• les routeurs feuilles peuvent se joindre à l’arbre: les paquets multicast ne vont que là où c'est utile
• Les données multicast sont envoyées d’une source vers le RP en
unicast en étant encapsulées dans des messages PIM Register.
PIM – SM: Exemple (1)
PIM – SM: Exemple (2)
PIM – SM: Exemple (3)
PIM – SM: Exemple (4)
PIM – SM: Exemple (5)
PIM – SM: Exemple (6)
PIM – SM: Exemple (7)
PIM – SM: Exemple (8)
PIM – SM: Exemple (9)
PIM – SM: Exemple (11)
Questions
• Quelles sont les principales différences entre PIM-DM et PIM-SM
Routage inter-domaines
MBGP: Multiprotocol BGP
• MBGP, RFC 2283
• Multiprotocol extension de BGP-4
• Adress family (unicast, multicast, ipv4, ipv6, mpls, ...)
• Permet de router les réseaux des sources multicast
• au sein d’un domaine PIM (iMBP)
• ou entre domaines PIM distincts (eMBGP)
• En établissant des “peerings” MBGP
• Permet de récupérer les routes annoncées par d’autres protocoles multicast réinjection (DVMRP,
...)
• Supporte des topologies unicast et multicast
MSDP: Multicast Source Discovery Protocol
• RFC 3618
• But : découverte par les RP des sources actives des autres domaines PIM pour
construire des arbres de diffusion multicast inter-domaines
• Permet d’annoncer des sources actives entre RP en établissement des “peering”
MSDP (connections TCP 639)
Mécanismes d’MSDP
01 IP Multicast.pptx

Contenu connexe

Similaire à 01 IP Multicast.pptx

Similaire à 01 IP Multicast.pptx (20)

00 Rappels, Motivations et Contenu.pptx
00 Rappels, Motivations et Contenu.pptx00 Rappels, Motivations et Contenu.pptx
00 Rappels, Motivations et Contenu.pptx
 
Protocole RIP1, RIP2, RIPng
Protocole RIP1, RIP2, RIPngProtocole RIP1, RIP2, RIPng
Protocole RIP1, RIP2, RIPng
 
Le protocole rip
Le protocole rip Le protocole rip
Le protocole rip
 
Cours eigrp i pv4 et ipv6
Cours eigrp i pv4 et ipv6Cours eigrp i pv4 et ipv6
Cours eigrp i pv4 et ipv6
 
Exonet adressagei pv6
Exonet adressagei pv6Exonet adressagei pv6
Exonet adressagei pv6
 
technologie web
technologie webtechnologie web
technologie web
 
Routage
RoutageRoutage
Routage
 
8 adressage ip
8 adressage ip8 adressage ip
8 adressage ip
 
Chap5 wan
Chap5 wanChap5 wan
Chap5 wan
 
10 ipv6
10 ipv610 ipv6
10 ipv6
 
MPLS
MPLSMPLS
MPLS
 
Igmp snooping
Igmp snoopingIgmp snooping
Igmp snooping
 
vpn
vpnvpn
vpn
 
IPv6
IPv6IPv6
IPv6
 
Nat principe
Nat principeNat principe
Nat principe
 
notions de routage IP
notions de routage IPnotions de routage IP
notions de routage IP
 
EIGRP - Configuration
EIGRP - ConfigurationEIGRP - Configuration
EIGRP - Configuration
 
Tunnels-VPN Tunnels-VPNTunnels-VPN Tunnels-VPN
Tunnels-VPN Tunnels-VPNTunnels-VPN Tunnels-VPNTunnels-VPN Tunnels-VPNTunnels-VPN Tunnels-VPN
Tunnels-VPN Tunnels-VPNTunnels-VPN Tunnels-VPN
 
IPv6 training
IPv6 trainingIPv6 training
IPv6 training
 
Protocole OSPF
Protocole OSPFProtocole OSPF
Protocole OSPF
 

Dernier

Traitement_Palu Grave_ Janv 2023..pdf RDc
Traitement_Palu Grave_ Janv 2023..pdf RDcTraitement_Palu Grave_ Janv 2023..pdf RDc
Traitement_Palu Grave_ Janv 2023..pdf RDcnuriel683
 
cardiac manifestations in auto-immune diseases by Dr Silini.pptx
cardiac manifestations in auto-immune diseases by Dr Silini.pptxcardiac manifestations in auto-immune diseases by Dr Silini.pptx
cardiac manifestations in auto-immune diseases by Dr Silini.pptxsilinianfel
 
Brevets et innovation contre le cancer -
Brevets et innovation contre le cancer -Brevets et innovation contre le cancer -
Brevets et innovation contre le cancer -benj_2
 
MYCOBACTERIES 2019hhhhhhhhhhhhhhhhhhhhh
MYCOBACTERIES  2019hhhhhhhhhhhhhhhhhhhhhMYCOBACTERIES  2019hhhhhhhhhhhhhhhhhhhhh
MYCOBACTERIES 2019hhhhhhhhhhhhhhhhhhhhhorthopediedentofacia
 
CAT devant une Thrombose veineuse superficielle .pptx
CAT devant une Thrombose veineuse superficielle .pptxCAT devant une Thrombose veineuse superficielle .pptx
CAT devant une Thrombose veineuse superficielle .pptxsilinianfel
 
Syndrome coronarien aigu avec ST plus ST
Syndrome coronarien aigu avec ST plus STSyndrome coronarien aigu avec ST plus ST
Syndrome coronarien aigu avec ST plus STFatimaOulhouss1
 
antalgique cours 3 année faculté .pptx
antalgique cours 3 année  faculté  .pptxantalgique cours 3 année  faculté  .pptx
antalgique cours 3 année faculté .pptxDjacemBelmokre
 

Dernier (7)

Traitement_Palu Grave_ Janv 2023..pdf RDc
Traitement_Palu Grave_ Janv 2023..pdf RDcTraitement_Palu Grave_ Janv 2023..pdf RDc
Traitement_Palu Grave_ Janv 2023..pdf RDc
 
cardiac manifestations in auto-immune diseases by Dr Silini.pptx
cardiac manifestations in auto-immune diseases by Dr Silini.pptxcardiac manifestations in auto-immune diseases by Dr Silini.pptx
cardiac manifestations in auto-immune diseases by Dr Silini.pptx
 
Brevets et innovation contre le cancer -
Brevets et innovation contre le cancer -Brevets et innovation contre le cancer -
Brevets et innovation contre le cancer -
 
MYCOBACTERIES 2019hhhhhhhhhhhhhhhhhhhhh
MYCOBACTERIES  2019hhhhhhhhhhhhhhhhhhhhhMYCOBACTERIES  2019hhhhhhhhhhhhhhhhhhhhh
MYCOBACTERIES 2019hhhhhhhhhhhhhhhhhhhhh
 
CAT devant une Thrombose veineuse superficielle .pptx
CAT devant une Thrombose veineuse superficielle .pptxCAT devant une Thrombose veineuse superficielle .pptx
CAT devant une Thrombose veineuse superficielle .pptx
 
Syndrome coronarien aigu avec ST plus ST
Syndrome coronarien aigu avec ST plus STSyndrome coronarien aigu avec ST plus ST
Syndrome coronarien aigu avec ST plus ST
 
antalgique cours 3 année faculté .pptx
antalgique cours 3 année  faculté  .pptxantalgique cours 3 année  faculté  .pptx
antalgique cours 3 année faculté .pptx
 

01 IP Multicast.pptx

  • 2. Today’s topics 1. IP multicast (concept) 2. IP multicast addresses and scopes 3. IP multicast routing (in practice) 4. IP Group Membership Protocol (IGMP) 5. Some Multicast routing Protocols
  • 3. IP Multicast • IP multicast est une méthode d'envoi de datagrammes IP à un groupe de récepteurs intéressés dans une seule transmission. • Défini dans la RFC 1112, (Année 1989): ‘IP multicasting is the transmission of an IP datagram to a "host group", a set of zero or more hosts identified by a single IP destination address.’ • Les nœuds ayant cette adresse IP unique sont dits: Rejoint le groupe Multicast. (L'adresse est appelée l'adresse du groupe). L’adresse est l’identifiant du groupe
  • 5. Types d’applications multicast ❍ Diffusion de 1 vers plusieurs (1 vers n) pas d’interaction des destinataires • Téléséminaire • Diffusion des tables de routage RIPv2 • diffusion de logiciels/données/… • Découverte automatique de ressources sur le réseau • ... ❍ Diffusion de plusieurs vers plusieurs (n vers m) chaque membre du groupe peut être source du flux multicast • Téléconférence • Jeux interactifs (Star war …) • ….
  • 6. tx unicast et multicast Serveur Vidéo Unicast Transmission unicast : Le serveur envoie 1 paquet unicast à chaque destinataire l’ayant demandé Transmission multicast : Le serveur envoie 1 seul paquet multicast à tous les destinataires l’ayant demandé Serveur Vidéo Multicast Groupe multicast
  • 7. Avantages du multicast • Optimisation des performances: élimine le trafic redondant • Communication efficace: réduction de la charge CPU • extensible (Nb récepteurs, de sources, de groupes, …etc.
  • 8. Concept du groupe multicast (1) 1. Si vous envoyez a un groupe tous les membres reçoivent 2. Vous devez être un membre du groupe pour recevoir ses données 3. Vous pouvez envoyer des données a un groupe sans en être membre 4. Une adresse multicast ne peut être que destinataire 5. les sources (émetteurs) ont toujours une adresse unicast
  • 9. Concept du groupe multicast (2) Caractéristiques du groupe • appartenance dynamique • pas de restriction quant à la localisation et au # de membres • un hôte peut être simultanément membre de plusieurs groupes • un hôte n’a pas besoin de faire partie d’un groupe pour être source • groupe permanent/transitoire • l’opération de Join est Receiver-Driven
  • 10. Niveaux de conformité • Le niveau 0 est le « non-prise en charge de Multicast IP". Beaucoup d'hôtes et de routeurs dans Internet sont dans cet état, car le support multicast n'est pas obligatoire dans IPv4 (il est, cependant, dans IPv6). • Le niveau 1 est le «support pour l'envoi mais pas la réception de datagrammes IP multicast». (Il n'est pas nécessaire de rejoindre le groupe pour pouvoir envoyer des datagrammes). • Le niveau 2 est le «support complet pour la multicast IP». Les hôtes de niveau 2 doivent connaître la manière de rejoindre et de quitter les groupes de multidiffusion et de propager cette information aux routeurs de multidiffusion. Ils doivent donc inclure une implémentation IGMP (Internet Group Management Protocol) dans leur pile TCP / IP.
  • 11. Adressage Multicast • Multicast utilise des blocs d'adresses spécialement réservés dans IPv4 et IPv6. • En IPv6, l'adressage multicast IP remplace l'adressage de diffusion (broadcast) tel qu'il est implémenté dans IPv4. • SEULEMENT des adresses de Destination.
  • 12. IPv4 Multicast Addresses • Chaque datagramme IP dont l'adresse de destination commence par "1110" est un datagramme IP Multicast. • Les 28 bits restants identifient le «groupe» de multidiffusion auquel le datagramme est envoyé.
  • 13. Adresses de multidiffusion IPv4 réservées • Il existe des groupes de multidiffusion bien connus: "well-known multicast groups": • 224.0.0.1 est le groupe all-hosts: chaque hôte capable de multidiffusion doit rejoindre ce groupe lors du démarrage sur toutes ses interfaces multicast. • 224.0.0.2 est le groupe tous routeurs: tous les routeurs multidiffusion doivent rejoindre ce groupe sur toutes ses interfaces compatibles avec la multidiffusion. • 224.0.0.4 est le tous les routeurs DVMRP, • 224.0.0.5 tous les routeurs OSPF, • 224.0.0.13 tous les routeurs PIM, etc.
  • 14. Portée des adresses multicast (1) • Portée des adresses • Lien-local : 224.0.0.0.0/8 • Limited scope (RFC 2365) : 239.0.0.0/8 • Site-local : 2 39.253.0.0/16 • Organization-local : 239.192.0.0/14 • Non réservées : 239.0.0.0/10, 239.64.0.0/10, 239.128.0.0/10 • Global : 224.0.1.0 – 238.255.255.255 • Gestion de la portée de la diffusion aussi faite avec le champ TTL
  • 15. Scoped IPv4 Multicast Addresses • Dans les routeurs, TTL peut être utilisé pour limiter la portée des transmissions multicast. • En effet, les routeurs ont un seuil TTL assigné à chacune de ses interfaces, et seuls les datagrammes avec un TTL supérieur au seuil de l'interface sont transmis. • Voici une liste des seuils TTL et de leur portée:
  • 16. Questions? • Donner un algorithme simplifié pour la vérification de la portée des transmission multicast? • Quel protocole de couche de transport peut gérer la multidiffusion IP?
  • 17. Réponses Si TTL (de l ’entête IP) > Seuil (fixé sur l’interface) alors : TTL = TTL - 1 on transmet le paquet Sinon on détruit le paquet
  • 18. Multicast IP: fonctionnement • Divisé en 2 composantes: 1. Gestion des groupes • adhésion et résiliation et maintenance du groupe 1. Routage multicast IP • Les protocoles permettant d’acheminer les données aux membres du groupe
  • 19. IGMP: généralités • Protocole d’interaction entre • le(s) routeur(s) multicast et les hôtes multicast • Permet à un hôte de s'abonner (désabonner) à un groupe • dire au routeur: “envoyez-moi une copie des paquets reçus par cette adresse de groupe” • Trois versions existent, • Le RFC 1112 spécifie IGMP version 1 (1989) • Le RFC 2236 spécifie IGMP version 2 (1997) • Le RFC 3376 spécifie la version actuelle d’IGMP (version 3) (2002) • Adresse réservée 244.0.0.2
  • 20. IGMPv1 : rejoindre un groupe Cas d’un seul routeur Un membre envoie un rapport pour 224.1.1.1 pour rejoindre immédiatement ce groupe
  • 21. IGMPv1 : requêtes de sollicitation générales Le routeur envoie périodiquement des requêtes générales vers 224.0.0.1 avec un TTL = 1 pour déterminer l’appartenance aux groupes.
  • 22. IGMPv1 : maintenir un groupe Le routeur envoie des requêtes périodiques Un membre par groupe par sous-réseau rapporte Les autres membres annulent leur rapport
  • 23. IGMPv1 : quitter un groupe • Le routeur envoie des requêtes périodiques • Les stations quittent le groupe sans en référer au routeur • Le routeur continue l’envoi périodiques des requêtes • Pas de réception des rapports pour le groupe, il disparaît par temporisation
  • 24. IGMPv1 : cas de plusieurs routeurs un routeur requérant IGMP doit être élu: IGMPv1 ne spécifie pas comment?
  • 25. IGMPv2 IGMPv2 packet structure IGMPv2 destination address • Requête spécifique à un groupe. • Message pour quitter explicitement un groupe • Mécanisme d’élection du routeur requérant
  • 26. IGMPv2: Trois types de messages étalement des réponses avec 0 < tempo < MaxRespTime
  • 28. IGMPv2: élection du requérant • Initialement tous les routeurs envoient une requête • Le routeur avec l’adresse IP la plus basse est élu • Les autres routeurs deviennent “non-requérant”
  • 29. IGMPv2: maintenir un groupe • Le routeur envoie des requêtes périodiques • Un membre par groupe et par sous réseau rapport • Les autres membres annulent leur rapport
  • 30. IGMPv2: quitter un groupe H2 envoie un message pour quitter Le routeur envoie une requête spécifique au groupe H3 envoie un rapport le groupe reste actif
  • 31. IGMPv2: quitter un groupe Etat du retour après que H2 ait quitté Etat du retour avant de quitter
  • 32. IGMPv3 (2002) • Sélection de sources spécifiques à l’intérieur d’un groupe (Group- Source Leave) • Filtrage de la source sous forme de « include » ou « exclude » (Group-Source Reports) • Opération exploitée par PIM-SSM (Source Specific Multicast)
  • 33. Extra: IPv6 MLD • Multicast Listener Discovery (MLD) est un composant de la suite Internet Protocol Version 6 (IPv6). MLD est utilisé par les routeurs IPv6 pour découvrir les écouteurs multicast sur un lien direct, tout comme Internet Group Management Protocol (IGMP) est utilisé dans IPv4. Le protocole est incorporé dans ICMPv6 au lieu d'utiliser un nouveau protocole. MLDv1 est similaire à IGMPv2 et MLDv2 similaire à IGMPv3. Le protocole est décrit dans la RFC 3810 qui a été mise à jour par RFC 4604.
  • 34. Résumé • IGMP permet aux hôtes de rejoindre, maintenir et quitter des groupe multicast automatiquement. • Sur la base des informations sur l'appartenance à un groupe apprises par l'IGMP, un routeur est capable de déterminer quel (s'il en est) le trafic multicast doit être transmis à chacun de ses sous-réseaux. Les routeurs de multidiffusion utilisent ces informations, conjointement avec un protocole de routage multicast, pour prendre en charge la multidiffusion IP sur Internet.
  • 35. Questions • Pourquoi un message explicit de résiliation? • Quelle est l’utilité des requêtes spécifiques aux groupe? • Est-il nécessaire pour un routeur de sauvegarder la liste des abonnées? • Est-il obligatoire que chaque hôte répond aux requetés IGMP • Le routage multicast peut-il être réalisé sans un protocole IGMP?
  • 36. Questions • Les rapports d'hôte doivent-ils être adressés en particulier à l'adresse de multidiffusion de routeur? • Qui définit le requêteur de multidiffusion?
  • 37. Routage IP multicast (1) • objectif : calculer un arbre de liens connectant tous les routeurs ayant des hôtes appartenant au groupe • buts : • minimiser la distance entre la source et chaque récepteur • minimiser l’utilisation de liens dans le réseau
  • 38. Routage IP multicast (1) • L’adresse de destination IP dans un datagramme multicast est l’adresse du groupe multicast. • Le routage multicast est “à l’envers” du routage unicast Le routage unicast détermine où le paquet va : on route en fonction de la Destination. • Le routage multicast détermine d’où le paquet vient : on route en fonction de la Source • Intra et inter-domaines •
  • 39. Algorithmes de Routage Multicast • Inondation : Flooding • Arbre couvrant : Spanning Trees • Diffusion de chemin inversé: Reverse Path Broadcasting (RPB) • Diffusion de chemin inversé tronqué: Truncated Reverse Path Broadcasting (TRPB) • Multicasting de chemin inversé: Reverse Path Multicasting (RPM) • Arbres à noyau: Core-Based Trees
  • 40. Inondation (1) • La technique la plus simple pour mettre en œuvre un algorithme de routage multicast. • La procédure d'inondation commence quand un routeur reçoit un paquet qui est adressé à un groupe de multidiffusion. • Le routeur emploie un mécanisme pour déterminer si c'est la première fois qu'il a vu ce paquet ou s'il a vu le paquet avant. • S'il s'agit de la première réception du paquet, le paquet est transmis sur toutes les interfaces sauf celle sur laquelle il est arrivé, garantissant que le paquet de multidiffusion atteint tous les routeurs du réseau. • Si le routeur a vu le paquet avant, il est simplement jeté.
  • 42. Inondation (3) • Un algorithme d'inondation est très simple à mettre en œuvre, car un routeur n'a pas à maintenir une table de routage et n'a besoin que de garder une trace des paquets les plus récemment vus. • Cependant, les inondations ne sont pas adaptées aux applications Internet car elles génèrent un grand nombre de paquets redondants et utilisent tous les chemins disponibles • De plus, l'algorithme d'inondation rend l'utilisation inefficace des ressources mémoire du routeur, car chaque routeur est tenu de maintenir une entrée distincte pour chaque paquet récemment vu.
  • 43. Arbre couvrant (1) • Une solution plus efficace que l'inondation serait de sélectionner un sous-ensemble de la topologie Internet qui forme un arbre d'extension. • Le spanning tree définit une arborescence où un seul chemin actif connecte deux routeurs quelconques sur Internet.
  • 45. Création de l'arbre couvrant (1) • Nous allons considérer un algorithme simple qui utilise l'approche au centre. • Étapes: • Définir un nœud central. • Nœuds unicast <arbre-join> messages au nœud central. • Un message <tree-join> est redirigé en utilisant unicast vers le centre jusqu'à ce qu'il arrive à un nœud qui appartient déjà à l'arbre d'extension ou arrive au centre. • Le chemin suivi par le message <tree-join> définit la branche de l'arborescence entre le nœud périphérique qui initie le message de jointure d'arborescence et le centre.
  • 46. Création de l'arbre couvrant (2) • E: nœud de centre. L'ordre de jointure des nœuds: F, B, A, C, G
  • 47. Arbre couvrant: Avantages et inconvénients • Un routeur de multidiffusion transmet simplement chaque paquet de multidiffusion à toutes les interfaces qui font partie de l'arbre sauf celle sur laquelle le paquet est arrivé. • Il garantit que le paquet de multidiffusion ne boucle pas et qu'il atteindra finalement tous les routeurs. • Il est puissant et est relativement facile à mettre en œuvre car il ya beaucoup d'expérience dans la communauté. • Cependant, il peut centraliser le trafic sur un petit nombre de liens et peut ne pas fournir le chemin le plus efficace entre le sous-réseau source et les membres du groupe.
  • 48. Reverse Path Broadcasting (RPB) (1) • Une solution encore plus efficace que la construction d'un seul arbre Internet serait de construire un arbre de couvrant spécifique au groupe pour chaque sous-réseau source potentiel. • Ces arbres entraîneraient des arbres de livraison émanant du sous-réseau directement connecté à la station source. • Comme il existe de nombreuses sources potentielles pour un groupe, un autre arbre est construit pour chaque paire active (source, groupe). “Reverse Path Forwarding (RPF)” = “diffuser dans le sens inverse de la source”
  • 49. Reverse Path Broadcasting (RPB) (2) • L'algorithme RPB fondamental est assez simple. • Pour chaque paire (source, groupe), si un paquet arrive sur un lien que le routeur local considère comme étant le chemin le plus court vers la source du paquet, le routeur envoie le paquet sur toutes les interfaces à l'exception de l'interface entrante. • Sinon, le paquet est rejeté. • L'interface sur laquelle le routeur s'attend à recevoir des paquets de multidiffusion à partir d'une source particulière est appelée le lien "parent". Les liens sortants sur lesquels le routeur redirige le paquet multicast sont appelés les liens «enfant».
  • 50. Reverse Path Broadcasting (RPB) (3) • Interface RPF = interface qui amène par le plus court chemin vers la source • Un paquet arrive par l’interface RPF et n’est jamais renvoyé vers l’interface RPF Qu’est-ce que le contrôle RPF ? • On cherche l’adresse source du datagramme multicast dans la table de routage unicast utilisée pour le multicast. • Si le datagramme est arrivé sur l’interface spécifiée dans la table de routage pour l’adresse source, alors le contrôle RPF réussi. Sinon, le contrôle RPF échoue.
  • 51. RPF et propagation multicast (1)
  • 52. RPF et propagation multicast (2)
  • 53. RPF et propagation multicast (3)
  • 54. RPF et propagation multicast (4) Nous devons aussi considérer le seuil TTL Paquet Arrive avec TTL = 24 Paquet arrive sur la bonne interface, le test réussit FPR Il est propagé sur toutes les interfaces sortantes sauf E3, car le seuil TTL est supérieur à TTL du paquet
  • 55. Arbre de distribution multicast (1) 1. Arbre basé sur la source 2. Arbre partagé Arbre qui décrit comment atteindre les membres des différents groupes de diffusion répartis sur tout un domaine.
  • 56. Arbre de distribution multicast (2) Arbre “du plus court chemin” ou “Source”
  • 57. Arbre de distribution multicast (3) Arbre “du plus court chemin” ou “Source”
  • 58. Arbre de distribution multicast (4) Arbre Partagé
  • 59. Arbre de distribution multicast (5) Arbre Partagé
  • 60. RPB: Avantages et limitations • Le principal avantage de RPB est qu'il est relativement efficace et facile à mettre en œuvre. • Il garantit une livraison efficace car les paquets multicast suivent toujours le chemin le plus court depuis la source. • Enfin, les paquets sont répartis sur plusieurs liaisons, ce qui permet une meilleure utilisation du réseau car un arbre différent est calculé pour chaque paire (source, groupe). • L'une des principales limitations de l'algorithme RPB est qu'elle ne prend pas en compte l'appartenance à un groupe de multidiffusion lors de la construction de l'arbre de distribution pour une paire (source, groupe). En conséquence, les datagrammes peuvent être inutilement transmis à des sous-réseaux qui n'ont pas de membres dans le groupe de destination.
  • 61. La diffusion à sens inverse tronqué (TRPB) • TRPB a été développée pour adresser les limites de la diffusion de chemin inverse. Avec l'aide d'IGMP, les routeurs de multidiffusion déterminent les appartenances de groupe sur chaque sous-réseau de feuille et évitent de transmettre des datagrammes sur un sous-réseau de feuille s'il n'a pas un membre du groupe présent. • L'arbre de livraison est «tronqué» par le routeur si un sous-réseau de feuille n'a pas de membres de groupe.
  • 63. Reverse Path Multicasting (RPM) • Le premier paquet pour une paire (source, groupe) est transmis suivant l'algorithme TRPB à tous les routeurs. • Les routeurs qui sont au bord du réseau et qui n'ont pas d'autres routeurs en aval dans l'arbre TRPB sont appelés routeurs feuille. • S'il ya un membre de groupe sur un de ses sous-réseaux de feuille, un routeur feuille envoie le paquet en fonction de ses informations IGMP. • Si aucun des sous-réseaux connectés au routeur feuille n'a des membres de groupe, le routeur feuille peut transmettre un message "prune" sur son lien parent informant le routeur amont qu'il ne doit pas transférer des paquets pour la paire particulière (source, groupe) sur l'Interface enfant recevant le message de prune.
  • 65. Limitations du RPM • Malgré les améliorations apportées par l'algorithme RPM, il existe encore plusieurs problèmes d'échelle. • La première limitation est que les paquets multicast « prune » doivent être transmis périodiquement à chaque routeur • Le deuxième inconvénient est que chaque routeur est tenu de conserver des informations d'état pour tous les groupes et chaque source. • L'importance de ces lacunes est amplifiée à mesure que le nombre de sources et de groupes dans l'inter- réseau de multidiffusion augmente.
  • 66. Arbres à noyau (CBT) Core-Based Trees (CBT) • Contrairement aux algorithmes existants qui construisent un arbre racine source, le chemin le plus court pour chaque paire (source, groupe), CBT construit une arborescence de distribution unique partagée par tous les membres d'un groupe. • L'algorithme CBT est assez similaire à l'algorithme spanning tree, sauf qu'il permet un arbre basé sur le noyau différent pour chaque groupe. • Le trafic de multidiffusion pour chaque groupe est envoyé et reçu sur la même arborescence de distribution, quelle que soit la source.
  • 68. Avantages du CBT • CBT présente plusieurs avantages par rapport à l'algorithme de multidiffusion de chemin inversé (RPM). CBT utilise efficacement les ressources du routeur car il ne nécessite qu'un routeur pour maintenir les informations d'état pour chaque groupe, pas pour chaque paire (source, groupe). • De plus, la CBT conserve la bande passante du réseau car elle ne nécessite pas que les trames de multidiffusion soient périodiquement transmises à tous les routeurs de multidiffusion.
  • 69. Limites du CBT • CBT peut entraîner la concentration du trafic et les goulots d'étranglement près des routeurs de base puisque le trafic de toutes les sources traverse le même ensemble de liens qu'il approche du noyau. • De plus, un seul arbre de distribution partagé peut créer des routes sous-optimales entraînant un retard accru - un problème critique pour certaines applications multimédias. • Enfin, de nouveaux algorithmes doivent encore être développés pour soutenir la gestion de base qui englobe tous les aspects de la sélection de routeurs principaux et (potentiellement) des stratégies de placement dynamiques.
  • 70. Questions • Quel est le problème du flooding • Est-il nécessaire pour chaque routeur de connaître tout l’arbre couvrant. • Quelles sont les avantages du RPF • Donner un algorithme simple du RPF
  • 71. Réponses If (datagramme reçu sur le lien entrant sur le chemin le plus court vers l'expéditeur) Then inondent le datagramme sur tous les liens sortants Else ignorer datagramme
  • 72. Distance Vector Multicast Routing Protocol (DVMRP) • DVMRP construit des arbres de distribution multicast source-groupe en utilisant des variantes de l'algorithme Reverse Path Broadcasting (RPB). • DVMRP a d'abord été défini dans la RFC-1075. La spécification originale était dérivée du RIP (Routing Information Protocol) et employait l'algorithme Truncated Reverse Path Broadcasting (TRPB). • Il est important de noter que la dernière version mrouted 3.8 et les implémentations des fournisseurs ont étendu DVMRP à employer l'algorithme de multidiffusion de chemin inversé (RPM).
  • 73. DVMRP Pruning and Grafting • Un message prune DVMRP contient une durée de vie de la prune qui indique pendant combien de temps une branche élaguée reste taillée avant qu'elle ne soit restaurée automatiquement. • Les messages de greffage DVMRP sont envoyés par un routeur à son voisin en amont pour forcer la ramification préalablement élaguée à être ajoutée à l'arbre de multidiffusion. DVMRP est obsolète et quasiment plus utilisé
  • 74. MOSPF (Multicast Open Shortest Path First) • Les extensions Multicast à OSPF (MOSPF) sont définies dans RFC-1584. Les routeurs MOSPF maintiennent une image courante de la topologie du réseau via le protocole de routage d'état de liaison OSPF monodiffusion. MOSPF améliore le protocole OSPF en offrant la possibilité d'acheminer le trafic IP multicast. Les extensions de multidiffusion à OSPF sont construites au-dessus de la version 2 d'OSPF de sorte qu'une capacité de routage de multidiffusion puisse être facilement introduite dans un domaine de routage d'OSPF Version 2. Les améliorations qui ont été ajoutées sont rétrocompatibles pour que les routeurs exécutant MOSPF interopèrent avec les routeurs OSPF non multidiffusion lors de la transmission de trafic de données IP unicast.
  • 75. Protocol Independent Multicast: PIM • Ne dépend d'aucun algorithme de routage unicast spécifique (fonctionne avec tous) • Deux scénarios de distribution multicast différents: • Dense: • Membres du groupe densément emballés, à proximité. • Bande passante plus abondante • Disperse: • Nombre de réseaux avec des membres de groupe petits par rapport au nombre de réseaux interconnectés • Membres du groupe "largement dispersés« • Bande passante peu abondante
  • 76. PIM - Dense Mode • Inondation RPF, prune et graft, semblable à DVMRP mais: • le protocole unicast est indépendant • les inondations en aval moins compliquées (moins efficaces) que le DVMRP • a un mécanisme pour le détecter si un routeur est feuille • Utilisation de déclaration (assert) pour élire un transmetteur sur un LAN à plusieurs routeurs
  • 82. PIM - Sparse Mode (1) • Mode d’abonnement explicite (Join ) : • La source s’enregistre auprès d'un Point de Rendez-vous (RP) • Le RP est la racine de l'arbre de diffusion multicast partagé • le RP est configuré statiquement ou connu dynamiquement par Auto-RP ou « candidate rp » (PIMv2) • Pour s'abonner le destinataire envoi un Join au RP • Il peut y avoir plusieurs RP: 1 groupe n ’est enregistré auprès que d ’un seul RP • Pas d'inondation
  • 83. PIM - Sparse Mode (2) • Le flux multicast parcourt l’arbre partagé (RPT) ou/puis l’arbre centré sur la source (SPT) • Pour recevoir des données multicast, 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. • les routeurs feuilles peuvent se joindre à l’arbre: les paquets multicast ne vont que là où c'est utile • Les données multicast sont envoyées d’une source vers le RP en unicast en étant encapsulées dans des messages PIM Register.
  • 84. PIM – SM: Exemple (1)
  • 85. PIM – SM: Exemple (2)
  • 86. PIM – SM: Exemple (3)
  • 87. PIM – SM: Exemple (4)
  • 88. PIM – SM: Exemple (5)
  • 89. PIM – SM: Exemple (6)
  • 90. PIM – SM: Exemple (7)
  • 91. PIM – SM: Exemple (8)
  • 92. PIM – SM: Exemple (9)
  • 93. PIM – SM: Exemple (11)
  • 94. Questions • Quelles sont les principales différences entre PIM-DM et PIM-SM
  • 96. MBGP: Multiprotocol BGP • MBGP, RFC 2283 • Multiprotocol extension de BGP-4 • Adress family (unicast, multicast, ipv4, ipv6, mpls, ...) • Permet de router les réseaux des sources multicast • au sein d’un domaine PIM (iMBP) • ou entre domaines PIM distincts (eMBGP) • En établissant des “peerings” MBGP • Permet de récupérer les routes annoncées par d’autres protocoles multicast réinjection (DVMRP, ...) • Supporte des topologies unicast et multicast
  • 97. MSDP: Multicast Source Discovery Protocol • RFC 3618 • But : découverte par les RP des sources actives des autres domaines PIM pour construire des arbres de diffusion multicast inter-domaines • Permet d’annoncer des sources actives entre RP en établissement des “peering” MSDP (connections TCP 639)

Notes de l'éditeur

  1. We need a way for hosts to join a multicast group. (o show interest in Packets transmitted to such a group) IGMP And a Protocol to ensure delivering such packets to the members of the Group Multicast routing protocols
  2. each router needs to implement a group membership protocol that allows it to learn about the existence of group members on its directly attached subnetworks. The Internet Group Management Protocol (IGMP) runs between hosts and their immediately neighboring multicast routers. The mechanisms of the protocol allow a host to inform its local router that it wishes to receive transmissions addressed to a specific multicast group.
  3. Also, routers periodically query the LAN to determine if known group members are still active. If there is more than one router on the LAN performing IP multicasting, one of the routers is elected “querier” and assumes the responsibility of querying the LAN for group members.
  4. il fixe un délai aléatoire avant de répondre pour éviter que toutes les réponses arrivent au même moment When a host receives a Query message, it responds with a Host Membership Report for each host group to which it belongs. In order to avoid a flurry of Reports, each host starts a randomly chosen Report delay timer for each of its group memberships. If, during the delay period, another Report is heard for the same group, the local host resets its timer to a new random value. Otherwise, the host transmits a Report to the reported group address, causing all other members of the group to reset their Report message timers. This procedure guarantees that Reports are spread out over a period of time and that Report traffic is minimized for each group with at least one member on the subnetwork. Q: It should be noted that multicast routers do not need to be directly addressed since their interfaces are configured to receive all multicast IP traffic. Also, a router does not need to maintain a detailed list of which hosts belong to each multicast group; the router only needs to know that at least one group member is present on a network interface. Multicast routers periodically transmit Queries to update their knowledge of the group members present on each network interface.
  5. IGMP V 2 defines a new type of Query message—the Group-Specific Query message. Group-Specific Query messages allow a router to transmit a Query to a specific multicast group rather than all groups residing on a directly attached subnetwork. Finally, IGMP Version 2 defines a Leave Group message to lower IGMP’s “leave latency.” When the last host to respond to a Query with a Report wishes to leave that specific group, the host transmits a Leave Group message to the all-routers group (224.0.0.2) with the group field set to the group to be left. In response to a Leave Group message, the router begins the transmission of Group-Specific Query messages on the interface that received the Leave Group message. If there are no Reports in response to the Group-Specific Query messages, the group is removed from the list of group memberships for the directly attached subnetwork.
  6. IGMP Version 3 introduces support for Group-Source Report messages so that a host can elect to receive traffic from specific sources of a multicast group. An Inclusion Group-Source Report message allows a host to specify the IP addresses of the specific sources it wants to receive. An Exclusion Group-Source Report message allows a host to explicitly identify the sources that it does not want to receive. With IGMP Version 1 and Version 2, if a host wants to receive any sources from a group, the traffic from all sources for the group has to be forwarded onto the subnetwork. IGMP Version 3 will help conserve bandwidth by allowing a host to select the specific sources from which it wants to receive traffic. Also, multicast routing protocols will be able to make use of this information to conserve bandwidth when constructing the branches of their multicast delivery trees. Finally, support for Leave Group messages first introduced in IGMP Version 2 has been enhanced to support Group-Source Leave messages. This feature allows a host to leave an entire group or to specify the specific IP address(es) of the (source, group) pair(s) that it wishes to leave.
  7. RPF pour construire les arbres de distribution et s’assurer que les paquets arrivent par la bonne interface L'algorithme fondamental pour construire ces arbres source-enracinés est appelé Reverse Path Broadcasting (RPB). L'algorithme RPB est en fait assez simple. Pour chaque paire (source, groupe), si un paquet arrive sur un lien que le routeur local considère comme étant le chemin le plus court vers la source du paquet, le routeur envoie le paquet sur toutes les interfaces à l'exception de l'interface entrante. Sinon, le paquet est rejeté. L'interface sur laquelle le routeur s'attend à recevoir des paquets de multidiffusion à partir d'une source particulière est appelée le lien "parent". Les liens sortants sur lesquels le routeur redirige le paquet multicast sont appelés les liens «enfant».
  8. RPF pour construire les arbres de distribution et s’assurer que les paquets arrivent par la bonne interface L'algorithme fondamental pour construire ces arbres source-enracinés est appelé Reverse Path Broadcasting (RPB). L'algorithme RPB est en fait assez simple. Pour chaque paire (source, groupe), si un paquet arrive sur un lien que le routeur local considère comme étant le chemin le plus court vers la source du paquet, le routeur envoie le paquet sur toutes les interfaces à l'exception de l'interface entrante. Sinon, le paquet est rejeté. L'interface sur laquelle le routeur s'attend à recevoir des paquets de multidiffusion à partir d'une source particulière est appelée le lien "parent". Les liens sortants sur lesquels le routeur redirige le paquet multicast sont appelés les liens «enfant».
  9. Packet est venu avec un 24 TTL
  10. Prune messages sont envoyés seulement un saut retour vers la source
  11. Le dernier ajout à l'ensemble existant d'algorithmes d'acheminement multidiffusion est Core Based Trees (CBT). Contrairement aux algorithmes existants qui construisent un arbre racine source, le chemin le plus court pour chaque paire (source, groupe), CBT construit une arborescence de distribution unique partagée par tous les membres d'un groupe. L'algorithme CBT est assez similaire à l'algorithme spanning tree, sauf qu'il permet un arbre basé sur le noyau différent pour chaque groupe. Le trafic de multidiffusion pour chaque groupe est envoyé et reçu sur la même arborescence de distribution, quelle que soit la source.
  12. A core-based tree may involve a single router or set of routers, which acts as the core of a multicast delivery tree.
  13. Le protocole de routage de multidiffusion à vecteur de distance (DVMRP) est un routage de vecteur de distance Protocole conçu pour prendre en charge la transmission de datagrammes multidiffusion via un interréseau.
  14. Le protocole de routage de multidiffusion à vecteur de distance (DVMRP) est un routage de vecteur de distance Protocole conçu pour prendre en charge la transmission de datagrammes multidiffusion via un interréseau.
  15. 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.
  16. réduisent la dépendance à l'algorithme de routage sous-jacent
  17. 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 RPT 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.
  18. Approche centrée Le routeur envoie msg de jointure au point de rendez-vous (RP) les routeurs intermédiaires mettent à jour l'état et l'avance Après avoir rejoint RP, le routeur peut basculer vers un arbre source spécifique une performance accrue
  19. on utilise le RP pour tester les interfaces RPF de l’arbre partagé: état (*,G) on utilise la Source pour tester les interfaces RPF de l ’arbre basé sur la Source: état (S,G) les états (S,G) sont préférés aux états (*,G)
  20. Création de l’arbre RPT (*, G) Le récepteur Destinataire1, 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 C, qui est le routeur DR désigné sur ce réseau LAN, émet alors un message PIM Join (*, G) vers le routeur RP et crée une entrée (*, G) dans sa table TIB.
  21. 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 RP), 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 RPT 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.
  22. Lorsque la source S commence à émettre des données à destination du groupe G, le routeur 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 RP. Quand le RP 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é RPT (*, G) préalablement construit.
  23. — le RP peut joindre un arbre spécifique à une source afin d’éviter l’encapsulation/décapsulation des données dans des paquets PIM Register ; L’encapsulation et la décapsulation des paquets multicast, qui imposent un traitement supplémentaire aux routeurs DR et RP, 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 RP 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.
  24. Dès que la branche d’arbre SPT, entre la source et le routeur RP, est construite et que les données sont transmises nativement vers le RP le long de l’arbre SPT, le RP se met à répliquer ces données sur l’arbre RPT. 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 RP, celui-ci se met alors à détruire tous les messages PIM Register qu’il reçoit. Afin d’indiquer au routeur DR d’interrompre l’envoi des messages PIM Register dont il n’a plus utilité, le RP envoie un message PIM Register-Stop en unicast vers le routeur DR 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 RP, puis de là transmis vers tous les récepteurs le long des branches de l’arbre RPT. Tant que la source est active, le DR envoie périodiquement des messages Null-Register (Null indiquant que ces messages ne contiennent aucune donnée encapsulée) vers le RP pour indiquer que la source reste active. Comme auparavant, le RP répond à chaque message en envoyant un autre message Register Stop.
  25. — un routeur d’accès DR peut choisir de basculer de l’arbre RPT vers l’arbre spécifique à une source afin d’optimiser le chemin entre source et récepteurs. Quand les flux multicast transitent de la source au RP (soit encapsulés dans des messages PIM Register, soit nativement via le SPT) puis le long de l’arbre RPT du RP 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 DR 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 RPT 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 DR 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 RPT). Afin de basculer de l’arbre RPT vers l’arbre SPT, le routeur d’accès DR (C 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 RPT.
  26. Il envoie donc un message PIM Prune spécial vers le routeur RP, 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 RPT du groupe G afin d’arrêter la transmission des données (S, G) qui arrivent via le RP