distributed online data aggregation in dynamic graphs · impossibility results - online adaptive...
TRANSCRIPT
Distributed Online Data Aggregation in Dynamic Graphs
Quentin Bramas, Toshimitsu Masuzawa, and Sébastien Tixeuil
NETYS 2019, Marrakech, June, 21st
Data Aggregation Problem 2
3
Data Aggregation Problem
4
Data Aggregation Problem
5
Data Aggregation Problem
6
Data Aggregation Problem
7
Data Aggregation Problem
8
Data Aggregation Problem
9
Data Aggregation Problem
10
Data Aggregation Problem
11
Data Aggregation Problem
12
Data Aggregation Problem
Each node transmits at most once.
The goal: to minimize the duration
13
Data Aggregation Problem
14
Data Aggregation Problem
15
Data Aggregation Problem
16
Data Aggregation Problem
17
Data Aggregation Problem
18
Dynamic Data Aggregation Problem
18
Dynamic Data Aggregation Problem
We consider a dynamic network with pairwise interactions
…
s
32
15
4
t = 0 1 2 3
18
Dynamic Data Aggregation Problem
We consider a sequence of interactions
We consider a dynamic network with pairwise interactions
…
s
32
15
4
t = 0 1 2 3
18
Dynamic Data Aggregation Problem
We consider a sequence of interactions
A node can transmit only once
We consider a dynamic network with pairwise interactions
…
s
32
15
4
t = 0 1 2 3
18
Dynamic Data Aggregation Problem
We consider a sequence of interactions
A node can transmit only once
Nodes may or may not have other information
We consider a dynamic network with pairwise interactions
…
s
32
15
4
t = 0 1 2 3
18
Dynamic Data Aggregation Problem
We consider a sequence of interactions
A node can transmit only once
Nodes may or may not have other information
The goal is to aggregate all the data with
minimum duration
We consider a dynamic network with pairwise interactions
…
s
32
15
4
t = 0 1 2 3
Distributed Online Data Aggregation 19
We consider a dynamic network with pairwise interactions
…
s
32
15
4
t = 0 1 2 3
Distributed Online Data Aggregation 19
We consider a dynamic network with pairwise interactions
…
s
32
15
4
A Distributed Online Data Aggregation (DODA) Algorithm answers the question: Which node transmits?
t = 0 1 2 3
Distributed Online Data Aggregation 19
We consider a dynamic network with pairwise interactions
…
s
32
15
4
a
b
A Distributed Online Data Aggregation (DODA) Algorithm answers the question: Which node transmits?
t = 0 1 2 3
Distributed Online Data Aggregation 19
We consider a dynamic network with pairwise interactions
…
s
32
15
4
a
b
a transmits or b transmits or no one transmits
(a node can transmit only once)
A Distributed Online Data Aggregation (DODA) Algorithm answers the question: Which node transmits?
t = 0 1 2 3
has data 1 2 3 4
has transmitted
Distributed Online Data Aggregation
1
2
20
t = 0 1 2 3 4 5 6
has data 2(1) 3 4
has transmitted 1
Distributed Online Data Aggregation
1
2
20
t = 0 1 2 3 4 5 6
has data 2(1) 3 4
has transmitted 1
Distributed Online Data Aggregation
1
2
3
4
20
t = 0 1 2 3 4 5 6
has data 2(1) 3 4
has transmitted 1
Distributed Online Data Aggregation
1
2
1
3
3
4
20
t = 0 1 2 3 4 5 6
has data 2(1) 3 4
has transmitted 1
Distributed Online Data Aggregation
1
2
1
3
3
4
s
1
20
t = 0 1 2 3 4 5 6
has data 2(1) 3 4
has transmitted 1
Distributed Online Data Aggregation
1
2
1
3
2
3
3
4
s
1
20
t = 0 1 2 3 4 5 6
has data 2(1,3) 4
has transmitted 1 3
Distributed Online Data Aggregation
1
2
1
3
2
3
3
4
s
1
20
t = 0 1 2 3 4 5 6
has data 2(1,3) 4
has transmitted 1 3
Distributed Online Data Aggregation
1
2
1
3
2
3
2
4
3
4
s
1
20
t = 0 1 2 3 4 5 6
has data 2(1,3,4)
has transmitted 1 3 4
Distributed Online Data Aggregation
1
2
1
3
2
3
2
4
3
4
s
1
20
t = 0 1 2 3 4 5 6
has data 2(1,3,4)
has transmitted 1 3 4
Distributed Online Data Aggregation
1
2
1
3
2
3
2
4
3
4
s
1
s
2
20
t = 0 1 2 3 4 5 6
has data
has transmitted 1 2 3 4
Distributed Online Data Aggregation
1
2
1
3
2
3
2
4
3
4
s
1
s
2
20
t = 0 1 2 3 4 5 6
How to evaluate the performance of a DODA? 21
Is the duration of the aggregation is significant ?
How to evaluate the performance of a DODA? 21
Is the duration of the aggregation is significant ? No
How to evaluate the performance of a DODA? 21
Is the duration of the aggregation is significant ?
Even the offline optimal algorithm will struggle in the sequence:
1
2
1
2
1
2
1
2
1
2
1
2
1
2
1
2
…
No
How to evaluate the performance of a DODA? 22
Is the duration of the aggregation significant ? No
Is the ratio between the duration of the aggregation and the duration of the offline optimal algorithm significant ?
How to evaluate the performance of a DODA? 22
Is the duration of the aggregation significant ? No
Is the ratio between the duration of the aggregation and the duration of the offline optimal algorithm significant ?
No
How to evaluate the performance of a DODA? 22
Is the duration of the aggregation significant ? No
Is the ratio between the duration of the aggregation and the duration of the offline optimal algorithm significant ?
No
Each algorithm is either optimal or does not terminates in the sequence:
1
2
1
2
1
2
1
2
1
2
1
2
1
2
…
1
2
s
1
optimal duration = a convergecast
}
23
How to evaluate the performance of a DODA?
Definition of costI(A), for an algorithm A in a sequence I :
23
How to evaluate the performance of a DODA?
Definition of costI(A), for an algorithm A in a sequence I :
}
convergecast
23
How to evaluate the performance of a DODA?
Definition of costI(A), for an algorithm A in a sequence I :
}
convergecast
}
convergecast (starting after the previous one)
23
How to evaluate the performance of a DODA?
Definition of costI(A), for an algorithm A in a sequence I :
}
convergecast
}
convergecast (starting after the previous one)
}convergecast
}convergecast
}
convergecast
23
How to evaluate the performance of a DODA?
Definition of costI(A), for an algorithm A in a sequence I :
}
convergecast
}
convergecast (starting after the previous one)
}convergecast
}convergecast
}
convergecast
execution of A
23
How to evaluate the performance of a DODA?
Definition of costI(A), for an algorithm A in a sequence I :
}
convergecast
}
convergecast (starting after the previous one)
}convergecast
}convergecast
}
convergecast
execution of A
costI(A) = 4
24
How to evaluate the performance of a DODA?
Definition of the costI(A) function, for an algorithm A in a sequence I :
} } }convergecast
A does not terminate
costI(A) = 4
no more convergecast convergecast convergecast
25
How to evaluate the performance of a DODA?
Definition of the costI(A) function, for an algorithm A in a sequence I :
} } }convergecast
A does not terminate
costI(A) =∞
infinitely many convergecasts
convergecast convergecast }
convergecast
26
Distributed Online Data Aggregation
…
s
32
15
4
t = 0 1 2 3
26
Distributed Online Data Aggregation
…
s
32
15
4
Who generates the sequence?
t = 0 1 2 3
26
Distributed Online Data Aggregation
An adversary
…
s
32
15
4
Who generates the sequence?
t = 0 1 2 3
26
Distributed Online Data Aggregation
An adversary
Three adversaries:
…
s
32
15
4
Who generates the sequence?
t = 0 1 2 3
26
Distributed Online Data Aggregation
An adversary
Three adversaries:
…
s
32
15
4
Who generates the sequence?
t = 0 1 2 3
- Online Adaptive: generates the next interaction based on what happened in the past
26
Distributed Online Data Aggregation
An adversary
Three adversaries:
…
s
32
15
4
Who generates the sequence?
t = 0 1 2 3
- Online Adaptive: generates the next interaction based on what happened in the past
- Oblivious: generates the sequence before the execution of the algorithm
26
Distributed Online Data Aggregation
An adversary
Three adversaries:
…
s
32
15
4
Who generates the sequence?
t = 0 1 2 3
- Online Adaptive: generates the next interaction based on what happened in the past
- Oblivious: generates the sequence before the execution of the algorithm
- Randomized: each interaction is chosen uniformly at random.
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmitsLet A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
2 transmits
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
2 transmits2
1
s
2
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
2 transmits2
1
s
2otherwise
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
2 transmits2
1
s
2otherwise
Let A be a DODA
A never terminates
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
2 transmits2
1
s
2otherwise
Starting from any time t, the aggregation is always possible, so:
Let A be a DODA
A never terminates
Impossibility Results - Online Adaptive Adversary 27
- Online Adaptive: generates the next interaction based on what the algorithm decides in the current interaction
s
1
1 transmits 1
2
s
1s
2
2 transmits2
1
s
2otherwise
Starting from any time t, the aggregation is always possible, so:
cost(A) = ∞
Let A be a DODA
A never terminates
Impossibility Results - Online Adaptive Adversary 28
Impossibility Results - Online Adaptive Adversary 28
Theorem: If k transmissions are allowed per node, there exists an online adaptive adversary that generates for every DODA A a sequence I such that costI(A)=∞
Impossibility Results - Online Adaptive Adversary 28
Theorem: If k transmissions are allowed per node, there exists an online adaptive adversary that generates for every DODA A a sequence I such that costI(A)=∞
Corollary: If k transmissions are allowed per node, there exists an oblivious adversary that generates for every deterministic DODA A a sequence I such that costI(A)=∞
Impossibility Results - Online Adaptive Adversary 28
Theorem: If k transmissions are allowed per node, there exists an online adaptive adversary that generates for every DODA A a sequence I such that costI(A)=∞
Corollary: If k transmissions are allowed per node, there exists an oblivious adversary that generates for every deterministic DODA A a sequence I such that costI(A)=∞
What about randomized DODA algorithms against an oblivious adversary?
Impossibility Results - Oblivious Adversary 29
Theorem: If k transmissions are allowed per node, there exists an oblivious adversary that generates for every oblivious DODA A a sequence I such that costI(A)=∞ with high probability
What about randomized DODA algorithms against an oblivious adversary?
Impossibility Results - Oblivious Adversary 29
Theorem: If k transmissions are allowed per node, there exists an oblivious adversary that generates for every oblivious DODA A a sequence I such that costI(A)=∞ with high probability
proof: not trivial
What about randomized DODA algorithms against an oblivious adversary?
Impossibility Results - Oblivious Adversary 30
sketch of proof, for k=1
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
sketch of proof, for k=1
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time t
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over , otherwise there is a time t0 such that:
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over , otherwise there is a time t0 such that:• Pt0 -1 > 1/n • Pt0 ≤1/n
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over
t0
s
1
s
2
s
n
s
1
s
2
s
n
… …
, otherwise there is a time t0 such that:• Pt0 -1 > 1/n • Pt0 ≤1/n
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over
t0
s
1
s
2
s
n
s
1
s
2
s
n
… …
, otherwise there is a time t0 such that: : one node u has not transmitted w.h.p.• Pt0 -1 > 1/n
• Pt0 ≤1/n
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over
t0
s
1
s
2
s
n
s
1
s
2
s
n
… …
, otherwise there is a time t0 such that: : one node u has not transmitted w.h.p.• Pt0 -1 > 1/n
• Pt0 ≤1/n : one node has transmitted w.h.p.
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over
t0
s
1
s
2
s
n
s
1
s
2
s
n
… …
n
u
n-1
n
s
1
…
, otherwise there is a time t0 such that: : one node u has not transmitted w.h.p.• Pt0 -1 > 1/n
• Pt0 ≤1/n : one node has transmitted w.h.p.
Impossibility Results - Oblivious Adversary 30
s
1
s
2
s
n
…
s
1
s
2
s
n
…
sketch of proof, for k=1
Pt = probability that no node transmits before time tlemma: if Pt > 1/n then there exists a node u that has not transmitted w.h.p.
if Pt > 1/n for all t, then it’s over
t0
s
1
s
2
s
n
s
1
s
2
s
n
… …
n
u
n-1
n
s
1
…
n
u
n-1
n
s
1
…
, otherwise there is a time t0 such that: : one node u has not transmitted w.h.p.• Pt0 -1 > 1/n
• Pt0 ≤1/n : one node has transmitted w.h.p.
Impossibility Results - Oblivious Adversary 31
sketch of proof, for k>1
require nk nodes
Ik-1
Ik-1
Ik-1
…
Each group of nodes acts like a node that can transmit only once
Impossibility Results - Oblivious Adversary 32
What about randomized DODA algorithms against oblivious adversary?
Theorem: If k transmissions are allowed per node, there exists an oblivious adversary that generate for every oblivious DODA A a sequence I such that costI(A)=∞ with high probability
Impossibility Results - Oblivious Adversary 32
What about randomized DODA algorithms against oblivious adversary?
Theorem: If k transmissions are allowed per node, there exists an oblivious adversary that generate for every oblivious DODA A a sequence I such that costI(A)=∞ with high probability
What about non-oblivious randomized DODA algorithms against oblivious adversary?
Impossibility Results - Oblivious Adversary 32
What about randomized DODA algorithms against oblivious adversary?
Theorem: If k transmissions are allowed per node, there exists an oblivious adversary that generate for every oblivious DODA A a sequence I such that costI(A)=∞ with high probability
What about non-oblivious randomized DODA algorithms against oblivious adversary?
open question
DODA against randomized adversary
34
DODA against randomized adversary
If you have no information about the future, always transmit is optimal. It takes O(n2) interactions in average.
If you know everything about the future, it takes O(nlog(n)) interactions in average.
35
DODA against randomized adversary
35
DODA against randomized adversary
The meetTime information: each node knows when will be its next interaction with the sink
35
DODA against randomized adversary
The meetTime information: each node knows when will be its next interaction with the sink
1
meetTime = 3
2
meetTime = 6
36
DODA against randomized adversary
Greedy Algorithm: if I meet the sink after the other node, then I transmit my data
36
DODA against randomized adversary
Greedy Algorithm: if I meet the sink after the other node, then I transmit my data
1
meetTime = 3
2
meetTime = 5
36
DODA against randomized adversary
Greedy Algorithm: if I meet the sink after the other node, then I transmit my data
1
meetTime = 3
2
meetTime = 5
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
1
meetTime = 3
2
meetTime = 5=10
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
1
meetTime = 3
2
meetTime = 5
1
meetTime = 3
2
meetTime = 15
=10
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
1
meetTime = 3
2
meetTime = 5
1
meetTime = 3
2
meetTime = 15
=10
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
1
meetTime = 3
2
meetTime = 5
1
meetTime = 3
2
meetTime = 15
=10
1
meetTime = 13
2
meetTime = 15
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
1
meetTime = 3
2
meetTime = 5
1
meetTime = 3
2
meetTime = 15
=10
1
meetTime = 13
2
meetTime = 15
37
DODA against randomized adversary
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
1
meetTime = 3
2
meetTime = 5
1
meetTime = 3
2
meetTime = 15
=10
1
meetTime = 13
2
meetTime = 15
1
meetTime = 7
s
38
DODA against randomized adversary
n√n log(n)-Waiting Greedy Algorithm is optimal
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
38
DODA against randomized adversary
n√n log(n)-Waiting Greedy Algorithm is optimal
Without knowledge: 𝞗(n2) interactions in average
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
38
DODA against randomized adversary
n√n log(n)-Waiting Greedy Algorithm is optimal
Without knowledge: 𝞗(n2) interactions in average
With full knowledge: 𝞗(n log(n)) interactions w.h.p.
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
38
DODA against randomized adversary
n√n log(n)-Waiting Greedy Algorithm is optimal
Without knowledge: 𝞗(n2) interactions in average
With full knowledge: 𝞗(n log(n)) interactions w.h.p.
meetTime information: 𝞗(n√n log(n)) interactions w.h.p.
-Waiting Greedy Algorithm: if at least one of the nodes has meetTime > , then we apply Greedy Algorithm
Conclusion 39
Conclusion 39
Online Data Aggregation: - hard in general - optimal algorithms exist in randomized networks
Conclusion 39
Perspective
Online Data Aggregation: - hard in general - optimal algorithms exist in randomized networks
Conclusion 39
Perspective
Online Data Aggregation: - hard in general - optimal algorithms exist in randomized networks
More realistic networks?
Conclusion 40
Perspective
Online Data Aggregation: - hard in general - optimal algorithms exist in randomized networks
More realistic networks?
Thank you for your attention!
Impossibility Results - Online Adaptive Adversary 41
What if nodes are allowed to transmit more than once?
s
1
1
2
1 transmits s
1s
2
2 transmits2
1
s
2otherwise
Starting from any time t, the aggregation is always possible, so:
cost(A) = ∞
Let A be a DODA
Impossibility Results - Online Adaptive Adversary 42
What if nodes are allowed to transmit more than once?
s
1
1
2
s
1
s
2
1
2
s
1
…
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
s’
s
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
s’
s
s’
s
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
s’
s
s’
s
s’
s
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
s’
s
s’
s
s’
s
if s’ owns all the data:
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
s’
s
s’
s
s’
s
if s’ owns all the data:
then, a node has transmitted twice
Impossibility Results - Online Adaptive Adversary 43
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
1
2
s’
1
…
s’
s
s’
s
s’
s
s’
s
s’
s
s’
s
if s’ owns all the data:
then, a node has transmitted twice
and s does not own all the data
Impossibility Results - Online Adaptive Adversary 44
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
s’
s
s’
s
s’
s
if s’ owns all the data:
then, a node has transmitted twice
and s does not own all the data
Impossibility Results - Online Adaptive Adversary 44
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
s’
s
s’
s
s’
s
if s’ owns all the data:
then, a node has transmitted twice
1
2
1
s
1
s’
and s does not own all the data
Impossibility Results - Online Adaptive Adversary 44
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
s’
s
s’
s
s’
s
if s’ owns all the data:
then, a node has transmitted twice
1
2
1
s
1
s’
and s will never own all the data
Impossibility Results - Online Adaptive Adversary 44
What if nodes are allowed to transmit more than once?
s’
1
1
2
s’
1
s’
2
s’
s
s’
s
s’
s
if s’ owns all the data:
then, a node has transmitted twice
1
2
1
s
1
s’
and s will never own all the data
yet a convergecast is always possible