Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Swanhild Lapp Geändert vor über 11 Jahren
1
Strukturen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld von Netzen
2
Informationen werden durch (viele) Aktionen verarbeitet, die in Hard- und Software festgelegt und nach bestimmten Prinzipien strukturiert sind (wie auch die Informationen selbst)Informationen Benennungen Unterprogramme Parametrisierung … Insgesamt gibt es wenige solcher Prinzipien. Beispiele: Software auf einem Rechner interagierende Rechner
3
Schichten erhält man, wenn Programme auf unterschiedlichen Rechnern mit ähnlicher Aufgabenstellung kommunizieren (auch: Ebenen, Tiers, Layers). Bei Organisationen (Unternehmen, Behörden, …) spricht man von Hierarchie-Ebenen. Meist gehören zu Schichten unterschiedliche Grade der Abstraktion, mit der Informationen verarbeitet werden: Je höher die Schicht, desto weiter greifend, aber gröber werden die Zusammenhänge dargestellt. Weil gleichzeitig weniger Details angesprochen werden, bleibt der Umfang der Beschreibung (im wesentlichen) gleich. Dieses Strukturierungsprinzip wurde bei Rechnern und verteilten Systemen schon in den ersten Anfängen angewandt. ist für verteilte Systeme wichtig
4
Schichten (2) Grundlage der Schichtung ist die schrittweise Zerlegung von Informationsmengen (mathematisch: Partitionierung). Deren Verarbeitung wird dadurch zumeist einfacher. Beispiele: Klassifizierung von Informationen. Verteilung von Informationen. Suche nach Informationen. Hierarchien in großen Organisationen: Berichtswege sind gerade Umkehrungen der Verteilungswege. Dem (organisatorischen) Gewinn durch überschaubarere Strukturen steht eine gewisse Unflexibiliät entgegen - man kommt gar nicht auf die Idee, dass es auch anders gehen kann. (Selbst das kann von Vorteil, aber auch von Nachteil sein.) Durchbricht man in großen Organisationen die strengen Hierarchien, spricht man von "dotted lines".
6
Die Struktur innerhalb einer Schicht ist standardisiert: Instanzen sind die Verarbeitungseinheiten innerhalb einer Schicht. Sie kommunizieren horizontal (innerhalb der Schicht) anhand des zugehörigen Protokolls (vgl. Zeichnung), weitgehend standardisiertZeichnung vertikal (zwischen den Schichten) durch Unterprogrammaufrufe u.ä., weniger standardisiert. Ausnahme: Sockets. In vertikaler Richtung ist eine Standardisierung weniger erforderlich (weil die Programme meistens auf demselben Rechner laufen). Die "vertikale" Zuordnung muss nicht 1-1 sein Zu einer n-Instanz können mehrere (n+1)-Instanzen und mehrere (n-1)- Instanzen gehören.
7
Im Internet reicht die Schichtung nur von Physical bis Transport. Schichten 1 und 3 besorgen die "normale" Kommunikation: Physical legt fest, wie zwei direkt kommunizieren, Network, wie das über Vermitter geschieht. Schichten 2 und 4 besorgen die Absicherung (was tun, wenn die normale Kommunikation nicht klappt?) DataLink für Physical Transport für Network
8
Beispiel: Auf einer Transport-Instanz (TCP) sitzen mehrere Anwendungen. Unter ihr verschiedene "Netztreiber" (DataLink-Instanzen) TCP Anwendungen Netztreiber 713202122 Sockets ISDNEthernetWiMAXUMTS
9
Unterschiedliche Anwendungen interagieren meist nach dem Schema "Aufgabe - Rückmeldung". Aufgage ("request") von A an B Rückmeldung ("reply") von B an A Dies entspricht dem Schema "Aufruf - Rückkehr" bei sequenzieller Programmierung. Bei verteilten Systemen ist dies so zu sehen: A erzeugt mit dem Request eine Ursache. Der Reply von B ist die Wirkung. A kann sich auf zwei verschiedene Weisen verhalten: A wartet auf die Rückmeldung ("synchron" Interaktion). A wartet nicht auf die Rückmeldung ("asynchron" Interaktion).
10
Standardisierung Remote Procedure Call (RPC) Common Object Request Broker Architecture (CORBA) Distributed Computing Environment Remote Procedure Call (DCE RPC) Remote Method Invocation (RMI) SOAP
11
ursprünglich für Simple Object Access Protocol ähnlich Remote Procedure Call SOAP benützt XML zur Repräsentation der Daten und Internet-Protokolle der Transport- und Anwendungsschicht (vgl. TCP/IP-Referenzmodell) zur Übertragung der Nachrichten. Die gängigste Kombination ist SOAP über HTTP und TCP. Die Abkürzung SOAP wird jedoch offiziell seit Version 1.2 nicht mehr als Akronym gebraucht, da es erstens (subjektiv) keineswegs einfach (Simple) ist und da es zweitens nicht (nur) dem Zugriff auf Objekte (Object Access) dient. SOAP
12
TCP-Anwendungen werden (von außen) durch Port-Nummern adressiert.Port-Nummern 7EchoZurücksenden empfangener DatenEcho 13DaytimeÜbertragung von Datum und UhrzeitDaytime 20FTP-DataDateitransfer (Datentransfer vom Server zum Client)FTP-Data 21FTPDateitransfer (Initiierung)FTP 22SSHSecure ShellSSH 23TelnetTerminalemulationTelnet 25SMTPE-Mail-Versand (siehe auch Port 465)SMTP 43WhoisWhois-AnfragenWhois 53DNSAuflösung von Domainnamen in IP-AdressenDNS
13
In der Praxis sind viel mehr Instanzen auf einem Rechner beteiligt mit Wissen des Rechner-Betreibers ohne dessen Wissen, aber zu seinem Nutzen zu seinem Schaden
14
Netz ist die Gesamtheit aller Instanzen einer Schicht. Die Topologie eines Netzes ist durch die Nachbarschaft der Instanzen bestimmt. Die Topologie ist beliebig, manchmal wird Zusammenhang gefordert. In gewissen Topologien sind bestimmte Aufgaben leichter zu erfüllen, andere weniger. Beispiel: Viele Aufgaben (z.B. Verteilen) sind leichter in Hierarchien zu erfüllen. Andere Aufgaben (z.B. Abstimmen) sind leichter in "demokratischen" Strukturen (Peer-to-Peer) zu erfüllen. wie man aus dem täglichen Leben weiß.
15
Client-Server Hardware Software Client Server Braunschweig, VS-0203-Kap02-SystemModelle-4S.pdf Draufsicht Seitenansicht
16
Applets Client Webserver Applet vorher nachher
17
Proxy Client Server Proxy- Server Client
18
Peer-to-Peer Peer Jeder kann dasselbe.
19
Beweglichkeit (Mobilität) von Hardware Ort perspektivische Ansicht
25
Beweglichkeit (Mobilität) von Software
30
Die Verarbeitung von Informationen hängt auch vom Ort ab. Der Zugriff zu Daten erfordert (unterschiedliche) Ressourcen, je weiter entfernt, desto mehr (zumindest Zeit!). Beispiel: Es soll nach einer bestimmten Information gesucht werden (hier: 5-strahliger unter 4-strahligen Objekten). Man hat die Wahl, die Information näher an die Verarbeitung oder die Verarbeitung näher an die Information zu bringenen (mobile Agenten). (Diese Frage ist unabhängig von der Aufgabenteilung, vgl. einführendes Beispiel!) einführendes Beispiel!
32
Die Einsparung durch nähere Verarbeitung ist abzuwiegen gegen den zusätzlichen Auswand, die Software zu verlagern.
36
Wie findet man / der Rechner sich zurecht?
37
Verzeichnis von Informationen als Helfer in komplexer Landschaft Suchmaschine - wird nach dem Vorkommen eines Wortes in einem (Hyper-) Text gefragt und gibt einen Verweis zurück einfach zu automatisieren spielt die Anordnung der Verweise eine Rolle? Beispiel: http://www.google.de/http://www.google.de/ Encyklopädie - wird nach einem (durch ein Wort gegebenen) Begriff gefragt und gibt eine (vorgegebene) Erläuterung zurück nicht automatisierbar, lediglich maschinelle Unterstützung offene Autorenschaft Beispiel: http://de.wikipedia.org/http://de.wikipedia.org/
38
"Problem Viele Daten im Wiki sind für den Menschen offensichtlich, für Maschinen jedoch nicht auswertbar. Beispiel: Auf der Seite Karlsruhe stehen Gemeinden, an welche Karlsruhe angrenzt. Eine Maschine kann nun aber nicht herausfinden, ob z. B. Stutensee an Karlsruhe grenzt. Auch ein Mensch muss also zur Seite Stutensee oder Karlsruhe navigieren um dort die Information zu suchen - obwohl es eigentlich genügen würde, das einmal zu sagen. " aus http://semantic.stadtwiki.net/wiki/index.php/Stadtwiki: Projekt_Semantic_Wiki
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.