close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

10 Namen und Verzeichnisse Was sind Namen? 10.1 Namen und

EinbettenHerunterladen
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
10 Namen und Verzeichnisse
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Was sind Namen?
"The name of the song is called 'Haddocks' Eyes'."
"Oh, that's the name of the song, is it?" Alice said, trying to feel interested.
"No, you don't understand", the Knight said, looking a little vexed. "That's what
the name is called. The name really is 'The Aged, Aged Man'."
"Der Name ist durch keine Definition weiter zu zergliedern:
Er ist ein Urzeichen"
"Then I ought to have said 'That's what the song is called'?" Alice corrected
herself.
Ludwig Wittgenstein
"No, you oughtn't: that's quite another thing! The song is called 'Ways and
Means': but that's only what it's called, you know!"
"Well, what is the song then?" said Alice, who was by this time completely
bewildered.
"I was coming to that", the Knight said. "The song really is 'A-sitting On A
Gate': and the tune's my own invention."
aus: Lewis Caroll: Through the Looking Glass, Chapter VIII
10-1
10-2
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
10.1 Namen und Namensdienst
z
Um Objekte in einem verteilten System erreichen zu kšnnen, muss man
ihren Namen kennen.
z
Objekte in diesem Sinne sind z.B. Benutzer, Dienste, Prozesse, Ports,
Dateien, GerŠte,...
z
Namen genŸgen hŠufig einer festgelegten Syntax
z
Namen sind Betriebsmittel und bedŸrfen der Verwaltung
z
Namen mŸssen auf die bezeichneten Objekte abgebildet werden
"The name of a resource indicates what we seek,
an address indicates where it is and
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Wozu Namen ?
z Identifizierung
y Der Name identifiziert eindeutig ein Objekt. Namen mŸssen i.d.R. nicht
eineindeutig sein, sondern es kšnnen auch Aliase existieren
z Lokalisierung
y †ber den Namen kann ein Objekt erreicht werden, ohne dessen
Adresse oder Ort zu kennen
y ikarus.uni-paderborn.de fŸhrt zur IP-Adresse des Rechners
z Beschreibung
y Namen - soweit sie fŸr den Menschen bestimmt sind - sollten etwas
Ÿber das benannte Objekt aussagen
y "fa-color-folie" ist der Name des Farblaserdrucker (Folienschacht) im
F2
a route tells us how to get there"
J.F. Shoch
10-3
10-4
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Namen
z Benutzerorientierte Namen (high-level names)
y
Variabel lang
y
frei wŠhlbar
y
Šnderbar
y
unabhŠngig von der Lage des Objekts
y
z.B. stargate.uni-paderborn.de
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Beispiel
Benutzerorientierter Name
/usr/meier/prog.c
Identifikator (systemnaher Name)
34783
19
z Systemorientierte Namen (Identifikatoren) (low-level names)
y
feste LŠnge, daher effizient verwaltbar (z.B. Hashing)
y
eineindeutig
y
z.B. 131.234.22.29
bestehend aus:
¥ Rechneridentifikator
¥ Dateiidentifikator
Server
3:60:8c:2:c7:5a
Datei
Netzwerk-Adresse
10-5
10-6
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Namensstruktur
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Namensstruktur
Flache Namen
Namensraum
y Ein Name ist eine Zeichenkette, die aus einem vorgegebenen Alphabet
gemŠ§ einer Syntax gebildet wird.
Sind die Namen wechselseitig unabhŠngig voneinander, so werden sie
flach genannt.
y ZulŠssige Namen werden hŠufig durch regulŠre AusdrŸcke mit
zusŠtzlicher LŠngenbegrenzung festgelegt.
Es kann eine syntaktische Struktur vorhanden sein, aber sie hat keine
Auswirkung auf die Namensverwaltung. d.h. flache Namen werden atomar
verwaltet
y Namen sind exklusive Betriebsmittel, die man belegen und freigeben
kann.
Gegliederte Namen
Beispiel:
y Durch den folgenden Ausdruck kšnnen z.B. Dateinamen festgelegt
werden:
y
Beispiel: User-Ids einer Organisation
(A-Z):(a-z+0-9)*.(a-z)3;(0-9)*
y Die einzelnen Komponenten bedeuten z.B. Laufwerkskennung,
wahlfreier Namensanteil, Inhaltstyp, Versionsnummer
y Beispielname, der dieser Syntax genŸgt: C:diplomarbeit.doc;2
10-7
Namen setzen sich aus einzelnen Teilnamen (Domain) zusammen und
bilden einen mehrdimensionalen Namensraum, meistens in Form einer
baumartigen Hierarchie.
Die Namenshierarchie spiegelt meist die Organisationsstruktur des
Systems wider.
Beispiele: Unix-Dateinamen, Internet Domain Name System,
Telefonnummern
10-8
Gegliederter Namensraum und Kontext
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
¥ Namen sind grundsŠtzlich assoziiert mit einem Kontext, in dem sie
gŸltig sind.
¥ Ein Name hat daher eine relative GŸltigkeit innerhalb seines Kontexts.
¥ Ein Paar Kontext/Name wird auch als qualifizierter oder absoluter
Namen bezeichnet.
¥ In gegliederten NamensrŠumen Ÿbernehmen die Domains die Funktion
von Kontexten
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Namensdienst
z Namen sind Objekten zugeordnet.
z †ber einen Namen erhŠlt man Zugang zum Objekt bzw. zu einer
Objektbeschreibung
z Ein Namensdienst ist ein Verzeichnis der Zuordnung von Namen zu
Objekten bzw. Objektbeschreibungen
z Operationen
Domain
Domain 11
Domain
Domain 22
Domain
Domain 33
Domain
Domain 44
Domain
Domain 55
y
Eintragen (bind):
Festlegen einer Zuordnung
y
Lšschen (unbind) :
Lšschen des Eintrags und damit der
Zuordnung
y
Auflšsen (lookup, resolve): Umsetzung des Namens in die
Objektbeschreibung bzw. die
Objektreferenz oder -Adresse
Domain
Domain 66
10-9
10-10
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Namensdienst
z Die Auflšsung von Namen und somit die Nutzung eines
Namensdienstes sollte transparent ablaufen.
rekursiv
client
z Dazu benštigt man einen Name Agent (als lokales StŸck Software),
der die Verbindung zu einem Namensdienst aufnehmen kann.
z Der Namensdienst kann seinerseits verteilt sein, so dass eine
Namensauflšsung mehrere Name Server involviert.
Name
Name Server
Server 11
Name
Name
Agent
Agent
Name
Name
Server
Server 11
1
iterativ
client
Application
Application
(Client)
(Client)
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Namensauflšsung
2
Name
Name
Agent
Agent
Name
Name
Server
Server 22
transitiv
Name
Name Agent
Agent
Name
Name Server
Server 22
client
Name
Name
Server
Server 33
Name
Name
Server
Server 11
Name
Name
Server
Server 33
Name
Name Server
Server nn
Name
Name
Server
Server 22
Name
Name
Agent
Agent
Name
Name
Server
Server 11
Name
Name
Server
Server 22
Name
Name
Server
Server 33
10-11
10-12
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
10.2 Domain Name System (DNS)
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
DNS Namen
z DNS ist der Namensdienst im Internet.
z Komponentennamen sind bis zu 63 Zeichen lang
z Er basiert auf einem gegliederten Namensraum, der eine
Organisationsstruktur widerspiegelt und nichts mit der physischen
Netzstruktur zu tun hat.
z Pfadnamen bestehen aus Komponentennamen entlang eines
Pfades, jeweils durch einen Punkt (dot) getrennt.
z Volle Pfadnamen sind bis zu 255 Zeichen lang
z Gro§- und Kleinbuchstaben werden nicht unterschieden
Länderkennungen
z Die Syntax erlaubt es nicht festzustellen, ob ein Name eine Domain
oder einen einzelnen Knoten reprŠsentiert
Top-Level Domains
int
com
ibm
watson
edu
stanford
gov
mil
acm
org
net
ieee
de
sni
cs
fr
it
uk
...
uni-paderborn
stargate
z Nur vollstŠndige (absolute) Namen werden umgesetzt. Falls
AbkŸrzungen (z.B. mail) verwendet werden, ist es Aufgabe des
Clients, sie durch ein vorgegebenes Suffix (upb.de) zu ergŠnzen
ikarus
10-13
10-14
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Resource Records
Resource Record Types (Auswahl)
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
EintrŠge in einem DNS-Server sind als Resource Records organisiert.
Typ
Bedeutung
Inhalt
Ein Resource Record besteht aus den folgenden 5 Feldern
SOA
Start Of Authority
Diverse Parameter fŸr diese Zone
z Domain-name
Zu welcher Domain gehšrt dieser Eintrag
A
Address
z Time_to_live
Wie lange darf die Information dieses Satzes
in einem Cache gehalten werden (# sec)
32 bit Integer IP-Adresse
(Standardeintrag)
MX
Mail Exchange
Name einer Domain, die fŸr die
angegebene Domain Mail empfŠngt
NS
Name Server
Name eines Name Servers fŸr die
angegebene Domain
z Class
FŸr Internet-Anwendungen immer "IN"
z Type
Record-Typ: Was wird in diesem Satz
beschrieben (s. nŠchste Folie)
z Resource Data
Eigentlicher Eintrag, dem ein LŠngenfeld
vorausgeht
10-15
CNAME Canonical Name
Definition von Aliasnamen
PTR
€hnlich CNAME
Pointer
HINFO Host Information
Angaben Ÿber CPU und Betriebssyst.
TXT
Beliebige weitere Information
Text
10-16
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Beispiel DNS-EintrŠge
pbbn.de
86400 IN
MX
0
mail.upb.de
Mail fŸr die Domain pbbn.de (Paderborner Bildungsnetz) wird vom
Mailserver des FB17 (mail.upb.de) bearbeitet. Wenn der Eintrag in
einen Cache Ÿbernommen wird, soll er nach einem Tag (= 86400
Sekunden) wieder gelšscht werden.
upb.de
86400
IN CNAME
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
DNS Nachrichtenformat
16
31
Identification
Parameter
Number of Questions
Number of Answers
Number of Authority
Number of Additional
Question Section
Answer Section
uni-paderborn.de
Authority Section
Die Domain uni-paderborn.de hat als Alias upb.de
Additional Information Section
mac26.upb.de 86400 IN
86400 IN
A
131.234.94.50
Struktur eines Eintrags in der Question Section
HINFO MacPPC MacOS
Query domain name
IP-Adresseintrag eines Rechners mit Zusatzinformation
Query Type
10-17
DNS-Server im Internet
Query Class
10-18
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
z DNS Server mŸssen mindestens einen Wurzel-Server kennen.
z Sie mŸssen repliziert sein, damit trotz Server-Ausfall
Namensauflšsungen fŸr die betroffene Domain stattfinden kšnnen.
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
10.3 Verzeichnisse
z Welche E-mail hat ...
z Wem gehšrt die E-mail-Adresse ...
z Bei der Anfrage kann festgelegt werden, ob die Auflšsung rekursiv
oder iterativ erfolgen soll.
z Welche Durchwahl hat ...
z DNS-Server benutzen in der Regel UDP, nur fŸr die †bertragung
der kompletten Datenbasis (zone transfer) z.B. zum Back-up-Server
wird TCP benutzt
z Was ist der šffentliche SchlŸssel von ...
z Welches ist der nŠchstgelegene Drucker..
z Welcher Seminarraum verfŸgt Ÿber einen Video-Beamer..
z Wer ist der Postmaster der TU Ilmenau..
z In welcher Abteilung arbeitet ...
z Wer von den Professoren ist per E-Mail zu erreichen..
10-19
10-20
white pages / yellow pages
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Verzeichnis vs. Datenbank
Namensdienst (white pages)
Ein Verzeichnis ist eine Datenbank,
y Ist der Name eines Objekts bekannt, kann nach seinen
Eigenschaften gesucht werden (Beispiel: Telefonbuch)
aber: mit speziellen Eigenschaften:
y Daten bleiben Ÿber lŠngere Zeit unverŠndert
Verzeichnisdienst (yellow pages)
y optimiert fŸr schnelle Abfragen
y Ist der Name nicht bekannt, lŠ§t sich eine Liste von Objekten
heraussuchen, die eine bestimmte Eigenschaft erfŸllen
y sehr eingeschrŠnkte Schreibzugriffe
y Ein Verzeichnisdienst (directory service) liefert daher auf
Grund einer Beschreibung (Angabe von Attributwerten)
Referenzen auf Objekte, die der Beschreibung entsprechen
y sowohl fehlende als auch doppelte Attribute sind zulŠssig
y keine TransaktionsunterstŸtzung
y einfaches Abfrageprotokoll
y Da ein Name ebenfalls als Attribut angesehen werden kann,
ist eine Namensdienst eine spezielle Form eines
Verzeichnisdienstes
10-21
Bekannte Verzeichnisdienste
10-22
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Der X.500-Verzeichnisdienst
z
Verzeichnisdienste:
1988 von der CCITT spezifiziert als
y
y Telefonbuch ãGelbe SeitenÒ
z
y BŸcherverzeichnis
y finger
y whois
y NIS (Network Information System) fŸr UNIX
y DNS (Domain Name Service) usw.
Nachteile:
y entweder auf eine Aufgabe spezialisiert
ãeine Menge offener Systeme, die gemeinsam eine Datenbank
halten, in der Informationen Ÿber die reale Welt abgelegt sindÒ.
die Objekte der ãrealen WeltÒ kšnnen dabei sowohl
y
real sein (Personen, GerŠte)
y
logisch sein (Gruppen)
z
kann als vollstŠndig bezeichnet werden
z
ist ein verteiltes System
y
z
verschiedene Server halten die Daten einzelner TeilbŠume des
Gesamtverzeichnisses
erfuhr 1993 deutliche Erweiterungen
y oder plattformabhŠngig
10-23
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
10-24
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Der X.500-Verzeichnisbaum
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
(DIT = Directory Information Tree)
z Der DIT (Directory Information Tree) definiert die Struktur der global
verfŸgbaren EintrŠge.
Wurzel
c=US
c=DE
o=BASF-AG
c=AT
o=Universitaet Paderborn
ou=FB 17
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Service-Struktur
c = country
z Die Gesamtheit aller gespeicherten EintrŠge bildet die Directory
Information Base (DIB)
o = organisation name
z Diese Information verteilt sich auf einzelne Server-Instanzen, die
Directory Service Agents (DSAs)
ou = organisation unit name
ou=FB 5
ou=Betriebssysteme und Verteilte Systeme
ou = organisation unit name
cn=Hans-Ulrich Hei§
cn = common name
z Anwendungen benštigen zum Zugriff auf den Dienst einen lokalen
Directory User Agent (DUA)
DSA
DSA
client
DUA
DUA
client
DUA
DUA
DSA
DSA
DSA
DSA
DSA
DSA
DSA
DSA
10-25
10-26
EintrŠge, Objekte, Klassen, Attribute
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
X.500: Eigenschaften
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
z Anfragen an einen X.500-DSA sind in zwei Varianten mšglich
Eintrag
telephonnumber
Attribut
Objektklasse
Person
Typ
tel
cn
Attribut
common
name
telephoneAttribut
number
sn
Attribut
sur-
05251
Wert
1234
name
05251
Wert
5678
0171
Wert
55667
Objektklassen:
Attribute:
¥ Alias
¥ Country
¥ Locality
¥ Organization
¥ Organization Unit
¥ Person
¥ Common Name (cn)
¥ Organization Name (o)
¥ Organization Unit Name (ou)
¥ Locality Name (L)
¥ Street Adress (SA)
¥ Country (C)
10-27
y read
Umsetzung eines Namens in eine Objektbeschreibung
(Menge von Attributwerten (lookup, white page service
y search
Suche nach Objekten, die eine vorgegebene AttributSpezifikation erfŸllen (yellow page service)
z Die Suche kann mit EinschrŠnkungen versehen werden (Distanz,
Zeit, Umfang des Ergebnisses)
z Kann ein DSA eine Anfrage nicht erfŸllen, so kšnnen andere DSAs
angesprochen werden, iterativ oder rekursiv.
10-28
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Nachteile von X.500
z sehr reiches Datenmodell und
Light weight Directory Access Protocol (LDAP)
1995 an der UniversitŠt von Michigan von Yeong, Howes und
Kille entwickelt
z riesiger Funktionsumfang
⇒ schwierig zu administrieren
y um ãeinen Teil der Last des Verzeichniszugriffs vom Client zu
nehmen und die Verbreitung von Verzeichnisdiensten zu
vergrš§ernÒ
z Dirctory Access Protocol (DAP) basiert auf dem OSI-ProtokollStack
y ursprŸnglich nur als Mittler zwischen IP-Clients und OSIX.500-Servern (ldapd)
y danach: Stand-alone-Server (slapd)
⇒ es gibt keine geeigneten Clients fŸr ãkleinereÒ Systeme
y die meisten der z.Zt. existierende Clients und Server
implementieren LDAPv2, einige bereits LDAPv3
⇒ hat sich so gut wie nicht durchgesetzt
10-29
10-30
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Vorteile von LDAP
z ist plattformunabhŠngig
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
LDAP-Konfigurationen
Client
z setzt direkt auf TCP/IP auf
LDAP
LDAPServer
DAP
X500Server (DSA)
speichert selbst keine Daten
z beschrŠnkt sich auf die wichtigsten Funktionen von X.500
z die meisten Daten sind Textstrings
z fŸhrt zu einer einfachen Kodierung der Daten zum
Transport Ÿber Netze
Client
LDAP
LDAPServer
SQL
Relationale
Datenbank
speichert selbst keine Daten
Client
LDAP
Stand-aloneLDAP-Server
hat einen eigenen Datenbestand
10-31
10-32
evtl. weiterer
Stand-aloneLDAP-Server
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Anfragebearbeitung
Zur Auflšsung von Namen in gegliederten NamensrŠumen mit
verteiltem Namensdienst hatten wir rekursive, iterative und
transitive Vorgehensweise kennengelernt.
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
LDAP Operationen
z Abfrage
y search
y compare
z €nderung
LDAP (ab LDAPv3) unterstŸtzt:
y add
z Iteration ("Referrals")
y delete
Wenn eine Anfrage nicht bearbeitet werden konnte, gibt der Server
den Namen eines anderen Servers zurŸck, an den sich der client
dann wenden kann
y modify
z Authentisierung und Kontrolle
y bind
z Rekursion ("Chaining")
Wenn eine Anfrage nicht bearbeitet werden konnte, kontaktiert der
Server weitere Server (Unterauftrag)
y unbind
y abandon
10-33
Zunehmende Akzeptanz
Verzeichnisdienste mit LDAP-UnterstŸtzung
10-34
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Weitere Einsatzmšglichkeiten
z Single-Sign-on in heterogenen Umgebungen
y Lotus Notes Domino Server
z Single point of Administration
y Netscape Directory Server
z Public-key Infrastruktur
y Microsoft Exchange Server 5.5
z Organisationsverzeichnis
y Microsoft Active Directory (Windows 2000)
z Weltweites Branchenbuch
y Novell Directory Service
LDAP-Gateways
y finger Gateway
y whois++ Gateway
y HTTP Gateway u.a.m.
10-35
10-36
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Verteilte Systeme II
© H.-U. Hei§
UniversitŠt Paderborn
Trader und Broker
z Verzeichnisse sind der erste Schritt in Richtung einer globalen
Infrastruktur, wie sie im Internet z.B. fŸr E-Commerce benštigt
werden
z Weitergehende, allgemeinere Dienste zum Finden von Waren,
Dienstleistungen etc. werden benštigt
z ZusŠtzliche Funktionen wie Verhandlungen, VertragsabschlŸsse,
Abrechnung, Bezahlung sind im Kommen
10-37
Document
Kategorie
Technik
Seitenansichten
4
Dateigröße
257 KB
Tags
1/--Seiten
melden