1 / 29

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 21.05.2004 5. Vorlesung

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 21.05.2004 5. Vorlesung. Christian Schindelhauer. Kapitel III. Skalierbare P2P-Netzwerke. CHORD. Brückentagvorlesungsplan. IF studenten kommen THEN Chernoffschranke mit Beweis Bälle in Körbe (ist dann ganz einfach)

kirima
Download Presentation

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 21.05.2004 5. Vorlesung

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorithmen für Peer-to-Peer-NetzwerkeSommersemester 200421.05.20045. Vorlesung Christian Schindelhauer

  2. Kapitel III Skalierbare P2P-Netzwerke CHORD

  3. Brückentagvorlesungsplan • IF studenten kommen THEN • Chernoffschranke • mit Beweis • Bälle in Körbe • (ist dann ganz einfach) • CHORD-Wiederholung • Eigenschaften von CHORD • mit Hilfe von Bällen und Körben • END IF

  4. Markov und Chebyshev • Stärkere Abschätzung: Chebyshev wenn die Varianz bekannt ist:

  5. Chernoff-Schranke • Bernoulli-Experiment • Entweder 0 mit Wahrscheinlichkeit 1-p • Oder 1 mit Wahrscheindlichkeit p

  6. Beweis der 1. Chernoff-Schranke: Der Trick • Zu zeigen: • Für t>0: • Markov liefert: • Zu tun: geeignete Wahl für t und einsetzen... ? ?

  7. Beweis der 1. Chernoff-SchrankeEin Erwartungswert • Zu zeigen: • wobei: • Jetzt zu zeigen: Unabhängigkeit der Zufallsvariablen xi

  8. Beweis der 1. Chernoff-SchrankeEtwas Algebra Zu zeigen: wobei: Jetzt zu zeigen:

  9. Beweis der 1. Chernoff-Schranke1.Fall c<c2 Zu zeigen für c>1: Nun ist für c=1: 2 ln(2) > 4/3 Ableitung: • linke Seite: ln(1+c) • rechte Seite: 4/3 • Für c>1 ist Steigung der linken Seite größer als die rechten Seite, da • ln(1+c)>ln (2) > 4/3 • Also gilt Ungleichung für c>0.

  10. Beweis der 1. Chernoff-Schranke2. Fall c2<c Zu zeigen für c< 1: Nun ist für x>0: Daraus folgt Nun erhält man für (1+x) ln(1+x) durch Multiplikation: Nun setzt man für ein (1+c) ln(1+c) und erhält for c(0,1):

  11. 2. Chernoff-Schranke • Bernoulli-Experiment • Entweder 0 mit Wahrscheinlichkeit 1-p • Oder 1 mit Wahrscheindlichkeit p

  12. Beweis der 2. Chernoff-Schranke: Der Trick • Zu zeigen: • Für t<0: • Markov liefert: • Zu tun: geeignete Wahl für t und einsetzen... ? ?

  13. Beweis der 2. Chernoff-SchrankeDer selbe Erwartungswert • Zu zeigen: • wobei: • Jetzt zu zeigen: Unabhängigkeit der Zufallsvariablen xi

  14. Beweis der 2. Chernoff-SchrankeEtwas Algebra Zu zeigen: wobei: Jetzt zu zeigen:

  15. Beweis der Chernoff-Schranke 2. TeilWas ist (1-c) ln (1-c) - Nachtrag Warum ist ? Für c=0 sind beide Seiten gleich. Die Ableitung der linken Seite ist ln(1-c); die der rechten ist -c Nun ist Daraus folgt und insbesondere die gewünschte Ungleichung.

  16. Bälle und Körbe Proved by Chernoff Lemma Werden m= k n ln n Bälle zufällig in n Körbe geworfen (für jedes k>0), gilt Folgendes: • Für alle c>k ist die Wahrscheinlichkeit, dass mehr als clog n Bälle auf einen Korb fallen ist höchstens O(n-c‘) für ein c‘>0. • Für alle c<k ist die Wahrscheinlichkeit, dass in einem Korb weniger als c log n Bälle fallen, ist höchstens O(n-c‘) für ein c‘>0. Beweis: • Betrachte einen Korb mit Bernoulli-Experiment: B(k n ln n,1/n) mit Erwartungswert: µ = m/n = k ln n • Fall: c>2k • Fall: k<c<2k • Fall: c<k

  17. Bälle und Körbe Proved by Chernoff Lemma Werden m Bälle zufällig in n Körbe geworfen. Dann gilt: • Die Wahrscheinlichkeit, dass ein (bestimmter) Korb leer bleibt, ist kleiner als e-n/m. • Die Wahrscheinlichkeit, dass mehr als k (ln n) + k m/n (ln n) Bälle auf einen bestimmten Korb fallen, ist höchstens O(n-c) für konstante k und c. Beweis: • Wahrscheinlichkeit: (1-1/n)m < e-n/m • Bernoulli-Ereignis: 1 Ball in einem Korb • X: Summe aller m Ballwürfe in einem Korb • Wahrscheinlichkeit: p=1/n • Erwartungswert µ = 1 • Fall m≥n, c>1: • Fall m<n, c>1:

  18. Hohe Wahrscheinlichkeit Lemma Falls Aussage A(i) für jedes von n Objekten i mit Wahrscheinlichkeit 1-n-c gilt, dann gilt (A(1) und A(2) und ... und A(n)) mit Wahrscheinlichkeit mindestens 1-n-(c-1) Beweis: • Für alle i gilt: P[A(i)] ≤ n-c • Somit ist: P[ A(1) oder  A(2) oder ...  A(n) ] ≤ n  n-c P[( A(1) oder  A(2) oder ...  A(n)) ] ≤ 1- n  n-c Nach DeMorgan: P[A(1) und A(2) und ... A(n) ] ≤ 1- n  n-c

  19. Chord als DHT rV(b) = b+1 mod 8 • n: Knotenanzahl, Knotenmenge V • k: Anzahl Schlüssel, Schlüsselmenge K • m: Hashwertlänge: m >> log max{K,N} • Zwei Hash-Funktionen bilden auf {0,..,2m-1} ab • rV(b): bildet Peer b zufällig auf {0,..,2m-1} ab • rK(i): bildet Index i zufällig auf {0,..,2m-1} ab • Abbildung von i auf einen Peer b = fv(i) • fV(i) := arg minbV(rB(b)-rK(i)) mod 2m 5 6 5 7 3 rK(i) = 3i-2 mod 8 0 6 2 Index 4 1 3 2 0 2

  20. Eigenschaften der Datenstruktur Lemma • Der Abstand zweier benachbarter Peers auf dem Ring ist • im Erwartungswert 2m/n, • < O((2m/n) log n) (mit hoher W‘keit) und • > 2m/nc(mit hoher W‘keit) für eine Konstante c>1 • In einem Intervall des Rings der Länge w 2m/n sind (mit hoher W‘keit) • O(log n + w log n) Peers, falls w=O(log n) • O(w) Peers, falls w=Ω(log n)

  21. Eigenschaften der Datenstruktur Lemma • Der Abstand zweier benachbarter Peers auf dem Ring ist • im Erwartungswert 2m/n, • < O((2m/n) log n) (mit hoher W‘keit) und • > 2m/nc(mit hoher W‘keit) für eine Konstante c>1 Beweis 1a) Die Summe aller Abstände ist 2m 1b) Betrachte Intervall auf dem Ring der Länge c ((2m/n) log n) • W‘keit, dass ein Peer dieses Intervall trifft: c (log n)/n • W‘keit, dass n Peers dieses Intervall nicht treffen: • Damit bleibt so ein Intervall nicht leer und der Abstand zweier Peers ist mit hoher W‘keit ≤ 2c (2m/n) log n) 1c) Die W‘keit, dass ein Peer ein Intervall der Größe 2m/nc trifft, ist n-c • Also treffen Peers mit hoher W‘keit nicht in die Nähe eines anderen Peers

  22. Eigenschaften der Datenstruktur (Beweis 2) Proved by Chernoff Lemma 2. In einem Intervall des Rings der Länge w 2m/n sind (mit hoher W‘keit) • O(log n + w log n) Peers, falls w=O(log n) • O(w) Peers, falls w=Ω(log n) Beweis Betrachte Intervall der Länge w 2m/n • Die W’keit, dass ein Peer hineinfällt ist p= w n • Erwartete Anzahl von Peers: p n = w 2a) 1.Fall: p n ≥ 1, c>1 2.Fall: p n < 1, c>1 2b) p n > k ln n, c > 1

  23. Balance in Chord Proved by Chernoff • n: Anzahl der Knoten im P2P-Netzwerk • k: Anzahl der Schlüssel  1 Theorem Elemente werden auf die Peers wie folgt verteilt: • Falls k=O(n log n):In jedem Knoten werden höchstens O(log n + k/n log2 n) Schlüssel gespeichert mit hoher W’keit • Falls k=(n log n):In jedem Knoten werden höchstens O(k/n log n) Schlüssel gespeichert mit hoher W’keit • Beweis • Übung • Tipp:

  24. Die Datenstruktur von Chord successor 5 predecessor 6 finger[0] 5 7 finger[1] 0 finger[2] 4 1 3 2 0 2 • Für jeden Knoten b: • successor: Nachfolger • predecessor: Vorgänger • Für i  {0,..,m-1} • Finger[i] := Der Knoten derdem Wert rV(b+2i) folgt • Für kleine i werden die Finger-Einträge immer gleich • Nur unterschiedliche Fingereinträge werden gespeichert

  25. Fingeranzahl Lemma • Der Ausgrad im CHORD-Netzwerk ist O(log n) mit hoher W‘keit • Der Eingrad im CHORD-Netzwerk ist O(log2 n) mit hoher W‘keit Beweis • Der minimale Abstand zweier Peers ist 2m/nc (mit hoher W‘keit) • Damit ist der Ausgrad beschränkt durch c log n (mit hoher W‘keit) • Der maximale Abstand zweier Peers ist O(log n 2m/n) • Jeder Peer, der mit einem seiner Finger auf diese Linie zeigt, erhöht den Eingrad des nachstehenden Peers. • Die Gesamtlänge der Streckenabschnitte, wo solche Peers liegen ist O(log2n 2m/n) • Damit ist w=O(log2n) b.finger[m] a.finger[m-1] a b x y

  26. Suchen in Chord Theorem Die Suche braucht mit hoher W’keit O(log n) Sprünge Suchalgorithmus für Element s: • Abbruch(b,s): • Knoten b,b’=b.succ gefunden, mit rK(s)  [rV(b),rV(b‘)| • Hauptroutine: Starte mit irgendeinem Knoten b while not Abbruch(b,s) do for i=m downto 0 do if rK(s)  [rV(b.finger[i]),rV(finger[i+1])] then b ← b.finger[i] fi od b.finger[m] b.finger[m-1] b c s x y

  27. Suchen in Chord Theorem Die Suche braucht mit hoher W’keit O(log n) Sprünge Beweis: • Mit jedem Sprung wird die Entfernung zum Ziel mindestens halbiert • Zu Beginn ist der Abstand höchstens 2m • Der Mindestabstand zweier benachbarter Peers ist 2m/nc mit hoher W’keit • Damit ist die Laufzeit beschränkt durch c log n b.finger[m] b.finger[m-1] b c s x y

  28. Einfügen von Peers Theorem O(log2 n) Nachrichten genügen mit pol. W’keit, um Peers in CHORD aufzunehmen Beweisidee • Zuerst wird Zielgebiet in O(log n) Schritten gesucht • Die ausgehenden Zeiger werden vom Vorgänger und Nachfolger übernommen und angepasst • Die Zeiger müssen jeweils um bis zu O(log n) Schritte entlang des Rings angepasst werden • Der Eingrad des neuen ist mit hoher W’keit O(log2 n) • Zu suchen kostet jeweils O(log n) • Diese sind jeweils in Gruppen von maximal O(log n) benachbart. • Damit fallen nur O(log n) Suchen á Kosten O(log n) an • Die Aktualisierung hat jeweils konstante Kosten

  29. Vielen DankEnde der 5. VorlesungNächste Vorlesung: Fr. 28.05.2004 9-11 UhrNächste Übung: 6. Übung Mo. 31.05.2004 10,12,16 Uhr (A,B,C) Heinz Nixdorf Institut & Institut für Informatik Universität Paderborn Fürstenallee 11 33102 Paderborn Tel.: 0 52 51/60 66 92 Fax: 0 52 51/62 64 82 E-Mail: schindell@upb.de http://www.upb.de/cs/schindel.html

More Related