Vertiefung Verteilte Systeme Computer Supported ... fileComputer Supported Cooperative Work...
Transcript of Vertiefung Verteilte Systeme Computer Supported ... fileComputer Supported Cooperative Work...
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Vertiefung Verteilte Systeme
Computer Supported Cooperative WorkPrasentation
Doreen Heigener Jorg Schweitzer
23. Februar 2006
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Ubersicht
1 Grundlagen
2 Analyse
3 ArchitekturServerServentClient
4 Funktionen
5 Live-Demo
6 Fazit und Ausblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Projektbeschreibung
Gemeinschaftsprojekt:Visualisierung und Verteilte SystemeKonferenzanwendung
Vertiefung VisualisierungEntwicklung von Frontend und Teilnehmerorganisation
Vertiefung Verteilte SystemeUnterlagertes Netzwerksystem
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Begriffe
Computer Supportet Cooperative Work (CSCW)Allgemein : Untersuchen von Gruppenprozessen undSteigerung deren Effektivitat durch den Einsatz vonKommunikation- und Informationstechnologien
GroupwareHard- und Software zur Unterstutzung der durch CSCWspezifizierten Grundlagen
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Anwendung
Konferenz zu Bauprojekten
Konferenzteilnehmer weltweit verteilt
Telefonkonferenz als BasisVisuelle Unterstutzung durch Konferenzsoftware:
Userliste/UserstatusGemeinsames Nutzen von Planungsressourcen (Plane ...)Datentransfer (Bilder, Textdokumente, ...)Grafische ApplikationenTextnachrichten
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Frontend
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Ubersicht
1 Grundlagen
2 Analyse
3 ArchitekturServerServentClient
4 Funktionen
5 Live-Demo
6 Fazit und Ausblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Analyse
DimensionenSynchrone Kommunikation (Echtzeit)Geographische Verteiltheit (weltweit)
MessagepassingZeitkritische Micromessages (Applikationen, Gesten)Zeitunkritische Macromessages (Dateien, Dokumente)
VerwaltungBenutzerKonferenz/SessionOptional feste Useraccounts
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Ubersicht
1 Grundlagen
2 Analyse
3 ArchitekturServerServentClient
4 Funktionen
5 Live-Demo
6 Fazit und Ausblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Netzwerk - Uberblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Netzwerk - Komponenten
ServerFirewalls umgehenZentrale Instanz zur Kontrolle der KonferenzWebplattform fur weitere Funktionen (Benutzerliste,Datenspeicher, ...)
ServentKapsel fur Messagepassing uber das InternetIntranet Verteilerpunkt
ClientSchnittstelle fur die AnwendungEinfaches send + receive Verhalten (kein Polling)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Server
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Server
Zentrale KontrollinstanzBietet Konferenz/Session anOrganisiert Teilnehmer der KonferenzNachrichtenmanagementPersistente Konferenz (Ressourcen, Verlauf)Webportal (feste Accounts, Meeting-Schnittstelle)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Server - Messagepassing
Messages als KommunikationsbasisSteuerinformation fur das NetzwerkEigentliche Nachricht
MessagehandlingAnnahme (Speichern)Sortieren (Prioritat)Herausgeben (Polling)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Servent
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Servent
Lokale Instanz (eine proTeilnemer)
Ubernimmt das kompletteRequestverhalten zum Server
Bedient mehrere Clients
Verarbeitet mehrere Serverund Konferenzen
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Servent
Bietet Clients die Weiterleitung ihrer Nachrichten an
Ruft Nachrichten vom Server ab und verteilt sie an dieClients
Pro Client ist die Verarbeitung einer eigenen Konferenzmoglich
Rolle gegenuber den Clients : Primary/Secondary
Anzahl der aktiven Servents sollte minimal sein um denInternettransfer zu reduzieren
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Client
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Client
Schnittstelle zur Anwendung
Verbindet sich zu mehreren Servents
Ruft die Anwendung zuruck bei neuer Nachricht
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
ServerServentClient
Client
Erzeugen und Verbinden eines Servents beim Start derAnwendungVerbindung zu weiteren Servents aufbauen, wenn dieseverfugbar werden (Redundanz)
ein primarer Servent wird vom Netz (Server) bestimmtNachrichten werden nur an den primaren Servent gesendetNachrichten werden von allen Servents empfangen
Lost uber den Servent ein Ticket zu einer Konferenz (’join’)Eine Konferenz pro Client (= 1 Ticket)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Ubersicht
1 Grundlagen
2 Analyse
3 ArchitekturServerServentClient
4 Funktionen
5 Live-Demo
6 Fazit und Ausblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Anmeldung
Verbindung zum Servent aufbauen
(Authentifizierung zwischen Client und Servent)
’Join-Request’ an den Server
Anwort enthalt Ticket fur die Konferenz (oder Fehlerdaten)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Anmeldung
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Messagetransfer
Nachrichten werden vom Client an den Servent gesendet
Servent legt die Nachrichten auf den ServerServents pollen Nachrichten und propagieren sie an dieClients
Server entscheidet welche Nachrichten ein Servent erhalt
Addressierung als broadcast, oder als Unicast uber Ticket
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Steuerinformationen
Steuerinformatinen zusatzlich zu den UserdatenClient→ Servent
ping, pong (Lebenshaltung)primary servent (Anfrage)disconnect (Warnung/Anforderung)source, destination (Tickets)
Servent→ Clientconnection info (ACK, FEHLER,...)ping, pong (Lebenshaltung)servent (neue Redundanz)primary servent (Antwort)disconnect (Bestatigung)source, destination (Tickets)session, session ticket (Status)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Steuerinformationen
Servent↔ Serversource, destination (tickets)priority (sortierung)type (ungenutzt)netinfo (login, polling, message,...)servent (absender)msgLeft (polling Intervall)error (Fehlercodes)
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Topologiewechsel
Login/Logout von Clients und Servents fuhrt zu neuenRouten
Erreichbarkeit und Qualitat prufen : Client↔ Servent
Redundante Verbindungen aufbauenZiele :
Netzentlastung (wenig aktive http Verbindungen)Fallback (schlafende Verbindungen)
Optimum : wenige Servents, viele Clients, viel Broadcast
Wer evaluiert und steuert das ?
Feste Funktion ? Modul ? Plugin ? Agent ?
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Ubersicht
1 Grundlagen
2 Analyse
3 ArchitekturServerServentClient
4 Funktionen
5 Live-Demo
6 Fazit und Ausblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Live-Demo
⇒Live-Demo
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Ubersicht
1 Grundlagen
2 Analyse
3 ArchitekturServerServentClient
4 Funktionen
5 Live-Demo
6 Fazit und Ausblick
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Fazit
Sehr reizvolles ubergreifendes Projekt
Große Verzweigtheit auch in der Entwicklung
Schnittstellen und Protokolle fallen nicht vom HimmelMeilensteine der Problemgeschichte :
Prozesse vs. ThreadsGnu-Java
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation
GrundlagenAnalyse
ArchitekturFunktionenLive-Demo
Fazit und Ausblick
Ausblick
Saubern und Stabilisieren des Zustands(Kinderkrankheiten)
Evaluation der Messageformate (kurzen und Redundanzentfernen)
Fertigstellen der Topologiefunktionen (Management ?)
Pool mit konferenzbezogenen Diensten
Was geht noch ?
Doreen Heigener, Jorg Schweitzer Verteilte Systeme - CSCW - Presentation