Name service

advertisement
1
GVHD:
Phạm Trần Vũ
Sinh viên thực hiện:
1- Nguyễn Thị Vân Anh
2- Lê Thị Hồng Hà
3- Vũ Thị Lộc Phương
4- Tăng Thu Hương
5- Huỳnh Thị Kim Trâm
6- Hồ Thị Kim Oanh
2
Outline
 General concepts
 Domain Name System (DNS)
 Directory and Discovery Services

 Introduction
 Jini
Other name services
 Global Name Service (GNS)
 X500 Directory Service
3
Introduction
• In a distributed system names are used to refer to a
wide variety of resources such as computers,
services, remote objects, and files as well as users.
• Names are used for identification as well as for
describing attributes.
• 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
4
5
URIs, URLs and URNs
• Uniform Resource Identifiers (URI): identify or
name a resource on the Internet. They come in two
kinds:
• Uniform Resource Locator (URL): locates resource
- typed by the scheme field (http, ftp, nfs, etc.)
- resources cannot be moved between domains
• Uniform Resource Name (URN): names resource
- Format: urn: <nameSpace>:<name-within namespace>
- Examples:
a) urn:ISBN:021-61918-0
b) urn:inf.unibz.it:TR2007-5
6
7
8
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
9
Design Issues
• Name spaces
• Name Resolution
• The domain name system
10
Name Spaces
• A name space is a 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 similar subnames without clashes
▫ to group related names
11
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
• Examples
– domain names, Window file system
12
Hierarchic Name Spaces (ctd)
13
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
14
Example Of Flat Name Spaces
15
Outline
General concepts
Domain Name System (DNS)
Directory and Discovery Services
▫ Introduction
▫ Jini
Other name services
▫ Global Name Service (GNS)
▫ X500 Directory Service
16
DNS Hierarchy and the Internet
Domain
com
edu
gov
mil
net
org
int
Purpose
Commercial organizations
Educational institutions
Government institutions
Military groups
Major network support centers
Nonprofit organizations and others
International organizations
17
Namespace Hierarchy
Ex: Retal.Sales.Ajax.com.
18
What is DNS ?
Domain Name System (DNS) is:
 an application-layer protocol that is part of the
standard TCP/IP protocol suite.
This protocol implements the DNS name service,
which is the name service used on the Internet.
DNS is a distributed naming database
19
What DNS used for?
The basic function of DNS:
Providing name-to-address resolution for TCP/IP-based
networks. (mapping)
Others:
Mail Delivery
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.
20
Get Address.
when a program is running on your local
machine needs to contact a remote computer,
mapping occur.
how to locate address?
requests assistance from the DNS software running
on your local machine, which is considered a DNS
client ( is call resolver).
sends a request to a DNS name server, which
maintains the distributed DNS database: the host
names, IP addresses, and other information about a
particular group of computers
21
Domain Names
• Fully-Qualified Domain Names
22
ZONES
The data in a name server's database are called
zone files. One type of zone file stores IP
addresses and host names
23
DNS Administrative Domains:
 Is a group of machines or resources that are
administered as a unit.
 Is maintained by at least two name servers.
 Name servers have the graphical relations like
business…
24
DNS Servers
• in.named and DNS Name Servers :
Name servers in an administrative domain
maintain the DNS database. They run in.name(
can be called BIND- University of California at
Berkeley).
•
•
•
Primary server.
Secondary.
Cache-only.
25
DNS Resolver
• Name Resolution Services
o Standard Name Resolution.
o Reverse Name Resolution.
o Electronic Mail Resolution.
……
26
DNS Resolver Functions
oProviding The User Interface.
oForming and Sending Queries.
oProcessing Responses.
27
DNS Resolver Functions
• Other Functions:
o Caching.
o In fact, it is possible to set up a network so that the
resolvers on each of the client machines do nothing
more than hand resolution requests to a local DNS
server and let the server take care of it.
 The client resolver becomes a stub resolver.
 Advantage of centralizing name resolution for the
network.
 Disadvantage of performance reduction.
28
DNS Basic Name Resolution
Techniques:
DNS Name Resolution Techniques:
o Iterative Resolution
o Recursive Resolution
29
Iterative Resolution
30
Recursive Resolution
31
DNS Name Resolution Efficiency
Improvements:
 Caching
 Local Resolution
32
CACHING
• The Motivation for Caching: Locality of
Reference
▫ spatial locality of reference: resource is more
likely to be referenced if it is near another
resource that was recently referenced.
▫ temporal locality of reference: resource is more
likely to be accessed if it was recently accessed.
• Name Resolver Caching
▫ once a particular name is resolved, it is cached
and remains ready for the next time
▫ this eliminates traffic and load on DNS servers.
33
Local Resolution
• DNS servers will perform this check to see if
they have the information needed for a request
before commencing the “formal” top-down
resolution process
34
DNS Name Resolution Process
35
DNS Reverse Name Resolution
Using the IN-ADDR.ARPA Domain
36
DNS Message Header and Question Section Format
•
•
•
•
•
•
•
•
•
•
•
•
•
ID
QR
Opcode
AA
TC
RD
RA
Z
RCODE
QDCount
ANCount
NSCount
ARCount
37
DNS Message Resource Record
Field Formats
• DNS Common Resource Record Format
• RData Field Formats For Common Resource
Records
• A / Address Resource Record (Type Value 1)
• NS / Name Server Resource Record (Type Value
2) In this record, the data field carries the domain
Carries the domain name of a name server
• CName / Canonical Name Resource Record
(Type Value 5)
• SOA / Start Of Authority Resource Record (Type
Value 6)
• PTR / Pointer Resource Record (Type Value 12)
38
HOW ???
• DNS FREE
• DNS SERVER ON UNIX
39
DNS FREE
• EDITZONE
40
DNS SERVER ON UNIX
• Installation
▫ At a terminal prompt, enter the following command
to install dns:
▫ sudo apt-get install bind9 A very useful package
for testing and troubleshooting DNS issues is the
dnsutils package. To install dnsutils enter the
following:
▫ sudo apt-get install dnsutils
41
DNS configuration





Declare zones
Forward zone
Reverse zone
Describe zone’s database
Declare DNS client
42
Outline
 General concepts
 Domain Name System (DNS)
 Directory and Discovery Services

 Introduction
 Jini
Other name services
 Global Name Service (GNS)
 X500 Directory Service
43
Directory and Discovery Services
• Directory services
• Discovery services
• Jini case study
44
Directory services
A special kind of naming service
– Searching attributes
Entries
– Each entry is concerned with a set of
<attribute, value> pairs
Query
– Lookup by known attributes
– Return interested attributes
– E.g. query one’s telephone No. by his name
45
Directory services
• Sometimes directory services are called “yellow
pages services”, while name services are called
“white pages services”
• Often organized in a hierarchy
• Examples of directory services:
1. Microsoft’s Active Directory Services
2. X.500
46
Discovery services
• A discovery service is a directory service that
registers the services provided in a
spontaneous networking environment.
• Is automatically updated as the network
configuration changes
• Services notify the discovery service of
existence via a registration interface
• Discovery has a scope (the context)
47
Discovery services(tt)
• Provide an interface for automatically registering
and de-registering services, as well as an
interface for clients to look up the services they
require
▫ Ex: a printer (or the service that manages it) may
register its attributes with the discovery service as
follows:
 ‘resourceClass = printer, type=laser, color=yes,
resolution=600dpi, location=room101,
url=http://www.hotelNW.com/services/printer98’
• Example - Jini (a Java-based system for
spontaneous networking)
48
Spontaneous network
Music
service
gateway
Alarm
service
Internet
Hotel wireless
network
Discovery
service
Camera
TV/PC
Laptop
PDA
Guest's
devices
49
Jini Discovery Service
• Designed to be used for spontaneous
networking
• Entirely java-based
• Computers communicate by means of RMI,
and can download code if necessary
• Discovery-related components in a Jini
system are look up services
• A Jini service (such as printing service) may
be registered with many look up services
50
Jini Discovery Service(tt)
• A lookup service
– A service registers an object with a set of
attributes
– Clients query the lookup service
– Clients download service object that matches
query
• Leases
– A limited period of time during which the service
can be used
51
Jini Discovery Service(tt)
• How to locate the look up service ?
▫ Using a well-known multicast IP address
▫ Multicast the request using a “time to live” value
• Service instance is configured with one or
more group names such as ‘finance’, ‘sales’,
‘admin’, which act as scoping labels.
52
admin
Client
Printing
service
1. ‘finance’
lookup service?
admin
Client
Lookup
service
Network
2. Here I am: .....
4. Use printing
service
Corporate
infoservice
Printing
service
admin, finance
3. Request
printing
finance
Lookup
service
53
OTHER NAME SERVICES
• Global name service (GNS)
• X.500 and LDAP
• Trading service
54
Global name service
 was designed and implemented by Lampson and
colleagues at the DEC Systems Research Center to
provide facilities for resource location, mail
addressing and authentication
 an early research project (1985) that developed
solutions for the problems of:
 large name spaces
 restructuring the name space
55
X.500 and LDAP
• primarily used to satisfy descriptive queries,
designed to discover the names and attributes
of other users or system resources
• as a network service intended to meet these
requirements
• is specified as an application level service in the
Open Systems Interconnection (OSI) set of
standards
56
X.500 and LDAP
• X.500 is also the basis for LDAP
• The data stored in X.500 servers is organized in
a tree structure with named nodes as in the
case of the other name servers
• in X.500 a wide range of attributes are stored at
each node in the tree, and access is not just by
name but also by searching for entries with any
required combination of attributes
57
X.500 and LDAP
• DIT: the directory information tree
• DIB: the entire directory structure including the
data associated with the nodes is called the
directory information base
• provides the capability to look up information by
name (a white-pages service) and to browse
and search for information (a yellow-pages
service)
58
X.500 and LDAP
• Entries in the DIB are arranged in a tree
structure called DIT
• Each entry is a named object and consists of a
set of attributes
• Each attribute has a defined attribute type and
one or more values
• The directory schema defines the mandatory
and optional attributes for each class of object
59
X.500 and LDAP
• The X.500 namespace is hierarchical
• Users of the X.500 directory may (subject to
access control) interrogate and modify the
entries and attributes in the DIB.
60
Protocols
• The X.500 standard defines a protocol (among
others) for a client application to access the
X.500 directory
• Called the Directory Access Protocol (DAP), it is
layered on top of the Open Systems
Interconnection (OSI) protocol stack.
61
Trading service
• CORBA name service
• CORBA event service
• CORBA Notification Service
62
Name services:
Summary
▫ 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
63
Referrences
 Distributed system
 http://www.tcpipguide.com/free/
64
Q.A
^_^
Download