Kommunikationsnetze Internet-Praktikum II Lab 0: The Basics Mark Schmidt, Andreas Stockmayer Sommersemester 2015 kn.inf.uni-tuebingen.de
Wiederholung: Die Internet-Protokollhierarchie 5 4 3 2 1 Application Layer Transport Layer Network Layer Data Link Layer Physical Layer Anwendungsspezifische Funktionen zusammengefasst in Anwendungsprotokollen Ende-zu-Ende-Datenübertragung zwischen zwei Rechnern Vermittlungsschicht: Wegewahl im Netz auch Internet Layer genannt Schnittstelle zum physikalischen Medium Netzwerkkartentreiber Gegenüber ISO/OSI wurden die drei anwendungsorientierten Schichten zu einer einzigen Schicht zusammengefasst. M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 2
1 Physical Layer - Bitübertragung Physikalisches Medium Kupferkabel Funkwellen Glasfaser Infrarot / Laser Schallwellen Bitübertragung Linecoding Signalmodulation M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 3
2 Data Link Layer - Sicherung Spezifikation der Datenübertragung Zugriff auf Übertragungsmedium Punkt-zu-Punkt Verbindung Fehlerkorrektur durch Kanalkodierung Segmentierung des Datenstroms in Frames Packet Switching Beispielprotokolle: Point-to-Point (PPP) Ethernet WLAN M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 4
IEEE 802 Protokolle Ethernet: IEEE 802.3 WLAN: IEEE 802.11 Unterteilung von Schicht 2 in 2a / 2b 2a LLC: Logical Link Control ARQ: Automatic Repeat Request FEC: Forward Error Correction Flow Control 2b MAC: Media Access Control Zugriff auf Übertragungsmedium CSMA/CD (Ethernet) CSMA/CA (WLAN) Physikalische Adressierung (MAC Adresse) Paketweiterleitung Idee: ein LLC Protokoll kann auf verschiedenen MAC Protokollen aufsetzen M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 5
3 Network Layer - Vermittlung Ende-Zu-Ende durch Internet Protocol (IP) Adressierung Paketvermittelt Verbindungslos (Datagrammdienst) Ungesicherte Übertragung: Datagramm kann verloren gehen Datagramme können einander überholen Datagramme können endlos kreisen Nicht behebbare Fehler der darunterliegenden Schicht 2 können von IP im Allgemeinen ebenfalls nicht behandelt werden Mit dem Protokoll ICMP (Internet Control Message Protocol) existiert jedoch eine Möglichkeit zur Fehleranzeige Keine Flusskontrolle Ermöglicht Zusammenschluss mehrerer lokaler Netzwerke M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 6
IPv6 Neighbor Discovery Protocol (NDP) statt ARP Woher bekommt ein neuer Client seine IP-Adresse und Informationen über das Subnetz? Generell hat jeder Client sofort eine Link-Local IPv6-Adresse FE80::<Interface ID> Möglichkeit 1: Manuelle Adressvergabe Möglichkeit 2: Automatische Konfiguration Adresse Client ermittelt aus ICMPv6 Advertisements ein 64 Bit Präfix Client hängt seinen EUI64 Identifier (MAC) hinter das Präfix Stateless Weder Client noch Server müssen sich Leases merken M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 7
IPv6 Tunnelmechanismus um IPv6-Pakete über IPv4 zu routen Vorstellung: IPv6-Netze sind Inseln im (ansonsten IPv4) Internet Jedes IPv6-Netz (das auch aus nur einem Rechner bestehen kann) hat eine IPv4 Adresse 6to4 Adressen Reserviertes Präfix: 2002::/16 32-Bit IPv4 Adresse des Netzes z.b. 2002:1234:5678::/48 Letzen 80 Bit können lokal vergeben werden (16 Bit Subnetz, 64 Bit Interface) M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 8
4 Transport Layer - Transport TCP Transport Control Protocol Verbindungsorientiert Zuverlässig Stau- / Flusskontrolle Streambasiert UDP User Datagram Protocol Verbindungslos Unzuverlässig Keine Stau- / Flusskontrolle Einsatz Einige Dienste (z.b. DNS, DHCP) Echtzeitanwendungen (z.b. Multimediastreaming,VOIP) M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 9
Ports Socket identifiziert durch IP Adresse und Port Kommunikationsendpunkt eines Dienstes Verschiedene Bereiche von Portnummern Well Known Ports: 0 1023 Systemdienste Verwaltet von der Internet Assigned Numbers Authority (IANA) Registered Ports: 1024-49151 Auf Anfrage zugewiesen von IANA für bestimmte Dienste Dynamic Ports: 49152 65535 Temporär benötigt Können nicht reserviert werden Werden normalerweise dynamisch vom OS vergeben M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 10
5 Application Layer - Anwendung Anwendung Anwendung 4 TCP TCP 3 IP IP IP IP 1/2 Netz 1 Netz 1 Netz 2 Netz 2 Netz 3 Netz 3 Telefonleitung, Modem SDH / SONET (Hi-Speed Glasfaser) WLAN M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 11
5 Application Layer - Anwendung Anwendung Anwendung 4 TCP TCP 3 IP IP IP IP 1/2 Netz 1 Netz 1 Netz 2 Netz 2 Netz 3 Netz 3 Telefonleitung, Modem SDH / SONET (Hi-Speed Glasfaser) WLAN M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 12
Zusammenspiel der Protokollinstanzen: die PDUs IP leitet Datenpakete durch das Netzwerk zum Empfänger TCP/UDP fügen Prozessadressierung (Ports) zu IP hinzu TCP sichert darüberhinaus die Datenübertragung Protokolldateneinheiten (PDUs) werden gekapselt Daten Benutzer TCP-Header Daten bzw. UDP-Header Daten Transportschicht 4 IP-Header TCP/UDP-Header Daten Vermittlungsschicht 3 MAC/LLC-Header IP-Header TCP/UDP-Header Daten Sicherungs- Trailer 2 schicht M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 13
IP Datagramm: Aufbau Bit 0 3 7 15 31 Version Hdr.Len DiffServ Total Length Identifier Flags Fragment Offset Time to Live Protocol Header Checksum Source Address Destination Address IP-Header Options and Padding Data M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 14
Die TCP/IP-Protokollfamilie Die Bezeichnung TCP/IP wird häufig als Synonym für die gesamte Protokollfamilie verwendet Einordnung der Internetprotokolle in das ISO/OSI-Referenzmodell: Kommunikationssteuerungsschicht TCP UDP Transportschicht IGMP ICMP ARP IP RARP Vermittlungsschicht Sicherungsschicht Obwohl ICMP und IGMP den IP-Dienst nutzen, werden sie dennoch der Vermittlungsschicht zugeordnet In den anwendungsbezogenen Schichten 5-7 werden im Internet Protokolle wie z.b. FTP, TELNET oder SMTP eingesetzt (Schichten 5-7 im Internet zusammengefasst zur Anwendungsschicht) M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 15
Steuerung von IPv4: ICMP IP ist nur für den (unzuverlässigen) Datenaustausch zuständig. Für Fehlerfälle oder Testzwecke wird ICMP (Internet Control Message Protocol) verwendet. Sender Leitung unterbrochen ICMP-Nachrichten Empfänger Nachrichtentypen, Beispiele: Echo Request / Reply: Echo Reply wird angefordert ("ping"). Timestamp Request / Reply: Ähnlich Echo Request. Zusätzlich Zeitstempel mit Ankunftszeit der Anfrage/Sendezeit der Antwort. M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 16
ICMP: Fehlermeldungen Übertragung der ICMP-Meldungen ICMP-Meldungen werden im Datenteil von IP-Paketen übertragen und durch den Wert 1 im Protocol-Feld des IP-Headers kenntlich gemacht Wichtigste Typen: Zieladresse nicht erreichbar (destination unreachable): Ein Datepaket konnte (z.b. wegen einer unterbrochenen Leitung oder eines ausgefallenen s) nicht zugestellt werden. Time to live abgelaufen (TTL exceeded): Datenpaket wurde wegen Ablauf seiner Lebenszeit von einem verworfen. Die Fehlermeldungen enthalten jeweils ein Feld zur genauen Angabe der Fehlerursache (z.b. Netzwerk nicht erreichbar oder Endsystem nicht erreichbar für die Meldung Zieladresse nicht erreichbar ) M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 17
CIDR: Classless Inter-Domain Routing Historisch: 3 Adressklassen für Unicast, schlechte Ausnutzung durch ungenutze Adressen ( Verschnitt ) Beispiel: Eine Firma die 1000 IP-Adressen braucht, beantragt Class B Adresse Mehr als 65000 Adressen könnten vergeben werden, damit über 64000 ungenutzte Adressen CIDR: Ersetzen der festen Klassen durch Netzwerk-Präfixe variabler Länge Bsp.: 129.24.12.0/14: Die ersten 14 Bits der IP-Adresse werden für die Netzwerk-Identifikation verwendet Einsatz in Verbindung mit hierarchischem Routing: Backbone-, z.b. an Transatlantik-Link, betrachtet nur z.b. die ersten 13 Bits; dadurch kleine Routing-Tabellen, wenig Rechenaufwand eines angeschlossenen Providers z.b. die ersten 15 Bit in einem Firmennetz betrachtet 25 Bits M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 18
IP-Subnetz-Adressen Netzwerk-Teil Lokaler Teil IP-Adresse: Netzwerk-Teil Subnetz-Teil Endsystem Subnetzmasken kennzeichnen den Bereich der IP-Adresse, der das Netzwerk und das Subnetzwerk beschreibt. Dieser Bereich wird dabei durch Einsen ( 1 ) in der binären Form der Subnetzmaske festgestellt. Beispiel: IP-Adresse: 129. 13. 3. 64 Subnetzmaske: 255. 255. 255. 0 1111 1111 1111 1111 1111 1111 0000 0000 Netzwerk: 129. 13. Subnetz: 3. Endsystem: 64 Der Netzwerk-Teil kann aus der Adressklasse abgeleitet werden. Überdeckt die Subnetzmaske nur den Netzwerk-Teil, dann gibt es keinen Subnetz-Teil (z.b. 255.255.0.0). M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 19
ARP vs. Routing 1 Situation 2 Netze, dazwischen ein Alle ARP-Caches wurden vorab geleert Niemand kennt die Mac-Adressen der anderen Rechner Alle Routingtabellen sind korrekt Quelle will ein IP-Paket an Ziel schicken Host 1 IP 202.34.5.11 MAC..:e0:10 Ethernet Anderes Netz mit 8-Bit MAC-Adressen Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 20
ARP vs. Routing 2 Quelle hat ein IP Datagramm für 84.6.7.8 (Ziel) Das Ziel befindet sich nicht im eigenen Subnetz entsprechenden in der Routing-Tabelle nachschlagen Ergebnis: Next Hop auf Layer 3 ist der 202.34.5.2 Daher macht Quelle einen ARP-Request nach dem. Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 21
ARP Anfrage 1 Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 Ethernet Frame: DST: Broadcast (..:ff:ff) SRC:..:f7:a1 Type: ARP Address Resolution Protocol (Request) Hardware Type: Ethernet Protocol Type: IP Hardware Size: 6 Protocol Size: 4 Sender MAC:..:f7:a1 Sender IP: 202.34.5.27 Target MAC:..:00:00 Target IP: 202.34.5.2 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 22
ARP Antwort 1 Host 1 IP 202.34.5.11 MAC..:e0:10 Dieser Rechner macht gar nichts! Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 Ethernet Frame: DST:..:f7:a1 SRC:..:b1:f2 Type: ARP Address Resolution Protocol (Reply) Hardware Type: Ethernet Protocol Type: IP Hardware Size: 6 Protocol Size: 4 Sender MAC:..:b1:f2 Sender IP: 202.34.5.2 Target MAC:..:f7:a1 Target IP: 202.34.5.27 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 23
Forwarding Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 Ethernet Frame: DST:..:b1:f2 SRC:..:f7:a1 Type: IP Ziel für diesen Hop Internet Protocol: Source: 202.34. 5.27 Destination: 84. 6. 7. 8 Entgültiges Ziel Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 24
Forwarding Der stellt fest, dass die Zieladresse von ihm aus direkt erreichbar ist. Er benötigt jetzt die MAC-Adresse des Ziels. Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 25
ARP Anfrage 2 Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 L2 Frame: DST: Broadcast (ff) SRC: 2 Type: ARP Address Resolution Protocol (Request) Hardware Type: XY Protocol Type: IP Hardware Size: 1 Protocol Size: 4 Die MAC-Adressen sind hier 1 Byte lang Sender MAC: 2 Sender IP: 84.6.7.254 Target MAC: 0 Target IP: 84.6.7.8 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 26
ARP Antwort 2 Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 L2 Frame: DST: 2 SRC: 7 Type: ARP Address Resolution Protocol (Reply) Hardware Type: XY Protocol Type: IP Hardware Size: 1 Protocol Size: 4 Sender MAC: 7 Sender IP: 84.6.7.8 Target MAC: 2 Target IP: 84.6.7.254 M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 27
Fertig! Host 1 IP 202.34.5.11 MAC..:e0:10 Host 2 IP 84.6.7.10 MAC 5 Quelle IP 202.34.5.27 MAC..:f7:a1 IP 202.34.5.2 MAC..:b1:f2 IP 84.6.7.254 MAC 2 Ziel IP 84.6.7.8 MAC 7 XY MAC Frame: DST: 7 SRC: 2 Type: IP Ziel für diesen Hop Internet Protocol: Source: 202.34. 5.27 Destination: 84. 6. 7. 8 Entgültiges Ziel Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Payload, Mit dieser Information kann der das Paket zum Ziel schicken. M. Schmidt, A. Stockmayer: Internet-Praktikum I, SS 2015 28