KT Internet Protokolle - Kapitel 7
Kommunikationstechnik ZHAW
Kommunikationstechnik ZHAW
-
- 1 / 51
-
Cartes-fiches
Welches sind die 4 Grundsätze des Internet?
Vier Grundsätze des Internet
- Jedes Netzwerk für sich selbst funktionsfähig
(für Anschluss ans Internet soll keine netzinterne Anpassung nötig sein) - Die Kommunikation basiert auf „best effort“
- Schafft Paket nicht zum Ziel: (falls notwendig) nach kurzer Zeit von der Quelle nochmals übertragen
- Die Verbindung der Netze erfolgt durch Black Boxes (Router)
- In Black Boxes soll über die einzelnen Paketflüsse keine Information gesammelt werden
- Dadurch können sie einfach gehalten werden und sich rasch von irgendwelchen Fehlerzuständen erholen
- Keine zentrale Funktionssteuerung benötigt werden
Wie viele Adressen hat ein Host?
Jeder Host hat mindestens eine Adresse
Multi-Homed Hosts haben mehrere IP-Adressen
Was ist die Funktion von der Subnetzmaske
Subnetzmaske bestimmt Grenze zwischen Netz- und Host-Adress. Zb: 255.255.255.0
Welches ist die Tiefste Adresse im Subnetz?
Netzadresse
Wie berechnet man eine Netzadresse?
Knotenadresse AND Subnetzmaske = Netzadresse
Welches ist die höchste Adresse im Subnetz?
Broadcast
Wie berechnet man Broadcast?
Knotenadresse OR inverti. Subnetzmaske = Broadcast
Was ist an 127.x.x.x speziell?
Ist für Loopback - Test reserviert (kein Netzwerk/-Interface nötig)
Was ist Classless Routing
Die heute Verwendete Struktur mit Netzmaske, die eine Einteilung in Zweierpotenz-Schritten erlaubt.
Problem: B-Netz zu klein, C-Netz zu gross
erlaubt eine flexible Zuteilung von Adressenräumen in Zweierpotenzschritten
Zum Beispiel:
- Aufteilung eines B-Netzes in 16 kleinere Netze
- Zusammenfügen von 4 C-Netzen zu einem Netz mit 1024 Adressen
Welche entscheidenden Vorteile hat die Einführung von Classless Routing gebracht? Erkennen Sie auch Nachteile?
Vorteile: Sinnvollere Zuteilung von Netzen, weniger Adressverschwendung
Nachteile: Neuer Parameter muss mitgeführt werden (Subnetzmaske), Grösse der Routingtabelle
Wie liest ein Router die Routing Tabelle?
- Routing-Tabelle ist nach der Länge der Netzmaske sortiert
- Sie wird von oben nach unten durchsucht
- Verglichen werden nur die Netzadressen
- Der erste Eintrag, der „passt“, wird für die Weiterleitung verwendet
- Der default-Eintrag am Schluss (falls vorhanden) passt immer.
Definiere Flaches und Hierarchische Routing?
Flaches Routing
- Ein Router kennt die Wege explizit zu jedem einzelnen Zielnetz
- Im Extremfall kennt er mehrere Wege —> Redundanz
- Kommt in stark vermaschten Netzen oder im zentralen Bereich (Backbone) von Netzen vor
- Sehr grosse Routing-Tabellen
Hierarchisches Routing (auch Default Routing)
- Ein Router kennt die angeschlossenen End-Netze und genau einen anderen Router, an den er alles schickt
- Dieser nächste Router geht genau gleich vor etc.
- Wird vor allem am „Rand“ von Netzen verwendet (Hosts, Netz-Peripherie)
- Resultiert in kleinen Routing-Tabellen mit jeweils einem Default-Eintrag
Beschreibe das Internet Protokoll Header Packet
Version 4 Bit: Version des IP Protokolls (IPv4 oder IPv6)
Internet Header Length IHL 4 Bit: Länge des Headers
4 Bits -> maximaler Wert 15 -> maximale Länge des Headers inkl. Optionen: 15 * 4 Bytes = 60 Bytes
Type of Service 8 Bit:
DSCP 0–5 Differentiated Services Codepoints
ECN 6–7 Explicit Congestion Notification
Total Length 16 Bits: Gesamte Länge in Bytes, inklusive Header und Nutzdaten
16 Bits -> (2^16) -1 = 65'535 Bytes für die maximale Länge eines Pakets
Time to Live (TTL) 8 Bits: Verbleibende Lebenszeit für ein Paket (Anzahl Hops von Router)
Protocol 8 Bits: ICMP = 1, TCP = 6, UDP = 17
Header Checksum 16 Bits: Prüfsumme über den Header:
Fehler in Nutzdaten von höheren Layern korrigieren
Source Address 32 Bits: IP Adresse Sender
Destination Address 32 Bits: IP Adresse Empfänger
Options / Padding (variabel): Wird selten verwendet
Identification Number 16 Bits: Eindeutige Kennung des ursprünglichen IP-Packets: Erlaubt dem Empfänger, die zusammengehörigen Fragment zu identifizieren
Flags 3 Bits: 1 Bit: Must be Zero, 2 Bit: Don’t Fragment
3 Bit: Last/More Fragments
Fragment Offset 13 Bits: Gibt an wo ein Packet hin gehört (in 8-Byte Einheiten)
Warum braucht es eine Fragmentierung?
Fragmentierung beim Übergang in ein Netz mit kleinerer MTU (maximum transmission unit)
Was passiert bei der Fragmentierung
- Aufteilung der Daten in mehrere Pakete; ausser bei dem letzten gilt
- Die Länge der Nutzdaten im Paket ist ein Vielfaches von 8 Bytes
- Die einzelnen Pakete haben die gleiche und grösstmögliche Länge
- Der Header wird grundsätzlich übernommen, aber Total Length und die Felder für die Fragmentierung werden entsprechend gesetzt
- Total Length erhält jeweils die Länge des Fragments
- Alle Fragmente erhalten den gleichen Wert für das Identification Feld
- In allen Fragmenten ausser dem letzten wird das MF Bit auf 1 (= More Fragments) gesetzt
- Im Fragment Offset Feld wird angegeben, wo im originalen IP Paket die Nutzdaten hingehören (wo sie beginnen, in 8-Byte Einheiten)
Welche Aufgaben müssen gelöst werden, damit ein IP-Datagramm schlussendlich übertragen werden kann? (2 Antworten)
Wie nennt man die Übersetzung der Protokolladresse in die entsprechende Hardware-Adresse?
Addressauflösung
- Knoten a kann KnotencC nicht direkt erreichen => daher Umweg über Router AB
- IP-Adresse von Router AB wird in Hardware-Adresse S übersetzt. Datagram wird in ein Ethernet-Frame verpackt und and die Adresse S verschickt
- Der Router AB packt das Frame aus und stellt fest, dass er das Datagramm an den Router BC senden muss. Er ubersetzt die IP-Adresse vom Router BC in die Hardware-Adresse V, verpackt ¨ das Datagramm in ein Frame mit dieser Adresse und verschickt es.
- Der Router BC packt das Frame aus und stellt fest, dass er das Datagramm an den Knoten c senden muss. Er ubersetzt die IP-Adresse vom Knoten c in die Hardware-Adresse Z, verpackt ¨ das Datagramm in ein Frame mit dieser Adresse und verschickt es an das gewunschte Ziel, den ¨ Knoten c.
Nenne drei Verfahren, mit dem die Protokoll-Adresse in die Hardware-Adresse übersetzt wird.
Algorithmische Umsetzung:
- Falls zwischen den Adressformaten ein algorithmischer Zusammenhang besteht, ist die direkte Bestimmung der MAC-Adresse die eleganteste Losung. ¨ Falls es keinen direkten Zusammenhang gibt, kann er herbeigefuhrt werden, indem man die ¨ MAC-Adresse software-massig umsetzt. Solche Knoten haben dann zwei MAC-Adressen; ¨ eine global- und eine lokal-administrierte
- Vorteil: Eleganz, Effenzienz und Sicherheit.
- Nachteil: Spezielle Treiber werden benötigt (z.B. bei Netzwerkdruckern)
Tabellengesteuerte Übersetzung:
- Vorteil: Sehr einfach, Vollständige Kontrolle
- Nachteil: Unterhalt der Tabellen, Fehleranfällig wenn manuell ausgeführt
Nachrichtentausch:
- Bei diesem Verfahren fordert ein Knoten, der eine Adresse auflosen ¨ muss, die anderen Knoten auf, ihm die erforderlichen Informationen zu senden. Der Nachteil liegt im zusatzlichen Verkehr. Im extremsten Fall w ¨ urden f ¨ ur jedes zu sendende Paket zwei ¨ zusatzliche Frames (eine Adressanfrage und eine Antwort) ¨ ubertragen.
Hinweis: ARP (Adress Resolution Protocol) kombiniert die letzten beiden Punkte
Welche Adressauflösungsverfahren werden bei ARP (Address Resolution Protocol) kombiniert?
Nachrichtentausch und Tabellengesteuerte Übersetzung
Erkläre das Prinzip von ARP
Muss ein Knoten eine Protokoll-Adresse in eine Hardware-Adresse umsetzen, so sendet er an die Broadcast-Adresse ein ARP-Request-Paket. Dieses wird von allen Knoten im lokalen Netz empfangen. Der Knoten, der die entsprechende IP-Adresse besitzt, sendet als Antwort ein ARPReply-Paket an den anfragenden Knoten. Im Gegensatz zu den ARP-Anfragen werden also ARPAntworten nicht mit Broadcast versandt.
Wie lautet bei ARP die Target-MAC-Address? (Notation mit ':')
00:00:00:00:00:00
Inwiefern unterscheiden sich bei ARP das Format des ARP-Request und der ARP-Reply?
Beim Request wird als Ziel-Adresse eine Broadcast-Adresse angegeben und das Feld ” Hardware Address of Target“ ist null (weil nicht bekannt).
ARP-Verfahren: Wie wird verhindert, dass für jedes zu sendende IP-Datagramm zusätzlich ein ARP-Request und ARP-Reply-Paket versendet werden müsste?.
Jeder Knoten führt eine Tabelle, ein sogenanntes ARP-Cache, in welche er die ihm bekannten Protokoll/Hardware-Adresspaare einträgt. Diese Einträge werden mit der Zeit gelöscht (Vergleichbar mit Garbage Collector in Java)
Für was werden Gratuitious ARP-Requests verwendet?
Ein Gratuitous ARP-Request wird verwendet, um IP-Adresskonflikte zu erkennen. Dazu versendet der Knoten nach jeder Adresszuweisung beim Booten oder bei Anderungen der IP-Adresse einen ARP-Request fur seine eigene IP-Adresse Falls diese IP-Adresse schon vergeben ist, also ein Konflikt besteht, wird der anfragende Knoten einen ARP-Reply empfangen. Keine Antwort bedeutet also, dass (zurzeit) kein Konflikt besteht.
Wird nach dem Setzen oder Ändern der IP-Adresse ein Gratuitous ARP-Reply verschickt?
Ja, mit dem Zweck, die ARP-Cache der anderen Knoten zu benachrichtigen.
Welches Problem löst RARP?
Eine IP-Adresse für eine bestimmte Ethernet/MAC-Adresse muss gefunden werden.
RARP steht für Reverse Address Resolution Protocol
Für welchen Zweck wird das ICMP Protokoll verwendet?
Gelegentlich muss ein Router oder Empfanger-Host dem Sender eine Mitteilung zurücksenden, um zum Beispiel einen Fehler zu melden. Zu diesem Zweck wird das Internet Control Message Protocol (ICMP) benutzt.
Muss ICMP in jeder Implementierung des IP Protokolls vorhanden sein?
Nenne ein Beispiel wieso ein ICMP Meldung verschickt werden muss.
zum Beispiel wenn ein Datagramm das Ziel nicht erreichen kann, weil ein Router nicht genügend Buffer-Kapazität besitzt, aber auch wenn ein Router einen kürzeren Weg für ein Datagramm erkennt.
Können mithilfe von ICMP-Meldungen Fehler nur gemeldet oder auch behoben werden?
Nenne einige ICMP-Fehlermeldungen
- Destination Unreachable
- Sourche Quench
- Redirect
- Time Exceeded
- Parameter Problem
Nenne einige ICMP Informationsmeldungen
- Echo Request / Reply
- Timestamp Request / Reply
- Information Request / Reply
- Ein Router stellt anhand seiner Routing Tabelle fest, dass das im Datagramm angegebene Ziel nicht erreichbar ist.
- Ein Router stellt fest, dass das Port, über welches das Diagramm gesendet werden müsste nicht aktiv ist.
- Der Ziel-Host kann mit dem Datagramm nichts anfangen weil z.B. das höhere Protokoll oder der Applikationsport nicht bekannt ist.
- Ein Router müsste ein Datagramm zur Weiterleitung fragmentieren, dessen Don't Fragment Flag gesetzt ist.