• Keine Ergebnisse gefunden

Forwarding und Routing

N/A
N/A
Protected

Academic year: 2022

Aktie "Forwarding und Routing"

Copied!
30
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Internet‐Routing

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 16

(2)

Forwarding und Routing

H3 H2

H1

H5

H4 H6 H7

R1

R3 R2

H7

1 2

Forwarding‐Tabelle

Adresse Interface MAC‐Adr.

Host H1 3 Adr(H1) Host H2 3 Adr(H2) Host H3 3 Adr(H3) Netz N2 1 Adr(R2) Netz N3 2 Adr(R3) 3

Woher bekommt man die Forwarding‐Tabelle?

Netz N1

Netz N2 Netz N3

(3)

Routing

Grundlagen der Rechnernetze ‐Internetworking 18

Wir betrachten zunächst Routing als Graph‐Problem.

Gegeben sei ein Graph mit gewichteten Kanten

(hier der Einfachheit halber ein ungerichteter Graph):

Finde die kürzesten Pfade zwischen den einzelnen Knoten.

B D

C

F

A E

12

1 3

3

1

1

4

4 7

Was wäre wohl „per draufgucken“ der kürzeste Pfad P von A nach F?

Was ist das Gesamtgewicht w(P) dieses Pfades?

SS 2012

(4)

Routing Algorithmen

Link‐State‐Routing Distanzvektor‐Routing

Von allen Nachbarinformation an alle (zentraler Routing‐Algorithmus) Globale Information an Nachbarn

(verteilter Routing‐Algorithmus)

R

R1 R2

Ziel Distanz

H1 5

H2 3

H3 7

H4 2

R

Ziel Distanz

H1 7

H2 4

H3 4

H4 1

(5)

Internet‐Routing

Distanzvektor‐Routing (aka. Bellman‐Ford)

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 20

(6)

Stetiger Austausch und  Aktualisierung dieser Tabellen 

(Routing‐Update)

Neue Tabelle von A

Tabelle von B Tabelle von C

B C

A

Grundidee

Initiale Distanzvektortabellen

A

C B

D E Ziel Next Dist

A A 1

B ‐‐ 0

C C 1

D D 1

E ?? 1

Ziel Next Dist

A A 1

B B 1

C ‐‐ 0

D D 1

E E 1

Ziel Next Dist

A ‐‐ 0

B B 1

C C 1

Initiale Tabelle von A Ziel Next Dist

A ‐‐ 0

B B 1

C C 1 Kantengewichte hier verein‐

(7)

Details zu Routing‐Updates

Generelle Regel für Knoten u:

1. Aktualisiere iteTabellenzeile (xi, yi, di), wenn für die von Knoten v empfangene  Tabellenzeile (xi, zi, ci) gilt: di > ci + 1

2. Die aktualisierte Tabellenzeile ist dann (xi, v, ci + 1)

(Erweiterung auf gewichtete Kanten offensichtlich: ersetze „+1“ mit Kantengewicht  für Kante uv)

u v

Ziel Next Dist

xi zi ci

Ziel Next Dist

xi vi di

xi v ci+1

Grundlagen der Rechnernetze ‐Internetworking

SS 2012 22

(8)

Wann versendet ein Knoten ein Routing‐Update?

Periodic‐Update: Tabellen werden regelmäßig an Nachbarn  geschickt

• Damit wissen die Nachbarknoten, dass es den Link und Knoten  noch gibt.

• Werden über einen bestimmten Zeitraum keine Updates mehr  empfangen, so wird der Link als ausgefallen interpretiert

Triggered‐Update: Wann immer ein Knoten seine Routing‐Tabelle  geändert hat

• Nach lokal festgestelltem Link‐Ausfall

• Nach Empfang eines Routing‐Updates von einem Nachbarn

• Das kann wiederum eine Änderung in den Nachbarknoten und  damit Routing‐Updates von den Nachbarn bewirken (usw.)

(9)

Forwarding anhand der Routing‐Tabellen

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 24

A

C B

D E

Ziel Next Dist

A ‐‐ 0

B B 1

C C 1

D B 2

E C 2

Ziel Next Dist

A A 1

B B 1

C ‐‐ 0

D D 1

E E 1

Randbemerkung

Routing‐Tabelle: speichert alles  was man für das Routing benötigt.

Forwarding‐Tabelle: speichert alles  was man für das Forwarding

benötigt

Kann ein und dieselbe Tabelle sein; 

muss es aber nicht.

(10)

Beispiel eines Link‐Ausfalls

B

D C

F A

E

G

Dst Next Hops

G F 2

Dst Next Hops

G G 1

Tabelleneinträge

bzgl. Knoten G: Dst Next Hops

G D 2

Stabilisiert sich das Netz immer in dieser Form?

(11)

Count‐to‐Infinity‐Problem

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 26

A B

C

A

B

C

D

Lösungsansatz 1: ignorieren. Am  Ende wird sowieso bis 1 hoch  gezählt.

Lösungsansatz 2: Split‐Horizon. 

Routing‐Updates nur zu Nachbarn,  die nicht selber der nächste Hop  sind.

Lösungsansatz 3: Split‐Horizon with Poison Reverse. Routing‐Updates zu  allen Nachbarn. Allerdings Routing‐

Update 1 zu denen, die selber der  nächste Hop sind.

Funktioniert das immer?

(12)

Internet‐Routing

Link‐State‐Routing

(13)

Link‐State‐Routing

Zweiter Schritt

Jeder Knoten hat globale Sicht und kann alle  kürzesten Pfade berechnen

R R Erster Schritt

Jeder Knoten teilt allen anderen seine  adjazenten Kanten mit (Flooding)

R U

V

X W Y

(R,U) (R,V) (R,W)

(R,X) (R,Y)

Grundlagen der Rechnernetze ‐Internetworking

SS 2012 28

(14)

Reliable‐Flooding

Jeder Knoten versendet Link‐State‐Pakete (LSP) mit folgender Info:

• ID des Knotens, der das LSP erzeugt hat

• Liste der direkten Nachbarn (inklusive Link‐Kosten)

• eine Sequenznummer

• Ein TTL‐Wert für das Paket Jedes LSP wird geflutet, d.h.:

• LSP‐Erzeuger inkrementiert eine lokale Sequenznummer und  versendet das LSP mit dieser Nummer

• Jeder Knoten, der ein „neueres“ (d.h. höhere Sequenznummer)  LSP empfängt, leitet dieses an alle Nachbarn (außer dem, von  dem das LSP empfangen wurde) weiter

• LSP mit älteren oder gleicher nummer werden ignoriert

• Des Weiteren werden LSPs ab bestimmtem TTL‐Wert ebenfalls  verworfen

(15)

Routenberechnung mittels Dijkstra‐Algorithmus

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 30

Es sei s der Startknoten, N die Menge aller Knoten und l(v,w) die  Kosten der Verbindung von v nach w. Wir definieren:

c(v) = aktuelle Kosten von v

m(v) = Markierung der schon behandelten Knoten

pre(v) = Vorgänger von v entlang der kürzesten Route nach s Dijkstra‐Algorithmus:

Für alle v in N-{s} setze c(v)=1 und m(v)=false c(s)=0 und m(s)=false

Solange noch unmarkierte Knoten existieren:

Finde unmarkierten Knoten v mit kleinstem Wert c(v) m(v) = true

Für jeden unmarkierten Nachbarknoten w:

Wenn c(w) > c(v) + l(v,w) dann pre(w) = v

c(w) = c(v) + l(v,w)

(16)

Beispiel an der Tafel

(17)

Internet‐Routing

Konkrete Realisierungen im Internet

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 32

(18)

Anwendung dieser Verfahren im Internet?

Skalierbarkeit

Kommunikationsoverhead Speicheroverhead

Langsame oder keine Konvergenz

Administrative Autonomie Freie Wahl von Routing‐Protokollen

Verbergen von Netzinterna

(19)

Autonomous‐Systems (AS)

3c 3a

3b

1c 1a

1d

1b

2a

2c

2b

AS1

AS2 AS3

H1

H2 Gateway‐Router

H2 in AS2

Intra‐AS‐Routing

Beispiel: Routing Information Protocol (RIP) Beispiel: Open Shortest Path First (OSPF)

Inter‐AS‐Routing Border Gateway Protocol (BGP)

Grundlagen der Rechnernetze ‐Internetworking

SS 2012 34

(20)

OSPF erlaubt zusätzliche Hierarchie in einem AS:

RIP und OSPF

Routing Information Protocol (RIP) = Distanzvektor‐Routing (ungewichtet) Open Shortest Path First (OSPF) = Link‐State‐Routing (gewichtet)

Area 1 Area 2

Area 3

Area‐Border‐

Router Backbone‐Router

Separates OSPF in Backbone und jeder Area

H1 H2 in Area 3

H2

Internal‐Router

(21)

BGP Grundlagen

3c

3a

3b 1c

1a 1d

1b

2a

2c

2b AS1

AS3 AS2

Ziel Pfad Next

x in AS1 AS1 3a‐1c y in AS2 AS1‐AS2 3a‐1c

z in AS3 ‐‐ ‐‐

Border Gateway Protocol (BGP) = Distanzvektor‐Routing (ungewichtet)

Aber: Distanzvektortabelle speichert komplette Pfade anstatt Distanzwert Aber: Distanzvektortabelle muss zusätzlich den ersten Hop speichern

Aber: Distanzvektortabellen werden nicht „unreflektiert“ ausgetauscht Aber: Zwei AS können durch mehrere Kanten verbunden sein

Grundlagen der Rechnernetze ‐Internetworking

SS 2012 36

(22)

BGP Policy

Kunden‐AS Provider‐AS W

B

X

Y

Beispielregeln:

1. Kunden‐AS darf nur Kommunikationsendpunkt sein 2. B möchte keinen Verkehr zwischen A und C tragen 3. A will niemals Verkehr über B leiten

Ziel Pfad

z in Y X‐C‐Y

Ziel Pfad

z in W B‐A‐W

Ziel Pfad

z in X A‐B‐X or A‐C‐X 

A

C

(23)

Limitierter Adressbereich

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 38

(24)

Problemstellung

Mit den Standard‐IP‐Adressen lassen sich maximal 232 = 4.294.967.296 » 4,3 Mrd.

Hosts adressieren.

Das ist schon alleine ein Problem weltweit alle gewöhnlichen Hosts  mit einer eindeutigen Adresse zu versehen.

Darüber hinaus werden in Zukunft nicht nur gewöhnliche PCs am  Internet angeschlossen sein, sondern beispielsweise auch:

• Mobiltelefone

• Fernseher

• und viele andere Geräte des täglichen Lebens

(25)

Ein Patch auf die Schnelle

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 40

Network‐Adress‐Translation (NAT)

• Lokalen Hosts werden temporär globale Adressen zugeordnet.

• In ausgehenden IP‐Paketen wird von der NAT‐Box die lokale  Adresse mit der zugehörenden globalen Adresse ersetzt.

• In ankommenden IP‐Paketen wird von der NAT‐Box die globale  Adresse mit der zugehörenden lokalen ersetzt.

Lokales Netz NAT‐Box

Verfügbare eindeutige globale Adressen:

171.69.210.246, ..., 171.69.210.252 Lokal eindeutige

Adresse:

10.0.1.5 H

IP‐Paket:

Quelle: 10.0.1.5

IP‐Paket:

Quelle: 171.69.210.246 Ins Internet

IP‐Paket:

Ziel: 10.0.1.5

IP‐Paket:

Ziel: 171.69.210.246

(26)

Das Hauptthema von IPv6

Bisher haben wir IP Version 4 (kurz IPv4) betrachtet.

Es gibt Bemühungen das heutige Internet mit einer IP Version 6  (kurz IPv6) zu verbessern.

Ein wichtiger Punkt bei IPv6: stelle genügend Adressen zu Verfügung IPv6 definiert 128‐Bit‐Adressen. Damit können etwa

3,4 ¢ 1038

Hosts adressiert werden oder anders gesagt

655 570 793 348 866 943 898 599

Adressen pro Quadratmeter der Erde vergeben werden.

(27)

Wechsel von IPv4 nach IPv6?

SS 2012 Grundlagen der Rechnernetze ‐Internetworking 42

Aufgrund der Größe und dezentralen Organisation des Internets ist  ein einfacher Wechsel von v4 nach v6 nicht durchführbar.

Möglichkeit: fließender Wechsel, der über Jahre hinweg paralleles  betreiben von IPv4 und IPv6 ermöglicht.

Mechanismen:

• Dual‐Stack‐Operation

• Tunneling

(28)

Zusammenfassung und Literatur

(29)

Zusammenfassung

• Das Thema von Internetworking: wie konstruiert man ein  großes Netz durch Verbinden von vielen kleinen Netzen

• Hauptproblem: Heterogenität und Skalierbarkeit

• Lösung IP‐Protokoll: Best‐Effort‐Service, der von allen 

aktuellen und möglichen zukünftigen Netztypen unterstützt  werden kann

• Hauptaufgabe: Routing

– Interdomain‐Routing – Intradomain‐Routing

• Tradeoff zwischen Skalierbarkeit und Optimalität: 

skalierbarkeit durch hierarchische Organisation des Netzes  auf Kosten von optimalen Pfaden

• Aktuelle Probleme:

– Adressverbrauch!

– (Routingtabellengrößen)

Grundlagen der Rechnernetze ‐Internetworking 44

SS 2012

(30)

Literatur

[PetersonDavie2007] Larry L. Peterson and Bruce S. Davie, 

„Computer Networks: A Systems Approach“, Edition 4,  2007.

4.1.2 Service Model

4.1.6 Host Configuration (DHCP) 4.1.7 Error Reporting (ICMP)

4.1.8 Virtual Networks and Tunnels 4.2.1 Network as a Graph

4.2.2 Distance Vector (RIP) 4.2.3 Link State (OSPF)

4.3.3 Interdomain Routing (BGP) 4.3.4 Routing Areas

Referenzen

ÄHNLICHE DOKUMENTE

as1 Aufstellen von Hinweisschildern zum Schutz des Biber 1337 S. 149 as2 Entwicklung und Umsetzung eines für die Gelbbauchunke. geeigneten Vernetzungsprojektes in der Tauberaue

as1 Aufstellen von Hinweisschildern zum Schutz des Biber 1337 S. 149 as2 Entwicklung und Umsetzung eines für die Gelbbauchunke. geeigneten Vernetzungsprojektes in der Tauberaue

as1 Aufstellen von Hinweisschildern zum Schutz des Biber 1337 S. 149 as2 Entwicklung und Umsetzung eines für die Gelbbauchunke. geeigneten Vernetzungsprojektes in der Tauberaue

as1 Aufstellen von Hinweisschildern zum Schutz des Biber 1337 S. 149 as2 Entwicklung und Umsetzung eines für die Gelbbauchunke. geeigneten Vernetzungsprojektes in der Tauberaue

as1 Aufstellen von Hinweisschildern zum Schutz des Biber 1337 S. 149 as2 Entwicklung und Umsetzung eines für die Gelbbauchunke. geeigneten Vernetzungsprojektes in der Tauberaue

Sie werden aus kartografischen Gründen (Überlagerungen) nicht dargestellt und daher nur im Text

Wenn der Magnet nicht angesteuert wird (D0=0) oder die Hilfsenergie abgeschaltet wird, wird die Zuhaltung entsperrt und die Schutzeinrichtung kann unmittelbar geöffnet werden..

3) Manometer separat bestellen, Geeignet für den Einsatz in den Ex-Zonen 1, 2, 21, 22., Sichere Rückentlüftung bei Abfall (Wegnahme) des Vordrucks.. Der Drucktaupunkt muss