FIFO vs. Causal Multicast

Andi
Erstie
Erstie
Beiträge: 20
Registriert: 14. Nov 2004 14:08

FIFO vs. Causal Multicast

Beitrag von Andi »

Ich verstehe den Unterschied zwischen FIFO und causal Multicast von Folie 51 nicht. Für mich sehen die Definitionen irgendwie gleich aus. Kann mir das vielleicht jemand mit eigenen Worten erklären? Wäre nett :)

rico
Windoof-User
Windoof-User
Beiträge: 37
Registriert: 25. Aug 2006 12:10

Beitrag von rico »

berechtigte Frage, nach einigen Recherchen hab ich Zweifel an der Korrektheit der Folien. FIFO heisst ja einfach nur, dass die Ordnung vom Sender erhalten wird, also -->g
Bei der kausalen Ordnung ist in der Folien meiner Meinung nach der falsche Pfeil eingetragen. Da gilt die normale happened before relation und die ist eben nicht auf den Sendeprozess beschränkt. Sonst macht das doch recht wenig Sinn.

Muss jetzt nicht richtig sein, was ich sage, aber anders kann ich mir auch keinen Reim darauf machen. Und (verblüffend ähnliche ^^) andere Foliensätze anderer Unis haben das eben so drin (FIFO -->g, kausal -->)


Und kann es sein, dass Aufgabe 4.2 reichlich witzlos ist? In 4.1 ist doch multicast(m1) --> multicast(m2) --> deliver(m2) --> deliver (m1). das wär dann doch ein Beispiel für total aber nicht FIFO, soll man das abschreiben??

Heinz
Mausschubser
Mausschubser
Beiträge: 91
Registriert: 10. Nov 2005 20:25

Beitrag von Heinz »

@rico: Ja, denke so ist FIFO bzw. Causal zu verstehen... finde das Beispiel auf Seite 53 dazu noch ganz hilfreich... Zur Aufgabe 4.2.: seh das genauso...

DaO
Windoof-User
Windoof-User
Beiträge: 40
Registriert: 9. Mär 2007 17:27

Beitrag von DaO »

Nach meinen Recherchen bin ich zum gleichen Ergebnis wie rico gekommen.

Andi
Erstie
Erstie
Beiträge: 20
Registriert: 14. Nov 2004 14:08

Beitrag von Andi »

Erstmal danke fuer die Antworten, hat mir sehr geholfen.
Muss jetzt nicht richtig sein, was ich sage, aber anders kann ich mir auch keinen Reim darauf machen. Und (verblüffend ähnliche ^^) andere Foliensätze anderer Unis haben das eben so drin (FIFO -->g, kausal -->)
So sehe ich das auch.
Das einzige was in den Folien halt Sinn machen wuerde, ist dass -->g die HB Relation auf die ganze Gruppe g ist (ist nicht gleich der kompletten HB Relation, da es Knoten gibt, die nicht in g sind), somit waere es bei FIFO -->p (bezogen auf Prozess P) und bei kausal -->g (bezogen auf die ganze Gruppe).

AndreasHeinemann
Mausschubser
Mausschubser
Beiträge: 50
Registriert: 2. Okt 2006 13:53
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von AndreasHeinemann »

Hallo,

es ist tatsächlich so, dass die Definition von causal-ordering auf Folie 51 falsch ist. Streichen Sie bitte das g im Index. Die richtige Definition lautet:

if multicast(g,m) --> multicast(g,m')
then for all correct processes:
deliver(m') => deliver(m) before deliver(m')

--> ist die happened before Relation

Gruß, Andreas Heinemann

AndreasHeinemann
Mausschubser
Mausschubser
Beiträge: 50
Registriert: 2. Okt 2006 13:53
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von AndreasHeinemann »

AndreasHeinemann hat geschrieben:Hallo,

es ist tatsächlich so, dass die Definition von causal-ordering auf Folie 51 falsch ist. Streichen Sie bitte das g im Index. Die richtige Definition lautet:

if multicast(g,m) --> multicast(g,m')
then for all correct processes:
deliver(m') => deliver(m) before deliver(m')

--> ist die happened before Relation

Gruß, Andreas Heinemann
Update: Meine Aussage von heute morgen ist doch nicht ganz korrekt. Das g im Index soll ausdrücken, dass sich das happened-before nur auf Kommunikation innerhalb
der Gruppe g bezieht. Wenn also eine Nachricht von einem Gruppenmitglied an ein Nichtgruppenmitglied geht und von dort wieder rein in die Gruppe, dann entsteht dadurch eine Kausalkette, die NICHT durch das Schema abgedeckt ist, über das wir
bei causal-ordered reden.

Viele Grüße, Andreas Heinemann

Speedy
Windoof-User
Windoof-User
Beiträge: 36
Registriert: 13. Okt 2004 16:39

Beitrag von Speedy »

Ich hoffe,das wird auch in der Korrektur berücksichtigt. Nicht jeder schaut hier jeden Tag rein. Außerdem hatte ich schon Anfang der Woche abgeschickt und habe nun unter anderen wegen der Prog. Aufgabe keine Zeit meh rfür Änderungen.

AndreasHeinemann
Mausschubser
Mausschubser
Beiträge: 50
Registriert: 2. Okt 2006 13:53
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von AndreasHeinemann »

Speedy hat geschrieben:Ich hoffe,das wird auch in der Korrektur berücksichtigt. Nicht jeder schaut hier jeden Tag rein. Außerdem hatte ich schon Anfang der Woche abgeschickt und habe nun unter anderen wegen der Prog. Aufgabe keine Zeit meh rfür Änderungen.
Hallo "Speedy",

das Forum ist in erster Linie dazu gedacht, dass Sie sich mit Ihren Studienkollegen
über den Stoff austauschen können. Sollten Sie Fragen zu Probleme mit den Aufgaben haben, können Sie jederzeit eine E-Mail direkt an mich oder die Tutoren schreiben oder in meine Sprechstunde kommen. Viele Grüße, Andreas Heinemann

PS: Die Folie 51 ist übrigens korrekt. Die Bedeutung von ->g wird auf Folie 52 erklärt. Dort heißt es:
happen-before ->g means restricted to communication within g.

rico
Windoof-User
Windoof-User
Beiträge: 37
Registriert: 25. Aug 2006 12:10

Beitrag von rico »

AndreasHeinemann hat geschrieben:Wenn also eine Nachricht von einem Gruppenmitglied an ein Nichtgruppenmitglied geht und von dort wieder rein in die Gruppe
und das ist dann noch Multicast?

AndreasHeinemann
Mausschubser
Mausschubser
Beiträge: 50
Registriert: 2. Okt 2006 13:53
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von AndreasHeinemann »

rico hat geschrieben:
AndreasHeinemann hat geschrieben:Wenn also eine Nachricht von einem Gruppenmitglied an ein Nichtgruppenmitglied geht und von dort wieder rein in die Gruppe
und das ist dann noch Multicast?
Hallo "Rico". Ich verstehe Ihre Frage nicht ganz. Sie haben ja oben nur den ersten Teil des Satzes zitiert....

Unabhängig davon: Denken Sie sich zwei Multicast Gruppen g1 und g2 und
einen Knoten, der Mitglied in beiden Gruppen ist. Dann könnte es zu solch
einem Verhalten kommen. Gruppenübergreifende Kommunikation soll
aber bei causal-ordered multicast Betrachtungen nicht berücksichtigt
werden.

Viele Grüße, Andreas Heinemann

rico
Windoof-User
Windoof-User
Beiträge: 37
Registriert: 25. Aug 2006 12:10

Beitrag von rico »

Ich meine, dass multicast-kommunikation per Definition ja in der Gruppe stattfindet und diese nicht verlässt. Dh dass ich beim Senden eigentlich davon ausgehen kann, dass nur Gruppenmitglieder die Nachrichten auch empfangen und niemand ausserhalb der Gruppe. Von daher finde ich den Index am happened-before-pfeil etwas verwirrend, da mir das eigentlich als selbstverständlich erschien.

AndreasHeinemann
Mausschubser
Mausschubser
Beiträge: 50
Registriert: 2. Okt 2006 13:53
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von AndreasHeinemann »

rico hat geschrieben:Ich meine, dass multicast-kommunikation per Definition ja in der Gruppe stattfindet und diese nicht verlässt. Dh dass ich beim Senden eigentlich davon ausgehen kann, dass nur Gruppenmitglieder die Nachrichten auch empfangen und niemand ausserhalb der Gruppe. Von daher finde ich den Index am happened-before-pfeil etwas verwirrend, da mir das eigentlich als selbstverständlich erschien.
Das sehen Sie richtig. Allerdings ist die happend-before Relation nicht explizit für multicast Kommunikation definiert. Die happend-before Relation unterscheidet nur zwischen Events, insbesondere send und receive Events. Obige Definition berücksichtigt also nur Sende- bzw. Empfangsereignisse, die wirklich zur Multicast Kommunikation einer Gruppe gehören.

Antworten

Zurück zu „Archiv“