68
Vorlesung: 1 Betriebssysteme 2009 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Studiengang Informatik FHDW Vorlesung: Betriebssysteme 3. Quartal 2009

Studiengang Informatik FHDW

  • Upload
    hakan

  • View
    24

  • Download
    0

Embed Size (px)

DESCRIPTION

Vorlesung: Betriebssysteme 3. Quartal 2009. Studiengang Informatik FHDW. Gliederung. Wiederholung Kommunikation in verteilten Systemen Einstieg: Problemstellung Rechte Berechtigungen anhand einer praktischen Implementation ISO/OSI-Referenzmodell - PowerPoint PPT Presentation

Citation preview

Page 1: Studiengang Informatik FHDW

Vorlesung: 1 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Studiengang Informatik FHDWStudiengang Informatik FHDW

Vorlesung: Betriebssysteme

3. Quartal 2009

Page 2: Studiengang Informatik FHDW

Vorlesung: 2 Betriebssysteme 2009 Prof. Dr. G. Hellberg

GliederungGliederung Wiederholung Kommunikation in verteilten Systemen Einstieg: Problemstellung Rechte Berechtigungen anhand einer

praktischen Implementation ISO/OSI-Referenzmodell Vergleich diverser Protokollstacks (TCP/IP...) Einführung Netzwerkkomponenten und -technologien (globale) Verzeichnisdienste (NDS, AD, iPlanet) Synchronisation in verteilten Systemen Deadlocks in verteilten Systemen Prozesse und Prozessoren in verteilten Systemen Systemmodelle (das Workstation-Modell) Scheduling in verteilten Systemen Einführung in Netzwerkdienste Ausblick

Page 3: Studiengang Informatik FHDW

Vorlesung: 4 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NamensverwaltungNamensverwaltungNamen dienen in verteilten Systemen dazu, Ressourcen, zu benennen und zu identifizieren:

Computer Dienste Ports Netzadressen Objekte Dateien Prozesse Benutzer

Page 4: Studiengang Informatik FHDW

Vorlesung: 5 Betriebssysteme 2009 Prof. Dr. G. Hellberg

ThemenstellungenThemenstellungenStruktur von NamenVergabe und AdministrationZugriff auf NamenAbbildung von Namen auf die durch sie repräsentierten Objekte

Page 5: Studiengang Informatik FHDW

Vorlesung: 6 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Aufgaben und Eigenschaften von NamenErklärung

Der Name bezeichnet ein Objekt z.B.: "HP-LJ-4N_Sekretariat" oder "Kapitel 7"

IdentifizierungEine Systemidentifikation oder Ressourceidentifikation wird durch den Zugriff über dessen Namen verborgen

z.B.: "www.fhdw.de" verbirgt die IP-Adresse dieses Rechners

LokalisierungDie Adresse eines Objektes wird durch den Zugriff über einen Namen verborgen

Die E-mail-Adresse "[email protected]" steht z.B. für die zugehörige Mailboxadresse

Namen sollten sowohl für Endanwender, als auch für Administratoren und Programmierer sprechend sein (Zusammenhang Verwendung Name).

Page 6: Studiengang Informatik FHDW

Vorlesung: 7 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Verwendungskontexte von NamenNamen, die im Kontext eines Dienstes benutzt werden

Bsp.: ein Dateiname im Dateisystem oder der Prozeß-identifikator im Prozeßmanagementdie Dienste sind in der Lage, die Namen selbst zu verarbeiten

Dienstübergreifende NamenBsp.: Benutzername, eine eMail-Adresse oder ein Dienst selbst, wie das Dateisystem oder der Druckdienst

Ein Name ist meist einem Objekt zugeordnet (gebunden)

Page 7: Studiengang Informatik FHDW

Vorlesung: 8 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Verwendungskontexte von Namen (2)Dienstspezifische Namen können direkt an die aktuelle Repräsentation des Objekts gebunden werdenDienstunspezifische Namen werden an Attribute gebundenJedes Objekt hat eine Adresse als Attribut (E-mail, IP-Adresse, Telefonnummer)Zusätzliche Attribute sind etwa Paßwörter, Home Directories, Versionsnummern, BS-VersionDie Attributwerte bestehen wiederum aus Namen oder sind einfache, primitive Werte (z.B.: integer)Primitive Namen können nicht mehr weiter aufgelöst bzw. unterteilt werden.

Page 8: Studiengang Informatik FHDW

Vorlesung: 9 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Abhängigkeit der NamenAbhängigkeit der Namen von der physischen Konfiguration:

reine Namen (engl.: pure names) enthalten keine Abhängigkeitunreine Namen (engl.: impure names) enthalten solche Informationen"Kapitel 7" ist ein reiner Name, während " www.fhdw-hannover.de" ein unreiner Name ist, da er Ortsinformation beinhaltet.

Page 9: Studiengang Informatik FHDW

Vorlesung: 10 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NamensraumNamensraumDie Menge aller gültigen Namen, entsprechend einer definierten Syntax, nennt man einen NamensraumEin gültiger Name im Namensraum muß nicht unbedingt gebunden seinNamen im selben Namensraum sind immer eindeutig und dürfen deshalb auch nur an ein Objekt vergeben werden.Die Generierung eindeutiger Namen erfolgt zum Beispiel durch einen knotenlokalen Zähler. Hängt man eine Rechneridentifikation an, so lassen sich global eindeutige Namen erzeugen.

Page 10: Studiengang Informatik FHDW

Vorlesung: 11 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Namensraum (2)Namensraum (2)Häufig setzen sich Namen aus Komponenten zusammen, wie zum Beispiel "www.fhdw.de" oder "/home/hellberg"Einen gültigen Anfangsteil eines Namens nennt man dessen Präfix, den Endteil Suffix.Präfix und Suffix sind selbst wieder Namen.Typische Anwendung davon sind die hierarchisch angelegten Bezeichnungen von Datei-verzeichnissen oder Netzdomänen.

Page 11: Studiengang Informatik FHDW

Vorlesung: 12 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Namensraum (3)Namensraum (3)Häufig erlauben Aliase die Zusammenfassung von Komponenten zu einem neuen Namen.Die Verwendung reiner Namen erzeugen einen flachen Namensraum.Verwendet man strukturierte Namen, so erreicht man meist einen hierarchischen Namensraum.Durch die hierarchische Struktur lassen sich solche Namensräume leicht dezentral verwalten und sind gut skalierbar.

Page 12: Studiengang Informatik FHDW

Vorlesung: 13 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Partitionierung von NamensräumenPartitionierung von Namensräumenphysisch partitioniert:

Namen tragen die physische Ortsinformation in sichzum Beispiel "Kapitel7.PlatteA.Rechner-17"

die Adresse ist direkt aus dem Namen bekanntkein Nachfragen bei einem Namensdienst notwendigder Namensraum ist unflexibel für die Umorganisationen der Objekte.

organisatorisch partitioniertMeist sind hierarchische Namensräume organisatorisch partitioniert.

Ein Name wie "teilnehmer.informatik.fhdw.de" bezeichnet die aufsteigende Organisationsstruktur, die sich hinter dem benannten Objekt befindet

dezentrale Namensverwaltung jeweils unterhalb des eigenen Präfixes bzw. Suffixes möglich

Page 13: Studiengang Informatik FHDW

Vorlesung: 14 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NamensdomäneNamensdomäneEine Namensdomäne ist ein Namensraum, für den eine einzelne Verwaltungsinstanz zuständig istPro Domäne gibt es typischerweise einen NamensdienstEine Domäne kann wiederum Subdomänen beinhalten, die einen Subnamensraum aufspannen

Page 14: Studiengang Informatik FHDW

Vorlesung: 15 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NamensdienstNamensdienstEin Namensdienst ist eine Datenbasis, welche die Zuordnung von Namen zu Objekten und damit zu deren Attributen und Werten speichert.Hauptaufgabe:

Namensanfragen in die entsprechenden Attribute auflösen (engl.: resolve).

Da große Namensräume meist auf mehrere, verteilte Datenbasen aufgeteilt werden müssen, spricht man bei dem verwalteten Inhalt einer Datenbasis von deren Kontext.

Page 15: Studiengang Informatik FHDW

Vorlesung: 16 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NamensverwaltungNamensverwaltungDie Namensverwaltung ist meist ein eigener DienstSeparation (Offenheit verteilter Systeme)

spezifische Dienste werden separiert angeboten, so dass unterschiedlichste Klienten diesen Dienst in Anspruch nehmen könnenVeränderungen des Dienstes erfolgen dann an nur dieser einen Stelle und sind sofort für alle verfügbar.

Unifizierung (Das gleiche Namensschema gilt für unterschiedliche Dienste)

In Unix werden beispielsweise alle Ein-/Ausgabemedien wie Dateien, Devices oder Pipes mit der gleichen Syntax bezeichnetist zusätzlich NFS (Network File System) installiert, werden lokale und entfernte Dateien mit identischer Syntax bezeichnet.

Page 16: Studiengang Informatik FHDW

Vorlesung: 17 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Namensverwaltung (2)Namensverwaltung (2)Integration (Im Laufe der Zeit können Namensräume zusammenwachsen oder sich auftrennen)

Diese Änderung an einer Stelle im System durchzuführen ist dann einfacherAllerdings können beim Zusammenfügen nicht nur doppelte Namen vorkommen, sondern auch unterschiedliche Namenskonventionen in den Teilbereichen gelten, was das Zusammenwachsen erschwert.

Page 17: Studiengang Informatik FHDW

Vorlesung: 18 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Anforderungen an NamensdiensteAnforderungen an NamensdiensteLange Lebensdauer

Der Namensdienst wird über eine lange Zeit benötigt.Es werden viele Änderungen der Einträge stattfinden.

Hohe VerfügbarkeitAbhängigkeit anderer Dienste und Programme.Ein nicht verfügbarer Namensdienst macht auch die davon abhängigen Dienste nicht verfügbar.

FehlerisolationEinzelne, lokale Ausfälle dürfen nicht den gesamten Namensdienst lahmlegen.

Toleranz von MißtrauenEin großes, offenes System kann keine Komponente haben, der alle Klienten trauen. Namen müssen aber authentisch sein, um sinnvoll zu sein.

Page 18: Studiengang Informatik FHDW

Vorlesung: 19 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Daten und OperationenDaten und OperationenDie Daten eines Namensdienstes liegen als Paare <Name, Attribut> vor.Attribute werden als <Typ, Wert> zu Namen gespeichert

Typ Attribut WertBenutzer Loginname

Tel.-Nr.RMeier0511 54321

Computer ArchitekturOS

Intel x86Linux

Gruppe Mitglieder Name1, Name2, ...

Page 19: Studiengang Informatik FHDW

Vorlesung: 20 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Standardoperationen des NamensdienstesStandardoperationen des NamensdienstesBinden

Die Zuordnung von Name und Attributen wird im Namensdienst gespeichert.

AuflösenIm Namensdienst wird der entsprechende Namen gesucht. Falls er gebunden ist, werden die Attribute zurückgeliefert.

LöschenEin Namenseintrag wird gelöscht. Hier ist zu beachten, daß Kontexte auch Namen sind, deren Löschen ganze Teilbereiche eines Namensraums unerreichbar machen kann.

Page 20: Studiengang Informatik FHDW

Vorlesung: 21 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Standardoperationen (2)Standardoperationen (2)Die Operationen nutzen jeweils die Namen als Suchschlüssel.Bei attributbasierten Namensdiensten können auch Attributwerte als Schlüssel verwendet werden.Suchanfragen liefern i. a. eine Menge von Namen / Attributpaaren zurück:

Bsp.: finde alle PCs der Fakultät mit OS=Windows NT,finde alle Druckerspooler eines Druckers mit Druckername=HP-LJ-4N

Die attributbasierten Namensdienste nennt man auch Yellow Page Services.Konventionelle Namensdienste nennt man auch White Page Services.

Page 21: Studiengang Informatik FHDW

Vorlesung: 22 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Namensauflösung und NavigationNamensauflösung und NavigationNamensauflösung (engl.: name resolution)

Bei hierarchisch aus Komponenten zusammengesetzten Namen entspricht dies einer Traversierung des Syntaxbaumes, bei gleichzeitiger Traversierung der Datenbasiseinträge im verteilten Namensdienst.

ABBILDUNG EINFÜGEN!!!

Page 22: Studiengang Informatik FHDW

Vorlesung: 23 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Namensauflösung und Navigation (2)Namensauflösung und Navigation (2)Oft ist mit der Auflösung die Navigation durch verschiedene Namensserver verbunden.

Die logische Struktur eines Namensraums ist physisch auf verschiedene Server aufgeteilt.Dabei werden üblicherweise gleiche Präfixe bzw. Suffixe in einer physischen Lokation zusammengefaßt.Dies vereinfacht Binden und Löschen von Namenseinträgen.

Page 23: Studiengang Informatik FHDW

Vorlesung: 24 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Namensauflösung und Navigation (3)Namensauflösung und Navigation (3)Klienten beauftragen einen Useragenten mit der Namensauflösung.

Dieser nimmt die Navigation durch die verschiedenen Nameserver vor und liefert nach erfolgreicher Auflösung das Ergebnis an den Klienten.

Der Useragent kann als Bibliothekspaket, das zur Klientensoftware gebunden wird, oder als separater Prozeß implementiert sein, der dann mehreren Klienten gleichzeitig dient.

Page 24: Studiengang Informatik FHDW

Vorlesung: 25 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NavigationsvariantenNavigationsvariantenIterative Navigation

Kann eine Anfrage bei einem Namensserver nicht vollständig aufgelöst werden, wird die Adresse eines anderen Namensservers zurückgeliefert.Bei dieser Adresse kann der Useragent dann erneut anfragen.Die Namensserver halten Kontextinformationen, die die Adressen der Server beinhalten, die weiter-führende Informatio-nen zum angefragtenNamen haben.

Page 25: Studiengang Informatik FHDW

Vorlesung: 26 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Navigationsvarianten (2)Navigationsvarianten (2)Multicast-Navigation

Der Useragent schickt die Anfrage per Multicast an alle Namensserver.Bei ungebundenen Namen antwortet keiner, ansonsten derjenige, der den Namen kennt.

Page 26: Studiengang Informatik FHDW

Vorlesung: 27 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Navigationsvarianten (3a)Navigationsvarianten (3a)Iterative serverkontrollierte Navigation

Der Useragent stellt seine Anfrage an einen Namensserver, der dann iterativ die weitere Navigation durchführt.Der zuerst beauftragte Namensserver übernimmt die Rolle eines iterativ navigierenden Useragenten.

Page 27: Studiengang Informatik FHDW

Vorlesung: 28 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Navigationsvarianten (3b)Navigationsvarianten (3b)

Iterative server-kontrollierteNavigation am Beispiel vonDNS

Page 28: Studiengang Informatik FHDW

Vorlesung: 29 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Navigationsvarianten (4)Navigationsvarianten (4)Rekursive serverkontrollierte Navigation

Kann ein Namensserver einen Namen nicht vollständig auflösen, so beauftragt er einen anderen Namensserver.Dieser verfährt dann gegebenenfalls genauso, es erfolgt dadurch ein rekursiver Abstieg entsprechend der konkreten Namenssyntax.

Page 29: Studiengang Informatik FHDW

Vorlesung: 30 Betriebssysteme 2009 Prof. Dr. G. Hellberg

NavigationsvariantenNavigationsvariantenAnmerkung zur Sicherheit

Falls ein Namensdienst administrative Grenzen überschreitet, sind die Useragenten und Namensserver unter Umständen nicht mehr zugriffsberechtigt.Dies bedingt, daß dann meist rekursiv serverkontrolliert zu verfahren ist.

Page 30: Studiengang Informatik FHDW

Vorlesung: 31 Betriebssysteme 2009 Prof. Dr. G. Hellberg

CachingCachingUm Zugriffe auf oder unter Namensservern zu reduzieren, wird Caching eingesetzt.

Bei jeder Namensauflösung werden Paare aus <Name, Attribut> oder <Kontext, Servername> im Useragenten bzw. Server gespeichert.Verbessert die Leistungsfähigkeit des Namensdienstes und erhöht die Verfügbarkeit bei Ausfällen.Die Cacheverfahren nutzen, daß sich Namensinfor-mationen nur selten ändern.

Page 31: Studiengang Informatik FHDW

Vorlesung: 32 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Caching (2)Caching (2)Es wird beim Caching keine strikte Konsistenz gefordert.

Eine fehlerhafte Namensauflösung läßt den angefor-derten Dienst des Klienten im schlechtesten Fall mit einer Fehlermeldung zurückkehren, es wird eine zweite Namensauflösung gestartet, die sich nicht mehr aus dem Cache bedient, sondern an den Namensdienst wendet.

Caching ist ein Grund, warum Useragenten oft als eigenständige Prozesse implementiert werden.Somit können mehrere Klienten von Nachfragen anderer profitieren.

Page 32: Studiengang Informatik FHDW

Vorlesung: 33 Betriebssysteme 2009 Prof. Dr. G. Hellberg

ReplikationReplikationReplikation ist eine weitere Möglichkeit, die Verfügbarkeit des Dienstes zu verbessern.

Die gesamte oder Teile der Namensinformation eines Namensservers wird an anderen unabhängigen Stellen nochmals gehalten.Die Zuordnung kann als Primär- und Sekundärserver oder als symmetrisches Serverkonzept erfolgen.

Page 33: Studiengang Informatik FHDW

Vorlesung: 34 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name SystemInternet Domain Name SystemIn den Anfängen des Internet:

alle Rechnernamen und ihre IP-Adressen werden in einer zentralen Masterdatei gehalten.Bei Bedarf wird diese Datei mittels FTP in den lokalen Rechner geladen.

Mit der Verbreitung des Internet muss eine skalierbare Lösung verwendet werden:Internet Domain Name System, DNS

Page 34: Studiengang Informatik FHDW

Vorlesung: 35 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (2)Internet Domain Name System (2)DNS ist konzeptuell für viele Namensräume entworfen worden, Verwendung findet es für den Namensraum des Internet.Die Namensräume des DNS sind baumstrukturiert, wobei die Namenskomponenten durch einen Punkt getrennt werden.Der Weg vom Knoten zur Wurzel wird von links nach rechts aufgeschrieben.Der Internet-Namensraum ist in den USA organisatorisch partitioniert, ausserhalb der USA ist er vorwiegend geographisch partitioniert.

Page 35: Studiengang Informatik FHDW

Vorlesung: 36 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (3)Internet Domain Name System (3)Folgende Endsuffixe (Top Level Domain, TLD) sind vergeben:

generic TLDscom Kommerzielle Organisationenedu Bildungseinrichtungengov Verwaltungs- oder Regierungseinrichtungenmil Militärische Organisationennet Netzwerkunterstützungszentrenint Internationale Organisationenorg andere Organisationen.

neue generic TLDsarts Unternehmen im Bereich Kultur/Unterhaltungfirm Unternehmen und Firmeninfo Unternehmen im Informationsdienstleistungssektorrec Unternehmen im Bereich Erholung/Freizeitshop Verkaufseinrichtungen

Page 36: Studiengang Informatik FHDW

Vorlesung: 37 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (4)Internet Domain Name System (4)(geographische) TLDs

de, uk, fr, it, … : Zwei Buchstaben kennzeichnen das jeweilige Land.Die geographischen Domänen sind nicht physisch an ihre Länder gebunden.Ein Name mit dem Suffix „.de“ kann auch eine Firmendependence einer deutschen Firma in jedem beliebigen Land der Welt sein.

Bsp.: LetsBuyIt.de ,Hauptsitz Schweden (TLD: se)Query Hostname Real Hostname IP-AddressMailserver hinge.mistral.co.uk (pref=20) hinge.mistral.co.uk 195.184.228.15Mailserver mail.letsbuyit.de (pref=10) host-212-18-19-61.customer.m-online.net 212.18.19.61Nameserver ns.domainnetwork.se (SOA) ns.domainnetwork.se 217.151.195.20Nameserver ns2.domainnetwork.se ns2.domainnetwork.se 217.151.192.36Webserver www.letsbuyit.de 217.154.128.105 217.154.128.105

Page 37: Studiengang Informatik FHDW

Vorlesung: 38 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (5)Internet Domain Name System (5)Die Namen im DNS heißen Domain Names.Die Vergabe der Namen liegt bei der entsprechend der Baumstruktur vorgegebenen Verantwortlichkeit.Das DNS selbst kennt keine relativen Namen, so dass immer der komplette Name zur Auflösung notwendig ist.Oft gleicht die Klientensoftware, d.h. der Useragent, dies aus, indem sie an einfache Namen die Default Domain anhängt.

Page 38: Studiengang Informatik FHDW

Vorlesung: 39 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (6)Internet Domain Name System (6)DNS-Einstellungen des Betriebssystems MS Windows 2000

drhellberg.de

Page 39: Studiengang Informatik FHDW

Vorlesung: 40 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (7)Internet Domain Name System (7)DNS unterstützt für Klienten zwei Standardanfragen:

NamensauflösungZu einem Rechnernamen wird die IP-Adresse zurückgeliefert.Dies bezeichnet man als Host Name Resolution.

Mail Host LocationDie eMail-Software fragt bei DNS nach den Mailhosts für eine eMail-Adresse und bekommt eine geordnete Liste mit Domain Names der Rechner, die für diese Adresse eine Mailbox bereithalten.An diese Liste (oft nur ein Eintrag) kann die Software dann die Mail abschicken.

Page 40: Studiengang Informatik FHDW

Vorlesung: 41 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Internet Domain Name System (8)Internet Domain Name System (8)Zusätzliche DNS-Anfragen sind definiert, werden jedoch nicht von allen Implementierungen angeboten:

Reverse ResolutionZu einer IP-Adresse wird der Domain Name des Rechners ermittelt.

Host InformationZu jedem Rechner können Informationen über den Architekturtyp und das Betriebssystem angefragt werden.Dies ist aus Sicherheitsgründen meist nicht verfügbar.

Wohlbekannte DiensteZu jedem Rechner wird eine Liste bekannter dort verfügbarer Dienste wie telnet, ftp oder WWW, sogenannte Well Known Services, und deren verwendetes Protokoll, z.B. TCP oder UDP, geliefert.

Page 41: Studiengang Informatik FHDW

Vorlesung: 42 Betriebssysteme 2009 Prof. Dr. G. Hellberg

DNS NamensserverDNS NamensserverJeder DNS Namensserver verfügt über einen Teil der gesamten Namensdatenbasis.Vorwiegend besteht dieser Teil aus den Daten der lokalen Domäne.Die Vereinigung aller Namensserver bildet dann die gesamte Datenbasis.Die Namensdaten sind dabei in Zonen unterteilt. Eine Zone enthält folgende Daten:

Attribute aller Namen der Domäne, außer der Subdomänen, die separat verwaltet werden.Namen und Adressen der Namensserver, die die maßgebenden Daten der Zone halten.Namen der Namensserver von Subzonen.Managementparameter, u. a. für Caching & Replikation.

Page 42: Studiengang Informatik FHDW

Vorlesung: 43 Betriebssysteme 2009 Prof. Dr. G. Hellberg

DNS Namensserver (2)DNS Namensserver (2)Alle Zonendaten werden in Dateien, sogenannten Resource Records (RR) gespeichert.Die verwendeten Recordtypen sind:

A (Computeradresse),NS (maßgebender Namensserver),CNAME (kanonischer Aliasname),SOA (Start der Zonendaten),WKS (well-known Service),PTR (Domain Name Pointer für Reverse Resolution),HINFO (Host Info),MX (Mail Exchange),TXT (Text).

Page 43: Studiengang Informatik FHDW

Vorlesung: 44 Betriebssysteme 2009 Prof. Dr. G. Hellberg

DNS Namensserver (3)DNS Namensserver (3)Jede Zone muß mindestens einmal repliziert werden.Die Primärserver (auch: Zonenmaster) lesen die Zonendaten direkt aus einer Masterdatei, die der Systemverwalter manuell pflegt.Die Sekundärserver replizieren die Information periodisch von ihrem Primärserver.Die Frequenz der Aktualisierung wird vom Systemverwalter eingestellt und liegt typischerweise bei 12-24 Stunden

Page 44: Studiengang Informatik FHDW

Vorlesung: 45 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Funktionsprinzip CachingFunktionsprinzip CachingDie Namensserver dürfen Daten cachen.

Jeder Eintrag hat ein Verfallsdatum (engl.: time-to-live) und nur für diese Zeit stellen Namensserver Klienten Daten aus dem Cache zur Verfügung.Die Namensserver halten dabei Einträge über bis zu zwei Namenskomponenten bzw. Domänen hinweg.Dadurch ist es möglich, meist mit zwei Zugriffen auf Namensservern auszukommen, um einen Namen aufzulösen.Grund: die DNS Hierarchie ist selten tiefer als vier Stufen.

Page 45: Studiengang Informatik FHDW

Vorlesung: 46 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Useragenten und das DNS-ProtokollUseragenten und das DNS-ProtokollDie Useragenten des DNS heißen Resolver.Sie sind im allgemeinen als Bibliothekssoftware implementiert, die über UDP/IP das DNS-Protokoll nutzen.Die Wahl, ob DNS iterative und rekursive Navigation verwendet, liegt beim Resolver.Ebenfalls möglich: mehrere Anforderungen des Resolvers pro DNS-Anfrage um so mit einer Nachricht gleich mehrere Namen auflösen zu lassen.

Page 46: Studiengang Informatik FHDW

Vorlesung: 47 Betriebssysteme 2009 Prof. Dr. G. Hellberg

BINDBINDEine in der Linux/Unix-Welt oft eingesetzte Implementierung des DNS-Namensservers ist Berkeley Internet Name Domain (BIND).Die BIND-Namensserver laufen als named DämonenDie Useragenten sind durch Bibliothekssoftware implementiert.

Page 47: Studiengang Informatik FHDW

Vorlesung: 48 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Zusammenfassung DNSZusammenfassung DNSDNS ist ein recht primitiver Namensdienst im Internet.DNS existiert deshalb zusammen mit anderen lokalen Diensten, z. B.:

Network Information Service, NIS, speichert Benutzernamen und Paßwörter.

Page 48: Studiengang Informatik FHDW

Vorlesung: 49 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Global Name ServiceGlobal Name ServiceDer Global Name Service (GNS) wurde bei Digital Equipment Corporation (DEC) als ein langlebiger Namensdienst zur Ressourcenlokation, Mailadressierung und Authentisierung entwickelt:

GNS unterstützt Veränderungen in der Partitionierungsstruktur von Namensräumen,GNS benutzt Caching und Replikation,die Namensdatenbasis besteht aus einem Baum von Verzeichnissen, den Directories,jedes Directory besitzt einen Directory Identifier, DI,Die Namen bestehen aus Paaren <Directoryname, Wertename>,Die Wertenamen zeigen auf einen strukturierten Wertebaum.

Page 49: Studiengang Informatik FHDW

Vorlesung: 50 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Beispiel eines GNS-DirectoybaumesBeispiel eines GNS-Directoybaumes

Page 50: Studiengang Informatik FHDW

Vorlesung: 51 Betriebssysteme 2009 Prof. Dr. G. Hellberg

VereinigungVereinigungGNS unterstützt die Vereinigung von bereits existierenden Namensbäumen durch eine gemeinsame neue Wurzel.Damit Klienten, die noch alte Pfadnamen verwenden, nicht geändert werden müssen, verfügt GNS an der neuen Wurzel über eine Tabelle mit der alte Wurzelbezeichner (z.B. #599), auf die die neuen Pfadnamen abgebildet werden (z.B. #633/EC). siehe Beispiel nächste Folie

Page 51: Studiengang Informatik FHDW

Vorlesung: 52 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Beispiel Vereinigung von GNS-DirectoriesBeispiel Vereinigung von GNS-Directories

Page 52: Studiengang Informatik FHDW

Vorlesung: 53 Betriebssysteme 2009 Prof. Dr. G. Hellberg

RestrukturierungRestrukturierungGNS unterstützt die Restrukturierung eines Namensbaums aufgrund organisatorischer Änderungen.Im nachfolgenden Bild wurde das Directory US umgehängt.Um alte Pfadnamen weiterhin zuzulassen, wird an der vorhergehenden Position des verschobenen Directories ein symbolischer Verweis eingefügt.

Page 53: Studiengang Informatik FHDW

Vorlesung: 54 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Beispiel Restrukturierung v. GNS-DirectoriesBeispiel Restrukturierung v. GNS-Directories

Page 54: Studiengang Informatik FHDW

Vorlesung: 55 Betriebssysteme 2009 Prof. Dr. G. Hellberg

X.500 Directory ServiceX.500 Directory ServiceDNS und GNS sind Namensdienste, die vorwiegend für Rechnernamen und deren Adressen eingesetzt werden.

Darüber hinausgehende Forderungen:Rechnernamen zu Adressen auflösen,komplexe Suchanfragen stellen,Speicherung zusätzlicher Information.

Solche Dienste nennt man Directory- oder Verzeichnisdienste.

Directorydienste sind hochwertige, attributbasierte Namensdienste.

Page 55: Studiengang Informatik FHDW

Vorlesung: 56 Betriebssysteme 2009 Prof. Dr. G. Hellberg

X.500 Directory Service (2)X.500 Directory Service (2)X.500 ist ein solcher Dienst, der als CCITT Standard auf Ebene 7 des OSI-Referenzmodells definiert ist.X.500 ist Bestandteil von OSF-DCE (Open Software Foundation, Distributed Computing Environment) und wurde daher von der Industrie aufgegriffen und unterstützt.X.500 ist die Ausgangsbasis zu LDAP (lightweight directory access protocol)

Page 56: Studiengang Informatik FHDW

Vorlesung: 57 Betriebssysteme 2009 Prof. Dr. G. Hellberg

X.500 NamenX.500 NamenEin X.500 Namensbaum heißt Directory Information Tree (DIT).Die gesamte Datenstruktur mit allen Attributinhalten nennt man Directory Information Base, DIB.Alle Namen/Attribute sind einem Typ bzw. einer Objektklasse zugeordnet.Jeder DIB-Eintrag besteht aus einem Namen und einer Menge von Attributen.Absolute Namen beschreiben den Gesamtpfad von der Wurzel zu dem Objekt.Relative Namen sind möglich, der Klient setzt dazu einen entsprechenden Kontext.

Page 57: Studiengang Informatik FHDW

Vorlesung: 58 Betriebssysteme 2009 Prof. Dr. G. Hellberg

X.500 Directory Information Tree X.500 Directory Information Tree

Page 58: Studiengang Informatik FHDW

Vorlesung: 59 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Directory Information BaseDirectory Information BaseDie Attribute eines DIB-Eintrags bestehen aus Typ und mehreren Werten.

Jeder Typ wird durch einen Typnamen spezifiziert, z. B.CountryName, OrganizationName, CommonName, TelephoneNumber, Mailbox, ObjectClass, usw.

Neue Attributtypen können durch einen Namen, plus eine Syntaxdefinition in ASN.1, definiert werden.Alle Einträge werden jeweils einer Objektklasse zugeordnet, z.B. Organization, OrganizationalPerson, Document.Neue Klassen können definiert werden.Attribute können als "obligatorisch" oder "optional" spezifiziert werden.

Die Definition der Klassen erfolgt im objekt-orientierten Sinn in einer Vererbungshierarchie.

Page 59: Studiengang Informatik FHDW

Vorlesung: 60 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Directory Information Base (2)Directory Information Base (2)Der Name des DIB-Eintrags wird aus den vor-handen Attributen gewählt wird als Distinguished Attribute bezeichnet.

Eingebettet in die Hierarchie ist dies der "Distinguished Name".Er bestimmt die Positionierung des Eintrags im Baum und dient als Navigationsanker für den gesamten Eintrag.

Page 60: Studiengang Informatik FHDW

Vorlesung: 61 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Directory Information Base (3)Directory Information Base (3)Laut Standard soll es eine einzige DIB auf der Welt geben, verteilt auf individuelle X.500-Server, um so eine weltweite Suchanfrage stellen zu können.

Jede mittlere und größere Organisation hat dazu einen Server.Die Klienten können jeden dieser Server kontaktieren.

Bei X.500 heißen die Server "Directory Service Agent" (DAS)Die Klienten heißen "Directory User Agent" (DUA).

Page 61: Studiengang Informatik FHDW

Vorlesung: 62 Betriebssysteme 2009 Prof. Dr. G. Hellberg

X.500 ZugriffsmethodenX.500 ZugriffsmethodenSpezielle Benutzer dürfen Einträge einfügen, ändern und löschen.Die Klienten nutzen die beiden Leseoperationen:

Lesen:Eingabe ist ein absoluter oder relativer Name und eine Liste der zu lesenden Attribute. Der DIT wird entsprechend navigiert und der DSA gibt die geforderten Werte zurück.

Suchen:Eingabe ist ein Basisname und ein Filterausdruck.Ab dem Basisnamen beginnt die Suche.Eine Liste aller Namen, die den Filterausdruck erfüllen, wird zurückgeliefert.Die Suche kann noch zusätzlich im Suchbereich, in der Länge der Ausgabeliste und in der zeitlichen Dauer der Suche begrenzt werden.

Page 62: Studiengang Informatik FHDW

Vorlesung: 63 Betriebssysteme 2009 Prof. Dr. G. Hellberg

X.500 ProblemeX.500 ProblemeDer X.500 Standard schreibt die Implementierung nicht vor, auch nicht die Form der Navigation.Ein Nachteil von X.500 ist, dass die Definition der ObjectClasses auf nationaler und internationaler Ebene geschehen muß, um den Gültigkeitsbereich weit zu fassen, damit auch eine weite Suche ermöglicht wird.

Page 63: Studiengang Informatik FHDW

Vorlesung: 64 Betriebssysteme 2009 Prof. Dr. G. Hellberg

LDAPLDAPDas zugrunde liegende X.500 DAP (Directory Access Protocol) ist ein OSI-Anwendungsprotokoll.

DAP benötigt den kompletten OSI Protokollstack,dieser ist in vielen Fällen nicht verfügbar / nicht installiert.

Es erfolgte die Entwicklung eines Lightweight Access Protocol (LDAP):

LDAP nutzt den TCP/IP Protokollstack,es existiert inzwischen in der Version 3 als Proposed Standard (RFCs 2252 - 2256).

Page 64: Studiengang Informatik FHDW

Vorlesung: 65 Betriebssysteme 2009 Prof. Dr. G. Hellberg

LDAP ArchitekturbeispieleLDAP Architekturbeispiele

1.) Standalone LDAP Server

2.) LDAP Server als X.500-Gateway

Page 65: Studiengang Informatik FHDW

Vorlesung: 66 Betriebssysteme 2009 Prof. Dr. G. Hellberg

Eigenschaften von LDAPEigenschaften von LDAPVereinfachte und weniger Operationen als X.500:

suchen,hinzufügen,löschen,modifizieren,verschieben,vergleichen

Definitionen von Namen und Attributen als String statt in ASN.1

Page 66: Studiengang Informatik FHDW

Vorlesung: 67 Betriebssysteme 2009 Prof. Dr. G. Hellberg

LDAP Authentisierung & AutorisierungLDAP Authentisierung & AutorisierungKlienten müssen sich binden

anonyme Sessions - keine AuthentisierungBasic Authentication mit eigenem DN und Klartext-PasswortSASL (simple authentication and security layer)

wählbare Mechanismen (Kerberos V4, S/Key, GSSAPI, CRAM-MD5, External, SSL)und jeweils Credentials des Klienten.

Access Control List (ACL)derzeit herstellerspezifischInternet Draft existiert bereits

Page 67: Studiengang Informatik FHDW

Vorlesung: 68 Betriebssysteme 2009 Prof. Dr. G. Hellberg

LDAP V3LDAP V3Zusätzlich in LDAP Version 3

dynamische Directory-ServicesLanguage CodesTransport Layer SecuritySimple Paged ResultsReferrals und Knowledge ReferencesServer Side SortingLDAP API:

für CJava NDI (Java naming and directory interface) beinhaltet LDAP API

Page 68: Studiengang Informatik FHDW

Vorlesung: 69 Betriebssysteme 2009 Prof. Dr. G. Hellberg

ENDEENDE

Fragen?