Département Télécommunications, Réseaux & Informatique (TRI)
ENSA
ECOLE NATIONALE DES
SCIENCES APPLIQUEES D’EL JADIDA
DEPARTEMENT
TELECOMMUNICATIONS,
RESEAUX & INFORMATIQUE
Module: Commutation réseaux et routage avancé
Cours 5 : Routage Multicast
Prof. A. Dahbi
1 ère année (ISIC)
2019/2020
Objectifs
• Présenter l’adressage multicast
• Comprendre la Gestion des groupes multicast avec le
protocole IGMP
• Etudier les algorithmes de routage multicast PIM-SM
et PIM-DM
2
Routage Unicast
Un message peut être unicast, multicast ou broadcast
En unicast : un routeur achemine le paquet reçu
uniquement par l’une de ses interfaces en fonction d’une
destination unique.
3
Routage Multicast
En multicast : un routeur peut acheminer un paquet reçu sur
plusieurs interfaces en fonction d’un groupe. 4
La diffusion IP/Multicast
La diffusion IP (multiple unicasting-
figure b) : un flux peut être dupliqué en
autant de flux qu’il y a de destinataires.
Le réseau est inondé par des paquets
dupliqués dès la source d’émission.
Solution non efficace pour un large
groupe (saturation du réseau, délai
d’attente)
Multicast (figure a):
• optimise l’utilisation des ressources
réseaux par élimination du trafic
redondant
• Transmission éfficace: réduction de la
charge CPU 5
La diffusion IP/Multicast
Exemple
6
Applications Multicast
• Accès aux bases de données distribuées
• Diffusion audio, vidéo, TV, radio
• Vidéoconférence
• Jeux distribués en réseau
• Enseignement à distance
• etc
7
Table de routage Unicast
En routage unicast, chaque routeur a une table qui définit le
plus court chemin vers chaque réseau de destination.
8
Table de routage Multicast
Approche 1 : Arbre de routage par la source
Chaque routeur a une table qui définit le plus court chemin
vers chaque groupe. 9
Table de routage Multicast
Approche 2 : Arbre de routage partagé
Le trafic multicast de chaque source est acheminé vers le
“Core router" et distribué ensuite vers les membre du
groupe 10
Mécanismes du routage multicast
Trois mécanismes doivent être mis en place pour un
routage multicast sur un réseau IP :
• Un adressage permettant de désigner des groupes de
machines : classe D
• Un mécanisme permettant de gérer les groupes
multicast : protocole IGMP
• Un mécanisme permettant de router les paquets
multicast : protocoles de routage multicast
11
Adressage Multicast
• Classes D : Une même adresse désigne un groupe de machines.
• Un hôte peut posséder autant d’adresses multicast
• La plage réservée pour la classe D s’étend de 224.0.0.0 à
239.255.255.255.
• L’adresse 224.0.0.0 n’est attribuée à aucun groupe
12
Diffusion d'un paquet multicast
• L’adresse IP source est toujours celle de la station qui envoie le paquet : une
adresse unicast
• L’adresse IP destination : une adresse de classe D qui identifie un groupe de
destinataires.
13
Correspondance entre les adresses multicast IP et Ethernet
• Le multicast IP utilise les fonctions de multicast du niveau 2 des
trames multicast.
• Sur un réseau Ethernet, les paquets multicast IP sont envoyés dans des
trames multicast dont l’adresse MAC de destination commence par : “ 01-
00-5E ”
• Les 23 derniers bits de cette adresse correspondent aux 23 derniers bits
de l’adresse IP.
23 bits
01 00 5E
25 bits
Une source encapsule son paquet multicast IP dans une trame multicast
Ethernet.
14
La gestion des groupes multicast
Un groupe multicast est dynamique :
• Ses membres peuvent adhérer au groupe ou le quitter à tout
moment
• Etre dispersés à travers les réseaux
• Adhérer à plusieurs groupes en même temps
• Le groupe peut être permanent ou non.
• Un membre peut être actif ou non (la machine est éteinte).
La gestion des groupes multicast est réalisée par le protocole
IGMP (Internet Group Membership Protocol)
15
IGMP : élection du routeur requérant
• Initialement tous les routeurs envoient un Message-requête
• Le routeur avec l’adresse IP la plus basse est élu routeur requérant
• Les autres routeurs deviennent “non-requérant” : n’émettent pas de requête,
mais lisent les rapports et mettent à jour leur table de groupe.
16
IGMP : rejoindre un groupe
- Un membre H2 envoie un Message-rapport pour rejoindre le groupe
224.1.1.1
- Le message-Rapport a comme destination le groupe 224.1.1.1
- Les routeurs Multicast rta-a et rta-b sont à l’écoute de tous les groupes
Multicast (Quelque soit @Multicast de destination) 17
IGMP : rejoindre un groupe
18
IGMP : maintenir un groupe
• Le routeur requérant envoie Message-requête périodique à 224.0.0.1
(toutes les stations sur le réseau local)
• Un membre par groupe par sous réseau envoie un Message-rapport au
groupe 224.1.1.1 après un délai aléatoire (rtr-a et rtr-b sont à l’écoute de
tous les groupes)
• Les autre membre du groupe annulent l’envoie du Message-rapport
(minimisation du trafic) 19
IGMP : quitter un groupe
20
IGMP : quitter un groupe
#1 H2 quitte le groupe 224.1.1.1, il envoie un message pour quitter
à 224.0.0.2 (Tous les routeurs sur le réseau local)
#2 Le routeur requérant envoie une requête spécifique au groupe
224.1.1.1 pour vérifier le maintien du groupe
#3 H3 veut rester dans le groupe, il envoie un rapport au groupe
224.1.1.1 pour le maintien du groupe
Le groupe reste actif sur ce sous-réseau ( Au moins un membre) 21
IGMP : quitter un groupe
Dernier rapporteur
22
IGMP : quitter un groupe
#1 La dernière station H3 quitte le groupe 224.1.1.1, il envoie un message
pour quitter à 224.0.0.2
#2 Le routeur requérant envoie une requête spécifique au groupe
224.1.1.1 pour vérifier le maintien du groupe
Aucun rapport n’est reçu Le groupe devient inactif sur temporisation 23
IGMP : quitter un groupe
Aucun groupe actif sur le réseau local
24
Les bases du routage multicast
Le routage multicast utilise le contrôle RPF (Reverse Path
Forwarding) basé sur le routage unicast.
• Interface RPF = interface du routeur qui mène par le plus court chemin
vers la source en se basant sur la table de routage Unicast
• Routage Multicast : on route en fonction de la source
• Un paquet arrive par l’interface RPF est toujours diffusé en aval.
25
RPF et propagation multicast
Ne sera pas diffusé
26
RPF et propagation multicast
27
Arbre de distribution multicast
28
Arbre de distribution multicast
29
Arbre de distribution multicast
30
Arbre de distribution multicast
QlQ soit la source, le flux multicast
passe par l’arbre partagé
31
Table de routage multicast
Arbre source
Arbre partagé
QlQ soit la source est
désignée par *
32
Taxonomie des protocoles de routage multicast
MOSPF : MULTICAST LINK STATE ROUTING
DVMRP : MULTICAST DISTANCE VECTOR
CBT : Core-Based Tree
PIM-DM : Protocol Independent Multicast, Dense Mode
PIM-SM : Protocol Independent Multicast, Sparse Mode
33
Protocole PIM
PIM repose sur le contrôle RPF (Table de routage unicast)
- PIM-DM est utilisé dans un environnement multicast
dense d’abonné.
- Arbre par la source
- PIM-SM est utilisé dans un environnement multicast
avec peu d’abonné
- Arbre partagé
34
Protocole PIM-DM
35
Protocole PIM-DM
36
Protocole PIM-DM
Contrôle RPF
échoue
37
Protocole PIM-DM
LAN 1
Un seul routeur C ou D qui achemine le paquet (avec métrique petite
vers la source ou @IP plus grande sur le segment LAN 1 en cas d’égalité
de la métrique) 38
Protocole PIM-DM
39
Protocole PIM-DM
40
Protocole PIM-DM
41
Protocole PIM-SM
-Receiver 1 est membre du groupe G
(*, G) : eth0
- L’état (*, G) est crée en C
- C envoie (*, G) Join à RP
- L’état (*, G) est crée en RP
eth0
- C et RP peuvent acheminer le trafic
Multicast de n’importe quelle source
(*) vers le groupe G.
(*, G) : eth0
eth0
42
Protocole PIM-SM
2
Register
- Le routeur A encapsule le trafic
Multicast de la source dans un paquet eth0
Unicast destiné à RP appelé Register
(S, G) : eth1
(S, G) : eth1
3
eth1 eth1 eth0
- RP décapsule le Register et envoie le trafic
Multicast sur l’arbre partagé vers Receiver 1
- RP envoie (S, G) Join vers la source
- L’état (S, G) est crée en A et B (ils peuvent
acheminer le trafic Multicast de la source S vers
le groupe G)
43
Protocole PIM-SM
4
Register-Stop
- Le trafic arrive en double à RP :
directement en Multicast et en Register
- Un Register-Stop est envoyé par RP
vers la source pour stopper l’envoie de
Register
(S, G) : eth0
- Le routeur C (le plus proche du Receiver 1)
eth0
vérifie dans sa table de routage Unicast
qu’il a un chemin plus court vers la source à
travers A
- C envoie l’état (S, G) Join vers la source
- L’état (S, G) est crée en A : il peut
acheminer le trafic Multicast de la source S
vers le groupe G. 44
Protocole PIM-SM
6
- C reçoit le trafic Multicast en double de A
et RP
- C envoie Prune (S, G) vers RP sur l’arbre
partagé
- RP envoie Prune (S, G) vers la source
- A et B effacent l’état (S, G) : ils ne peuvent
pas acheminer le trafic Multicast de S à G
- Un nouveau récepteur rejoint le groupe G
- L’état (*,G) est crée en E : peut acheminer
le trafic Multicast de toute source vers G
eth0 - E envoie (*, G) Join à RP
(*, G) : eth0
45
Protocole PIM-SM
(*, G) : eth0, eth1
- C ajoute l’interface de sortie eth1 vers E
pour l’état (*, G)
eth0 eth1 - C diffuse vers E et les données de la source
arrive à E
46
Protocole PIM-SM
Une Source S2 Multicast est ajoutée au réseau
1- Donner les étapes pour avoir les arbres de distribution Multicast ci-dessous
2- Identifier les arbres source et partagé
47