Deadlock freeness. The DST algorithm is free from deadlock. We have already shown earlier that step 1 (i.e., the SPF construction) of the DST algorithm is free from deadlock.
In step 2, each node independently sends a message (containing its own state) to all of its neighbors only once. Upon receiving messages from all of its neighbors, a node performs some local computation and then terminates itself. Therefore, in step 2 nodes are free from any possible circular waiting. The correctness of the deadlock freeness of step 3 essentially follows from the work of [51, 87]. In step 4, the pruning operation is performed on a tree structure (TM) and a node never requests and waits for resources holding by any other node in the network. This implies that during the pruning operation, nodes are free from any possible circular waiting. Therefore, the deadlock freeness of all the four steps together ensure the deadlock freeness of the DST algorithm.
3.4 Round-message trade-off in Distributed ST con-
Round-message trade-off in Distributed ST construction
incurred by their algorithm are O((D+√
n) log2n) and O(mlog2n) respectively.
Elkin’s algorithm [41]. We use Elkin’s algorithm as a subroutine in the modified DST algorithm (see Subsection 3.4.1). Note that it is the best singularly-optimal deterministic distributed MST algorithm till date. The algorithm starts with the construction of an auxiliary BFS tree Tr rooted at some root node r. It consists of two parts. The first part constructs an (O(n/D), O(D))-MST forest1 which is termed as thebase MST forest. In the second part, the algorithm in [110] is applied on top of the base MST forest to construct the final MST. Specifically in the second part, the Boruvka’s algorithm is applied in such a way that merging of any two fragments requires O(D) rounds.
The first part of the algorithm runs for dlogDe phases. At the beginning of a phase i, (i varies from 0 to dlogDe −1), the algorithm computes (n/2i−1, O(2i))-MST forest (Fi). Each node updates its neighbors with the identity of its fragment. This requires O(1) rounds and O(m) messages. Every fragment F ∈Fi of diameter O(2i) computes the MWOE eF. For each eF = (u, v), u ∈ V(F), v ∈ V \V(F), a message is sent over eF by u and the receiver v notes down u as a foreign-fragment child of itself. In case the edge (u, v) is the MWOE for both the neighboring fragments Fu and Fv, the endpoint with the higher identity fragment becomes the parent of the other endpoint. This defines acandidate fragment graph G0i = (F0i,Ei), whereF0i is the set of fragments whose diameter is O(2i) and each such fragment is considered as a vertex ofG0iandEi is the set of MWOE edges of all the fragments inFi0. The computation of thecandidate fragment graph G0i requiresO(2i) rounds and O(n) messages. Then a maximal matching of G0i is built by using the Cole-Vishkin’s 3-vertex coloring algorithm [30]. The computation of a maximal matching of G0i requires O(2i·log∗n) rounds andO(n·log∗n) messages. The phase i ends at the computation of a maximal matching of the candidate fragment graph G0i. Hence the running time of a phase i is O(2i ·log∗n) which requires O(m +n·log∗n) messages. Since the first part runs for dlogDe phases, the overall time and message complexities to construct a base MST forest are O(D·log∗n) and O(mlogD+nlogD·log∗n) respectively.
In the second part, the algorithm in [110] is applied on top of the (O(n/D), O(D))-MST forest (F). This part maintains two forests: one is the base MST forest F which is already computed in the first part of the algorithm and the other one is the MST forest ˆF obtained by merging some of the base fragments into the fragments of ˆF via Boruvka’s algorithm.
1For a pair of parameters α, β, an (α, β)-MST forest is an MST forest with at mostαfragments, each of diameter at mostβ.
The second part of the algorithm requires O(logn) phases. In each phase j+ 1, it does the following. In every base fragment F ∈F, the MWOE e = (u, v) is computed (in parallel in all base fragments) that crosses between u∈V(F) and v ∈V \V( ˆF), where ˆF ∈Fj is the larger fragment that containsF. This step requiresO(D) rounds andO(n) messages. Once allO(n/D) MWOEs are computed, all of these information are sent torof Tr. This is done using pipelined convergecast procedure over Tr, in which each vertex u in Tr forwards to its parent in Tr the lightest edge for each fragment ˆF ∈Fj. This step requiresO(D+|Fj|) rounds and O(D· |Fj|) messages. Then the root node r does the following: (i) computes MWOE eFˆ for every ˆF ∈ Fj, (ii) computes a graph whose vertices are fragments of Fj
and edges are the MWOEs, and (iii) computes the MST forest Fj+1. After this r sends |F|
messages over Tr using pipelined broadcast where each message is of the form (F,Fˆ0), and F ∈ F and ˆF0 ∈Fj+1. The root rF of the base fragment F (each base fragment has a root node) receives this information (F,Fˆ0) and broadcasts the identity of ˆF0 as the new fragment identity to all the vertices of F. This takes O(D) rounds and O(n) messages. Finally each vertex v updates its neighbors in G with the new fragment identity. This requires O(1) rounds and O(m) messages. Combining both the parts, the overall round and message complexities of Elkin’s algorithm are O((D +√
n) logn) and O(mlogn +nlogn·log∗n) respectively.
3.4.1 Modified DST algorithm
Observe that the asymptotic term O(n3/2) involved with the message complexity of the DST algorithm presented in Subsection3.3.2is the bottleneck. To get rid of the asymptotic term O(n3/2) from the message complexity we modify the DST algorithm. Similar to the DST algorithm there are four steps (small distributed algorithms) in the modified DST algorithm namely— step 1 (SPF construction), step 2 (Edge weight modification), step 3 (MST construction), and step 4 (pruning). Specifically we replace step 3 of the DST algorithm by the singularly-optimal MST algorithm proposed by Elkin [41]. The other steps of the modified DST algorithm remain the same as that of the original DST algorithm.
The correctness of the modified DST algorithm and its approximation factor, which is 2(1−1/`), directly follows from the correctness of the algorithm proposed by Kou et al. [84].
Round complexity. By Lemma 3.2.2, step 1 of the modified DST algorithm takes O(S)
Summary
rounds. Step 2 and step 3 of the modified DST algorithm takeO(D) andO((D+√
n) logn) rounds respectively. Since step 4 also takes O(S) rounds, the overall round complexity of the modified DST algorithm is O(S+ (D+√
n) logn). We know that 1≤D≤S ≤n−1.
ThereforeO(S+(D+√
n) logn) = ˜O(S+√
n). Note that the polylogarithmic factor involved with the round complexity of the modified DST algorithm is at most logn.
Message complexity. By Lemma 3.2.3, the message complexity of step 1 of the modified DST algorithm isO(Sm). The message complexities of step 2, step 3, and step 4 areO(m), O(mlogn+ nlogn ·log∗n), and O(n) respectively. It is clear that the overall message complexity of the modified DST algorithm is dominated by step 1 and step 3. Combining these two steps we get that the message complexity of the modified DST algorithm is O(Sm +mlogn +nlogn ·log∗n). Note that log∗n ≤ logn, and since the graph G is connected,m ≥n−1. Therefore we can writeO(Sm+mlogn+nlogn·log∗n) = ˜O(Sm).
The polylogarithmic factor involved with the message complexity is at most log2n.
Observe that in case of S = O(logn), the round and message complexities incurred by the modified DST algorithm are ˜O(√
n) and ˜O(m) respectively. This implies that for sufficiently small values of the shortest path diameter (where S = O(logn)) the round and message complexities of the modified DST algorithm coincide with the results of the singularly-optimal MST algorithms proposed in [41, 62, 110] and the cost of the resultant ST is at most 2(1−1/`) of the optimal.