Anda di halaman 1dari 86

Rapport de DEA

Réalisé Par :
AKASH Qais

Encadré Par :
M.Jean Jacques M.Binoit HILT
PANSIOT Professeur, Université
Professeur, ULP- Strasbourg Haute Alsace - Colmar

Laboratoire :

Laboratoire des sciences de l’image


de l’Informatique et de la Télédétection
LSIIT

25 Juin , 2001
Remerciement

Ayant achevé le stage de DEA qui s’est effectué au LSIIT à


pôle API Illkirch, d’ULP de Strasbourg. Je remercie Monsieur.
Jean Jacques PANSIOT, Professeur à l’ULP de Strasbourg,
Monsieur Binoit Hilt, Professeur à l’Université Haut Alsace de
Colmar, pour leur soutien lors de la conception de ce projet,
pour leur aide qui m’a permis de réaliser ce travail.
Je remercie tous les membres de l’équipe réseau du LSIIT
pour le soutien et l’ambiance familiale qu’ils n’ont pas manqués
d’apporter tout le long du stage.
Je remercie également tous mes amis pour leur aide et leur
soutien morale qu’ils m’ont apporté pour la réalisation de mon
stage.

1
Dédicaces

Je voudrais donc dédicacer ce mémoire, fruit du travail d’un


semestre, à mon père qui m’a encouragé à venir poursuivre mes
études, à ma mère qui m’a soutenu moralement depuis mon
arrivée en France, à toute ma famille, mes amis, et à tous ceux
qui m’ ont aidé à réaliser ce projet.

2
Table des matières

Partie 1 :

1. Introduction Générale
1.1- Les Réseaux Informatiques ………………………………………… 07
1.2- Qu’est-ce qu’un Protocole …………………………………………. 08
1.3- Le Multicast ………………………………………………………... 09
1.3.1 Qu’est –ce que l’Unicast ? ………………………………... 09
1.3.2 Qu’est –ce que le Multicast ? …………………………….. 09

Partie 2 :

2. Internet Group Management Protocol IGMP


2.1- Introduction ………………………………………………………… 13
2.2- Scénario du Protocole ………………………………………………. 13
2.3- IGMP sur un routeur ……………………………………………….. 14
2.3.1 Introduction ……………………………………………... 14
2.3.2 Adhésion à un groupe …………………………………… 15
2.3.3 Retrait d’un groupe ……………………………………… 15
2.3.4 Recevoir un Query ………………………………………. 15
2.3.5 Recevoir un Report ……………………………………… 15
2.3.6 L’émission d’une source ………………………………… 16
2.3.7 Démarrage d’un minuteur ……………………………….. 16
2.3.8 Expiration du minuteur ………………………………….. 16

2.4- IGMP sur un client


2.4.1 Adhésion à un groupe ……………………………………. 16
2.4.2 Retrait d’un groupe ………………………………………. 17
2.4.3 Recevoir un Query ……………………………………….. 18
2.4.4 Recevoir un Report ………………………………………. 18
2.4.5 L’émission d’une source …………………………………. 19
2.4.6 Démarrage d’un minuteur ……………………………….. 19
2.4.7 Expiration du minuteur ………………………………….. 19

2.5- Format des messages IGMP ….…………………………………….. 20


2.6- Les états d’un hôte dans IGMP …………………………………….. 21
2.7- Conclusion ………………………………………………………….. 23

Partie 3 :

3. Protocoles du Multicast
3.1 Introduction ………………………………………………………… 25

3.2. Protocol Independent Multicast Dense Mode PIM-DM


3.2.1 Introduction ………………………………………………………… 27
3.2.2 L’émission d’une source …………………………………………… 28
3.2.3 Adhésion à un groupe ……………………………………………… 29
3.2.4 Quitter un groupe …………………………………………………... 30

3
3.2.5 L’élection d’un Routeur Désigné ………………………………….. 31
3.2.6 L’élection d’un Routeur transmetteur ……………………………... 32
3.2.7 La Table de routage ………………………………………………... 32
3.2.8 Les messages de PIM-DM …………………………………………. 32
3.2.9 Le format d’un paquet en mode dense ……………………………... 33
3.2.10 Minuteurs utilisés en PIM-DM …………………………………….. 34
3.2.11 Conclusion …………………………………………………………. 34

3.3. Protocol Independent Multicast Sparse Mode PIM-SM


3.3.1 Introduction …………………………………………………………. 36
3.3.2 Aperçu du Protocole ………………………………………………... 36
3.3.3 L’Adhésion d’un hôte à un groupe et
la construction d’un arbre partagé ………………………………….. 37
3.3.4 Un hôte envoie des paquets à un groupe …………………………… 38
3.3.5 Transformation de RPT à SPT …………………………………….. 40
3.3.6 Interopération entre le domaine de PIM-DM et
le domaine de PIM-SM ……………………………………………. 41
3.3.7 Traitement du paquet Multicast ……………………………………. 42
3.3.8 Election d’un Routeur Désigné DR ………………………………... 42
3.3.9 Chemins parallèles à une source …………………………………… 42
3.3.10 Informations sur les RPs …………………………………………… 43
3.3.11 La Table du routage de PIM-SM …………………………………... 43
3.3.12 Les Minuteurs Utilisés en PIM-SM ………………………………... 44
3.3.13 Messages Utilisés en PIM-SM ……………………………………... 46
3.3.14 Quelques définitions en PIM-SM …………………………………... 50
3.3.15 Le format d’un paquet Multicast …………………………………… 52
3.3.16 Conclusion …………………………………………………………. 62

Partie 4 :

4. Applications du Multicast
4.1 Introduction ……………………………………………………… 64
4.2 Audio-réunion, Audio-conférence ………………………………. 65
4.3 Vidéo-réunion, Vidéo-conférence ……………………………….. 66
4.4 Tableaux blancs partagés ………………………………………… 68
4.5 Annuaire de sessions …………………………………………….. 69

Partie 5 :

5. Annexe
5.1 Abréviations …………………………………………………………… 71
5.2 Liste des adresses Multicast …………………………………………... 73

Partie 6 :

6. Bibliographie ………………………………………………………………… 81

4
Table des figures

Partie 1
l’Unicast ………………………………………………………………………… 09
Protocoles Intra et inter domaine ……………………………………………. 11
Le Multicast …………………………………………………………………….. 11

Partie 2
Scénario du Protocole IGMP …………………………………………………. 14
L’adhésion d’un hôte à un groupe – IGMP …………………………………. 17
Le retrait d’un hôte d’un groupe- IGMP …………………………………….. 18
Les états d’un membre – IGMP ……………………………………………… 22

Partie 3
L’émission d’une source – PIM-DM ………..……………………………….. 29
L’adhésion d’un hôte à un groupe – PIM-DM ……………………………… 30
Le retrait d’un hôte d’un groupe- PIM-DM …………………………………. 31
L’adhésion d’un hôte à un groupe et établir l’arbre RPT – PIM-SM ……… 38
L’envoi des paquets – PIM-SM …………………………………………..… 39
Changement de RPT à SPT- PIM-SM ……………………………………… 41

Partie 4
Audio/réunion-conférence ……………………………………………………. 65
Vidéo/réunion-conférence ……………………………………………………. 66
Vidéo/réunion-conférence ……………………………………………………. 67
Tableau blanche partagé ……………………………………………………... 68
Annuaire de session …………………………………………………………… 69

5
6
1. Introduction Générale

1.1 Les réseaux informatiques


Justement, en passant par Internet, nous utilisons le plus grand réseau du
monde. Comment les machines discutent? Ou plutôt, comment les utilisateurs
discutent à travers les machines? le principe est même assez simple.
On prend deux ordinateurs et on veut passer un message d'un ordinateur à
un autre. Le plus simple pour commencer est de voir le principe de
"discussion" entre un ordinateur et... une imprimante. pour l’arrivée des
paquets au bon endroit, chaque ordinateur doit avoir une adresse .
Chaque ordinateur à deux adresses : une adresse IP et une adresse MAC.
L'adresse IP est en quelque sorte le nom d’un ordinateur sur un réseau. Avec
cette adresse, on peut situer cet ordinateur dans le monde car on sait à quel
réseau il appartient. L'adresse MAC est l'adresse physique de l'ordinateur :
c'est son nom, quelque soit l'endroit où il est. Ainsi, une fois que le réseau est
trouvé grâce à l'adresse IP, l'adresse MAC permet d'être repéré de façon
unique.
On associe donc un nom de réseau ( adresse IP ) et une adresse sur ce
réseau ( adresse MAC ) pour envoyer les informations au bon destinataire.
Lorsque vous passez par un opérateur quelconque pour vous connecter, il
arrive souvent que vous n'avez pas d'adresse IP fixe. En fait, à chaque fois
que vous vous connectez, le serveur DHCP vous attribue une adresse IP pour
la connexion et vous l'enlève quand vous vous déconnectez.
Lorsqu'on envoie une trame, il y a des boîtiers intermédiaires qui savent dans
quelle direction il faut envoyer la trame. Ces boîtiers peuvent être des
routeurs, des switchs, des hubs et autres. Différentes techniques sont
utilisées pour que votre message soit envoyé vers le bon ordinateur!
C’est ce que l’on fait de mieux pour acheminer les données. Le routeur est
quasiment un ordinateur à part entière. Il est capable de décoder les trames
jusqu’à retrouver l’adresse IP et de diriger l’information dans la bonne
direction. On peut aussi définir dans les trames le chemin où doit passer la
trame, le routeur peut comprendre tout cela... Le fait de définir ou de diriger
une trame s’appelle « router » une trame. C’est pour cela qu’on les appelle
des routeurs.
On appelle les hubs, switchs et les routeurs (les éléments du réseaux)
dispersés à travers le monde... Mais comment diable font-ils pour savoir qui
est où ? C’est ce qu’on va essayer de voir maintenant.
Les ordinateurs et les éléments du réseaux ont tous une passerelle par
défaut. Qu’est-ce que c’est ? C’est là où on va lorsqu’on ne sait pas où aller...
Vous envoyez quelque chose sur le réseau. On commence par demander à
ces voisins si c’est à eux qu’on écrit. Si ce n’est pas le cas, on va vers la
passerelle par défaut qui est généralement le routeur le plus proche. Le
routeur regarde l’adresse IP, et la compare avec les adresses qu’il connaît.
S’il ne connaît pas, il les envoie vers sa passerelle par défaut à lui qui est
sans doute un autre routeur plus important. Il faut noter malgré tout que les
routeurs stockent des informations sur les adresses et là où elles sont. De

7
plus, le routeur est capable d’analyser une partie de l’adresse, et si l’adresse
est, par exemple, 193.152.0.36 et qu’il ne connaît exactement cette adresse,
peut-être a t’il malgré tout une information sur 193.152.110.79 ou
193.153.110.79 et sait donc où envoyer la trame
Le but des réseaux est de faire communiquer plusieurs ordinateurs ensemble.
Si les utilisateurs communiquent entre eux grâce aux différentes langues, les
ordinateurs utilisent différents protocoles. Les communications sont souvent
internationales, et comme pour les utilisateurs, il n'existe pas de protocole
universel. Certains sont plus utilisés que d'autres, il en existe cependant un
très grand nombre, chacun cherchant à imposer sa propre norme.

1.2 Qu’est-ce qu’un protocole ?

Comment expliquer clairement ce qu'est un protocole? Supposons que


quelqu'un veuille envoyer une lettre à quelqu'un d'autre. On va placer cette
lettre dans une enveloppe et on y notera l'adresse. Pour l'acheminement du
courrier, le contenu de la lettre n'est d'aucune utilité. Les différents services
de la poste regardent les différents champs de l'adresse et dirigent
l'enveloppe, donc son contenu dans la bonne direction.
Il en est de même quand un ordinateur veut envoyer des données à un autre
ordinateur. Les données sont enfermées (on dit encapsulées) dans une
enveloppe qui contient les informations permettant l'acheminement des
données. Un protocole, c'est la façon dont l'adresse est écrite sur l'enveloppe,
le fait de mettre d'abord le nom, puis la rue et enfin la ville. Un autre protocole,
c'est aussi le fait de mettre le lieu et la date en haut à droite et la signature en
bas.
Finalement, un protocole est une description formelle de règles et de
conventions à suivre dans un échange d'informations, que ce soit pour
acheminer les données jusqu'au destinataire ou pour que le destinataire
comprenne comment il doit utiliser les données qu'il a reçues.

8
1.3 Le Multicast

Généralités - Introduction

1.3.1 Qu’est –ce que l’unicast ?

Dans un réseau, tous les hôtes ont une adresse IP. Pour émettre des
données, le mode le plus souvent utilisé est l’Unicast. Une source émet un
paquet vers une seule destination. C’est le mode de fonctionnement le plus
largement utilisé sur l’Internet (protocoles HTTP, SMTP, FTP, etc).
Certaines protocoles tels que TCP ou UDP fournissent uniquement un service
unicast point à point. Si la source veut émettre un paquet à plus d’un
destinataire, elle va devoir effectuer plusieurs communications point à point
afin de transmettre le paquet à chaque destination.
Dans ce cas, la meilleure façon de transmettre un paquet à plusieurs
destinataires est d’utiliser le multicast.

Source

Routeur

Destinataires

Figure 1.1 :l’Unicast (la source envoie le paquet à seule destination)

1.3.2 Qu’est –ce que le Multicast ?

Le principe du Multicast est la transmission d’un à plusieurs. Une seule


source peut émettre des données vers plusieurs destinataires sans être
obligée de dupliquer les paquets.
Les avantages du multicast ne sont pas seulement logiques : pour en tirer
partie, les médias de transmission utilisés (comme Ethernet) doivent aussi
fournir un support pour le Multicast.
Si le multicast est supporté dans le réseau, les performances s’améliorent
énormément du fait qu’un paquet émis à N récepteurs est vu comme un seul
paquet, et transmis qu’une seule fois.
Le Multicast est largement utilisé en vidéo, en conférence audio, etc.
Le principe du routage Multicast est de transmettre les données pour un triplet
(source, destinations, groupe) particulier, via un arbre du routage multicast de
la source vers les destinations.

9
A priori, Quand une source émet, elle ne sait pas quels destinataires veulent
recevoir ses paquet. Les membres dans chaque groupe lui sont inconnus.
C’est la protocole de gestion de groupes IGMP (Internet Groupe Management
Protocole) qui détecte l’absence ou la présence de(s) membre(s) dans le(s)
groupe(s).
Quand un routeur sait à quel destinataire il doit envoyer les données, c’est le
protocole de routage multicast qui prend en charge la transmission des
données. Pour ce faire il construit un arbre de diffusion multicast. Une fois
construit, les données y cheminent vers les destinations.
Il existe plusieurs types d’arbres de diffusion Multicast :
- l'arbre partagé .
- l’arbre par source .
- l’arbre de chemin le plus court (SPT) .
- l’arbre du point de Rendez-vous (RPT) .

L’arbre partagé (*,G) est un arbre multicast dans lequel n’importe quelle
source envoie vers un groupe spécifique .
PIM utilise l’arbre partagé pour réduire la gestion des groupes à fiable trafic.
L’arbre par source (S,G) est un arbre multicast dans laquelle une source
spécifique envoie vers un groupe spécifique et les données traversent dans
cet arbre vers le groupe(destination) .
L’arbre de chemin le plus court chemin (pour plus des détails voir PIM-SM ) .
L’arbre du point de Rendez-vous (RPT) (pour plus des détails voir PIM-SM ) .
Les protocoles du routage multicast suivent un des deux approches :
- la première suppose que les récepteurs sont distribuées d’une manière
dense, les protocoles du routage multicast en mode dense comprennent
DVMRP,MOSPF et PIM-DM,
- la deuxième suppose que les récepteurs sont distribuées d’une manière
épars comme PIM-SM et CBT.

Un protocole du routage Multicast doit être évolutif, robuste et consommer le


moins possible de ressources réseau. Il doit pouvoir interagir avec d'autres
protocoles de routage Multicast et être facile à utiliser.
Le but du routage Multicast IP est de fournir des services d'informations
efficaces pour les applications qui envoient des données à des récepteurs
multiples.
Les protocoles intra-domaine : DVMRP, MOSPF et le PIM .
Les protocoles inter-domaine : MBGP , MSDP .
- Distance Vector Multicast Routing Protocol (DVMRP) : est un
protocole du routage multicast intra-domaine « Internet Gateway Protocol »
pour l’utilisation dans un système indépendant qui permet la communication
de multipoint dans ce système et produit des arbres Multicast en utilisant une
technique appelée Reverse Path Multicasting (RPM).
Puisque le DVMRP a été développé pour faire passer des paquets multicast
et pas des paquets unicast, un routeur exécutera probablement des
processus du routage différents : Un pour soutenir le transmission des
paquets unicast et un autre Soutenir le transmission des paquets multicast.
- Multicast Open Shortest Path First (MOSPF) : est tiré d'OSPF qui
utilise le Protocole de Gestion de Groupe (IGMP) pour contrôler l'adhésion de

10
groupe de multicast sur des sous-réseaux directement attachés, le routeur
MOSPF distribue alors des informations d'un groupe dans tout le domaine de
routage.
- Protocol Independent Multicast (PIM) : est un protocole de routage
multicast intra-domaine qui peut supporter de grands nombres de groupes.
PIM est un protocole indépendant c à d qu’il ne dépende pas sur n’importe
quel protocole unicast et son objectif est de fournir un service routage
multicast dans l’Internet dans un domaine interne sans dépendre sur
n’importe quel protocole du routage unicast.

MSDP
MOSPF DVMRP
PIM-SM PIM-DM
MBGP

Figure 1.2 : cette figure illustre le fonctionnement des protocoles intra et inter-
domaine

Figure 1.3 : le Multicast (la source envoie une copie du paquet à chaque
destinateur)

11
12
2. Internet Group Management Protocol
IGMP

2.1 Introduction

Le protocole de gestion de groupe IGMP permet de gérer l’existence ou non


de client pour un(des) groupe(s) dans un réseau local desservi par un routeur.
Pour ce faire, IGMP gère sept événements différents :
1. Adhésion à un groupe.
2. Retrait d’un groupe.
3. Recevoir un Query .
4. Recevoir un Report .
5. Emission d’une source.
6. Démarrage minuteur.
7. Expiration minuteur.

2.2 Scénario du Protocole :

Un Routeur Désigné DR, connecté avec des membres dans un réseau LAN,
envoie périodiquement un message IGMP Query General au réseau pour
savoir quels sont les membres connectés au réseau, ensuite le DR crée une
liste contenant les informations sur les interfaces et les membres qui sont
abonnés aux groupes.
Pour ce faire, chaque membre quand il reçoit le message IGMP General
Query, il informe le DR qu’il est abonné au(x) groupe(s) en envoyant un
message Report et il met en place un minuteur. Si un membre, abonné à un
groupe G, entend un message Report d’autre membre dans le LAN, qui est
abonné au groupe G. il arrête le minuteur et il n’envoie pas le message
Report. Un message Report du LAN suffit pour informer le DR qu’il y a au
moins un membre connecté à un groupe. Quand un Routeur Désigné reçoit
un paquet d’une source qui contient l’adresse de groupe M par exemple, il
envoie un message Group Specific Query au réseau attaché pour savoir s’il y
a un (ou plusieurs) membre veut adhérer au Groupe M. Si un membre désire
recevoir des paquets, il envoie un message Membership Report au DR.
Quand le DR reçoit le paquet, il le transmet à tous les membres dans le
réseau.

13
5. S’il y a un membre (ou
plusieurs) qui veut 2. chaque membre dans le LAN
adhérer à un groupe, il envoie ses informations au DR
envoie un message par un message Report.
Membership Report avec
l’adresse IP du groupe. 1 2 3

DR

1. Le DR envoie un message
3. DR crée une liste Query au LAN

Interface Groupe
----------------|-------------- 4. le DR envoie
1,3 | A un message
2,1 | B Group Specific
3 | C Query

Figure 2.1. Scénario du Protocole

Ce protocole fonctionne différemment selon qu’il est exécuté par un routeur


ou par un client.

2.3 IGMP sur un routeur

2.3.1 Introduction
S’il y a deux routeurs connectés au même LAN, un d’entre eux doit être choisi
pour être responsable de ce LAN et il est alors appelé « le Routeur Désigné
(DR) » . Le Routeur Désigné du LAN est celui qui transmet et envoie les
messages IGMP au LAN en cas l’adhésion et le retrait d’un membre dans le
LAN à un groupe quelconque. Si le Routeur Désigné tombe en panne, un
processus d’élection permet de désigner un autre routeur comme Routeur
Désigné.
Un Routeur Désigné utilise les messages IGMP pour gérer les membres et
les groupes sur le réseau qu’il dessert.
Pour cela, un routeur peut avoir une des deux fonctions suivantes :
1. Querier ou Routeur Désigné : il a la responsabilité d’envoyer des
messages
IGMP Query au réseau desservi.
1. Non-Querier : quand il y a un querier, les autres routeurs, dans le
même LAN, deviennent Non-Querier.

14
2.3.2 Adhésion à un groupe.

D’abord un Routeur Désigné connecté au réseau envoie des messages IGMP


General Query à ce LAN pour savoir quels sont les groupes qui ont des
membres dans le LAN. Quand un DR reçoit des paquets d’une source, il
envoie un message Query Groupe Specific au LAN pour savoir s’il y a un
(des) membre(s) veut recevoir des paquets. Si c’est le cas, il(s) envoie(ent) un
message Membership Report au DR. Sinon, il ne répond pas au message
Query. L’intervalle entre l’envoie de chaque message est d’une seconde.

2.3.3 Retrait d’un groupe.

Si un hôte veut quitter un groupe G par exemple, il envoie un message Leave


à tous les routeurs de groupe, qui contient l’adresse de ce groupe. Quand un
DR reçoit le message, il envoie un message Group Specific Query au LAN
pour savoir s’il y a encore des membres du même groupe G. Si le DR n’a reçu
aucune réponse à son message, il sait qu’il n‘a plus de membres adhérant au
groupe G dans le réseau attaché, et qu’il n’a pas besoin de transmettre au
LAN les paquets arrivés au groupe G.

2.3.4 Recevoir un Query .

IGMP Query : il y a deux types de messages:

1. IGMP General Query : le Routeur Désigné envoie ce message au


LAN pour savoir quels sont les groupes ayant des membres dans le
réseau attaché. le DR utilise ce message aussi pour connaître s’il y
a un ou des membres dans le groupe.
2. IGMP Group specific Query : le Routeur Désigné envoie ce
message avec une adresse du groupe G à tous les membres dans
le LAN (224.0.0.1) pour savoir s’il y a un ou des membres veulent
adhérer à ce groupe G.
Le Routeur Désigné envoie périodiquement un message General Query au
LAN, l'intervalle entre l’envoi de chaque message est de 125 secondes et le
temps maximum pour répondre à ce message est le Max Resp Time =10
secondes.
Remarque : Quand un routeur reçoit un message Query d’un autre routeur
avec une adresse IP plus basse, il devient non-querier.

2.3.5 Recevoir un Report .

Un Routeur Désigné, connecté au réseau attaché, reçoit un message Report :


1. Quand il envoie un message Query General au LAN, le DR reçoit
un message Report de chaque membre dans le groupe, ce
message contient l’adresse du (des) groupe(s) dans lequel chaque
membre s’est abonné.
2. Quand il envoie un message Group Specific Query au LAN; si
chaque membre dans le LAN veut adhérer à ce groupe, il envoie un
message Report au DR avec l’adresse du groupe.

15
2.3.6 l’émission d’une source.

Quand une source commence à émettre les paquets, les routeurs savent
quels sont les groupes ayant des membres dans les réseaux desservis. Ceci
grâce au protocole de gestion de groupe IGMP.
Chaque routeur désigné, qui reçoit le paquet, connaît déjà s’il y a au moins un
membre adhérant à ce groupe, pour lui transmettre les paquets.

2.3.7 démarrage minuteur.

D’abord le DR envoie rapidement des messages General Query pour obtenir


des informations des groupes. Ensuite le DR met en place un minuteur [Query
Interval].

[Query Interval] = le temps entre l'envoi des messages General Query =125
secondes.

2.3.8 expiration minuteur.

Si le DR envoie un message Query General et qu’il n’a pas reçu de réponse


avant l’expiration du minuteur, le DR va décider qu’il n’ y a plus de membres
dans le réseau attaché ( LAN ) et il va couper cette zone de l’arbre multicast.
Si le DR envoie un message Group specific Query et qu’il n’a pas reçu de
réponse avant l’expiration du minuteur, le DR sait qu’il n’y a pas de membres
qui veulent adhérer à ce groupe là.

2.4 IGMP sur un client

2.4.1 Adhésion à un groupe.

D’abord un DR envoie un message IGMP Groupe Specific Query. Si un ou


des hôtes veulent adhérer à ce groupe, il doit informer le DR en envoyant un
message IGMP Membership Report avec l’adresse IP de ce groupe. Si le
routeur ne veut pas adhérer à ce groupe, il ne fait rien mais s’il veut adhérer à
un autre groupe il envoie un message qui contient l’adresse de ce groupe.

16
2. si un hôte qui veut adhérer
à ce groupe, il envoie un
message Report avec
l’adresse IP de ce group

DR 3. Le DR envoie un message
1. Le routeur envoie un Join au groupe pour adhérer
Group specific Query à tous l’hôte à ce groupe
les récepteurs

Figure 2.2 : L’Adhésion d’un hôte à un groupe.

2.4.2 Retrait d’un groupe.

Si un hôte veut quitter un groupe, il envoie un message Leave à tous les


routeurs de groupe (224.0.0.2), ensuite le DR va envoyer un message Group
Specific Query au LAN pour savoir s’il y a encore des membres connectés au
même groupe ou non.

17
1. si un hôte veut quitter
un groupe, il envoie un
message Leave à tous les
routeurs du groupe.

2. Le DR envoie un message
DR Groupe Specific Query au LAN, il
coupe l’interface d’où le message
leave est arrivé de l’arbre multicast
(l’interface est matérialisé par la
ligne rouge)

Figure 2.3 : Le retrait d’un hôte d’un groupe.

2.4.3 Recevoir un Query .

Quand un hôte reçoit un message General Query ou un message Group


Specific Query, il met en place un minuteur (Max Response Time=10
secondes ) pour ne pas envoyer de réponses doublées au DR (un message
Report par LAN est suffisant). C’est- à – dire que, quand un hôte adhérant au
groupe G, entend un message Report d’un autre hôte adhérant au groupe G
et connecté au même LAN, il arrête son minuteur et n’envoie plus de
message Report.
L’adresse du groupe doit être zéro dans le message Query General.

2.4.4 Recevoir un Report .

Un hôte A dans le LAN reçoit un message Report quand un autre hôte dans
le même LAN envoie un message Report. Le message Report est soit un
réponse à un message General Query soit une réponse à un message
Groupe Specific Query.
Si le message Report est une réponse à un message Group specific Query,
l’hôte A ne fait rien. Mais si le message Report est une réponse à un message
General Query et qu’il contient l’adresse du groupe dans lequel l’hôte A est
abonné, alors l’hôte A va arrêter son minuteur et n’envoie pas son message
Report.

18
Remarque : Quand un membre dans le LAN envoie un message
Report au DR, chaque membre dans le LAN peut l’entendre.

2.4.5 l’émission d’une source.

Quand une source émet à un groupe, tous les membres qui sont connectés à
ce groupe vont recevoir des paquets envoyés à ce groupe et chacun peut
adhérer à plus d’un groupe en même temps.

2.4.6 démarrage minuteur.

Un hôte démarre son minuteur [Max Resp Time=10] secondes, dès qu’il
reçoit un message Query General ou un message Query Group Specific.

2.4.7 expiration minuteur.

Quand un hôte veut envoyer un message Report mais qu’il a entendu un


autre message report d’un membre connecté au même LAN, il arrête son
minuteur et il n’envoie pas de message report au DR.

19
2.5 Format des messages IGMP

Le format du message IGMP est :

Type Max Resp Time Checksum


l’Adresse du Groupe

Type : c’est le type d’un message IGMP (General Query, Group specific
Query, report, leave) .
Max Resp Time : l’hôte qui reçoit ce message, règle son minuteur à cette
valeur (10 secondes).
Checksum : quand un message arrive, le routeur calcule son checksum et le
compare à celui transporté. S’il y a une correspondance entre les deux
checksums (du message et du routeur) le message sera accepté sinon il sera
rejeté.
L’adresse du groupe : l’adresse du groupe Multicast.
L’adresse de groupe multicast est un des deux :

1. une adresse IPv4


La taille d’une adresse multicast IPv4 est de 32 bits par exemple:
224.130.79.205
L’adresse multicast IPv4 est à portée de 224.0.0.0 au
239.255.255.255

2. une adresse IPv6


La taille d’une adresse multicast Ipv6 est de 128 bits par exemple
FF0:0:0:0:0:0:0:101
L’adresse multicast Ipv6 est à portée de FF02:0:0:0:0:1:FF00:0000
au F02:0:0:0:0:1:FFFF:FFFF.

20
2.6 Les états d’un hôte dans IGMP

Un hôte peut être dans un des états suivants :

Non-Membre : Quand un hôte quitte un groupe, il envoie un message Leave


et il arrête son minuteur. Dans ce cas il n’est pas un membre dans le groupe.
Membre en attente : un membre est appelé membre en attente dans les cas
suivants :
1. Quand un hôte veut adhérer à un groupe; alors il envoie un message
Report et il démarre son minuteur.
2. Quand l’hôte a déjà adhéré à un groupe et a reçu un message Query
(General ou Group Specific); il envoie alors un message report et
attend l’arrivée des paquets.
3. Quand le Max Resp Time est plus grand que le minuteur courant.
Membre inactif :un membre est dit inactif :
1. Quand l’hôte dans un groupe a entendu un autre message d’un autre
membre dans le LAN. Il arrête son minuteur. Alors dans ce cas le
membre ne fait rien.
2. Quand un hôte a déjà envoyé un message Report au DR. Alors dans
ce cas le membre ne fait rien.
Membre actif :un membre est dit actif quand le membre dans le groupe
envoie et reçoit des messages et des paquets.

Les transitions pour passer d’un état à un autre sont reprises dans le schéma
ci-dessous :

21
Adhésion à un groupe
(envoyer un message Non
Report , démarre le
Membre
minuteur )

Reçoit des paquets, Quitter un groupe Quitter un


(envoie un groupe (envoie
envoie un report
message Leave) un message
Leave)
Membre
En attente
Recevoir un
Query, démarrer
le minuteur Membre
Inactif
Recevoir un Query,
Max Resp T ime >
minuteur actuel Recevoir un Report, Recevoir un
arrêter le minuteur Report, arrêter
le minuteur

Envoyer un
Report, le minuteur Quitter un
Reçu des données et
il envoie un autre est fini groupe (envoie
message Report un message
Leave)
Membre
Actif

Figure 2.4: Les états d’un membre d’IGMP

22
2.7 Conclusion

IGMP :

Le protocole IGMP est un protocole de gestion du groupes, c’est-à-dire qu’il


est le responsable de gérer les membres dans les groupes, chaque membre
demande d’un routeur désigné s’il veut adhérer à un groupe ou quitter d’un
groupe en envoyant des messages IGMP
Des messages IGMP sont :
IGMPv1 General Query.
IGMPv1 Report.
IGMPv2 Group specific Query.
IGMPv2 Leave Group.
IGMPv3 Report
IGMPv3 Source-Specific Query.

23
24
3. Protocoles du routage Multicast

3.1 Introduction
Comme expliqué précédemment, les protocoles de routage multicast ont pour
fonction l’installation est la maintenance d’arbres de diffusion. La topologie
d’un arbre de diffusion est mémorisée dans les tables de routage multicast.
Les protocoles de routage multicast peuvent être divisés en deux modes.

Les protocoles en mode dense :


- PIM-DM
- DVMRP
- MOSPF
Les protocoles en mode épars :
- PIM-SM
- CBT

Nous allons étudier un Protocole de chaque partie. PIM-DM en mode Dense


et PIM-SM en mode épars.

25
26
3.2 Protocole du routage Multicast en mode dense
PIM-DM

3.2.1 Introduction
PIM utilise une technique appelée Reverse Path Forwarding (RPF).
Si un datagramme est reçu sur l’interface utilisée pour envoyer un paquet
unicast vers la source de ce datagramme (reverse), il sera propagé sur les
autres interfaces du routeur, sinon il sera rejeté.
Si un routeur reçoit des données sur une de ses interface de sortie, il va
envoyer un message ASSERT au routeur émetteur de ces données.
PIM se base sur les protocoles de routage unicast en place dans le réseau
desservi pour transmettre les données multicast aux destinataires.

Comment ça marche le PIM-DM ?

D’abord, une source envoie les paquets à tous les récepteurs sur toutes les
interfaces, ensuite, pour construire un arbre multicast PIM-DM utilise 3
mécanismes :

1. Prune.
2. Graft .
3. Leaf – Network Detection.

1. Prune : S’il n’y a pas, ou plus, de membres dans un groupe, un


routeur PIM va envoyer un message prune à ses routeurs voisins pour les
informer qu’il n’a plus besoin de recevoir les paquets de ce groupe. La partie
de l’arbre qu’il irriguait sera donc coupée de l ‘arbre multicast.
Dans la table de routage, cette condition (plus de membre(s) à desservir) est
représentée par une entrée (S,G) sans interface de sortie.
Pour empêcher la transmission de paquets à un groupe délaissé par ses
membres et pour réduire les paquets inutiles, un routeur désigné (DR)
détermine à quel moment envoyer un message prune en utilisant le
mécanisme Leaf Network detection (cf. ci-dessous).
2. Graft : PIM utilise cette technique pour gérer l’adhésion de membres
à un groupe. Si un routeur est connecté à un LAN qui contient un (des)
membre(s) qui souhaitent se adhérer à un groupe, le routeur envoie un
message PIM-Graft vers la source pour annoncer l’adhésion d’un membre au
groupe vers lequel la source émet.
Lorsqu’en amont, un routeur reçoit le message, il le transforme en message
Graft-Ack en reconnaissant l’entrée et envoie le paquet original à la source.
Si un routeur qui reçoit un message PIM-Graft a une entrée de table de
routage pour le groupe G, il ajoute l’interface par laquelle le message lui est
arrivé à la liste des interfaces de sortie pour ce groupe.
Si le routeur n’aucune entrée de table de routage pour ce groupe et cette
source, il ne fait rien.

27
Remarque : En cas l’adhésion à des groupe, le DR envoie périodiquement
(toute les 3 secondes) un messages PIM-GRAFT.

3. Leaf-Network Detection : pour qu’un routeur sache s’il n y a ou non


des membres à desservir dans le réseau attaché, et pour savoir s’il est
routeur feuille on non pour envoyer des messages au réseau attaché, il utilise
une technique appelée « leaf-network detection ».
La technique « leaf-network detection » est basée sur la detection des
routeurs feuille, ceci est réalisé quand chaque routeur dans le domaine PIM
envoie un message Hello aux routeurs voisins, si le routeur en amont ne
reçoit pas des messages hello d’un routeur en aval pendent 30 seconds, le
routeur sait qu’il est le routeur feuille et il est le responsable de transmettre
des messages IGMP aux membres connectés avec lui. Si le routeur désigné
est tombé en panne, un nouveau sera élu.

3.2.2 L’émission d’une source


D’abord la source envoie des paquets à tous les récepteurs, si le DR a
un(des) membre(s) dans le réseau attaché qui est déjà adhéré à un groupe, il
le transmet les paquets, sinon il envoie un message prune parce qu’il n’y a
pas de membres qui veulent recevoir des paquets.
S’il y a un routeur en aval connecté à deux routeurs en amont, il va recevoir
des paquets doublés et il va envoyer un message prune pour empêcher les
messages doublés.
Quand une source envoie des paquets à un groupe G, si le routeur récepteur
n’a pas d’informations sur la source émettrice, il crée une entrée (S,G) qui
contient des informations sur la source, le groupe de destination, les
interfaces entrantes et sortantes.
Une entrée (S,G) construite avec une liste d’interfaces sortantes vide, est
appelée entrée negative de cache « negative cache entry ». Le routeur n’a
donc aucune information de l’ interface vers laquelle il va transmettre les
données. De ce fait, un message PIM-Prune va être envoyé vers toutes les
adresses des routeurs de groupe multicast.
S’il y a deux routeurs connectés à une source avec la même distance, des
messages doublé seront transmis au réseau, PIM-DM va empêcher les
messages doublés et un seul expéditeur(transmetteur) qui a la distance la
plus courte de la source sera élu.

28
1. La source commence
à émettre sur toutes les
interfaces
Source

Récepteur 2 Récepteur 1
B

C
D 2. Routeur D va envoyer un
message Prune parce que il
Récepteur 3 n’y a pas de membres

3. Routeur C aussi va envoyer un


message Prune parce que il a reçu
des messages doublés du routeur A
et du routeur B.

Figure 3.1: la source émet à tous les récepteurs.

Remarque : si le paquet est arrivé dans sur une fausse interface, il sera
refusé si le routeur n’a pas aucun état sur le groupe .

3.2.3 Adhésion à un groupe

D’abord, PIM envoie des paquets multicast sur toutes les interfaces dans le
domaine PIM. Quand un hôte connecté dans un réseau attaché, LAN veut
adhérer à un groupe, le routeur désigné envoie un message PIM-Graft au
routeur en amont vers la source. Dans ce cas, quand le routeur en amont
reçoit le message :

1. Soit il envoie un message Graft-Ack en aval vers le routeur désigné si


le routeur en amont est déjà dans l’arbre multicast (a une entrée(S,G)),
il peut transmettre les paquets au DR.

29
2. Soit le routeur en amont a une entrée (S,G) avec une liste des
interfaces sortantes vide (Negative Cache Entry), il envoie un message
Graft-Ack au routeur en amont vers la source.
3. Soit le routeur en amont n’a aucune entrée (S,G), il ne fait rien dans ce
cas là.

Si le routeur en amont a une entrée (S,G) cela veut dire que le message de la
source peut arriver à l’hôte (récepteur) et quand le routeur en amont reçoit le
message, il ajoute l’interface dans laquelle le message est arrivé dans la liste
des interfaces sortantes et il transmet les paquets au(x) récepteur(s).
Pour empêcher la perte de messages, le Routeur Désigné envoie un
message PIM-Graft au routeur qui n’a pas d’entrée toutes les 3 secondes.

6. Quand la source reçoit le


message, il ajoute l’interface
dans laquelle le message est
arrivé et il recommence à
émettre des paquets dans
cette interface.
Source
4. Si le routeur a (S,G), il
répond en envoyant un
Graft-Ack au DR et il
transmet les paquets arrivés
B
de la source au DR.

3. Quand il reçoit le 1. IGMP


message, il crée(S,G) Report au DR
A entrée

DR

2. Message
Graft-Ack à A

5. Si l’entrée est Negative


Cache Entry, il répond en
envoyant un message
Graft-Ack au routeur en
amont B. Si A n’aucune
entrée, il ne fait rien.

Figure 3.2 : L’Adhésion d’un hôte à un groupe(la ligne rouge représente le


flux des paquets)

3.2.4 Quitter un groupe

Quand un hôte, connecté avec un routeur désigné, veut quitter un groupe, le


routeur désigné envoie message prune adressé à tous les routeurs multicast
de groupe (224.0.0.13). Quand les autres routeurs écoutent le message
prune, ils répondent par un message join s’ils désirent recevoir des paquets
multicast.

30
1. L’hôte envoie
IGMP Leave pour
quitter à un groupe

2. S’il n’y a plus des


membres, le DR 3. Quand un routeur
envoie un message reçoit un message prune,
PIM-Prune pour Il prévoit une demande
couper cette branche d'effacement de
de l’arbre multicast l’interface.

4. Si un routeur désire recevoir les


paquets arrivées, il envoie un
message join au routeur en aval.

Source

Figure 3.3 : Le Retrait d’un hôte d’un groupe (le flux de données est matérialisé à la
ligne rouge)

3.2.5 L’élection d’un Routeur Désigné(DR) :


S’il y a plusieurs routeurs connecté au même LAN, des messages doublés
arriveront à ce LAN, dans ce cas, un seul routeur sera choisi par un
processus d’élection.
Le processus d’élection est le suivant :
Chaque routeur envoie un message Hello aux routeurs voisins toutes les 30
seconds pour savoir quelles sont les interfaces utilisées par chaque routeur.
Le routeur, qui est connecté au LAN, qui a l’adresse IP le plus grand,
deviendra le DR et il sera le responsable de l’envoie de message Query au

31
LAN attaché. Ce processus est répété chaque fois que se présente un routeur
avec une adresse IP plus grande ou si le DR est tombé en panne.

3.2.6 L’élection d’un Routeur transmetteur (forwarder) :

Si plusieurs routeurs sont connectés à une source et délivrent leurs paquets


aux mêmes routeurs en aval, les routeurs en aval vont recevoir des paquets
dupliqués. PIM-DM empêchera ce problème en choisissant un des routeur
connectés à la source. Lorsqu’un routeur reçoit des paquets sur son interface
sortante, il envoie un message Assert aux routeurs PIM indiquant sa distance
pour atteindre la source. Celui qui a la distance la plus petite sera le
transmetteur. Si deux routeurs ont la même métrique, c’est celui qui a
l’adresse IP la plus petite qui sera choisi.

3.2.7 La Table de routage :

lorsque un routeur reçoit un message Graft par exemple, il crée une


entrée(S,G) qui contient l’adresse de la source, l’adresse de groupe, les
interfaces entrants et les interfaces sortants, si le routeur n’a pas cette entrée,
il ne fait rien, si l’adresse de groupe n’est pas enregistrée dans la table de
routage, le routeur ne peut pas décider à quel groupe il doit envoyer les
paquets.
Les interfaces entrantes et sortantes se trouvent dans la table du routage
multicast. A l’arrivée d’un paquet multicast au routeur, le routeur sait dans
quelle interface il doit transmettre le paquet, cela se fait grâce à la table du
routage multicast.

3.2.8 Les messages de PIM-DM

PIM-Hello : Tous les routeurs envoient un message Hello pour connaître


quelles sont les interfaces utilisées pour chaque routeur et pour savoir aussi si
le routeur est un routeur feuille ou non.

PIM-Graft : PIM-DM l’utilise pour l’adhésion des membres à un groupe, si une


entrée (negative cache entry) est construite, le routeur envoie un message
Graft vers la source (rejoindre des branches à l’arbre multicast).

PIM-Graft-Ack : chaque routeur reçoit le message Graft-Ack, il répond en


envoyant un Graft-Ack Message.
PIM-Assert : un routeur envoie le message Assert pour résoudre les
plusieurs ( forwarder ) transmetteurs, et s’il est reçu des paquets sur
l’interface sortante.

PIM-join/Prune : un message Join/Prune envoyé pour joindre des membres à


l’arbre multicast (ajouter des branches) ou pour quitter des membres de
l’arbre multicast (couper des branches).

32
3.2.9 Le format d’un paquet en mode dense.

4-bit 4-bit 8-bit 16-bit


PIM Ver Type Reserved Checksum

PIM Ver : la version de PIM-DM est 2.

Type : il indique le type du message, les types de PIM (DM & SM) sont.
0= Message Hello
1= Message Register (PIM-SM)
2= Message Register-Stop (PIM-SM)
3= Message Join/Prune
4= Message Bootstrap (PIM-SM)
5= Message Assert
6= Message Graft
7= Message Graft-Ack
8= Candidate-RP-Advertisement Message

Reserved : initialisé à 0,ignoré.


Checksum : Quand un message arrive, le routeur calcule son checksum et il
le compare à celui transporté. S’il y a du correspondance entre les deux
checksums (du message et du routeur) le message sera accepté sinon il sera
rejeté.

33
3.2.10 Minuteurs utilisés en PIM-DM

1. Chaque routeur reçoit un message prune, il va faire une


demande d’effacement du LAN de la liste d’interfaces
sortantes de l’entrée (S,G) , la période avant la délétion doit
être plus de 3 secondes.
2. Chaque routeur envoie un message join, va mettre en place
un minuteur avant d’envoyer son message Join, si le routeur,
qui a reçu le message, entend un autre message d’autre
routeur, le routeur va arrêter son minuteur. La période
d ‘envoyer chaque message est de 1 à 3 secondes.
3. Quand un routeur désigné (DR) envoie des messages GRAFT
vers la source, il met en place un minuteur. L’intervalle avant
d’envoyer chaque message doit être 3 secondes.
4. Chaque routeur envoie un message Hello, va mettre en place
un minuteur avant d’envoyer les autres message Hello.
L’intervalle entre l’envoi de chaque message Hello est de 30
secondes. Le routeur envoie des messages Hello pour la
détection des voisines et pour la détection les routeurs feuilles
dans le domaine.

3.2.11 Conclusion

PIM-DM
PIM-DM est un protocole Multicast indépendant d’aucun protocole unicast.
D’abord, la source envoie des paquets dans tous les branches de l’arbre
multicast, celui qui ne veut pas recevoir des paquets, il envoie un message
Prune pour couper cette branche de l’arbre.
PIM-DM utilise trois mécanismes pour construire un arbre multicast.
1. Prune (couper des branches de l’arbre multicast )
2. Graft (ajouter des branches à l’arbre multicast )
3. Leaf-Network detection. (détection des membre dans le réseau
attaché).
Des message PIM-DM sont :
1. Message Hello
2. Message Join/Prune
3. Message Assert
4. Message Graft
5. Message Graft-Ack

34
35
3.3 Protocol Independent Multicast Sparse Mode
PIM-SM

3.3.1 Introduction

PIM-SM est un protocole du routage multicast, il ne dépend d’aucun protocole


unicast. Il est conçu pour transmettre des paquets de la source à plusieurs
destinations trouvées dans un mode épars. Pour transmettre les données
d’une source aux destinataires, il faut construire un arbre de chemin multicast.
PIM-SM utilise deux types dés arbres multicast, l’arbre de distribution partagé
(RPT) et l'arbre de chemin le plus court (Shortest Path Tree SPT).
L’arbre partagé (RPT) : PIM-SM emploie un routeur central appelé le Point de
Rendez-vous (RP), qui représente la racine de l'arbre partagé. La source
envoie ses paquets multicast au RP qui les envoie à son tour, par l’arbre
partagé, à tous les récepteurs.
L’arbre de chemin le plus court : quand un point de rendez-vous d’un groupe
reçoit des paquets d’une source spécifique, dans un temps spécifique, le point
de rendez-vous de ce groupe va décider de changer l’arbre RPT en arbre
SPT.

3.3.2 Aperçu du Protocole

Un point de rendez-vous est choisi par un processus d’élection. C’est ce le


point de rendez-vous qui représente la racine de l’arbre partagé. Un routeur
appelé Bootstrap (qui est élu ) envoie des messages Bootstrap à tous les
routeurs dans le domaine PIM-SM. Ces messages contiennent toutes les
informations des adresses des points de rendez-vous pour chaque groupe. Si
une source veut envoyer des paquets à un groupe, elle doit informer son
Routeur Désigné (DR) en envoyant un message IGMP Report. Alors le DR
connaît déjà le point de rendez-vous (RP) de ce groupe par une fonction
appelée Hachage (Hash Function). Le DR encapsule chaque paquet dans
des messages Register et les envoie au point de rendez-vous. Quand le RP
n’a plus de membres ou il a déjà fini la transformation de RPT à SPT, il envoie
un message Register-Stop vers la source. Quand la source reçoit le message
(Register-Stop) elle arrête l’envoi des messages Register au RP du groupe.
Si un hôte (membre) veut adhérer à un groupe, il envoie un message IGMP
Report au DR, puis le DR envoie un message Join/Prune vers le point de
rendez-vous de ce groupe pour faire adhérer le membre au groupe. Quand un
arbre multicast est construit, les récepteurs peuvent recevoir des paquets de
la source.

36
3.3.3 L’Adhésion d’un hôte à un groupe et la construction d’un arbre
partagé

S’il y a un ou plusieurs membres qui veut adhérer à un groupe, il envoie un


message IGMP Report à son routeur désigné. Le DR créé une entrée (*,G)
qui contient l’interface entrante (iif). L’interface entrante est l'interface par
laquelle le paquet est transmis de la source au groupe. L’interface
sortante(oif) est l’interface dans laquelle le message est arrivé du groupe vers
la source. L’adresse de la source et l’adresse du RP du groupe, le bit RPT=1,
le bit WC=1. Ensuite, le DR envoie un message Join/Prune vers le point de
rendez-vous. Le message contient deux listes : la première appelée la liste
Join, Join={S, RPT-bit} et la deuxième appelée la liste Prune, Prune = {Nul}.
Le bit RPT (RPT-bit) est utilisé pour construire un arbre partagé.
Le bit WC indique que n’importe quelle source peut correspondre au RPT, et
peut être transmise dans l’arbre partagé (RPT) selon l’entrée (*,G).
Chaque routeur, le long de l’arbre partagé, crée une entrée (*,G) et envoie un
message Join/Prune à son voisin RPF. Quand le RP reçoit le message, il crée
une entrée (*,G) dont l’interface entrante est vide.
Pour construire l’arbre partagé, chaque routeur crée une entrée (*,G) qui
indique que le(s) récepteur(s) peut(peuvent) recevoir des paquets via l’arbre
partagé. Chaque entrée contient deux listes : la première est la liste des
interfaces entrantes pour savoir par quelle interface le message est arrivé et
la deuxième est la liste des interfaces sortantes pour savoir vers quelle(s)
interface(s) le message doit être transmis.

37
1. L’hôte envoie
un message IGMP
Report au DR

3. envoie un message 1 2. Crée (*,G)


Join/Prune à routeur A DR Adresse du groupe =G
L’adresse du RP=C
l’interface entrante=2
l’interface sortante=1
RPT-bit=1
2
WC-bit=1

4. A répète les pas numéro 2


et 3 en changeant l’interface
entrante et l’interface RP
3 B C
sortante: A
l’interface entrante=4
4
l’interface sortante=3
5 6 7 Groupe G

5. B répète les pas numéro 6. RP répète le pas numéro 2 et il


2 et 3 en changeant change l’interface entrante et
l’interface entrante et l’interface sortante.
l’interface sortante: l’interface entrante=NULL
l’interface entrante=6 l’interface sortante=7
l’interface sortante=5

Figure 3.4 : Un hôte adhère à un groupe G et établir l’arbre partagé RP-Tree

3.3.4 Un hôte envoie des paquets à un groupe


Si un hôte veut envoyer des paquets à un groupe, le DR encapsule chaque
paquet dans un message Register et il l’envoie au RP via l’arbre partagé, le
RP décapsule chaque message et transmet le paquet aux récepteurs.
Les étapes suivantes expliquent le processus plus en détail :
Si un hôte veut envoyer des paquets à un groupe, il envoie un message IGMP
report au DR, ensuite le DR crée une entrée (S,G) et il encapsule chaque
paquet dans un message Register et l’envoie un unicast au point de rendez-
vous. Quand le RP reçoit le message, il met en place un compteur de les
paquets. Si le RP a déjà une entrée (*,G), il décapsule chaque message et il
envoie des paquets au groupe, sinon il crée une entrée (S,G) et il copie la
liste des interfaces sortantes de l’entrée (*,G) existante et il les colle dans la
liste des interfaces sortantes de l’entrée (S,G) et il envoie un message
Join/Prune au routeur en amont, chaque routeur le long de l’arbre de
distribution partagé crée l’entrée (S,G) et il envoie un message Join/Prune au
routeur en amont.
Quand le DR reçoit le message join/Prune, il ajoute l’interface, par laquelle le
message est arrivé dans la liste des interfaces sortantes, et il envoie des
paquets au groupe selon l’entrée (S,G). Si le RP n’a plus de membres qui
veulent recevoir des paquets ou si le RP a fini la transformation de RPT à
SPT, il envoie un message Register-stop à la source. Quand la source reçoit
ce message, elle arrête l’envoi des paquets en message Register.

38
Pourquoi le RP envoie un message Register-Stop à la source des paquets
pour arrêter l’envoi des messages Register?
L’encapsulation et la décapsulation ne sont pas efficaces pour deux raisons :

1. L’encapsulation et la décapsulation des paquets sont deux


opérations coûteuses pour le routeur, cela dépend si un
routeur a de la mémoire suffuisante pour réaliser les deux
operations.
2. le temps d’aller-retour entre les destinateurs et la source en
passant par le point de rendre-vouz peut être assez important,
alors que ces destinateurs peuvent être proches de la source.
Bien que les deux processus ne soient pas efficaces, PIM-SM peut continuer
d’encapsuler et décapsuler des paquets.
Le RP envoie des messages Join/Prune en retour vers la source, chaque
routeur, le long de l’arbre partagé, crée une entrée (S,G). La source
commence à émettre des paquets, quand ils arrivent au routeur qui a une
entrée (*,G), ils seront transmis au RP dans un chemin plus court différent,
parce que le RP n’a pas fini la transformation de RPT à SPT, dans ce cas, le
RP va recevoir des paquets doublés par l’entrée (*,G) et l’entrée (S,G). Le RP
laissera tomber les paquets encapsulés et il envoie un message Register-
Stop à la source pour arrêter l’envoi de messages Register.

1. paquets à S

11. quand il reçoit Register-Stop, il arrête envoyer


2. crée (S,G) des messages Register, et il va continuer émettre
interface entrante = 1 des paquets selon l’entrée (S,G)
interface sortante = 2
1
DR 3. encapsule des paquets
9. ajoute l’interface 2 sur la en message Register et
liste des interfaces sortantes. l’envoie au RP
Et il envoie des paquets selon
l’entrée (S,G). 6. si le taux des paquets est
2 grand, il crée (S,G) et il
7. Envoie Join/Prune vers envoie Join/Prune vers le DR
le DR adresse du groupe = G
adresse du groupe = G Join={S} , Prune = {Null}
8. crée (S,G) Join={S} , Prune = Null
l’interface entrante = 3
3
l’interface sortante = 4 A
envoie Join/Prune
l’adresse du groupe = G 4
5
Join={S} , Prune = {Null}
RP Groupe G
5. décapsule des
paquets arrivés et
les envoie aux 4. met un 10. Quand il reçoit des paquets
membres du comptoir pour encapsulés et des paquets selon
Groupe G des paquets l’entrée (S,G), il refuse les
paquets encapsulés et il envoie
Register-Stop au DR.

Figure 3.5 : Un hôte envoie des paquets à un groupe (Register/Register-


Stop).

39
3.3.5 Transformation de RPT à SPT :

Un routeur désigné, connecté au réseau attaché, joint le RPT, le DR ou le


point de rendez-vous du groupe décide de transformer de RPT en SPT qui est
nécessaire pour obtenir un chemin plus court pour faire passer les paquets de
la source au groupe.
Si un DR a reçu un nombre de paquets pendant un temps indiqué d’une
source spécifique, il décidera de transformer de l’arbre partagé RPT au l’arbre
de chemin le plus court SPT. La transformation se fait de la manière
suivante :
Le Routeur Désigné DR contrôle des paquets arrivés de la source qui n’ont
pas une entrée (S,G), ensuite, le DR crée une entrée (S,G), RPT-bit =0, WC-
bit=0, SPT-bit=0, et le DR copie toutes les interfaces de la liste oif de l’entrée
(*,G) existante, et les colle dans la liste des interfaces sortantes de l’entrée
(S,G), c’est à dire que tous les récepteurs vont continuer de recevoir des
paquets. Ensuite, il envoie un message Join/Prune vers la source, Join={S},
Prune={Nul}. Quand la source reçoit le message Join/Prune, elle commence à
émettre les paquets. Quand le routeur voisin RPF reçoit les paquets de la
source via l’arbre de chemin le plus court SPT, il met le bit SPT égal à 1
(SPT-bit=1). Dans ce cas, les récepteurs recevront les paquets par un chemin
plus court.

40
7. Ajoute
1. Reçoit des paquets sur l’interface 13 à la
l’arbre partagé RPT. Destinateur liste des interfaces
Crée (S,G) sortantes (S,G)
L’interface entrante= 2 oif=oif+13
Source S
L’interface sortante= 1
Le bit RPT = 0
Le bit SPT = 0
1
Le bit WC = 0 DR
Il démarre un minuteur

2. Envoie Join/Prune à A C
Join = {S} 13 12
Prune = {Null} 2
L’adresse du groupe = G
9. Crée (S ,G)
oif=oif(*,G) – {10}
RPT-bit = 1

3
4. Envoie Join/Prune à B A B 6 11
Join = {S}
Prune = {Null} 4
5 7 8 9 10
L’adresse du groupe = G

RP du
3. Crée (S,G)
iif = 4 5. Crée (S,G) 8. Quand il 6. Envoie groupe G
oif = 3 iif = 6 reçoit des Join/Prune à C
9. Crée (S ,G)
WC-bit = 0 oif = 5 paquets de la l’adresse du
oif=oif(*,G) – {8}
RPT-bit = 0 WC-bit = 0 source S , groupe = G
RPT-bit = 1
SPT-bit = 0 RPT-bit = 0 SPT=1 et Join = {S}
Il démarre un SPT-bit = 0 envoie Prune = {Null}
minuteur Il démarre un Join/Prune à RP
minuteur du groupe G
Join = {Null}
Prune = {S,
RPT-bit}

Figure 3.6 : Changement de RPT à SPT, Le SPT résultant est représenté à la


ligne rouge.

3.3.6 Interopération entre le domaine de PIM-DM et le domaine de


PIM-SM.

Si le domaine PIM-SM interagit avec le domaine PIM-DM, des paquets


générés dans le domaine PIM-SM, peuvent être transférés à l’autre domaine
et des paquets générés dans le domaine PIM-DM, peuvent être transférés au
domaine PIM-SM.
Le routeur responsable de la réalisation cette opération est le routeur PIM
Multicast Border Router PMBR, c’est un routeur de frontière qui se trouve sur les
frontières entre le domaine PIM-SM et les autres domaines.
Pour ramener des paquets générés dans le domaine PIM-DM au domaine
PIM-SM, le routeur de frontière PMBR fait le suivant :

41
S’il n’y a pas de correspondance entre le paquet arrivé et l’entrée (S,G) ou
l’entrée (*,G) existante dans le routeur PMBR, ce dernier crée une nouvelle
entrée (*,*,RP), c’est à dire que n’importe quelle source, n’importe quel
groupe correspond au même point de rendez-vous. Le PMBR envoie un
message (*,*,RP) Join/Prune à tous les RP actifs, ensuite un arbre de
distribution multicast est construit, les RP envoient tous les paquets générés
au PMBR. Ensuite le PMBR les envoie au domaine PIM-DM.
Si un routeur demande des paquets d’autre(s) domaine(s), le PMBR apporte
les paquets de ce domaine et les envoie au domaine PIM-SM. Le PMBR
encapsule chaque paquet en message Register et l’envoie directement au RP
dans le domaine PIM-SM. Le RP peut envoyer un message Register-Stop
quand il n’a plus de membre au groupe ou s’il reçoit des messages doublés
du PMBR. Pour savoir que le message est arrivé d’un routeur de frontière ou
non, il y a dans le message Register un bit B qui indique que le message est
arrivé d’un routeur de frontière.

3.3.7 Traitement du paquet Multicast :

Quand un routeur reçoit un paquet multicast, il détecte, d’abord, l’adresse de


la source, et l’adresse du groupe. Ensuite, il vérifie s’il y a une
correspondance entre le paquet arrivé et l’entrée (S,G), sinon, il vérifie s’il y a
une correspondance entre le paquet et l’entrée (*,G) ou (*,*,RP). S’il n’y a
aucune correspondance, le routeur laisse tomber le paquet arrivé. Si le
routeur trouve une correspondance entre le paquet arrivé et une de ses
entrées existantes. Puis, le routeur vérifie si l’interface où le paquet est arrivé,
est la même interface entrante de l’entrée où se passe la correspondance.

3.3.8 Election d’un Routeur Désigné DR

S’il y a plusieurs routeurs connectés au même LAN, certains messages


doublés vont être transmis au LAN, un routeur d’entre eux doit être choisi
pour représenter le routeur désigné pour ce LAN. Le Routeur Désigné est le
responsable de la transmission des messages IGMP au LAN. Le processus
d’élection est le suivant :
Chaque routeur dans le domaine PIM envoie un message Hello à tous ses
routeurs voisins, et celui qui a l’adresse de la couche du réseau le plus grand,
sera le DR et sera le responsable de l’envoi des messages Join/Prune,
Register, à la source.

3.3.9 Chemins parallèles à une source

S’il y a plusieurs routeurs connectés à la même source, le(s) routeur(s) en


aval va(vont) recevoir des messages doublés, dans ce cas le routeur(s) (qui a
reçu le message doublé) va envoyer des messages Assert à tous les routeurs
PIM (224.0.0.13) et celui qui a la distance la plus petite à la source sera le
transmetteur au LAN.
Quand un routeur reçoit des paquets sur l’interface sortante, le routeur envoie
un message Assert à tous les routeurs PIM (224.0.013), ce message contient
la métrique que le routeur l’utilise pour atteindre la source des données, celui
qui a la métrique le plus petit sera le transmetteur.

42
3.3.10 Informations sur les RPs
Comment un routeur connaît le(s) point(s) de rendez-vous de chaque
groupe ?
Un routeur Bootstrap BSR, c’est un routeur qui est élu par un processus
d’élection, celui qui génère des messages appelés Bootstrap contenant toutes
les informations sur le(s) point(s) de rendez-vous pour chaque groupe. Le
BSR envoie des messages Bootstrap à tous les routeur (224.0.0.13). Toutes
les informations de candidats de point de rendez-vous C-RPs sont envoyées
en message appelé C-RP-Adv. Le BSR collecte tous les messages des
candidats de RP reçus (RP-Set) et il provient des messages Bootstrap.
Ensuite, il les envoie à tous les routeurs PIM.
Chaque routeur utilise le message Bootstrap jusque le routeur envoie un autre
message contient des nouvelles informations sur les nouvelles candidates RP
C-RP.

3.3.11 La Table du routage de PIM-SM

Multicast Routing Information Base MRIB : est une table du routage multicast
dérivée de la table du routage unicast, la MRIB est utilisée pour savoir dans
quelle interface le message doit être transmis.
Grâce à la table du routage multicast qui contient les informations sur toutes
les interfaces RPF dans lesquelles le routeur transmet les messages. La table
du routage multicast contient également les informations sur tous les voisins
RPF que le routeur envoie les messages. Elle contient aussi les valeurs des
minuteurs utilisées en PIM-SM.

43
3.3.12 Les Minuteurs Utilisés en PIM-SM

PIM-SM utilise des minuteurs pour organiser l’envoi de paquets (ne pas
envoyer des messages doublés) et pour ne pas perdre des messages. Huit
minuteurs d’entre eux sont principaux, ils sont liés à l'état de voisin et certains
d'autres sont liés à la maintenance des arbres multicast.

Minuteur Hello : Chaque routeur dans le domaine PIM envoie un message


Hello à tous ses voisins sur toutes les interfaces pour savoir qu’est ce qu’il
utilise chaque voisin comme interfaces. Pour ne pas envoyer des messages
doublés ou pour ne pas perdre des messages et pour organiser l’envoi des
messages, chaque routeur met en place un minuteur Hello, quand le minuteur
est fini, le routeur envoie, de nouveau, un message Hello. (30 secondes)

Minuteur Bootstrap : Le routeur Bootstrap envoie des messages Bootstrap à


tous les routeurs PIM, ces messages contiennent toutes les informations sur
tous les points de rendez-vous, le routeur met en place un minuteur pour
organiser et pour ne pas perdre des messages, il envoie périodiquement un
message Bootstrap. Quand le minuteur est fini, le routeur envoie, de nouveau,
un message Bootstrap. (60 secondes)

Minuteur Assert : Un routeur utilise le minuteur Assert pour faire arrêter les
messages Assert arrivés. Quand un routeur reçoit un message Assert d’un
routeur voisin gagnant le processus d’élection Assert, il met en place un
minuteur, ce minuteur est se rafraîchit à chaque fois que le routeur reçoit un
message Assert de nouveau. (180 secondes)

Minuteur Join/Prune : S’il y a plusieurs routeur qui veulent envoyer des


messages Join/Prune à une source spécifique en même temps, certains
messages seront perdus et certains messages doublés arriveront à la
destination, dans ce cas là, chaque routeur doit mettre en place un minuteur
pour ne pas perdre des messages et pour organiser l’envoie des messages.
Quand le minuteur est fini, le routeur envoie, de nouveau, un message
Join/Prune. (60 secondes)

Minuteur Join/Prune-suppression : Ce minuteur est utilisé pour empêcher


des messages Join/Prune doublés arrivés aux routeurs en aval, si le minuteur
est démarré, le routeur n’envoie pas de messages Join/Prune. Quand le
minuteur est fini, le routeur envoie, de nouveau, des messages Join/Prune.
(75 secondes)

Minuteur Register-suppression : Le Minuteur Register-suppresion est utilisé


pour arrêter l’envoi des messages Register. Quand le RP reçoit un nombre
des messages Register, il envoie un message Register-Stop au DR de la
source. Ensuite, le DR va arrêter l’envoie des messages Register. Quand le
minuteur est fini, le DR envoie des messages Register, de nouveau. (60
secondes)

44
Minuteur C-RP-Advertisement : Les candidates du point de rendez-vous C-
RP envoient périodiquement un message C-RP-Adv au BSR. Pour éviter les
messages doublés arrivés au routeur BSR, et pour organiser l’envoi des
messages C-RP-Adv, chaque C-RP met en place un minuteur, quand le
minuteur est fini, le routeur envoie un message C-RP-Advertisement, de
nouveau. (60 secondes)

Minuteur point de rendez-vous RP : Le routeur Bootstrap BSR émet les


messages Bootstrap qui contiennent des informations sur les point de rendez-
vous, il met en place un minuteur pour contrôler vivant du point de rendez-
vous par les RP-Set. Quand le minuteur expire, le RP s’enlève du RP-Set
inclus dans le Message Bootstrap.(150 secondes)

45
3.3.13 Messages Utilisés en PIM-SM

Dans cette partie, il y a des explications plus profondes sur les fonctionnalités
des messages PIM-SM qui sont :

1. Message Hello
2. Message Assert
3. Message Join/Prune
4. Message Register
5. Message Register-Stop
6. Message C-RP-Adv
7. Message Bootstrap

Message Hello :
Chaque routeur dans le domaine PIM envoie un message Hello pour savoir
qu’est ce que chaque routeur utilise comme interfaces, les messages Hello
sont aussi importants pour détecter le routeur feuille. En fait, s’il y a un routeur
feuille, ( DR ) qui est tombé, le(s) membre(s) dans le LAN ne peuvent plus ni
envoyer ni recevoir des paquets, dans ce cas, un des routeurs connectés au
LAN, doit être choisi pour être le Routeur Désigné de ce LAN au moyen d’un
processus d’élection.
Ce phénomène d’élection se fait de la manière suivante :
Chaque routeur envoie un message Hello à tous les routeurs (224.0.0.13).
Quand un routeur (connecté aux membres) reçoit ce message Hello, il garde
l’adresse de la couche du réseau, et celui qui a l’adresse, la plus grande, de
la couche du réseau sera le Routeur Désigné à ce LAN.
Message Assert :
Si plusieurs routeurs sont connectés à la même source, les routeurs en aval
recevront des paquets doublés, dans ce cas, un des routeurs connectés doit
être le transmetteur, à ce moment là, les routeurs en aval enverront des
messages Assert à tous les routeurs PIM (224.0.0.13) le routeur connecté qui
a la distance la plus courte à la source sera le transmetteur au LAN.
En plus, quand un routeur reçoit des paquets sur l’interface sortante, il envoie
un message Assert à tous les routeurs indiquant la métrique qui l’utilise, et le
routeur qui a la métrique numérique le plus petit sera le transmetteur à cette
interface.

Message Join/Prune :
Un routeur envoie un message join/Prune au routeur voisin RPF et cela
permet d’ajouter ou de supprimer des branches des arbres multicast dans les
cas où :
1) il y a un membre ou plus qui veulent adhérer ou quitter le groupe
2) un routeur crée une nouvelle entrée
3) un changement de la liste d’interfaces sortantes (vide  non vide, non vide
 vide).

46
Dans ces cas le routeur envoie toutes les 60 secondes un message
Join/Prune:
S’il y a un membre ou plus qui veulent adhérer à un groupe, ils envoient un
message IGMP Report au routeur désigné (DR), ensuite le DR crée une
entrée (*,G) qui contient l’adresse de la source, l’adresse du groupe, une liste
des interfaces entrante(s) et celle des interfaces sortantes, et il envoie un
message join/Prune au routeur en aval, Join={S}, Prune={nul}. Quand un
routeur voisin RPF reçoit un message Join/Prune, il crée une entrée (*,G)
(dans le cas d’adhésion des membres), il copie toutes les interfaces sortantes
de l’entrée (*,*,RP) et il envoie un message Join/Prune au routeur voisin RPF.
Si l’entrée (*,*,RP) n’existe pas , le routeur copie les listes des interfaces
sortantes de la table du routage unicast et il les colle dans la liste des
interfaces sortantes de l’entrée du routeur. Si le routeur a déjà une entrée
(*,G), quand il reçoit le message, il ajoute l’interface dans laquelle le message
est arrivée à la liste d’interfaces sortantes et il passe le message à son voisin
RPF.
Dans le cas contraire, si le routeur n’a plus de membres dans le réseau
attaché, il crée une entrée (S,G) s’il n’avait pas une. Ensuite, il envoie un
message Join/Prune, Join={Nul}, Prune={S} vers la source de données, il
enlève cette interface de l’arbre multicast. Quand le routeur voisin RPF reçoit
le message Join/Prune, il met à jour l’entrée (*,G) et il copie l’interface dans
laquelle le message est arrivé dans la liste des interfaces sortantes.
Quand un routeur reçoit un message de l’interface entrante, et si cette
interface ne se trouvait pas dans la liste des interfaces entrantes du routeur, il
l’ajoute dans la liste des interfaces entrantes et il envoie un message
Join/Prune au routeur en amont.
Quand la liste des interfaces sortantes d’une entrée deviens vide, le routeur
envoie un message Join/Prune au routeur en aval pour l’informer qu’il n’a plus
besoin de recevoir des paquets. Quand la liste des interfaces sortantes
change d’état (vide  Non vide, Non vide vide ), alors le routeur envoie un
message Join/Prune au routeur en aval.

Message Register & Register-Stop :

Le message Register est utilisé pour l’envoi des paquets multicast. Si une
source veut envoyer des paquets à un groupe, son DR encapsule chaque
paquet en message Register et l’envoie directement au point de rendez-vous.
Quand le RP termine le changement de RPT à SPT et il commence à recevoir
des paquets via l’arbre du chemin le plus court SPT, ou s’il n’a plus de
membres qui veulent recevoir des paquets, dans ces cas il envoie un
message Register- Stop vers le DR pour arrêter d’envoyer des messages
Register. Dès que le DR reçoit ce message, il arrête l’envoi des messages
Register.
Les messages Register et Register-stop se sont fait par deux côtés :
Le Routeur Désigné : ( envoyer des messages Register et recevoir des
messages Register-stop du RP)

47
La source commence à émettre des paquets au DR, s’il n’y a pas de
correspondance entre une entrée existante et le paquet arrivé de la source
connectée avec lui, le routeur désigné crée une (S,G) avec un minuteur
Register-Suppresion arrêté.
Ensuite le DR copie les interfaces entrantes et sortantes d’une entrée (*,G),
(*,*,RP) existante. Si le DR a une entrée (S,G) et le minuteur Register-
Suppresion n’a pas encore démarré, le DR encapsule les paquets en
envoyant un message Register directement au RP.
Si le minuteur Register-Suppresion démarre, le DR n’encapsule pas le paquet
mais il transmet les paquets selon l’entrée (S,G) (sans l’envoi des messages
Register).
Quand le DR reçoit un message Register-Stop, il arrête d’envoyer des
messages Register au RP et il redémarre le minuteur Register suppression.
Si le routeur n’a pas terminé d’envoyer des paquets au RP avant l’expiration
du minuteur Register-Suppresion, le DR envoie un message Register nul (de
longueur zéro) au RP. Mais il envoie encore des paquets selon l’entrée (S,G)
existante.

Le point de rendez-vous : ( recevoir des messages Register et envoyer des


messages Register-stop)
Quand le point de rendez-vous reçoit le message Register, il décapsule le
paquet et les transmet au groupe, si le message Register contient un bit
SPT=1, le RP laissera tomber le paquet arrivé et il envoie un message
Register-Stop au DR, sinon il accepte le message arrivé. S’il y a une entrée
(*,G) et le bit Nul dans le message est égal à 0 (N=0), sinon il refuse le
message. S’il n’y aucun entrée, le RP ignore le message arrivé.
Si le RP n’a plus de membres qui veulent recevoir les paquets ou si le RP a
changé à SPT, il envoie un message Register-Stop au DR, le DR arrête les
messages quand il reçoit le message Register-Stop et il envoyer des paquets
normal selon l’entrée existée.

Message Candidate-RP-Advertisement
Les candidates du RP envoient des messages C-RP-Adv au routeur
Bootstrap, la période d’envoi est dépend aux configurations internes dans les
candidates RP.
Si un routeur reçoit le message et s’il n’est pas un routeur Bootstrap, il refuse
le message, ou bien, il accepte le message arrivé et il provient des messages
Bootstrap et les envoie à tous les routeurs.

48
Message Bootstrap
Quand un routeur Bootstrap reçoit des messages de candidates RP (C-RP-
Adv), il les collecte en une ensemble (C-RPs Set) , et le routeur Bootstrap
provient des messages Bootstrap qui contiennent les adresses de candidates
et les informations sur les points de rendez-vous.
Toutes les 60 secondes, le routeur Bootstrap envoie un message Bootstrap à
tous les routeurs PIM (224.0.0.13). Quand un routeur reçoit le message, il
vérifie si l’adresse du routeur Bootstrap dans le message n’est pas l’adresse
du routeur Bootstrap actif et le minuteur n‘est pas encore fini, donc le routeur
jette le message. Si le minuteur est fini et le routeur, qui a envoyé le message,
n’est pas une candidate de Bootstrap (C-BSR), le routeur va transmettre le
message Bootstrap à tous les routeurs et il démarre le minuteur.

49
3.3.14 Quelques définitions en PIM-SM

Entrée pour la route (Route Entry) : C’est un état créé par le routeur à
l’arrivée d’un message PIM (Join/Prune, Assert, etc.), et est utilisé pour
construire et pour mettre à jour l’arbre du multicast. L’entrée peut continuer
les champs suivants :
L’adresse de la source qui envoie des paquets Multicast.
L’adresse du groupe qui reçoit des paquets.
Une liste des interface(s) entrante(s) dans laquelle les paquets sont arrivés.
Une liste des interface(s) sortant(s) : Cette liste contient toutes les interfaces
sortantes dans lesquelles les paquets doivent transmettre au groupe.
L’adresse du RP : dans le cas de l’entrée (*,*, RP), l’adresse du groupe est
l’adresse du point de rendez-vous du ce groupe.

L’entrée (*,G) : d’abord, les membres adhérent à l’arbre partagé, chaque


routeur, le long de l’arbre, crée une entrée (*,G) pour construire l’arbre
partagé, cet arbre est représenté par cette entrée (*,G).
L’entrée (S,G) : C’est une entrée source spécifique. Chaque routeur, le long
de l’arbre SPT, crée cette entrée à l’arrivée des paquets ou des messages
Join/Prune, Assert pour construire l’arbre Multicast, (S,G) RPT c’est un bit
d’entrée utilisé pour éliminer quelque(s) source(s) spécifique de l’arbre
partagé.
L’entrée (*,*,RP) un routeur de frontière crée cette entrée en cas d’interagir
avec autre domines (par exemple comme le domaine PIM en mode dense),
s’il n’y a pas d’entrée (*,G) ou (S,G), il utilise cette entrée pour construire un
arbre de distribution multicast. Cet arbre est utilisé pour transmettre les
paquets du domaine PIM-SM et les envoie à l’autre domaine. Il peut apporter
des paquets d’autre domaine et les transmet au domaine PIM-SM.
L’arbre partagé : C’est un arbre multicast construit en réponse des
messages Join qui sont envoyés par tous les membres qui adhérent au
groupe, ces messages sont convergents au point de rendez-vous. Après, le
RP peut transmettre les paquets arrivés à ses membres qui sont connectés à
ce groupe.
L’arbre de chemin le plus court - SPT: Quand un routeur désigné, connecté
aux membres qui ont reçu des paquets d’une source spécifique, reçoit un
nombre de paquets d’une source spécifique pendant un temps indiqué, il
commence à la transformation du RPT à l’arbre de chemin le plus court SPT.
Reverse Path Forwarding - RPF : C’est une technique que PIM-SM l’utilise
pour sélectionner l’interface entrante d’une entrée multicast et transmettre les
paquets vers le voisin RPF.
Le Voisin RPF ( RPF Neighbor ) : Quand un routeur reçoit des paquets
multicast, il les transmet au voisin RPF, chaque routeur transmet le paquets
arrivé à son voisin RPF, et ce routeur voisin RPF est indiqué dans la table du
routage multicast.
Routeur Désigné DR: S’il y a deux ou plusieurs routeurs sont connectés au
même LAN, des messages doublés seront arrivés au LAN, PIM va empêcher

50
les messages doublés par choisir un routeur d’entre eux par un processus
d’élection, et celui qui a l’adresse IP la plus petite sera le routeur élu pour le
LAN et le responsable de transmettre des messages au LAN.
Liste Join: C’est la première liste dans le message Join/Prune qui contient
les adresses d’une source ou l’adresse d’un RP que un(des) membre(s)
veut(veulent) l’adhérer.
Liste Prune : C’est la deuxième liste dans le message Join/Prune qui contient
les adresses des sources ou des RP que un(des) membre(s) veut(veulent)
le(s) quitter.
PIM Multicast Border Router PMBR : C’est un routeur de frontière qui
interagit un domaine de PIM avec un autres domaines.
Point de Rendez-vous-RP : C’est un routeur est choisi par un processus
d’élection pour représenter la racine de l’arbre partagé.
Routeur Bootstrap : Dans chaque domaine de PIM, il y a un routeur
Bootstrap, ce routeur est élu par un processus d’élection, le routeur Bootstrap
est le responsable de produire des messages Bootstrap et de construire le
RP-Set à la domaine.
RP-Set : C’est un ensemble des adresses des RP, le BSR construit ces
adresses par la collection des messages C-RP-Adv reçus.

51
3.3.15 Le format d’un paquet Multicast

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum

PIM Ver : La version du PIM-SM

Type : est indiqué le type du message, les types du PIM sont.


0= Message Hello
1= Message Register
2= Message Register-Stop
3= Message Join/Prune
4= Message Bootstrap
5= Message Assert
6= Message Graft (Seulement PIM-DM)
7= Message Graft-Ack (Seulement PIM-DM)
8= Message Candidate-RP-Advertisement

Reserved : initialisé à 0, ignoré.


Checksum : Quand un message arrive, le routeur calcule son checksum et il
le compare à celui transporté. S’il y a du correspondance entre les deux
checksums (du message et du routeur) le message sera accepté sinon il sera
rejeté.

52
Message Hello :

Un message Hello est envoyé par chaque routeur dans le domaine PIM,
chaque routeur envoie le message à tous les routeurs voisins.

Le format d’un message Hello est le suivant :

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
Option Type Option Length
Option value
.
.
.
Option Type Option Length
Option Value

Option Type : les types des options sont de 2 à 16 .


Option Value : le valeur de l’option= Holdtime ;
Holdtime : c’est le temps pendant lequel le récepteur doit garder l’entrée pour
chaque voisin ( 3.5 * [Hello _ Période] = 3.5* 30 = 105 secondes ) .
Option Length : le longueur est en bytes.

53
Message Register :

Un message PIM-Register est envoyé par le routeur désigné DR ou PMBR au


point de rendez-vous RP. Quand la source veut envoyer des paquets sur
l’arbre partagé, l’adresse de la source est l’adresse du DR et l’adresse du
groupe est l’adresse du point de rendez-vous.

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
B N Reserved
Multicast data packet

PIM Ver , Type , Reserved , Checksum : le format est décrit auparavant


B : si le routeur connecté à la source est un routeur désigné, le bit B est égale
à 0. Le routeur connecté à la source est un routeur PMBR, le bit B est égale à
1.
N : est égale à 1 avant l’expiration du minuteur « Register-suppresion » de
point de rendez-vous, sinon le bit est égale à 0.
Multicast data Packet : le paquet original qui est envoyé par la source.

54
Message Register-Stop :

Ce type de message est unicast (du point de rendez-vous au routeur


désigné).
Quand le point de rendez-vous n’a plus des membres connectés avec lui ou
quand il a terminé la transformation de l’arbre partagé à l’arbre de chemin le
plus court, il envoie le message Register-Stop au routeur désigné pour arrêter
la transmission des paquets.

Le format du message est :

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
Group Address
Unicast source Address

PIM Ver , Type , Reserved , Checksum : le format est décrit auparavant


Group Address : l’adresse du groupe.
Unicast source Address : l’adresse de la source.

55
Message Join/Prune :

Quand un hôte veut adhérer à un groupe, le DR envoie un message


Join/Prune vers la source, Join pour ajouter des branches à l’arbre Multicast,
Prun pour couper les branches de l’arbre Multicast qui ne contient pas de
membres qui n’ont pas besoin de recevoir des paquets.
Le format d’un message Join/Prune est le suivant :

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
Unicast Upstream Neighbour Address
Reserved Num Groups Holdtime
Multicast Group Address-1
Number of joined sources Number of pruned sources
joined source Address-1
.
.
.
joined source Address-n
pruned source Address-1
.
.
.
pruned source Address-n
.
.
.
Multicast group Address-n
Number of joined sources Number of pruned sources
joined source Address-1
.
.
.
joined source Address-n
pruned source Address-1
.
.
.
pruned source Address-n

PIM Ver , Type , Reserved , Checksum : le format a été décrit auparavant.


Upstream Neighbor Address : c’est l’adresse du routeur en amont.
Num Groups : le nombre de groupes dans le message.

56
Holdtime : est le temps maximal lorsque le récepteur reçoit un message
Join/Prune, pour le garder l’état du message vivant, quand le Holdtime est
égale à 1, le routeur va rejeter le message arrivé.
Multicast group Address 1 .. n : c’est une liste qui contient les adresses des
groupes multicast dans le message. Par exemple les adresses du groupe
Multicast sont de (224.0.0.0) à (239.255.255.255).
Number of Joined Groupes : est le nombre de groupes joints dans le
message.
Join Source Address 1 .. n : C’est une liste contenant des sources que le
routeur va leur envoyer des paquets.
S (Sparse bit): En cas d’utiliser PIM-SM, le bit est égale à 1, sinon le bit est
égal à 0 .
W : C’est le bit WC, il est égal à 1 quand le message arrivé s’applique au (*,G)
ou (*,*,RP) et il est égale à 0 quand le message arrivé s’applique au (S,G) .
R : Le bit PRT est égal à 1 si l'information sur (S, G) est envoyée vers le point
de rendez-vous. S’il est égal à 0 si l'information sur (S,G) doit être envoyées
vers la source .
Number of pruned Sources : le nombre des sources qui sont déjà coupées
de l’arbre Multicast.
Prune Source Addresses 1 .. n : C’est une liste contenant les sources que le
routeur expédié ne veut pas transmettre des paquets multicast quand ils ont
arrivé sur la même interface dans laquelle le message est arrivé.

57
Message Bootstrap :
Le routeur Bootstrap envoie des messages Bootstrap à tous les routeurs dans
le domaine PIM, ces messages contiennent des informations sur le(s) points
de rendez-vous de chaque groupe .

Le format du message est le suivant :

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
Unicast-BSR Address
Group Address-1
RP-Count-1 Frag RP Cnt-1 Reserved
unicast RP-Address-1
RP-1 Holdtime RP-1 Priority Reserved
unicast RP-Address-2
RP-2 Holdtime RP-2 Priority Reserved
.
.
.
unicast RP-Address-m
RP-m Holdtime RP-m Priority Reserved
Group Address-2
.
.
.
Group Address-n
RP-Count-n Frag RP Cnt-n Reserved
unicast RP-Address-1
RP-1 Holdtime RP-1 Priority Reserved
unicast RP-Address-2
RP-2 Holdtime RP-2 Priority Reserved
.
.
.
unicast RP-Address-m
RP-m Holdtime RP-m Priority Reserved

58
PIM Ver , Type , Reserved , Checksum : le format a été décrit auparavant
BSR-Priority : Contient la valeur de priorité du BSR
Unicast BSR Address : l’adresse du BSR dans le domaine.
group Address 1 .. n : une liste contenant des adresses du groupes.
RP Count 1 .. n : le nombre des candidats RP inclus dans le message
Bootstrap.
Frag RP-Cnt 1 .. m : le nombre des candidats RP inclus dans le fragment du
message Bootstrap.
Unicast RP-Address 1.. m : les adresses des candidats RP des groupes.
RP 1 .. m Priority : la priorité du RP et codage d’adressage du groupe.
RP 1 .. m Holdtime : le temps d’attente du RP .

59
Message Assert :

Si plusieurs routeurs ont la même distance à la source, les routeurs en aval


vont recevoir des messages doublés. Pour résoudre ce problème, les
routeurs en aval envoient des messages Assert sur l’interface dans lequel le
message est arrivé.

Le Format du message est le suivant :

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
Group Address
Unicast source Address
R Metric Reference
Metric

PIM Ver , Type , Reserved , Checksum : le format a été décrit auparavant


Group Address : l’adresse du groupe dans le message.
Unicast-source-Address : l’adresse d’une source.
R (RPT-bit): si le paquets est transmis en haut, R est égale à 1 , R est égale à
0 si le paquets est transmis en bas.
Metric Preference : la préférence de la métrique.
Metric : la métrique dans le message est utilisé pour résoudre le problème du
choix du transmetteur par un processus d’élection.

60
Candidate RP-Advertisement

Le message Candidate RP-Advertisement est envoyé par le C-RPs au routeur


BSR.

Le format du message est le suivant :

4 Bits 4 Bits 8 Bits 16 Bits


PIM Ver Type Reserved Checksum
Holdtime
Unicast RP Address
Group Address-1
.
.
.
Group Address-n

PIM Ver , Type , Reserved , Checksum : le format a été décrit auparavant.


Holdtime : le temps maximal pour que le message soit valide.
Unicast RP-Address : l’adresse du RP.
Group Address 1 .. n : une liste des adresse des groupes.

61
3.3.16 Conclusion

PIM-SM
PIM-SM est un protocole Multicast indépendant d’aucun protocole unicast.
PIM-SM utilise deux types des arbres multicast .
1. L’arbre partagé (Rendez-vous tree) RPT.
Un routeur qui représente la racine de l’arbre appelé le point de
rendez-
vous RP. La source envoie des paquets au RP, ensuite le RP les
transmet
au groupe. Chaque groupe il a un seul point de rendez-vous.
2. L’arbre le chemin le plus court SPT.
Pour obtenir un chemin plus court de la source au groupe, le RP,
qui a reçu des paquets de la source, commercera la transfèrement
de RPT en SPT.
De nouveaux messages apparaissent en PIM-SM :
1. Message Hello
2. Message Join/Prune
3. Message Assert
4. Message Bootstrap
5. Message Register
6. Message Register-Stop
7. Message Candidate-RP-Advertisement

62
63
4. Application du Multicast

4.1 Introduction

Le développement des technologies de transmission multipoint et l'évolution


du matériel ont permis à de nouvelles applications de voir le jour :
audio/vidéo-conférences, télé réunions, tableaux blanc partagés, annuaire de
sessions , . . .etc. à travers l'Internet.
les outils de contrôle de session est mis en oeuvre comme des applications
séparées.
Vat (Visual Audio Tool) fournit seulement la partie audio d'une conférence
multimédia.
La partie vidéo d’une conférence multimédia est appelée vic (Video Internet
Conferencing).
Le tableau blanc (whiteboard) est appelée wb (White-Board).
L’outil de l’annuaire de session est appelée sdr (Session Directory).

64
4.2 Audio-réunion, Audio-conférence

Ces outils permettent la communication audio entre postes de travail équipés


d'entrées/sorties audio. Pour cela le son est numérisé, comprimé et transmis
vers les destinataires. Pour éviter les problèmes d'écho il est conseillé
d'utiliser un casque, plutôt que le haut-parleur de la machine, pour entendre
ses correspondants et leur parler en même temps.

Figure 4.1: Exemple de Audio/réunion-conférence

65
4.3 Vidéo-réunion, Vidéo-conférence

Ces outils permettent la transmission d'images vidéo (orateurs,


transparents,...) entre postes de travail équipés d'entrées/sorties vidéo.

• nv de Xerox : le premier outil vidéo sur l'Internet. Gère la vidéo, il est


souvent associé à vat pour l'audio. Tourne sur SparcStation,
DECstation 5000 et Alpha, Silicon Graphics, HP9000 et RS6000.
Cartes vidéo supportées : Sun/SunOS 4: Parallax, PARCVideo,
VideoPix; Sun/SunOS 5: SunVideo, VideoPix; DEC 5000/Ultrix: PIP;
DEC Alpha/OSF 1: J300; SGI/Irix 5: SGI VL (Indy, Galileo);
HP9000/HPUX: VideoLive; RS6000/AIX: IBM VCA. Codage vidéo :
natif nv, CU-SeeMe et Sun CellB

Figure 4.2: Exemple 1 de Vidéo/réunion-conférence, Xerox PARC


Network Video tool, nv.

66
• vic (LBL/UCB): peut remplacer nv, ivs et telesia !tourne sur
SparcStation sous SunOS 4.1x ou Solaris avec cartes videopix ou
SunVideo, DEC sous Ultrix 4.3 avec carte jvideo ou Xv, DEC Alpha
sous OSF/1 v2.x avec j300 ou jvideo, SGI sous IRIX 5.x avec vl et
HP/PA sous HP/UX 9.x avec Xv. Utilise la version 2 du protocol de
transport RTP mais dispose d'un mode compatible avec nv et ivs. Il
implémente un codage vidéo dit "Robust H.261" qui se veut marier les
avantages de H261 avec le codage de nv. Un mécanisme de suivi
d'orateur permet de commuter l'affichage vidéo sur celui qui parle (en
relation avec vat).

Figure 4.3: Exemple 2 de Vidéo/réunion-conférence, Vic.

67
4.4 Tableaux blancs partagés

Ces outils permettent de travailler à plusieurs sur des données textuelles,


graphiques et/ou scientifiques en reprenant le concept du tableau sur lequel
tout le monde voit ce qui est affiché et sur lequel tout le monde peut écrire.

• wb du LBL : le plus utilisé actuellement. Il est simple à utiliser et permet


d'importer des documents ASCII ou Postscript sur lesquels on peut
ensuite faire des annotations, des dessins,... etc.

Figure 4.4: Exemple de tableau blanche partagé.

68
4.5 Annuaire de sessions

Outils très utiles permettant d'annoncer les services accessibles sur le MBone
: nom, type (audio, vidéo, tableau blanc,...), l'adresse de groupe, la durée de
vie, la description, et de lancer automatiquement les applications permettant
d'y accéder (à condition qu'elles aient été installées).

• sd : Il est utilisé sur le MBone pour annoncer toutes les diffusions


publiques voire privées. Un fichier de configuration dans le répertoire
personnel permet d'appeler ses outils préférés pour décoder l'audio, la
vidéo,...etc.

Figure 4.5: Exemple de l'annuaire de session.

69
70
5.1 Abréviations

Le Mot La Description

BSR Bootstrap Router


C-BSR Candidate Bootstrap Router
CBT Core Based Tree
C-RP Candidate Rendezvous Point
C-RP-Adv Candidate Rendezvous Point Advertisement
DR Designated Router
DVMRP Distance Vector Multicast Routing Protocol
FTP File Transfer Protocol
HTTP Hypertext Transfer Protocol
IGMP Internet Group Management Protocol
IIF Incoming Interface
LAN Local Area Network
Max Resp Time Maximum Response Time
MBGP Multi-extension Border Gateway Protocol
MOSPF Multicast Open Shortest Path First

71
Le Mot La Description
MSDP Multicast Source Discovery Protocol
OIF Outgoing Interface
OSPF Open Shortest Path First
PIM Protocol Independent Multicast
PIM-DM Protocol Independent Multicast – Dense Mode
PIM-SM Protocol Independent Multicast – Spqrse Mode
PMBR PIM Multicast Border Router
RP Rendezvous Point
RPF Reverse Path Forwarding
RPM Reverse Path Multicasting
RPT RendezPoint Tree
SD Session Announcement
SMTP Simple Mail Transfer Protocol
SPT Shortest Path Tree
TCP Transmission Control Protocol
UDP User Datagram Protocol
VAT Audio Conferencing Tool
VIC Vedio Conferencing Tool
WB White Board
WWW World Wide Web

72
5.2 Liste des adresses Multicast

La portée d'adresses entre 224.0.0.0 et 224.0.0.255, est réservée pour


l'utilisation d'acheminer des protocoles et d'autre découverte de topologie à
bas niveau ou des protocoles de maintenance, comme la découverte de porte
et le rapport d'adhésion de groupe.

la gamme de l’adresse IP Class A est de 0.0.0.0 à 127.255.255.255


la gamme de l’adresse IP Class B est de 128.0.0.0 à 191.255.255.255
la gamme de l’adresse IP Class C est de 192.0.0.0 à 223.255.255.255
la gamme de l’adresse IP Class D est de 224.0.0.0 à 239.255.255.255
la gamme de l’adresse IP Class E est de 240.0.0.0 à 247.255.255.255

Adresse Multicast Description Référence


Base Address
224.0.0.0 [RFC1112,JBP]
(Reserved)
All Systems on this
224.0.0.1 [RFC1112,JBP]
Subnet
All Routers on this
224.0.0.2 [JBP]
Subnet
224.0.0.3 Unassigned [JBP]
224.0.0.4 DVMRP Routers [RFC1075,JBP]
OSPFIGP OSPFIGP All
224.0.0.5 [RFC2328,JXM1]
Routers
OSPFIGP OSPFIGP
224.0.0.6 [RFC2328,JXM1]
Designated Routers
224.0.0.7 ST Routers [RFC1190,KS14]
224.0.0.8 ST Hosts [RFC1190,KS14]
224.0.0.9 RIP2 Routers [RFC1723,GSM11]
224.0.0.10 IGRP Routers [Farinacci]
224.0.0.11 Mobile-Agents [Bill Simpson]
DHCP Server / Relay
224.0.0.12 [RFC1884]
Agent
224.0.0.13 All PIM Routers [Farinacci]
224.0.0.14 RSVP-ENCAPSULATION [Braden]
224.0.0.15 all-cbt-routers [Ballardie]
224.0.0.16 designated-sbm [Baker]
224.0.0.17 all-sbms [Baker]
224.0.0.18 VRRP [Hinden]
224.0.0.19 IPAllL1ISs [Przygienda]
224.0.0.20 IPAllL2ISs [Przygienda]
IPAllIntermediate
224.0.0.21 [Przygienda]
Systems
224.0.0.22 IGMP [Deering]
224.0.0.23 GLOBECAST-ID [Scannell]
224.0.0.24 Unassigned [JBP]

73
224.0.0.25 router-to-switch [Wu]
224.0.0.26 Unassigned [JBP]
224.0.0.27 Al MPP Hello [Martinicky]
224.0.0.28 ETC Control [Polishinski]
224.0.0.29 GE-FANUC [Wacey]
224.0.0.30 indigo-vhdp [Caughie]
224.0.0.31 shinbroadband [Kittivatcharapong]
224.0.0.32 digistar [Kerkan]
224.0.0.33 ff-system-management [Glanzer]
224.0.0.34 pt2-discover [Kammerlander]
224.0.0.35 DXCLUSTER [Koopman]
224.0.0.36 UDLR-DTCP [Cipiere]
224.0.0.37-224.0.0.250 Unassigned [JBP]
224.0.0.251 mDNS [Cheshire]
224.0.0.252-224.0.0.255 Unassigned [JBP]
224.0.1.0 VMTP Managers Group [RFC1045,DRC3]
NTP Network Time
224.0.1.1 [RFC1119,DLM1]
Protocol
224.0.1.2 SGI-Dogfight [AXC]
224.0.1.3 Rwhod [SXD]
224.0.1.4 VNP [DRC3]
Artificial Horizons
224.0.1.5 [BXF]
- Aviator
NSS - Name Service
224.0.1.6 [BXS2]
Server
AUDIONEWS - Audio
224.0.1.7 [MXF2]
News Multicast
SUN NIS+ Information
224.0.1.8 [CXM3]
Service
MTP Multicast
224.0.1.9 [SXA]
Transport Protocol
224.0.1.10 IETF-1-LOW-AUDIO [SC3]
224.0.1.11 IETF-1-AUDIO [SC3]
224.0.1.12 IETF-1-VIDEO [SC3]
224.0.1.13 IETF-2-LOW-AUDIO [SC3]
224.0.1.14 IETF-2-AUDIO [SC3]
224.0.1.15 IETF-2-VIDEO [SC3]
224.0.1.16 MUSIC-SERVICE [Guido van Rossum]
224.0.1.17 SEANET-TELEMETRY [Andrew Maffei]
224.0.1.18 SEANET-IMAGE [Andrew Maffei]
224.0.1.19 MLOADD [Braden]
any private
224.0.1.20 [JBP]
experiment
224.0.1.21 DVMRP on MOSPF [John Moy]
224.0.1.22 SVRLOC [Veizades]
224.0.1.23 XINGTV [Gordon]
<arnoldm@microsoft.c
224.0.1.24 microsoft-ds
om>

74
<bloomer@birch.crd.g
224.0.1.25 nbc-pro
e.com>
<bloomer@birch.crd.g
224.0.1.26 nbc-pfn
e.com>
224.0.1.27 lmsc-calren-1 [Uang]
224.0.1.28 lmsc-calren-2 [Uang]
224.0.1.29 lmsc-calren-3 [Uang]
224.0.1.30 lmsc-calren-4 [Uang]
224.0.1.31 ampr-info [Janssen]
224.0.1.32 mtrace [Casner]
224.0.1.33 RSVP-encap-1 [Braden]
224.0.1.34 RSVP-encap-2 [Braden]
224.0.1.35 SVRLOC-DA [Veizades]
224.0.1.36 rln-server [Kean]
224.0.1.37 proshare-mc [Lewis]
224.0.1.38 dantz [Zulch]
224.0.1.39 cisco-rp-announce [Farinacci]
224.0.1.40 cisco-rp-discovery [Farinacci]
224.0.1.41 gatekeeper [Toga]
224.0.1.42 iberiagames [Marocho]
224.0.1.43 nwn-discovery [Zwemmer]
224.0.1.44 nwn-adaptor [Zwemmer]
224.0.1.45 isma-1 [Dunne]
224.0.1.46 isma-2 [Dunne]
224.0.1.47 telerate [Peng]
224.0.1.48 ciena [Rodbell]
224.0.1.49 dcap-servers [RFC2114]
224.0.1.50 dcap-clients [RFC2114]
224.0.1.51 mcntp-directory [Rupp]
224.0.1.52 mbone-vcr-directory [Holfelder]
224.0.1.53 heartbeat [Mamakos]
224.0.1.54 sun-mc-grp [DeMoney]
224.0.1.55 extended-sys [Poole]
224.0.1.56 pdrncs [Wissenbach]
224.0.1.57 tns-adv-multi [Albin]
224.0.1.58 vcals-dmu [Shindoh]
224.0.1.59 zuba [Jackson]
224.0.1.60 hp-device-disc [Albright]
224.0.1.61 tms-production [Gilani]
224.0.1.62 sunscalar [Gibson]
224.0.1.63 mmtp-poll [Costales]
224.0.1.64 compaq-peer [Volpe]
224.0.1.65 iapp [Meier]
224.0.1.66 multihasc-com [Brockbank]
224.0.1.67 serv-discovery [Honton]
224.0.1.68 mdhcpdisover [RFC2730]
224.0.1.69 MMP-bundle- [Malkin]

75
discovery1
MMP-bundle-
224.0.1.70 [Malkin]
discovery2
XYPOINT DGPS Data
224.0.1.71 [Green]
Feed
224.0.1.72 GilatSkySurfer [Gal]
224.0.1.73 SharesLive [Rowatt]
224.0.1.74 NorthernData [Sheers]
224.0.1.75 SIP [Schulzrinne]
224.0.1.76 IAPP [Moelard]
224.0.1.77 AGENTVIEW [Iyer]
224.0.1.78 Tibco Multicast1 [Shum]
224.0.1.79 Tibco Multicast2 [Shum]
224.0.1.80 MSP [Caves]
OTT (One-way Trip
224.0.1.81 [Schwartz]
Time)
224.0.1.82 TRACKTICKER [Novick]
224.0.1.83 dtn-mc [Gaddie]
224.0.1.84 jini-announcement [Scheifler]
224.0.1.85 jini-request [Scheifler]
224.0.1.86 sde-discovery [Aronson]
224.0.1.87 DirecPC-SI [Dillon]
224.0.1.88 B1RMonitor [Purkiss]
224.0.1.89 3Com-AMP3 dRMON [Banthia]
224.0.1.90 imFtmSvc [Bhatti]
224.0.1.91 NQDS4 [Flynn]
224.0.1.92 NQDS5 [Flynn]
224.0.1.93 NQDS6 [Flynn]
224.0.1.94 NLVL12 [Flynn]
224.0.1.95 NTDS1 [Flynn]
224.0.1.96 NTDS2 [Flynn]
224.0.1.97 NODSA [Flynn]
224.0.1.98 NODSB [Flynn]
224.0.1.99 NODSC [Flynn]
224.0.1.100 NODSD [Flynn]
224.0.1.101 NQDS4R [Flynn]
224.0.1.102 NQDS5R [Flynn]
224.0.1.103 NQDS6R [Flynn]
224.0.1.104 NLVL12R [Flynn]
224.0.1.105 NTDS1R [Flynn]
224.0.1.106 NTDS2R [Flynn]
224.0.1.107 NODSAR [Flynn]
224.0.1.108 NODSBR [Flynn]
224.0.1.109 NODSCR [Flynn]
224.0.1.110 NODSDR [Flynn]
224.0.1.111 MRM [Wei]
224.0.1.112 TVE-FILE [Blackketter]

76
224.0.1.113 TVE-ANNOUNCE [Blackketter]
224.0.1.114 Mac Srv Loc [Woodcock]
224.0.1.115 Simple Multicast [Crowcroft]
224.0.1.116 SpectraLinkGW [Hamilton]
224.0.1.117 dieboldmcast [Marsh]
224.0.1.118 Tivoli Systems [Gabriel]
224.0.1.119 pq-lic-mcast [Sledge]
224.0.1.120 HYPERFEED [Kreutzjans]
224.0.1.121 Pipesplatform [Dissett]
224.0.1.122 LiebDevMgmg-DM [Velten]
224.0.1.123 TRIBALVOICE [Thompson]
224.0.1.124 Unassigned (Retracted 1/29/01)
224.0.1.125 PolyCom Relay1 [Coutiere]
224.0.1.126 Infront Multi1 [Lindeman]
224.0.1.127 XRX DEVICE DISC [Wang]
224.0.1.128 CNN [Lynch]
224.0.1.129 PTP-primary [Eidson]
224.0.1.130 PTP-alternate1 [Eidson]
224.0.1.131 PTP-alternate2 [Eidson]
224.0.1.132 PTP-alternate3 [Eidson]
224.0.1.133 ProCast [Revzen]
224.0.1.134 3Com Discp [White]
224.0.1.135 CS-Multicasting [Stanev]
224.0.1.136 TS-MC-1 [Sveistrup]
224.0.1.137 Make Source [Daga]
224.0.1.138 Teleborsa [Strazzera]
224.0.1.139 SUMAConfig [Wallach]
224.0.1.140 Unassigned
224.0.1.141 DHCP-SERVERS [Hall]
224.0.1.142 CN Router-LL [Armitage]
224.0.1.143 EMWIN [Querubin]
224.0.1.144 Alchemy Cluster [O'Rourke]
224.0.1.145 Satcast One [Nevell]
224.0.1.146 Satcast Two [Nevell]
224.0.1.147 Satcast Three [Nevell]
224.0.1.148 Intline [Sliwinski]
224.0.1.149 8x8 Multicast [Roper]
224.0.1.150 Unassigned [JBP]
224.0.1.151 Intline-1 [Sliwinski]
224.0.1.152 Intline-2 [Sliwinski]
224.0.1.153 Intline-3 [Sliwinski]
224.0.1.154 Intline-4 [Sliwinski]
224.0.1.155 Intline-5 [Sliwinski]
224.0.1.156 Intline-6 [Sliwinski]
224.0.1.157 Intline-7 [Sliwinski]
224.0.1.158 Intline-8 [Sliwinski]

77
224.0.1.159 Intline-9 [Sliwinski]
224.0.1.160 Intline-10 [Sliwinski]
224.0.1.161 Intline-11 [Sliwinski]
224.0.1.162 Intline-12 [Sliwinski]
224.0.1.163 Intline-13 [Sliwinski]
224.0.1.164 Intline-14 [Sliwinski]
224.0.1.165 Intline-15 [Sliwinski]
224.0.1.166 marratech-cc [Parnes]
224.0.1.167 EMS-InterDev [Lyda]
224.0.1.168 itb301 [Rueskamp]
224.0.1.169 rtv-audio [Adams]
224.0.1.170 rtv-video [Adams]
224.0.1.171 HAVI-Sim [Wasserroth]
224.0.1.172 Nokia Cluster [O'Rourke]
224.0.1.173-224.0.1.255 Unassigned [JBP]
"rwho" Group (BSD)
224.0.2.1 [JBP]
(unofficial)
SUN RPC
224.0.2.2 [BXE1]
MAPPROC_CALLIT
224.0.2.064-224.0.2.095 SIAC MDD Service [Tse]
224.0.2.096-224.0.2.127 CoolCast [Ballister]
224.0.2.128-224.0.2.191 WOZ-Garage [Marquardt]
SIAC MDD Market
224.0.2.192-224.0.2.255 [Lamberg]
Service
224.0.3.000-224.0.3.255 RFE Generic Service [DXS3]
RFE Individual
224.0.4.000-224.0.4.255 [DXS3]
Conferences
224.0.5.000-224.0.5.127 CDPD Groups [Bob Brenner]
224.0.5.128-224.0.5.191 SIAC Market Service [Cho]
224.0.5.192-224.0.5.255 Unassigned [IANA]
224.0.6.000-224.0.6.127 Cornell ISIS Project [Tim Clark]
224.0.6.128-224.0.6.255 Unassigned [IANA]
224.0.7.000-224.0.7.255 Where-Are-You [Simpson]
224.0.8.000-224.0.8.255 INTV [Tynan]
224.0.9.000-224.0.9.255 Invisible Worlds [Malamud]
224.0.10.000-224.0.10.255 DLSw Groups [Lee]
224.0.11.000-224.0.11.255 NCC.NET Audio [Rubin]
224.0.12.000-224.0.12.063 Microsoft and MSNBC [Blank]
UUNET PIPEX Net
224.0.13.000-224.0.13.255 [Barber]
News
224.0.14.000-224.0.14.255 NLANR [Wessels]
224.0.15.000-224.0.15.255 Hewlett Packard [van der Meulen]
224.0.16.000-224.0.16.255 XingNet [Uusitalo]
Mercantile &
224.0.17.000-224.0.17.031 [Gilani]
Commodity Exchange
224.0.17.032-224.0.17.063 NDQMD1 [Nelson]
224.0.17.064-224.0.17.127 ODN-DTV [Hodges]
224.0.18.000-224.0.18.255 Dow Jones [Peng]

78
224.0.19.000-224.0.19.063 Walt Disney Company [Watson]
224.0.19.064-224.0.19.095 Cal Multicast [Moran]
224.0.19.096-224.0.19.127 SIAC Market Service [Roy]
224.0.19.128-224.0.19.191 IIG Multicast [Carr]
224.0.19.192-224.0.19.207 Metropol [Crawford]
224.0.19.208-224.0.19.239 Xenoscience, Inc. [Timm]
HYPERFEED
224.0.19.240-224.0.19.255 [Felix]

224.0.20.000-224.0.20.063 MS-IP/TV [Wong]


Reliable Network
224.0.20.064-224.0.20.127 [Vogels]
Solutions
224.0.20.128-224.0.20.143 TRACKTICKER Group [Novick]
224.0.20.144-224.0.20.207 CNR Rebroadcast MCA [Sautter]
224.0.21.000-224.0.21.127 Talarian MCAST [Mendal]
224.0.22.000-224.0.22.255 WORLD MCAST [Stewart]
224.0.252.000-224.0.252.255 Domain Scoped Group [Fenner]
224.0.253.000-224.0.253.255 Report Group [Fenner]
224.0.254.000-224.0.254.255 Query Group [Fenner]
224.0.255.000-224.0.255.255 Border Routers [Fenner]
224.1.0.0-224.1.255.255 ST Multicast Groups [RFC1190,KS14]
Multimedia
224.2.0.0-224.2.127.253 [SC3]
Conference Calls
224.2.127.254 SAPv1 Announcements [SC3]
SAPv0 Announcements
224.2.127.255 [SC3]
(deprecated)
SAP Dynamic
224.2.128.0-224.2.255.255 [SC3]
Assignments
224.252.0.0-224.255.255.255 DIS transient groups [Joel Snyder]
MALLOC (temp - renew
225.0.0.0-225.255.255.255 [Handley]
1/01)
VMTP transient
232.0.0.0-232.255.255.255 [DRC3]
groups
Static Allocations
233.0.0.0-233.255.255.255 [Meyer2]
(temp - renew 03/02)
Administratively
239.000.000.000-239.255.255.255 [IANA,RFC2365]
Scoped
239.000.000.000-239.063.255.255 Reserved [IANA]
239.064.000.000-239.127.255.255 Reserved [IANA]
239.128.000.000-239.191.255.255 Reserved [IANA]
Organization-Local
239.192.000.000-239.251.255.255 [Meyer,RFC2365]
Scope
Site-Local Scope
239.252.000.000-239.252.255.255 [Meyer,RFC2365]
(reserved)
Site-Local Scope
239.253.000.000-239.253.255.255 [Meyer,RFC2365]
(reserved)
Site-Local Scope
239.254.000.000-239.254.255.255 [Meyer,RFC2365]
(reserved)
239.255.000.000-239.255.255.255 Site-Local Scope [Meyer,RFC2365]
239.255.002.002 rasadv [Thaler]

79
80
Bibliographie

www.ietf.org
Description: Large open international community of network designers, operators,
vendors, and researchers concerned...
Key Words: Computers, Internet, Organizations, drafts.
www.ietf.org

The Internet drafts: the Internet-Drafts are working documents of the Internet
Engineering Task
Force (IETF), its areas, and its working groups and they are valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents at any time.

Internet References: the indicated in each Internet reference is the date of the
creation of this reference.

[1] R. Hinden, S. Deering, IP Version 6 Addressing Architecture, July


1998, RFC 2373, 26 pages.

[2] D. Estrin, D. Farinacci, A. Helmy, D. Thaler, S. Deering, M.


Handley, V. Jacobson, C. Liu, P. Sharma, L. Wei, Protocol Independent Multicast-
Sparse Mode (PIM-SM): Protocol Specification, June 1998, RFC 2362, 66
pages.

[3] W. Fenner, Internet Group Management Protocol, Version 2, November


1997, RFC 2236, 24 pages.

[4] D. Estrin, D. Farinacci, A. Helmy, D. Thaler, S. Deering, M.


Handley, V. Jacobson, C. Liu, P. Sharma, L. Wei, Protocol Independent Multicast-
Sparse Mode (PIM-SM): Protocol Specification, June 1997, RFC 2117, 66 pages.

[5] S. Deering, Host Extensions for IP Multicasting, August 1989


RFC 1112, 17 pages.

[6] R. Hinden, S. Deering, IP Version 6 Addressing Architecture,December


1995, RFC 1884, 18 pages.

[7] S. Hanks, T. Li, D. Farinacci, P. Traina, Generic Routing


Encapsulation over IPv4 networks, October 1994
RFC 1702, 4 pages.

[8] J. Reynolds, J. Postel, Assigned Numbers, April 1985


RFC 943, 50 pages.

[9] T. Rose, A. Stefferud, Proposed Standard for Message Encapsulation,


January 1985, RFC 934, 10 pages.

81
Internet Drafts : the date indicated in each Internet drafts is the date of the creation
of the draft, Any internet draft expires after 6 months of it’s creation date.

[10] Brad Cain, Steve Deering, Bill Fenner, Isidor Kouvelas, Ajit
Thyagarajan, Internet Group Management Protocol, Version 3,March
2001, 50 pages. <draft-ietf-idmr-igmp-v3-07.txt>

[11] D.Estrin, D. Farinacci, A. Helmy, D. Thaler, S. Deering, M. Handley,


V. Jacobson, C-G. Liu, P. Sharma, L. Wei, Protocol Independent
Multicast - Sparse Mode (PIM-SM), March 1997, 51 pages.
<draft-ietf-idmr-PIM-SM-spec-10.txt>

[12] B. Fenner, M. Handley, H. Holbrook, I. Kouvelas,


Protocol Independent Multicast - Sparse Mode (PIM-SM), March,
2001, 121 pages. <draft-ietf-pim-sm-v2-new-02.txt>

[13] B. Fenner, M. Handley, H. Holbrook, I. Kouvelas, Protocol


Independent Multicast - Sparse Mode (PIM-SM), 13 July 2000
101 pages. <draft-ietf-pim-sm-v2-new-00.txt>

[14] D.Estrin, D. Farinacci, A. Helmy, D. Thaler, S. Deering, M. Handley,


V. Jacobson, C-G. Liu, P. Sharma, L. Wei, Protocol Independent
Multicast - Dense Mode( PIM-DM), October, 1996.
16 pages. <draft-ietf-idmr-PIM-DM-spec-01.txt>

[15] H. Holbrook, B. Cain, Using IGMPv3 For Specific Multicast, March 2001.
9 pages. <draft-holbrook-idmr-igmpv3-ssm-01.txt>

[16] H. Holbrook, B.Cain, Source specific Multicast For IP, March, 2001, 12
pages. <draft-holbrook-ssm-arch-02.txt>

[17] S.Deering, D. Estrin, D. Farinacci, V. Jacobson, A. Helmy, D. Meyer, L. Wei,


Protocol Independent Multicast - Dense Mode (PIM-DM) Version 2, August,
1997, 13 pages. <draft-ietf-idmr-pim-dm-06.txt>

[18] B. Fenner, M. Handley, D. Thaler, Bootstrap Router (BSR) Mechanism for


PIM Sparse Mode , February, 2001. <draft-ietf-pim-sm-bsr-00.txt>

82
Internet Sites :

[19] www.urec.cnrs.fr

urec, Routage IP : Protocoles, 04/01/99.


Description: Phone book dedicated to the services WWW concerning in the
higher education and scientific research in France.
Key Words : Networking, Communications, Course, IP.
http://www.urec.cnrs.fr/cours/Reseau/routip2/index.htm

[20] www.geek-girl.com

J. Myers, The Unix Reference Desk, 20-Dec-99.


Description: owner of the Geekgirl's Webring, gives some tips on dating a Geek
Girl.
Key Words: Society, Subcultures, Geeks and Nerds.
www.geek-girl.com/unix.html

[21] www.lsiit.u-strasbg.fr

D .Grad, Routage Multipoint et PIM en mode épars, http://www-r2.u-


strasbg.fr/~grad/ , November 1999.
D .Grad, Routage Multipoint intra-domaine, http://www-r2.u-strasbg.fr/~grad/
, November 2000.
J.J.Pansiot, Routage Multipoint et Modèle de Deering, http://www-r2.u-
strasbg.fr/~pansiot/
Description: Home page of the Network team on the LSIIT, Laboratoire des
Sciences de l'Image, de l'Informatique et de la Télédétection, Strasbourg,
France.
Key Words : Communication multipoint, Mobility, Image Broadcasting.

[22] http://catarina.usc.edu

A. Helmy, PIM, Protocol Independent Multicast, , November, 1997


Description : Home page of a laboratory of the Computer Networks and
Distributed Systems Research
Key Words : Computer Networks, Distribution systems.
http://catarina.usc.edu/pim/

[23] www.guill.net

A. Fradera, Le routage : protocoles et configuration.


Description : personal page of the networking news
Key Words : Networking, Communication, programmation.
http://www.guill.net/reseaux/Routage.html

83
[24] www-mash.cs.berkeley.edu
Berkeley, Berkeley Internet Broadcasting system, May 04, 1999
Description : Scalable multimedia applications by exploiting IP multicast.
Key Words : Computers, Internet, Netwoking resources, Research Groups.
http://mash.cs.berkeley.edu/eecs122/semeria.html

[25] www.ipmulticast.com

V. Johnson, M. Johnson, Introduction to IP Multicast Routing, 1995-2001


Description: Forum to accelerate adoption of the IP Multicast Initiative through
education and marketing.
Key Words : Computers, Internet, Protocols, IP.
http://www.ipmulticast.com/community/whitepapers/introrouting.html

[26] http://www.iihe.ac.be/

stc, Video Conferencing over Internet, 18-Dec-96.


Description : Inter-University Institute For High Energies, Service Télématique
et Communication.
Key Words : communication, télématique, Internet.
http://www.iihe.ac.be/stc/seminars/multimedia/

[27] www.cs.tuiasi.ro
Fal, Routing Protocols User's Guide.
Description : Computer engineering department.
Key Words : computer, communication, Network.
http://library.cs.tuiasi.ro/networking/rpug/ch13pmcm.htm

[28] www.microsoft.com/

Microsoft, Routing Protocol, 05,2000.


Description: Official homepage of Microsoft Corporation
Key Words : Computers, Companies, Consumer Software, Microsoft Corporation
http://msdn.microsoft.com/library/psdk/rras/rtmv2over_8zho.htm

[29] www.community.roxen.com

roxen, Protocol Independent Multicast, June-2001


Description: Community for Roxen users and developers, based on the LysKOM
conference system.
Key Words : Computers, Programming, Languages, Pike
http://community.roxen.com/developers/idocs/drafts/show_category.html?cat=
pim

[30] http://www.zdnetindia.com/

G. Juneja, Powering real network applications with multicast, December 18,


2000.
Description: Internet , Networking site.
Key Words : Computers, Publications.
http://www.zdnetindia.com/biztech/specials/datacentre/stories/9533.html

84
[31] http://dslab.csie.ncu.edu.tw/

F. Li, Multicast Applications.


Description: laboratory of networking researches.
Key Words : Network, Multicast.
http://dslab.csie.ncu.edu.tw/~fanton/mcast.html

[32] http://www.cru.fr/
C. Claveleira, Les applications de travail collaboratif, October 1995
Description: Phone Book of Network committee of Universities in France.
Key Words : Computer, Internet.
http://www.cru.fr/JRES95/actes/appli1/2/applis_multi/applis_multi.html

[33] http://www.urec.cnrs.fr/

B. Rapacchi, B. Tuy, Multicast protocoles du routage, 20/99


Description: Phone book dedicated to the services WWW concerning in the
higher education and scientific research in France.
Key Words : Networking, Communications, Course, IP.
http://www.urec.cnrs.fr/cours/Tutoriaux/multimedia/xcast/index.htm

85

Anda mungkin juga menyukai