Home
•
PhD Thesis
•
About
List of Figures
1.1
Representation of a central leader (node in red) in a distributed network
2.1
Representation of the three main timing models
2.2
Steps of a failure in a distributed system
2.3
Failure modes of a process
2.4
Example of processes communication
2.5
Failure modes of a communication channel
2.6
Representation of a communication graph
2.7
Representation of a dynamic network
2.8
Comparison between the degree, closeness and betweenness centralities of the same graph
3.1
Representation of a ring topology, a spanning tree and a complete graph
4.1
Example Topology Aware: Initial state
4.2
Example Topology Aware: Connection of node
j
4.3
Example Topology Aware: Broadcast knowledge of node
i
and connection of node
i
4.4
Example Topology Aware: Broadcast knowledge of node
j
and knowledge reception of node
j
4.5
Example Topology Aware: Knowledge reception of nodes
i
and
g
4.6
Example Topology Aware: Periodic Updates Task of nodes
i
and
g
4.7
Example Topology Aware: Update reception of node
k
4.8
Example Topology Aware: Periodic Updates Task of node
k
4.9
Example Topology Aware: Update reception of node
h
4.10
Screenshot of a graphical PeerSim experiment running the
Topology Aware
algorithm
4.11
Representation of Δ in Periodic Updates Task
4.12
Representation of the Random Waypoint mobility model
4.13
Representation of the single point of interest disc
4.14
Instability percentage with random waypoint
4.15
Instability percentage with periodic single point of interest
4.16
Evolution of instability at a transmission range of 90 meters with random waypoint
4.17
Evolution of instability at a transmission range of 90 meters with periodic single point of interest
4.18
Number of messages sent per second with random waypoint
4.19
Number of messages sent per second with periodic single point of interest
4.20
Longest leader path relative to component diameter
4.21
Longest leader path relative to component diameter
5.1
Screenshot of an OMNeT++ experiment running the CEL algorithm
5.2
Representation of the Random Walk mobility model
5.3
Representation of the Lévy Walk mobility model
5.4
Messages sent (lower is better) Random Walk
5.5
Messages sent (lower is better) Truncated Lévy Walk
5.6
Leader path (lower is better) Random Walk
5.7
Leader path (lower is better) Truncated Lévy Walk
5.8
Instability (lower is better) Random Walk
5.9
Instability (lower is better) Truncated Lévy Walk
5.10
Instability at 60m (lower is better) Random Walk
5.11
Instability at 60m (lower is better) Truncated Lévy Walk
A.1
Energy consumption per node (lower is better) Random Walk
A.2
Energy consumption per node (lower is better) Truncated Lévy Walk
Table of Contents
1
Introduction
1.1
Contributions
1.1.1
Topology Aware Leader Election Algorithm for Dynamic Networks
1.1.2
Centrality-Based Eventual Leader Election in Dynamic Networks
1.2
Manuscript Organization
1.3
Publications
1.3.1
Articles in International Conferences
1.3.2
Articles in National Conferences
2
Background
2.1
Properties of Distributed Algorithms
2.2
Timing Models
2.3
Process Failures
2.4
Communication Channels
2.5
Failures of Communication Channels
2.6
Distributed Systems
2.6.1
Static Systems
2.6.2
Dynamic Systems
2.7
Centralities
2.8
Messages Dissemination
2.9
Leader Election
2.9.1
Classical Leader Election
2.9.2
Eventual Leader Election
2.10
Conclusion
3
Related Work
3.1
Classical Leader Election Algorithms
3.1.1
Static Systems
3.1.2
Dynamic Systems
3.2
Eventual Leader Election Algorithms
3.2.1
Static Systems
3.2.2
Dynamic Systems
3.3
Conclusion
4
Topology Aware Leader Election Algorithm for Dynamic Networks
4.1
System Model and Assumptions
4.1.1
Node states and failures
4.1.2
Communication graph
4.1.3
Channels
4.1.4
Membership and nodes identity
4.2
Topology Aware Leader Election Algorithm
4.2.1
Pseudo-code
4.2.2
Data structures, variables, and messages (lines 1 to 6)
4.2.3
Initialization (lines 7 to 11)
4.2.4
Periodic updates task (lines 12 to 16)
4.2.5
Connection (lines 20 to 23)
4.2.6
Disconnection (lines 24 to 27)
4.2.7
Knowledge reception (lines 28 to 38)
4.2.8
Updates reception (lines 39 to 53)
4.2.9
Pending updates (lines 54 to 65)
4.2.10
Leader election (lines 17 to 19)
4.2.11
Execution examples
4.3
Simulation Environment
4.3.1
Algorithms
4.3.2
Algorithms Settings
4.3.3
Mobility Models
4.4
Evaluation
4.4.1
Metrics
4.4.2
Instability
4.4.3
Number of messages sent per second
4.4.4
Path to the leader
4.4.5
Fault injection
4.5
Conclusion
5
Centrality-Based Eventual Leader Election in Dynamic Networks
5.1
System Model and Assumptions
5.1.1
Node states and failures
5.1.2
Communication graph
5.1.3
Channels
5.1.4
Membership and nodes identity
5.2
Centrality-Based Eventual Leader Election Algorithm
5.2.1
Pseudo-code
5.2.2
Data structures, messages, and variables (lines 1 to 4)
5.2.3
Initialization (lines 5 to 7)
5.2.4
Node connection (lines 8 to 17)
5.2.5
Node disconnection (lines 18 to 23)
5.2.6
Knowledge update (lines 24 to 34)
5.2.7
Neighbors update (lines 35 to 41)
5.2.8
Information propagation (lines 42 to 47)
5.2.9
Leader election (lines 48 to 52)
5.3
Simulation Environment
5.3.1
Algorithms Settings
5.3.2
Mobility Models
5.4
Evaluation
5.4.1
Metrics
5.4.2
Average number of messages sent per second per node
5.4.3
Average of the median path to the leader
5.4.4
Instability
5.4.5
Focusing on the 60 meters range over time
5.4.6
A comparative analysis with Topology Aware
5.5
Conclusion
6
Conclusion and Future Work
6.1
Contributions
6.2
Future Directions
A
Appendix
A.1
Energy consumption per node
A.1.1
Simulation environment
A.1.2
Algorithms settings
A.1.3
Mobility Models
A.1.4
Metric
A.1.5
Performance Results
Home
•
PhD Thesis
•
About