Jens Ellenberg
Transcription
Jens Ellenberg
Probleme und Lösungen für „Churn“ Jens Ellenberg Inhalt • Was ist Churn • Probleme durch Churn • Lösungen für Churn 2 Was ist „Churn“? 3 Probleme durch „Churn“ Autor System Sitzungszeit Saroiu Gnutella, Napster 50% ≤ 60 min Chu Gnutella, Napster 31% ≤ 10 min Sen FastTrack 50% ≤ 1 min Bhagwan Overnet 50% ≤ 60 min Gummadi Kazaa 50% ≤ 2,4 min 4 Probleme durch „Churn“ • FreePastry – Erfolgreiche Suchen bleiben konsistent – Viele Suchen werden abgebrochen • MIT Chord – Suchen werden abgeschlossen und sind konsistent – Die Latenz nimmt extrem zu 5 Lösungen für „Churn“ • Fehlerbehebung • Timeout Berechnung • Nächsten Nachbar Berechnung 6 Fehlerbehebung • Rückwirkende Fehlerbehebung – Nur bei Fehlern – O(k^2) • Periodische Fehlerbehebung – Ständig aktiv – O(log k) 7 Timeout Berechnung • TCP-style Timeouts – Vergangenheit von O(log n) – RTO = AVG + 4 * VAR • Timeout von virtuellen Koordinaten – Vergangenheit von allen Knoten – RTO = v + 6 * a + 15 8 Nächster Nachbar Berechnung • • • • Globales probieren Nachbarn des Nachbars Nachbarn des Nachbarn umgekehrt Rekursiv 9 Ausblick • Andere Algorithmen • Größere Netzwerke • Auftreten von Churn anpassen 10 Quellen • Proceedings of the General Track: 2004 USENIX Annual Technical Conference • Wikipedia.de • Wikipedia.com 11