5.2 Gruppenkommunikation

Slides:



Advertisements
Ähnliche Präsentationen
Kapitel 15 Verteilte Datenbanken
Advertisements

Message Passing Interface (MPI)
1 Multicast Routing in Ad Hoc Netzen.ppt Oliver Finger_ TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und.
Routing – Routing Protokolle
Eine kleine Einführung
© 2003 Patrick Brunner Spontane Vernetzung – Jini 9. Januar 2004 Spontane Vernetzung Patrick Brunner.
6.3 Ereignisbasierte Systeme Ereignis (event) : eine Ereignis-Quelle (event source, publisher) generiert Benachrichtigung (event notification), an der.
4 Verteilte Algorithmen
2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen.
4.2 Gruppenkommunikation (group communication) Bedeutet:Sendeoperation bezieht sich auf mehrere Adressaten - die Mitglieder einer Prozeßgruppe (process.
Vs Klassifizierung von Kommunikationsdiensten synonym:Nachrichtensystem/dienst(message service) Kommunikationssystem/dienst(communication service)
Umstellung von Lucane Groupware auf sichere Gruppenkommunikation mittels TGDH Von: Markus Diett Betreut durch: Mark Manulis Lehrstuhl für Netz- und Datensicherheit.
ATM LAN Emulation Prof. Dr. W. Riggert. 2 Inhalt Das Tutorial ist in drei Abschnitte gegliedert. Abschnitt 1 behandelt die Frage, warum LAN Emulation.
Netze Vorlesung 11 Peter B. Ladkin
Einführung in die Netzwerktechnik 1 Der ARP-Prozess
1 Thomas Butter Content Delivery Networks Peer-to-Peer Netze Thomas Butter
Evaluierung des ITU-T.124 Telekonferenzstandards
Datenverteilung in Ad-hoc Netzen 1/24 Adaptive Datenverteilung in mobilen Ad-hoc Netzen unter Verwendung des Area Graph basierten Bewegungsmodells S. Bittner,
TCP/IP-Ethernet.
Netzwerktechnik Wiederholung Mag. Sabine Tullits.
Multimedia-Anwendungen und Routing
Computer in einer vernetzten Welt
Fehler in Rechnernetzen
Abgeleitet aus dem OSI-Referenzmodell sieben Schichten
Xiaojie Ding, Andreas Kreiml, Maria Modly
Anforderungen an Automotive Bussysteme
VPN – Virtual Private Network
2. Kommunikation und Synchronisation von Prozessen 2
Vs Objektpufferung (caching) = dynamische, ad-hoc-Replikation einer Primärkopie: Zugriffswilliger beschafft sich temporär eine lokale Kopie cache.
Schutzvermerk nach DIN 34 beachten Ethernet und Echtzeit.
7.2.4 Klassifikation mobilen Codes Nicht vergessen:  Sowohl das Fernkopieren als auch die Migration von Objekten setzt voraus, daß der Code entweder am.
6.1.2 Sequentielle Konsistenz
Lösungen 1. Zu einem Dienst gehören immer: Diensterbringer (Server), Dienstbenutzer (Client) und Protokoll.
4.4 Sperrsynchronisation
Vs Gruppenkommunikation (group communication) Bedeutet:Sendeoperation bezieht sich auf mehrere Adressaten - die Mitglieder einer Prozessgruppe.
Vs Replizierte Objekte Vollständige Replikationsabstraktion ist attraktiv und machbar. 2 Beispiele: Orca(H. Bal, VU Amsterdam, ) = klassenbasierte,
Vs51 5 Verteilte Datenverwaltung. vs52 Situation:Zusammengehöriger Datenbestand ist über mehrere Stationen verteilt, z.B. Fragmentierung: in mehrere Fragmente.
5.1.2 Sequentielle Konsistenz
Vs Objektpufferung (caching) = dynamische, ad-hoc-Replikation einer Primärkopie: Zugriffswilliger beschafft sich temporär eine lokale Kopie cache.
6.3 Verteilte Transaktionen
Visualisierung verteilter Systeme
Vs41 4 Verteilte Algorithmen. vs42 Prozesse als Systemkomponenten:  Spezifikation eines Prozesses ? (Vgl. Spezifikation eines ADT) syntaktisch:z.B. Ports.
Vs Auswahlalgorithmen (election algorithms) dienen der Wahl eines Koordinators („Gruppenleiters“) einer Gruppe bei „halbverteilten“ Algorithmen.
Vs61 6 Fehlertoleranz. vs62 Zuverlässigkeit (reliability) Sicherheit vor FehlernSicherheit vor Angriffen (safety)(security) WS/SS xySystemsicherheit SS.
Meine Themen: Entwicklung der EDV EDV-Möglichkeiten PC-Komponenten
Telefonieren über das Internet Von Jana-Christin Pohl & Nadine Balzen.
CCNA2 – Module 8 TCP/IP Error and Control Messages.
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
IP-ADRESSIERUNG ● IP = Internet Protokoll ● dient zur Kommunikation zwischen Netzwerkteilnehmern ● zwei Versionen ● ipV4: 32 bits ● ipV6: 128 bits.
Verteilte Systeme Sommersemester 2007 Karsten Otto.
Vs Klassifizierung von Kommunikationsdiensten synonym:Nachrichtensystem/dienst(message service) Kommunikationssystem/dienst(communication service)
Mailprotokolle Internet- Grundtechnologien Allgemeine Technologie II WS 08/09 2 Gliederung I.Aufbau einer II.Protokollarten III.Mailprotokolle.
ICMP Internet Control Message Protocol Michael Ziegler Universität Freiburg Michael Ziegler.
Prof. Dr.-Ing. Thomas Schwotzer FB 4 / AI / Mobile Anwendungen Ad-hoc Networks Routing.
Othmar GsengerErwin Nindl Christian Pointner. Inhalt Was ist Anycast? Secure Anycast Tunneling Protocol (SATP) Was ist Anytun Verschlüsselung Live Demo.
Verteilte Systeme Sommersemester Zusammenfassung - Karsten Otto.
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
2 Kommunikationssysteme
Othmar Gsenger Erwin Nindl Christian Pointner
6.1.2 Sequentielle Konsistenz
6.3 Verteilte Transaktionen
7 Fehlertoleranz.
Hardware und Topologien in Netzwerken
Den Bus erkunden ….
Kapitel X: Netzvermittlungstechniken
ABB STOTZ-KONTAKT GmbH
Routing … … die Suche nach dem Weg..
Vorlesung Rechnernetzwerke Studiengang Medieninformatik
Tutorstunde 10.
TCP/IP Transmission Control Protocol/Internet Protocol
 Präsentation transkript:

5.2 Gruppenkommunikation (group communication) Bedeutet: Sendeoperation bezieht sich auf mehrere Adressaten - die Mitglieder einer Prozessgruppe (process group) Rundruf, Rundsendung, Rundmeldung (multicast; an alle Prozesse: broadcast) (Gegenteil: unicast) Motivation: - Replikation von Code und/oder Daten - Auffinden von Objekten im Netz - Informationsdienste - Konferenzsysteme, Kooperationssysteme (CSCW) - . . . . .

Klassifikation in verschiedenen Dimensionen: Adressierung: - benannte Prozeßgruppen: send m to group (mit Operationen zum Betreten/Verlassen einer Gruppe) - ad-hoc-Prozeßgruppen: send m to procset Offenheit: - geschlossene Gruppe: nur Mitglieder können senden - offene Gruppe: jeder kann an die Gruppe senden Zuverlässigkeit: - keine Garantie, daß jeder die Nachricht erhält - atomar: Nachricht erreicht alle oder keinen - k-zuverlässig: Nachricht erreicht n ≥ k Teilnehmer Reihenfolge: â5.2.1

Implementierung: Gruppenverwaltung: - zentralisiert - verteilt Nachrichtenübertragung: - mit multicast-fähiger Netz-Hardware - mit speziellen Multicast-Protokollen - per Einzeladressierung

5.2.1 Ordnung der Nachrichten In welcher Reihenfolge treffen Rundrufe bei den Empfängern ein? ungeordnet: keine Anforderung (d.h. nicht unbedingt FIFO)  FIFO: mehrere Nachrichten eines Senders kommen in der Reihenfolge ihres Absendens bei allen Empfängern an. (Wie bei Unicast leicht durch Folgenumerierung zu gewährleisten.)  Kausalordnung (causally ordered, virtually synchronous) : FIFO bei allen Nachrichten, die in einer Kausalitätskette gesendet werden.  Totale Ordnung (loosely synchronous) : Alle Nachrichten kommen überall in der gleichen Reihenfolge an.

FIFO ungeordnet total (a,b oder b,a) kausal a b a a b b b b a b a b a

Totale Ordnung impliziert Kausalordnung FIFO ungeordnet

5.2.2 Sicherung der Kausalordnung (CBCAST) Vor.: Zuverlässige Nachrichtenübertragung (!)  Prozess p erhöht in seiner „Vektorzeit“ P vor dem Senden Pp um 1 und heftet dann P als Zeitstempel t an die Nachricht an.  Eine von p bei q eintreffende Nachricht mit Zeitstempel t wird vom Nachrichtensystem solange zurückgestellt (d.h. nicht abgeliefert), bis gilt: tp = Qp + 1 (garantiert FIFO-Ordnung) und ∀ i ≠ p: ti ≤ Qi (garantiert Kausalordnung: alle Nachrichten, die p gesehen hat, hat auch q gesehen) Bei Rundruf ist „zuverlässige Nachrichtenübertragung“ eine starke Forderung! „Vektorzeit“: nicht ganz identisch mit Vektorzeit nach 4.1.2 ! hier weiter  Beim Abliefern einer Nachricht von p bei q wird Qp um 1 erhöht. (realisiert im System ISIS, Birman/Joseph 1987, Cornell Univ.)

1 > 0 !! zurückstellen 1 + 0 0 ≤ 0 000 110 100 1 ≤ 1 ok als Übung !

5.2.3 Sicherung der Totalordnung durch künstliche Serialisierung unabhängiger Rundrufe entweder mittels Sequencer, d.i. zusätzliche Station, über die alle Rundrufe vermittelt werden oder mittels Prozeßring mit kreisender Marke (vgl. Token Ring in Hardware,  5.2.4), die die Sendeberechtigung gibt Garantiert werden typischerweise zuverlässige totalgeordnete Rundrufe auch bei Nachrichtenverlust, evtl. sogar Stationsausfall 3. Alternative: mit Skalarzeit, ähnlich dem Protokoll für wechselseitigen Ausschluß – voll verteilt (aber nicht gut skalierend) (Tanenbaum/van Steen 4.5.2)

Struktur des Sequencer-Protokolls:  p: send m to G veranlaßt Senden von (m,G) an Sequencer s (unzuverlässiger Unicast)  s schickt m an alle Mitglieder von G (unzuverlässiger Multicast)  Die send-Anweisung von p ist erst dann abgeschlossen, wenn p die Nachricht m von s zurückbekommt. Details: - Durchnumerierung der Unicasts und Multicasts - Timeout und erneute Anforderung durch die Prozesse - Geschichtspuffer beim Sequencer gegen Duplikate und für wiederholte Zustellung bei Bedarf (realisiert im verteilten Betriebssystem Amoeba, Kaashoek/Tanenbaum 1989) ! Semantik zwischen „synchron“ und „quittiert“; somit reicht auch EIN Sendepuffer.

Station A Sequencer Station B a1 a1 Timeout, erneut senden s1 in Historie a1 ACK a1 (beschäftigt) b1 Timeout, erneut senden s2 a2 s3 s3 s2 s2 ? falsche Sequenznummer, zurückstellen und nachfragen in Historie

Variante des Protokolls: - p sendet n. Rundruf direkt, auch an s: (p,n,m) - s reagiert mit i. Rundruf (p,n,OK,i) - erst mit Erhalt dieser Nachricht ist die erste „offiziell“ - Prozesse fordern Nachrichten neu an, falls unerwartetes i Aufwand: Original: 2 lange Nachrichten, aber nur 1 Multicast Variante: 2 Multicasts, aber nur eine Nachricht ist lang Ferner: Maßnahmen gegen Ausfall des Sequencer erforderlich ! Achtung! Diese Verfahren skalieren nicht für große Systeme! Andere Verfahren z.B. für Internet-Multicast.

5.2.4 Hardware-unterstützte Rundrufe in Lokalnetzen Ethernet:  Bus-Topologie, verbindet alle Teilnehmer  Kollisionsfreie Übertragung (durch Netzsteuerung nach eventuell wiederholten Versuchen sichergestellt) resultiert in Nachrichtenempfang in allen Stationen (einer Gruppe).  Pufferüberlauf wird durch Software verhindert.  Streng serielle Behandlung aller Rundrufe garantiert Totalordnung (sogar „perfect synchrony“ statt nur „virtual/loose synchrony“)

Token Ring:  Ring-Topologie, Kommunikation nur mit nächstem Nachbarn, spezielle Nachricht (Marke) wird im Kreis gesendet.  Nur wer im Besitz der Marke ist darf Nachrichten senden.  Erst wenn die Nachricht wieder beim Sender angekommen ist, wird die Marke weitergereicht, d.h.  Serialität der Rundrufe und damit ebenfalls Totalordnung.

5.2.5 Gruppenkomunikation in Java Multicast Sockets: IP Multicast (ohne explizite Gruppen, 2.4.2) JGroups: + zuverlässige Gruppenkommunikation, Ordnung nach Wunsch FIFO, kausal oder total String props="UDP:PING:FD:STABLE:NAKACK:UNICAST:" + "FRAG:FLUSH:GMS:VIEW_ENFORCER:STATE_TRANSFER:QUEUE"; Message send_msg; Object recv_msg; Channel channel = new JChannel(props); channel.connect("MyGroup"); send_msg = new Message(null, null, "Hello world"); channel.send(send_msg); recv_msg = channel.receive(0); System.out.println("Received " + recv_msg); channel.disconnect(); channel.close(); statt Voreinstellung typischerweise "UDP(mcast_addr=...;mcast_port=...)" hier weiter