1 naming services (dns) name versus address name space –defines set of possible names –consists...

11
1 Naming Services (DNS) Name versus Address Name space defines set of possible names consists of a set of name to value bindings flat (names are not divisible) versus hierarchical Resolution Mechanism Network Information Center (NIC) – hosts.txt Domain Name System (DNS) Introduced in 1984. Distributed database An application that all other applications depend on

Upload: andrew-alexander

Post on 18-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

1

Naming Services (DNS)• Name versus Address• Name space

– defines set of possible names – consists of a set of name to value bindings – flat (names are not divisible) versus hierarchical

• Resolution Mechanism• Network Information Center (NIC) – hosts.txt

• Domain Name System (DNS)– Introduced in 1984.– Distributed database– An application that all other applications depend on

Page 2: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

2

Advantages of Naming

• It permits use of names instead of numbers to identify hosts (usually servers). Names are much easier to remember.

• It permits a server to change numeric addresses without requiring notification of everyone on the Internet, by simply retargeting a name to the new numeric address.

• One name can refer to multiple hosts, to share the load.

Page 3: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

3

Example

Nameserver

Mailprogram

User

TCP

IP

2cs.princeton.edu

192.12.69.53

user @ cs.princeton.edu1

192.12.69.5 4

192.12.69.5 5

Page 4: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

4

Domain Naming System

• Hierarchy

• Nameux01.cs.princeton.edu

edu com

princeton … mit

cs ee

ux01 ux04

physics

cisco … yahoo nasa … nsf arpa … navy acm … ieee

gov mil org net uk fr

Page 5: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

5

Name Servers• Partition hierarchy into zones

edu com

princeton … mit

cs ee

ux01 ux04

physics

cisco … yahoo nasa … nsf arpa … navy acm … ieee

gov mil org net uk fr

Rootname server

Princetonname server

Cisconame server

CSname server

EEname server

• Each zone implemented by two or more name servers

• A given name server is free to implement more that one zone

Page 6: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

6

Resource Records • Each name server maintains a collection of resource records

(Name, Value, Type, Class, TTL)

• Name/Value: not necessarily host names to IP addresses

• Type– A: the value is an IP address

– NS: Value gives domain name for host running name server that knows how to resolve names within specified domain.

– CNAME: Value gives canonical name for particle host; used to define aliases.

– MX: Value gives domain name for host running mail server that accepts messages for specified domain.

• Class: allow other entities to define types

• TTL: how long the resource record is valid

Page 7: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

7

Root Server

(princeton.edu, cit.princeton.edu, NS, IN)

(cit.princeton.edu, 128.196.128.233, A, IN)

(cisco.com, thumper.cisco.com, NS, IN)

(thumper.ciscoe.com, 128.96.32.20, A, IN)

There are 13 root servers of the Internet Domain Name System (DNS).

Page 8: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

8

Princeton Server

(cs.princeton.edu, optima.cs.princeton.edu, NS, IN)

(optima.cs.princeton.edu, 192.12.69.5, A, IN)

(ee.princeton.edu, helios.ee.princeton.edu, NS, IN)

(helios.ee.princeton.edu, 128.196.28.166, A, IN)

(jupiter.physics.princeton.edu, 128.196.4.1, A, IN)

(saturn.physics.princeton.edu, 128.196.4.2, A, IN)

(mars.physics.princeton.edu, 128.196.4.3, A, IN)

(venus.physics.princeton.edu, 128.196.4.4, A, IN)

Page 9: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

9

CS Server

(cs.princeton.edu, optima.cs.princeton.edu, MX, IN)

(cheltenham.cs.princeton.edu, 192.12.69.60, A, IN)

(che.cs.princeton.edu, cheltenham.cs.princeton.edu, CNAME, IN)

(optima.cs.princeton.edu, 192.12.69.5, A, IN)

(opt.cs.princeton.edu, optima.cs.princeton.edu, CNAME, IN)

(baskerville.cs.princeton.edu, 192.12.69.35, A, IN)

(bas.cs.princeton.edu, baskerville.cs.princeton.edu, CNAME, IN)

Page 10: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

10

Name Resolution

• Iterative Query

• Local server – need to know root at only one

place (not each host) – site-wide cache

Rootnameserver

Princetonnameserver

CSnameserver

Localnameserver

Client

1cicada.cs.princeton.edu

192.12.69.608

cicada.cs.princeton.edu

princeton.edu, 128.196.128.233

cicada.cs.princeton.edu

cicada.cs.princeton.edu,

192.12.69.60

cicada.cs.princeton.edu

cs.princeton.edu, 192.12.69.5

2

3

4

5

6

7

Page 11: 1 Naming Services (DNS) Name versus Address Name space –defines set of possible names –consists of a set of name to value bindings –flat (names are not

11

Recursive Query