5.3. Structured Naming Advanced Operating Systems Fall 2017

Slides:



Advertisements
Similar presentations
EECS122 - UCB 1 CS 194: Distributed Systems: Naming Computer Science Division Department of Electrical Engineering and Computer Sciences University of.
Advertisements

Dr. Kalpakis CMSC621 Advanced Operating Systems Naming.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Naming (2) DISTRIBUTED.
Naming Computer Engineering Department Distributed Systems Course Asst. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2014.
Distributed Systems Principles and Paradigms Chapter 04 Naming.
Naming Chapter 4. Names, Addresses, and Identifiers Name: String (of bits/characters) that refers to an entity (e.g. process, file, device, …) Access.
Naming in Distributed System Presented by Faraz Rasheed & Uzair Ahmed RealTime & Multimedia Lab Kyung Hee University, Korea.
The implementation of a name space
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
CS 582 / CMPE 481 Distributed Systems Naming Class Overview Why naming? Terminology Naming Fundamentals Name Services Case Studies –DNS –GNS.
Computer Science Lecture 9, page 1 CS677: Distributed OS Today: Naming Names are used to share resources, uniquely identify entities and refer to locations.
Naming Names in computer systems are used to share resources, to uniquely identify entities, to refer to locations and so on. An important issue with naming.
NamingCS-4513, D-Term Naming CS-4513 Distributed Computing Systems (Slides include materials from Operating System Concepts, 7 th ed., by Silbershatz,
Distributed Systems CS Naming – Part II Lecture 6, Sep 26, 2011 Majd F. Sakr, Vinay Kolar, Mohammad Hammoud.
Processes After today’s lecture, you are asked to know
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
NamingCS-4513, D-Term Naming CS-4513 Distributed Computing Systems (Slides include materials from Operating System Concepts, 7 th ed., by Silbershatz,
Distributed Systems Naming Chapter 5.
Naming Names in computer systems are used to share resources, to uniquely identify entities, to refer to locations and so on. An important issue with naming.
DNS. Outline r Domain Name System r DNS Hierarchy r Resolution.
Chapter 25 Domain Name System
Distributed Computing COEN 317 DC2: Naming, part 1.
ICS362 Distributed Systems Dr Ken Cosh Week 5. Review Communication – Fundamentals – Remote Procedure Calls (RPC) – Message Oriented Communication – Stream.
Computer Science Lecture 9, page 1 CS677: Distributed OS Today: Naming Names are used to share resources, uniquely identify entities and refer to locations.
Naming. Names play a very important role in all computer system. A name is a string of bits or characters that used to refer to an entity – eg:- recourse.
5.1 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Naming Chapter 4. Name Spaces (1) A general naming graph with a single root node.
Naming Chapter 4.
Distributed Computing COEN 317 DC2: Naming, part 1.
Naming CSCI 4780/6780.
COMP 655: Distributed/Operating Systems Summer 2011 Dr. Chunbo Chu Week 5: Naming 10/12/20151Distributed Systems - COMP 655.
Fall 2007cs4251 Distributed Computing Umar Kalim Dept. of Communication Systems Engineering 10/12/2007.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
ADVANCED OPERATING SYSTEMS STRUCTURED NAMING BY KANNA KARRI.
Distributed Systems CS Naming (Cont’d) Lecture 7, Sep 18, 2013 Mohammad Hammoud.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Naming CSCI 6900/4900. Mounting Mounting – Merging different namespaces transparently File system example –Directory node of one namespace stores identifier.
Lecture 9: Name and Directory Servers CDK4: Chapter 9 CDK5: Chapter 13 TVS: Chapter 5.
Naming CSCI 6900/4900. Names & Naming System Names have unique importance –Resource sharing –Identifying entities –Location reference Name can be resolved.
Naming CSCI 4780/6780. Name Space Implementation Naming service – A service that lets users to add/delete and lookup names In large distributed systems.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Chapter 5 Naming (II) Speaker : Jyun-Yao Huang 1 Application and Practice of Distributed Systems.
Domain Name System: DNS To identify an entity, TCP/IP protocols use the IP address, which uniquely identifies the Connection of a host to the Internet.
Naming in Distributed File Systems Tao Zhang Advanced Operating System Professor: Dr. Yanqing Zhang.
Slide 1 Structured Naming. Slide 2 Given Credit Where It Is Due The following slides are borrowed from Dr. Katerina Goseva-Popstojanova at West Virginia.
CS 372 COMPUTER COMMUNICATION AND NETWORKS
Chapter 25 Domain Name System.
Distributed Systems CS
Naming Chapter 4.
Naming A name in a distributed system is a string of bits or characters used to refer to an entity. To resolve name a naming system is needed.
CSC-8320 Advanced Operating System
Lecture 7: Name and Directory Servers
Lecture 7: Name and Directory Servers
Application layer Lecture 7.
Naming (1) Chapter 4.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Lecture 8: Name and Directory Servers
Distributed Systems CS
Naming in Distributed System
Distributed Systems CS
Distributed Systems CS
Distributed Systems CS
Distributed Systems CS
Distributed Systems CS
Distributed Systems CS
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Presentation transcript:

5.3. Structured Naming Advanced Operating Systems Fall 2017 By Raghunandan Gardas (Panther ID : 002302325)

Agenda Structured Naming Name Spaces Name Resolution Closure Mechanism Linking and Mounting Implementation of Name Space Name Space Distribution Implementation of Name Resolution

What is Structured Naming? How to locate an entity given its human‐friendly name? Human‐friendly names are structured names composed of several parts – Example: file names, host names Structured name – sequence of words Name spaces for structured names – labeled, directed graphs Example: UNIX file system, DOS file system Example: DNS (Domain Name System) Distributed name resolution Multiple name servers

Name Spaces Names are commonly organized into what is called a name space. Entities in a structured name space are named by a path name. A leaf node represents a named entity (e.g., files) and has no outgoing edges. A directory node has a number of outgoing edges, each labeled with a name. Each path in a naming graph can be referred to by the sequence of labels corresponding to the edges in that path, such as Ni: <label-I, label-2, ..., label-n>

Name Spaces no:<home, steen, mbox>, It is common practice to use its string representation /home/steen/mbox. Node n5 can be referred to by Ihome/steenlkeys as well as /keys.

Name Resolution The process of looking up a name is called Name Resolution. Consider a path name such as Ni <label v. label g, ... .label:>. The name label v is looked up in the directory table, and which returns the identifier of the node to which label v refers. Resolution then continues at the identified node by looking up the name label g. in its directory table, and so on. Resolution stops at the last node referred to by label l;.

Name Resolution Closure Mechanism Knowing how and where to start name resolution is generally referred to as a closure mechanism. It is necessary to already have access to the directory table of the root node of the appropriate naming graph. Example: use of the string "0031204430784". Many people will not know what to do with these numbers, unless they are told that the sequence is a telephone number. That information is enough to start the resolution process, in particular, by dialing the number.

Name Resolution 2. LINKING An alias is another name for the same entity. There are basically two different ways to implement an alias. The first approach is to simply allow multiple absolute paths names to refer to the same node in a naming graph. Examples: /keys and /home/steen/keys. This approach uses hard links.

Name Resolution 2. LINKING This principle corresponds to the use of symbolic links. The path name/home/steen/keys, which refers to a node containing the absolute path name /keys, is a symbolic link to node n5 .

Name Resolution 2. MOUNTING Used when there is a mounted file system. The directory node in the foreign name space is called a mounting point. The mounting point is the root of a name space. To mount a foreign name space in a distributed system requires at least the following information: The name of an access protocol. The name of the server. The name of the mounting point in the foreign name space.

Name Resolution 2. MOUNTING Now consider the name /remote/vu/mbox. This name is resolved by starting in the root directory on the client's machine and continues until the node /remote/vu is reached.

Name Resolution 2. MOUNTING The process of name resolution then continues by returning the URL nfs:l/flits.cs. vu.nl//home/steen/ Which in turn leading the client machine to contact the file server flits.cs. vu.nl by means of the NFS protocol, and to subsequently access directory /home/steen. Name resolution can then be continued by reading the file named mbox in that directory, after which the resolution process stops.

Implementation of Name Space Name Space forms heart of naming service. Name Servers implements Name Space. Large scale systems implement name space hierarchically. Such name spaces are partitioned into logical layers. 3 layers are used for such name spaces.

Name Space Distribution Name spaces for large‐scale distributed systems are organized hierarchically. Name space is distributed and has three logical layers 1. Global layer: highest level nodes (root and its children). Represent groups of organizations, rare changes 2. Administrational layer: nodes managed by a single organization. Typically one node per department, infrequent changes 3. Managerial layer: nodes that changes frequently. Nodes representing hosts, user‐defined directories and files. Zone: part of the name space implemented by a separate name server

Name Space Distribution

Name Space Distribution 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.

Implementation of Name Resolution Each client has access to a local name resolver, which is responsible for ensuring that the name resolution process is carried out. There are 2 ways to implement Name Resolution.

1. Iterative Name Resolution Here Name Resolver handles complete name to root server. The root server will resolve the path name as far as it can, and return the result to the client. At that point, the client passes the remaining path name to that name server. This process is iterated until result is obtained. Example: root: «nl, VU, CS, ftp, pub, globe, index.html>

1. Iterative Name Resolution

2. Recursive Name Resolution Instead of returning each intermediate result back to the client's name resolver. With recursive name resolution, a name server passes the result to the next name server it finds. It will finally return index.html

2. Recursive Name Resolution

Advantages and Drawbacks Caching results is more effective compared to iterative resolution. Communication costs may be reduced. 2. Drawbacks High performance name servers may be required to handle complete resolution of a path name.

Comparision

References Distributed Systems – Principles and Paradigms by Andrew S. Tanenbaum and Maarten Van Steen. A survey on Authorization in Distributed Systems: Information Storage, Data Retrieval and Trust Evaluation by Ava Ahadipur, Martin 2017 IEEE Trustcom/Big Data.

THANK YOU!!