Betriebssysteme, Rechnernetze und verteilte Systeme II ...ls4- · H. Krumm, RvS, Informatik IV, Uni...

Preview:

Citation preview

H. Krumm, RvS, Informatik IV, Uni Dortmund 1

Rechnernetze und verteilte Systeme (BSRvS II)

WS 2010/2011

Prof. Dr. Heiko Krumm

FB Informatik, LS IV, AG RvS

Universität Dortmund

• Computernetze und das Internet

• Anwendung

• Transport

• Vermittlung

• Verbindung

• Multimedia

• Sicherheit

• Netzmanagement

• Middleware

• Verteilte Algorithmen

H. Krumm, RvS, Informatik IV, Uni Dortmund 2

Literatur

Zentrale Literatur

J. F. Kurose, K. W. Ross: Computernetze; Pearson Studium 2002 bzw. die neuere englische Ausgabe: J. F. Kurose, K. W. Ross: Computer Networking, 3rd Ed., Pearson 2005

Weitere Empfehlungen

A. Tanenbaum: Computer Netwerke; Pearson Studium 2000

D. E. Comer: Computernetzwerke und Internets; Pearson Studium 2000.

L. L. Peterson, B. S. Davie: Computernetze; dpunkt Verlag 2000.

H. Krumm, RvS, Informatik IV, Uni Dortmund 3

Folien

Zusammenstellung aus folgenden Quellen:

Foliensatz zum Buch „ J. F. Kurose, K. W. Ross: Computernetze; Pearson Studium 2002“

Foliensatz der Vorlesung

„Betriebssysteme, Rechnernetze und verteilte Systeme II“,

WS 2003/2004, H. Wedde, LS III

Foliensatz der Vorlesung

„Betriebssysteme, Rechnernetze und verteilte Systeme II“,

WS 2006/2007, H. Krumm, LS IV

Foliensatz der Vorlesung

„Betriebssysteme, Rechnernetze und verteilte Systeme II“,

WS 2007/2008, P. Buchholz, LS IV

Foliensatz des Kurses „Computer Networks“,

SS 2004, S. Lam, University of Texas at Austin

Foliensatz der Vorlesung

„Rechnernetze und verteilte Systeme“,

WS2002/2003, H. Krumm, LS IV

Zusätzliche „neue“ Folien

H. Krumm, RvS, Informatik IV, Uni Dortmund 4

Rechnernetze und verteilte Systeme

Rechnernetz:

Durch Telekommunikationssystem verbundene

Rechnerknoten

Telekommunikationssystem:

System, das Teilnehmern Kommunikationsdienste anbietet

(in der Regel selbst durch Rechnernetz implementiert)

Verteiltes System:

Anwendung, deren Komponenten sich an verschiedenen

Orten befinden,

Komponenten sind in Rechnernetz installiert, werden lokal

von den Rechnerknoten ausgeführt und kommunizieren

miteinander mit Hilfe eines Telekommunikationssystems.

H. Krumm, RvS, Informatik IV, Uni Dortmund 5

Besonderheiten verteilter Systeme

Kommunikation

– unzuverlässig, teuer, langsam

Lose Kopplung

– Kommunikation selten

– Synchronisation schwach

– Fehlertoleranz

Nebenläufigkeit (Concurrency)

– weitgehend unabhängige Fortschritte

Dezentrale Kontrolle

– weitgehende Autonomie

– lokale Kontrolle auf Basis partieller Sichten

– vollständige Sicht des globalen Systemzustands wird vermieden, da das zu

teuer ist (Einfrieren)

Instanz

Instanz

Instanz

Entfernung

H. Krumm, RvS, Informatik IV, Uni Dortmund 6

Verteilung verdeckbar? Unzuverlässigkeit!

t

Treffen am 28.10. in Dortmund?!

Bitte quittieren!

....

.

28.10. erreicht!

HH M

Vollständig zuverlässige Übereinkunft unter Fristsetzung ist nicht möglich!

Ok! Aber bitte Quittung

der Quittung quittieren!

Ok! Aber bitte Quittung quittieren!

Gäbe es ein

Protokoll, das

dieses mit n

Nachrichten leisten

könnte, dann

müsste es auch den

Verlust der letzten

Nachricht

tolerieren, also

dieses auch mit

(n-1) Nachrichten

leisten können.

Dann müsste es

auch den Verlust

der (n-1)-ten

Nachricht

tolerieren, …

H. Krumm, RvS, Informatik IV, Uni Dortmund 7

Anwendungen: Trends

H. Krumm, RvS, Informatik IV, Uni Dortmund 8

Anwendungen: Trends

H. Krumm, RvS, Informatik IV, Uni Dortmund 9

Anwendungen: Trends

H. Krumm, RvS, Informatik IV, Uni Dortmund 10

Anwendungen: Trends

H. Krumm, RvS, Informatik IV, Uni Dortmund 11

Anwendungen: Trends

• Eigenschaften

• Nebenläufigkeit

• Systemgröße

• Systemlebensdauer

• Örtliche Verteilung

• Veränderungen (Umgebungen

und Anforderungen)

• Anpassungen

• Erweiterungen

• Entwicklungslinien

• Web-Orientierung

• Dienste-Orientierung

(SOA)

• Ubiquität und Mobilität

H. Krumm, RvS, Informatik IV, Uni Dortmund 12

Rechnernetze

WAN

LAN

Rechner

Verbindungseinrichtung

Datennetz (Internet)

Mobile Computing

Nomadic Computing

H. Krumm, RvS, Informatik IV, Uni Dortmund 13

Rechnernetz - Übersicht

Rechner

Peripherie

Kommunikationssystem

Endsystem

End- system

Lokales Netz

Hub

End- system

Öffentliches Vermittlungsnetz

TS

TS

TS

TS

TS

End- system

End- system

Lokales Netz

End- system

Hub

H. Krumm, RvS, Informatik IV, Uni Dortmund 14

Dienstleistende Systeme

Instanzen

– Menge von Dienstnehmern

– Diensterbringer (offenes Subsystem)

Kommunikation

– vertikale Kommunikation

» Abwicklung von Dienstleistungen

zwischen Dienstnehmer und

Dienstleister

– horizontale Kommunikation

» zwischen Dienstnehmern

Kommunikationssysteme

– in der Zeit Datenhaltungssystem

– im Raum Telekommunikationssystem

» Dienstleistungen dienen dem Nachrichtenaustausch zwischen Dienstnehmern

» Diensterbringer interpretiert Nachrichten nicht

Dienst-

nehmer

Diensterbringer

Dienst-

nehmer

Dienst-

nehmer

H. Krumm, RvS, Informatik IV, Uni Dortmund 15

Kommunikationsdienst

Ein Kommunikationsdienst bietet Teilnehmern Dienstleistungen zum Nachrichtenaustausch an. Wichtige Eigenschaften der Dienstleistungen betreffen:

• Partneradressierung

• Datagramme (verbindungslose Kommunikation, z.B. UDP)

• Verbindungsorientierung: Verbindungen und virtuelle Verbindungen (z.B. TCP)

• Zwei- / Mehrpartner-Kommunikation (Uni- / Multi- / Broadcast)

• Richtung (Simplex, Duplex, Halbduplex)

Kommunikationsdienst

User User User

Dienstleistung

Dienstleistung

Dienstzugangspunkt

H. Krumm, RvS, Informatik IV, Uni Dortmund 16

Kommunikationsdienst – Sichten

Statische Sicht Die Dienstschnittstelle,

ist gegliedert in

Dienstzugangspunkte,

welchen Dienstadressen

zugeordnet sind.

Dynamische Sicht An der Dienstschnittstelle

treten im Verlauf der Zeit

Ereignisse auf:

Die Anforderung und

Ausführung einer

Dienstleistung repräsentiert

sich in zusammengehörigen

Dienststimuli und

Dienstreaktionen

Briefkasten

Schlossallee

Briefkasten

Hauptpost

Wohnungs-

briefkasten

Maier

Wohnungs-

briefkasten

Maier

t

Stimulus

Brief-

einwurf

Reaktion

Brief-

auslie-

ferung

Dienstleistung

Brieftransfer

H. Krumm, RvS, Informatik IV, Uni Dortmund 17

Dienstnehmer-Rollen und Dienstformen

Zentrale Idee zur Nutzung von Ressourcen in Rechnernetzen:

Anbieten und Aufrufen von Diensten

Initiator

Anrufer

Client

Kunde Beantworter

Ausführer

Server

Dienstleister

Unbestätigter Dienst

Request Anforderung

Indication Anzeige

Bestätigter Dienst

Request Anforderung

Indication Anzeige

Response Antwort

Confirmation Bestätigung

Rollen

Grundformen

H. Krumm, RvS, Informatik IV, Uni Dortmund 18

Kommunikationsformen – Partneranzahl

Unicast (2 Partner)

Multicast (an eine Gruppe)

Broadcast (an alle)

H. Krumm, RvS, Informatik IV, Uni Dortmund 19

Kommunikation und Kontext – Datagramme und Verbindungen

Kommunikation ohne Kontext – Datagram

Dienst enthält alle benötigten Informationen

z.B. Brief, Telegramm, UDP-Datagramm

Kommunikation im Kontext – Verbindung

Verbindung wird aufgebaut,

Kommunikation entlang der Verbindung,

Verbindung wird abgebaut

z.B. Telefon, TCP-Verbindung

H. Krumm, RvS, Informatik IV, Uni Dortmund 20

Kommunikationsdienste – Richtungsbetrieb

simplex

A B

Z.B. Feuermelder,

Sensoren

duplex

A B

Z.B. Telefon

halbduplex

A B

Z.B. Wechselsprech-

anlage

t

H. Krumm, RvS, Informatik IV, Uni Dortmund 21

Kommunikationsdienst - Nachrichtenreihenfolge

Auslieferungsdisziplin:

• reihenfolgentreu (FIFO)

• zufällig

• priorisierte FIFO-Queues

4 3 2 1

Dienstzugangspunkt

Verbindungsendpunkt

Verbindung

puffert wie Queue

Nachricht

H. Krumm, RvS, Informatik IV, Uni Dortmund 22

Kommunikationsdienst: Qualität

Leistung

Nachrichtenlaufzeit, Verzögerung

Durchsatz (Bandbreite, Bitrate)

Entfernung

Zuverlässigkeit

Verfügbarkeit

Fehler Verlust, Verfälschung, Vertauschung,…

Kosten

Grundkosten

Dienstleistungskosten

Datensicherheit

Verfälschung / Integrität

Vertraulichkeit

Zurechenbarkeit

t

x HH M

8 h

775 km

H. Krumm, RvS, Informatik IV, Uni Dortmund 23

Kommunikationsdienst: Zuverlässigkeit / Fehler / Störungen

H. Krumm, RvS, Informatik IV, Uni Dortmund 24

Protokolle: Ablauf in der Zeit

H. Krumm, RvS, Informatik IV, Uni Dortmund 25

Ziel-Kommunikationsdienst

Schicht

Protokolle: Definition

Basis-Kommunikationsdienst

Instanz Instanz Instanz

Ein Protokoll ist eine Menge von Regeln und Formaten (semantisch und

syntaktisch), die das Kommunikationsverhalten von Instanzen zur

Ausführung von Funktionen regelt (ISO 7498).

Alle Kommunikationsaktivitäten im Internet werden von Protokollen

bestimmt.

Protokollstandards ermöglichen die Offenheit des Internets für

Komponenten unterschiedlichster Bauart.

H. Krumm, RvS, Informatik IV, Uni Dortmund 26

Protokolle: Definition

Ein Kommunikationsprotokoll definiert das Kommunikationsverhalten von Instanzen,

welche einen Basis-Kommunikationsdienst nutzen, um einen (höherwertigen) Ziel-

Kommunikationsdienst zu erbringen. Es wird definiert über:

• Zieldienst

• Basisdienst

• Instanzenverhalten

• PDU-Formate

Ziel-Kommunikationsdienst

Schicht

Basis-Kommunikationsdienst

Instanz Instanz Instanz

PDU

H. Krumm, RvS, Informatik IV, Uni Dortmund 27

Schichtung von Diensten und Protokollen

Nachrichtentransportsystem

Steuermann (Brücke)

Maschinen-

Telegraph

H. Krumm, RvS, Informatik IV, Uni Dortmund 28

Schichtung von Diensten und Protokollen

User mit Kooperationsbeziehung

„Schiff fahren“

Direkt anwendungsbezogene

Kommunikationsdienstleistungen:

- Übertrage „Volle Kraft voraus“

Allgemeine Nachrichtenübermittlung

- Übertrage winkelcodierte Nachricht

Ko

mm

un

ika

tion

A

rbei

t

H. Krumm, RvS, Informatik IV, Uni Dortmund 29

Schicht 3:

- erbrachter Dienst

- Instanzen und Protokoll der Schicht

Schicht 2:

- erbrachter Dienst

- Instanzen und Protokoll der Schicht

Schicht 1:

- erbrachter Dienst

- Instanzen und Protokoll der Schicht

Schichtung von Diensten und Protokollen

Basisdienst – Medium (Schicht 0)

H. Krumm, RvS, Informatik IV, Uni Dortmund 30

Internet

• Millionen vernetzter Computer

(Endsysteme, Hosts)

• PCs, Server

• Toaster, Cola-Automaten

• Kommunikationsleitungen

• Kupfer-, Glasfaserleitungen,

• Funk, Satellitenfunk

• Transitsysteme (Router)

leiten Daten weiter

H. Krumm, RvS, Informatik IV, Uni Dortmund 31

Internet - Struktur

• Netz-Peripherie:

• End-Systeme

(PCs, Workstations, Server)

• Netz-Kern:

• Transitsysteme

(Router, ein Netz von Netzen)

• Subnetze

• Teilnetze

• Übertragungsmedien:

• Kommunikationsleitungen

H. Krumm, RvS, Informatik IV, Uni Dortmund 32

Internet - Peripherie

End-Systeme (Hosts)

– beherbergen Applikationen und

Server-Programme

– sind Endpunkte der Verbindung

Client-Server-Modell

– Client stellt Anfragen und erhält

Service

– Server ist ”immer“ verfügbar

Peer-To-Peer-Modell

– keine dedizierten Server

z. B. KaZaA

H. Krumm, RvS, Informatik IV, Uni Dortmund 33

Internet – Datentransportdienste

Ziel: Datentransfer zwischen End-Systemen

TCP – Transmission Control Protocol [RFC793]

verbindungsorientiert

Zuverlässiger Datentransfer in richtiger Reihenfolge

UDP – User Datagram Protocol [RFC768]

verbindungslos / Datagramm

Unzuverlässiger Datentransfer

H. Krumm, RvS, Informatik IV, Uni Dortmund 34

Internet – Kern

Geflecht von verbundenen Routern

Wie werden die Daten durch das Netz

übertragen?

Leitungsvermittlung (circuit

switching)

– pro Verbindung eine Leitung

(Telefonnetz)

Paketvermittlung (packet switching)

– Daten werden in einzelnen Paketen

durch das Netz geschickt (Briefpost)

H. Krumm, RvS, Informatik IV, Uni Dortmund 35

Netz-Kerne (allgemein): Multiplexing

Benutzung einer Verbindungsleitung durch mehrere Verbindungen

Die Netz-Resource (z. B. Bandbreite) wird aufgeteilt.

Die ”Teile“ werden einzelnen Verbindungen zugeteilt.

Keine Mitbenutzung unbenutzer ”Teile“ durch andere Verbindungen.

Die Aufteilung der Bandbreite erfolgt durch

Frequenzmultiplexing (frequency division)

oder

Zeitmultiplexing (time division).

H. Krumm, RvS, Informatik IV, Uni Dortmund 36

Netz-Kerne (allgemein): Multiplexing

H. Krumm, RvS, Informatik IV, Uni Dortmund 37

Netz-Kerne (allgemein): Paketvermittlung

Der Datenstrom wird in separat zu

transportierende Pakete aufgeteilt.

Mehrere Verbindungen teilen sich eine Leitung.

Jedes Paket nutzt die volle Bandbreite.

Die Ressourcen werden nach Bedarf genutzt.

Keine garantierte Bandbreite für den Datenstrom.

– Die Summe der benötigten Ressourcen kann die Summe der

vorhandenen übersteigen.

Pakete im Puffer warten auf freie Ressource (Store and

Forward - Prinzip).

H. Krumm, RvS, Informatik IV, Uni Dortmund 38

Netz-Kerne (allgemein): Routing

Datagramm-Netz

– Die Zieladresse bestimmt den nächsten Hop.

– Verschiedene Pakete desselben Datenstroms können unterschiedliche

Wege nehmen.

Virtual-Circuit Netz (VC, virtuelles Leitungsnetz)

– Jedes Paket hat eine Marke (Tag), die den nächsten Hop bestimmt.

– Pfad wird beim Verbindungsaufbau festgelegt.

– Router speichern Verbindungsdaten.

H. Krumm, RvS, Informatik IV, Uni Dortmund 39

Netz-Kerne (allgemein): Taxonomie

H. Krumm, RvS, Informatik IV, Uni Dortmund 40

Physikalische Medien

• Verdrillte Adernpaare

(geschirmt, ungeschirmt)

• Koaxialkabel

• Glasfaser

• Funkkanäle (erdgebunden,

Satelliten)

H. Krumm, RvS, Informatik IV, Uni Dortmund 41

Verzögerung in Paketnetzen

Knoten-Verarbeitung

Warteschlangen-Aufenthalt

Übertragungsverzögerung (Paketlänge und Übertragungsrate)

Signalverzögerung (Ausbreitungsgeschwindigkeit der Signale in Medium)

H. Krumm, RvS, Informatik IV, Uni Dortmund 42

Verzögerung-Bandbreiten-Produkt

Relative Bedeutung von Nachrichtenlaufzeit und

Bandbreite

– für kurze Nachrichten (z.B. 1 Byte) ist die Laufzeit (z.B. 1

ms gegenüber 300 ms) wichtiger als die Bandbreite (z.B. 1

Mbps gegenüber 1 Gbps).

– für lange Nachrichten (z.B. 600 Mbyte) ist die Bandbreite

wichtiger als die Laufzeit.

Produkt aus Bandbreite x Laufzeit

– Es entspricht der Datenmenge, die sich im Transit befinden

kann.

Beispiel

– Bei 100 ms Laufzeit und 45 Mbps Bandbreite können sich

bis zu 560 Kbyte Daten im Transit befinden

H. Krumm, RvS, Informatik IV, Uni Dortmund 43

Schichtung von Diensten und Protokollen

H. Krumm, RvS, Informatik IV, Uni Dortmund 44

Schichtenmodelle

ISO/OSI

– Kommunikation Offener Systeme – Basis-Referenzmodell

– allgemeines Modell, das sich auf die logische Architektur konzentriert

(Welche Funktionen können in welchem Zusammenhang in einer

Kommunikation auftreten?)

– (ISO 7498)

TCP/IP

– Internet-Protokollstack

– Für (beinahe) alle Systeme implementiert.

– (RFCs, IEEE-Normen)

H. Krumm, RvS, Informatik IV, Uni Dortmund 45

ISO/OSI-Basisreferenzmodell

2-1

Transportsystem

Anwendungs-

prozess Anwendungs-

prozess

H. Krumm, RvS, Informatik IV, Uni Dortmund 46

ISO/OSI-Basisreferenzmodell: Schichten

Anwendungsschicht (Application Layer)

– höchste Ebene, stellt die Kommunikationsdienstleistungen bereit, die direkt von einer Anwendung benötigt werden

– Beispiel: „Übertrage das Kommando eine Datei zu öffnen“

Darstellungsschicht (Presentation Layer)

– reicht die Dienstleistungen des Session-Dienstes weiter

– stellt Dienstleistungen bereit, mit denen sich Anwendungsprozesse über die Syntax der Nachrichten abstimmen können

Kommunikationssteuerungsschicht (Session Layer)

– bietet Dienstleistungen an, die zur Eröffnung, Durchführung und Beendigung einer Kommunikationsbeziehung (Session) nötig sind

– Dienstleistungen zur Realisierung anwendungsnaher Fehlerbehandlungsmaßnahmen: Synchronisation, Wiederaufsetzen, Stornieren, Unterbrechen, Wiederaufnehmen

H. Krumm, RvS, Informatik IV, Uni Dortmund 47

ISO/OSI-Basisreferenzmodell: Schichten

Transportschicht (Transport Layer)

– erweitert Endsystemverbindungen (Rechner–Rechner) zu

Anwenderverbindungen (Anwender–Anwender)

– Anwender = Anwendungsprozesse

– behandelt Ende-zu-Ende-Qualitätsaspekte

Vermittlungsschicht (Network Layer)

– unterstützt beliebige Konnektivität im Netz

Sicherungsschicht (Data Link Layer)

– stellt zuverlässige Links zur Verfügung

– Flußkontrolle, Fehlererkennung und -korrektur

Bitübertragungsschicht (Physical Layer)

– stellt ungesicherte Links für die Übertragung von Bitfolgen zur

Verfügung.

je Link

bildet

Daten-

netz

bildet

Trans-

port-

system

H. Krumm, RvS, Informatik IV, Uni Dortmund 48

ISO/OSI-Basisreferenzmodell: Begriffe

Ziel-Kommunikationsdienst

Schicht

Basis-Kommunikationsdienst

Instanz Instanz Instanz

PDU

(N)-Schicht (N)-layer

Alle Instanzen einer Hierarchie-Ebene (peer-entities). Diese kommunizieren über

den Basiskommunikationsdienst (N-1)-Dienst und erbringen den

Zielkommunikationsdienst (N)-Dienst.

(N)-Dienst (N)-service

Fähigkeit der (N)-Schicht (und der Schichten darunter), die der (N+l)-Schicht an der

Grenze zwischen (N)-Schicht und (N+l)-Schicht zur Verfügung gestellt wird.

(N)-Protokoll (N)-protocol

Verhaltens- und Formatfestlegungen (semantisch und syntaktisch) zum

Kommunikationsverhalten der (N)-Instanzen.

H. Krumm, RvS, Informatik IV, Uni Dortmund 49

ISO/OSI-Basisreferenzmodell: Begriffe

Ziel-Kommunikationsdienst

Schicht

Basis-Kommunikationsdienst

Instanz Instanz Instanz

PDU

(N)-Dienstzugangspunkt (N)-service-access-point

Punkt, an dem der (N)-Dienst den (N+1)-Instanzen (oder Nutzern) zur Verfügung

gestellt wird.

(N)-Adresse (N)-address

Kennung, zur Identifikation eines (N)-Dienstzugangspunkts.

(N)-Protokolldateneinheit (N)-PDU (N)-protocol data unit

Nachricht welche (N)-Instanz gemäß (N)-Protokoll einer anderen (N)-Instanz

sendet, besteht aus

(N)-Protokollkontrollinformation: (N)-PCI

Nutzdaten der (N+1)-Instanzen

PCI Nutzdaten

PDU

H. Krumm, RvS, Informatik IV, Uni Dortmund 50

TCP/IP Protokollstapel (Protocol Stack)

H. Krumm, RvS, Informatik IV, Uni Dortmund 51

TCP/IP Protokollstapel

application layer

unterstützt verteilte Applikationen

(umfasst die ISO/OSI-Schichten 5,

6 und 7)

Anwendungsprotokolle FTP,

SMTP, HTTP, SNMP, DNS, …

transport layer

Datenübertragung von

Anwendung zu Anwendung (Port

zu Port)

Transportprotokolle TCP, UDP

network layer

transportiert (routet) Datagramme

von Endsvstem zu Endsystem

Internet-Protokoll IP, Routing-

Protokolle

data link layer

Datentransfer zwischen benachbarten

Systemen

PPP, Ethernet, …

physical layer

Bitübertragung auf der Leitung oder im

Funkkanal

RS-232, Ethernet, …

H. Krumm, RvS, Informatik IV, Uni Dortmund 52

Beispiel für lokales TCP/IP-Netz

H. Krumm, RvS, Informatik IV, Uni Dortmund 53

Logische Kommunikation - Transportschicht

H. Krumm, RvS, Informatik IV, Uni Dortmund 54

Physikalische Kommunikation

Recommended