Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für...

32
Lehrstuhl für Kommunikationssysteme - Syst eme II 1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät Universität Freiburg 2009

Transcript of Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für...

Page 1: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 1

Systeme II – 6te Vorlesung

Lehrstuhl für KommunikationssystemeInstitut für Informatik / Technische Fakultät

Universität Freiburg2009

Page 2: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 2

Letzte Vorlesung

‣ Dynamisches IP-Routing• Dezentraler Algorithmus,

Distance Vector- Arbeitet lokal in jedem Router- Verbreitet lokale Information im

Netzwerk

‣ Eigenschaften: Gute Nachrichten verbreiten sich schnell

Neue Verbindung wird schnell veröffentlicht

Schlechte Nachrichten verbreiten sich langsam

Verbindung fällt aus, Nachbarn erhöhen wechselseitig ihre Entfernung -> “Count to Infinity”-Problem

Page 3: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 3

Letzte Vorlesung

‣ Versuche zur Lösung des Count-to-Infinity-Problems

• “Split-Horizon”

• “Poison-Reverse”

• Bedingt erfolgreich

‣ Implementierung von Distance Vector mit einfacher Hop-Count-Metrik RIP (II)

• Regelmäßige Updates/Keep-Alive per Advertisment-Paketen (UDP, ziemlich unsicher)

• Falls keine Updates empfangen, Ungültig-Erklären von Routen nach gewisser Zeit

Page 4: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 4

Internet Protocol – zentraler Ansatz

‣ Dezentraler Ansatz in der letzten Vorlesung• Jeder Router verschafft sich eigenes Bild des Netzes• Tabellen werden anhand dieser Informationen aktualisiert• Einige Nachteile, die innerhalb des Ansatzes nicht lösbar

‣ Alternative: Zentraler Algorithmus, z.B. Link State- Einer/jeder kennt alle Information, muss diese erfahren

‣ Wieder zentrales Problem:

• Optimale Bestimmung der Weglängen zwischen einzelnen Knoten im Netz

Page 5: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 5

Das Kürzeste-Wege-Problem

Page 6: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 6

Kürzestes Wege Routing

‣ “Shortest Path” - oft eingesetztes Routing-Prinzip, da einfach zu verstehen und umzusetzen

• Idee: Generieren eines Graphen des (Teil-)Netzes, wobei jeder Knoten einen Router und jeder “Verbindungsstrich” einen Link repräsentiert

• Zur Ermittlung einer Route zwischen zwei gegebenen Knoten muss der Algorithmus nur den kürzesten Weg im Graphen bestimmen

• Dabei spielt jedoch die Metrik für die Bestimmung des kürzesten Weges eine Rolle

- Zahl der Hops (Router-Durchgänge)

- Physikalische Entfernung, Bandbreite, Verzögerung, ...

- (Finanz.) Kosten, durchschnittliche Warteschlangenlänge, ...

Page 7: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 7

Kürzestes Wege Routing

‣ Konvention: Fettgedruckte Zahlen stehen für Knoten, die kleineren normal gesetzten für die abstrakten Kosten eines Teilwegs

• Das impliziert Unterschiede: So hat die Hop-Count-Metrik identische Kosten für 1-2-3 und 1-2-5

• “Geografisch” gesehen ist aber 1-2-5 deutlich kürzer (wenn man von korrekter Skalierung ausgeht)

Page 8: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 8

Kürzestes Wege Routing

‣ Alternative Metriken können bspw. durch regelmäßige Messungen bestimmt werden

‣ Metrik-Kombinationen möglich

‣ Lediglich geeignete Abbildung auf “Pfadkosten”-Wert zur Verwendung in Algorithmus notwendig

‣ Ein zentraler Algorithmus zur Bestimmung des kürzesten Pfads ist Dijkstra's:

• Jeder Knoten wird durch ein Tupel aus Entfernung von der Quelle und dem vorherigen Knoten bezeichnet, initial ist dieses Label leer

• Während der Algorithmus voranschreitet, können sich Label ändern, um bessere Wege zu reflektieren

Page 9: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 9

Kürzestes Wege Routing

‣ Dijkstra's Algorithmus:• Das Beispiel sucht den kürzesten Weg von Punkt 1 (links) zu Punkt

4 (rechts)

• Man interpretiere die Wegelängen beispielsweise geografisch

• Gestartet wird in 1, der kürzeste Weg ist offensichtlich der zu Punkt 2, der entsprechend markiert wird

Page 10: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 10

Kürzestes Wege Routing

‣ Die beiden Nachbarn von 1 (2 und 7) wurden betrachtet und 2 ausgewählt, das wird entsprechend wiederholt

• Bisherige Pfadlänge wird mit berücksichtigt (aufaddiert)

• Die betroffenen Knoten werden entsprechend markiert, hier die Knoten 3 und 5

• Knoten werden bei Bedarf neu beschriftet, wenn sich bessere (kürzere Pfade) ergeben

Page 11: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 11

Kürzestes Wege Routing

‣ Weitere Knoten werden markiert (6)

‣ Knoten können mehrfach besucht werden (z.B. 7)

‣ Im Schritt von Knoten 5 muss der Knoten 7 neu beschriftet werden (6,1) -> (5,5)

Page 12: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 12

Kürzestes Wege Routing

‣ Der Weg via 2, 3, 5 ist um 1 kürzer als der direkte von Knoten 1

‣ Nächste Schritt zeigt, dass der Weg via 7 zu Knoten 8 länger ausfällt als via 5 über 6 zu Knoten 8

‣ Nun sind die meisten Knoten beschriftet ...

Page 13: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 13

Kürzestes Wege Routing

‣ Der letzte Schritt zeigt, dass Knoten 8 mit (9,7) -> (8,6) umbeschriftet wurde

‣ Es gibt eine bessere Route zu Knoten 8• 1 – 2 – 5 – 7 – 8 (4 Hops mit Pfadkosten von 9)

• 1 – 2 – 5 – 6 – 8 (4 Hops mit Pfadkosten von 8)

Page 14: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 14

Kürzestes Wege Routing

‣ Zur Ermittlung des vollen Pfads startet man vom Ziel und arbeitet sich rückwärts anhand der Label (zweiter Eintrag) vor

• Am Ende kommt ein Pfad 1 – 2 – 5 – 6 – 8 – 4 heraus

• Achtung: Die ermittelte Route ist optimal in “Pfadkosten” und nicht in Hops

Page 15: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 15

Kürzestes Wege Routing

‣ Dijkstra's kürzester Weg• Der einfache Hop-Count würde eine Route von 1 – 2 – 3 – 4

bevorzugen (Pfadkosten von 12 sind deutlich höher) oder 1 – 7 – 8 – 4 (selbe Pfadkosten)

• Wäre damit 2 Einheiten höher als die vorher bestimmte Route

Page 16: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

16

Kürzeste Wege mit Edsger Wybe Dijkstra

Dijkstras Kürzeste-Wege-Algorithmus kann mit Laufzeit Θ(|E| + |V| log |V|) implementiert werden

Page 17: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

17

Link-State Protocol

Link State Router • tauschen Information mittels Link State Packets

(LSP) aus• Jeder verwendet einen eigenen Kürzeste-Wege-

Algorithmus zu Anpassung der Routing-Tabelle LSP enthält

• ID des LSP erzeugenden Knotens• Kosten dieses Knotens zu jedem direkten

Nachbarn• Sequenznr. (SEQNO)• TTL-Feld für dieses Feld (time to live)

Page 18: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

18

Systeme IISommer 2008

Link-State Protocol

Verlässliches Fluten (Reliable Flooding)• Die aktuellen LSP jedes Knoten werden

gespeichert• Weiterleitung der LSP zu allen Nachbarn

- bis auf den Knoten der diese ausgeliefert hat• Periodisches Erzeugen neuer LSPs

- mit steigender SEQNOs• Verringern der TTL bei jedem Weiterleiten

Page 19: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

19

Bellman-Ford

Bei negativen Kantengewichten versagt Dijkstras Algorithmus

Bellman-Ford• löst dies in Laufzeit O(|V| |E|)

Page 20: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

20

Systeme IISommer 2008

Die Grenzen des flachen Routing

Link State Routing • benötigt O(g n) Einträge für n Router mit maximalen

Grad g• Jeder Knoten muss an jeden anderen seine

Informationen senden Distance Vector

• benötigt O(g n) Einträge• kann Schleifen einrichten• Konvergenzzeit steigt mit Netzwerkgröße

Im Internet gibt es mehr als 106 Router• damit sind diese so genannten flachen Verfahren

nicht einsetzbar Lösung:

• Hierarchisches Routing

Page 21: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

21

Systeme IISommer 2008

AS, Intra-AS und Inter-AS

Autonomous System (AS)• liefert ein zwei Schichten-Modell des

Routing im Internet• Beispiele für AS:

- uni-freiburg.de Intra-AS-Routing (Interior

Gateway Protocol)• ist Routing innerhalb der AS• z.B. RIP, OSPF, IGRP, ...

Inter-AS-Routing (Exterior Gateway Protocol)• Übergabepunkte sind Gateways• ist vollkommen dezentrales Routing• Jeder kann seine Optimierungskriterien

vorgeben• z.B. EGP (früher), BGP

Page 22: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

22

Systeme IISommer 2008

Typen autonomer Systeme Stub-AS

• Nur eine Verbindung zu anderen AS Multihomed AS

• Verbindungen zu anderen ASen• weigert sich aber Verkehr für andere zu befördern

Transit AS• Mehrere Verbindungen• Leitet fremde Nachrichten durch (z.B. ISP)

Backbone service provider 2

Backbone service provider 1

ConsumerISP 1

ConsumerISP 2

Largecompany

Smallcompany 1

Smallcompany 2

Peering point

22

Page 23: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

23

Systeme IISommer 2008

Intra-AS OSPF (Open Shortest Path First)

“open” = öffentlich verfügbar Link-State-Algorithmus

• LS Paket-Verbreitung

• Topologie wird in jedem Knoten abgebildet

• Routenberechnung mit Dijkstras Algorithmus OSPF-Advertisment

• per TCP, erhöht Sicherheit (security)

• werden in die gesamte AS geflutet

• Mehrere Wege gleicher Kosten möglich

Page 24: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

24

Intra-AS: Hierarchisches OSPF

Für große Netzwerke zwei Ebenen:

• Lokales Gebiet und Rückgrat (backbone)- Lokal: Link-state advertisement- Jeder Knoten berechnet nur Richtung zu den

Netzen in anderen lokalen Gebieten

Page 25: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

25

Intra-AS: Hierarchisches OSPF

Local Area Border Router:

• Fassen die Distanzen in das eigene lokale Gebiet zusammen

• Bieten diese den anderen Area Border Routern an (per Advertisement)

Backbone Routers• verwenden OSPF beschränkt auf das Rückgrat

(backbone) Boundary Routers:

• verbinden zu anderen AS

Page 26: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

26

Systeme IISommer 2008

Intra-AS: IGRP (Interior Gateway Routing Protocol)

CISCO-Protokoll, Nachfolger von RIP (1980er) Distance-Vector-Protokoll, wie RIP

• Hold time

• Split Horizon

• Poison Reverse Verschiedene Kostenmetriken

• Delay, Bandwidth, Reliability, Load etc. Verwendet TCP für den Austausch von Routing

Updates

Page 27: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

27

Inter-AS-Routing

Inter-AS-Routing ist schwierig...

• Organisationen können Durchleitung von Nachrichten verweigern

• Politische Anforderungen

- Weiterleitung durch andere Länder?

- Politische Systeme, verschiedene Modelle des Internet-Betriebs

Page 28: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

28

Inter-AS-Routing

Inter-AS-Routing ist schwierig...

• Routing-Metriken der verschiedenen autonomen Systeme sind oftmals nicht vergleichbar

- Wegeoptimierung unmöglich!

- Inter-AS-Routing versucht wenigstens Erreichbarkeit der Knoten zu ermöglichen

• Größe: momentan müssen Inter-Domain-Router mehr als 140.000 Netzwerke kennen

Page 29: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

29

Inter-AS: BGPv4

‣ BGP – Border Gateway Protocol‣ Ist faktisch der Standard‣ Path-Vector-Protocol

• ähnlich wie Distance Vector Protocol- es werden aber ganze Pfade zum Ziel

gespeichert• jeder Border Gateway teilt all seinen Nachbarn

(peers) den gesamten Pfad (Folge von ASen) zum Ziel mit (advertisement) (per TCP)

Page 30: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

30

Inter-AS: BGPv4

‣ Falls Gateway X den Pfad zum Peer-Gateway W sendet• dann kann W den Pfad wählen oder auch nicht• Optimierungskriterien:

- Kosten, Politik, etc.• Falls W den Pfad von X wählt, dann publiziert er

- Path(W,Z) = (W, Path (X,Z))‣ Anmerkung

• X kann den eingehenden Verkehr kontrollieren durch Senden von Advertisements

• Sehr kompliziertes Protokoll

Page 31: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

31

Systeme IISommer 2008

BGP-Routing Tabellengröße1990-2002

http://www.mcvax.org/~jhma/routing/bgp-hist.html

Page 32: Lehrstuhl für Kommunikationssysteme - Systeme II1 Systeme II – 6te Vorlesung Lehrstuhl für Kommunikationssysteme Institut für Informatik / Technische Fakultät.

Lehrstuhl für Kommunikationssysteme - Systeme II 32

Ende der sechsten VorlesungEnde der sechsten Vorlesung

Vorerst Abschluss von IP als Protokoll der Vermittlungsschicht (OSI Layer 3) – wird in späteren Vorlesungen nochmal theoretisch kurz aufgenommen ...

Nun Schichtenmodell von “oben” ... Nächste Vorlesung am Mittag an diesem Ort, gleiche Zeit:

Neuer Themenbereich – Ausgewählte Protokolle der Applikationsschicht (Start mit DNS, dann WWW, Email)

An theoretischen Übungszettel #2 denken, neuer Übungszettel am Mittwoch

Alle relevanten Informationen auf der Webseite zur Vorlesung: http://www.ks.uni-freiburg.de/php_veranstaltungsdetail.php?id=28

Vorbereitung: Lesen der entsprechenden Kapitel zur Applikationsschicht in der angegebenen Literatur!