9-Naming - Leonardo Mostarda
Download
Report
Transcript 9-Naming - Leonardo Mostarda
Naming
Prof. Leonardo Mostarda
University of Camerino
Prof. Leonardo Mostarda-- Camerino,
1
Last Lecture
Berkeley Sockets
Message-Passing Interface
Message-queuing systems
Message brokers
IBM’s WebSphere Message-Queuing System
2
Outline
Flat naming
Forwarding Pointers
Home-Based Approaches
Distributed Hash Tables
Hierarchical Approaches
Name Spaces
Domain Name Server
Iterative
Concurrent
Caching
3
Learning objective
Understand the basic terminology of naming
Discuss and understand the flat naming
Forwarding Pointers
Home-Based Approaches
Distributed Hash Tables
Hierarchical Approaches
Name Spaces
Discuss how the DNS works
4
Naming
An entity has several access points. Each access point
has an address.
IP, Telephone number, email
Addresses are rarely used they are not simple, there is not
access transparency and addresses can change.
It is much better to let a service be known by a separate
name
independent
of
the
address
(location
independence).
Names are used to identify entities.
Name resolution allows the access the named entity.
To resolve names, it is necessary to implement a naming
5
system.
FLAT NAMING
Identifiers are special names used to uniquely represent
entities
We will take a look at how we can locate an entity when
given only its identifier.
Broadcasting
Address Resolution Protocol (ARP)
Broadcasting becomes inefficient when the network grows.
Multicasting
only a restricted group of hosts receives the request
6
FLAT NAMING
How can we locate a mobile entity?
Forwarding Pointers
The principle is simple: when an entity moves from A to B, it
leaves behind in A a reference to its new location at B.
Problem
A chain for a highly mobile entity can become so long that
locating that entity is prohibitively expensive.
All intermediate locations in a chain will have to maintain their
part of the chain of forwarding pointers as long as needed.
7
Forwarding Pointers (1)
The principle of forwarding pointers using (client stub, server stub)
pairs.
Chain can be too long
Forwarding Pointers (2)
Redirecting a forwarding pointer by storing a shortcut in a client
stub.
Scalability is still a problem
Invocation
request is
sent to object
Server stub at object's
current process returns
the current location
(a)
Server stub is no
longer referenced
by any client stub
Client stub sets
a shortcut
(b)
Home-Based Approaches
A popular approach to supporting mobile entities in largescale networks is to introduce a home location
Ex. Mobile IP
Problem?
1 can be time consuming
Node can move forever
Or can move in another
Stable location
Solution?
Name server
Distributed Hash Tables General Mechanism
One of problems with
Chord is that requests
may
be
routed
erratically across the
Internet
Network
proximity
should be used
Hierarchical Approaches
Hierarchical organization of a location service into domains, each
having an associated directory node.
o A location record for entity E in the directory node N for a leaf domain D
contains the entity's current address in that domain.
o The directory node N' for the next higher-level domain D' that contains D, will
have a location record for E containing only a pointer to N
DNS
DNS services
Hostname to IP address
translation
Host aliasing
Canonical and alias
names
Mail server aliasing
Load distribution
Replicated Web
servers: set of IP
addresses for one
canonical name
Why not centralise DNS?
single point of failure
traffic volume
distant centralised database
maintenance
doesn’t scale!
13
13
Distributed, Hierarchical Database
Root DNS Servers
com DNS servers
yahoo.com
amazon.com
DNS servers DNS servers
org DNS servers
pbs.org
DNS servers
edu DNS servers
ucl.ac.uk
ucla.edu
DNS serversDNS servers
Client wants IP for www.amazon.com; 1st approx:
Client queries a root server to find com DNS server
Client queries com DNS server to get amazon.com DNS
server
Client queries amazon.com DNS server to get IP address
14
for www.amazon.com
14
DNS: Root name servers
contacted by TLD that can not resolve name root name server:
There are currently 13 root name servers specified, with names in the
form letter.root-servers.net
a Verisign, Dulles, VA
c Cogent, Herndon, VA (also Los Angeles)
k RIPE London (also Amsterdam,
d U Maryland College Park, MD
Frankfurt)
g US DoD Vienna, VA
i Autonomica, Stockholm (plus 3
h ARL Aberdeen, MD
other locations)
j Verisign, ( 11 locations)
m WIDE Tokyo
e NASA Mt View, CA
f Internet Software C. Palo Alto,
CA (and 17 other locations)
13 root name servers
worldwide
b USC-ISI Marina del Rey, CA
l ICANN Los Angeles, CA
15
15
TLD and Authoritative Servers
16
Top-level domain (TLD) servers: responsible for com, org,
net, edu, gov, int, etc, and all top-level country domains
uk, fr, ca, jp, ly.
Network solutions maintains servers for com TLD
Educause for edu TLD
Authoritative DNS servers: organisation’s DNS servers,
providing authoritative hostname to IP mappings for
organisation’s servers (e.g., Web and mail).
Can be maintained by organisation or service provider
16
Local Name Server
17
Does not strictly belong to hierarchy
Each ISP (residential ISP, company, university) has one.
Also called “default name server”
When a host makes a DNS query, query is sent to its local
DNS server
Acts as a proxy, forwards query into hierarchy.
17
Types of queries
recursive query:
iterative query:
2
3
7
local name server
uni.mdx.ac.uk
contacted server replies
1
with name of server to
8
contact
“I don’t know this name,
but ask this server”
requesting host
18
puts burden of name
resolution on contacted
name server
heavy load?
root name server
6
5
intermediate
4 name server
(com server)
authoritative name server
ns1.google.com
leo.mdx.ac.uk
www.google.com
Example
Host at mdx wants IP
address
for
www.google.com
root name server
iterated query
2
3
4
5
local name server
uni.mdx.ac.uk
1
8
requesting host
leo.mdx.ac.uk
intermediate name server
(com server)
7
6
authoritative name server
ns1.google.com
www.google.com 19 19
Summary
Flat naming
Forwarding Pointers
Home-Based Approaches
Distributed Hash Tables
Hierarchical Approaches
Name Spaces
Domain Name Server
Iterative
Concurrent
Caching
20