Zum Inhalt springen

Routing: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
(75 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Routing''' - Vermittlung von Datagrammen zwischen Netzwerken auf OSI-Layer 3
'''Routing''' - [[Wegfindung]] und [[Vermittlung]] von [[Daten]] in [[paketorientiert]]en [[Netzwerk]]en


== Beschreibung ==
== Beschreibung ==
Routing ist der Prozess, bei dem ein Pfad über ein oder mehrere Netzwerke ausgewählt wird, um Daten zu versenden.
[[OSI-Layer 3]]
* In Netzwerken, die Pakete vermitteln, wählt das Routing die Pfade aus, auf denen die Internet-Protokoll-Pakete (IP-Pakete) von ihrem Ursprung zu ihrem Ziel gelangen.
* [[Telekommunikation]]


'''Routing''' [<nowiki/>{{IPA|ˈruːtɪŋ}}] ([[Britisches Englisch|BE]]) / [<nowiki/>{{IPA|ˈruːtɪŋ}}], aber auch [<nowiki/>{{IPA|ˈraʊtɪŋ}}] ([[Amerikanisches Englisch|AE]]) ([[Englische Sprache|engl.]] „Vermittlung“, „Leitweglenkung“, „Streckenführung“, „Verkehrsführung“ sowie „leiten“, „senden“, „steuern“) ist in der [[Telekommunikation]] der [[Anglizismus]] für das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung in [[Rechnernetz]]en.
; Festlegen von Wegen für Nachrichtenströme
* Insbesondere in [[Paketvermittlung|paketvermittelten]] Datennetzen ist hierbei zwischen den beiden verschiedenen Prozessen ''Routing'' und ''Forwarding'' zu unterscheiden: Das Routing bestimmt den gesamten Weg eines Nachrichtenstroms durch das Netzwerk; das Forwarding beschreibt hingegen den Entscheidungsprozess eines einzelnen Netzknotens, über welchen seiner Nachbarn er eine vorliegende Nachricht weiterleiten soll.
* Nachrichtenübermittlung in [[Rechnernetz]]en


Häufig werden jedoch Routing und Forwarding unter dem Begriff „Routing“ miteinander vermengt; in diesem Fall bezeichnet Routing ganz allgemein die Übermittlung von Nachrichten über [[Nachrichtennetz]]e.
; Routing und Forwarding
* Im Unterschied zu Verteilern (Hubs und Switches) arbeitet das Routing ohne Einschränkungen auch in [[Vermaschtes Netz|vermaschten Netzen]].
Häufig werden Routing und Forwarding unter dem Begriff "Routing" miteinander vermengt
* in diesem Fall bezeichnet Routing ganz allgemein die Übermittlung von Nachrichten über [[Nachrichtennetz]]e
* Im Unterschied zu Verteilern (Hubs und Switches) arbeitet das Routing ohne Einschränkungen auch in [[Vermaschtes Netz|vermaschten Netzen]]


Die [[Vermittlungstechnik]] bezeichnet mit dem Begriff Verkehrslenkung (engl.: ''routing'') die Auswahl der Wegeabschnitte beim Aufbau von [[Nachrichtenverbindung]]en, die unter Berücksichtigung von Kriterien, wie bspw. der kürzesten Entfernung, erfolgen kann.
[[Paketvermittlung|Paketvermittelte]] Datennetze
* Handelt es sich um eine [[Leitungsvermittlung|leitungsvermittelte]] Verbindung, wird ein [[Kanal (Informationstheorie)|Übertragungskanal]] für die gesamte Zeit der Verbindung ausgewählt, und alle Nachrichten werden über denselben Weg geleitet.
* Handelt es sich dagegen um eine paketvermittelte [[Datenübertragung]], wird der Weg für jedes Paket von jedem [[Netzwerkknoten|Netzknoten]] neu bestimmt.


; Herangehensweisen
{| class="wikitable options big"
* [[statisches Routing]]
* [[alternatives Routing]]
* [[adaptives Routing]]
 
== Routing von Paketen ==
Beim paketvermittelten Routing, wie es z.&nbsp;B. im [[Internet]] stattfindet, wird dafür gesorgt, dass logisch adressierte [[Datenpaket]]e aus dem Ursprungsnetz herauskommen und in Richtung ihres Zielnetzes weitergeleitet werden.
* Routing ist die Basis des Internets – ohne Routing würde das Internet nicht existieren, und alle Netze wären autonom.
* Die Datenpakete können dabei viele verschiedene Zwischennetze auf dem Weg zu ihrem Ziel passieren.
* Im Internet wird das Routing (üblicherweise) auf der [[Internet Protocol|IP]]-Schicht durchgeführt.
* Im ISO/[[OSI-Modell]] ist Routing eine der wesentlichen Aufgaben der dritten Schicht.
 
[[Hub (Netzwerk)|Hubs]] und [[Switch (Computertechnik)|Switches]] leiten Daten nur im lokalen Netz weiter, wohingegen der Router auch benachbarte Netze kennt.
* Dieser Artikel beschreibt Routing auf eine hardwareunabhängige Art.
* Für Informationen über Router selbst siehe den [[Router]]-Artikel.
 
Um zu wissen, wohin Pakete gesendet werden sollen, muss man die Struktur des Netzes kennen.
* In kleinen Netzen kann das Routing sehr einfach sein und wird oft per Hand konfiguriert.
* Man spricht dann auch von ''statischem Routing''.
* Große Netze können eine komplexe [[Topologie (Rechnernetz)|Topologie]] haben, die sich möglicherweise häufig ändert, was unter anderem das Routing zu einer komplexen Angelegenheit macht.
* Hier wird in der Regel ein ''dynamisches Routing'' angewandt.
 
Da Router die besten Routen im Verhältnis zur Anzahl der zu bewegenden Pakete nur sehr langsam bestimmen können, merken sie sich in einer oder mehreren ''[[Routingtabelle]]n'' die bestmöglichen, teilweise auch weitere Routen zu bestimmten Netzen und die dazugehörigen Routing-[[Metrik (Netzwerk)|Metriken]].
* Der bestmögliche Weg ist oftmals der kürzeste Weg; er kann zum Beispiel mit dem [[Algorithmus von Dijkstra]] gefunden werden.
 
Basierend auf den Einträgen in der oder den Routingtabelle(n) berechnet ein Router eine sogenannte ''Forwardingtabelle''; sie enthält Einträge der Form ''Zieladressmuster''→''Ausgabeschnittstelle''.
* In seiner Forwardingtabelle schlägt ein Router dann für jedes neu eingetroffene Paket nach, über welche Schnittstelle er das Paket weiterleiten muss.
 
== Funktionsweise ==
{| style="text-align:center;empty-cells:show;" cellspacing="0" cellpadding="1" border="0"
|-
|-
| style="border: 1px solid black; width: 3em;" | 7
! !! Beschreibung
| || || ||
| style="border: 1px solid black; width: 3em;" | 7
|-
|-
| style="border: 1px solid black;" | 6
| Routing || bestimmt den gesamten Weg eines Nachrichtenstroms durch das Netzwerk
| || || ||
| style="border: 1px solid black;" | 6
|-
|-
| style="border: 1px solid black;" | 5
| Forwarding || beschreibt den Entscheidungsprozess eines einzelnen Netzknotens, über welchen seiner Nachbarn er eine vorliegende Nachricht weiterleiten soll
| || || ||
|}
| style="border: 1px solid black;" | 5
 
; [[Vermittlungstechnik]]
Bezeichnet mit dem Begriff Verkehrslenkung (engl.: ''routing'') die Auswahl der Wegeabschnitte beim Aufbau von [[Nachrichtenverbindung]]en, die unter Berücksichtigung von Kriterien, wie bspw
* der kürzesten Entfernung, erfolgen kann
* Handelt es sich um eine [[Leitungsvermittlung|leitungsvermittelte]] Verbindung, wird ein [[Kanal (Informationstheorie)|Übertragungskanal]] für die gesamte Zeit der Verbindung ausgewählt, und alle Nachrichten werden über denselben Weg geleitet
* Handelt es sich dagegen um eine paketvermittelte [[Datenübertragung]], wird der Weg für jedes Paket von jedem [[Netzwerkknoten|Netzknoten]] neu bestimmt
 
{| class="wikitable options big"
|-
|-
| style="border: 1px solid black;" | 4
! Methode !! Beschreibung
| || || ||
| style="border: 1px solid black;" | 4
|-
|-
| style="border: 1px solid black;" | 3
| [[Statisches Routing]] ||
|
| colspan="2" style="border: 1px solid black; width: 3em;" | 3
|
| style="border: 1px solid black;" | 3
|-
|-
| style="border: 1px solid black;" | 2
| [[alternatives Routing]] ||
|
| style="border: 1px solid black;" | 2
| style="border: 1px solid black;" | 2
|
| style="border: 1px solid black;" | 2
|-
|-
| style="border: 1px solid black;" | 1
| [[adaptives Routing]]
| style="border-bottom: 3px solid black; width: 1em;" |
| style="border: 1px solid black;" | 1
| style="border: 1px solid black;" | 1
| style="border-bottom: 3px solid black; width: 1em;" |
| style="border: 1px solid black;" | 1
|}
|}


; Router arbeiten auf Schicht 3 (Vermittlungsschicht/{{lang|en|Network Layer}}) des [[OSI-Modell|OSI-Referenzmodells]].
; Routing-Prozess
* Ein Router besitzt mindestens eine ''Schnittstelle'' ({{enS|Interface}}), die [[Rechnernetz|Netze]] anbindet.
Pfad über ein oder mehrere Netzwerke ausgewählen wird, um Daten zu versenden
* Schnittstellen können auch virtuell sein, wenn diese z.&nbsp;B. zum Vermitteln von Daten zwischen virtuellen Netzen (VLAN) verwendet werden.
* In Netzwerken, die Pakete vermitteln, wählt das Routing die Pfade aus, auf denen die Internet-Protokoll-Pakete (IP-Pakete) von ihrem Ursprung zu ihrem Ziel gelangen
* Beim Eintreffen von [[Datenpaket]]en muss ein Router anhand der OSI-Schicht-3-Zieladresse (z.&nbsp;B. dem Netzanteil der IP-Adresse) den besten Weg zum Ziel und damit die passende Schnittstelle bestimmen, über welche die Daten weiterzuleiten sind.
* Dazu bedient er sich einer lokal vorhandenen [[Routingtabelle]], die angibt, über welchen Anschluss des Routers oder welchen lokalen oder entfernten Router welches Netz erreichbar ist.


; Router können Wege auf drei verschiedene Arten lernen und mit diesem Wissen die Routingtabelleneinträge erzeugen.
== Routing von Paketen ==
* direkt mit der Schnittstelle verbundene Netze: Sie werden automatisch in eine Routingtabelle übernommen, wenn ein Interface mit einer IP-Adresse konfiguriert wird und dieses Interface aktiv ist ("link up").
Beim paketvermittelten Routing, wie es beispielsweise im [[Internet]] stattfindet, wird dafür gesorgt, dass logisch adressierte [[Datenpaket]]e aus dem Ursprungsnetz herauskommen und in Richtung ihres Zielnetzes weitergeleitet werden
* statische Routen: Diese Wege werden durch einen Administrator eingetragen.
* Routing ist die Basis des Internets - ohne Routing würde das Internet nicht existieren, und alle Netze wären autonom
* Sie dienen zum einen der Sicherheit, sind andererseits nur verwaltbar, wenn ihre Zahl begrenzt ist.
* Die Datenpakete können dabei viele verschiedene Zwischennetze auf dem Weg zu ihrem Ziel passieren
* Die Skalierbarkeit ist für diese Methode ein limitierender Faktor.
* Im Internet wird das Routing (üblicherweise) auf der [[Internet Protocol|IP]]-Schicht durchgeführt
* dynamische Routen: In diesem Fall lernen Router erreichbare Netze durch ein Routingprotokoll, das Informationen über das Netzwerk und seine Teilnehmer sammelt und an die Mitglieder verteilt.
* Im ISO/[[OSI-Modell]] ist Routing eine der wesentlichen Aufgaben der dritten Schicht


; Routingtabelle
[[Hub (Netzwerk)|Hubs]] und [[Switch (Computertechnik)|Switches]] leiten Daten nur im lokalen Netz weiter, wohingegen der Router auch benachbarte Netze kennt
Die Routingtabelle ist in ihrer Funktion einem Adressbuch vergleichbar, in dem nachgeschlagen wird, ob ein Ziel-IP-Netz bekannt ist, also ob ein Weg zu diesem Netz existiert und, wenn ja, welche lokale Schnittstelle der Router zur Vermittlung der Daten zu diesem verwenden soll.
* Dieser Artikel beschreibt Routing auf eine hardwareunabhängige Art
* Die Routing-Entscheidung erfolgt üblicherweise nach der Signifikanz der Einträge; spezifischere Einträge werden vor weniger spezifischen gewählt.
* Für Informationen über Router selbst siehe den [[Router]]-Artikel
* Eine vorhandene Default-Route stellt dabei die am wenigsten spezifische Route dar, welche dann genutzt wird, wenn zuvor kein spezifischer Eintrag für das Ziel(-Netz) existiert.
* Bei einem Bezug der gesamten Internet-Routing-Tabelle im Rahmen des [[Autonomes System#Kunden, Peers, Provider|Inter-AS-Routing]] ist es üblich, keine Default-Route vorzuhalten.


; Policy-basiertes Routing
Um zu wissen, wohin Pakete gesendet werden sollen, muss man die Struktur des Netzes kennen
Einige Router beherrschen [[Policy-basiertes Routing]] (für strategiebasiertes Routing).
* In kleinen Netzen kann das Routing sehr einfach sein und wird oft per Hand konfiguriert
* Dabei wird die Routingentscheidung nicht notwendigerweise auf Basis der Zieladresse (OSI-Layer 3) getroffen, sondern es können auch andere Kriterien des Datenpaketes berücksichtigt werden.
* Man spricht dann auch von ''statischem Routing''
* Hierzu zählen beispielsweise die Quell-IP-Adresse, Qualitätsanforderungen oder Parameter aus höheren Schichten wie [[Transmission Control Protocol|TCP]] oder [[User Datagram Protocol|UDP]].
* Große Netze können eine komplexe [[Topologie (Rechnernetz)|Topologie]] haben, die sich möglicherweise häufig ändert, was unter anderem das Routing zu einer komplexen Angelegenheit macht
* So können zum Beispiel Pakete, die [[Hypertext Transfer Protocol|HTTP]]-Inhalte (Web) transportieren, einen anderen Weg nehmen als Pakete mit [[Simple Mail Transfer Protocol|SMTP]]-Inhalten (Mail).
* Hier wird in der Regel ein ''dynamisches Routing'' angewandt


; Protokolle
Da Router die besten Routen im Verhältnis zur Anzahl der zu bewegenden Pakete nur sehr langsam bestimmen können, merken sie sich in einer oder mehreren ''[[Routingtabelle]]n'' die bestmöglichen, teilweise auch weitere Routen zu bestimmten Netzen und die dazugehörigen Routing-[[Metrik (Netzwerk)|Metriken]]
Router können nur für Routing geeignete Datenpakete, also von routingfähigen Protokollen, wie [[Internet Protocol|IP]] ([[IPv4]] oder [[IPv6]]) oder [[IPX/SPX]], verarbeiten.
* Der bestmögliche Weg ist oftmals der kürzeste Weg; er kann zum Beispiel mit dem [[Algorithmus von Dijkstra]] gefunden werden
* Andere Protokolle, wie die ursprünglich von [[MS-DOS]] und [[MS-Windows]] benutzten [[NetBIOS]] und [[NetBEUI]], die nur für kleine Netze gedacht waren und von ihrem Design her nicht routingfähig sind, werden von einem Router standardmäßig nicht weitergeleitet.
* Es besteht jedoch die Möglichkeit, solche Daten über [[Tunneling|Tunnel]] und entsprechende Funktionen, wie [[Data Link Switching|Datalink Switching]] (DLSw), an entfernte Router zu vermitteln und dort dem Ziel zuzustellen.
* Pakete aus diesen Protokollfamilien werden in aller Regel durch Systeme, die auf [[OSI-Referenzmodell#Schicht 2 – Sicherungsschicht|Schicht 2]] arbeiten, also [[Bridge|Bridges]] oder [[Switch (Netzwerktechnik)|Switches]], verarbeitet.
* Professionelle Router können bei Bedarf diese Bridge-Funktionen wahrnehmen und werden [[Layer-3-Switch]] genannt.
* Als [[OSI-Referenzmodell#Schicht 3 – Vermittlungsschicht|Schicht-3]]-System enden am Router alle Schicht-2-Funktionen, darunter die [[Broadcastdomäne]].
* Das ist insbesondere in großen [[Local Area Network|lokalen Netzen]] wichtig, um das Broadcast-Aufkommen für die einzelnen Teilnehmer eines Subnetzes gering zu halten.
* Sollen allerdings Broadcast-basierte Dienste, wie beispielsweise [[DHCP]], über den Router hinweg funktionieren, muss der Router Funktionen bereitstellen, die diese Broadcasts empfangen, auswerten und gezielt einem anderen System zur Verarbeitung zuführen können ([[Dynamic Host Configuration Protocol#DHCP-Relay|Relay-Agent-Funktion]]).


; Multiprotokoll-Router
Basierend auf den Einträgen in der oder den Routingtabelle(n) berechnet ein Router eine sogenannte ''Forwardingtabelle''; sie enthält Einträge der Form ''Zieladressmuster''→''Ausgabeschnittstelle''
Außerdem sind Ein- und Mehrprotokoll-Router (auch Multiprotokoll-Router) zu unterscheiden.
* In seiner Forwardingtabelle schlägt ein Router dann für jedes neu eingetroffene Paket nach, über welche Schnittstelle er das Paket weiterleiten muss
* Einprotokoll-Router sind nur für ein Netzwerkprotokoll wie IPv4 geeignet und können daher nur in [[Homogenität|homogenen]] Umgebungen eingesetzt werden.
* Multiprotokoll-Router beherrschen den gleichzeitigen Umgang mit mehreren Protokollfamilien, wie [[DECnet]], IPX/SPX, [[Systems Network Architecture|SNA]], IP und anderen.
* Heute dominieren IP-Router das Feld, da praktisch alle anderen Netzwerkprotokolle nur noch eine untergeordnete Bedeutung haben und, falls sie zum Einsatz kommen, oft auch gekapselt werden können ([[NetBIOS over TCP/IP]], IP-encapsulated IPX).
* Früher hatten Mehrprotokoll-Router in größeren Umgebungen eine wesentliche Bedeutung, damals verwendeten viele Hersteller unterschiedliche Protokollfamilien, daher kam es unbedingt darauf an, dass vom Router mehrere Protokoll-Stacks unterstützt wurden.
* Multiprotokoll-Router finden sich fast ausschließlich in [[Weitverkehrsnetz|Weitverkehrs-]] oder ATM-Netzen.


; 'Gerouteten Protokolle' und 'Routing-Protokolle'
== Funktionsweise ==
Wichtig ist die Unterscheidung zwischen den ''gerouteten Protokollen'' (wie Internet Protocol oder [[Internetwork Packet Exchange|IPX]]) und ''Routing-Protokollen''.
{{:Routing/Funktionsweise}}
* Routing-Protokolle dienen der Verwaltung des Routing-Vorgangs und der Kommunikation zwischen den Routern, die so ihre Routing-Tabellen austauschen (beispielsweise [[Border Gateway Protocol|BGP]], [[Routing Information Protocol|RIP]] oder [[OSPF]]).
* Geroutete Protokolle hingegen sind die Protokolle, die den Datenpaketen, die der Router transportiert, zugrunde liegen.


== Beispiel ==
== Beispiel ==
; Wann wird ein Router benötigt?
{{:Routing/Beispiel}}
* Sobald Daten mit einem anderen IP-Netzwerk ausgetauscht werden sollen, wird ein Router benötigt.
 
; Vorgang
* PC hat ein IP-Adresse + Subnetzmaske
* PC fuhrt mit IP + Subnetzmaske und Vergleich durch
* Ebenfalls und Vergleich von IP + Subnetz des Ziel-Computerts
* Unterschiedliches Ergebnis = Netzübergreifende Kommunikation = Router notwendig
 
'''Computer 1'''
* IP: 192.168.2.28
* Subnetzmaske: 255.255.255.224
AND Vergleich:
11000000.10101000.00000010.00011100
11111111.11111111.11111111.11100000
11000000.10101000.00000010.00000000 = > 192.168.2.0
 
'''Computer 2'''
* IP: 192.168.1.60
* SN: 255.255.255.192
AND Vergleich
11000000.10101000.00000010.00011100
11111111.11111111.11111111.11000000
11000000.10101000.00000001.00000000 = > 192.168.2.1
 
= > AND Vergleich fehlgeschlagen = > netzübergreifende Kommunikation = >Router benötigt
 
== Routing-Tabelle ==
[[Routing/Tabelle]]


<noinclude>
<noinclude>
== Source Routing ==
In [[Local Area Network|lokalen Netzen]] wird häufig ''[[Source Routing]]'' verwendet.
* In diesem Fall ist der sendenden Station der vollständige Pfad zur Zielstation bekannt.
* Die sendende Station trägt die Adresse des nächsten Netzknotens in den Kopf der Nachricht ein.
* Jeder folgende Netzknoten adressiert den nächsten Knoten entlang der bereits festgelegten Route, direkt im Kopf der Nachricht.
* Dieses Verfahren wird z.&nbsp;B. im [[Usenet|Usenet Mail Service]] verwendet.
Ein beliebtes Beispiel ist das [[Dynamic Source Routing]]; hierbei erfährt die sendende Station durch die Route Discovery eine gültige Route zur Zielstation.
* Diese Route wird in den Header eines jeden Paketes zur Zielstation eingetragen und jeder Zwischenknoten ist verpflichtet, das Paket entlang dieser Route weiterzuleiten.
* Die korrekte Weiterleitung kann in [[bidirektional]]en drahtlosen Netzen auch durch den vorigen [[Hop (Netzwerktechnologie)|Hop]]-Knoten kontrolliert werden (mithören).
== Routing-Protokolle ==
[[Routing/Protokolle]]
== Routing im Internet ==
Prinzipiell unterscheidet man im [[Internet]] je nach Zweck zwei verschiedene Arten von Routing:
* Int''ra''domain-Routing findet innerhalb eines [[Autonomes System|autonomen Systems]] („AS“) statt;
* Int''er''domain-Routing bezeichnet das Routing zwischen autonomen Systemen.
Hierbei bezieht sich der Namensbestandteil „Domain“ auf das autonome System; er hat also ''nichts'' mit den „[[Domain Name System|DNS-Domains]]“ beispielsweise bei Web-Adressen zu tun.
=== Intradomain-Routing ===
Intradomain-Routing verwendet ''Interior Gateway-Protokolle''&nbsp;(IGP).
* Der Fokus beim Intradomain-Routing liegt in den meisten Fällen auf einer ''technisch'' effizienten Nutzung des Netzwerks; ihm liegt typischerweise eine Wegewahl entlang kürzester Pfade zugrunde.
Der Administrator versucht, durch geschicktes Konfigurieren des Routings das durch das Netzwerk übertragbare Datenvolumen zu maximieren.
* Dieses Optimieren des Routings unter Berücksichtigung des real vorhandenen Datenübertragungsbedarfs zwischen verschiedenen Teilen des Netzwerks nennt man [[Traffic Engineering]].
=== Interdomain-Routing ===
Interdomain-Routing verwendet sogenannte ''Exterior Gateway-Protokolle'' (EGP), und zwar (fast) immer [[Border Gateway Protocol|BGP]].
* Da Interdomain-Routing das Routing zwischen verschiedenen Providern regelt, liegt der Fokus beim Interdomain-Routing normalerweise auf einer ''finanziell'' effizienten (profitorientierten) Nutzung des Netzwerks.
* Die zugrundeliegende Idee hierbei ist die, dass ein autonomes System nicht allen seinen Nachbarn die gleichen Informationen (Routen) zukommen lässt.
* Welche Informationen ausgetauscht werden und welche nicht, wird zunächst in Verträgen festgelegt und dann in den Routern einkonfiguriert; man spricht in diesem Zusammenhang von [[Policy-basiertes Routing|Policy-basiertem Routing]].
=== IP-Routing ===
Einfache Protokolle wie z.&nbsp;B. natives [[NETBIOS]] kennen kein Routing; hier identifizieren sich zwei Stationen ausschließlich durch die [[MAC-Adresse]]n ihrer Netzwerkkarten.
* Das ist auch bei [[Internet Protocol|IP]]-Kommunikation innerhalb eines gemeinsamen Netzes (ohne Routing) so – zumindest, nachdem per [[Address Resolution Protocol|ARP]] bzw. [[Neighbor Discovery Protocol|NDP]] die zur [[IP-Adresse]] gehörende MAC-Adresse ermittelt wurde.
* Dann enthält jedes Paket die MAC- und IP-Adresse des Empfängers so wie die MAC- und IP-Adresse des Absenders sowie optionale Nutzdaten.
Liegen Absender und Empfänger in verschiedenen Netzen, ist ein [[Router]] erforderlich.
* Möchte eine über Router angebundene Station ein Paket an einen Empfänger außerhalb ihres Netzes senden, beispielsweise an einen [[Telnet]]-Server, so funktioniert der Kommunikationsprozess (vereinfacht dargestellt) wie folgt: Zuerst ermittelt die Station den für das gewünschte Ziel nächstgelegenen Router (siehe [[Routingtabelle]]), ermittelt per ARP dessen MAC-Adresse und baut ein Paket wie folgt zusammen: Es erhält als Ziel-MAC-Adresse die MAC-Adresse des nächstgelegenen Routers, die Ziel-IP-Adresse des Empfängers, die Ziel-[[Port (Protokoll)|Portadresse]] 23 für den Telnet-Server sowie die MAC- und IP-Adresse des Absenders und einen Absenderport (irgendein gerade freier Port, z.&nbsp;B. 5387) für die gerade anfragende Telnet-Sitzung sowie andere erforderliche Daten.
* Der Router empfängt und verarbeitet das Paket, weil es an seine MAC-Adresse gerichtet ist.
* Bei der Verarbeitung im Router wird das Paket in leicht abgeänderter Form weitergeleitet: Der Router ermittelt den ''nächsten Router'', ermittelt per ARP dessen MAC-Adresse und baut das Paket wie folgt um: Es erhält nun abweichend als Ziel-MAC-Adresse die MAC-Adresse des ''nächsten Routers'' sowie als Quell-MAC-Adresse die eigene MAC-Adresse.
* Die IP-Adresse des Empfängers, Ziel-Port 23 sowie die IP-Adresse des Absenders, Absender-Port 5387 und die Nutzdaten hingegen bleiben gleich.
* Das bedeutet: Auf Schicht 3 ([[Internet Protocol|IP]]) wird das Paket nicht verändert.
* Dieser Vorgang wiederholt sich, bis ein letzter Router die Zielstation in einem direkt angeschlossenen Netz findet; dann setzt sich das Paket wie folgt zusammen: es enthält die MAC-Adresse der Zielstation, die MAC-Adresse des letzten Routers – also die Daten der letzten Schicht-2-Verbindung ([[Ethernet]]) – sowie die IP-Adresse des Empfängers (=&nbsp;Zielstation), Ziel-Port 23 sowie die IP-Adresse des Absenders, Absender-Port 5387 und natürlich Nutzdaten.
Nach erfolgreicher Verarbeitung durch den Telnet-Server wird die Rückantwort dann wie folgt zusammengestellt: MAC-Adresse des für den Rückweg zuständigen Routers (wobei Hin- und Rückroute nicht unbedingt identisch sein müssen), die IP-Adresse des anfragenden Rechners (vormals Absender), die Ziel-Portadresse 5387 (vormals Absender-Port) sowie die MAC- und IP-Adresse des Telnet-Servers und dessen Absenderport, sowie Antwort-Daten.
* Nachdem alle Router durchlaufen wurden, wird daraus im letzten Router: MAC-Adresse und IP-Adresse des anfragenden Rechners, die MAC-Adresse des letzten Routers, die Ziel-Portadresse 5387 sowie die IP-Adresse des Telnet-Servers und dessen Absenderport, sowie Antwort-Daten.
* Wird diese Telnet-Sitzung beendet, wird auch Port 5387 wieder freigegeben.
=== Zusammenwirken von Protokollen ===
Abhängig davon, ob ein Router Teil eines [[Autonomes System|autonomen Systems]] ist oder gar dessen Grenze bildet, verwendet er oftmals gleichzeitig Routing-Protokolle aus verschiedenen Klassen:
* '''Interior Gateway Protocols''' ('''IGP'''s) tauschen Routing-Informationen in einem einzelnen autonomen System aus.
* Häufig verwendet werden:
** [[Interior Gateway Routing Protocol|IGRP]]/[[EIGRP]] (Interior Gateway Routing Protocol/ Enhanced IGRP)
** [[Open Shortest Path First|OSPF]] (Open Shortest Path First)
** [[IS-IS]] (Intermediate System to Intermediate System)
** [[Routing Information Protocol|RIP]] (Routing Information Protocol)
** [[R-SMLT]] Routing [[Split Multi-Link Trunking|SMLT]]
* '''Exterior Gateway Protocols''' ('''EGP'''s) regeln das Routing zwischen verschiedenen autonomen Systemen.
* Dazu gehören:
** [[Border Gateway Protocol|BGP]] (Border Gateway Protocol: seit [[2002]] in der Version BGP4) ist heute weltweit der De-facto-Standard.
** [[Exterior-Gateway-Protokoll|EGP]] (mit dem alten Exterior Gateway Protocol wurden früher die Internet-Backbones verbunden.
* Es ist inzwischen veraltet.)
* '''[[Ad-hoc-Netz#Routing-Protokolle|Ad hoc Routing-Protokolle]]''' werden in Netzen mit wenig oder keiner Infrastruktur verwendet.
** [[Optimized Link State Routing|OLSR]] findet meist Verwendung im mobilen Bereich.
** [[AODV]] findet in kleineren Netzen mit hauptsächlich statischem Traffic Verwendung.
Dabei können Routingprotokolle auch miteinander interagieren.
* Beispielsweise können neue Routen aus dem IGP zum EGP exportiert werden.
* Auch andere Fälle sind denkbar: Ändert sich, z.&nbsp;B. durch den Ausfall eines Links, die IGP-Metrik für einen Pfad ''a''⇝''b'' innerhalb des AS ''X'', so kann ''X'' die Metrikänderung auf alle EGP-Pfade ''a''⇝''b''⇝''Y'', ''a''⇝''b''⇝''Z'' usw. übertragen.
* Es ist auch denkbar, dass sich einige Routen, welche ein Router von verschiedenen Routingprotokollen gelernt hat, gegenseitig widersprechen; in solchen Fällen regelt eine vorher definierte Priorisierung ([[Administrative Distanz]]) die letztendliche Entscheidung des Routers.
=== Routing-Protokolle ===
{| class="wikitable"
|- class="hintergrundfarbe6"
! Routing-<br />Protokoll || Routing-<br />Algorithmus || Shortest-Path-<br />Algorithmus
! Einsatz || Metrik || Anmerkungen
|-
| [[Border Gateway Protocol|BGP]] || [[Pfadvektorprotokoll|Path-Vector]] || [[Bellman-Ford-Algorithmus|Bellman-Ford]]
| EGP || Policies || De-facto-Standard, verhindert Schleifen
|-
| [[Routing Information Protocol|RIP]] || [[Distanzvektoralgorithmus|DV]] || Bellman-Ford
| IGP || Hop-Count || Count-to-Infinity-Problem
|-
| [[Open Shortest Path First|OSPF]] || [[Link-State|LS]] || [[Algorithmus von Dijkstra|Dijkstra]]
| IGP || * || hierarchisches Routing
|-
| [[IS-IS]] || LS || Dijkstra
| IGP || * || ISO-Standard, vglb. mit OSPF
|-
| [[EIGRP]] || DV || [[Diffusing Update Algorithm|DUAL]]
| IGP || * || Cisco-Standard
|}
<nowiki>*</nowiki> verschiedene (teilweise kombinierbare) Metriken
== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/Routing}}
<div style="column-count:2">
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}


* [[Multi-Path Routing]]
=== Links ===
* [[Ad-hoc On-demand Distance Vector]] (AODV)
==== Weblinks ====
* [[Classless Inter-Domain Routing]] (CIDR)
* [[Dijkstra-Algorithmus]]
* [[eXtensible Open Router Platform]] (XORP)
* [[Multiprotocol Label Switching]] (MPLS)
* [[Network Address Translation]] (NAT)
* [[Optimized Link State Routing]] (OLSR)
* [[Routing Information Protocol]] (RIP)
* Topology Dissemination Based on Reverse-Path Forwarding ([[TBRPF]])
 
==== Sicherheit ====
==== Dokumentation ====
===== RFC =====
===== Man-Pages =====
===== Info-Pages =====
==== Links ====
===== Projekt =====
 
===== Weblinks =====
# https://de.wikipedia.org/wiki/Routing
# https://de.wikipedia.org/wiki/Routing
# https://curlie.org/World/Deutsch/Computer/Netzwerk/Router_und_Routing/
# [http://rainer.baumann.info/public/tik262.pdf Übersicht über Routing-Metriken]
# http://www.microhowto.info/howto/enable_forwarding_of_ipv4_packets.html
# https://unix.stackexchange.com/questions/527012/routing-problems-when-activating-ip-forwarding
# https://www.reddit.com/r/linuxquestions/comments/6vu4em/ip_forwarding_not_working/
# https://serverfault.com/questions/596641/linux-ip-forwarding-trouble
# https://lartc.org/howto/lartc.kernel.html


[[Kategorie:Router]]
[[Kategorie:IPv4]]
[[Kategorie:IPv6]]
[[Kategorie:Routing]]
[[Kategorie:Routing]]
 
[[Kategorie:IPv4/Routing]]
[[Kategorie:IPv6/Router]]
</noinclude>
</noinclude>

Aktuelle Version vom 19. Juli 2025, 11:17 Uhr

Routing - Wegfindung und Vermittlung von Daten in paketorientierten Netzwerken

Beschreibung

OSI-Layer 3

Festlegen von Wegen für Nachrichtenströme
Routing und Forwarding

Häufig werden Routing und Forwarding unter dem Begriff "Routing" miteinander vermengt

  • in diesem Fall bezeichnet Routing ganz allgemein die Übermittlung von Nachrichten über Nachrichtennetze
  • Im Unterschied zu Verteilern (Hubs und Switches) arbeitet das Routing ohne Einschränkungen auch in vermaschten Netzen

Paketvermittelte Datennetze

Beschreibung
Routing bestimmt den gesamten Weg eines Nachrichtenstroms durch das Netzwerk
Forwarding beschreibt den Entscheidungsprozess eines einzelnen Netzknotens, über welchen seiner Nachbarn er eine vorliegende Nachricht weiterleiten soll
Vermittlungstechnik

Bezeichnet mit dem Begriff Verkehrslenkung (engl.: routing) die Auswahl der Wegeabschnitte beim Aufbau von Nachrichtenverbindungen, die unter Berücksichtigung von Kriterien, wie bspw

  • der kürzesten Entfernung, erfolgen kann
  • Handelt es sich um eine leitungsvermittelte Verbindung, wird ein Übertragungskanal für die gesamte Zeit der Verbindung ausgewählt, und alle Nachrichten werden über denselben Weg geleitet
  • Handelt es sich dagegen um eine paketvermittelte Datenübertragung, wird der Weg für jedes Paket von jedem Netzknoten neu bestimmt
Methode Beschreibung
Statisches Routing
alternatives Routing
adaptives Routing
Routing-Prozess

Pfad über ein oder mehrere Netzwerke ausgewählen wird, um Daten zu versenden

  • In Netzwerken, die Pakete vermitteln, wählt das Routing die Pfade aus, auf denen die Internet-Protokoll-Pakete (IP-Pakete) von ihrem Ursprung zu ihrem Ziel gelangen

Routing von Paketen

Beim paketvermittelten Routing, wie es beispielsweise im Internet stattfindet, wird dafür gesorgt, dass logisch adressierte Datenpakete aus dem Ursprungsnetz herauskommen und in Richtung ihres Zielnetzes weitergeleitet werden

  • Routing ist die Basis des Internets - ohne Routing würde das Internet nicht existieren, und alle Netze wären autonom
  • Die Datenpakete können dabei viele verschiedene Zwischennetze auf dem Weg zu ihrem Ziel passieren
  • Im Internet wird das Routing (üblicherweise) auf der IP-Schicht durchgeführt
  • Im ISO/OSI-Modell ist Routing eine der wesentlichen Aufgaben der dritten Schicht

Hubs und Switches leiten Daten nur im lokalen Netz weiter, wohingegen der Router auch benachbarte Netze kennt

  • Dieser Artikel beschreibt Routing auf eine hardwareunabhängige Art
  • Für Informationen über Router selbst siehe den Router-Artikel

Um zu wissen, wohin Pakete gesendet werden sollen, muss man die Struktur des Netzes kennen

  • In kleinen Netzen kann das Routing sehr einfach sein und wird oft per Hand konfiguriert
  • Man spricht dann auch von statischem Routing
  • Große Netze können eine komplexe Topologie haben, die sich möglicherweise häufig ändert, was unter anderem das Routing zu einer komplexen Angelegenheit macht
  • Hier wird in der Regel ein dynamisches Routing angewandt

Da Router die besten Routen im Verhältnis zur Anzahl der zu bewegenden Pakete nur sehr langsam bestimmen können, merken sie sich in einer oder mehreren Routingtabellen die bestmöglichen, teilweise auch weitere Routen zu bestimmten Netzen und die dazugehörigen Routing-Metriken

  • Der bestmögliche Weg ist oftmals der kürzeste Weg; er kann zum Beispiel mit dem Algorithmus von Dijkstra gefunden werden

Basierend auf den Einträgen in der oder den Routingtabelle(n) berechnet ein Router eine sogenannte Forwardingtabelle; sie enthält Einträge der Form ZieladressmusterAusgabeschnittstelle

  • In seiner Forwardingtabelle schlägt ein Router dann für jedes neu eingetroffene Paket nach, über welche Schnittstelle er das Paket weiterleiten muss

Funktionsweise

Routing/Funktionsweise

Router

Router arbeiten auf Schicht 3
Sender Empfänger
7 Application < - - - - - - - - - - - - - - - - - - - - - - - - > 7 Application
6 Presentation‎ < - - - - - - - - - - - - - - - - - - - - - - - - > 6 Presentation‎
5 Session‎ < - - - - - - - - - - - - - - - - - - - - - - - - > 5 Session‎
4 Transport < - - - - - - - - - - - - - - - - - - - - - - - - > 4 Transport
3 Network‎ < - - > 3 Network‎ < - - > 3 Network‎
2 Data Link‎ < - - > 2 Data Link‎ 2 Data Link‎ < - - > 2 Data Link‎
1 Physical‎ < - - > 1 Physical‎ 1 Physical‎ < - - > 1 Physical‎
Übertragungsmedien Übertragungsmedien


Vermittlungsschicht/Network Layer des OSI-Referenzmodells

Ein Router besitzt mindestens eine Schnittstelle (Interface), die Netze anbindet.

  • Schnittstellen können auch virtuell sein, wenn diese beispielsweise zum Vermitteln von Daten zwischen virtuellen Netzen (VLAN) verwendet werden.
  • Beim Eintreffen von Datenpaketen muss ein Router anhand der OSI-Schicht-3-Zieladresse (beispielsweise dem Netzanteil der IP-Adresse) den besten Weg zum Ziel und damit die passende Schnittstelle bestimmen, über welche die Daten weiterzuleiten sind.
  • Dazu bedient er sich einer lokal vorhandenen Routingtabelle, die angibt, über welchen Anschluss des Routers oder welchen lokalen oder entfernten Router welches Netz erreichbar ist.
Routing eines HTTP-Pakets über drei Netze

Router können Wege auf drei verschiedene Arten lernen und mit diesem Wissen die Routingtabelleneinträge erzeugen.

  • direkt mit der Schnittstelle verbundene Netze: Sie werden automatisch in eine Routingtabelle übernommen, wenn ein Interface mit einer IP-Adresse konfiguriert wird und dieses Interface aktiv ist ("link up").
  • statische Routen: Diese Wege werden durch einen Administrator eingetragen.
  • Sie dienen zum einen der Sicherheit, sind andererseits nur verwaltbar, wenn ihre Zahl begrenzt ist.
  • Die Skalierbarkeit ist für diese Methode ein limitierender Faktor.
  • dynamische Routen: In diesem Fall lernen Router erreichbare Netze durch ein Routingprotokoll, das Informationen über das Netzwerk und seine Teilnehmer sammelt und an die Mitglieder verteilt.

Routingtabelle

Die Routingtabelle ist in ihrer Funktion einem Adressbuch vergleichbar, in dem nachgeschlagen wird, ob ein Ziel-IP-Netz bekannt ist, also ob ein Weg zu diesem Netz existiert und, wenn ja, welche lokale Schnittstelle der Router zur Vermittlung der Daten zu diesem verwenden soll.

  • Die Routing-Entscheidung erfolgt üblicherweise nach der Signifikanz der Einträge; spezifischere Einträge werden vor weniger spezifischen gewählt.
  • Eine vorhandene Default-Route stellt dabei die am wenigsten spezifische Route dar, welche dann genutzt wird, wenn zuvor kein spezifischer Eintrag für das Ziel(-Netz) existiert.
  • Bei einem Bezug der gesamten Internet-Routing-Tabelle im Rahmen des Inter-AS-Routing ist es üblich, keine Default-Route vorzuhalten.

Policy-basiertes Routing

Einige Router beherrschen Policy-basiertes Routing (für strategiebasiertes Routing).

  • Dabei wird die Routingentscheidung nicht notwendigerweise auf Basis der Zieladresse (OSI-Layer 3) getroffen, sondern es können auch andere Kriterien des Datenpaketes berücksichtigt werden.
  • Hierzu zählen beispielsweise die Quell-IP-Adresse, Qualitätsanforderungen oder Parameter aus höheren Schichten wie TCP oder UDP.
  • So können zum Beispiel Pakete, die HTTP-Inhalte (Web) transportieren, einen anderen Weg nehmen als Pakete mit SMTP-Inhalten (Mail).

Protokolle

Router können nur für Routing geeignete Datenpakete, also von routingfähigen Protokollen, wie IP (IPv4 oder IPv6) oder IPX/SPX, verarbeiten.

  • Andere Protokolle, wie die ursprünglich von MS-DOS und MS-Windows benutzten NetBIOS und NetBEUI, die nur für kleine Netze gedacht waren und von ihrem Design her nicht routingfähig sind, werden von einem Router standardmäßig nicht weitergeleitet.
  • Es besteht jedoch die Möglichkeit, solche Daten über Tunnel und entsprechende Funktionen, wie Datalink Switching (DLSw), an entfernte Router zu vermitteln und dort dem Ziel zuzustellen.
  • Pakete aus diesen Protokollfamilien werden in aller Regel durch Systeme, die auf Schicht 2 arbeiten, also Bridges oder Switches, verarbeitet.
  • Professionelle Router können bei Bedarf diese Bridge-Funktionen wahrnehmen und werden Layer-3-Switch genannt.
  • Als Schicht-3-System enden am Router alle Schicht-2-Funktionen, darunter die Broadcastdomäne.
  • Das ist insbesondere in großen lokalen Netzen wichtig, um das Broadcast-Aufkommen für die einzelnen Teilnehmer eines Subnetzes gering zu halten.
  • Sollen allerdings Broadcast-basierte Dienste, wie beispielsweise DHCP, über den Router hinweg funktionieren, muss der Router Funktionen bereitstellen, die diese Broadcasts empfangen, auswerten und gezielt einem anderen System zur Verarbeitung zuführen können (Relay-Agent-Funktion).

Multiprotokoll-Router

Außerdem sind Ein- und Mehrprotokoll-Router (auch Multiprotokoll-Router) zu unterscheiden.

  • Einprotokoll-Router sind nur für ein Netzwerkprotokoll wie IPv4 geeignet und können daher nur in homogenen Umgebungen eingesetzt werden.
  • Multiprotokoll-Router beherrschen den gleichzeitigen Umgang mit mehreren Protokollfamilien, wie DECnet, IPX/SPX, SNA, IP und anderen.
  • Heute dominieren IP-Router das Feld, da praktisch alle anderen Netzwerkprotokolle nur noch eine untergeordnete Bedeutung haben und, falls sie zum Einsatz kommen, oft auch gekapselt werden können (NetBIOS over TCP/IP, IP-encapsulated IPX).
  • Früher hatten Mehrprotokoll-Router in größeren Umgebungen eine wesentliche Bedeutung, damals verwendeten viele Hersteller unterschiedliche Protokollfamilien, daher kam es unbedingt darauf an, dass vom Router mehrere Protokoll-Stacks unterstützt wurden.
  • Multiprotokoll-Router finden sich fast ausschließlich in Weitverkehrs- oder ATM-Netzen.

Gerouteten Protokolle und Routing-Protokolle

Routing-Protokolle

  • Verwaltung des Routing-Vorgangs
  • Kommunikation zwischen den Routern
  • Routing-Tabellen austauschen
  • BGP, RIP, OSPF, …

Geroutete Protokolle

  • Protokolle, die den Datenpaketen, die der Router transportiert, zugrunde liegen
  • Internet Protocol, …


Beispiel

Routing/Beispiel

Beispiele

Wann wird ein Router benötigt?
  • Sobald Daten mit einem anderen IP-Netzwerk ausgetauscht werden sollen, wird ein Router benötigt.
Vorgang
  • PC hat ein IP-Adresse + Subnetzmaske
  • PC fuhrt mit IP + Subnetzmaske und Vergleich durch
  • Ebenfalls und Vergleich von IP + Subnetz des Ziel-Computerts
  • Unterschiedliches Ergebnis = Netzübergreifende Kommunikation = Router notwendig

Computer 1

  • IP: 192.168.2.28
  • Subnetzmaske: 255.255.255.224

AND Vergleich:

11000000.10101000.00000010.00011100
11111111.11111111.11111111.11100000
11000000.10101000.00000010.00000000 = > 192.168.2.0

Computer 2

  • IP: 192.168.1.60
  • SN: 255.255.255.192

AND Vergleich

11000000.10101000.00000010.00011100
11111111.11111111.11111111.11000000
11000000.10101000.00000001.00000000 = > 192.168.2.1
= > AND Vergleich fehlgeschlagen = > netzübergreifende Kommunikation = >Router benötigt



Anhang

Siehe auch


Links

Weblinks

  1. https://de.wikipedia.org/wiki/Routing