Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 5 Naming
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Entity 1 Name: location independent Access point 1 (address 1) Entity 2 Access point 2 (address 2) changeable Names, Identifiers, And Addresses I
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Names, Identifiers, And Addresses II Properties of a true identifier: An identifier refers to at most one entity. Each entity is referred to by at most one identifier. An identifier always refers to the same entity Is IP address a good identifier? Is address a good identifier?
Human-friendly names web.cs.ua.edu mail.cs.ua.edu aliases IP addresses/MAC addresses Locations Attributes Broadcast and multicast Binding between two, or name resolution (e.g., URL to IP via DNS, IP to MAC via ARP) Forward Lookup Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Names, Identifiers, And Addresses III (not so true) identifiers Locating an entity
Flat naming: locate entity Locate an entity via broadcasting or multicasting (when the network is a broadcast environment, like Ethernet, wireless net) (or, in a point to point network, use a multicast address for all the entities in a group; then use multicast routing protocol) (applications: all the replica are in the same multicast group) Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved
Approach 1: Mobile entity leaves behind a reference (forwarding pointer) to new location; can form a chain of forwarding pointers; Locate the entity by following the chain. Approach 2: Short cut the forwarding chain; Approach 3: Use home location (Home-based approach, e.g. Mobile IP) Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Flat naming: locate mobile entity
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Forwarding Pointers (1) Figure 5-1. The principle of forwarding pointers using (client stub, server stub) pairs.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Forwarding Pointers (2) Figure 5-2. Redirecting a forwarding pointer by storing a shortcut in a client stub.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Forwarding Pointers (3) Figure 5-2. Redirecting a forwarding pointer by storing a shortcut in a client stub.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Home-Based Approaches Figure 5-3. The principle of Mobile IP.
Distributed Hash Tables: See separate slides and next page. Hierarchical approach Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Flat naming: more on locating
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Distributed Hash Tables General Mechanism Figure 5-4. Resolving key 26 from node 1 and key 12 from node 28 in a Chord system.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Approaches (1) Figure 5-5. Hierarchical organization of a location service into domains, each having an associated directory node.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Approaches (2) Figure 5-6. An example of storing information of an entity having two addresses in different leaf domains.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Approaches (3) Figure 5-7. Looking up a location in a hierarchically organized location service. Note: name is flat, not the domain name!
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Approaches (4) Figure 5-8. (a) An insert request is forwarded to the first node that knows about entity E.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Approaches (5) Figure 5-8. (b) A chain of forwarding pointers to the leaf node is created.
Name space naming graph, a name be a path name Name resolution Examples: Unix file system; Internet domain name system (DNS) Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Structured Naming
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Name Spaces (1) Figure 5-9. A general naming graph with a single root node. Two path names for n5
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Name Spaces (2) Figure The general organization of the UNIX file system implementation on a logical disk of contiguous disk blocks.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Linking and Mounting (1) Figure The concept of a symbolic link explained in a naming graph.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Linking and Mounting (2) Information required to mount a foreign name space in a distributed system The name of an access protocol. The name of the server. The name of the mounting point in the foreign name space.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Linking and Mounting (3) Figure Mounting remote name spaces through a specific access protocol.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Name Space Distribution (1) Figure An example partitioning of the DNS name space, including Internet-accessible files, into three layers.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Name Space Distribution (2) Figure A comparison between name servers for implementing nodes from a large-scale name space partitioned into a global layer, an administrational layer, and a managerial layer.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Implementation of Name Resolution (1) Figure The principle of iterative name resolution.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Implementation of Name Resolution (2) Figure The principle of recursive name resolution.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Implementation of Name Resolution (3) Figure Recursive name resolution of. Name servers cache intermediate results for subsequent lookups.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Example: The Domain Name System Figure The comparison between recursive and iterative name resolution with respect to communication costs.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved The DNS Name Space Figure The most important types of resource records forming the contents of nodes in the DNS name space.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DNS Implementation (1) Figure An excerpt from the DNS database for the zone cs.vu.nl.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DNS Implementation (2) Figure An excerpt from the DNS database for the zone cs.vu.nl.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DNS Implementation (3) Figure Part of the description for the vu.nl domain which contains the cs.vu.nl domain.
Directory services. Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Attribute-Based Naming
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Implementations: LDAP (1) Figure A simple example of an LDAP directory entry using LDAP naming conventions.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Implementations: LDAP (3) Figure (b) Two directory entries having Host_Name as RDN.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Hierarchical Implementations: LDAP (2) Figure (a) Part of a directory information tree.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Mapping to Distributed Hash Tables (1) Figure (a) A general description of a resource. (b) Its representation as an AVTree.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Mapping to Distributed Hash Tables (2) Figure (a) The resource description of a query. (b) Its representation as an AVTree.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Semantic Overlay Networks Figure Maintaining a semantic overlay through gossiping.