Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Netzwerkdienste.

Ähnliche Präsentationen


Präsentation zum Thema: "Netzwerkdienste."—  Präsentation transkript:

1 Netzwerkdienste

2 Kommunikation in Netzen
Netzwerke Kommunikation in Netzen Dateisysteme im Netz Arbeitsmodelle im Netz Dienste im Netz Netzwerkdienste

3 Netzwerk-Nutzen electronic mail
Kommunikation: Terminabsprachen, Projektkoordination, Mitteilungen, ... file sharing keine multiplen Kopien: Dateikonsistenz, Speichererparnis device sharing bessere Druckerauslastung, lohnende Anschaffung von Spezialhardware (Farblaserdrucker, high-speed-scanner,...) processor sharing Zeitersparnis durch bessere Prozessorauslastung bei Lastverteilung und /oder Kostenersparnis durch geringere Investitionen Netzwerkdienste

4 Verteilte Betriebssysteme
Verteiltes System: Aufteilung von Funktionen in einem Rechnernetz, wobei BS auf jedem Rechner ex. Verteiltes Betriebssystem: Jede BS-Funktion ex. nur einmal im Netz Netzwerkdienste

5 MACH- Betriebssystemkern
Mach-Kern Benutzer- File Speicher Terminal programm Manager Manager I/O user mode kernel mode Scheduler, Nachrichtenübermittlung, Basic I/O, Speicherobjekte Hardware Mikrokern Vorteile: minimaler Kern, alle Funktionen modularisiert austauschbar Nachteile: Kommunikationsdauer zwischen Managern Netzwerkdienste

6 Verteilte Betriebssysteme
Vorteile Flexibilität inkrementelle Erweiterbarkeit um neue Dienste Transparenz durch ortsunabhängige Dienste Leistungssteigerung bei Lastverteilung Fehlertoleranz bei multiplen, gleichen Diensten Nachteile Leistungseinbuße durch Kommunikationsverzögerung Keine Fehlertoleranz wenn Funktion nur einmal vorhanden Fazit Alle BS sind Mischsysteme aus netzbasierten & lokalen BS-Funktionen; es ex. kein „reines“ System Netzwerkdienste

7 Netzwerke- Grundbegriffe
Subnetz mit zum Internet Stern - Netzarchitektur Router Router Hub Backbone Switch Router Router Repeater Das Ziel, alle Rechner eines Netzes miteinander zu verbinden, kann man sowohl durch einen Kabelstrang erreichen, der an den Enden miteinander verbunden sein kann (Ringarchitektur), als auch dadurch, dass jeder Rechner mit einem Kabel zu einem zentralen Punkt verbunden ist (Sternarchitektur). In der Abb. ist ein solche Architektur gezeigt, in der die Rechner als Kreise und die Vermittlungseinheiten als Vierecke gezeichnet sind. Werden die Kabelstücke durch den Apparat des zentralen Punkts zu einem einzigen, elektrisch zusammenhängenden Netzwerk geschaltet, so wird dieser als Hub bezeichnet. Ein solches Netz hat zwar physisch eine Sternstruktur, logisch entspricht dies aber einer einzigen, langen Leitung. Solch eine Struktur wird gern verwendet, da sie die zentrale Kontrolle jeden Anschlusses erlaubt: fehlerhaften Rechnern im Netz kann jederzeit „der Stecker gezogen“ werden, ohne die anderen Rechner im Netz zu blockieren.. Der Übergang der Signalinhalte von einem Netz in ein angeschlossenes anderes wird durch ein spezielles Gerät, eine Brücke (Bridge) oder ein Gateway, ermöglicht. Grundsätzlich betrachtet eine solche Bridge alle Signale und leitet diejenigen ins Nachbarnetz um, die als solche kenntlich gemacht wurden. Schnelle Brücken, die auch noch weitere Funktionen zur Vermittlung beherrschen, werden als Switch bezeichnet. Wird die Brücke gezielt angesprochen und beauftragt, die Signale aus dem lokalen Netz, wo sie erzeugt wurden, zum Zielrechner in ein anderes Netz geeignet weiterzuleiten, so spricht man von einem Router. Sowohl ein Hub als auch ein Switch kann zu einem Router ausgebaut werden. Man kann mehrere Netze über Router oder Gateways zusammenkoppeln. In Firmennetzen („Intranet“) bildet die Kopplung über ein spezielles Netz, das keine Drucker oder andere gemeinsam genutzte Geräte (Ressourcen) enthält und nur zur zuverlässigen Verbindung der Subnetze zuständig ist, eine wichtige Geschäftsgrundlage. Es wird deshalb als Backbone-Netz bezeichnet im Unterschied zu Netzen, die nichts weiterleiten können, den Stub-Netzen. Router, die zu diesem zentralen Daten-Umschlagplatz vermitteln, sind die Backbone-Router. “Backbone- Router” Subnetz Netzwerkdienste

8 Netzwerkschichten OSI-ISO
Schichten virtueller Maschinen End-to-End Verbindung: portable Software Rechner B Rechner A virtuelle P2P - Verbindungen B 7 Anwendung 7 Anwendung 6 Präsentation 6 Präsentation 5 Sitzung 5 Sitzung Transport 4 Transport 4 Transport 3 Netzwerk 3 Netzwerk 2 Datenverbindung 2 Datenverbindung 1 Phys. Verbi n dung 1 Phys. Verbi n dung Netzkabel Vorteil Systematische, portable Einteilung Nachteil zu starr und damit zu langsam Lösung Zusammenfassung von Schichten Netzwerkdienste

9 Netzwerkschichten OSI-ISO
Layer 7 : Anwendungsschicht High-level Programme: FTP, Grafik, electronic mail, ... Layer 6 : Präsentationsebene Datenformatierung, Kodierung, Gruppierung (Records, Verschlüsselung, ) Layer 5 : Sitzungsebene open/close-Semantik: Sender, Empfänger, high-level-Fehlerbehandlung, logon-passwords, Daten/Kontrollunterscheidung,... Layer 4 : Transportschicht Umwandlung in Datenpakete, Reihenfolge der Pakete, usw. Bei TCP (Transmission Control Protocol): Fehlertoleranzgrad TP0-4 festlegen Layer 3 : Netzwerkschicht Fragen der Netztopologie: Übertragungsweg, Umleitung (routing), Netzstatus, Grenzen, Auslastung, usw. Typisch: Internet Protocol IP Layer 2 : Datenverbindung Datenpakete  Unterteilung in log. Signalframes, Wiederholung bei NO-ACK. Aber: Frame-Reihenfolge ist unkontrolliert. Z.B.: Ethernet Layer 1 : physikalische Signale BitsImpulse, Freq. z.B.10BaseT Netzwerkdienste

10 Netzwerkschichten Kapselung der Datenpakete Daten Schicht 6 Daten
Header Schicht6 Daten Schicht 6 Header Schicht 5 Daten Header Schicht 4 Daten Header Schicht 3 Daten ACHTUNG: das gleiche gilt auf für das Ende (Tail)! Header Schicht 2 Schicht 3 Daten Signal - Datenpaket Netzwerkdienste

11 Kommunikationsschichten: Unix
Stream-System für Protokollschichten Schicht = Treiber, leicht austauschbar 7 Anwendung named pipes, rlogin, … 6 Präsentation XDS BS-Schnittstelle: so c kets 5 Sitzung ports , IP Adresse 4 Transport TCP/IP 3 Netzwerk 2 Datenverbindung Network Access Layer 1 Phys. Verbi n dung Netzwerkdienste

12 Kommunikationsschichten: Windows NT
Kompatibilität zu bestehenden Protokollen SMB (server message block) NetBIOS (network basic input output system) 7 Anwendung files, named pipes, mail slots 6 Präsentation Subsysteme 5 Sitzung Redirector 4 Transport NetBIOS NBT Windows - Sockets Net IPX/ TCP/IP 3 Netzwerk BEUI SPX 2 Datenverbindung NDIS Protokoll NDIS - Treiber Network Access Layer 1 Phys. Verbi n dung Netzwerkdienste

13 Virtual Private Networks VPN
Probleme Geheimhaltung von Daten (Sprache, Dokumente, ) Unterschiedl. Grösse der Datenpakete in gekoppelten Netzen Unterschiedl. Art von Transportprotokollen Lösung Verschlüsselung der Kommunikation der Anwenderebene Netzwerkdienste

14 Virtual Private Networks VPN
End-to-End-Protokoll: VPN durch Verschlüsselung Netzwerkdienste

15 Technik VoIP, Video IP Anforderung: Viele Sprach/Bildsamples
Lösung: Neues Paketmanagement im Schichtenmodell 7 Anwendung 6 Präsentation 5 Sitzung 4 Transport 3 Netzwerk 2 Datenverbindung 1 Phys. Verbi n dung Network Access Layer TCP IP RTP UDP H.323 Codec , Sicherheit Service: Konferenz, Gebühren,.. For example, if the voice samples in one packet represent a duration of 20 milliseconds, then 50 (1000ms/20ms) of these samples would be required each second (the selection of this payload duration is a compromise between bandwidth requirements and quality). Each sample carries an IP/UDP/RTP header overhead of 320 bits, meaning that 16,000 (50 X 320) header bits are sent each second. It can therefore generally be assumed that header information will add 16kbps to the bandwidth requirement for voiceover IP. For example, if an 8kbps algorithm such as G.729 is used, the total bandwidth required to transmit each voice channel will be 24kbps (8+16). Overhead 40Byte/Paket: Header IPv4:20 Byte, UDP:12 Byte, RTP: 8 Byte Zusammenfassung mehrerer samples zu einem Paket! Netzwerkdienste

16 Kommunikation in Netzen
Netzwerke Kommunikation in Netzen Dateisysteme im Netz Arbeitsmodelle im Netz Dienste im Netz Netzwerkdienste

17 IP-Adresse Namensgebung im Internet
Eindeutige IP-Adresse: z.B. „ “ IPv4: 32 Bits, notiert in 4 Dezimalzahlen je (1Byte), IPv6:128Bit Name: kronos.rbi.uni-frankfurt.de server.LocalNet.domain.country Zuordnung IP-NummerName wird auf speziellen Rechner gehalten (domain name service DNS) Vergabe und Zuordnung der IP-Adresse durch zentrale Instanzen Beispiele CIDR = Classless Inter-Domain Routing /8 lokaler Computer loopback /16 private Netzwerke Automat. Konfiguration: Dynamic Host Configuration Protocol DHCP /16 privates, link-local Netz (APIPA) 32 Bit sind nur wenige Adressen. Um jeden Mobilrechner (Handy!) oder Haushaltsgerät einheitlich eindeutig adressieren zu können, sind mehr Bits nötig. Dazu wurde mit 128 Bit die Version 6 geschaffen. Das Internet wurde mit dem TCP/IP Protokoll von der Defense Advanced Research Projects Agency (DARPA) geschaffen. Die Verwaltung der IP-Nummern und Namen wurde zuerst von der Defense Communication Agency (DCA) (jetzt Defense Information Systems Agency (DISA)) ausgeübt, die ein Network Information Center (NIC) betrieb. Die Registrierungsrechte wurden 1998 der internationalen, non-profit Organisation ICANN (Internet Corporation for Assigned Names and Numbers) übergeben. Für Deutschland ist das DENIC zuständig. Netzwerkdienste 17

18 IP-Adresse Internetnamen: Subnetze
Problem: hoher zentraler Verwaltungsaufwand bei zu vielen Netzen Lösung: Unterteilung der Rechneradresse in (Subnetz,Rechner), dezentrale Verwaltung dynamische Aufteilung durch Bitmaske (Subnetzmaske) Adressierung (Routingentscheidung) der Subnetze durch die Maske: (Adresse AND Maske) =? Subnetznummer JA : Zielrechner ist lokal im Subnetz NEIN : Routing-Rechner ansprechen Beispiel /24 CIDR-Notation Rechner Maske im Subnetz Also: Festlegung des Routing durch Angabe (Subnetznummer,Maske) Frage: Ist die RechnerId immer größer als die Id des Subnetzes, in der er ist? CIDR = Classless Inter-Domain Routing : /x Anzahl x der obersten Bits für das Netzwerk, Rest für das Interface Netzwerkdienste

19 Netznamen Namen im regionalen Netz wide area network WAN Probleme
Integration von Diensten mehrerer Domänen Konsistente, zeitveränderliche Ressourcentabelle Lösung CCITT X (1988) DAP Directory Access Protocol Dateizugriff DSP Directory Service Protocol Server-Server Kommunikation DISP Directory Information Shadowing Protocol LDAP Lightweight DAP vereinf. DAP-Version auf TCP/IP Beispiel Windows NT ADS Active Directory Service nutzt LDAP Ressourcen sind Blätter im Pfadbaum <DomänenId>://<Pfad> „Aktive Objekte“: Jede Änderung im Verzeichnis wird dem Knoten darüber mitgeteilt (z.B. Druckerstatus) Nur die letzte Änderung an einem Objekt bleibt erhalten Netzwerkdienste

20 Netznamen Namen im lokalen Netz local area network LAN
Zusammenschluß mehrer Rechner gemeinsame Wurzel // Hera Kronos Zentrale EDV Abteilung 7 Einzelverbindung / Zentrale EDV AndereAbteilungen Abteilung 7 Homogene Sicht: Beispiel Andrew File System mit DFS Inhomogene Sicht: Beispiel NFS-System unter Unix Netzwerkdienste

21 Dateinamen: Windows NT Namensraum
Wiederholung: Symbolic link parsing-Methode Beispiel Lese Datei A:\Texte\bs_files.doc \ Device DosDevices Floppy HardDisk A: B: C: Partition0 Objekt Manager Namensraum Dateimanager Namensraum bs_mem.doc bs_files.doc Texte Datei Löschen: 2 Zähler, einen für user (->Löschen im Namensraum) und einen für kernel (Speicher erst freigeben, wenn alle SysCalls beendet) Symbolic link parsing-Methode: Angenommen, das Verzeichnis von Floppy A: soll gelesen werden. „A:“ wird ersetzt durch den symbolic link „\Device\Floppy0“ und dem Objektmanager übergeben. Dann wird stattdessen der Pfad „\Device\Floppy0“ abgearbeitet, bis wieder auf einen symbolic link gestoßen wird. In unserem Fall wird die „Durchsuchen“-Methode von Floppy0 ausgeführt, die im Floppy-Treiber enthalten ist und das FAT Dateisystem auslesen kann. Dies ermöglicht, auch sehr unterschiedliche Dateisysteme homogen einzubinden wie MS-FAT, HPFS von OS/2 oder CD-ROM Dateisysteme. Objekt manager: A:\Texte\bs_files.doc  \Device\Floppy0\Texte\bs_files.doc Datei manager: Lese Texte\bs_files.doc Netzwerkdienste

22 Netzkommunikation Beispiel Windows NT Namensraum im lokalen Netz
Symbolic link parse-Methode der Treiber (MS Redirector, Novell NetWare File System) führt zum Netzverbindungsaufbau. Beispiel: Neuer „Laufwerks“buchstabe V:für Netzverbindung + Dateiname führt zu Umleitung „V:\public\text.doc“ \ Device\NetWareFileSystem\public\text .doc \ Device DosDevices Floppy0 NetWareFileSystem A: .. V: UNC : MUP Beide Mechanismen garantieren nur eine lokale Sicht des Systems durch spezielle Punkt-zu-Punkt-Verbindungen. V:\public\text.doc Redirector Universal Naming Convention UNC Beispiel \\ textserv\public\text.doc  UNC: \textserv\public\text.doc  \Device\MUP \textserv\public\text.doc  \Device\NetWareFileSystem \textserv\public\text.doc Netzwerkdienste

23 Netzkommunikation: Ports
Konzept Punkt-zu-Punkt Kommunikation („Kommunikationspunkte“) Beispiel TCP/IP: well known port numbers Dienst Portnummer Protokoll HTTP 80 TCP FTP 21 SMTP 25 rlogin 513 rsh 514 portmap 111 rwhod UDP Unix: /etc/services Windows NT: \system32\drivers \etc\services Netzwerkdienste

24 Netzkommunikation: Ports
Nachrichtenbasierte Punkt-zu-Punkt Kommunikation ( Protokoll, RechnerAdresse von A, ProzeßId von A, RechnerAdresse von B, ProzeßId von B ) Beispiel UNIX Transport Layer Interface TLI X/Open: Extended Transport Interface XTI Transportendpunkte (Synchron/Asynchron) Prozeß A Prozeß B Transportendpunkt Transportschicht Problem: Zwischenschicht transparent, ohne Beeinflussung Netzwerkdienste

25 Netzkommunikation: Sockets
Verbindungsorientierte Punkt-zu-Punkt Kommunikation Client Server Kommunikation socket() socket() bind ( „Kunde“ ) Kunde ServerDienst bind ( ServerDienst“ ) connect() listen() accept() 1. Verbindung deklarieren und einrichten 2. Name des aufrufenden Prozesses registrieren lassen send() recv() recv() send() close() close() Netzwerkdienste

26 Netzkommunikation : Named Pipes
Globales Konzept: Named pipe („Netzwerk/Pfadname“) => LAN-Interprozeß-Kommunikation Unix Named pipe = special device  nur IPC auf selbem Rechner, nicht NFS Named pipe = SystemV: STREAM socket pair() / bind() Windows NT CreateNamedPipe() : Objekt im globalen Namensraum, auch NetzPfad IPC = ReadFile() / WriteFile() UNC-Name = „\\ComputerName\PIPE\PipeName“ Lokale pipe: „\\ .\PIPE\PipeName“ Kommunikation zu Unix möglich, wenn LAN-Manager für Unix LM/U installiert. Netzwerkdienste

27 Netzkommunikation: Mailbox
Konzept: Briefkasten ex. für Sender und Empfänger Multicast & Broadcast möglich Probleme: keine garantierte Reihenfolge, kein garantierter Empfang Netzwerkdienste

28 Netzkommunikation: Mailbox
Beispiel Windows NT mail slots Briefkasten = mail slot, erzeugt mit Creat slot(MailBoxName) Senden: CreateFile(MailSlotName)-WriteFile()-CloseFile() mit MailSlotName = „\\ComputerName\mailslot\MailBoxName“ (UNC) bei ComputerName= „.“  lokale IPC bei ComputerName= „*“  Broadcast an alle angeschlossenen Rechner bei ComputerName= „DomainName“  Broadcast an alle Rechner der Domäne Empfänger sind jeweils alle Briefkästen mit dem angegebenen Namen, falls ex. Einschränkungen: Nachrichtenlänge bei NetBEUI: 64kB bei Punkt-zu-Punkt, 400Byte bei broadcast Höheres Protokoll erforderlich für Reihenfolge&Empfang etc., da UDP. Netzwerkdienste Netzwerkdienste

29 Netzkommunikation: RPC
Konzept: Prozedur-Fernaufruf Remote Procedure Calls RPC Remote Method Invocation RMI Java! Remote Function Call RFC Form: wie normaler Prozedur/Methodenaufruf, Ausführung durch Netzwerk-dienst & Transport bleiben verborgen (Client-Server Standardmechanismus!) Client Server Anwender- RPC - Pr o zeß prozeß RPC -Prozeduren RPC-Prozeduren Prozeduraufruf Transport Transport Original- Prozeduren Syntaxformen Wetter=7 Stub-Procedure: ComputeWetter(heute)  RPC(7, „heute“) StdProc+Arg. RPC(7,“heute“) Netzwerkdienste

30 Netzkommunikation: RPC
RPC-Ablauf Client Stub Netzwerk Stub Server Prozeduraufruf Argumente packen wartet .. RPC Argumente entpa c ken warten … Prozeduraufruf Original- Rückkehr ablauf Ergebnisse packen RPC return Ergebnisse auspacken RETURN Netzwerkdienste

31 Netzkommunikation: RPC
Transport der Daten Problem: Hardwareformat von Zahlen RPC-Argumente sollten maschinenunabhängig sein! Big endian Motorola 680X0, IBM 370 höherwertig niederwertig Byte0 Byte1 Byte2 Byte3 Little endian Intel 80X86, VAX, NS32000 höherwertig niederwertig Byte3 Byte2 Byte1 Byte0 Transport: Umkehrung der Byte-Reihenfolge Lösung: data marshaling, z.B. mit XML, Java Serialisierung, ... auch für compiler data alignment (Adreßgrenzen bei records, Wortadressierung,...) Netzwerkdienste

32 Netzkommunikation: RPC
Beispiel Unix Spezielle C-Bibliotheken /lib/libc.a; SystemV: /usr/lib/librpc.a RPC über NFS Schichtenmodell RPC/XDR external data representation RPC-library Client: anmelden mit registerrpc() Client: callrpc() Server: svr_run() clnt_. ../ svc_... Parameter des Transportprotokoll TCP/IP setzen/lesen Berechtigungen setzen/lesen Pmap_.., ath_.., xdr_.. Details des Protokolls: Vorsicht! RPC bei DCE: Compiler für spezielle Interface Definition Languge IDL. RPC durch stub-Aufrufe und Laufzeitbibliothek für Transport Netzwerkdienste

33 Netzkommunikation: RPC
Beispiel Windows NT Verbindungslose RPC: anonymer Service (asynchron) Verbindungsorientierte RPC: bestimmte Prozeduren vom Server (synchr.) Network Data Representation (NDR)-Format Programmierung durch Microsoft IDL-Compiler MIDL Protokoll-Wahl durch Namensnotation: z.B. „ncacn_ip_tcp: MyServer[2004]“ = TCP/IP-Protokoll zu MyServer,port 2004 MIDL= Microsoft IDL-Compiler Netzwerkdienste

34 Kommunikation in Netzen
Netzwerke Kommunikation in Netzen Dateisysteme im Netz Arbeitsmodelle im Netz Dienste im Netz Netzwerkdienste

35 ? Dateisysteme im Netz Synchronisationsprobleme z.B. inkrement. Backup
Datei, Ordner neu gelöscht überschrieben umbenannt gegenüber früherem Synchronisationspunkt Angenommen, die Ordner-Baumstruktur hat sich geändert. Woher wissen wir, was der Grund dafür ist? Ist eine Datei neu oder nur umbenannt? Wie kann ein „intelligentes Backup“ gestaltet werden? ? Netzwerkdienste

36 Synchronisationsstrategien
Situation: Datei in A gegenüber Datei in B Weil … existiert in A, aber nicht in B neuer umbenannt B  A umbenennen älter umbenannt A  B umbenennen neu erstellt A  B kopieren später gelöscht auch in A löschen Konfliktfall: Nach letztem Sync Datei in A geändert und in B ist neuer in A A  B kopieren ist älter in A B  A kopieren existiert in B, aber nicht in A A  B umbenennen B  A umbenennen B  A kopieren auch in B löschen Es ex. Verschiedene Möglichkeiten, die Änderungen zu interpretieren und entsprechend das Backup zu gestalten. Netzwerkdienste

37 Synchronisationsstrategien
Situation: Ordner in A gegenüber Ordner in B existiert in beiden Dateien darin synchronisieren existiert in A, aber nicht in B neuer umbenannt: B  A umbenennen älter umbenannt: A  B umbenennen neu erstellt: A  B kopieren mit Inhalt in B neu gelöscht: auch in A löschen mit Inhalt existiert nicht in A, aber in B analog behandeln, s.o. Problem: Versionsgeschichte (z.B. Löschinformation) ist nicht vorhanden  Journaling Filesystem ist nötig! Netzwerkdienste

38 Wer darf wann schreiben ?
Dateisysteme im Netz Zugriffssemantiken Nutzer A Dateisystem Nutzer B Netz Wer darf wann schreiben ? Netzwerkdienste

39 Dateisysteme im Netz Zugriffssemantiken Read Only File
Problemlos, da alle Kopien aktuell sind, unabhängig von der Pufferung Operationssemantik race conditions Alle Änderungen werden sofort umgesetzt; die zeitlich nächste Operation bemerkt die Folgen der vorigen Sitzungssemantik race conditions Alle Änderungen werden nur auf einer Kopie ausgeführt. Am Ende der Sitzung wird das Original überschrieben. Transaktionssemantik Atomare Transaktion: Während der Sitzung ist die Datei gesperrt. Problem: Zugriffssemantik hängt von der Implementierung ab (Hardware, Existenz von Puffern, Netzprotokollen, ...) Beispiel Operationssemantik: Reihenfolge der Operationen = Inhalt hängt von der Kommunikationsgeschwindigkeit (Leitungsgeschwindigkeit, Netzstruktur, CPU-Takt, BS-Version, Lastverteilung, ...) ab. Netzwerkdienste

40 Dateisysteme im Netz Zustandsbehaftete vs. zustandslose Datei-Server
= verbindungsorientierte Kommunikation vs. verbindungslose Kommunikation Server-Dienst/Verbindung eröffnen Datenstrukturen für Zugriff aufsetzen (Kennungen etc.) Zugriffsrechte prüfen Puffer einrichten Server-Dienst/Verbindung nutzen Mit Dateikennung lesen/schreiben Auftragskopien werden über gleiche Sequenznummern erkannt Server-Dienst/Verbindung schließen Puffer leeren + deallozieren Datenstrukturen abbauen Netzwerkdienste

41 Dateisysteme im Netz Zustandsbehaftete vs. zustandslose Server Fazit:
Vorteile Schneller Zugriff: keine Adreßinfo, keine Berechtigungsprüfung Effizienter Cache: Strategien möglich (read ahead etc.) Vermeiden von Auftragskopien Nummerierung der Aufträge Dateisperrung möglich (Exklusiver, atomarer Zugriff) Datenbanken! Nachteile Client crash: kein Löschen der Strukturen+Puffer Server crash: kein Löschen der Strukturen+Puffer, Dateizustand ungewiß Begrenzte, gleichzeitig benutzte Dateienzahl: begrenzte Speicherbelegung Fazit: Server(Verbindung) mit Zustand kann Dateien reservieren, Auftragskopien vermeiden. Server(Verbindung) ohne Zustand ist fehlertoleranter, kann mehr Benutzer gleichzeitig verwalten. Netzwerkdienste

42 Dateisysteme im Netz Beispiel Unix NFS-Server
Auftrag: file locking Network Lock Manager Client Benutzer prozeß NFS-Client statd lockd Server statd lockd NFS-Server File locking Zustandslose Client & Server Zugriffsinfo auf Client +Server gespeichert File lock durch RPC 4) Status /etc/sm 3) 6) 1) 5) Auftrag OK 7) 2) Datei Vorteile einer 2-Stellvertreterprozeß-Architektur: a) Bei client/server crash werden die Tabellen unabhängig von Benutzerprozessen wieder aufgebaut b) Bei weiteren Sperranfragen an die gleiche Datei prüft der lokale Monitorprozeß, ob der frühere Benutzerprozeß, der sperren ließ, noch am Leben ist. Wenn nein, wird die Datei entsperrt und steht allen anderen Interessenten wieder zur Verfügung. ABER: Dies ist kein Schutz vor Verklemmungen ! 7) Frage: Sind Verklemmungen möglich ? Netzwerkdienste

43 Dateisysteme im Netz: Cache
Cache und Puffer Vorteil: Puffer auf Client beschleunigt Lesen/Schreiben Nachteil: lokaler Puffer führt zu Inkonsistenz bei Zugriffen anderer Rechner Mögliche Pufferorte: Benutzerprozeß Netzdateisystem Transport lokaler Treiber Leiter Platte Client Server Benutzerprozeß Heap/Stack Transport Client Ausgangspuffer Leiter 1GHz auf 3 km=10kBit Transport Server Eingangspuffer Netzdateisystem Dateipuffer Lokaler Treiber Blockpuffer Plattencontroller Schreib-/Lesepuffer Die Informationsmenge im Leiter zwischen zwei Rechnern errechnet sich zu 1GHz=109 Bits/sec, c=3x108 m/sec also 10x108/3x108 = 3,3 Bits/m. Bei m Rechnerabstand über Lichtleiter sind dies Bits =10kB Probleme gibt es immer dann, wenn ein paralleler Zugriff bestimmte Puffer NICHT benutzt, sondern seine eigenen hat. Netzwerkdienste

44 Dateisysteme im Netz : Cache
Problem: Konsistenz der lokalen Cache A B Datenobjekt A, B lesen A schreibt B schreibt Puffer A Puffer B ? Objektpuffer Inkonsistenz ! Netzwerkdienste

45 Dateisysteme im Netz: Cache
Cache und Puffer: Konsistenzstrategien für lokalen Cache Zentrale Kontrolle Vor dem Lesen Vergleich der Änderungsinfos (VersionsNr, Quersummen) zwischen Client und Server aber: aufwändig! Delayed Write Sammeln der Änderungen, dann erst schicken aber: Zugriffssemantik verändert Write On Close Sitzungssemantik: lokale Kopie geht an Server bei close() aber: Inkonsistenzen durch Sitzungssemantik Write Through Änderungen gehen am Puffer vorbei sofort zum Original aber: langsam Fazit: Puffern auf Serverseite ist einfacher - auf Clientseite effizienter, aber komplexer (semant.Protokolle!) Netzwerkdienste

46 Dateisysteme im Netz: Cache
Beispiel UNIX NFS-Cachestrategien Asynchrone RPC durch basic input output biod – Dämonen Read ahead Vorauseilende Anforderung von Benutzerblöcken Delayed write Pufferung aller Schreibdaten, flush() alle 3 s (Daten) , 30 s (Verzeichnisse), bei sync(), Puffer belegt Write through bei exklusiv gesperrten Dateien Code aus Effizienzgründen im Kernel Netzwerkdienste

47 Dateisysteme im Netz: Dateiserver
Implementierung eines Dateiserver durch Prozesse Client Server Anwenderprozeß Netzdateimanager Dateitre i ber Gerätetreiber Netzdatei - treiber Transport Netzanschluß tre Betriebssystemaufruf System call Vorteil symmetrisches System, jeder kann beides sein Nachteil Kopieren der Systempuffer kernel space/user space Netzwerkdienste

48 Dateisysteme im Netz: Dateiserver
Implementierung eines Dateiserver durch Treiber Client Server Anwenderprozeß Dateitre i ber Gerätetreiber Netzdatei - treiber Transport Netzanschluß tre Betriebssystemaufruf System call Vorteil schnelles System Nachteil asymmetrische Kerne Netzwerkdienste

49 Dateisysteme im Netz Beispiel Unix Das NFS-System Client Server
Mount() zum Einhängen eines Server-Dateisystems Prozesskommunikation zum mount-demon Nfs_svc() im kernel mode auf dem Server Virtual i-nodes für virtuelles Dateisystem Client Server System call NFS Anwenderprozeß Netz MS-DOS file sy s tem UNIX Cl i ent Gerätetreiber Virtual File System y UDP/IP Systemaufruf-Verteiler Netzwerkdienste

50 Dateisysteme im Netz Beispiel Windows NT Netzdateisystem Server Client
Verbindungsorientierter Netzaufbau durch Redirector mit Transport Driver Interface TDI über virtual circuits (Kanäle) Kernel Thread pool im Server Client Server System call Systemaufruf-Verteiler I/O-Manager MS-DOS file s y stem NT-file system Redirec- tor Gerätetreiber Netz- transport OS/2-file Treiber Anwenderprozeß Netz Netzwerkdienste

51 Dateisysteme: Sicherheitsaspekte
Problem Inkonsistente Netz-Kopplung von Systemen bei unterschiedlichen Sicherheitsmechanismen ! z.B. Authentifizierung bei unterschiedlich langen Namen und Groß/Kleinschreibung Unix/WinNT vs MS-DOS, fehlende ACLs, ... Beispiel Unix NFS-Sicherheitssystem NIS Benutzerliste (yellow pages) verwaltet von NIS RPC hat Zugriffsrechte user/group/other SuperUserID=0 auf Client  UserId=-2 auf Server („external Super User“) konsist. Behandlung von gleichen NutzerIds unterschiedl. Systeme Beispiel Windows NT NT 4.0: ACL, Netzbenutzer müssen beim SAM registriert sein mit gleichem Paßwort, sonst Nachfrage bzw. Ablehnung NT 5.0: Kerberos-System bei netzweiter Zugangskontrolle Netzwerkdienste

52 Dateisysteme: Virtueller Massenspeicher
Storage Area Network SAN asym. Pooling LAN Ortsinfo S A N file server metadata server Block I/O Ein virtueller Massenspeicher kann aus einem Netzwerk bestehen, das nicht nur die Speicherfunktionen intern organisiert, sondern auch die Zugriffsrechte, die Datensicherung (backup) und Zugriffsoptimierung (Lastverteilung, Datenmigration) selbst regelt. Konflikte gibt es dabei mit unabhängigen Untereinheiten, die selbst diese Funktionen übernehmen wollen (z.B. NAS oder SAN-in-a-box). Asymmetr. Pool: Ein Server dient als Metadaten-Server (Wo sind welche Daten) und gibt Block-I/O Informationen an die anderen Symm.Pool (3-tiers-Lösung): Die Speichergeräte sind nur mit mehreren Metadaten-Servern über ein extra Netzwerk verbunden; die Metaserver hängen über das SAN an den NAS Network Attached Storage Lun 2 Netzwerkdienste

53 Dateisysteme: Speichernetze
Speicherkonfigurationen des Storage Area Network SAN Netzwerkdienste

54 Dateisysteme: Speichernetze
Info SNIA-Schichtenkonzept Netzwerkdienste


Herunterladen ppt "Netzwerkdienste."

Ähnliche Präsentationen


Google-Anzeigen