R33NET BLOG Rotating Header Image

Routing

Routing

Eine Route ist eine Information, die einem Gerät sagt (Router), wie es ein Paket in ein bestimmtes
Ziel – Sub netz senden kann. Generell hat das Internet Protokoll die Aufgabe, die Datenübertragung zwischen Netzwerken sicherzustellen. Der Sender eines Datenpakets kennt dabei zwar die Zieladresse, nicht aber den Weg dorthin. Jede Station auf dem Weg zum Empfänger muss eine Entscheidung über die Wahl des weiteren Weges fällen. Dieser Vorgang wird als Routing bezeichnet. Im Netzwerk wird das Routing auf der IP-Schicht durchgeführt. Im ISO/OSI-Modell ist Routing eine der wesentlichen Aufgaben der dritten Schicht.
Frames, die der Router empfängt werden „ausgepackt“, so dass ein Packet übrig bleibt. Der Router liest Quell- und Zieladresse aus dem IP Header, gleicht diese mit seiner Routing-Tabelle ab und weiß anhand dieser Informationen, wohin das Datenpaket geschickt werden soll. Je nach Port, wird das Packet wieder „eingepackt“, in den neuen Header kommen die Quell- und Zielinformationen (z.B. MAC), und  werden weiter verschickt. Dieser Schritt wird so oft wiederholt, bis die Daten an Ihrem Bestimmungsort angekommen sind.

Beispiel:
PC1 möchte Daten an PC2 senden. Die PCs sind durch drei Router getrennt.
PC1 packt ein Datenpäckchen. Mit einem Ethernet Header und Trailer versehen wird das Frame an R1 geschickt.

R1 entfernt Header und Trailer des Frames, liest aus dem Packet die Quell- und Ziel IP und konsultiert seine Routing Tabelle. Aus der Tabelle erkennt der Router, dass er das Packet über die Schnittstelle S1 an R2 weiterleiten muss. Es wird ein HDLC Header und Trailer für das Packet generiert, hier werden die Zieldaten eingetragen (1 Byte im Header*). *Bei einer Point to Point HDLC Verbindung ist die Zieladresse nicht wirklich nötig, da es keine anderen Empfänger gibt, daher nur ein Byte! *

R2 entfernt HDLC Header und Trailer und entscheidet ebenfalls anhand der RT, über welches Interface das Packet weitergeleitet werden soll. Da die Verbindung zu R3 über Frame Relay realisiert ist, verkapselt R2 das Packet mit einem Frame Relay Header und Trailer. Im Header wird der DLCI des VC eingetragen.

R3 entfernt ebenfalls FR Header und Trailer. Wieder wird die Ziel IP überprüft und dem Packet werden Ethernet Header und Trailer (Quell- und Ziel MAC) angehangen und das Frame an PC2 weitergeleitet.

Ziele eines Routing Protokolls

-lernen von Routen in alle verfügbaren Netze des Netzwerks und füllen der Routing Tabelle
-die beste Route auswählen, falls mehr als eine Route zum Ziel führt
-bemerken, wenn Routen ungültig werden und diese aus der Tabelle entfernen
-eine Ersatzroute, sofern vorhanden, für die ungültige Route in die Tabelle eintragen
-für neue oder zu ersetzende Routen, so schnell wie möglich, die bestmögliche Route eintragen. Zeit zwischen verlieren einer Route und ersetzen durch neue Route wird Konvergenz Zeit (convergence time) genannt.
-verhindern von Schleifen

Routing Protokolle

Ein Routing-Protokoll ist ein Mechanismus für das dynamische Entdecken der Pfade für
Datenpakete durch das Netzwerk. Routing-Protokolle ermöglichen Routern die Kommunikation mit anderen Routern zum Zweck der Aktualisierung der Tabellen. Beispiele für TCP/IP-Routing-Protokolle sind RIP (Routing Information Protocol), IGRP (Interior Gateway Routing Protocol), EIGRP (Enhanced IGRP) und OSPF (Open Shortest Path First). Ein routed protocol ist ein OSI Layer 3 entsprechendes Protokoll, welches für logische Adressierung und Routing zuständig ist. Network Layer Pakets können gerouted werden (IP, IPX..). Der Begriff Routing type bezieht sich auf die Art des genutzten Routing Protokolls. (distance vector / link-state).


Statische Routen

Statische Routen werden meist in kleineren, sehr Übersichtlichen Netzwerken eingetragen, da sie weniger Aufwand machen, als die Konfiguration von RPs.
Es gibt zwei Möglichkeiten statische Routen einzutragen:

a) ip route 10.1.2.0 255.255.255.0 10.1.128.252
b) ip route 10.1.3.0 255.255.255.0 serial0

Es wird entweder die IP des Zielinterface angegeben. Bei einer Point to Point Verbindung kann die IP des Zielinterface auch weggelassen werden, schließlich gibt es nur das Ziel am anderen Ende der Leitung.

Interne Routing Protokolle

Interne Routing Protokolle sind für das neue LAN mit dem neuen Sub netz verantwortlich. Sie sorgen dafür, dass die Routen des neuen Netzes so schnell wie möglich zur Verfügung stehen, so dass die Datenpakete eines externen RPs Ihr Ziel erreichen können.

Interne RPs haben einige Merkmale, an denen man sie unterscheiden kann:

Art des RPs:            distance vector / link-state / hybrid

Volle / Partielle Updates:    Volles Update – die gesamte Routing Tabelle wird regelmäßig versandt
Partielles UD – Änderungen werden übertragen. Weniger Overhead.

Konvergenz:            Zeit die das RP braucht um auf Routen Änderungen zu reagieren

Metrik:                Zahlenwert – je geringer der Wert, desto besser die Route

VLSM                variable length subnet mask – mehrere Sub netze innerhalb eines
Klasse A, B oder C Netzwerks

Classless/Classfull:        Classless RPs übertragen die Subnetzmaske im Routing Update
Classfull RPs nicht. Daraus folgt das Classless RPs VLSM unterstützen.

Distance Vector Protokolle: RIP und IGRP

Distance vector Protokolle übertragen in Ihren Updates das Sub Netz und die Metrik (z.B. 10.0.0.0 / 1 ).
Router, die das Update empfangen tragen Einträge nur in Ihre Routing Tabelle ein, sofern unbekannte oder Routen mit besserer Metrik enthalten sind.
Die Updates werden über sämtliche Interfaces versandt, nach Möglichkeit mit Hilfe von Broad- oder Multicasts, und enthalten sowohl die direkt angeschlossenen Netzwerke, als auch gelernte Routen. Router die distance vector Protokolle nutzen lauschen auf Updates Ihrer Nachbarn um neue Routen zu lernen. Die Updates werden periodisch übertragen, so dass ein Ausbleiben eines Updates über einen bestimmten Zeitraum dazu führt, dass Routen die von diesem Nachbar gelernt wurden aus der Routing Tabelle entfernt werden. Routen die von Router X empfangen wurden, bekommen Router X als next hop eingetragen.

RIP 1- Routing Information Protocol
Beim Starten eines Routers kennt dieser nur seine direkt angeschlossenen Netzwerke und sendet diese Routingtabelle an die benachbarten Router. Mit diesen Informationen ergänzt dieser Router seine Routingtabelle und lernt somit, welche Netzwerke jeweils über welchen Router aus erreicht werden können und welche Kosten damit verbunden sind. Um Änderungen im Netzwerk (Ausfall oder Start eines Routers) zu erkennen, wird das Senden der Routingtabellen regelmäßig (alle 30 Sekunden) wiederholt, dabei wird immer die gesamte Routingtabelle an alle Nachbarn gesendet.

-distance vector
-hop count (Anzahl der Hops) dient als Metrik
-Volle Updates alle 30 sek
-Konvergenz 3 bis 5 Min
-Classfull

Die Infinite Metric Value ist 16 Hops

RIP V2
Rip V2 arbeitet genauso wie RIP1, doch hier werden die Subnetzmasken (dadurch CIDR-fähig), Multicast und Authentifikation mit übermittelt.

-überträgt Subnet Mask also Classless (VLSM)
-verfügt über Update Authentifikation
-Update enthält eine Next-Hop IP
-Multicast Updates anstelle der Broadcasts

Ansonsten arbeitet RIP V2 wie RIP.

IGRP – Interior Gateway Routing Protocol

IGRP zählt nicht nur die Hops zum Ziel, die Bandbreite der Verbindungen und die Verzögerung (delay) werden in die Metrik mit einbezogen. Delay addiert die Anzahl der genutzten Ports auf dem Weg. Die Formel zur Errechnung der Metrik ist komplex und nicht Prüfungsrelevant, aus den Eingangswerten (Bandbreite & Delay) ergibt sich ein Wert zwischen 1 und 4294967295. Ein Weg über zwei Router  (R1 -> R3 -> R2) die mit jeweils 100 Mbps verbunden sind, wird dem Weg  über einen Router der mit 56kbps verbunden ist (R1 -> R2) aufgrund der höheren Bandbreite vorgezogen.

-Update Periode 90 sek
-Metrik enthält Bandbreite und Delay; Zuverlässigkeit, MTU und Last können enthalten sein
-Classfull
-Infinite Metric 4294967295
-Konvergenz: Langsam (1 min)

Distance Vector Schleifenverhinderungsmechanismen

Zu den Zielen jedes RPs gehört es Schleifen zu verhindern und ausgefallene Routen durch Brauchbare zu ersetzen. Distance vector Protokolle haben unterschiedlichste Mechanismen für die auftretenden Probleme in Netzwerken.
Hierzu zählen:
Route Poisoning
Damit zusammengebrochene Routen tatsächlich als unbrauchbar im gesamten Netz bekannt werden, werden Sie von dem Router, der dies Feststellt in seinem nächsten Update mit der infinite metric versehen. so erfahren die Nachbarn, dass die Route unbrauchbar ist und können das in Ihren Updates weiterverbreiten.
Split Horizon
Da es vorkommen kann, dass Router Ihre Updates Zeitgleich versenden, könnte es passieren, dass R1 an R2 sendet: Das Netz 10.1.1.0 ist nicht erreichbar! Zeitgleich sendet R2 an R1: Ich habe eine gültige Route ins 10.1.1.0 Netz über R1! R2 weiß jetzt, das die Route ins Netz down ist, doch R1 denkt, dass er das Netz über die von R2 gelernte Route erreichen kann. Damit das nicht passiert wird beim Split Horizon folgendes Angewandt:
Alle Routen, die Interface X als Ausgang nutzen, werden nicht ins Update, welches über Interface X geht eingetragen.

Split Horizon with Poison Reverse (Poison reverse)
Solange das Netzwerk funktioniert und alle Routen up and up sind, verhält sich Poison Reverse wie Split Horizon. Tritt eine Störung auf verhält es sich folgendermaßen:
Es werden im Update Routen eingetragen, welche Interface X verwenden und down sind, mit infinite metric zurückgesandt. Also Split Horizon deaktiviert und die Route „vergiftet“!

Holddown Timer
Die Verbindung zu 10.1.1.0 bricht zusammen (jemand sollte das Kabel checken!)R1 schickt diese Information in seinem Update. Zeitgleich sendet aber R2 seine Updates. R2 lernt, dass die Route ins 10.1.1.0 Netz down ist. R3 lernt von R1, dass diese Route down ist, Zeitgleich hört er jedoch, dass die Route mit einem Hop Count von 2 erreichbar ist und entscheidet sich, gemäß der globalen Ziele aller RPs, für die Route mit dem Hop Count von 2. Er sendet in seinem nächsten Update diese Information an R1, der die Route mit einem Hop Count von 3 einträgt. Die führt zu einem count to infinity, trotz Split Horizon. Ein Holddown Timer sorgt dafür, dass sobald die Information, dass eine Route down ist, rein kommt, alle Informationen bezüglich dieser Route ignoriert werden und verhindert so den Count to Infinity.

Triggered (flash) Updates
Da Updates nur zu festen Zeiten versandt werden, kann es u.U. sehr lange dauern, bis sämtliche Router wissen, dass eine Route down ist. Triggered Updates (auch Flash Updates genannt) werden verschickt, sobald Änderungen auftreten.

RIP
-Update Timer 30 sek
-Hold-Down Timer 180 sek
-Triggered Updates
-Infinite-Metric 16

IGRP
-Updates Timer 90 sek
-Hold-Down Timer 280 sek
-Triggered Updates
-Infinite-Metric 4294967295

Befehle (Cisco)
R1 (config)# router rip
R1 (config)# router igrp    as-nummer    autonomous system (as) router mit derselben
R1 (config-router)# network 10.1.1.0        as arbeiten zusammen
R1 (config-router)# network 10.1.128.0    Die Befehle sind bei RIP & IGRP Identisch
R1 (config-router)# network 10.1.130.0
R1 # show ip route     zeigt die Routing Tabelle

Link-State Protokolle – OSPF und IS-IS
Kernstück von OSPF ist die Nachbarschafts-Datenbank, sie spiegelt die Topologie des Netzes wider. Um den Umfang der auszutauschenden Informationen gering zu halten, wählen OSPF-Router einen designierten Router DR sowie einen Reserve-Router BDR (Backup Designated Router), die als Schnittstellen für den Austausch dienen, das heißt, wenn in einem Netzwerk 10 Router sind (R7 ist der DR), tauschen sämtliche Router nur Updates mit R7 aus, und nicht mehr untereinander. Der OSPF-Router, dessen MAC-Adresse die höchste Router-Priorität besitzt, wird DR. Haben zwei Router die gleiche Priorität, wird der Router mit der höheren Router-ID gewählt.
-design fähig
-schnell
-CPU lastig

Während distance vector Protokolle kaum Topologie Informationen versenden – sie kennen Ihren Nachbarn ja nur, wenn er ein Update versandt hat – erarbeiten sich link-state Protokolle mit Hilfe CPU lastiger Berechnungen und umfangreicher Updates ein genaues Bild der Netzwerktopologie. Sie entdecken Ihre Nachbarn meist noch bevor man sich bemüht Updates auszutauschen. Diese Topologie Informationen und der Djikstra SPF Algorithmus verhindern Schleifen und führen zu einer schnellen Konvergenz(meist weniger als 10 sek).
-VLSM Unterstützung
-Sendet Hello Nachrichten in kurzem Intervall (Hello Intervall) an die Nachbarn
-Partielle Updates, bei Routen Änderungen.
-Volle Updates alle 30 Min

Bevor die Nachbarn gesucht werden, bestimmt jeder OSPF Router seine RID (Router-ID), dies geschieht während das IOS startet. Die Router-ID ist die höchste IP-Adresse eines Loopback Interfaces. Sollte kein Loopback Interface definiert worden sein, wird die höchste IP-Adresse eines Interfaces im Status UP UP genommen.

Danach beginnt die Suche nach Nachbarn mit Hello Paketen. In einem OPSF Hello Paket werden Informationen über:
-Subnet Mask
-Subnet Nummer
-Hello & Dead Intervall
-OSPF Area ID
ausgetauscht. Nur wenn diese Werte bei benachbarten Routern übereinstimmen, werden diese Nachbarn. Sobald sämtliche Topologie Informationen mit den Nachbarn ausgetauscht werden, wechselt der Router seinen Status zu Full. Ein Router kann mehrere Nachbarn mit dem Status Full haben, doch nur einer wird ein fully adjacent neighbor (vollständig angrenzender Nachbar).

Overhead Reduzieren mit Designated Routers

In größeren Netzwerken ist Overhead immer ein Problem. Um den Overhead bei den OSPF Updates zu minimieren, werden von OSPF designated router gewählt, die für die Aktualisierung und Verbreitung der Updates zuständig sind. Das bedeutet, dass in einem Netzwerk mit 10 Routern (R7 ist der DR) tauschen sämtliche Router nur Updates mit R7 aus, nicht auch noch untereinander.

Die Wahl zum DR gewinnt der Router mit der höchsten  OSPF Priorität, falls hier ein gleichstand erzielt wird, gilt die höhere RID. Der zweitplazierte Router wird meist der BDR. Die OSPF Priorität nimmt Werte zwischen 1 und 255 an. Sollte der Wert 0 betragen, kann der Router nie DR werden.

Datenübertragung

OSPF sendet, mit Hilfe eines zuverlässigen Protokolls, LSUs (link-state updates), DDs (Database Description) und LSAs (link-state advertisements) an die Nachbarn. Diese Pakete enthalten Topologie Informationen. Diese Informationen werden verarbeitet (Djikstra) und die daraus resultierenden besten Routen werden in die Routing Tabelle übernommen.

Bei der Konfiguration von OSPF als Routing Protokoll wird eine Prozess ID vergeben. Auf einem Router können mehrere Instanzen von OSPF laufen und mit Hilfe der ID können Sie unterschieden werden.
Netzwerkskalierung mit Areas

Ein Netzwerk, bestehend aus 9 Routern erfordert eine größere Datenbank auf jedem einzelnen Router als ein Netzwerk, unterteilt in 2 Areas. Der Area Border Router (ABR) muss als einziger Router die gesamte Topologie Tabelle sichern, er verbindet die Areas miteinander. Die Router in den einzelnen Areas müssen nichts von der Topologie der anderen Area wissen, außer dem Zugang dazu.

R1 (config)# router ospf prozess-id
R1 (config-router)# network 10.1.1.0 0.0.0.255 area 0    Die Wildcard Mask ist
R1 (config-router)# network 10.1.128.0 0.0.0.255 area 0    die invertierte SM
R1 (config-router)# network 10.1.130.0 0.0.0.255 area 0    und zeigt OSPF an,
welcher Teil der IP    statisch ist.

IS – IS  – Intermediate System to Intermediate System

IS – IS beherrschte nur das Routing von CNLP (Connectionless Network Protocol) zu CNLP. CNLP ist ein OSI Network Layer Protokoll, welches inzwischen kaum noch Verwendung findet. Aus IS – IS hat sich Integrated IS -IS entwickelt. Integrated IS – IS beherrscht auch das Routen von IP Paketen.
OSPF ähnlich
Volle Updates alle 15 Minuten

Balanced Hybrid Protokoll EIGRP – Enhanced IGRP (Cisco – proprietär)
Balanced Hybrid Protokolle unterscheiden sich von distance vector und link-state Protokollen, obwohl sie einige Eigenschaften von beiden in sich vereinen. Durch die Nutzung des Diffusing Update Algorithm (DUAL) überträgt EIGRP mehr Topologie Informationen als distance vector Protokolle, aber weniger als link-state Protokolle. EIGRP errechnet nicht nur die beste Route in ein Netz, sondern legt sich eine Alternativ-Route zurecht, sollte die Beste ausfallen. Diese wird feasible successor (möglicher Nachfolger) route genannt. Sollte also die beste Route ausfallen, steht sofort eine neue Route zur Verfügung.

EIGRP konvergiert sehr schnell, meist sogar noch schneller als OSPF. Zudem fallen hierbei
einige Nachteile von OSPF weg. So erfordert EIGRP erheblich weniger Verarbeitungszeit,
wesentlich weniger Speicher. Der einzige Nachteil ist, EIGRP ist ein proprietäres Cisco-Protokoll.

-Konvergenz in weniger als 3 sek
-Entdeckt Nachbarn noch vor Update-Austausch
-Geringer Planungsaufwand des Netzwerks
-Cisco Proprietär
-Metrik wie IGRP x 256
-Partielle Updates
-Baut, zusätzlich zur RT, Topologie Tabellen

Externe Routing Protokolle

Externe Routing Protokolle kümmern sich um die weltweite Vernetzung, ein neues LAN mit einem neuen Sub netz kümmert sie nicht. Die Routing Tabellen eines externen RPs enthalten, trotz intensiver Anstrengungen die Größe gering zu halten, meist mehr als 100000 Routen in die Netzwerke der Kunden, wo sie von internen RPs weitergeleitet werden.

BGP – Border Gateway Protocol

BGP wird von ISPs genutzt um den Datenaustausch mit Ihren Netzen, den Netzen der Mitbewerber und denen der Kunden zu realisieren. Das BGP führt das Routing zwischen unterschiedlichsten Netzen, jedes mit eigenem Routing Protokoll, durch. Aufgrund dieser Eigenschaft wird als externes Routing Protokoll bezeichnet. Es wird keine Metrik genutzt, da BGP über eine Vielzahl von Alternativ-Routen verfügt. Diese Alternativen werden Policies genannt. Die „Wertigkeit“ dieser Policies entsteht z.B. aus dem Verhältnis zweier ISPs.

One Comment

  1. My cousin recommended this blog and she was totally right keep up the fantastic work!

Schreibe einen Kommentar