HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen...
-
Upload
lutz-kazimir -
Category
Documents
-
view
104 -
download
1
Transcript of HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen...
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
1Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Vorlesung Sommersemester 2003
Algorithmische Grundlagen des Internets
IIChristian Schindelhauer
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 Internets5. Mai 2003
Christian Schindelhauer
Motivation und Ziel
o Algorithmen und Probleme des Internets Die Struktur des Internets ist historisch gewachsen Von kleinen Anfängen zum globalen umfassenden
Rechnernetzerk Das Internet vernetzt viele heterogene lokale Netzwerke
(LAN) Ständig verändernde Nutzung Unterschiedliche Absichten der Nutzer Interessante algorithmische Problemstellungen und
entsprechend originelle Lösungen.
Ziel dieser Veranstaltung Theoretische Hintergründe hinter beispielhaften
Problemstellungen und algorithmischen Lösungen vorstellen und diskutieren.
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
3Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Inhalte
1. Kurzübersicht TCP/IP
2. IP: Der Kampf gegen DoS-Angriffe (denial of service)
3. TCP: Verteilte faire und effiziente Durchsatzoptimierung
4. Der Webgraph:• Struktur und Aufbau • Suchalgorithmen für das Internet
5. P2P (Peer to Peer-Netzwerke): Effizientes File-sharing
6. Web-Caching: Surfen ohne Engpässe
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
4Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Eine Kurzeinführung von TCP/IPDas Internet-Schichtenmodell
Anwendung
Transport
Netzwerk
Link
TCP (transmission control protocol)UDP (user datagramm protocol)
IP (internet protocol)+ ICMP (internet control message protocol)+ IGMP (internet group management protocol)
LAN (z.B. Ethernet, Token Ring etc.)
z.B. Telnet, FTP, HTTP, Email
Das Internet (von worldwide inter-networking) • ist das weltweite, offene WAN (wide area
network) •verbindet LANs (local area networks)• ist systemunabhängig
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
5Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Netzwerkschicht (II)(network layer)
o IP ist ein Datagrammauslieferungsdienst Soweit möglich direkte Übergabe von Sender zu Empfänger Sonst: Hop-Routing über Router
o IP ist unzuverlässig Fehlerbehandlung:
• Falls Problem beim Routing: - Lösche Datagramm- Schicke Fehlermeldung durch ICMP an Absender
• Falls Problem beim Routing von ICMP-Fehlermeldung- Lösche Fehlermeldungspaket
Keine Redundanz vorgesehen TTL-Feld begrenzt Anzahl der Hops eines Datagramms
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
6Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Routing im Internet durch IP
o Routing-Prinzip für Datagramm im Router: Falls Ziel = eigene ID, dann Übergabe an Transportschicht Ansonsten falls Ziel-Netz = lokales Netz, dann verschicke
Datagramm direkt an Zielrechner Ansonsten suche gemäß Ziel-IP-Adresse den nächsten
Router aus lokaler Routingtabelle und sende Datagramm zum nächsten Router
o Unterhalt von Routingtabellen manuell (LAN) oder automatisch durch
• RIP (Routing Information Protocol), • OSPF (Open Shortest Path First)• ...
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
7Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Beispiel zum Zusammenspiel
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
8Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Netzwerkschicht (I)(network layer)
o IP (Internet Protocol) + Hilfsprotokolle ICMP (Internet Control Management Protocol) IGMP (Internet Group Management Protocol) Ermöglicht Verbund von (lokalen) Netzwerken
IP ist ein unzuverlässiger verbindungsloser Datagrammauslieferungsdienst
o Datagramm besteht aus Anwendungsdaten und Header:• Absender, Zieladresse• TOS-Feld (type of service)• TTL-Feld (time to live)• ... (z.B. Paketlänge, Checksum für Header)
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
9Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
IP versus VC
• Internet-Router arbeiten als autonome Systeme (AS)
– Treffen Wegewahl unabhängig
– Unterhalten Routingtabellen mit unterschiedlichen Algorithmen
• IP implementiert kein Virtual Circuit (VC)
– Virtual circuit routing etabliert Route zwischen Quelle und Ziel
– Eine Route in VC definiert zustand des VC
• IP-Routing ist zustandslos und verbindungslos
Eigenschaft IP VC
Verbindungs-aufbau
Ja Nein
Zustands-information
keineJa, für etabl.
Routen
Wegewahl der Pakete einer Verbindung
Verschiedene Wege möglich
Route ist fest
Routerausfall
kein Effekt, nur Pakete auf
ausgefallenen Router verloren
Alle Routen durch defekten
Router sind verloren
Congestion control
(Staukontrolle)
schwierig (durch TCP)
Einfach
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
10Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Dienstverweigerungsangriffe(Denial of Service DoS)
Denial of Service (DoS)-Angriffe verbrauchen die Ressourcen eines Rechners oder Netzwerks, um deren
Verfügbarkeit zu verringern oder auszuschalten.
Angriffsziel Rechner– z.B. SYN-Angriffe:
• Angriffsziel Rechner im Internet
• Eine Reihe von „half-open“ TCP-Verbindungen wird aktiviert
• Ununterscheidbar von regulären Anfragen
• Der TCP-Server muss SYN/ACK-Pakete senden und auf Reaktion warten
– Rechnerangriffe können rel. gut lokal abgewehrt werden
Angriffsziel Netzwerk– z.B. SMurf-Angriff oder
distributed DoS (DDoS)– Angriff gegen Internet-
Service Provider (ISP)– Großer Datenstrom wird
auf Netzwerk gerichtet– Mit gleicher Häufigkeit
werden gültige wie DoS-Pakete wegen Überlastung durch IP gelöscht
– Netzwerkangriffe sind schwierig zu bekämpfen
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
11Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
TCP-Verbindungsaufbau
o In der Regel Client-Server-Verbindungen Dann Aufbau mit drei TCP-Pakete (=Segmente) Mit ersten SYN-Segment auch Übermittlung der MSS (maximum segment size)
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
12Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
IP ist DoS-anfällig
Wie kann man die Quelle(n) einer eingehenden Datagrammflut mit gefälschten Quell-IP-Adressen
bestimmen?
• DoS-Angriffe auf IP-Ebene können meist nicht zurückverfolgt werden
– Der Angreifer erzeugt Datagramme mit falscher Quell-IP-Adresse
– Dem Empfänger der Datagramme steht die Routeninformation nicht zur Verfügung
– Es sei denn alle Router kooperieren bei der Suche, während einer Attacke
• DoS-Datagramme können nicht von legitimen Datatgrammen unterschieden werden
– Nur implizit und aus dem Kontext.
Beispiele:• Universitätsrechner werden
oft benutzt, um DoS-Attacken mit korrekter Quellinformation zu führen.
• 11. September 2001 – Sämtliche Nachrichtensites brachen unter der legitimer Last zusammen
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
13Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Quellbestimmung einer DoS-Attacke
• Motivation:– Im einfachsten Fall: Quelle = Angreifer– Abschalten instrumentalisierter Rechner beendet (vorerst) den
Angriff
• Problem Reflektorangriff– Angreifer schickt Datagramme mit Opfer-IP-Adresse als falscher
Quellinformation an unbeteiligte Netzteilnehmer (Rechner oder Drucker
– Die unbeteiligten Netzteilnehmer beantwortet Request an mutmaßliche Quelle
– Das Opfer erhält die DoS-Attacke von diesen instrumentalisierten Netzteilnehmern
• Gegenmaßnahme– Vom instrumentalisierten Netzteilnehmer aus, muss der
Angreifer gefunden werden
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
14Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Lösungen gegen DoS-Attacken
Ingress filtering [Ferguson, Senie ’98]
– Router blockieren Pakete mit fehlerhafter Quellinformation
– Sinnvoll an Schnittstellen von ISP
– Effektiv nur bei universellen Einsatz
– Wird aber nicht bei der Mehrheit der ISP eingesetzt
Link testing by input debugging
– Routenrückverfolgung stromaufwärts
– Opfer beschreibt allgemeines Merkmal der DoS-Datagramme (attack signature)
– Opfer kommuniziert diese Merkmal an Netzwerkbetreiber der eingehenden Datagramme
– Dieser wiederholt dies bis zur Quelle
– Einige ISP haben dieses Verfahren automatisiert [Stone ’00]
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
15Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Quellbestimmung einer DoS-Attacke
Link testing durch controlled flooding [Burch, Cheswick ’99]
– Opfer verfügt über eine aktuelle Routingkarte– Während eines DoS-Angriffs konstruiert das Opfer die Angriffsrouten
stromaufwärts• indem es alle Möglichkeiten der letzten unbekannten Station selber durch
einen DoS-Angriff belegt• Läßt die Datenmenge kurzfristig nach, ist eine Station gefunden und der
Vorgang wird per Tiefensuche fortgesetzt– Nachteile
• Opfer wird selber zum Angreifer• Kaum geeignet für verteilte DoS-Angriffe (DDoS)• Kann leicht von einem Angreifer überlistet werden
– durch eingebaute Fluktuationen
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
16Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Quellbestimmung einer DoS-Attacke
ICMP Traceback– Mit geringer W’keit (z.B. 1/20.000) wird in einem
Router ein ICMP-traceback-datagramm an den Zielknoten geschickt
– Der Zielknoten kann dann den Weg rekonstruieren– Nachteile: ICMP-Pakete könnten bei Pufferüberlauf
vor IP-datagrammen gelöscht werden
Marking [Savage et al. ’00]– In ungenutzte Felder des IP-
Headers schreibt jeder Router seine Adresse mit gewisser W’keit
– Nachteil:• DDoS-Pfade nur schwer
rekonstruierbar
Logging– Jeder Router zeichnet
alle IP-Header auf– Durch Data-Mining-
Techniken kann der Angreifer bestimmt werden
– Aber enormer Aufwand
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
17Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
Quellbestimmung einer DoS-Attacke
Verwaltungs-aufwand
Netzwerklast Router-aufwand
Post mortem fähig
Präventiv/ reaktiv
Ingress filtering
moderat niedrig moderat Nein präventiv
Link testing by input
debugginghoch niedrig hoch schlecht reaktiv
Link testing by flooding
niedrig hoch niedrig schlecht reaktiv
Logging hoch niedrig hoch ausgezeichnet reaktiv
ICMP Traceback
niedrig niedrig niedrig ausgezeichnet reaktiv
Markieren niedrig niedrig niedrig ausgezeichnet reaktiv
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
18Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
ICMP Traceback(Analyse I)
Theorem1. Wird mit Wahrscheinlichkeit p ein ICMP-Paket erzeugt, dann sind erwartet ((ln d) + O(1))/p DoS-Pakete
ausreichend zur Bestimmung eines DoS Pfades aus d Routern.2. Um mit Wahrscheinlichkeit 1 ‒ ε den Pfad zu bestimmen genügen ln(d)/p ‒ ln(ε)/p DoS Pakete.
BeweisSei t die Anzahl der DoS-Pakete. Bezeichne Xi,t die Zufallsvariable die Anzahl der Pakete, die Router i nach t DoS-Paketen erzeugt. Dann ist die Wahrscheinlichkeit P[Xi,t = 0], dass Router i kein ICMP-Paket erzeugt:
Lemma: Für alle n>1 gilt:
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
19Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
ICMP Traceback(Analyse II)
• Sei t die Anzahl der DoS-Pakete• Bezeichne Xi,t die Zufallsvariable für die Anzahl der Pakete, die
Router i nach t DoS-Paketen erzeugt.
• Die Wahrscheinlichkeit, dass einer der d Router kein Paket schickt, ist
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
20Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
ICMP Traceback(Analyse III)
2. Fall: Die Wahrscheinlichkeit, dass einer der d Router kein Paket schickt, soll kleiner als sein.
Damit ist
1. Fall: Sei Y die Zufallsvariable, die beschreibt, wieviele Runden notwendig sind, bis jeder der d Router ein Paket verschickt hat
Es gilt
HEINZ NIXDORF INSTITUTUniversität Paderborn
EIM ‒ Institut für Informatik
21Algorithm. Grundlagen des Internets5. Mai 2003
Christian Schindelhauer
ICMP Traceback(Analyse III)
1. Fall: Sei Y die Zufallsvariable, die beschreibt, wieviele Runden notwendig sind, bis jeder der d Router ein Paket verschickt hat
Es gilt
Der Erwartungswert von Y ist dann