2.5 Kapselung einfach erklärt Kapselung ist ein Grundprinzip der Netzwerkkommunikation. Wenn Daten über ein Netzwerk gesendet werden, laufen sie durch mehrere Schichten. Jede Schicht fügt eigene Steuerinformationen hinzu, damit die Daten auf dieser Schicht verarbeitet werden können. Fachlich gesagt: Kapselung bedeutet, dass Nutzdaten beim Durchlaufen der Schichten jeweils um Protokollinformationen der jeweiligen Schicht ergänzt werden. Vereinfacht gesagt: Jede Schicht verpackt die Daten weiter, damit sie ihre Aufgabe erfüllen kann. Warum ist Kapselung wichtig? Netzwerkkommunikation besteht nicht nur aus den eigentlichen Nutzdaten. Damit Daten ihr Ziel erreichen, werden zusätzliche Informationen benötigt. Beispiele: - Welche Anwendung ist gemeint? - Welcher Dienst oder Port ist gemeint? - Welche IP-Adresse ist das Ziel? - Welche MAC-Adresse ist im lokalen Netzwerk das nächste Ziel? - Über welches Medium werden die Bits übertragen? Diese Informationen werden nicht alle auf einmal hinzugefügt, sondern schrittweise durch die einzelnen Schichten. Begriff: Nutzdaten Nutzdaten sind die eigentlichen Inhalte, die übertragen werden sollen. Beispiele: - Inhalt einer Webseite - E-Mail-Text - Dateiinhalt - DNS-Anfrage - Bilddaten - Audio- oder Videodaten Wichtig: Nutzdaten sind das, was die Anwendung eigentlich senden oder empfangen möchte. Die Protokollinformationen außen herum dienen dazu, diese Nutzdaten korrekt zu übertragen. Begriff: Header Ein Header ist ein Kopfbereich mit Steuerinformationen. Ein Header steht vor den eigentlichen Nutzdaten einer bestimmten Schicht. Beispiele für Informationen in Headern: - Quelladresse - Zieladresse - Portnummern - Protokollinformationen - Längenangaben - Prüfinformationen - Steuerbits Merksatz: Header = Steuerinformationen vor den Daten Begriff: Trailer Ein Trailer ist ein Abschlussbereich hinter den Nutzdaten. Nicht jede Schicht nutzt einen Trailer. Ein bekanntes Beispiel ist der Ethernet-Frame auf Schicht 2. Dort gibt es am Ende eine Prüfsumme. Diese Prüfsumme heißt: FCS = Frame Check Sequence Sie dient der Fehlererkennung bei der Übertragung im lokalen Netzwerk. Merksatz: Trailer = Zusatzinformationen hinter den Daten Kapselung beim Senden Beim Senden laufen die Daten im OSI-Modell von oben nach unten. Vereinfacht: Schicht 7: Anwendung erzeugt Nutzdaten Schicht 4: TCP oder UDP fügt Transportinformationen hinzu Schicht 3: IP fügt IP-Adressen hinzu Schicht 2: Ethernet fügt MAC-Adressen hinzu Schicht 1: Bits werden als Signale übertragen Jede Schicht nimmt die Daten der höheren Schicht und fügt eigene Informationen hinzu. Beispiel: Webseite aufrufen Ein Browser möchte eine Webseite aufrufen. Die ursprünglichen Nutzdaten sind zum Beispiel eine HTTP-Anfrage. Vereinfacht: HTTP-Anfrage Dann fügt die Transportschicht Informationen hinzu: TCP-Header + HTTP-Anfrage Dann fügt die Vermittlungsschicht Informationen hinzu: IP-Header + TCP-Header + HTTP-Anfrage Dann fügt die Sicherungsschicht Informationen hinzu: Ethernet-Header + IP-Header + TCP-Header + HTTP-Anfrage + Ethernet-Trailer Dann wird alles auf Schicht 1 als Bits übertragen. Kapselung im TCP/IP-Beispiel Typische Reihenfolge bei einer HTTPS-Verbindung: HTTPS TCP IP Ethernet Bits / Signale Als Verpackung kann man sich das so vorstellen: Nutzdaten TCP-Segment IP-Paket Ethernet-Frame Bits auf dem Medium Fachlich genauer: Schritt Schicht Ergebnis 1 Anwendungsschicht Daten 2 Transportschicht TCP-Segment oder UDP-Datagramm 3 Vermittlungsschicht / Internetschicht IP-Paket 4 Sicherungsschicht / Netzzugang Ethernet-Frame 5 Bitübertragungsschicht Bits / Signale Dateneinheiten der Schichten In der Netzwerktechnik haben die Daten je nach Schicht unterschiedliche Bezeichnungen. Schicht typische Dateneinheit OSI-Schicht 7 Daten OSI-Schicht 6 Daten OSI-Schicht 5 Daten OSI-Schicht 4 Segment oder Datagramm OSI-Schicht 3 Paket OSI-Schicht 2 Frame OSI-Schicht 1 Bits Wichtig: Bei TCP spricht man häufig von Segmenten. Bei UDP spricht man häufig von Datagrammen. Bei IP spricht man von Paketen. Bei Ethernet spricht man von Frames. Auf Schicht 1 werden Bits übertragen. TCP-Segment Ein TCP-Segment ist die Dateneinheit von TCP auf der Transportschicht. Ein TCP-Segment enthält unter anderem: - Quellport - Zielport - Sequenznummer - ACK-Informationen - Steuerbits - Nutzdaten TCP nutzt diese Informationen, um Daten zuverlässig und in richtiger Reihenfolge zu übertragen. Merksatz: TCP-Segment = TCP-Header + Daten UDP-Datagramm Ein UDP-Datagramm ist die Dateneinheit von UDP auf der Transportschicht. Ein UDP-Datagramm enthält unter anderem: - Quellport - Zielport - Länge - Prüfsumme - Nutzdaten UDP hat weniger Verwaltungsaufwand als TCP. Merksatz: UDP-Datagramm = UDP-Header + Daten IP-Paket Ein IP-Paket ist die Dateneinheit der Vermittlungsschicht bzw. Internetschicht. Ein IP-Paket enthält unter anderem: - Quell-IP-Adresse - Ziel-IP-Adresse - Protokollangabe - TTL - Nutzdaten Die Nutzdaten des IP-Pakets sind meist ein TCP-Segment oder ein UDP-Datagramm. Merksatz: IP-Paket = IP-Header + TCP-Segment oder UDP-Datagramm Ethernet-Frame Ein Ethernet-Frame ist die Dateneinheit der Sicherungsschicht im lokalen Netzwerk. Ein Ethernet-Frame enthält unter anderem: - Ziel-MAC-Adresse - Quell-MAC-Adresse - Typfeld - Nutzdaten - FCS-Prüfsumme Die Nutzdaten des Ethernet-Frames sind meistens ein IP-Paket. Merksatz: Ethernet-Frame = Ethernet-Header + IP-Paket + Ethernet-Trailer Bits und Signale Auf der Bitübertragungsschicht werden die Daten als Bits übertragen. Bits sind die kleinste Informationseinheit. Ein Bit kann zwei Zustände haben: 0 1 Diese Bits werden je nach Medium übertragen als: - elektrische Signale über Kupferkabel - Lichtsignale über Glasfaser - Funksignale über WLAN Merksatz: Schicht 1 überträgt Bits als Signale. Kapselung als Verpackung Man kann Kapselung wie mehrere Verpackungen verstehen. Beispiel: Inhalt: HTTP-Daten erste Verpackung: TCP-Header zweite Verpackung: IP-Header dritte Verpackung: Ethernet-Header und Ethernet-Trailer Transport: Bits über Kabel, Glasfaser oder Funk Vereinfacht: Ethernet verpackt IP. IP verpackt TCP oder UDP. TCP oder UDP verpackt Anwendungsdaten. Kapselung mit Schokoladen-Metapher Man kann sich das TCP/IP-Modell auch wie eine verpackte Schokolade vorstellen. Ganz innen: Die Schokolade = die eigentlichen Daten Darum herum: Silberpapier = TCP oder UDP Darum herum: buntes Papier = IP Darum herum: Tüte = Ethernet / MAC-Adresse Transport: Einkaufswagen / Weg = Übertragungsmedium Diese Metapher zeigt: Die eigentlichen Daten werden nicht alleine übertragen. Sie werden auf mehreren Ebenen verpackt. Entkapselung beim Empfangen Beim Empfänger passiert der Vorgang umgekehrt. Das nennt man Entkapselung. Fachlich gesagt: Entkapselung bedeutet, dass die hinzugefügten Protokollinformationen beim Empfänger schrittweise wieder ausgewertet und entfernt werden. Vereinfacht: Der Empfänger packt die Daten Schicht für Schicht wieder aus. Ablauf: Schicht 1: Signale werden als Bits empfangen. Schicht 2: Ethernet prüft den Frame und entfernt Ethernet-Informationen. Schicht 3: IP prüft die Ziel-IP-Adresse und entfernt IP-Informationen. Schicht 4: TCP oder UDP prüft Ports und Transportinformationen. Schicht 7: Die Anwendung erhält die eigentlichen Nutzdaten. Kapselung und Entkapselung im Vergleich Richtung Vorgang Bedeutung Senden Kapselung Daten werden Schicht für Schicht verpackt Empfangen Entkapselung Daten werden Schicht für Schicht ausgepackt Merksatz: Sender kapselt ein. Empfänger kapselt aus. Warum braucht jede Schicht eigene Informationen? Jede Schicht hat eine andere Aufgabe. Darum braucht jede Schicht eigene Steuerinformationen. Beispiele: Schicht Steuerinformation Zweck 4 Portnummern richtige Anwendung finden 3 IP-Adressen Zielhost bzw. Zielnetz finden 2 MAC-Adressen nächstes Gerät im lokalen Netzwerk erreichen 1 Signale Bits physisch übertragen Wichtig: Portnummer, IP-Adresse und MAC-Adresse haben unterschiedliche Aufgaben. Portnummer, IP-Adresse und MAC-Adresse Diese drei Begriffe werden in Prüfungen häufig verwechselt. Begriff Schicht Aufgabe Portnummer Schicht 4 Dienst oder Anwendung auf einem Host IP-Adresse Schicht 3 logische Adresse eines Hosts oder Netzes MAC-Adresse Schicht 2 lokale Hardwareadresse im LAN Merksatz: Port = welcher Dienst? IP-Adresse = welcher Host oder welches Netz? MAC-Adresse = welches Gerät im lokalen Netzwerk? Wichtig: MAC-Adresse ändert sich auf dem Weg Die IP-Adresse bleibt auf dem Weg zum Ziel grundsätzlich erhalten. Die MAC-Adresse kann sich aber bei jedem Netzwerkabschnitt ändern. Warum? MAC-Adressen gelten nur im lokalen Netzwerkabschnitt. Wenn ein Router ein Paket weiterleitet, wird ein neuer Ethernet-Frame für das nächste Netz erstellt. Beispiel: PC → Router: Ziel-MAC = MAC-Adresse des Routers Router → nächster Router: Ziel-MAC = MAC-Adresse des nächsten Geräts letzter Router → Server: Ziel-MAC = MAC-Adresse des Servers Wichtig: Die IP-Adressen bleiben für die Ende-zu-Ende-Kommunikation wichtig. Die MAC-Adressen werden pro lokalem Abschnitt neu verwendet. Wichtig: Portnummer bleibt für den Dienst wichtig Die Portnummer gehört zur Transportschicht. Sie zeigt, welcher Dienst oder welche Anwendung auf einem Host gemeint ist. Beispiel: Ziel-IP-Adresse: 93.184.216.34 Ziel-Port: 443 Bedeutung: Sende die Daten an den Host mit dieser IP-Adresse. Dort ist der Dienst auf Port 443 gemeint. Typischer Dienst: TCP 443 = HTTPS Beispiel: DNS-Anfrage Eine DNS-Anfrage zeigt gut, wie Kapselung funktioniert. Vereinfacht: DNS-Anfrage UDP-Header + DNS-Anfrage IP-Header + UDP-Header + DNS-Anfrage Ethernet-Header + IP-Header + UDP-Header + DNS-Anfrage + FCS Bits auf dem Medium Schichtbezug: Bestandteil Schicht DNS Schicht 7 UDP Schicht 4 IP Schicht 3 Ethernet Schicht 2 Bits Schicht 1 Merksatz: DNS nutzt häufig UDP. UDP nutzt IP. IP nutzt Ethernet oder WLAN. Beispiel: HTTPS-Webseite Eine HTTPS-Verbindung zeigt ebenfalls die Kapselung. Vereinfacht: HTTPS-Daten TCP-Header + HTTPS-Daten IP-Header + TCP-Header + HTTPS-Daten Ethernet-Header + IP-Header + TCP-Header + HTTPS-Daten + FCS Bits auf dem Medium Schichtbezug: Bestandteil Schicht HTTPS Schicht 7 mit Sicherheitsbezug TCP Schicht 4 IP Schicht 3 Ethernet Schicht 2 Bits Schicht 1 Merksatz: HTTPS nutzt meistens TCP. TCP nutzt IP. IP nutzt Ethernet oder WLAN. Kapselung und MTU MTU steht für: Maximum Transmission Unit Die MTU beschreibt, wie groß die Nutzdaten eines Frames auf einem Netzwerkabschnitt maximal sein dürfen. Bei Ethernet beträgt die häufige Standard-MTU: 1500 Byte Wichtig: In diesen 1500 Byte steckt nicht nur die Anwendung, sondern auch IP- und TCP- oder UDP-Informationen. Dadurch bleibt für die eigentlichen Anwendungsdaten weniger Platz. Merksatz: Header brauchen Platz. Deshalb ist nicht jedes Byte im Frame reine Nutzlast. Kapselung und Fehlersuche Kapselung hilft auch bei der Fehlersuche. Wenn man weiß, welche Schicht welche Informationen hinzufügt, kann man Fehler besser eingrenzen. Beispiele: Fehlerbild mögliche Schicht kein Link am Switch Schicht 1 falsche MAC-Adresse oder VLAN-Problem Schicht 2 falsche IP-Adresse oder Subnetzmaske Schicht 3 Port nicht erreichbar Schicht 4 DNS-Name wird nicht aufgelöst Schicht 7 mit Schicht-3-Bezug Webseite lädt nicht mehrere Schichten möglich Wichtig: Ein Fehler auf einer unteren Schicht kann alle oberen Schichten beeinflussen. Typische Prüfungsfragen In AP1 oder AP2 kann zum Beispiel gefragt werden: - Was bedeutet Kapselung? - Was passiert beim Senden von Daten durch die Schichten? - Was passiert beim Empfangen? - Welche Dateneinheit gehört zu welcher Schicht? - Was ist der Unterschied zwischen Frame, Paket und Segment? - Welche Aufgabe hat ein Header? - Welche Aufgabe hat ein Trailer? - Warum braucht TCP einen Header? - Warum braucht IP einen Header? - Warum braucht Ethernet MAC-Adressen? - Welche Adresse gehört zu welcher Schicht? Typische Prüfungsfallen Ein Frame ist nicht dasselbe wie ein Paket. Ein Paket ist nicht dasselbe wie ein Segment. Eine MAC-Adresse ist nicht dasselbe wie eine IP-Adresse. Eine Portnummer ist keine IP-Adresse. TCP und UDP gehören zur Transportschicht. IP gehört zur Vermittlungsschicht bzw. Internetschicht. Ethernet gehört zur Sicherungsschicht bzw. Netzzugangsschicht. Die MAC-Adresse gilt nur für den lokalen Netzwerkabschnitt. Die IP-Adresse ist für die logische Ende-zu-Ende-Adressierung wichtig. Die Portnummer zeigt auf den Dienst oder die Anwendung. Wichtige Begriffe kurz erklärt Begriff Kurze Erklärung Kapselung Daten werden beim Senden von Schicht zu Schicht mit Protokollinformationen ergänzt Entkapselung Protokollinformationen werden beim Empfangen schrittweise ausgewertet und entfernt Nutzdaten eigentliche Daten der Anwendung Header Steuerinformationen vor den Nutzdaten Trailer Steuerinformationen nach den Nutzdaten Segment typische TCP-Dateneinheit auf Schicht 4 Datagramm typische UDP-Dateneinheit auf Schicht 4 Paket Dateneinheit auf IP-Ebene Frame Dateneinheit im lokalen Netzwerk Bit kleinste Informationseinheit MAC-Adresse lokale Hardwareadresse im LAN IP-Adresse logische Adresse für Netzwerkkommunikation Port Dienstadresse auf einem Host MTU maximale Größe der Nutzdaten auf einem Netzwerkabschnitt IHK-sichere Kurzformulierung Kapselung bedeutet, dass Daten beim Senden durch die Schichten eines Netzwerkmodells laufen und dabei von jeder Schicht um eigene Protokollinformationen ergänzt werden. Auf der Transportschicht entstehen zum Beispiel TCP-Segmente oder UDP-Datagramme, auf der Vermittlungsschicht IP-Pakete und auf der Sicherungsschicht Ethernet-Frames. Beim Empfänger werden diese Informationen in umgekehrter Reihenfolge wieder ausgewertet und entfernt. Dieser Vorgang heißt Entkapselung. Merksätze Kapselung = Daten werden verpackt. Entkapselung = Daten werden ausgepackt. Jede Schicht fügt eigene Steuerinformationen hinzu. Header stehen vor den Daten. Trailer stehen hinter den Daten. TCP-Segment oder UDP-Datagramm gehört zu Schicht 4. IP-Paket gehört zu Schicht 3. Ethernet-Frame gehört zu Schicht 2. Bits gehören zu Schicht 1. Portnummer = Dienst oder Anwendung. IP-Adresse = logische Adresse. MAC-Adresse = lokale Adresse im LAN. Sender kapselt ein. Empfänger kapselt aus. HTTP → TCP → IP → Ethernet → Bits DNS → UDP → IP → Ethernet → Bits