Frédéric Giroire, Stéphane Pérennes, Nicolas Nisse, Remigiusz Modrzejewski, Combinatorics, Optimization and Algorithms for Telecommunications (COATI), Inria Sophia Antipolis - Méditerranée (CRISAM), Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-COMmunications, Réseaux, systèmes Embarqués et Distribués (Laboratoire I3S - COMRED), Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S), Université Nice Sophia Antipolis (1965 - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (1965 - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA), Associated Team AlDyNet, and project ECOS-Sud Chile, ANR-09-BLAN-0159,AGAPE,Algorithmes de graphes parametres et exacts(2009), European Project: 258307,EC:FP7:ICT,FP7-ICT-2009-5,EULER(2010), Université Nice Sophia Antipolis (... - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (... - 2019) (UNS), INRIA, and Google [Dublin]
In this paper, we propose and analyze a simple localized algorithm to balance a tree. The motivation comes from live distributed streaming systems in which a source diffuses a content to peers via a tree, a node forwarding the data to its children. Such systems are subject to a high churn, peers frequently joining and leaving the system. It is thus crucial to be able to repair the diffusion tree to allow an efficient data distribution. In particular, due to bandwidth limitations, an efficient diffusion tree must ensure that node degrees are bounded. Moreover, to minimize the delay of the streaming, the depth of the diffusion tree must also be controlled. We propose here a simple distributed repair algorithm in which each node carries out local operations based on its degree and on the subtree sizes of its children. In a synchronous setting, we first prove that starting from any n-node tree our process converges to a balanced tree in O(n2) turns. We then describe a more restrictive model, adding a small extra information to each node, for which the convergence is reached in O(n log n) turns and this bound is tight. We then exhibit by simulation that the convergence is much faster (logarithmic number of turns in average) for a random tree.; Dans cet article, nous proposons et analysons un algorithme local simple pour ́equilibrer un arbre. La motivation vient des syst'emes distribu ́es de diffusion en temps r ́eel, dans lesquels une source diffuse un contenu vers des r ́ecepteurs via un arbre, un noeud transmettant les donn ́ees 'a ses enfants. Ces syst'emes sont soumis 'a un niveau ́elev ́e d'arriv ́ees et de d ́eparts (churn). Il est donc crucial d'ˆetre en mesure de r ́eparer efficacement l'arbre de diffusion afin de permettre une distribution efficace des donn ́ees. En particulier, en raison de limitations de bande passante, un arbre de diffusion efficace doit veiller 'a ce que les degr ́es des noeuds soient born ́es. Par ailleurs, pour minimiser le d ́elai de la diffusion en continu, la profondeur de l'arbre de diffusion doit ́egalement ˆetre contrˆol ́ee. Nous proposons ici un algorithme de r ́eparation distribu ́e simple dans lequel chaque nœud ex ́ecute des op ́erations locales en fonction de son degr ́e et de la taille des sous-arbres de ses enfants. Dans un cadre synchrone, nous montrons tout d'abord, qu''a partir de n'importe quel arbre avec n nœuds, notre processus converge vers un arbre ́equilibr ́e en O(n2) tours. Nous d ́ecrivons ensuite un mod'ele plus restrictif, en ajoutant une petite information suppl ́ementaire pour chaque nœud, pour lequel la convergence est atteinte en O(n log n) tours, cette borne ́etant serr ́ee. Nous mettons ensuite en ́evidence par simulation que la con- vergence est beaucoup plus rapide (nombre logarithmique de tours en moyenne) pour un arbre al ́eatoire.