Benutzer:Tase4ka Rimsha/Spielwiese

aus Wikipedia, der freien Enzyklopädie

Das Problem der byzantinischen Generäle - in der Informatik Gedankenexperiment, die auf das Problem der Synchronisation der Systeme bei denen die Kommunikation betrachtet werden Sicherheit und Prozessoren zeigen - nein.

Definition

N «blue" durch die Armee Generäle in den Bergen geleitet und Vorbereitungen trifft, um das Grün in das Tal angreifen. Für Zusammenhang nutzt der Angreifer eine zuverlässige Verbindung (zB Telefon). Allerdings sind die n m Generäle Verräter und aktiv versuchen, die Zustimmung der loyalen Generäle zu verhindern. Die Vereinbarung ist, dass alle loyalen Generäle über die Anzahl der alle treuen Armeen gelernt haben.

Formalisierung

Jeder der Generäle sollten die gleichen Vektor der Länge n, wobei die i-te Element enthält eine beliebige Anzahl von i-ten Armee (wenn der Kommandant ist loyal) oder undefiniert (wenn der Kommandant - ein Verräter).

Algorithmus Lösung

Die entsprechenden rekursiv-Algorithmus wurde 1982 Leslie Lamportom.

Wir zeigen es für den Fall n = 4 und m = 1. In diesem Fall ist der Algorithmus in 4 Schritten durchgeführt werden.

Schritt 1 zurück. Jeder General sendet den Rest der Nachricht, die die Anzahl seiner Armee zeigt. Loyal Generale geben Sie die tatsächliche Zahl und die Verräter können unterschiedliche Zahlen in verschiedenen Einträge haben. General-1 haben 1 (Tausend Krieger), General-2 haben 2, General-3 sind drei weitere Generäle, bzw. x, y, z, und General-4 eingetragen 4.

2. Schritt. Jeder erzeugt einen Vektor aus den verfügbaren Informationen.

Umdrehungen:

vect1 (1,2, x, 4)

vect2 (1,2, y, 4)

vect3 (1,2,3,4)

vect4 (1,2, z, 4)

3. Schritt. Jeder schickt seine Vektor von allen anderen (allgemein-3 sendet einen beliebigen Wert).

Generäle sind die folgenden Vektor:

g1 g2 g3 g4
(1,2,y,4) (1,2,x,4) (1,2,x,4) (1,2,x,4)
(a,b,c,d) (e,f,g,h) (1,2,y,4) (1,2,y,4)
(1,2,z,4) (1,2,z,4) (1,2,z,4) (i,j,k,l)


4. Schritt. Jede allgemeine Kontrollen jedes Element aller empfangenen Vektoren. Wenn einer der Werte ist für mindestens zwei Vektoren, dann ist es in der resultierenden Vektor gelegt, da ansonsten die entsprechenden Element der resultierende Vektor gekennzeichnet ist unbekannt.

Alle loyalen Generäle bekommen ein Vektor (1,2, unbekannt, 4) - Einigung erzielt.

Die Forschungs-Problem

Lamport bewiesen, dass in einem System mit m-Prozessoren kann ein Buggy, eine Vereinbarung nur dann, wenn 2m 1 zu erreichen, ist der arbeitende Prozessoren (mehr als 2 / 3) wahr.

Andere Autoren haben gezeigt, dass in einem verteilten System mit Asynchron-Prozessoren und grenzenlose Kommunikation Verzögerungen Zustimmung nicht einmal mit einem Prozessor erreicht werden gestoppt wird (auch wenn er zeigt keine Anzeichen von Leben).

Siehe auch

Links

[[Kategorie: Informatik | *]] [[Kategorie: Thought Experiments]] [[Kategorie: Fehler]] [[Kategorie: Kryptographie]] [[Kategorie: Quantenmechanik]] [[Kategorie: Distributed Systems]] [[Kategorie: Algorithmentheorie]] ((Template: Gedankenexperiment))

[[Kategorie:Plasmaphysik|!]]