Algorithmus der Kommunikation mit Fehlern

7

Ich interessiere mich für verteilte Algorithmen, insbesondere für die Kommunikation in Netzwerken mit Fehlern.

Ich suche nach dem Beweis des folgenden randomisierten Kommunikationsalgorithmus in einem Netzwerk mit Fehlern. Für mich scheint es ein sehr allgemeines Ergebnis in der Kommunikation zu sein, trotzdem habe ich den Beweis noch nicht gefunden.

Algorithmus : Anfangs nur Scheitelpunktv0 hat die Nachricht, am Ende des Algorithmus sollte jeder Scheitelpunkt des Netzwerks die Nachricht haben.

In jeder Runde wählt jeder Scheitelpunkt, der die Nachrichtenauswahl hat, den Nachbarn zufällig aus und sendet ihm die Nachricht.

Annahmen : An den Kanten zwischen den Eckpunkten können nur Fehler auftreten. - Zeitkomplexität und das gesamte Netzwerk kennen die Nachricht mit hoher Wahrscheinlichkeit, wenn , wobei n - Anzahl der Eckpunkte.fT=O(logn)f<n/3

Ich freue mich über Links oder Verweise auf das Papier.

com
quelle

Antworten:

5

Das von Ihnen angegebene Problem kommt dem Problem der byzantinischen Vereinbarung mit fehlerhaften Links sehr nahe . Mir ist jedoch nicht klar, welche Garantien Sie von Ihrem Algorithmus erwarten.

Der von Ihnen angegebene Algorithmus löst das Problem der byzantinischen Vereinbarung nicht. Insbesondere, wenn die Partei, die die Nachricht enthält, beschädigt ist und mit dem Senden beginntv0 zu einem Spieler aber auch v zu einem anderen Spieler, dann wird Ihr Algorithmus nicht konvergieren (das heißt, vielleicht wird jeder haben v0, aber sie werden auch haben vund wird nicht wissen, was die Nachricht ist, die ursprünglich gesendet wurde). Wenn Sie sich nicht für die Partys interessierenv Warum also nicht einfach die Nachricht an alle Parteien senden (dann von jedem Knoten wiederholt)?

Beachten Sie, dass bei fehlgeschlagenen Verbindungen die Konnektivität in Frage kommt . Wenn beispielsweise einer der Knoten nicht mit einem anderen Knoten verbunden ist (alle Kanten dazwischen sind fehlerhaft), erhält dieser Knoten die Nachricht nie. Natürlich, wenn die Anzahl der fehlerhaften Kantenf ist weniger als n/3und vorausgesetzt, dass jeweils zwei Knoten verbunden sind, gibt es überhaupt kein Problem.

Das folgende Dokument könnte Ihnen helfen: Vassos Hadzilacos, Konnektivitätsanforderungen für byzantinische Vereinbarungen bei eingeschränkten Fehlertypen , Distributed Computing , Band 2, Ausgabe 2, S. 95-103, 1987. Dieses Dokument befasst sich mit byzantinischen Vereinbarungen mitt fehlerhafte Knoten und k fehlerhafte Links, und dies gilt für jede Architektur des zugrunde liegenden Diagramms (solange eine bestimmte Konnektivitätsbedingung gilt).

Vielleicht möchten Sie auch einen Blick auf den Fall werfen, in dem nur Knoten fehlerhaft sind. Siehe zum Beispiel K. Perry, Randomized Byzantine Agreement , IEEE Trans. on Software Engineering , Band SE-11, Ausgabe 6, S. 539-546, 1985.

Ran G.
quelle
4

Schauen wir uns zunächst den fehlerfreien Fall an:

Der Algorithmus, den Sie beschreiben, nämlich das Weiterleiten der Nachricht an einen gleichmäßig zufällig ausgewählten Nachbarn, ist im Wesentlichen ein Klatschalgorithmus .

Klar, die O(logn) gebunden gilt nicht für beliebige Netzwerke, die einen Durchmesser von haben können ω(logn)Der Algorithmus endet also mit der Wahrscheinlichkeit 0 im O(logn) Runden.

Das (fehlerfreie) Modell wurde zum Beispiel in [1] untersucht, aber es gibt viele frühere Arbeiten (siehe Referenzen in [1]):

In diesem Modell kennen Knoten die globale Topologie des Netzwerks nicht und können in jeder Runde nur Kontakt mit einem einzelnen Nachbarn aufnehmen.

[1] zeigen die allgemeine Obergrenze von O(ϕ1logn) wo ϕ ist der Leitfähigkeit des Graphen.

In Bezug auf den Fall, wo fLinks können fehlschlagen: Ich gehe davon aus, dass Sie über das Fehlermodell sprechen, bei dem Nachrichten über Links verloren gehen können und nicht beschädigt werden können, oder?

Hier hängt die Antwort davon ab, welche Art von Gegner Sie betrachten. Wählt der Gegner diefFehler im Voraus oder kann es die zufälligen Entscheidungen des Algorithmus beobachten? Im ersteren Fall können wir diese einfach verwerfenf Links von G und ein neues (sparser) Netzwerk erhalten G mit Leitfähigkeit ψ, was die Obergrenze ergibt O(ψ1logn), (für das kleinstmögliche ψ).

[1] Globale Berechnung in einer schlecht vernetzten Welt: Schnelle Verbreitung von Gerüchten ohne Abhängigkeit von der Leitfähigkeit. http://arxiv.org/abs/1104.2944 Von Keren Censor-Hillel, Bernhard Haeupler, Jonathan A. Kelner und Petar Maymounkov

Peter
quelle