# Internetprotokollfamilie

Die Internetprotokollfamilie ist eine Familie von rund 500 Netzwerkprotokollen, die die Basis und die Standards für die Netzkommunikation im Internet bilden. Häufig wird auch die Bezeichnung TCP/IP-Protokollfamilie verwendet.

## TCP/IP-Referenzmodell

Ende der 1960er Jahre begann die Entwicklung mit einer Studie der DARPA (Defense Advanced Research Projects Agency), die dem Verteidigungsministerium der Vereinigten Staaten (DoD) untersteht, zur Entwicklung von Protokollen zur Datenkommunikation. Dabei entstand das DoD-Schichtenmodell, in dem die Aufgaben in vier Schichten unterteilt wurden. Dieses Modell ist Grundlage der Internetprotokollfamilie.
Kommunikation wird in Rechnernetzen durch Netzwerkprotokolle umgesetzt und in der Praxis in funktionale Schichten (layer) unterteilt. Für das Internet und die Internetprotokollfamilie ist dabei die Gliederung nach dem sogenannten TCP/IP-Referenzmodell, welches 4 aufeinander aufbauende Schichten beschreibt, maßgebend. Dieses ist auf die Internet-Protokolle zugeschnitten, die den Datenaustausch über die Grenzen lokaler Netze hinaus ermöglichen (dies sind vor allem TCP und IP). Hier werden weder der Zugriff auf ein Übertragungsmedium noch die Datenübertragungstechnik definiert. Vielmehr sind die Internet-Protokolle dafür zuständig, Datenpakete über mehrere Punkt-zu-Punkt-Verbindungen (Hops) weiterzuvermitteln und auf dieser Basis Verbindungen zwischen Netzteilnehmern über mehrere Hops herzustellen.
Um Probleme der Netzkommunikation im Allgemeinen zu betrachten, greift man auf das detailliertere ISO/OSI-Referenzmodell zurück. Es ist jedoch zu beachten, dass sich die Benennung der einzelnen Schichten in den Modellen unterscheidet, und nachfolgende Zuordnungen zwischen OSI-Schichten und TCP-IP-Ebenen nicht immer vollständig übereinstimmen.
| OSI-Schicht | TCP/IP-Schicht | Beispiel |
| Anwendungen (7) | Anwendungen | HTTP, UDS, FTP, SMTP, POP, Telnet, DHCP, OPC UA TLS, SOCKS |
| Darstellung (6) | Anwendungen | HTTP, UDS, FTP, SMTP, POP, Telnet, DHCP, OPC UA TLS, SOCKS |
| Sitzung (5) | Anwendungen | HTTP, UDS, FTP, SMTP, POP, Telnet, DHCP, OPC UA TLS, SOCKS |
| Transport (4) | Transport | TCP, UDP, SCTP |
| Vermittlung (3) | Internet | IP (IPv4, IPv6), ICMP (über IP) |
| Sicherung (2) | Netzzugang | Ethernet, Token Bus, Token Ring, FDDI |
| Bitübertragung (1) | Netzzugang | Ethernet, Token Bus, Token Ring, FDDI |
Die einzelnen Schichten erfüllen folgende Funktionen:

### Anwendungsschicht

    Die Anwendungsschicht (engl.: Application Layer) umfasst alle Protokolle, die mit Anwendungsprogrammen zusammenarbeiten und die Netzinfrastruktur für den Austausch anwendungsspezifischer Daten nutzen.

### Transportschicht

    Die Transportschicht (engl.: Transport Layer) ermöglicht eine Ende-zu-Ende-Kommunikation. Das wichtigste Protokoll dieser Schicht ist das Transmission Control Protocol (TCP), das Verbindungen zwischen jeweils zwei Netzteilnehmern zum zuverlässigen Versenden von Datenströmen herstellt. Es gehören aber auch unzuverlässige Protokolle – zum Beispiel das User Datagram Protocol (UDP) – in diese Schicht.

### Internetschicht

    Die Internetschicht (engl.: Internet Layer) ist für die Weitervermittlung von Paketen und die Wegwahl (Routing) zuständig. Auf dieser Schicht und der darunterliegenden Schicht werden Direktverbindungen betrachtet. Die Aufgabe dieser Schicht ist es, zu einem empfangenen Paket das nächste Zwischenziel zu ermitteln und das Paket dorthin weiterzuleiten. Kern dieser Schicht ist das Internet Protocol (IP) in der Version 4 oder 6, das einen Paketauslieferungsdienst bereitstellt. Sogenannte Dual-Stacks können dabei automatisch erkennen, ob sie einen Kommunikationspartner über IPv6 oder IPv4 erreichen können und nutzen vorzugsweise IPv6. Dies ist für entsprechend programmierte Anwendungen transparent. Die Internetschicht entspricht der Vermittlungsschicht des ISO/OSI-Referenzmodells.

### Netzzugangsschicht

    Die Netzzugangsschicht (engl.: Link Layer) ist im TCP/IP-Referenzmodell spezifiziert, enthält jedoch keine Protokolle der TCP/IP-Familie. Sie ist vielmehr als Platzhalter für verschiedene Techniken zur Datenübertragung von Punkt zu Punkt zu verstehen. Die Internet-Protokolle wurden mit dem Ziel entwickelt, verschiedene Subnetze zusammenzuschließen. Daher kann die Host-an-Netz-Schicht durch Protokolle wie Ethernet, FDDI, PPP (Punkt-zu-Punkt-Verbindung) oder 802.11 (WLAN) ausgefüllt werden. Die Netzzugangsschicht entspricht der Sicherungs- und Bitübertragungsschicht des ISO/OSI-Referenzmodells.

## Beispiel

Aufbau eines Ethernet-Frames mit maximalen IPv4- / TCP-Daten :
| OSI- Schicht | TCP/IP-Schicht | Struktur | Struktur | Struktur | Struktur | Struktur | Struktur | Struktur | Struktur | Struktur | Struktur | Struktur |
| 4 | Transport | | | | | | | | TCP-Header | Nutzlast (1460 bytes) | | |
| 3 | Internet | | | | | | | IP-Header | Nutzlast (1480 bytes) | Nutzlast (1480 bytes) | | |
| 2 | Netzzugang | | | MAC-Empfänger | MAC-Absender | 802.1Q-Tag (opt.) | EtherType | Nutzlast (1500 bytes) | Nutzlast (1500 bytes) | Nutzlast (1500 bytes) | Frame Check Sequence | |
| 1 | Netzzugang | Präambel | Start of Frame | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Nutzlast (1518/1522 bytes) | Interframe Gap |
| Oktette | Oktette | 7 | 1 | 6 | 6 | (4) | 2 | 20 | 20 | ≤1460 | 4 | 12 |

## Protokollstapel
### Anwendungsschicht (entspricht OSI-Schicht 5–7)

* DNS (Domain Name System) – Auflösung von Domainnamen zu IP-Adressen
* DoIP (Diagnostics over IP) – Transportprotokoll für Fahrzeugdiagnose
* FTP (File Transfer Protocol) – Dateitransfer
** FTPS (FTP über SSL/TLS) – Erweiterung von FTP für verschlüsselten Dateitransfer
* HTTP (Hypertext Transfer Protocol)
** HTTPS (Hypertext Transfer Protocol Secure)
* WS (WebSocket Protocol)
* IMAP (Internet Message Access Protocol) – Zugriff auf E-Mails
* IPFIX (Internet Protocol Flow Information Export)
* LLMNR (Link-local Multicast Name Resolution)
* NDMP (Network Data Management Protocol, ndmp.org, kein IETF RFC)
* MBS/IP (Multi-purpose Business Security over IP)
* NNTP (Network News Transfer Protocol) – Diskussionsforen (Usenet)
* NTP (Network Time Protocol)
* POP3 (Post Office Protocol, Version 3) – E-Mail-Abruf
* PTP (Precision Time Protocol) – Zeitsynchronisation von Uhren in einem Netzwerk
* RDP (Remote Desktop Protocol) – Darstellen und Steuern von Desktops auf fernen Computern (Microsoft)
* RTP (Real-Time Transport Protocol)
* SIP (Session Initiation Protocol) – Aufbau, Steuerung und Abbau von Kommunikationssitzung (VoIP)
* SNMP (Simple Network Management Protocol) – Verwaltung von Geräten im Netzwerk
* SMTP (Simple Mail Transfer Protocol) – E-Mail-Versand
* SOCKS (Internet Sockets-Protokoll)
* SSH (Secure Shell) – verschlüsseltes remote terminal
** SCP (Secure Copy) – Dateitransfer (verwendet SSH-Session)
** SFTP – SSH Dateitransfer (verwendet SSH-Session)
* Telnet – Unverschlüsseltes Login auf entfernten Rechnern (remote terminal)
* XMPP (Extensible Message and Presence Protocol)
* Z39.50 – Abfrage von Informationssystemen

### Transportschicht (entspricht OSI-Schicht 4)

* TCP (Transmission Control Protocol) – Übertragung von Datenströmen (verbindungsorientiert, zuverlässig)
* UDP (User Datagram Protocol) – Übertragung von Datenpaketen (verbindungslos, unzuverlässig, geringer Overhead)
* SCTP (Stream Control Transmission Protocol) – Transportprotokoll
* TLS (Transport Layer Security, ehemals 'Secure Socket Layer [SSL]) – Erweiterung von TCP um Verschlüsselung
* DTLS (Datagram Transport Layer Security) – Auf TLS basierendes Verschlüsselungsprotokoll, welches auch über zustandslose Protokolle wie UDP übertragen werden kann

### Internetschicht (entspricht OSI-Schicht 3)

* IP (Internet Protocol) – Datenpaket-Übertragung (verbindungslos)
* IPsec (Internet Protocol Security) – Sichere Datenpaket-Übertragung (verbindungslos)
* ICMP (Internet Control Message Protocol) – Kontrollnachrichten (zum Beispiel Fehlermeldungen), Teil jeder IP-Implementierung
* IGRP (Interior Gateway Routing Protocol) – Informationsaustausch zwischen Routern (Distanzvektor) (veraltet – wird ersetzt durch EIGRP)
* EIGRP (Enhanced Interior Gateway Routing Protocol) – Informationsaustausch zwischen Routern via IP
* OSPF (Open Shortest Path First) – Informationsaustausch zwischen Routern (Linkzustand) via IP
* BGP (Border Gateway Protocol) – Informationsaustausch zwischen autonomen Systemen im Internet (Pfadvektor) via TCP
* RIP (Routing Information Protocol) – Informationsaustausch zwischen Routern (Distanzvektor) via UDP
* IGMP (Internet Group Management) – Organisation von Multicast-Gruppen, Bestandteil von IP auf allen Hosts, die den Empfang von IP-Multicasts unterstützen

### Netzzugangsschicht (entspricht OSI-Schicht 1–2)

* Ethernet – Netzwerkstandard IEEE 802.3
* WLAN – Netzwerkstandard IEEE 802.11
* PPP – Point-to-Point Protokoll, RFC 1661
* Token Bus – Netzwerkstandard IEEE 802.4
* Token Ring – Netzwerkstandard IEEE 802.5
* FDDI – Fiber Distributed Data Interface
* L2TP (Layer 2 Tunneling Protocol)
* RARP (Reverse Address Resolution Protocol) – Adressumsetzung zwischen Geräte- (MAC) und IP-Adressen (veraltet – wird ersetzt durch BOOTP)
* IPoAC (Internet Protocol over Avian Carriers) – Internet-Protokoll mittels fliegender Träger – RFC 1149