Netzwerkschicht Flashcards
Was ist die Aufgabe der Netzwerkschicht?
Daten von der nächsthöheren Schicht (Transportschicht) des Senders entgegennehmen
In Datagramme verpacken
Durch das Netzwerk leiten
Auspacken des Vermittlungspakets beim Empfänger
Ausliefern der Daten an die nächsthöhere Schicht (Transportschicht) des Empfängers
Die Transportschicht ist zuständig für die Kommunikation zwischen den Anwendungen und die Netzwerkschicht für die Kommunikation zwischen den Endgeräten
Bemerkung: Netzwerkschicht existiert in jedem Host und Router !
Was muss vor Datenübertragen geschehen?
Bevor Daten übertragen werden können, wird eine virtuelle Verbindung vom Sender zum Empfänger aufgebaut
Nach der Übertragung wird diese Verbindung wieder abgebaut
Mit der Verbindung werden meistens auch Ressourcen im Netzwerk reserviert.
Das IP-Protokoll selbst baut keine Verbindung auf!
Was ist eine Virtuelle Leitung und wie funktioniert sie?
Aufbau einer Verbindung, bevor Daten transportiert werden können. Danach: Abbau der Verbindung
Jedes Paket beinhaltet einen VC-Identifier (VC = Virtual Channel, engl. für Virtuelle Leitung) und keine Zieladresse
Jeder Router auf dem Pfad vom Sender zum Empfänger verwaltet einen Zustand für diese Verbindung
Ressourcen von Links und des Routers können einer virtuellen Leitung zugeordnet sein (zugeordnete Ressourcen = vorhersagbare Dienstgüte)
Wie ist ein Datagrammnetzwerk aufgebaut?
Kein Verbindungsaufbau auf der Netzwerkschicht
Router halten keinen Zustand für Ende-zu-Ende-Verbindungen
Auf Netzwerkebene gibt es das Konzept einer “Verbindung” nicht
Pakete werden unter Verwendung einer Zieladresse weitergeleitet
Pakete für dasselbe Sender-Empfänger-Paar können unterschiedliche Pfade nehmen
Warum benutzt man Datagrammnetzwerke (IP) und Virtuelle Leitungen (ATM) ?
Datagrammnetzwerke:
Datenaustausch zwischen Computern
Keine Echtzeitanforderungen
Mächtige Endsysteme
Können sich anpassen und Fehler beheben
Konsequenz: einfaches Netzwerk, Komplexität in den Endsystemen
Virtuelle Leitungen:
Stammt von der klassischen Telefontechnologie ab
Menschliche Kommunikation
Hohe Anforderungen an Echtzeit und Zuverlässigkeit
Dienstgarantien sind notwendig
Einfache Endsysteme
Telefone
Konsequenz: einfache Endsysteme, Komplexität im Netzwerk
Was sind die Aufgaben eines Routers?
Ausführen von Routing-Algorithmen und -Protokollen
RIP, OSPF, BGP
Weiterleiten von Datagrammen von einem eingehenden zu einem ausgehenden Link
Wie läuft die Verarbeitung im Eingangsport?
- Leitungsabschluss: physikalische Schicht, Bits empfangen
- Verarbeitung der Sicherungsschicht (Protokoll, Datenentkapselung)
- Nachschlagen, Weiterleiten, Queuing:
Suche nach einem geeigneten Ausgangsport
Dezentral, Kopie der Routing-Tabelle (oder Teile davon) notwendig
Ziel: Behandlung der Pakete mit „line speed“, also mit der Geschwindigkeit der Eingangsleitung des Ports
Puffern von Paketen, wenn die Switching Fabric belegt ist

Was sind die Drei verschiedenen Arten von Switching Fabrics?

Wie funktioniert switching über den Speicher?
Erste Routergeneration:
„Normale“ Rechner, Switching wird über die CPU durchgeführt
Paket von Eingangsport in den Hauptspeicher kopieren
Paket vom Hauptspeicher in den Ausgangsport kopieren
Geschwindigkeit durch Speicherbus beschränkt!
• Zwei Speicherzugriffe: einer zum Schreiben, einer zum Lesen

Wie funktioniert switching über einen Bus?
Alle Ports teilen sich einen gemeinsamen Bus
Eingangsport voranstellt dem Paket ein Label und legt es auf den Bus
Alle Ausgänge empfangen das Paket, nur der übereinstimmende Ausgangsport behält das Paket
Die gesamte Kommunikation erfolgt über den Bus, dieser beschränkt die Bandbreite des Routers
Aber: nur eine Busoperation (nicht zwei!)

Wie funktioniert switching über ein Spezialnetz?
Ports sind über ein Netzwerk miteinander verbunden
Beispielsweise alle Eingangsports über einen Crossbar mit allen Ausgangsports
Mehrere Pakete gleichzeitig weiterleiten Nicht mehrere Eingänge mit dem selben Ausgang
Weitere Fortschritte: Komplexere Verbindungsnetze mit mehreren Ebenen von Switching-Elementen Auch mehrere Eingänge mit dem selben Ausgang

Wie funktioniert die Verarbeitung im Ausgangsport?analog zum Eingangsport
analog zum Eingangsport
Einfacher, da die Entscheidung über die Weiterleitung schon getroffen ist

Warum werden im Switch Pakete gepuffert und wie werden sie gepuffert? Wie groß sollte der Puffer sein?
Puffern von Paketen, wenn sie schneller aus der Switching Fabric kommen, als sie auf die Leitung gelegt werden können
Auswirkungen:
Gepufferte Pakete werden verzögert
Wenn der Puffer überläuft, müssen Pakete verworfen werden
„Scheduling Discipline“: bestimmt die Reihenfolge, in der gepufferte Pakete auf die Leitung gelegt werden
RFC 3439 beschreibt folgende Faustregel: Die Größe des Puffers sollte der Rundlaufzeit (RTT, z.B. 250 ms) multipliziert mit der Datenrate des Links entsprechen
Neuere Empfehlungen: bei N Datenflüssen und Link-Datenrate C:
RTT*C/Wurzel(N)
Warum kann es dazu kommen, dass Pakete im Inputport gepuffert werden müssem und welche Auswirkungen hat es?
Wenn die Switching Fabric ein Paket nicht direkt weiterleiten kann, muss dieses im Eingangsport gepuffert werden
Dort kann es ein Paket blockieren, welches eigentlich bereits durch die Switching Fabric geleitet werden könnte
Head-of-Line (HOL) Blocking
Wie ist das IPv4-Datagramm aufgebaut?
Version: 4 Bit (Bei IPv4 ist es 4 logisch nh?)
Header Length: 4 Bit (4 bedeutet zB. 4x32 Bit)
Dienstart/TOS: 8 Bit (Priorisierung)
Datagrammlänge/Total Length: 16 Bit (Gibt die Komplette Größe des Packets in Byte an max. 64KByte)
Identifikation: 16 Bit (Wichtige Nummer für Fragmentierung)
Flags: 3 Bit (Gibt an ob Fragmentiert ist)
Fragment Offset: 13 Bit (Nicht ganz so wichtig ist für Fragmentierung)
TTL(Time to live): 8 Bit Maximale Anzahl der noch zu durchlaufenden Router (wird von jedem Router dekrementiert)
Protokoll der Darüberliegenden Schicht: 8 Bit (Selbsterklärend)
Header Prüfsumme: 16 Bit (rechnen der Prüfsumme)
Quell-IP-Adresse: 32 Bit
Ziel-IP-Adresse: 32 Bit
Optionen: 32 Bit (Optional)
Daten: Rest

Was versteht man unter IP-Fragmentierung?
Links haben eine Maximalgröße für Rahmen diese nennt man Maximum Transmission Unit (MTU)
Verschiedene Links haben unterschiedliche MTUs
IP -Datagramme müssen unter Umständen aufgeteilt werden
Aufteilung (Fragmentierung) erfolgt in den Routern
Zusammensetzen (Reassembly) erfolgt beim Empfänger

Was sagen die 3 Flag Bits über die Fragmentierung aus?
- Bit muss immer 0 sein
- Bit gibt an ob es Fragmentiert werden darf (bei 1 darf nicht)
- Gibt an ob es Fragmentiert ist (More fragments bit)
Wie ist die IP-Adressierung grob aufgebaut?
IP-Adresse: 32-Bit-Kennung für das Interface (Schnittstelle) eines Endsystems oder eines Routers
Interface: Verbindung zwischen dem System und dem Link
Wird normalerweise durch eine Netzwerkkarte bereitgestellt
Router haben typischerweise mehrere Interfaces
Endsysteme können ebenfalls mehrere Interfaces haben
Jedes Interface besitzt eine IP-Adresse
Woraus besteht die IP-Adresse, was ist eine Subnetzmaske?
IP-Adresse:
Zwei Bestandteile:
netid: die oberen Bits der Adresse, identifiziert ein Netzwerk
hostid: die unteren Bits der Adresse, identifiziert ein Interface eines Systems
Was ist ein (Sub-)Netzwerk?
Alle Interfaces mit derselben netid formen ein Netzwerk
Alle Interfaces eines Netzwerkes können sich direkt (ohne einen Router zu durchqueren) erreichen

Wie bekommt ein Host seine IP-Adresse und wie läuft dies ab?
Über das Protokoll DHCP (Dynamic Host Configuration Protocol:)
Dazu gibt es 4 Schritte:
- DHCPDiscover: Der Host sucht per Broadcast nach dem DHCP Server
- DHCPOffer: DHCP Server bietet IP-Adresse an
- DHCRequest: Host fragt die angebotene IP-Adresse an
- DHCPAck: DHCP-Server schickt die IP-Adresse
Der DHCP Server weist dem Interface die IP-Adresse, die Subnetzmaske, den standart Gateway und ein DNS Server zu. Dabei speichert er die vergebene IP-Adresse, MAC-Adresse des Hosts und Lease time.
DHCP benutzt UDP
Aus welchen Gründen gibt es NAT?
Häufig hat man nur eine IP-Adresse, aber mehrere Endsysteme
Diese ist meist nur temporär (per DHCP) zugewiesen
Man möchte bei einem Provider-Wechsel nicht die IP-Adressen der Endsysteme verändern
IP-Adressen im eigenen Netzwerk sollen aus Sicherheitsgründen nicht vom Internet aus sichtbar sein
Interne IP-Adressen sollen veränderbar sein, ohne dass der Rest des Internets darüber informiert werden muss
Wie funktioniert NAT?
Der Router hat eine öffentliche IPv4 Adresse und alle anderen Geräte sind in einem Intranetz drin mit einer privaten IP-Adresse. Werden Daten ins Internet geschickt ist die Quell-IP-Adresse die, des routers und der NAT übersetzt die Private in die öffentliche.
Damit der Router weiß, welches Gerät welches Paket bekommen soll, weist er seine Portnummern die privaten IP-Adressen zu
Weshalb steht NAT in der Kritik?
Router sollten nur Informationen der Schicht 3 verwenden
Zugriff auf Portnummer, die zur anderen Schicht gehört
Verletzung des sogenannten Ende-zu-Ende-Prinzips (end-to-end principle):
Transparente Kommunikation von Endsystem zu Endsystem, im Inneren des Netzes wird nicht an den Daten „herumgepfuscht“
Bei NAT: Der Anwendungsentwickler muss die Präsenz von NAT-Routern berücksichtigen.
Bemerkung: NAT dient auch der Bekämpfung der Adressknappheit im Internet. Dies sollte besser über IPv6 (s. später) erfolgen
Wie sieht die Time exceeded Nachricht von ICMP aus?
IP Header (20 Byte)
Type (8 Bit)
Code (8 Bite)
Checksumme (16 Bit)
32 Freie Bit
IP-Header (inkl. Optionen) + die ersten 8 Byte der Daten des verworfenen IP-Paketes

Wofür benutzt man ICMP?
Wird von Hosts und Routern verwendet, um Informationen über das Netzwerk selbst zu verbreiten
Fehlermeldungen: Host, Netzwerk, Port, Protokoll nicht erreichbar
Echo-Anforderung und Antwort (von ping genutzt)
Gehört zur Netzwerkschicht, wird in IP-Datagrammen transportiert

Wie funktioniert ICMP traceroute?
Man setzt die TTL auf 1 damit man eine Time exceeded Meldung bekommt und nach jeder erhaltenen Fehlermeldung erhöht man die TTL um 1. Am Ende hat man alle Server, die ein Paket durchläuft zum Ziel und zu jedem Server den Ping.
Traceroute berichtet die IP-Adresse des Interface, auf dem das Paket ankommt!
Wie sieht das IPv6 Datagramm aus?
Version
Verkehrsklasse
Flow-Label
Nutzdatenlänge (In Bytes)
Nächster Header
Hop-Limit (Wird von jedem Router um 1 verringert Gleich NULL? Datagramm verwerfen)
Quelladresse (128 Bit)
Zieladresse (128 Bit)
Daten
Was hat sich von IPv4 zu IPv6 geändert?
Fragmentierung: entfernt
Checksumme: entfernt, um die Verarbeitung in den Routern zu erleichtern
Optionen: als separate Header, die aus dem IP-Header verwiesen werden können
Werden durch das “Nächster Header”-Feld angezeigt
Einfachere Behandlung in Hosts und Routern
ICMPv6: neue Version von ICMP
Zusätzliche Pakettypen, z.B. “Packet Too Big”
Funktionen zur Verwaltung von casting, Unicast, Anycast und Multicast
Wie funktioniert der Dual-Stack Ansatz?
IPv6 Knoten können IPv4- und IPv6-Datagramme senden und empfangen
Durch DNS erkennen, ob Kommunikationspartner IPv6- fähig oder nicht
IPv6-fähige Knoten können aneinander letztendliche nur IPv4-Datagramme senden

Wie funktioniert Tunneling
IPv6-Datagramm wird im Datenteil von IPv4- Datagrammen durch das klassische IPv4- Netzwerk transportiert
