This chapter has presented well-known concepts of distributed computing, systems, and algorithms such as the definition of the safety and liveness properties, the timing models, which vary from synchronous to asynchronous, communication channel types related to reliability and time bounds, and some failure models that range from crash to arbitrary failures. The communication graph with the specificity of static and dynamic systems were described, including a discussion of some centrality approaches, especially the closeness one, as well as the flooding and probabilistic gossip protocols.
Both the classical and eventual leader election problems were described, the latter including the Ω failure detector implementation. The consensus problem and its properties are described and an overview of a few leader based consensus algorithm is given. The concepts and models introduced in this chapter will be useful in the following chapters.