1 / 24

Name Services

Name Services. Bina Ramamurthy. Introduction. In a distributed system names are used to refer to a wide variety of resources such as computers, services, remote objects, and files as well as users. Names facilitate communication and resource sharing.

boris
Download Presentation

Name Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Name Services Bina Ramamurthy B.Ramamurthy

  2. Introduction • In a distributed system names are used to refer to a wide variety of resources such as computers, services, remote objects, and files as well as users. • Names facilitate communication and resource sharing. • Names are used for identification as well as for describing attributes. • Naming Service: provides data about named objects in a distributed systems. • Directory and discovery service: locates objects that satisfy a given description. • We will discuss services needed to look up resources from names and description. B.Ramamurthy

  3. Names, Addresses and other attributes • Any process that requires access to a specific resource must posses a name or identifier for it. Ex: URL http:://www.cdk3.net/ • A name has to be looked up before it can be used. • A name is said to be resolved when it is translated into data about the resource or object. B.Ramamurthy

  4. Names and Binding • Names are bound to the attributes of named objects (and not to any specific implementations.) • The association between a name and an object is called binding. • Services are written to map between names and the attributes of objects they refer to. • Example: domain name Domain name Service (DNS) maps  attributes of the host computer B.Ramamurthy

  5. URL http://www.cdk3.net:8888/WebExamples/earth.html DNS lookup Resource ID (IP number, port number, pathname) 55.55.55.55 8888 WebExamples/earth.html Web server Network address file 2:60:8c:2:b0:5a Socket Composed naming domains used to access a resource from a URL B.Ramamurthy

  6. Composed Domain Name • A URL is composed of names from three naming domains: IP (IP address), port number (IPC domain, socket), and file name (file system). • All three have to successfully resolved to get at the resource. • An IP address must be looked up to obtain the network address such as an Ethernet address. Similarly port number and file name have to be resolved by the file system. • In the last slide an URL is resolved by a DNS into IP address, and then ARP into Ethernet address. B.Ramamurthy

  7. Universal Resource (L,I,N and C) • URL: universal Resource Locator is the principle means of identifying web resources. • Advantages: Scalability and efficiency. • Disadvantages: dangling links on removal of a resource. • URLs are particular type of URI (UR Identifier). Another type of URI is URN (UR Name). • URNs are intended to solve the dangling link problem and to provide richer modes of finding resources on the web. • URN lookup service will provide URN given a URL. • Of course the owner registers the resource with the lookup service when it moves. • URC (UR Characteristics) is for looking up a resource that matches a description of one or more of its attributes; Ex: …’author=Leslie Lamport’ B.Ramamurthy

  8. Universal Resource Names • Is an abstraction over URLs. • A URN is of the form: urn:nameSpace:nameSpace-specificName urn:doi:10.555/music-pop-1234 Refers to publication called music-pop-1234 in the naming scheme of publisher known as 10.555 in the Digital Object Identifier (doi) scheme (www.doi.org). Another urn example: urn:dcs.gormenghast.ac.uk:TR2000-56 can be used to get the latest information about technical report TR2000-56 registered with the URL lookup service gormenghast.ac.uk department of CS (dcs) B.Ramamurthy

  9. Server Types • Connectionless vs. connection-oriented • Stateless vs. stateful • Concurrent processing vs. iterative processing Iterative Connection-oriented Iterative Connectionless Concurrent Connection-oriented Concurrent Connectionless B.Ramamurthy

  10. Name Service • A name service stores a collection of one or more naming contexts – sets of bindings between textual names and attributes for objects such as users, computers, services and remote objects. (Definition) • Major operation: resolve a name: to look up attributes from a given name. (Operational Requirements) • Other operations required: creating new binding, deleting bindings, listing bound names and adding and deleting contexts. B.Ramamurthy

  11. General Name Service Requirements • Originally Name Service was simple since it was to bind names to addresses in a single domain. Interconnection of networks and increased scale of distributed systems have produced a much larger name-mapping problem. • To handle arbitrary number of names and to server arbitrary number of administrative organizations. • A long lifetime. • High availability • Fault isolation • Tolerance of mistrust B.Ramamurthy

  12. Design Issues • Main design issues for Name services are: (Taking DNS as case study) • Name spaces • Name Resolution • The domain name system B.Ramamurthy

  13. Name Spaces • A name space is a collection of all valid names recognized by a particular service. • Name may be bound to an object or unbound. • Name spaces require syntactic definition. • For example “two” is not an unix process name whereas 2 is, and … is not acceptable as a DNS computer name. • Name spaces are typically hierarchical. • DNS names are called domain names; examples: bruno.dcs.qmw.ac.uk (computer) dcs.qmw.ac.uk, com, purdue.edu (domains). • Not case sensitive: ac.uk is same as AC.UK B.Ramamurthy

  14. Name Space (contd.) • Aliases: DNS allows aliases in which one domain name may stand for another. • A very popular alias is that for a web server: www.dcs.qmw.ac.uk stands for copper.dcs.qmw.ac.uk • This has the advantage that the clients can refer to the web server by one generic name. B.Ramamurthy

  15. Combining Name Spaces • DNS provides a global and homogeneous name space in which a given name refers to the same entity, no matter which process on which computer looks up the name. • But some other name services allow distinct name space and even heterogeneous name spaces to be embedded in them. Issues: merging, heterogeneity, and customization. • We will look at heterogeneity in DCE. B.Ramamurthy

  16. DCE’s Heterogeneous Namespace • DCE allows heterogeneous namespaces to be embedded within it. DCE names are called junctions which are similar to mount points in NFS and Unix. • Example consider: • /…/dcs.qmw.ac.uk/principals/Jean.Dollimore • /…/dcs.qmw.ac.uk denotes a context called a cell. • Next component “principals” is a junction which is a context containing security principals in which final component is Jean.Dollimore can be looked up. • Another Example: /…/dcs.qmw.ac.uk/files/pub/reports/TR2000-99 where files is the junction point. • Principals and files are the root for the heterogeneous names space. B.Ramamurthy

  17. Name Resolution • Resolution is an iterative process whereby a name is repeatedly presented to the naming contexts. • A naming context either maps name on to a set of primitive attributes or it maps it on to a further naming context and a derived name to be presented to the context. • Example1: /etc/passwd in which ‘etc’ is presented to context / and ‘paswd is presented to context /etc. • Example 2: www.dcs.qmw.ac.uk in which the alias is resolved to another domain name such as copper.dcs.qmw.ac,uk which is further resolved to produce IP address. B.Ramamurthy

  18. Name Servers and Navigation • Any name service stores a very large database. • Data is partitioned into servers according to its domain. In DNS most of the entries are local computers. • Partitioning of the data implies that the local name server cannot answer all the enquiries without the help of other name servers. For example, the name server in the cse.buffalo.edu would not be able to IP address of a computer in cs.purdue.edu domain unless it is cached. • Process of locating naming data from among more than one name server in order to resolve a name is called navigation. Ex: Iterative Navigation B.Ramamurthy

  19. NS2 2 Name 1 NS1 servers Client 3 NS3 A client iteratively contacts name servers NS1–NS3 in order to resolve a name Iterative navigation B.Ramamurthy

  20. NS2 NS2 2 2 4 3 1 1 NS1 NS1 client client 3 5 4 NS3 NS3 Non-recursive Recursive server-controlled server-controlled A name server NS1 communicates with other name servers on behalf of a client Non-recursive and recursive server-controlled navigation B.Ramamurthy

  21. Caching • Client name resolution software and servers maintain a cache of previous name resolutions. • Server may use data from its own cache or other server cache it is authorized to access. • Caching is key to performance and fault tolerance. B.Ramamurthy

  22. The Domain Name System • The Domain Name System (DNS) is a name service whose principal naming database is used across the internet. • It was designed by Mockapetris(1987) to replace the original internet naming scheme which did not scale well. • Objects named by DNS are primarily computers for which IP addresses are stored as attributes. • Millions of names are bound by Internet DNS, lookup are made from around the world. This is by hierarchical partitioning of name database, replication and caching. B.Ramamurthy

  23. Domain Names • Top level organizational domains are partitioned geographically and organizationally. edu , uk • DNS Queries : host name resolution and well known services. B.Ramamurthy

  24. a.root-servers.net (root) uk purdue.edu ns1.nic.uk (uk) yahoo.com ns.purdue.edu (purdue.edu) co.uk ns0.ja.net ac.uk (ac.uk) * .purdue.edu ic.ac.uk qmw.ac.uk *.dcs.qmw.ac.uk dcs.qmw.ac.uk *.ic.ac.uk *.qmw.ac.uk alpha.qmw.ac.uk dns0.dcs.qmw.ac.uk dns0-doc.ic.ac.uk (qmw.ac.uk) (dcs.qmw.ac.uk) (ic.ac.uk) Figure 9.4DNS name servers Note: Name server names are in italics, and the corresponding domains are in parentheses. Arrows denote name server entries B.Ramamurthy

More Related