21
R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. Juni 2005 UDP-, MTU- und IP- UDP-, MTU- und IP- Fragmentierung Fragmentierung Jörn Stuphorn [email protected] Universität Bielefeld Technische Fakultät

UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

UDP-, MTU- und IP-UDP-, MTU- und IP-FragmentierungFragmentierung

Jörn [email protected]

Universität BielefeldTechnische Fakultät

Page 2: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Stand der VeranstaltungStand der Veranstaltung13. April 2005 Unix-Umgebung20. April 2005 Unix-Umgebung27. April 2005 Unix-Umgebung

4. Mai 200511. Mai 200518. Mai 2005 Einführung in Bridging, Routing, ...25. Mai 20051. Juni 20058. Juni 2005 Statisches Routing

15. Juni 200522. Juni 2005 TCP-Verbindungen und -Datenfluss29. Juni 2005

6. Juli 2005 NAT und Firewalls

13. Juli 200520. Juli 2005 Sichere Anwendungen

ARP, ICMP, pingIP-Adressen & Subnetzmasken

IOS, Spanning-TreeIOS Befehle, Brigding, Routing

UDP-, MTU- und IP-Fragmentierung

DHCP und NTP

Verschlüsselung, Vertraulichkeit, Authentisierung

Page 3: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

RoutingRoutingApplication

Layer

NetworkLayer

Link Layer

IP

ARPHardwareInterface

RARP

Media

ICMP IGMP

TransportLayer

TCP UDP

UserProcess

UserProcess

UserProcess

UserProcess

Page 4: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

UDP & TCPUDP & TCP

UDP - User Datagram Protocol

Datagramm orientiertUnzuverlässig, VerbindungslosEinfachUnicast und Multicast

Übertragungfür einige Anwendungen

nützlich (z.B. Multimedia)oft für Dienste verwendet

Netzwerk Management (SNMP), Routing (RIP), Namensauflösung(DNS), etc.

TCP - Transmission Control Protocol

Stream orientiertZuverlässig, Verbindungs-

orientiertKomplexNur Unicast ÜbertragungFür die meisten Internet

Anwendungen verwendet:: Web (http), eMail (smtp),

Dateiübertragung (ftp), Terminal (telnet), etc.

Die beiden verbreiteten Transport-Layer Protokolle des Internets:

Page 5: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

UDPUDP Unterstützt unzuverlässige Übertragung von Datagrammen UDP erweitert Host-to-Host Übertragung von IP-Datagramm um

Application-to-Application Service UDP fügt multiplexing und demultiplexing hinzu

UDP

IP IPIP IP IP

UDP

Applications Applications

Page 6: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

UDP HeaderUDP Header Port Nummern identifizieren sendende und empfangende

Anwendung Maximaler Port: 65535 (16bit)

Nachrichtenlänge zwischen 8 und 65535 Byte Checksum für UDP Header und UDP Daten

IP header UDP header UDP data (payload)

UDP message length Checksum

20 bytes 8 bytes

0 15 16 31

Source Port Number Destination Port Number

Page 7: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Port NummernPort Nummern UDP und TCP verwenden Port Nummern um Anwendungen zu

identifizieren Global Eindeutige Adresse im Transport-Layer:

IP Adresse Port Nummer

IP

TCP UDP

UserProcess

Demultiplex

based on

Protocol field in IP

header

UserProcess

UserProcess

UserProcess

UserProcess

UserProcess

Demultiplexbased on

port number

Page 8: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

UDP ExperimentUDP Experiment Packetgenerator: hping3 Exercise 4

sock -u -i -ni -w10000 remote_host echo

Beobachte die übertragenen Pakete Beschreibe die Pakete und die Felder, die für

Fragmentierung wichtig sind

Exercise 5 Rufe den folgende Befehl mit variierenden SIZE auf sock -u -i -n1 -w<SIZE> remote_host echo

Wie groß ist die maximale Größe eines UDP Datagramms wenn Fragmentierung erlaubt ist?

Page 9: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Rückblick: MTURückblick: MTU DataLink Protokoll hat begrenzte Rahmengröße Rahmengröße wirkt sich auf maximale Datenmenge, die ein IP

Datagramm kapseln kann, aus. MTU (Maximum Transmission Unit)

Was passiert, wenn IP Datagramm größer als MTU ist? Datagramm wird fragmentiert

Was passiert, wenn Route über Netzwerke mit unterschiedlichen MTUs läuft? Die niedrigste MTU wird als Pfad MTU (Path MTU)

verwendet.

MTUs for various data link layers:Ethernet: 1500 FDDI: 4352802.3: 1492 ATM AAL5: 9180802.5: 4464 PPP: 296

Page 10: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

IP Fragmentation (1)IP Fragmentation (1) Host A sendet ein großes IP Datagramm and Host B Wie geht der Router damit um?

IP Router splittet das Datagramm in mehrere Fragmente Die Größe aller Fragmente (bis auf das Letzte) ist ein Vielfaches

von 8Byte.

FDDIRing

RouterHost A Host B

Ethernet

MTUs: FDDI: 4352 Ethernet: 1500

Page 11: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

IP Fragmentation (2)IP Fragmentation (2) Fragmentierung kann auf beim Sender oder einer

Zwischenstation passieren. Das gleiche Datagramm kann öfters fragmentiert werden. Zusammensetzen der empfangenen Fragmente erfolgt nur beim

Empfänger

IP datagram H Fragment 1 H1Fragment 2 H2

Router

Page 12: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

IP Header InformationenIP Header Informationen Die folgenden Header Felder betreffen Fragmentierung:

Identification für alle Fragmente gleich Flag beinhaltet ein „more fragments“ bit

(ein „don't fragment bit“ existiert auch) Fragment offset zeigt den offset (Vielfaches von 8Byte) an Total length gibt die Größe des Fragments an.

version(4 bits)

headerlength

Type of Service

/TOS

Total Length (in bytes)

Identification flags Fragment Offset

......

TTL Time-to-Live(8 bits)

Protocol(8 bits) Header Checksum (16 bits)

Page 13: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Pfad MTU ErmittlungPfad MTU Ermittlung Ein host sendet eine Folge von IP datagrammen mit

unterschiedlichen Größen und dem „don't fragment“-Flag gesetzt.

Page 14: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Experiment MTU ErmittlungExperiment MTU Ermittlung Exercise 6

Verbinde die Router wie abgebildet Telnet zu redem Router (RIP aktivieren) Router2: eth1 MTU auf 500 Byte setzen Teste Verbindung mit ping von Host_A nach Host_B Starte sock Server auf Host_B sock -u -s 5555 Host_A: sock -i -u -n10 -w1200 -p remote_host 5555 Host_A: sock -i -u -n10 -w1200 -p5 remote_host 5555

Ethernet Router

Host_A

60.1/24

192.168.60.*

EthernetRouter192.168.62.*

Host_B

Ethernet192.168.61.*61.1/24

61.2/24 62.1/2462.10/24

60.10/24

Page 15: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Client/Server ArchitekturClient/Server Architektur Die meisten Netzwerkanwendung sind als Client/Server

Systeme konzipiert Ein Server bietet die Netzwerkdienst an Clients greifen auf diese Dienste zurück

Server benutzen bekannte Ports und laufen rund um die Uhr (im optimalen Fall)

Client benutzt einen kurzlebigen Port, der nach Verbindungsabbau wieder frei gegeben wird

Wenn ein Client einen Dienst anfordert, der nicht angeboten wird: UPD: ICMP port unreachable Nachricht wird zurückgegeben TCP: Verbindung wird zurückgesetzt.

Page 16: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

TFTPTFTP Trivial File Transfer Protocol Verwendet UDP (nicht verbindungsorientiert und unzuverlässig)

Unregelmäßige Übertragung kleiner Dateien Durchsatz ist nicht übermäßig wichtig

Verwendet stop-and-wait Flow Windows Control Algorithmus Warte auf ACK bevor nächstes Paket gesendet wird Ein verlorenes Paket erzeugt Timeout und Retransmission

Konzipiert für plattenlose Systeme (Thin-Clients) um Konfigurationsinformationen während Bootvorgang abzurufen

Page 17: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

FTPFTP File Transfer Protocol Verwendet 2 TCP Verbindungen

Kontrolle: Port 21 auf dem Server Daten: Port 20 auf dem Server

Page 18: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

Verbindungs ManagementVerbindungs Management Kontrollverbindung bleibt während client/server Verbindung aktiv Verbindungsaufbau der Datenverbindung wird vom Client gesteuert Client wählt einen vorübergehenden Port für sein Ende der

Datenverbindung Client sendet PORT Kommando an Server über Kontrollverbindung Server überträgt Daten an Client-Port Ermöglicht viele FTP-Sitzungen von vielen Clients zu einem Server

Page 19: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

TFTP ExperimentTFTP Experiment Exercise 8

Übertragung einer großen Datei mit TFTP Beobachte Transfer mit ethereal

Kopiere Datei von yoda nach windu mit TFTP

Welche Nachrichten wurden übertragen?

Page 20: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

FTP ExperimentFTP Experiment Exercise 9

Übertragung einer großen Datei mit FTP Beobachte Transfer mit ethereal

Kopiere Datei von yoda nach windu mit FTP

Welche Nachrichten wurden übertragen?

Page 21: UDP-, MTU- und IP- Fragmentierungrvs.uni-bielefeld.de/lectures/LDK/S05/10_fragmentation.pdf · R|V|S Rechnernetze und Verteilte Systeme Bielefeld, den 15. J15. Juni uni2005 2005 Routing

R|V|SRechnernetze undVerteilte Systeme

15. Juni 2005Bielefeld, den 15. Juni 2005

FTP / TFTP VergleichFTP / TFTP Vergleich Exercise 7

Übertragung einer großen Datei mit TFTP Beobachte Transfer mit ethereal

Kopiere Datei von yoda nach windu mit FTP Notiere Übertragungsdauer

Kopiere Datei von yoda nach windu mit TFTP Notiere Übertragungsdauer

Welche Variante ist schneller? Warum?