Part 2 of the Ebook Distributed systems (3rd Edition) has chapters naming, coordination, replication, fault tolerance, and security separation has been made between basic material and more specific subjects. Download this ebook to see more. | Chapter 5 Naming Names play an important role in all computer systems. They are used to share resources to uniquely identify entities to refer to locations and more. An important issue with naming is that a name can be resolved to the entity it refers to. Name resolution thus allows a process to access the named entity. To resolve names it is necessary to implement a naming system. The difference between naming in distributed systems and nondistributed systems lies in the way naming systems are implemented. In a distributed system the implementation of a naming system is itself often distributed across multiple machines. How this distribution is done plays a key role in the efficiency and scalability of the naming system. In this chapter we concentrate on three different important ways that names are used in distributed systems. First we consider so-called flat-naming systems. In such systems entities are referred to by an identifier that in principle has no meaning at all. In addi- tion flat names bare no structure implying that we need special mechanisms to trace the location of such entities. We discuss various approaches ranging from chains of forwarding links to distributed hash tables to hierarchical location services. In practice humans prefer to use readable names. Such names are of- ten structured as is well known from the way Web pages are referred to. Structured names allow for a highly systematic way of finding the server responsible for the named entity as exemplified by the Domain Name System. We discuss the general principles as well as scalability issues. Finally humans often prefer to describe entities by means of various characteristics leading to a situation in which we need to resolve a description by means of the attributes assigned to an entity. As we shall see this type of name resolution is notoriously difficult especially in combination with searching. 237 238 CHAPTER 5. NAMING Names identifiers and addresses Let us start by taking a .