Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parJean-Noël Maxime Beauséjour Modifié depuis plus de 8 années
1
Agrégation d’arbres Multicast Joanna Moulierac Equipe ARMOR : Mikl ó s Moln á r, Bernard Cousin, Raymond Marie, Alexandre Guitton. IRISA, Université de Rennes 1 15 février 2006
2
2 Plan de la présentation 1.Contexte de travail 2.L’agrégation rapide : STA 3.L’agrégation d’arbres dans un grand domaine : TALD
3
I- Le Contexte du travail 2- Pourquoi ça ne marche pas encore?
4
4 Multicast Proposé par Steve Deering en 1991 Communication de groupes sur Internet Une seule copie du message envoyée, duplication aux routeurs de branchement Applications : Vidéoconférences, jeux vidéos en ligne…
5
5 Multicast Problèmes de passage à l’échelle : Un groupe g un arbre t |t| entrées de routage Si le nombre de groupes est grand : Beaucoup d’entrées de routage : - Mémoire des routeurs saturée - Routage ralenti Beaucoup de messages de contrôle pour maintenir ces entrées de routage
6
6 L’agrégation d’arbres L’agrégation d’arbres proposée en 2001 par M.Gerla, J.-H. Cui et L. Lao de UCLA, Los Angelès Aggregated Multicast Proposée pour résoudre le problème de passage à l’échelle Principe : permettre à plusieurs groupes d’utiliser le même arbre Multicast : un groupe, un arbre Agrégation : plusieurs groupes, un arbre
7
7 L’agrégation d’arbres
8
7 Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4
9
7 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Un arbre couvrant g1 est construit
10
7 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Un arbre couvrant g1 est construit Entrée de routage stockée pour g
11
7 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4
12
7 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 On peut construire un nouvel arbre pour le groupe g2 (comme en multicast)
13
7 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Ou g2 peut utiliser l’arbre construit pour g1
14
7 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 g1 arbre rouge g2 arbre rouge g1 arbre rouge g2 arbre rouge Group-label table On rajoute alors des ’’entrées de groupes’’ dans des tables groupes-label g1 arbre rouge g2 arbre rouge
15
8 L’agrégation d’arbres Leaky match Si on veut réduire encore plus le nombre d’entrées de routage… … on peut aussi agréger des groupes à des arbres plus « gros » Agrégation « Leaky Match »
16
9 L’agrégation d’arbres Leaky Match Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Group-label table g1 arbre rouge g2 arbre rouge g1 arbre rouge g2 arbre rouge g1 arbre rouge g2 arbre rouge Group-label table
17
9 L’agrégation d’arbres Leaky Match Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Group-label table g1-->arbre rouge g2-->arbre rouge g1-->arbre rouge g2-->arbre rouge g1-->arbre rouge g2-->arbre rouge Group-label table Un nouveau groupe g3 arrive.
18
9 L’agrégation d’arbres Leaky Match Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Group-label table g1-->arbre rouge g2-->arbre rouge g1-->arbre rouge g2-->arbre rouge g1-->arbre rouge g2-->arbre rouge Group-label table On peut construire un arbre couvrant g3
19
9 L’agrégation d’arbres Leaky Match Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 g1 arbre rouge g2 arbre rouge g1 arbre rouge g2 arbre rouge g3 arbre rouge g1 arbre rouge g2 arbre rouge g3 arbre rouge Group-label table Ou bien agréger g3 à l’arbre rouge, qui est plus gros.
20
10 L’agrégation d’arbres Leaky Match Réduction du nombre d’entrées de routage. Perte de bande passante car des routeurs non destinataires reçoivent des messages. Compromis entre la réduction du nombre d’entrées de routage et la bande passante gaspillée.
21
II- Notre Algorithme STA Scalable Tree Aggregation
22
12 Notre algorithme STA Pour gérer 40 000 requêtes de groupes, l’algorithme AM prend plus de 2h. Problèmes de passage à l’échelle Nous proposons un nouvel algorithme avec une agrégation plus rapide
23
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from sets MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g
24
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from sets MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g
25
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from set MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g
26
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from set MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g
27
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from set MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen If all the trees in the subsets are evaluated and if no tree has been chosen then add tg in MTS(c g ) Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g
28
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from set MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen If all the trees in the subsets are evaluated and if no tree has been chosen then add tg in MTS(c g ) Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g Seul un sous-ensemble d’arbres est évalué
29
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from set MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen If all the trees in the subsets are evaluated and if no tree has been chosen then add tg in MTS(c g ) Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g Fonction de sélection plus simple. Utilisation de bitmaps. Seul un sous-ensemble d’arbres est évalué
30
13 Notre algorithme STA For each new group g : Compute a native tree t g for g of cost c g Trees are evaluated from set MTS(c g ) to set MTS(c g *t b ) in increasing order of their costs t is evaluated If t can cover g then t is chosen If all the trees in the subsets are evaluated and if no tree has been chosen then add tg in MTS(c g ) Entrée g label(t) dans les tables groupes-label des routeurs de bordures Données : Groupe g, seuil t b, MTS = {MTS 2 = {t1,t2,t3…},MTS 3 = {t1,t2,t3},MTS 4 = {t1,t2,t3} ….} Résultat : Un arbre pour g Fonction de sélection plus simple. Utilisation de bitmaps. Dès qu’un arbre est trouvé, l’algorithme s’arrête Seul un sous-ensemble d’arbres est évalué
31
14 Résultats de simulation STA a les mêmes performances que AM STA est 4 fois plus rapide que AM (10 ms/groupe contre 45 ms)
32
III- L’agrégation d’arbres dans les grands domaines : TALD
33
16 Taux d’agrégation Pour 10 000 groupes concurrents
34
17 Le contexte Taux d’agrégation très faible quand le nombre de routeurs de bordure est grand L’agrégation d’arbres ≋ Multicast dans ce cas-là Il faut trouver un nouvel algorithme
35
18 L’agrégation dans les grands domaines Découper le réseau en sous-domaines Agréger les groupes séparément dans les sous-domaines.
36
19 Réseau Eurorings
37
19 Réseau Eurorings
38
19 Réseau Eurorings
39
19 Réseau Eurorings
40
19 Réseau Eurorings
41
19 Réseau Eurorings
42
19 Réseau Eurorings
43
19 Réseau Eurorings : découpage
44
19 Réseau Eurorings : découpage C1
45
19 Réseau Eurorings : découpage C1 C3 C4 C2
46
20 Algorithme TALD Chaque domaine i est géré par une entité centrale Ci L’agrégation est réalisée séparément dans chacun des sous- domaines par les C i L’entité centrale C, responsable du domaine entier, relie les arbres dans chacun des sous-domaines par des tunnels
47
21 Algorithme TALD Un nouveau groupe g Avec des membres dans Les sous-domaines 1,3 et 4
48
21 Algorithme TALD Chaque Ci construit un arbre couvrant les membres présents dans son sous- domaine.
49
21 Algorithme TALD Groupe g : @IP routeur29 Groupe g : C3, @IP29 Les Ci envoient un message à C …et C stocke ces informations dans une table
50
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 Groupe g : @IP routeur5
51
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 C4, @IP33 Groupe g : @IP routeur33
52
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 C4, @IP33
53
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 C4, @IP33
54
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 C4, @IP33 g-->@IP5 g-->@IP33
55
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 C4, @IP33 g-->@IP5 g-->@IP33
56
21 Algorithme TALD Groupe g : C3, @IP29 C1, @IP5 C4, @IP33 g-->@IP5 g-->@IP33 g-->@IP29 g-->@IP5
57
22 Le protocole TALD Le domaine est découpé en plusieurs sous-domaines Ensuite, agrégation dans chacun des sous-domaines Finalement, routage dans le domaine entier par des tunnels : stockage d’entrées pour la configuration des tunnels
58
23 Avantages du protocole TALD L’entité C n’a pas besoin de connaître la topologie du domaine entier pour configurer les tunnels Chaque sous-domaine est géré de manière indépendamment des autres Bon taux d’agrégation dans chacun des sous-domaines
59
24 Simulations Réseau Rocketfuel Exodus de 100 routeurs de bordure et 100 routeurs de cœur TALD_1 : sans découpe du domaine TALD_2 : domaine découpé en 2 sous-domaines TALD_4 : domaine découpé en 4 sous-domaines Membres choisis aléatoirement parmi les routeurs de bordure (entre 2 et 20 membres par groupe)
60
25 Nombre d’entrées de routage
61
26 Taux d’agrégation
62
27 Taux d’agrégation
63
28 Conclusion Agrégation d’arbres : solution pour déployer le multicast STA : proposition pour réaliser une agrégation rapide et tout aussi efficace. TALD : agrégation dans les grands domaines.
64
29 Références Aggregated Multicast --- A comparative study Jun-Hong Cui, Jinkyu Kim, Dario Maggiorini, Khaled Boussetta, Mario Gerla Special issue of cluster computing: the journal of networks, software and applications 2003. STA: Scalable Tree Aggregation Alexandre Guitton, Joanna Moulierac 7th International Conference on Telecommunications ConTEL 2005. (Best Student Paper Award) Q-STA: QoS Scalable Tree Aggregation Joanna Moulierac, Alexandre Guitton IFIP Networking 2005. DMTA: Distributed Multicast Tree Aggregation Joanna Moulierac, Alexandre Guitton INRIA Research Report n°5636, 2005. TALD: Multicast Tree Aggregation in Large Domains Joanna Moulierac, Alexandre Guitton, Mikl ó s Moln á r IFIP Networking 2006. On the number of multicast aggregated trees in a domain Joanna Moulierac, Mikl ó s Moln á r 2 nd Student Workshop of IEEE INFOCOM 2006.
65
Annexes
66
66 Résultats de simulation Simulations sur le réseau Eurorings de 43 nœuds et 55 arêtes Groupes dont les membres sont répartis aléatoirement (entre 2 et 20 membres par groupe) Groupes dynamiques (environ 45 000 groupes concurrents) Simulations en fonctions de trois seuils de bande passante : O% de perte de bande passante autorisée 1O% de perte de bande passante autorisée 2O% de perte de bande passante autorisée retour
67
67 Nombre d’arbres t b = 0.0 t b = 0.1 t b = 0.2 retour
68
68 Nombre d’entrées de routage t b = 0.0 t b = 0.1 t b = 0.2 retour
69
69 Perte de bande passante t b = 0.0 t b = 0.1 t b = 0.2 t b = ∞ t b = 1 retour
70
70 Nombre d’arbres évalués AM – 0.0 AM – 0.1 AM – 0.2 STA – 0.0, 0.1, 0.2 retour
71
71 Temps de calcul (en secondes) AM – 0.0 AM – 0.1 AM – 0.2 STA – 0.0 STA – 0.1 STA – 0.2 retour
72
72
73
73 Nombre de labels différents Nombre de groupes différents Nombre de labels différents (MST) Nombre de labels différents (SPT) Réseau Abilène 11 nœuds, 14 arêtes 2048370131 Réseau Nsfnet 14 nœuds, 21 arêtes 16 3844 785958 Réseau Géant 18 nœuds, 30 arêtes 262 14448 9428 222
74
74 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 g1 arbre rouge g2 arbre rouge Group-label table @g2 | Message Un message pour g2 atteint le routeur b4
75
75 Arbre_ Rouge L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 @g2 | Message g1 arbre rouge g2 arbre rouge Group-label table Encapsulation du label correspondant g2
76
76 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Arbre_ Rouge @g2 | Message Le message est routé en fonction du label Arbre_Rouge dans le domaine
77
77 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 Arbre_ Rouge @g2 | Message Arbre_ Rouge @g2 | Message Le message atteint les destinataires du groupe g2.
78
78 L’agrégation d’arbres Groupe g1 avec membres b1, b2, b4 Groupe g2 avec membres b1, b2, b4 Groupe g3 avec membres b1, b4 @g2 | Message Décapsulation du label. Le message est routé en dehors du domaine.
79
79 Nombre d’entrées spécifiques aux groupes
80
80 Nombre total d’entrées
81
81 Algorithme AM Une entité centrale ’’le tree Manager’’est responsable de l’agrégation Composition des groupes multicast Topologie du domaine Ensemble des arbres déjà construits Table groupes-labels Pour chaque nouveau membre ou départ de membre, requête vers le tree manager
82
82 Algorithme AM Données : Groupe g, seuil tb, MTS (ensemble des arbres du domaine) Résultat : Un arbre pour g
83
83
84
84
85
85
86
86
87
87
88
88
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.