Ein Datenpaket ist in der Datenverarbeitung eine vom Kommunikationsprotokoll genau festgelegte Zusammenstellung zusammengehöriger digitaler Daten, die bei der Datenübertragung durch ein Datennetz gesendet wird.
Diese Paket-Übertragung ist in allen Formen des Internets üblich und die Grundlage für das Funktionieren der Netzwerke.[1] Die Datenpakete des Internets verfügen über einen 24 Byte langen Header.
Ein Datenpaket hat eine vorgeschriebene Anzahl von Bits. Neben den eigentlichen Nutzdaten enthalten Datenpakete auch Steuerdaten für die Adressierung, Sendefolge, Datenflusskontrolle und Fehlerkorrektur auf allen Protokollebenen.
Die Daten werden von einem Netzwerkprotokoll des Protokollstapels nacheinander verarbeitet. Beim Senden fügt jedes Protokoll den Daten bestimmte Steuerdaten hinzu, bevor sie dem nächsttieferen Netzwerkprotokoll übergeben werden – eine Nachricht trägt also auf der Leitung sämtliche Header der darüber liegenden Schichten. Eine HTTP-Nachricht, die via Ethernet versandt wird, lässt sich wie folgt veranschaulichen (detailliertere Darstellung unter Datenframe #Der Datenframe bei Ethernet (IEEE 802.3)):
HTTP-Nachricht | |||||||||
TCP-Segment | |||||||||
IP-Paket | |||||||||
Ethernet-Frame |
Beim Empfang entfernt jedes Netzwerkprotokoll aus den Daten wieder diejenigen Steuerinformationen, die nur für dieses Protokoll selbst bestimmt sind, und übergibt die verbliebenen Daten dem nächsthöheren Netzwerkprotokoll.
Das Transmission Control Protocol (TCP) zerlegt eine zu versendende Datei (beispielsweise Audiodatei, Bilddatei, Textdatei, Videodatei) in einzelne kleinere Datenpakete und versendet diese getrennt voneinander über das Internet. Dabei können diese Datenpakete verschiedene Knotenpunkte im Internet (wie Hostrechner, Server) durchlaufen, weil an jedem Knotenpunkt der optimale Weg für das Paket neu bestimmt wird.[2] Da unterwegs die ursprüngliche Reihenfolge nicht eingehalten werden muss, hat das TCP auch die Aufgabe, die ursprüngliche Reihenfolge beim empfangenden Endgerät wiederherzustellen. Das Internet Protocol (IP) regelt die korrekte Adressierung der Datenpakete, damit die im Internet angeschlossenen Computer eindeutig identifiziert werden können.[3]
Ein Datenpaket hat – im Unterschied zu einem Datenstrom – eine wohldefinierte Länge und Form, es kann daher auf Vollständigkeit und Brauchbarkeit geprüft werden. Das Datenpaket ist deshalb eine Bestandsgröße, der Datenstrom eine Stromgröße.
Normalerweise wird der Begriff Datagramm synonym mit Datenpaket verwendet, gelegentlich werden sie aber auch voneinander unterschieden. So wird ein Datagramm oft als Datenpaket betrachtet, dessen Zusatzinformation u. a. Sender- und Empfängeradresse, aber auch Ordnungsnummer und Fehlerkorrekturschlüssel enthält, während ein Datenpaket allgemein als jede Dateneinheit betrachtet wird, die über paketvermittelnde Netze übertragen wird. Im Gegensatz zu Protocol Data Unit und Service Data Unit ist der Begriff Datenpaket nicht genau definiert.
Speziell bei serieller Übertragung wird statt von einem Datenpaket auch von einem (Daten-)Telegramm gesprochen.