Chapter 9: Name Services. 9.1 Introduction 9.2 Name services and the DNS 9.3 Directory services 9.6 Summary



Similar documents
Naming. Name Service. Why Name Services? Mappings. and related concepts

Slides for Chapter 9: Name Services

CS3250 Distributed Systems

The Domain Name System (DNS)

The Domain Name System (DNS)

The Domain Name System

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Concept. DNS - Domain Name System

Application Protocols in the TCP/IP Reference Model. Application Protocols in the TCP/IP Reference Model. DNS - Domain Name System

Application Protocols in the TCP/IP Reference Model

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace

Lecture 2 CS An example of a middleware service: DNS Domain Name System

Lesson 13: DNS Security. Javier Osuna GMV Head of Security and Process Consulting Division

Understanding DNS (the Domain Name System)

Distributed Systems. 09. Naming. Paul Krzyzanowski. Rutgers University. Fall 2015

INTERNET DOMAIN NAME SYSTEM

Names & Addresses. Names & Addresses. Names vs. Addresses. Identity. Names vs. Addresses. CS 194: Distributed Systems: Naming

Outline. Definition. Name spaces Name resolution Example: The Domain Name System Example: X.500, LDAP. Names, Identifiers and Addresses

Introduction to Network Operating Systems

Copyright

Installing and Setting up Microsoft DNS Server

Networking Domain Name System

DNS Domain Name System

Understand Names Resolution

- Domain Name System -

DNS. Computer Networks. Seminar 12

NET0183 Networks and Communications

Introduction to DNS CHAPTER 5. In This Chapter

Part 5 DNS Security. SAST01 An Introduction to Information Security Martin Hell Department of Electrical and Information Technology

CS 348: Computer Networks. - DNS; 22 nd Oct Instructor: Sridhar Iyer IIT Bombay

How to Add Domains and DNS Records

How to Configure the Windows DNS Server

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer

CS3600 SYSTEMS AND NETWORKS

Domain Name Servers. Domain Types WWW host names. Internet Names. COMP476 Networked Computer Systems. Domain Name Servers

Networking Domain Name System

HTG XROADS NETWORKS. Network Appliance How To Guide: EdgeDNS. How To Guide

Internet-Praktikum I Lab 3: DNS

Domain Name System (DNS)

ECE 4321 Computer Networks. Network Programming

DNS : Domain Name System

Domain Name System Richard T. B. Ma

Chapter 23 The Domain Name System (DNS)

Names vs. Addresses. Flat vs. Hierarchical Space. Domain Name System (DNS) Computer Networks. Lecture 5: Domain Name System

The Application Layer. CS158a Chris Pollett May 9, 2007.

DNS. The Root Name Servers. DNS Hierarchy. Computer System Security and Management SMD139. Root name server. .se name server. .

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 34 DNS & Directory

How To Guide Edge Network Appliance How To Guide:

CS 355. Computer Networking. Wei Lu, Ph.D., P.Eng.

DNS. Computer networks - Administration 1DV202. fredag 30 mars 12

Chapter 24 The Domain Name System (DNS)

DNS Domain Name System

Module 2. Configuring and Troubleshooting DNS. Contents:

The Domain Name System

Domain Name Server. Training Division National Informatics Centre New Delhi

Domain Name System DNS

Windows Active Directory. DNS, Kerberos and LDAP T h u r s d a y, J a n u a r y 2 7, 2011 INLS 576 Spring 2011

CS 43: Computer Networks Naming and DNS. Kevin Webb Swarthmore College September 17, 2015

Copyright International Business Machines Corporation All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure

The Application Layer: DNS

Talk-101 User Guide. DNSGate

DATA COMMUNICATOIN NETWORKING

Forouzan: Chapter 17. Domain Name System (DNS)

3. The Domain Name Service

Internetworking with TCP/IP Unit 10. Domain Name System

Networking Domain Name System

Domain Name System Security

How to set up the Integrated DNS Server for Inbound Load Balancing

Domain Name System (DNS)

Domain Name System (or Service) (DNS) Computer Networks Term B10

Windows 2008 Server. Domain Name System Administración SSII

DNS: How it works. DNS: How it works (more or less ) DNS: How it Works. Technical Seminars Spring Paul Semple psemple@rm.

DNS & IPv6. Agenda 4/14/2009. MENOG4, 8-9 April Raed Al-Fayez SaudiNIC CITC rfayez@citc.gov.sa, DNS & IPv6.

Naming and the DNS. Focus. How do we name hosts etc.? Application Presentation Topics. Session Domain Name System (DNS) /URLs

KB Windows 2000 DNS Event Messages 1 Through 1614

Domain Name System. Heng Sovannarith

Domain Name System :49:44 UTC Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement

netkit lab dns Università degli Studi Roma Tre Dipartimento di Informatica e Automazione Computer Networks Research Group Version Author(s)

Domain Name System (DNS) Fundamentals

API of DNS hosting. For DNS-master and Secondary services Table of contents

How to Configure DNS Zones

Using Webmin and Bind9 to Setup DNS Sever on Linux

Glossary of Technical Terms Related to IPv6

4.1 NAMING ENTITIES 184 NAMING CHAP Names, Identifiers, and Addresses

DNS: Domain Name System

THE DOMAIN NAME SYSTEM DNS

DNS Resolving using nslookup

FTP: the file transfer protocol

1 Introduction: Network Applications

Section 1 Overview Section 2 Home... 5

IP addresses have hierarchy (network & subnet) Internet names (FQDNs) also have hierarchy. and of course there can be sub-sub-!!

Transcription:

Chapter 9: Name Services 9.1 Introduction 9.2 Name services and the DNS 9.3 Directory services 9.6 Summary

Learning objectives To understand the need for naming systems in distributed systems To be familiar with the design requirements for distributed name services To understand the operation of the Internet naming service - DNS To be familiar with the role of directory and discovery services

The role of names Resources are accessed using identifier or reference An identifier can be stored in variables and retrieved from tables quickly Identifier includes or can be transformed to an address for an object E.g. NFS file handle, Corba remote object reference A name is human-readable value (usually a string) that can be resolved to an identifier or address Internet domain name, file pathname, process number E.g./etc/passwd, http://www.cdk3.net/ For many purposes, names are preferable to identifiers because the binding of the named resource to a physical location is deferred and can be changed because they are more meaningful to users

Resolving and binding of names A name is resolved when it is translated into data about the named resource or object often in order to invoke an action upon it The association between a name and an object is called a binding In general, names are bound to attributes of the named objects An attribute is the value of a property associated with an object E.g., DNS maps domain names to the attributes of a host computer: its IP address

Composed naming domains used to access a resource from a URL URL http://www.cdk3.net:8888/webexamples/earth.html DNS lookup Resource ID (IP number, port number, pathname) ARP lookup 138.37.88.61 8888 WebExamples/earth.html (Ethernet) Network address 2:60:8c:2:b0:5a file Socket Web server The domain name portion of a URL resolved first via the DNS into an IP address and then via ARP to an Ethernet address The last part of the URL is resolved by the file system on the web server to locate the relevant file

Names and resources Currently, different name systems are used for each type of resource: resource name identifies file pathname file within a given file system process process id process on a given computer port port number IP port on a given computer Uniform Resource Identifiers (URI) offer a general solution for any type of resource. There two main classes: URL Uniform Resource Locator typed by the protocol field (http, ftp, nfs, etc.) part of the name is service-specific resources cannot be moved between domains URN Uniform Resource Name requires a universal resource name lookup service - a DNS-like system for all resources

More on URNs format: urn:<namespace>:<name-within-namespace> examples: a) urn:isbn:021-61918-0 b) urn:dcs.qmul.ac.uk:tr2000-56 resolution: a) send a request to nearest ISBN-lookup service - it would return whatever attributes of a book are required by the requester b) send a request to the urn lookup service at dcs.qmul.ac.uk - it would return a url for the relevant document

Name services 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. The major operation is to resolve a name that is, to look up attributes from a given name General requirements for name services To handle an essentially arbitrary number of names and to serve an arbitrary number of administrative organizations High availability

Name spaces A name space is the collection of all valid names recognized by a particular service Allow simple but meaningful names to be used Potentially infinite number of names Structured to allow same subnames without clashes to group related names Aliases: one domain name is defined to stand for another http://espn.go.com/ and http://www.espn.com Naming domains: is a name space for which there exists a single overall administrative authority for assigning names within it Domains in DNS are collections of domain names; syntactically, a domain s name is the common suffix of the domain names within it The administration of domains may be devolved to sub-domains

Name resolution: iterative navigation NS2 A client iteratively contacts name servers NS1 NS3 in order to resolve a name 2 Client 1 3 NS1 Name servers NS3 The partitioning of data implies that the local name server cannot answer all enquiries without the help of other name servers The process of locating naming data from among more than one name server in order to resolve a name is called navigation DNS supports the model known as iterative navigation: to resolve a name, a client presents entire name to servers, starting at a local server, NS1. If NS1 has the requested name, it is resolved, else NS1 suggests contacting NS2 (a server for a domain that includes the requested name)

Non-recursive and recursive server-controlled navigation NS2 NS2 client 1 4 NS1 2 3 NS3 client 1 5 NS1 2 4 3 NS3 Non-recursive server-controlled Recursive server-controlled A name server NS1 communicates with other name servers on behalf of a client An alternative model that DNS supports: a name server coordinates the resolution of the name and passes the result back to the user agent Non-recursive server-controlled: any name server may be chosen by the client. Recursive server-controlled: the client contacts a single server Recursive navigation must be used in domains that limit client access to their DNS information for security reasons

DNS - The Internet Domain Name System DNS is a name service design whose main naming database is used across the Internet Derived in 1987 to replace the original Internet naming scheme, in which all host names and addresses were held in a single central master file and downloaded by FTP to all computers that required them Major shortcomings of old scheme: did not scale Local organizations wished to administer their own naming systems A general name service was needed, not one that serves only for looking up computer addresses 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

Domain names The internet DNS name space is partitioned both organizationally and according to geography The names are written with the highest-level domain on the right The original top-level organizational domains (also called generic domains): com: commercial organizations edu: universities and other educational institutions gov: US governmental agencies mil:us military organizations net: major network support centers org: organizations not mentioned above int: international organizations New top-level domains were added in the early 2000s In addition, every country has its own domains: us, uk, fr, ca, cn

DNS queries Main function is to resolve domain names for computers, i.e. to get their IP addresses caches the results of previous searches until they pass their 'time to live' Other functions: get mail host for a domain reverse resolution - get domain name from IP address Host information - type of hardware and OS Well-known services - a list of well-known services offered by a host Other attributes can be included (optional): in principle, the DNS can be used to store arbitrary attributes

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

Basic DNS algorithm for name resolution Basic DNS algorithm for name resolution (domain name -> IP number) 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)

DNS in typical operation Without caching ns1.nic.uk (uk) co.uk ac.uk... alpha.qmw.ac.uk (qmw.ac.uk) dcs.qmw.ac.uk *.qmw.ac.uk a.root-servers.net (root) uk purdue.edu yahoo.com... ns0.ja.net (ac.uk) ic.ac.uk qmw.ac.uk... dns0.dcs.qmw.ac.uk (dcs.qmw.ac.uk) *.dcs.qmw.ac.uk dns0-doc.ic.ac.uk (ic.ac.uk) *.ic.ac.uk ns.purdue.edu (purdue.edu) *.purdue.edu IP: alpha.qmw.ac.uk 2 IP:jeans-pc.dcs.qmw.ac.uk IP:ns0.ja.net jeans-pc.dcs.qmw.ac.uk? client.ic.ac.uk 14 IP:dns0.dcs.qmw.ac.uk 3

DNS resource records Record type Meaning Main contents A A computer address IP number NS An authoritative name server Domain name for server CNAME The canonical name for an alias Domain name for alias SOA Marks the start of data for a zone Parameters governing the zone WKS A well-known service description List of service names and protocols PTR Domain name pointer (reverse Domain name lookups) HINFO Host information Machine architecture and operating system MX Mail exchange List of <preference, host> pairs TXT Text string Arbitrary text

Directory and discovery services Directory service: 'yellow pages' for the resources in a network Retrieves the set of names that satisfy a given description e.g. X.500, LDAP, MS Active Directory Services (DNS holds some descriptive data, but: the data is very incomplete DNS isn't organised to search it) UDDI (universal directory and discovery service) provides both white pages and yellow pages services, slide 18-19 of chapter 19 Provide information about organizations and the web services they provide Discovery service: a special case of a directory service for services provided by devices in a spontaneous networking environment automatically updated as the network configuration changes discovers services required by a client (who may be mobile) within the current scope, for example, to find the most suitable printing service for image files after arriving at a hotel

Summary Name services: defer the binding of resource names to addresses (and other attributes) Names are resolved to give addresses and other attributes Goals : Scalability (size of database, access traffic (hits/second), update traffic) Reliability Trust management (authority of servers) Issues exploitation of replication and caching to achieve scalability without compromising the distribution of updates navigation methods Directory and discovery services: 'yellow pages' retrieval by attributes dynamic resource registration and discovery