Presentation is loading. Please wait.

Presentation is loading. Please wait.

Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014.

Similar presentations


Presentation on theme: "Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014."— Presentation transcript:

1 Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014

2 New Topic: Naming Names are used to share resources, uniquely identify entities and refer to locations Need to map from name to the entity it refers to – E.g., Browser access to www.cnn.com – Use name resolution Differences in naming in distributed and non- distributed systems – Distributed systems: naming systems is itself distributed How to name mobile entities?

3 Two Approaches for Creating Directory Services Hierarchical Approach – We will focus on this P2P Approach – – Key is the name of the object – Value is whatever key resolves to

4 Distributed Hash Tables General Mechanism Resolving key 26 from node 1 and key 12 from node 28 in a Chord system.

5 Hierarchical Approaches (1) Figure 5-5. Hierarchical organization of a location service into domains, each having an associated directory node.

6 Example: File Names Hierarchical directory structure (DAG) – Each file name is a unique path in the DAG – Resolution of /home/steen/mbox a traversal of the DAG File names are human-friendly

7 Resolving File Names across Machines Remote files are accessed using a node name, path name NFS mount protocol: map a remote node onto local DAG – Remote files are accessed using local names! (location independence) – OS maintains a mount table with the mappings

8 Name Space Distribution Naming in large distributed systems – System may be global in scope (e.g., Internet, WWW) Name space is organized hierarchically – Single root node (like naming files) Name space is distributed and has three logical layers – Global layer: highest level nodes (root and a few children) Represent groups of organizations, rare changes – Administrational layer: nodes managed by a single organization Typically one node per department, infrequent changes – Managerial layer: actual nodes Frequent changes – Zone: part of the name space managed by a separate name server

9 Name Space Distribution Example An example partitioning of the DNS name space, including Internet- accessible files, into three layers

10 Name Space Distribution A comparison between name servers for implementing nodes from a large- scale name space partitioned into a global layer, as an administrational layer, and a managerial layer. The more stable a layer, the longer are the lookups valid (and can be cached longer)

11 The DNS Name Space Figure 5-19. The most important types of resource records forming the contents of nodes in the DNS name space.

12 Iterative Name Resolution

13 Recursive Name Resolution

14 Example: The Domain Name System Comparison between recursive and iterative name resolution with respect to communication costs.

15 X.500 Directory Service OSI Standard Developed by ITU (International Telecommunication Unit) ISO is also a partner assisting in developing the standards Directory Service: Special kind of naming service where: – The primary use of a directory service is to provide a systematic set of records, usually organized in a hierarchical structure. – Clients can look up entities based on attributes instead of full name – Real-world example: Yellow pages: look for a dentist

16 Directory Structure

17 X.500 Directory Service Difference between DNS and X.500 Directory Service DNS is very simple key-value look up service X.500 enables attribute based queries, examples; – Return all records matching the query – Return all machines in cs department You can even use multiple attributes for queries

18 X.500 Infrastructure A directory server is called Directory System Agent (DSA) A client accessing an X.500 directory is called a Directory User Agent (DUA) A client may also be a Lightweight Directory A ccess Protocol (LDAP) client

19 X.500 Infrastructure It has a decentralized maintance, each site running X.500 is only responsible for its own local part of the directory, updates can be instantly done. Data management functions for viewing, adding, modifying, and deleting directory objects. Search capabilities for customizing complete data queries or complex queries.

20 LDAP Lightweight Directory Access Protocol (LDAP) – X.500 too complex for many applications – LDAP: Simplified version of X.500 – Widely used for Internet services – Application-level protocol, uses TCP port 389 – Lookups and updates can use strings instead of OSI encoding – Use master servers and replicas servers for performance improvements

21 LDAP Examples – Example LDAP implementations: Active Directory (Windows 2000) Active Directory Domain Services (AD DS) 2008den sonra Novell Directory services iPlanet directory services (Netscape) OpenLDAP Typical uses: user profiles, access privileges, network resources – Basic functions User account management User authentication Computer account management Domain-wide services

22 X.500 Relationship with LDAP LDAP originally was developed for simple access to an X.500 directory. LDAP has later developed into an actual server specification based on X.500 model.

23 The LDAP Name Space -I A simple example of a LDAP directory entry using X.500 naming conventions

24 The LDAP Name Space -II


Download ppt "Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014."

Similar presentations


Ads by Google