Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Vorlesung: 1 Betriebssysteme 2008 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebssysteme 3. Quartal 2008."—  Präsentation transkript:

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

2 Vorlesung: 2 Betriebssysteme 2008 Prof. Dr. G. HellbergGliederung 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

3 Vorlesung: 3 Betriebssysteme 2008 Prof. Dr. G. HellbergGliederung 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) Namensdienste (Kap 7) 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

4 Vorlesung: 4 Betriebssysteme 2008 Prof. Dr. G. HellbergNamensverwaltung Namen dienen in verteilten Systemen dazu, Ressourcen, zu benennen und zu identifizieren: Computer Dienste Ports Netzadressen Objekte Dateien Prozesse Benutzer

5 Vorlesung: 5 Betriebssysteme 2008 Prof. Dr. G. HellbergThemenstellungen Struktur von Namen Vergabe und Administration Zugriff auf Namen Abbildung von Namen auf die durch sie repräsentierten Objekte

6 Vorlesung: 6 Betriebssysteme 2008 Prof. Dr. G. Hellberg Aufgaben und Eigenschaften von Namen Erklärung Der Name bezeichnet ein Objekt z.B.: "HP-LJ-4N_Sekretariat" oder "Kapitel 7" Identifizierung Eine Systemidentifikation oder Ressourceidentifikation wird durch den Zugriff über dessen Namen verborgen z.B.: "www.fhdw.de" verbirgt die IP-Adresse dieses Rechners Lokalisierung Die Adresse eines Objektes wird durch den Zugriff über einen Namen verborgen Die -Adresse 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).

7 Vorlesung: 7 Betriebssysteme 2008 Prof. Dr. G. Hellberg Verwendungskontexte von Namen Namen, die im Kontext eines Dienstes benutzt werden Bsp.: ein Dateiname im Dateisystem oder der Prozeß- identifikator im Prozeßmanagement die Dienste sind in der Lage, die Namen selbst zu verarbeiten Dienstübergreifende Namen Bsp.: Benutzername, eine -Adresse oder ein Dienst selbst, wie das Dateisystem oder der Druckdienst Ein Name ist meist einem Objekt zugeordnet (gebunden)

8 Vorlesung: 8 Betriebssysteme 2008 Prof. Dr. G. Hellberg Verwendungskontexte von Namen (2) Dienstspezifische Namen können direkt an die aktuelle Repräsentation des Objekts gebunden werden Dienstunspezifische Namen werden an Attribute gebunden Jedes Objekt hat eine Adresse als Attribut ( , IP-Adresse, Telefonnummer) Zusätzliche Attribute sind etwa Paßwörter, Home Directories, Versionsnummern, BS-Version Die 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.

9 Vorlesung: 9 Betriebssysteme 2008 Prof. Dr. G. Hellberg Abhängigkeit der Namen Abhängigkeit der Namen von der physischen Konfiguration: reine Namen (engl.: pure names) enthalten keine Abhängigkeit unreine Namen (engl.: impure names) enthalten solche Informationen "Kapitel 7" ist ein reiner Name, während " hannover.de" ein unreiner Name ist, da er Ortsinformation beinhaltet.

10 Vorlesung: 10 Betriebssysteme 2008 Prof. Dr. G. HellbergNamensraum Die Menge aller gültigen Namen, entsprechend einer definierten Syntax, nennt man einen Namensraum Ein gültiger Name im Namensraum muß nicht unbedingt gebunden sein Namen 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.

11 Vorlesung: 11 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

12 Vorlesung: 12 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

13 Vorlesung: 13 Betriebssysteme 2008 Prof. Dr. G. Hellberg Partitionierung von Namensräumen physisch partitioniert: Namen tragen die physische Ortsinformation in sich zum Beispiel "Kapitel7.PlatteA.Rechner-17" die Adresse ist direkt aus dem Namen bekannt kein Nachfragen bei einem Namensdienst notwendig der Namensraum ist unflexibel für die Umorganisationen der Objekte. organisatorisch partitioniert Meist 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

14 Vorlesung: 14 Betriebssysteme 2008 Prof. Dr. G. HellbergNamensdomäne Eine Namensdomäne ist ein Namensraum, für den eine einzelne Verwaltungsinstanz zuständig ist Pro Domäne gibt es typischerweise einen Namensdienst Eine Domäne kann wiederum Subdomänen beinhalten, die einen Subnamensraum aufspannen

15 Vorlesung: 15 Betriebssysteme 2008 Prof. Dr. G. HellbergNamensdienst Ein 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.

16 Vorlesung: 16 Betriebssysteme 2008 Prof. Dr. G. HellbergNamensverwaltung Die Namensverwaltung ist meist ein eigener Dienst Separation (Offenheit verteilter Systeme) spezifische Dienste werden separiert angeboten, so dass unterschiedlichste Klienten diesen Dienst in Anspruch nehmen können Verä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 bezeichnet ist zusätzlich NFS (Network File System) installiert, werden lokale und entfernte Dateien mit identischer Syntax bezeichnet.

17 Vorlesung: 17 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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 einfacher Allerdings können beim Zusammenfügen nicht nur doppelte Namen vorkommen, sondern auch unterschiedliche Namenskonventionen in den Teilbereichen gelten, was das Zusammenwachsen erschwert.

18 Vorlesung: 18 Betriebssysteme 2008 Prof. Dr. G. Hellberg Anforderungen an Namensdienste Lange Lebensdauer Der Namensdienst wird über eine lange Zeit benötigt. Es werden viele Änderungen der Einträge stattfinden. Hohe Verfügbarkeit Abhängigkeit anderer Dienste und Programme. Ein nicht verfügbarer Namensdienst macht auch die davon abhängigen Dienste nicht verfügbar. Fehlerisolation Einzelne, lokale Ausfälle dürfen nicht den gesamten Namensdienst lahmlegen. Toleranz von Mißtrauen Ein großes, offenes System kann keine Komponente haben, der alle Klienten trauen. Namen müssen aber authentisch sein, um sinnvoll zu sein.

19 Vorlesung: 19 Betriebssysteme 2008 Prof. Dr. G. Hellberg Daten und Operationen Die Daten eines Namensdienstes liegen als Paare vor. Attribute werden als zu Namen gespeichert

20 Vorlesung: 20 Betriebssysteme 2008 Prof. Dr. G. Hellberg Standardoperationen des Namensdienstes Binden Die Zuordnung von Name und Attributen wird im Namensdienst gespeichert. Auflösen Im Namensdienst wird der entsprechende Namen gesucht. Falls er gebunden ist, werden die Attribute zurückgeliefert. Löschen Ein Namenseintrag wird gelöscht. Hier ist zu beachten, daß Kontexte auch Namen sind, deren Löschen ganze Teilbereiche eines Namensraums unerreichbar machen kann.

21 Vorlesung: 21 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

22 Vorlesung: 22 Betriebssysteme 2008 Prof. Dr. G. Hellberg Namensauflösung und Navigation Namensauflö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!!!

23 Vorlesung: 23 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

24 Vorlesung: 24 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

25 Vorlesung: 25 Betriebssysteme 2008 Prof. Dr. G. HellbergNavigationsvarianten Iterative 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 angefragten Namen haben.

26 Vorlesung: 26 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

27 Vorlesung: 27 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

28 Vorlesung: 28 Betriebssysteme 2008 Prof. Dr. G. Hellberg Navigationsvarianten (3b) Iterative server- kontrollierte Navigation am Beispiel von DNS

29 Vorlesung: 29 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

30 Vorlesung: 30 Betriebssysteme 2008 Prof. Dr. G. HellbergNavigationsvarianten Anmerkung 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.

31 Vorlesung: 31 Betriebssysteme 2008 Prof. Dr. G. HellbergCaching Um Zugriffe auf oder unter Namensservern zu reduzieren, wird Caching eingesetzt. Bei jeder Namensauflösung werden Paare aus oder 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.

32 Vorlesung: 32 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

33 Vorlesung: 33 Betriebssysteme 2008 Prof. Dr. G. HellbergReplikation Replikation 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.

34 Vorlesung: 34 Betriebssysteme 2008 Prof. Dr. G. Hellberg Internet Domain Name System In 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

35 Vorlesung: 35 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

36 Vorlesung: 36 Betriebssysteme 2008 Prof. Dr. G. Hellberg Internet Domain Name System (3) Folgende Endsuffixe (Top Level Domain, TLD) sind vergeben: generic TLDs com Kommerzielle Organisationen edu Bildungseinrichtungen govVerwaltungs- oder Regierungseinrichtungen mil Militärische Organisationen net Netzwerkunterstützungszentren int Internationale Organisationen org andere Organisationen. neue generic TLDs arts Unternehmen im Bereich Kultur/Unterhaltung firm Unternehmen und Firmen info Unternehmen im Informationsdienstleistungssektor rec Unternehmen im Bereich Erholung/Freizeit shop Verkaufseinrichtungen

37 Vorlesung: 37 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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)

38 Vorlesung: 38 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

39 Vorlesung: 39 Betriebssysteme 2008 Prof. Dr. G. Hellberg Internet Domain Name System (6) DNS-Einstellungen des Betriebssystems MS Windows 2000 drhellberg.de

40 Vorlesung: 40 Betriebssysteme 2008 Prof. Dr. G. Hellberg Internet Domain Name System (7) DNS unterstützt für Klienten zwei Standardanfragen: Namensauflösung Zu einem Rechnernamen wird die IP-Adresse zurückgeliefert. Dies bezeichnet man als Host Name Resolution. Mail Host Location Die -Software fragt bei DNS nach den Mailhosts für eine -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.

41 Vorlesung: 41 Betriebssysteme 2008 Prof. Dr. G. Hellberg Internet Domain Name System (8) Zusätzliche DNS-Anfragen sind definiert, werden jedoch nicht von allen Implementierungen angeboten: Reverse Resolution Zu einer IP-Adresse wird der Domain Name des Rechners ermittelt. Host Information Zu jedem Rechner können Informationen über den Architekturtyp und das Betriebssystem angefragt werden. Dies ist aus Sicherheitsgründen meist nicht verfügbar. Wohlbekannte Dienste Zu 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.

42 Vorlesung: 42 Betriebssysteme 2008 Prof. Dr. G. Hellberg DNS Namensserver Jeder 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.

43 Vorlesung: 43 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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).

44 Vorlesung: 44 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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 Stunden

45 Vorlesung: 45 Betriebssysteme 2008 Prof. Dr. G. Hellberg Funktionsprinzip Caching Die 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.

46 Vorlesung: 46 Betriebssysteme 2008 Prof. Dr. G. Hellberg Useragenten und das DNS-Protokoll Die 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.

47 Vorlesung: 47 Betriebssysteme 2008 Prof. Dr. G. HellbergBIND Eine in der Linux/Unix-Welt oft eingesetzte Implementierung des DNS-Namensservers ist Berkeley Internet Name Domain (BIND). Die BIND-Namensserver laufen als named Dämonen Die Useragenten sind durch Bibliothekssoftware implementiert.

48 Vorlesung: 48 Betriebssysteme 2008 Prof. Dr. G. Hellberg Zusammenfassung DNS DNS 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.

49 Vorlesung: 49 Betriebssysteme 2008 Prof. Dr. G. Hellberg Global Name Service Der 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, Die Wertenamen zeigen auf einen strukturierten Wertebaum.

50 Vorlesung: 50 Betriebssysteme 2008 Prof. Dr. G. Hellberg Beispiel eines GNS-Directoybaumes

51 Vorlesung: 51 Betriebssysteme 2008 Prof. Dr. G. HellbergVereinigung GNS 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

52 Vorlesung: 52 Betriebssysteme 2008 Prof. Dr. G. Hellberg Beispiel Vereinigung von GNS-Directories

53 Vorlesung: 53 Betriebssysteme 2008 Prof. Dr. G. HellbergRestrukturierung GNS 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.

54 Vorlesung: 54 Betriebssysteme 2008 Prof. Dr. G. Hellberg Beispiel Restrukturierung v. GNS-Directories

55 Vorlesung: 55 Betriebssysteme 2008 Prof. Dr. G. Hellberg X.500 Directory Service DNS 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.

56 Vorlesung: 56 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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)

57 Vorlesung: 57 Betriebssysteme 2008 Prof. Dr. G. Hellberg X.500 Namen Ein 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.

58 Vorlesung: 58 Betriebssysteme 2008 Prof. Dr. G. Hellberg X.500 Directory Information Tree

59 Vorlesung: 59 Betriebssysteme 2008 Prof. Dr. G. Hellberg Directory Information Base Die 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.ASN.1 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.

60 Vorlesung: 60 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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.

61 Vorlesung: 61 Betriebssysteme 2008 Prof. Dr. G. Hellberg 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).

62 Vorlesung: 62 Betriebssysteme 2008 Prof. Dr. G. Hellberg X.500 Zugriffsmethoden Spezielle 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.

63 Vorlesung: 63 Betriebssysteme 2008 Prof. Dr. G. Hellberg X.500 Probleme Der 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.

64 Vorlesung: 64 Betriebssysteme 2008 Prof. Dr. G. HellbergLDAP Das 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 ).

65 Vorlesung: 65 Betriebssysteme 2008 Prof. Dr. G. Hellberg LDAP Architekturbeispiele 1.) Standalone LDAP Server 2.) LDAP Server als X.500-Gateway

66 Vorlesung: 66 Betriebssysteme 2008 Prof. Dr. G. Hellberg Eigenschaften von LDAP Vereinfachte 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

67 Vorlesung: 67 Betriebssysteme 2008 Prof. Dr. G. Hellberg LDAP Authentisierung & Autorisierung Klienten müssen sich binden anonyme Sessions - keine Authentisierung Basic Authentication mit eigenem DN und Klartext- Passwort SASL (simple authentication and security layer) wählbare Mechanismen (Kerberos V4, S/Key, GSSAPI, CRAM- MD5, External, SSL) und jeweils Credentials des Klienten.Credentials Access Control List (ACL) derzeit herstellerspezifisch Internet Draft existiert bereits

68 Vorlesung: 68 Betriebssysteme 2008 Prof. Dr. G. Hellberg LDAP V3 Zusätzlich in LDAP Version 3 dynamische Directory-Services Language Codes Transport Layer Security Simple Paged Results Referrals und Knowledge References Server Side Sorting LDAP API: für C Java NDI (Java naming and directory interface) beinhaltet LDAP API

69 Vorlesung: 69 Betriebssysteme 2008 Prof. Dr. G. HellbergENDE Fragen?

70 Vorlesung: 70 Betriebssysteme 2008 Prof. Dr. G. Hellberg ASN.1 (abstract syntax notation one) Eine abstrakte Syntax der Darstellungsschicht des OSI- Referenzmodells beschreibt bzw. definiert die Menge und Art der Datentypen, die von der Anwendungsschicht in Form von APDU (Application Protocol Data Unit) an die Darstellungs- schicht übergeben werden, damit diese die APDUs an das korrespondierende Endsystem weiterleitet. Im ISO-Standard 8824 wird eine Notation beschrieben, mit der es möglich ist, abstrakte Syntaxen zu definieren. Diese Spra- che wird ASN.1 (Abstract Syntax Notation 1) genannt. Mit ASN.1 lassen sich relativ einfache hierarchisch strukturierte Datentypen beschreiben. ASN.1 bietet eine Verständigungs- möglichkeit zweier Kommunikationspartner im Rahmen der Darstellungsschicht (Presentation Layer). Beim Datentransfer wandelt jeder Kommunikationspartner seine lokale Darstellung in eine gemeinsame um.

71 Vorlesung: 71 Betriebssysteme 2008 Prof. Dr. G. HellbergCredential Credentials sind Ausweispapiere, Zeugnisse oder Legitimationen in Form von Daten, die einem System die Identität eines anderen Systems oder eines Be- nutzers bestätigen sollen. Dies können Passwörter, Schlüssel oder Ergebnisse kryptografischer Verfah- ren sein oder auch physikalische Komponenten für die Zugangsberechtigung wie Chipkarten oder Schlüssel.


Herunterladen ppt "Vorlesung: 1 Betriebssysteme 2008 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebssysteme 3. Quartal 2008."

Ähnliche Präsentationen


Google-Anzeigen