Category: Education

Presentation Description

No description available.


Presentation Transcript

Slide 1:

Distributed Web Systems Name Services Lecturer Department University

Slide 2:

Outline Naming in distributed systems Name services Case study: DNS

Slide 3:

Nam ing Naming is fundamental to DS: any process requiring access to a specific resource must poses a name or identifier for that resource Examples: file names, URLs, remote object reference Name vs address: address identifies location of an object Binding = associating name with an object Resolving = translating name into data about the object (e.g. its address etc)

Slide 4:

Example: access to a resource from a URL file Web server Socket URL Resource ID (IP number, port number, pathname) WebExamples/earth.html 8888 DNS lookup (Ethernet) Network address 2:60:8c:2:b0:5a ARP lookup © Pearson Education 2005

Slide 5:

Name services Name service : stores a collection of sets (aka naming contexts) of bindings between names and attributes for objects resolve names, also create/delete/edit bindings Name space: the collection of all valid names recognised by a particular name service (e.g. all valid DNS names, all valid file names) Naming domain: a name space for which there exists a single overall administrative authority for assigning names within it

Slide 6:

Requirements for name spaces Allow simple but meaningful names to be used Potentially infinite number of names Structured to allow similar subnames without clashes to group related names Allow re-structuring of name trees for some types of change, old programs should continue to work Management of trust

Slide 7:

Name resolution Large-scale name services do not store all bindings on a single server hence, may need to locate the correct server the process is called navigation Multicast navigation Iterative navigation : Client 1 2 3 A client iteratively contacts name servers NS1–NS3 in order to resolve a name NS2 NS1 NS3 Name servers

Slide 8:

Name resolution (contd.) Iterative server-controlle d resolution: 1 2 3 4 client NS2 NS1 NS3 Non-recursive server-controlled Recursive server-controlled 1 2 3 5 4 client NS2 NS1 NS3 A name server NS1 communicates with other name servers on behalf of a client © Pearson Education 2005

Slide 9:

Domain Name System (DNS) A distributed naming database Name structure reflects administrative structure of the Internet Rapidly resolves domain names to IP addresses exploits caching heavily typical query time ~100 milliseconds Scales to millions of computers partitioned database caching Resilient to failure of a server replication

Slide 10:

DNS name resolution (root) ( ( ( ( ( uk ... * * * * (uk) ... .... Basic DNS algorithm for name resolution : Look for the name in the local cache Try a superior DNS server, which responds with: another recommended DNS server the IP address (which may not be entirely up to date) resolver © Pearson Education 2005

Slide 11:

DNS name resolution (contd.) DNS naming data are subdivided into zones : data for names in a domain less any sub-domains administered by lower-level authorities names and addresses of at least two servers providing authoritative data for the zone names and addresses of servers that hold authoritative data for delegated sub-domains Primary and secondary servers Non-authoritative servers caching time to leave (specified by the zone data)

Slide 12:

Issues with DNS Name tables change infrequently, but when they do, caching can result in the delivery of stale data. Clients are responsible for detecting this and recovering Its design makes changes to the structure of the name space difficult. For example: merging previously separate domain trees under a new root moving subtrees to a different part of the structure (e.g. if Scotland became a separate country, its domains should all be moved to a new country-level domain. Some systems try to resolve this: GNS , a research system that solves the above issues (see the textbook)

Slide 13:

Directory services DNS stores collections of pairs <name, attribute> that can be looked up by name What if we want to lookup by the attribute value ? Yellow pages vs white pages Directory services let you do that Examples X.500, LDAP UDDI

Slide 14:

Summary Naming is fundamental to distributed systems: naming computers, resources, objects, etc. Name service – a component of a distributed system storing mappings between names and object attributes (such as addresses) Case studies: Naming: DNS Directories: X.500, LDAP, UDDI Questions