Title: Multicast protocoles de routage
1Multicast protocoles de routage
- Bernard Rapacchi
- Bernard Tuy
2Envoi de paquets
- Une adresse multicast ne peut être que
destinataire - les sources ont toujours une adresse unicast
- le niveau Liaison de données n'utilise pas ARP
- mécanisme de correspondance (pour les _at_ IEEE-802)
- _at_IP multicast -gt _at_Ethernet multicast
- Etre membre d'un groupe est indépendant d'envoyer
à ce groupe - une source nest pas obligatoirement membre du
groupe auquel elles envoie un flux multicast
3Envoi de paquets
inchangé
Ethernet
mapping
0x 01 00 5E ______________________________
23 bits de droite de l'_at_ IP destination 24eme
bit 0
4Réception de paquets
- Par défaut, le coupleur Ethernet d'une station
écoute - son adresse Ethernet (fixée PROM)
- et l'adresse de broadcast (FF...FF)
- Les autres adresses Ethernet doivent être
explicitement programmées dans le driver du
coupleur - Pour le multicast, il faut écouter au minimum
- équivalent Ethernet de 224.0.0.1 (tous les hôtes
multicast du LAN) - équivalent Ethernet du répertoire des sessions
MBone - annonçant la liste des groupes multicast actifs
5IGMP généralités
- Protocole d'interaction entre
- le(s) routeur(s) multicast du LAN
- et les hôtes multicast du LAN
- Permet à un hôte de s'abonner (désabonner) à un
groupe - et dire au routeur
- envoyez-moi une copie des paquets de cette
adresse de groupe - deux versions existent, IGMPv1 et v2
- IGMP version 3 en cours délaboration (IETF/ IDMR)
6IGMP un seul routeur
- le routeur envoie toutes les 60 secondes
- une sollicitation aveugle à l_at_ 224.0.0.1 (query
) - à quel(s) groupe(s) voulez vous vous abonner ?
- et attend les réponses
- le(s) hôte(s) renvoie(nt) un IGMP report
- qui indique ladresse du ou des groupes qui
lintéressent - si le routeur ne reçoit aucune réponse pour un
groupe donné - il arrête la réémission des paquets multicast
de ce groupe - le groupe est réputé sans abonné local
7IGMP un seul routeur (2)
- quand l hôte reçoit la sollicitation (query)
- il fixe un délai aléatoire avant de répondre
- pour éviter que toutes les réponses arrivent au
même moment - quand un hôte a répondu, les autres nont plus
besoin de répondre - le routeur arme une temporisation sur les
abonnements aux groupes multicast avant de
solliciter à nouveau tous les hôtes
8IGMP sabonner à un groupe
224.2.0.1 224.5.5.5
224.2.0.1
224.2.0.1
Hôte 1
Hôte 2
Hôte 3
Envoi périodiqueIGMP Query à 224.0.0.1
9IGMP sabonner à un groupe
224.2.0.1 224.5.5.5
224.2.0.1
224.2.0.1
Hôte 1
Hôte 2
Hôte 3
Envoi Reportpour 224.2.0.1
224.2.0.1
10IGMP sabonner à un groupe
224.2.0.1 224.5.5.5
224.2.0.1
224.2.0.1
Hôte 1
Hôte 2
Hôte 3
Envoi Reportpour 224.5.5.5
224.2.0.1 224.5.5.5
11IGMP plusieurs routeurs
- Un routeur est élu entre tous les routeurs
- cest le Dominant Router (DR) ou Designated
Router - il est seul à émettre les IGMP Queries
- en v1, le mécanisme délection est fonction du
routage multicast et nappartient pas à IGMP - en version 2, le DR est le routeur dont l_at_IP
est la plus petite - le DR nest pas forcément le routeur qui transmet
les paquets multicast
12IGMP version 2
- Election du DR
- _at_IP la plus petite
- timers programmables
- nouveaux type de paquets envoyés par lhôte
- de désabonnement leave
- au reçu dun leave, le routeur envoie
- un query spécifique au groupe
- gt réduction du temps de latence pour arrêter la
diffusion dun groupe qui na plus dabonné - IGMP v2 doit obligatoirement supporter la version
1
13IGMP quitter un groupe
224.2.0.1
224.2.0.1
Host 1
Host 2
Host 3
Envoi Leavepour 224.2.0.1 à 224.0.0.2
224.2.0.1 224.5.5.5
14IGMP quitter un groupe
224.2.0.1
224.2.0.1
Host 1
Host 2
Host 3
Envoi IGMP Query spécifique pour 224.2.0.1
224.2.0.1 224.5.5.5
15IGMP quitter un groupe
224.2.0.1
224.2.0.1
Host 1
Host 2
Host 3
Envoi Report pour 224.2.0.1
224.2.0.1 224.5.5.5
16IGMP quitter un groupe
224.2.0.1
224.2.0.1
Host 1
Host 2
Host 3
Envoi Leavepour 224.5.5.5 à 224.0.0.2
224.2.0.1 224.5.5.5
17IGMP quitter un groupe
224.2.0.1
224.2.0.1
Host 1
Host 2
Host 3
Envoi IGMP Query pour 244.5.5.5
224.2.0.1
18Les Protocoles de routage multicast
- On distingue deux types de protocoles en fonction
du mode de transmission des paquets multicast
utilisé - Mode dense (inondation)
- DVMRP, PIM DM et MOSPF
- suppose que les abonnés aux groupes multicast
sont nombreux - Mode épars
- PIM SM et CBT
- faible population abonnée
19DVMRP généralités
- mrouted sous Unix
- Agit en mode dense flooding pruning
- on inonde (flooding ) tout l'arbre multicast
- ceux qui ne sont pas intéressés le disent
- ils sont élagués de larbre (pruning )
- Pour éviter les boucles gt algorithme RPF
- Reverse Path Forwarding
20Reverse Path Forwarding (RPF)
- un routeur transmet un paquet multicast
- si le datagramme est reçu sur linterface
utilisée pour envoyer un paquet unicast vers la
source (reverse ) - Test RPF
- Oui paquet retransmis, on inonde
- Non paquet est mis à la poubelle
- un paquet est retransmis vers toutes les
interfaces du routeur SAUF linterface RPF
dentrée
21Reverse Path Forwarding (RPF)
Source
A
D
B
C
E
22Reverse Path Forwarding (RPF)
Source
A
D
B
C
E
Paquets multicast non retransmis
23Routage DVMRP
- DVMRP utilise son propre routage unicast
- variante de RIP
- pour déterminer le critère RPF et
- décider de retransmettre un datagramme multicast
- Le routage Unicast est nécessaire pour localiser
les Sources multicast - les paramètres du protocole
- le nombre de sauts (hops), les métriques et les
seuils (Threshold ) - le seuil indique si un datagramme multicast peut
être réémis en le comparant à son TTL. - obligation dutiliser des tunnels
- certains routeurs ne font pas du multicast
24Routage DVMRP
- échange de tables de routage entre routeurs DVMRP
- Destination / Masque / Métrique
- Les destinations sont les _at_ sources multicast
- Loptique est de toujours construire un arbre
minimal à partir de la source
25Echange des tables de routage (théorie)
Source
(S,1)
(S,1)
A
D
B
C
E
26Echange des tables de routage (théorie)
Source
(S,2)
A
D
B
(S,2)
C
E
27Poison Reverse
- Le routeur B va décider
- que le routeur A voisin est en amont vers la
source S - il envoie à A une information de routage versS
dont la métrique est dite empoisonnée - Conséquence
- B attend le flux multicast de A pour la source S
- A ne doit pas compter sur B pour ce même flux
- Le RFC 1112 prévoit d' envoyer
- _at_IP Source, m infini (16), un flag à 1
- Dans mrouted
- Source, m vraie métrique vers S infini (32)
28Poison Reverse
Source
(S,infini)
A
D
B
(S,2)
C
E
29PIM généralités
- Indépendant du protocole de routage
- DVMRP
- prend les décisions de RPF
- a son propre protocole de routage
- PIM repose sur le protocole de routage unicast
sous-jacent - pour les décisions RPF
- et les poison reverse routes
- PIM peut fonctionner selon deux modes
- dense mode faible overhead pour les groupes
denses dabonnés - sparse mode peu dabonnés
30PIM Dense Mode
- Ressemble à DVMRP
- sauf pour le routage
- mécanismes de flooding et pruning et de graft
(greffe), - Pruning sur les voisins non RPF
- Arbres construits par rapport aux sources
émettrices avec utilisation de RPF - Utilisation de déclaration (assert ) pour élire
un transmetteur sur un LAN à plusieurs routeurs
31PIM Sparse mode
- Mode dabonnement explicite (Join )
- La source senregistre auprès d'un Point de
Rendez-vous RP - Le RP est la racine de l'arbre de diffusion
multicast - c'est une adresse bien connue de tous
- Pour s'abonner le destinataire envoit un Join au
RP - Il peut y avoir plusieurs RP pour différents
groupes - Pas d'inondation
- Le flux multicast parcourt un arbre partagé
- les routeurs feuilles peuvent de se joindre à
larbre - les paquets ne vont que là où c'est utile
32Organisation du routage multicast principes
- sur un campus
- Participer au FMBone
- minimiser les flux multicast pour éviter les flux
inutiles - Topologie arborescente et sur chaque Routeur
- naccepter aucune route DVMRP sur linterface RPF
- ip dvmrp accept-filter 15
- access-list 15 deny any
- ne retransmettre quune route par défaut DVMRP
sur les autres interfaces - ip dvmrp default-information only
- configurer une route multicast statique par
défaut qui pointe vers linterface RPF - ip mroute 0.0.0.0 0.0.0.0 TunnelX
- préférer PIM aux tunnels quand cela est possible
- informer / former les utilisateurs potentiels
33Organisation du routage multicast principes
- dans un laboratoire
- mettre en place un seul routeur multicast
- quand le besoin existe !
- PIM si possible (type du routeur, niveau d'IOS,
...) - même configuration de routeur
34Solution 2 développer PIM dense
PIM/GRE MBone
DVMRP interne
PIM
PIM
Renater
DVMRP MBone
PIM
DVMRP interne
DVMRP interne
35Solution 3 développer PIM dispersé
DVMRP interne
PIM/GRE MBone
PIM
PIM
Renater
DVMRP MBone
PIM
DVMRP interne
DVMRP interne
36Bibliographie
- ftp//ftpeng.cisco.com/ipmulticast.html
- http//electre.inria.fr
- http//www.univ-rennes1.fr/CRU/Multimedia/annonce_
multimedia.html