Table of Contents
Fetching ...

Efficient Computation in Congested Anonymous Dynamic Networks

Giuseppe A. Di Luna, Giovanni Viglietta

TL;DR

This work addresses deterministic computation in anonymous dynamic networks under congested communication by extending history-tree methods with a virtual history tree (VHT) and a robust level-by-level broadcast protocol. It introduces temporary IDs, a diameter-estimating error/reset mechanism, and a carefully constructed virtual network to enable reliable history-tree transmission despite $O(\log n)$-bit links, achieving a counting algorithm in $O(Tn^3)$ rounds (and $O(n^3\log n)$ in the basic version). The approach extends to leaderless, $T$-union-connected, and general multiset-based computations, offering practical improvements over prior congested-model results. Overall, the paper delivers a unified, polynomial-time framework for efficient deterministic computation in congested anonymous dynamic networks, with implications for scalable privacy-preserving distributed systems.

Abstract

An anonymous dynamic network is a network of indistinguishable processes whose communication links may appear or disappear unpredictably over time. Previous research has shown that deterministically computing an arbitrary function of a multiset of input values given to these processes takes only a linear number of communication rounds (Di Luna-Viglietta, FOCS 2022). However, fast algorithms for anonymous dynamic networks rely on the construction and transmission of large data structures called "history trees", whose size is polynomial in the number of processes. This approach is unfeasible if the network is congested, and only messages of logarithmic size can be sent through its links. Observe that sending a large message piece by piece over several rounds is not in itself a solution, due to the anonymity of the processes combined with the dynamic nature of the network. Moreover, it is known that certain basic tasks such as all-to-all token dissemination (by means of single-token forwarding) require $Ω(n^2/\log n)$ rounds in congested networks (Dutta et al., SODA 2013). In this work, we develop a series of practical and efficient techniques that make it possible to use history trees in congested anonymous dynamic networks. Among other applications, we show how to compute arbitrary functions in such networks in $O(n^3)$ communication rounds, greatly improving upon previous state-of-the-art algorithms for congested networks.

Efficient Computation in Congested Anonymous Dynamic Networks

TL;DR

This work addresses deterministic computation in anonymous dynamic networks under congested communication by extending history-tree methods with a virtual history tree (VHT) and a robust level-by-level broadcast protocol. It introduces temporary IDs, a diameter-estimating error/reset mechanism, and a carefully constructed virtual network to enable reliable history-tree transmission despite -bit links, achieving a counting algorithm in rounds (and in the basic version). The approach extends to leaderless, -union-connected, and general multiset-based computations, offering practical improvements over prior congested-model results. Overall, the paper delivers a unified, polynomial-time framework for efficient deterministic computation in congested anonymous dynamic networks, with implications for scalable privacy-preserving distributed systems.

Abstract

An anonymous dynamic network is a network of indistinguishable processes whose communication links may appear or disappear unpredictably over time. Previous research has shown that deterministically computing an arbitrary function of a multiset of input values given to these processes takes only a linear number of communication rounds (Di Luna-Viglietta, FOCS 2022). However, fast algorithms for anonymous dynamic networks rely on the construction and transmission of large data structures called "history trees", whose size is polynomial in the number of processes. This approach is unfeasible if the network is congested, and only messages of logarithmic size can be sent through its links. Observe that sending a large message piece by piece over several rounds is not in itself a solution, due to the anonymity of the processes combined with the dynamic nature of the network. Moreover, it is known that certain basic tasks such as all-to-all token dissemination (by means of single-token forwarding) require rounds in congested networks (Dutta et al., SODA 2013). In this work, we develop a series of practical and efficient techniques that make it possible to use history trees in congested anonymous dynamic networks. Among other applications, we show how to compute arbitrary functions in such networks in communication rounds, greatly improving upon previous state-of-the-art algorithms for congested networks.
Paper Structure (16 sections, 9 theorems, 1 equation, 2 figures)

This paper contains 16 sections, 9 theorems, 1 equation, 2 figures.

Key Result

lemma 1

At any round, all non-error processes agree on DiamEstimate.

Figures (2)

  • Figure 1: The first rounds of a dynamic network with $n=9$ processes and the corresponding levels of the history tree. Level $L_t$ consists of the nodes at distance $t+1$ from the root $r$, which represent indistinguishable processes after the $t$th communication round. There are no leaders in the network, but each process has an input from the set $\{A,B,C\}$. Only the nodes in $L_0$ have explicit labels; all labels of the form $a_i$ and $b_i$ were added for the reader's convenience, and indicate classes of indistinguishable processes (in contrast, the nodes of the virtual history tree introduced in \ref{['s:3']} do have IDs). Note that the two processes in $b_4$ are still indistinguishable at the end of round $2$, although they are linked to the distinguishable processes $b_5$ and $b_6$. This is because such processes were in the same class $a_5$ at round $1$. The subgraph induced by the nodes in the green blob is the view of the two processes in $b_1$. We remark that a history tree does not contain any explicit information about how many processes each node represents.
  • Figure 2: Construction of the virtual network $N_2$ and level $L_2$ of the virtual history tree (VHT). The real network $G_{i_2}$ consists of the $n=9$ processes in the upper-left picture, connected by the red and blue links (not the green ones). Before the construction starts, the IDs in the network are $5$, $2$, and $3$. Same-colored processes have equal IDs when the construction of $L_2$ starts; the labels indicate their IDs when the construction finishes. Accordingly, level $L_1$ of the VHT has three nodes with IDs $5$, $2$, $3$. The graph $H$ is a triangle on these three nodes, while its spanning tree $S$ is the same as LevelGraph. Therefore, to construct $N_2$ we remove the blue edges from $G_{i_2}$ and keep the red ones (see \ref{['s:3.4']}). For example, after the triplets $(6,3,1)$ and $(6,5,1)$ are accepted, any elements of ObsList corresponding to the two blue edges incident to the yellow process are deleted and are never broadcast. We also have to add the green edges, which represent the cycles $C_v$. Note that failing to add them would result in a disconnected network, because the process with ID $7$ would be isolated. For clarity, the edges of the (temporary) VHT are colored red or green to match the edges of the virtual network that they represent (although technically they are all red edges).

Theorems & Definitions (18)

  • lemma 1
  • proof
  • lemma 2
  • proof
  • corollary 1
  • proof
  • lemma 3
  • proof
  • corollary 2
  • proof
  • ...and 8 more