1. Introduction
2. Algorithme de Dijkstra
2.1. Présentation Générale (Mathématique)
2.1.1. L’Algorithme en lui-même
2.1.2 Explication de l’Algorithme
2.2. Présentation Spécifique aux Réseaux Informatiques
(RI)
2.2.1. Manières de transmettre l’information dans un RI
2.2.2. L’Utilisation de l’algorithme de Dijkstra dans un
RI
2.3. Illustration
3. Algorithme de Bellman-Ford
3.1 Présentation Générale (Mathématique)
3.1.1. L’Algorithme en lui-même
3.1.2. Explication de l’Algorithme
3.2. Présentation Spécifique aux réseaux Informatiques
3.3. Illustration
4. Conclusion
1
1. Introduction
2
2.1.1. L’Algorithme en lui-même
3
On considère un ensemble de sommets au seins du
quel on fait le choix de notre sommet source. Puis on détermine
la distance entre le sommet source et tous les autres sommets.
Etape 2 : Itérations
Dans cette étape, on sélectionne des sommets
(nœuds) qui nous servirons dans l’étape 3. Mais il faut savoir
que ces nœuds sélectionnés vont nous permettre de pouvoir
trouver le nœuds qui nous permettra d’arriver facilement au
nœud cibler.
Etape 3 : Calculs
Dans cette étape-ci on calcule juste les distances et on
fait le tableau (ou tableau récapitulatif) qui nous permettra de
trouver le plus court chemin.
4
chemin optimal pour une transmission rapide et efficace de
l’information.
2.3. Illustration
5
Considérons le réseaux informatique ci-dessus constituer des
routeurs A, B, C, D, E, F et G. Nous allons ici illustrer
l’algorithme de Dijkstra en établissant la table de routage du
nœud (routeur) A.
Tout d’abord représentons la matrice des coûts appelée
Matrice des états de liens du système autonome (Figure
précédente) :
Etat A B C D E F G
A 0 2 1 - - - -
B 2 0 2 1 3 - -
C 1 2 0 4 3 5 -
D - 1 4 0 3 6 5
E - 3 3 3 0 1 -
F - - 5 6 1 0 2
G - - - 5 - 2 0
En suite calculons la table de routage du routeur A :
Pour ce faire on va devoir calculer la route la plus rapide (de
moindre cout) du nœud A à tous les autres nœuds (B, C, D, E,
F, G).
6
Route AB : Le plus court chemin entre le nœud A et B vaux 2
alors on a AB,2,B (la route AB vaux 2 passant directement par
le nœud B)
Route AC : Le plus court chemin entre le nœud A et C vaux 2
alors on a AC,1,C
Route AD : directement on a AD,3,B
Route AE : directement on a AE,4,C
Route AF : directement on a AF,6,C
Route AG : directement on a AG,8,F
Donc la table de routage de A est :
A AB,2, AC,1, AD,3, AE,4, AF,6, AG,8,
B C B C C F
3. Algorithme de Bellman-Ford
3.1. Présentation Générale (Mathématique)
7
3.1.1. L’Algorithme en lui-même
1. Initialisation
λ 0(s1) = 0
λ 0 (si) = ∞ pour tout si ≠s1
k=1
2. A l’itération k
Faire λ k(s1) = 0
et λ k(sj) = Min( λ k-1(sj),MinsiϵΓ -1(sj)¿k-1(si) + l(si, sj))) pour tout sj
≠s1
3. Si λ k(si) = λ k-1(si) pour tout i alors FIN
Si k ≤ n − 1 aller en 2 avec k ← k + 1
Si k = n alors il existe un circuit absorbant
8
Etape 2 : à l’itération k
Dans cette étapes il s’agit de sélectionner que les
nœuds voisins du nœud source et récupérer la distance
minimal entre les distances qu’on aura trouvé ; on répètera
cette étape tant que les sommets sont différents.
Etape 3 : la phase de test pour vérifier si on a un
circuit absorbant
- Si pour le même sommet on trouve a deux
itérations successives les mêmes valeurs on met
fin à l’algorithme ;
- Si le nombre d’itérations reste toujours
inferieur a n-1 nombre de nœuds on reprend
sans cesse l’étape 2 ;
- Si a une itération on voit qu’on a le même
nombre d’itérations que de nœud on fait la
remarque qu’il y a un circuit absorbant.
9
- Si la table reçu contient une entrée inconnue, le
routeur additionne le coût de cette entrée et celui
du lien et la positionne dans sa table (mise à jour
spontanée) on a par ce mécanisme
l’apprentissage d’une nouvelle table par le
routeur ;
- Si la table reçoit une entrée connue et que le cout
calculer est supérieur à l’information qu’il
contient, il ignore cette information, dans le cas
contraire il met sa table à jour en considérant la
valeur de la nouvelle entrée.
Petit à petit chaque nœud apprend la configuration du réseau et
le coût des différents chemins.
3.3. Illustration
10
11
Au premier échange, le nœud A apprend, qu’il peut joindre le
nœud B en passant par le lien β pour un coût de 0 (contenu de
la table du nœud B pour l’entrée B), coût auquel il convient
d’ajouter le coût du transit sur le lien β soit ici 1. A n’a pas, en
table, d’information concernant B, il met sa table à jour.
Chaque nœud procède de même. En ne considérant que le
nœud A, lors du second échange, A apprend qu’il peut joindre
les nœuds A, B et C en passant par le lien β pour un coût
respectif de :
– Pour A, de 1 (valeur reçue) + 1 (coût du lien β), soit 2, A a
déjà une entrée pour cette destination
avec un coût de 0, il conserve l’entrée de moindre coût.
– Pour B, de 0 + 1 soit 1, valeur déjà dans sa base
connaissance, celle-ci est ignorée.
– Pour C, de 1 + 1 soit 2, A n’a aucune entrée concernant C
dans sa table, il ajoute cette valeur.
4. Conclusion
Nous avons explorer dans notre étude, l’utilité de
l’algorithme de Dijkstra et celui de Bellman-Ford dans les
réseaux informatiques et vue la spécificité de chacun. Entre
l’algorithme de Dijkstra qui permet à chacun des nœuds du
réseau de calculer dans sa tables de routage la plus courte
distance entre lui et tous les autres nœuds du réseau et celui de
Bellman-Ford qui lui oblige chaque nœuds à maintenir une
table de routage, comportant principalement le moyen d’entrée
par ce nœud et le cout pour joindre se nœud, qui est
communiquer que a ses voisins les plus proches l’objectif est le
même ; transmettre l’information de manière rapide.
12
13