Distributed System

Only available on StudyMode
  • Download(s) : 14
  • Published : April 28, 2013
Open Document
Text Preview
Distributed Systems 6. Name Services

Werner Nutt

1

Naming Concepts
Names = strings used to identify objects (files, computers, people, processes, objects) Textual names (human readable) – used to identify individual services, people • email address: Hans.Mair@inf.unibz.it • URL: www.google.com

– or groups of people or objects
• mailing lists: professors@unibz.it • mail domains (if there are several mail exchangers)

2

Naming Concepts (cntd)
Numeric addresses (identify the location of an object) – locate individual resources, e.g. 193.206.186.100 (IP host address)

– special case: group addresses, e.g.
multicast and broadcast addresses: IP Multicast, Ethernet

Object identifiers – “pure” names (=bit patterns), usually numeric and large • never reused (include timestamp) • used for identification purposes No real distinction between names and addresses. Both must be looked up to obtain lower-level data (= name resolution). 3

Examples of Name Services
File system – maps file name to file RMI registry – binds remote objects to symbolic names DNS (=Domain Name Service) – maps domain names to IP addresses – scalable, can handle change X.500/LDAP directory service – maps person’s name to email address, phone number 4

Name Resolution on the WWW
URL http://www.inf.unibz.it:8888/~mair/Photos/hans.jpg DNS lookup

Resource ID (IP number, port number, pathname) 8888 ~mair/Photos/hans.jpg

193.206.186.198

ARP lookup (Ethernet) Network address 2:60:8c:2:b0:5a Socket file

Web server
5

Names and Resources
Currently, different name systems are used for each type of resource: resource file process port name pathname process id port number identifies file within a given file system process on a given computer IP port on a given computer

Uniform Resource Identifiers (URI) identify arbitrary resources: Uniform Resource Locator (URL): locates resource – typed by the scheme field (http, ftp, nfs, etc.) – part of the name is service-specific – resources cannot be moved between domains Uniform Resource Name (URN): names resource 6

Name Spaces
Name space = collection of all valid names recognised by a service with – a syntax for specifying names, and – rules for resolving names (e.g., left to right)

Naming context = maps a name to primitive attributes directly, or to another context and derived name (usually by prefixing) – telephone no: country, area, number – Internet host names: contexts = domains – Unix file system: contexts = directories

7

Name Spaces (cntd)
Binding – associating a name to an object – binding names to attributes, one of which may be address Naming domain – has an authority that assigns names to objects within a name space or context • sysadmin assigns login names • Host names are assigned in a domain

– object may be registered more than once within context Multiple names – alias (alternative name for an object, e.g. www, ftp, etc.) – symbolic name (alternative name which maps to a path name in the name space, e.g., symbolic link for file)

8

Hierarchic Name Spaces
Sequence of name tokens resolved in different context
– syntax: name token (text string) + delimiter – DNS: inf.unibz.it – Unix: /usr/bin

Name structure reflects organisational structure
– name changes if object migrates – names can be used relative to context or absolute – local contexts managed in a distributed fashion

Examples
– domain names, Unix file system

9

Flat Name Spaces
Single global context and naming authority for all names
– computer serial number – Ethernet address – remote object reference (IP address, port, time, object number, interface id)

Names not meaningful
– difficult to resolve (no tree hierarchy) – easy to create – easy to ensure uniqueness (timestamps)

10

Name Resolution
Iteratively present name to a naming context
– start with initial naming context – repeat as long as contexts + derived names are returned – aliases can introduce...
tracking img