Post on 05-Apr-2015
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
1Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Vorlesung Sommersemester 2003
Algorithmische Grundlagen des Internets
XIChristian Schindelhauer
schindel@upb.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
Fakultät für Elektrotechnik, Informatik und MathematikInstitut für Informatik
AG Theoretische InformatikAlgorithmen, Komplexitätstheorie, Paralleles Rechnen
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
2Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
ACHTUNGNeue Räume
Christian Schindelhauer•Raum:F2.315•Tel.: 60-6692
Klaus Volbert•Raum:F2.313•Tel.: 60-6722
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
3Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Webseitensuche
o PageRank [Brin&Page 98] Vergibt jeder Web-Seite einen absoluten Rang (rank)/Autorität Rang berücksichtigt Eingrad und Autorität des Eingrads Idee Seiten sind wichtig, wenn wichtige Seite auf sie zeigen
o HITS (HyperText Induced Topic Search) [Kleinberg 98] Ausgehend von einem Seitenstamm aus einer textuellen Suche Betracht Hubs (Hinweisseiten) und Autoritäten, Idee:
• Gute Hubs zeigen gute Autoritäten an• Gute Autoritäten werden von guten Hubs adressiert
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
4Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Kleinbergs HITS-Algoirhtmus(HyperText Induced Search)
o Anwendung: Textuelle Suche führt zu großen Anzahl von Treffern, z.B.
• Suche nach „windows“ Gewünschte Seite enthält nicht Suchwort
• z.B. http://www.porsche.com enthält weder „Sportwagen“ noch „Auto“
Suche nach allgemeinen Begriffen
o Idee des Algorithmus Autorität/Relevanz einer Web-Seite wird durch Links auf
Hinweisseiten (hubs) bezeugt• z.B. Eisenbahnfans sammeln Links von
Eisenbahngesellschaften Autoritäten weisen auf die Qualität von Hinweisseiten hin Ähnlicher Mechanismus wie PageRank-Algorithmus
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
5Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Basismengenauswahl
o Ideal: S ist relativ klein S enthält viele relevante
Web-Seiten S enthält die meisten
(oder viele) der wichtigstenAutoritäten
o Knotenheuristik Erweitere um Nachfolger
•da Hinweisseiten in R auf diese zeigen
Erweitere um max. d Vorgänger•um ausreichende Anzahl von Hinweisseiten zu erhalten
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
6Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Kantenmengenheuristik
o Neben Knoten werden Kanten eingeschränkt:
o Kantenmengenheuristik Lösche interne Links (innerhalb der selben Domain)
• wegen Navigationslinks• wegen Links auf Autor
Erlaube maximal m ( 4-8) Links aus gleicher Domain auf eine Seite
• wegen Werbelinks• wegen Links auf Softwaretool
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
7Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Gegenseitige Verstärkung
o Gewichtung für Autorität einer Seite i: xi
o Gewichtung für Hinweiseigenschaft einer Seite i: yi
o Autorität/Relevanz einer Web-Seite wird durch Links auf Hinweisseiten (hubs) bezeugt
o Autoritäten weisen auf die Qualität von Hinweisseiten hin
c1, c2 normieren x und y bezüglich der L2-Norm:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
8Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Der HITS-Algorithmus
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
9Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Matrixdarstellung
o Aus Adjazenzmatrix:
o Autoritäten:
o Hinweisseiten:
o Nach t Iterationen:
o D.h.
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
10Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Matrixdarstellung
o M = A AT ist symmetrische Matrix
o Für symmetrische Matrizen sind alle n Eigenwerte reell sind die n Eigenvektoren orthogonal
o Es existiert die Darstellung
o wobei für die Spaltenvektoren Si gilt
o Falls größter Eigenwert 1 > 2 konvergiert der HITS-Algorithmus
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
11Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
WWW-Lastbalancierung
o Für Surfen im Web typisch: Web-Server bieten Web-
Seiten an Web-Clients fordern Web-
Seiten an
o In der Regel sind diese Mengen disjunkt
o Eingehende Anforderungen belasten Web-Server hinsichtlich: Übertragungsbandbreite Rechenaufwand
(Zeit,Speicher)
www.google.com
www.upb.de
www.bundespraesident.de
HansHinz
Kunz
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
12Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Lastanforderungen
o Einige Web-Server haben immer hohe Lastanforderungen Z.B. Nachrichten-Sites,
Suchmaschinen, Web-verzeichnisse
Für permanente Anforderungen müssen Server entsprechen ausgelegt werden
o Andere leiden unter hohen Fluktuationen, z.B. Z.B. Web-Site des Tages,
NASA, Turniere Server-Erweiterung nicht
sinnvoll Bedienung der Anfragen aber
erwünscht
www.google.com
www.viadukt-altenbeken.de
Montag Dienstag
www.viadukt-altenbeken.de
Mittwoch
www.viadukt-altenbeken.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
13Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Lastbalancierung im WWW
o Andere leiden unter hohen Fluktuationen Server-Erweiterung nicht
sinnvoll Bedienung der Anfragen
aber erwünscht
o (Kommerzielle) Lösung Dienstleister bieten
Ausweich-(Cache) Server an Viele Anforderungen
werden auf diese Server verteilt
o Aber wie?
www.viadukt-altenbeken.de
Montag Dienstag
www.viadukt-altenbeken.de
Mittwoch
www.viadukt-altenbeken.de
www.viadukt-altenbeken.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
14Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Web-Caching
o Leighton, Lewin, et al. STOC 97 Consistent Hashing and Random
Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web
Passen bestehende Verfahren für dynamische Hash-Funktionen an WWW-Anforderungen an
o Leighton und Lewin (MIT) gründen Akamai 97
o Akaimai 2003: 550 Angestellte Ertrag 145 Mio. $ (2002) 15.000 Server in 60 Ländern
verbunden mit 1.100 lokalen Netzwerken
Web-Cache
www.altenbeken-viadukt.de
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
15Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Ausgangssituation
o Ohne Lastbalancierung: Jeder Browser (Web-Client) belegt
einen Web-Server für eine Web-Site
o Vorteil: Einfach
o Nachteil: Der Server muß immer für den Worst-
Case ausgelegt werden
Webseiten
Web-Server
Web-Clients
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
16Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Site Caching
o Ganze Web-Site wird auf verschiedene Web-Caches kopiert
o Browser fragt bei Web-Server nach Seite
o Web-Server leitet Anfrage auf Web-Cache um (redirect)
o Web-Cache liefert Web-Seite aus
o Vorteil: Gute Lastbalancierung für
Seitenverteilung
o Nachteil: Bottleneck: Redirect Großer Overhead durch
vollständige Web-Site-Replikationen
WebseitenWeb-Server
Web-Clients
Web-Cache
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
17Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Proxy Caching
o Jede Web-Seite wird auf einige (wenige) Web-Cache verteilt
o Nur Startanfrage erreicht Web-Server
o Links referenzieren auf Seiten im Web-Cache
o Dann surft der Web-Client nur noch auf den Web-Cache
o Vorteil: Kein Bottleneck
o Nachteil: Lastbalancierung nur implizit
möglich Hohe Anforderung an Caching-
Algorithmus
WebseitenWeb-Server
Web-Clients
Web-CacheLink
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
18Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Caching-Algorithmus
1. BalanceGleichmäßige Verteilung der Seiten
2. DynamikEffizientes Einfügen/Löschen von neuen Web-Cache-Servern
3. ViewsWeb-Clients „sehen“ unterschiedliche Menge von Web-Caches
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
19Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Ranged Hash-Funktionen
o Gegeben:
Elemente (Items) I, Anzahl: I = |I|
Caches (Buckets) B Views V ⊆ 2B
o Ranged Hash-Funktion:
Voraussetzung:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
20Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
1. Idee Hash-Funktion (I)
o Verfahren: Wähle Hash-Funktion, z.B. r(i) = a i + b
mod n• n: Anzahl Cache-Server
o Balance: Sehr gut!
o Dynamik Einfügen/Löschen von nur einem Cach-
Server Neue Hash-Funktion und vollständige
Neuzuweisung Hoher Aufwand!
9 4 2 7
35
0 1 2 3
3 i + 1 mod 4
9 4 2 7
35
0 1 2 3
2 i + 2 mod 3
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
21Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
1. Idee Hash-Funktion (II)
o Verfahren: Wähle Hash-Funktion,
z.B. r(i) = a i + b mod n• n: Anzahl Cache-
Server
o Views Verschiedene
Nummerierungen der Web-Cache notwendig
Anzahl der Duplikate proportional zu der Anzahl der Views
9 4 2 7
35
0 1 2 3
3 i + 1 mod 4
9
4 3
5
0
2
1 2
10View 1: 2i+2 mod 3View 2: 2i+2 mod 3
5
4
2
2
7
7
Ein View
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
22Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen
1. Monotonieo Seiten, die im umfassenderen View einem Cach zugewiesen
sind, werden nicht umorganisiert
View 1:
View 2:
Seiten
Seiten
Cache
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
23Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen2. Balance
Für jeden View V ist die Hash-Funktion fV(i) balanciert
View 1:
View 2:
Seiten
Seiten
Cache
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
24Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen3. Spread
Die Verbreitung σ(i) (spread) einer Seite i ist die Gesamtanzahl aller notwendigen Kopien (über alle Views)
View 1:
View 2:
View 3:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
25Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Anforderungen an Ranged Hash-Funktionen
4. Load
View 1:
View 2:
View 3:
Die Last λ(b) (load) eines Caches b ist die Gesamtanzahl aller notwendigen Kopien (über alle Views)
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
26Algorithm. Grundlagen des Internets14. Juli 2003
Christian Schindelhauer
Konsistentes Hashing
o Für jede Hash-Funktion existiert eine Worst-Case-Eingabe Daher betrachtet man grundsätzlich Familien von Hash-Funktionen Genauso definieren wir Familie von Ranged-Hash-Funktionen für geg. Views
und Caches
o C: Anzahl aller Caches B und Mindestanzahl Caches pro View ist C/t
o Sei ρ = V/C konstant und I= C (Anzahl Seiten = Anzahl Caches)
Theorem
Es gibt eine Familie von ranged-Hash-Funktionen F mit den folgenden Eigenschaften
1. Jede Funktion fF ist monoton
2. Balance: Für jeden View gilt
3. Spread: Für jede Seite i ist
4. Load: Für jeden Cache b ist