Netzwerkschicht und Routing
Die Netzwerkschicht transportiert Pakete von einem Quell-Host zu einem Ziel-Host über mehrere Verbindungen und Netzwerke hinweg, wobei eine Datenebene, die jedes Paket an jedem Router weiterleitet, mit einer Steuerungsebene kombiniert wird, die die Routen berechnet, denen diese Pakete folgen.
Definition
Die Netzwerkschicht ist die Protokollschicht, die für die Host-zu-Host-Zustellung von Paketen über ein Internetwork verantwortlich ist und Adressierung, Weiterleitung von Paketen innerhalb von Routern (die Datenebene) sowie Routenbestimmung über das Netzwerk (die Steuerungsebene) bereitstellt.
Scope
Dieser Bereich umfasst die Internetworking-Technologien: das Internet Protocol (IP) mit seiner Adressierung und Weiterleitung, die Routing-Algorithmen (Link-State und Distanzvektor), die Pfade berechnen, die Organisation des Routings in Intra-Domain- und Inter-Domain-Protokolle (einschließlich BGP zwischen autonomen Systemen) sowie das neuere Software-Defined Networking-Paradigma, das die Steuerungsebene auf logisch zentralisierte Controller auslagert. Es unterscheidet die paketweise Datenebene von der Routen-berechnenden Steuerungsebene und schließt die darüber liegenden End-to-End-Dienste der Transportschicht und die darunter liegende Hop-by-Hop-Zustellung der Verbindungsschicht aus.
Sub-topics
Core questions
- Wie leitet ein Router ein Paket an sein Ziel weiter, und was enthält eine Weiterleitungstabelle?
- Wie sind IP-Adressen strukturiert und zugewiesen, und wie funktionieren Subnetting und CIDR?
- Wie berechnen Link-State- und Distanzvektor-Algorithmen Pfade mit den geringsten Kosten?
- Warum ist das Routing in Intra-Domain-Protokolle und das Inter-Domain-Protokoll BGP aufgeteilt?
- Wie verändert Software-Defined Networking, wo und wie Routing-Entscheidungen getroffen werden?
Key concepts
- Internet Protocol (IP)
- IP-Adressierung, Subnetting und CIDR
- Weiterleitungstabellen und längste Präfixübereinstimmung
- Link-State-Routing
- Distanzvektor-Routing
- Autonome Systeme
- Border Gateway Protocol (BGP)
- Steuerungsebene und Datenebene
- Software-Defined Networking
- Netzwerkadressübersetzung (NAT)
Key theories
- Trennung von Datenebene und Steuerungsebene
- Die Netzwerkschicht wird in eine schnelle Datenebene, die jedes ankommende Paket gemäß einer Weiterleitungstabelle weiterleitet, und eine Steuerungsebene, die diese Tabellen über Routing-Protokolle berechnet, zerlegt; Software-Defined Networking geht noch weiter, indem es die Steuerungsebene zentralisiert.
- Routing über Pfade mit den geringsten Kosten
- Routing-Algorithmen modellieren das Netzwerk als gewichteten Graphen und berechnen kürzeste Pfade: Link-State-Algorithmen (Dijkstra) geben jedem Router eine vollständige Topologieansicht, während Distanzvektor-Algorithmen (Bellman-Ford) Schätzungen mit Nachbarn austauschen und iterativ konvergieren.
- Richtlinienbasiertes Inter-Domain-Routing
- Das Routing zwischen unabhängig verwalteten autonomen Systemen wird durch das Border Gateway Protocol gesteuert, das Erreichbarkeitsinformationen verbreitet und es jedem Netzwerk ermöglicht, Geschäfts- und Richtlinienpräferenzen anstelle rein kürzester Pfadmetriken anzuwenden.
Clinical relevance
Die Netzwerkschicht ist die Schicht, die das globale Internet zu einem einzigen erreichbaren System macht: Jedes Paket, das das Internet durchquert, wird von IP-Routern weitergeleitet, und BGP-Entscheidungen zwischen Zehntausenden von autonomen Systemen bestimmen die globale Konnektivität. Software-Defined Networking bildet heute die Grundlage großer Cloud- und Rechenzentrumsnetzwerke und ermöglicht es Betreibern, Traffic Engineering und Isolation zentral zu programmieren. Die Adresserschöpfung führte zum Übergang von IPv4 zu IPv6.
History
Das Internet Protocol wurde in RFC 791 (1981) als verbindungsloser, Best-Effort-Kern der TCP/IP-Architektur spezifiziert. Interne Routing-Protokolle wie RIP und OSPF sowie das externe Protokoll BGP entwickelten sich, um das Routing mit der Skalierung des Internets zu verwalten. Der OpenFlow-Vorschlag von 2008 initiierte Software-Defined Networking, indem er die Weiterleitungstabelle von Switches einem externen Controller zugänglich machte und so die Art und Weise, wie große Netzwerke aufgebaut und verwaltet werden, neu gestaltete.
Debates
- Verteilte Steuerungsebenen versus zentralisierte SDN-Steuerung
- Traditionelles Routing verteilt die Routenberechnung auf alle Router für Robustheit und Autonomie, während Software-Defined Networking die Steuerung für Programmierbarkeit und globale Optimierung zentralisiert; die Debatte über das richtige Gleichgewicht von Zentralisierung, Skalierbarkeit und Ausfallsicherheit dauert an.
Key figures
- Vinton Cerf
- Robert Kahn
- Jon Postel
- Nick McKeown
- Jennifer Rexford
Related topics
Seminal works
- kurose2021
- rfc791
- mckeown2008
Frequently asked questions
- Was ist der Unterschied zwischen Weiterleitung (Forwarding) und Routing?
- Weiterleitung ist die lokale, paketweise Aktion, ein Paket mithilfe der Weiterleitungstabelle von einem Eingangs- zu einem Ausgangsport zu bewegen, und sie erfolgt mit hoher Geschwindigkeit in der Datenebene. Routing ist der netzwerkweite Prozess der Berechnung des Inhalts dieser Weiterleitungstabellen, der von Routing-Algorithmen und -Protokollen in der Steuerungsebene durchgeführt wird.
- Warum wurde IPv6 eingeführt?
- Der 32-Bit-Adressraum von IPv4, etwa vier Milliarden Adressen, wurde unzureichend, als die Anzahl der mit dem Internet verbundenen Geräte stark zunahm. IPv6 verwendet 128-Bit-Adressen, um einen wesentlich größeren Adressraum bereitzustellen, zusammen mit Vereinfachungen des Headers und integrierter Unterstützung für Funktionen wie die Autokonfiguration.