• Keine Ergebnisse gefunden

UnfragmentiertesIP‐PaketFragmentiertes IP‐Paket

N/A
N/A
Protected

Academic year: 2022

Aktie "UnfragmentiertesIP‐PaketFragmentiertes IP‐Paket"

Copied!
17
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Grundlagen der Rechnernetze

Internetworking

(2)

Übersicht

• Grundlegende Konzepte

• Routingverfahren

• Internet‐Routing

• Limitierter Adressbereich

• IP Version 6

2 Grundlagen der Rechnernetze ‐Internetworking

(3)

Grundlegende Konzepte

(4)

H6 R3

R1 H1

Erinnerung: Internet und IP

N1

N3 N2

R1

H1 H2

H3

R3

R2 H4

H5 H6

H9

H8

H7

4 Grundlagen der Rechnernetze ‐Internetworking

TCP IP ETH

IP

ETH FDDI

IP

FDDI ETH

TCP IP ETH

(5)

IP‐Service‐Model

Das IP‐Service‐Model muss so definiert sein, dass es auch von allen  potentiell darunter liegenden Protokollen umgesetzt werden kann.

Beispielsweise wäre „jedes Paket wird mit höchstens 1ms 

Verzögerung garantiert ausgeliefert“ ein nicht einhaltbares Service‐

Versprechen.

Das Service‐Model von IP ist einfach:

• Eindeutiges Adressierungsschema

• „Best Effort“ Datagram Delivery Service

• Datagramme können verloren gehen

• z.B. fehlerhafte Datagramme auf einem Router

• oder überlasteter Router

• Folge von Datagrammen muss nicht in derselben  Reihenfolge empfangen werden

• Datagramme können mehrfach ausgeliefert werden

(6)

Grundlegende Konzepte

Datagram‐Delivery‐Service

Grundlagen der Rechnernetze ‐Internetworking 6

(7)

IP‐Datagram

Version HLen TOS Length

Ident Flags Offset

TTL Protocol Header Checksum

SourceAdr DestinationAdr

Options (variable) Pad (variable) Data

0      4      8       16       19       31

(8)

Fragmentierung und Reassembly

Grundlagen der Rechnernetze ‐Internetworking 8

H1 R1

R2 R3 H2

ETH IP (1400) FDDI IP (1400) PPP IP (512) PPP IP (512) PPP IP (376)

ETH IP (512) ETH IP (512) ETH IP (376)

Beispiel:

• H1 sendet Daten der Größe 1400 Bytes an H2

• MTU von ETH = 1500 Bytes

• MTU von FDDI = 4500 Bytes

• MTU von PPP = 532 Bytes

(Die Path‐MTU in diesem Beispiel = 532 Bytes)

(Dargestellt ist die Payload, also Payload + 20‐Byte‐Header = MTU) Reassembly findet nur auf dem Empfänger‐Host H2 statt

(9)

Fragmentierung und Reassembly

Start des Headers

UnfragmentiertesIPPaket Fragmentiertes IPPaket

Bemerkung: durch Speichern eines Offsets  anstatt einer ID ist weitere Fragmentierung  eines schon fragmentierten Paketes 

Ident = x 0 Offset = 0 Rest des Headers

1400 Bytes Daten

Start des Headers

Ident = x 1 Offset = 0 Rest des Headers

512 Bytes Daten Start des Headers

Ident = x 1 Offset = 64 Rest des Headers

512 Bytes Daten Start des Headers

Ident = x 0 Offset = 128 Rest des Headers

Original IP‐Paket und dessen Fragmente  lassen sich durch eine eindeutige Ident‐

Nummer zueinander zuordnen.

Offset*8 = Byte‐Position in den  Originaldaten

(10)

Ein wenig Praxis

Grundlagen der Rechnernetze ‐Internetworking 10

Welche MTU hat mein Netzwerkinterface?

[Linux: ifconfig, Windows PowerShell: Get-NetIPInterface]

Was ist die Path‐MTU zur Adresse uni‐koblenz.de?

[Linux/Windows: ping bzw. Linux: tracepath]

ifconfig bzw. Get-NetIPInterface zeigt zu jedem Netzwerkinterface die MTU mit an

Zieladresse: uni-koblenz.de

Verbiete Fragmentierung: –M do (Linux) bzw. –f (Windows)

Setze die Anzahl Datenbytes, z.B. 2345: –s 2345 (Linux) bzw. –l 2345 (Windows) Teste Ping nur einmal: –c 1 (Linux) bzw. –n 1 (Windows)

Erhöhe sukzessive Anzahl Datenbytes bis ping einen Fehler erzeugt.

Ergibt in diesem Beispiel 1464

unter Linux: ping uni-koblenz.de –M do –s 1464 –c 1

unter Windows: ping uni-koblenz.de –f –l 1464 –n 1

Also eine Path‐MTU von 1464 + Headergröße [20 Bytes für IP plus 8 Bytes für ICMP] = 1492 Oder mittels tracepath uni-koblenz.de: liefert unmittelbar die Path‐MTU

(11)

Grundlegende Konzepte

Adressierung

(12)

IP‐Adresse:

Netzklassen:

Subnetting

Erinnerung: Adressierung und Forwarding

Grundlagen der Rechnernetze ‐Internetworking 12

Class A 0 Netz Host

7 24

1 0 Netz Host

14 16

Class B

1 1 0 Netz Host

21 8

Class C

10101011 01000101 11010010 11110101

171.69.210.245

1 0 Netz Host

14 16

Zum Beispiel Class B Adresse

11111111 11111111 11111111 (255.255.255.0)

Subnetz Maske 00000000

Netznummer

Ergebnis Subnetz Host

(13)

Erinnerung: Adressierung und Forwarding

Supernetting (CIDR)

Internet‐Anbieter Advertise

128.112.128/21

128.112.128/24

128.112.135/24

Kunden‐Netze

(14)

Host Configuration (DHCP)

Grundlagen der Rechnernetze ‐Internetworking 14

• IP‐Adressen haben einen Netz‐ und Host‐Anteil

• Im Gegensatz zu Ethernet‐Adressen kann die IP‐Adresse damit  nicht fest mit der Netzhardware „verdrahtet“ sein. Warum?

• Es muss zumindest eine Möglichkeit bestehen, die IP‐Adressen  manuell zu konfigurieren. Umständlich!

• Besser: dynamische Zuweisung von IP‐Adressen.

• Bei der Gelegenheit kann man dem DHCP‐Client auch gleich den  Default‐Router mitteilen.

N S DHCP‐Server

DHCP Relay H

IP‐Broadcast DHCPDISCOVER

IP‐Unicast

DHCPDISCOVER

(15)

Grundlegende Konzepte

Weiteres (ICMP und Tunelling)

(16)

Beispiel:

ICMP‐Redirect

Error‐Reporting (ICMP)

Grundlagen der Rechnernetze ‐Internetworking 16

ICPM (Internet Control Message Protocol) definiert eine Sammlung von Fehler‐ und Kontrollnachrichten unter IPv4.

Beispiel für Fehlernachrichten, die an den sendenden Host verschickt werden:

• Unerreichbarer Ziel‐Host

• Reassembly‐Prozess fehlerhaft

• TTL=0 erreicht

• IP‐Header‐Checksumme falsch Beispiel für Control‐Nachricht:

ICMP‐Redirect

Des Weiteren Debugging‐Tools:

ping, traceroute

H1

H2

R2 R1

Nachricht an H2 Default‐Router: R1

(17)

IP‐Header (20 Bytes)

ICMP Header (8 Bytes)

ICMP Payload (optional)

ICMP Paketformat (IPv4)

Version HLen TOS Length

Ident Flags Offset

TTL Protocol Header Checksum

SourceAdr DestinationAdr

0      4      8       16       19       31

Type of Message Code Checksum

Header Daten

Payload Daten

Header ChecksumChecksum

Beispiel: Ping

Echo Request: Type=8, Code = 0

Echo Reply: Type=0, Code = 0

Header Daten in beiden Fällen: Identifier (Bit 0 bis 15), Sequence Number (Bit 16 bis 31) [z.B. Linux: eindeutiger Identifier für jeden ping‐Prozess und wachsende Sequenznummer  innerhalb des ping‐Prozesses]

Referenzen

ÄHNLICHE DOKUMENTE

ICPM (Internet Control Message Protocol) definiert eine Sammlung von Fehler‐ und Kontrollnachrichten.

ICPM (Internet Control Message Protocol) definiert eine Sammlung von Fehler‐ und Kontrollnachrichten.

Intuitively: The predicting algorithm produces an l-tuple according to q i−1 , given that z i−1 is generated by the PRBG. If dst answers 0, then it thinks that the l-tuple was

Die Daten sind also über einen direkten Blok, einen zweifah indirekten Blok und einen.. dreifah indirekten Blok erreihbar. Ein Blok enthält 2048 Byte, ein Zeiger

Ein Betriebssystem verwendet Paging, um für die vershiedenen Prozesse jeweils einen vir-.. tuellen Hauptspeiher

für das Stak-Segment oder kann der Stak über die vorhandenen Seitentabellen zweiter.. Stufe adressiert

Ein Betriebssystem verwendet Paging, um für die vershiedenen Prozesse jeweils einen vir-.. tuellen Hauptspeiher

mentiert werden, dass es niht in einen Deadlok geraten kann; wenn ja, wie; wenn nein,.. Aufgabe