udp-, mtu- und ip- · pdf filer|v|s rechnernetze und verteilte systeme bielefeld, den 15....
TRANSCRIPT
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
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
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
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:
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
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
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
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?
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
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
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
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)
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.
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
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.
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
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
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
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?
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?
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?