1 / 45

Deterministic communication in unknown networks

Deterministic communication in unknown networks. Selectors, or selective families of sets Deterministic broadcasting in unknown networks Deterministic gossiping in unknown networks. Unknown topology: breaking symmetry. Break symmetry by random choices. Break symmetry using node labels.

Download Presentation

Deterministic communication in unknown networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Deterministic communication in unknown networks • Selectors, or selective families of sets • Deterministic broadcasting in unknown networks • Deterministic gossiping in unknown networks

  2. Unknown topology: breaking symmetry • Break symmetry by random choices. • Break symmetry using node labels. • “Round-Robin” approach: node with label i transmits in step i. Expensive if we have large node labels. • For efficient deterministic protocols use selectors. • Break symmetry using the history of computation.

  3. Selectors • Set R selects x from a set Z if R ∩ Z = {x}. Z R x

  4. Selectors • A set R selects x from a set Z if R ∩ Z = {x}. • A family of sets F = {R1, R2, …, Rq} selects x from a set • Z if Ri ∩ Z = {x}, for some Ri. R1 R2 x Z R3

  5. Selectors • A set R selects x from a set Z if R ∩ Z = {x}. • A family of sets F = {R1, R2, …, Rq} selects x from a set • Z if Ri ∩ Z = {x}, for some Ri. • Let F be a family of subsets of [N] = {1,2,…, N}. • F is a k-selector, if it selects at least one element in each subset Z of [N] of size ≤k. • F is a (k,α)-selector, if it selects in each subset Z of [N] of • size ≤k at least α|Z| distinct elements.

  6. Selectors as communication patterns • F = <R1, R2, … , Ri, … , Rq > – a sequence of subsets of [N]. • F definesa q-stepprotocol: node (label) x transmits at step i if and only if x is in Ri. v1 v3 vk v2

  7. Selectors as communication patterns • F = <R1, R2, … , Ri, … , Rq > – a sequence of subsets of [N]. • F definesa q-stepprotocol: node (label) x transmits at step i if and only if x is in Ri. • vi sends a message to v1 if and only if F selects vi from {v1, … , vk}. v1 vi v3 vk v2 : nodes selected by family F

  8. Strong selectors v1 • (k,1)-selectoris called a strong selector: selects each element in each subset Z of [N] of size ≤ k. • If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours. v3 v2 vk

  9. Strong selectors v1 • (k,1)-selectoris called a strong selector: selects each element in each subset Z of [N] of size ≤ k. • If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours. • Trivial strong selector of size N: { {1}, {2}, {3}, …, {N} } Gives a “Round Robin” phase. v3 v2 vk

  10. Strong selectors v1 • (k,1)-selectoris called a strong selector: selects each element in each subset Z of [N] of size ≤ k. • If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours. • There exists a strong selector of size v3 v2 vk Consider a random family of sets F = {R1, R2, … , Rq}, q = such that each v belongs to Ri with prob. 1/k. Prob. that there exists set Z of size ≤ k and x in Z such that F doesn’t select x from Z is < 1.

  11. Strong selectors v1 • (k,1)-selectoris called a strong selector: selects each element in each subset Z of [N] of size ≤ k. • If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours. • There exists a strong selector of size • Explicitly constructed strong selector of size [Kautz, Singleton, 1964]. • A strong selector must have size [Chaudhuri, Radhakrishnan, 1986]k < N1/3, [Clementi, Monti, Silvestri, 2001]k < N1/2. • Strong selectors useful in deterministic gossiping protocols. v3 v2 vk

  12. v1 vk v3 v2 Weak selectors • (k,1/2)-selectoris called a weak selector: selects at least half of the elements from each subset Z of [N] of size ≤ k. • If all nodes follow a weak (k,1/2)-selector, then each node of degree at most k receives messages from at least half of its neighbours. • There exists a weak selector of size: • A weak selector must have size [Clementi, Monti, Silvestri, 2001]. • Explicitly constructed weak selector of size [Indyk-2002] • Weak selectors useful in deterministic broadcasting protocols.

  13. Weak selectors from expanders • G = (V, W, E) – a bipartite graph, V = [N], W = [M], deg(v) = d, for each v in V. • G is a (k,ε)-lossless expander, if every subset Z of V of size at most k has at least (1 – ε)d|Z| neighbours. V: W:

  14. Weak selectors from expanders • G = (V, W, E) – a bipartite graph, V = [N], W = [M], deg(v) = d, for each v in V. • G is a (k,ε)-lossless expander, if every subset Z of V of size at most k has at least (1 – ε)d|Z| neighbours. • (k,1/4) lossless expander gives a weak (k,1/2)-selector of size M. • Explicit construction of (k,ε)-lossless expanders with d = exp{poly log log(N)} and M = O(kd) [Capalbo, Reingold, Vadhan, Wigderson, 2002] V: W:

  15. Deterministic broadcasting in unknown network[Chrobak, Gasieniec, Rytter, 2001] • Directed network • Iterated selector: concatenation of copies of a selector • Protocol: All active nodes (those who have the message) execute synchronously interleaved iterated weak (2i,1/2)-selectors, for i = 1, 2, … , logn. … (2,1/2)-selectors: … (4,1/2)-selectors: … … (2i,1/2)-selectors: …

  16. Det. Broadcasting, unknown network (cont.) • Consider an arbitrary simple path (v0, v1, … , vq) from the source, and the (in)-neighbours of nodes v1, … , vq. • Assign the nodes of the path and their neighbours to the layers. Node vi belongs to layer i. A neighbour w belongs to the highest layer i-1 so that (w,vi) is an edge. • Show that the message M moves further from the current “front” layer in O(x log n log N) steps, x – size of front layer. • M reaches the end of path in O(nlognlogN) steps. w v0 v1 v2 v3 v4 v5 v6 v7

  17. Deterministic gossiping in unknown network[Gasieniec, Radzik, Xin, 2004] • Directed network • O*(nΔ)-time protocol, Δ – maximum in-degree • O*(n4/3)-timeprotocol O*( ) hides a polylog(N) factor • Could gossiping be done in unknown networks deterministically in O*(n)-time? • Randomized gossiping: O(n log4 n) time [Chrobak, Gasieniec, Rytter, 2001]

  18. u v Trivial gossiping protocols • Large labels, from { 1, 2, … , N}: • All nodes follow a strong n-selector n times. • steps. • Small labels, N=O(n): • n times Round-Robin: node i transmits at step i in each round. • steps.

  19. Collect and disperse • The nodes keep collecting messages. • Periodically the nodes which collected many new messages compete for the exclusive right to broadcast (disperse) them to all other nodes. Collecting resumes, when no node with many new messages. • “Competing” for the right to broadcast is done by a “leader election” protocol, which is based on O(log N) applications of a broadcast protocol. • Apply O(n log n log N) broadcast protocol. • If each dispersing of collected messages involves at least k new (not dispersed previously) messages, then the total time for dispersing messages - (n/k) * O(n logn log2N) = O*(n2/k log2N). • Nodes/messages change from active to dormant.

  20. Mk Mi M2 M1 Gossiping in O*(nΔ) time • Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}. • Gossip1(n,Δ) performs quasi-gossiping. • Time: Phase I: n/Δ×O(Δ2log n) = O*(nΔ); Phase II: O(Δ)×O(n log3 n)= O*(nΔ). Before Phase I:

  21. M1 – Mk M1 – Mi M1,M2 M1 Gossiping in O*(nΔ) time • Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: {at least every k-th node of a path is dormant}. • Gossip1(n,Δ) performs quasi-gossiping. • A dormant node: its initial messages has been delivered to all nodes (during the Disperse(k)). After Phase I:

  22. Gossiping in O*(nΔ) time • Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}. • Gossip1(n,Δ) performs quasi-gossiping. • Time: Phase I: n/Δ×O(Δ2log n) = O*(nΔ); Phase II: O(Δ)×O(n log3n)= O*(nΔ). After Phase II: M1 – Mk dormant M1 – Mi M1,M2 M1

  23. Gossiping in O*(nΔ) time • Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}. • Gossip1(n,Δ) performs quasi-gossiping. • Time: Phase I: n/Δ×O(Δ2log n) = O*(nΔ); Phase II: O(Δ)×O(n log3 n)= O*(nΔ). After Phase II: M1 – Mk M1 – Mi dormant M1,M2 M1

  24. Gossiping in O*(nΔ) time • Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}. • Gossip1(n,Δ) has performed “quasi-gossiping:” each remaining active message is in a dormant node. After Phase II: M1 – Mk M1 – Mi dormant M1,M2 M1

  25. 1 5 4 3 2 Quasi-gossiping principle • Quasi-gossiping algorithm: on completion each active message is in a dormant node. • Full gossiping: A: quasi-gossiping; B: repeat all steps from A. Before stage A: M2 M1 M3 M4 M5

  26. 1 5 2 Quasi-gossiping principle • Quasi-gossiping algorithm: on completion each active message is in a dormant node. • Full gossiping: A: quasi-gossiping; B: repeat all steps from A. After stage A: M2,M3,M4 M1,M3,M4 M1,M2,M3,M4 3 M2,M3,M4,M5 4 M3,M4,M5

  27. 1 5 2 Quasi-gossiping principle • Quasi-gossiping algorithm: on completion each active message is in a dormant node. • Full gossiping: A: quasi-gossiping; B: repeat all steps from A. Before stage B: M1,M2,M3,M4 3 M2,M3,M4,M5 4

  28. 1 5 4 3 2 Quasi-gossiping principle • Quasi-gossiping algorithm: on completion each active message is in a dormant node. • Full gossiping: A: quasi-gossiping; B: repeat all steps from A. After stage B: M1 – M5 M1 – M5 M1 – M5 M1 – M5 M1 – M5

  29. Gossiping in O*(nΔ) time • Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}. • Gossip1(n,Δ) performs quasi-gossiping. • Number of steps, taking k = n/Δ: Phase I: k×O*(Δ2) = O*(kΔ2) = O*(nΔ); Phase II: O(n/k)×O*(n) = O*(n2/k)= O*(nΔ).

  30. Reduction of in-degrees: 1st round • After the following communication: A: Run a weak (n,3/4)-selector, B: Disperse(n/4); each node has less then n/2 active neighbours. • After stage A:

  31. Reduction of in-degrees: 1st round • After the following communication: A: Run a weak (n,3/4)-selector, B: Disperse(n/4); each node has less then n/2 active neighbours. • After stage B:

  32. Reduction of in-degrees: next round • Next perform the following communication: A: Run a weak (n/2,3/4)-selector on active nodes only, B: Disperse(n/8); and each node will have less then n/4 active neighbours. • Before stage A:

  33. Reduction of in-degrees: more rounds • Perform more rounds, using weak selectors with geometrically decreasing sizes, until each node has less then k active neighbours. • Time: All selectors: O*(n); All disperse operations: (n/k) × O*(n) = O*(n2/ k). • Apply next Gossip1(n,k) to complete gossiping. • Total number of steps, taking k = n1/2: O*(n2/k) + O*(nk) = O*(n3/2).

  34. Reduction of in-degrees: more rounds • Perform more rounds, using weak selectors with geometrically decreasing sizes, until each node has less then k active neighbours. • Time: All selectors: O*(n); All disperse operations: (n/k) × O*(n) = O*(n2/ k). • Apply next Gossip1(n,k) to complete gossiping. • Total number of steps, taking k = n1/2: O*(n2/k) + O*(nk) = O*(n3/2).

  35. u v Difficult structures:paths with many back edges • Let each node have in-degree < k. • Consider an active path from v to u of length k with all “back” edges. • How much time is needed for the message from v to reach u alongthis path? • If we run a strong k-selector k times, then the time is: O*(k3). • Can we do this faster?

  36. u v Dealing with “blocking” paths Transmission pattern for a node x: • < k/2 nodes need a selector stronger than (k,1/2) … (k,1/2)-selectors:

  37. u v Dealing with “blocking” paths Transmission pattern for a node x: • < k/2 nodes need a selector stronger than (k,1/2) … (k,1/2)-selectors:

  38. Dealing with “blocking” paths Transmission pattern for a node x: • < k/2 nodes need a selector stronger than (k,1/2) • < k/4 nodes need a selector stronger than (k,3/4) u … (k,1/2)-selectors: … (k,3/4)-selectors: v

  39. (k,1/2)-selectors: u … (k,3/4)-selectors: … … (k,1)-selectors: v Dealing with “blocking” paths Transmission pattern for a node x: • < k/2 nodes need a selector stronger than (k,1/2) • < k/2i nodes need a selector stronger than (k,1-1/2i) • Message from v reaches u in O*(k2) time.

  40. (k,1/2)-selectors: u … (k,3/4)-selectors: … … (k,1)-selectors: v Dealing with “blocking” paths Transmission pattern for a node x: • < k/2 nodes need a selector stronger than (k,1/2) • < k/2i nodes need a selector stronger than (k,1-1/2i) • Message from v reaches u in O*(k2) time. • k-path-selector: the O*(k2)-long prefix of the above pattern.

  41. Gossiping in O*(n4/3)-time • Phase I: reduce the active neighbourhood of each node to less then k using weak selectors. • Phase II: reduce the active neighbourhood of each active path to less than k using path selectors. • At the end of Phase II, quasi-gossiping is completed. • Time: Phase I: (n/k) × O*(n) = O*(n2/k) Phase II: log k× O*(k2) + O*(n2/k) • If k = n2/3, then the total time is O*(n4/3).

  42. Further work • Can the O*(n4/3) upper bound on gossiping in directed ad-hoc radio networks be improved? We believe an O*(n) bound will be eventually shown. Some “clustering” (using information about the local structure of the network which the nodes have already learned) seems needed to achieve such a bound. • Apply selective families taking into account some partial (local) knowledge of the network. • There are other communication problems (e.g., the wake-up problem) and other variants of the model (e.g., nodes know their neighbours).

  43. Wake-up problem • Generalization of broadcasting. • Nodes may “wake-up” spontaneously, at different times. • When a node wakes up, it tries to wake-up its neighbours. • Design a wake-up protocol: at the completion, all nodes must be active. • The broadcasting problem is a special case of the wake-up problem: only one node (the source) wakes-up spontaneously. wakes up at 7 wakes up at 0 wakes up at 3 wakes up at 3

  44. Deterministic Wake-up protocols • The Wake-up problem needs “shifting” selectors. • There exists a shifting weak (k,1/2)-selector of size O(k polylog N). • This implies existence of a deterministic wake-up protocol of length O(n polylog N). • Can a shifting weak (k,1/2)-selector of size O(k N o(1)) be constructed in polynomial time? • This would give and explicit wake-up protocol of length O(nN o(1)).

  45. Nodes know their neighbours source • Broadcasting in depth 2 undirected networks. • Lower bound Ω(n1/2) [BGV-2004]. • Upper bound O*(n2/3)[KP-2002] • Selective families together with “clustering” and “local gossiping” might lead to an O*(n1/2)upper bound.

More Related