TCP und UDP sind Netzwerkprotokolle, die für die Datenübertragung über das Internet verwendet werden. Wenn Ihnen der Begriff IP (Internet Protocol) geläufig ist, wissen Sie bereits, dass sowohl TCP als auch UDP darauf aufbauen.
Es wäre jedoch falsch anzunehmen, dass sie identisch sind. Obwohl beide Protokolle die Art und Weise beeinflussen, wie Daten im Internet gesendet und empfangen werden, unterscheiden sie sich grundlegend und werden daher für verschiedene Zwecke eingesetzt.
Kurz gesagt, diese beiden Protokolle werden unbewusst täglich bei der Internetnutzung verwendet, da sie die Kommunikation zwischen Ihrem Gerät und dem Web (und damit verbundenen Geräten) ermöglichen.
Da sowohl TCP als auch UDP auf dem Internetprotokoll aufsetzen, empfiehlt es sich, mehr über IP zu erfahren, bevor Sie sich direkt mit TCP und UDP beschäftigen. Man muss das Laufen lernen, bevor man rennen kann.
Was ist eine IP-Adresse?
IP, die Abkürzung für Internet Protocol, ist das Fundament des Internets, wie wir es kennen. Jedem Gerät wird eine eindeutige IP-Adresse zugewiesen, um den Zugang zum Internet zu ermöglichen.
Eine IP-Adresse bestand ursprünglich nur aus Zahlen und Dezimalstellen. Eine IPv4-Adresse besteht aus vier Zahlen, die jeweils einen Wert zwischen 0 und 254 annehmen können. IPv4 ermöglichte insgesamt 4,3 Milliarden eindeutige IP-Adressen.
Als das Internet an einen Punkt gelangte, an dem keine neuen eindeutigen IP-Adressen mehr generiert werden konnten, wurde das IPv6-System eingeführt. Öffentliche IPv6-Adressen nutzen hexadezimale Ziffern und umfassen jeweils 128 Bit, d. h., sie verwenden die Basis 16 (0 bis 10 plus „a“ bis „f“) anstelle der Basis 10 (0 bis 10).
Mit dem IPv6-System könnten wir eine Gesamtreichweite von 340 Undezillionen (3,4 * 10^28) öffentlichen IPv6-Adressen erhalten. Im Folgenden sehen Sie, wie IPv4- und IPv6-Adressen aussehen:
Beispiel einer IPv4-Adresse: 192.168.1.100
IPv6-Adressbeispiel: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
Obwohl das langfristige Ziel darin besteht, dass IPv6 IPv4 ablöst, arbeiten die beiden Protokolle derzeit zusammen.
IP-Adressen ermöglichen es internetfähigen Geräten, sich zu lokalisieren, miteinander zu kommunizieren und Informationen auszutauschen. Datenaustausch, Videostreaming oder E-Mail-Versand wären ohne IP-Adressen nicht möglich. Alles, was Sie online tun, kann in Daten umgewandelt werden.
Um eine optimale Funktionalität zu gewährleisten, teilt IP diese Daten in kleinere Einheiten, sogenannte Pakete, auf. Diese Pakete enthalten nicht nur die eigentlichen Daten, sondern auch die Ziel-IP-Adresse des Geräts, das sie erreichen müssen. Dieser Teil wird als Header bezeichnet.
Sobald ein Paket Ihr Gerät verlässt, gelangt es zu einem Gateway, das innerhalb seiner Domäne nach der Ziel-IP-Adresse sucht. Es ist wichtig zu wissen, dass ein Gateway nur einen bestimmten Satz von IP-Adressen im Internet sehen kann.
Findet das Gateway die Adresse in seiner Domäne nicht, sendet es das Paket an ein anderes Gateway. Dieser Prozess wird fortgesetzt, bis das Paket ein Gateway erreicht, das die Ziel-IP-Adresse im Header identifizieren kann und es an das entsprechende Gerät weiterleitet.
Es ist auch wichtig zu wissen, dass die Aufteilung der Daten in Pakete bedeutet, dass diese nicht unbedingt in der richtigen Reihenfolge ankommen oder denselben Weg nehmen müssen. Pakete versuchen in der Regel, die schnellste Route zu finden.
Schließlich ist das Internetprotokoll nicht formatspezifisch, was es ideal für jede Art von Daten macht, sei es Video, Bild, Audio, E-Mail, Chat oder sogar Spiele.
Was ist TCP?
TCP, die Abkürzung für Transmission Control Protocol, ist eines der wichtigsten Protokolle der Internetprotokollfamilie. Es wurde vor UDP entwickelt, um Programmen und Geräten den Austausch von Informationen über ein Netzwerk zu ermöglichen.
Sie werden feststellen, dass es manchmal in Verbindung mit IP als TCP/IP bezeichnet wird, was aber dasselbe bedeutet (d. h. TCP und TCP/IP sind identisch).
Wie oben erläutert, werden Daten in kleine Pakete zerlegt und in dieser fragmentierten Form an andere Geräte gesendet, möglicherweise sogar auf verschiedenen Wegen. TCP wurde entwickelt, um diese Pakete wieder in ihrer ursprünglichen Form zusammenzusetzen.
TCP wartet, bis alle Pakete ankommen, zählt sie, prüft sie mithilfe einer Prüfsumme auf Fehler, bestätigt den Empfang und fordert den Absender auf, fehlende Pakete erneut zu senden. Nachdem alle Pakete empfangen wurden, setzt TCP sie wieder zu den Originaldaten zusammen und leitet sie an die entsprechende Anwendung weiter (z. B. E-Mail-Client, Bildbetrachter, Videoplayer).
Dieser Prozess läuft heute sehr schnell ab und gewährleistet, dass die Daten auf dem Empfängergerät unverändert ankommen. Darüber hinaus handelt es sich um eine ständige Kommunikation zwischen den Geräten, ein fortlaufendes Hin und Her, bis alle Daten zu 100 % bestätigt sind.
Diese ständige Kommunikation zwischen den Geräten stellt eine erhebliche Belastung für TCP dar, da jedes verlorene oder beschädigte Paket den Prozess aufhalten kann, bis die fehlenden Daten sicher am Ziel angekommen sind. TCP muss jedoch nicht alles selbst erledigen, daher wurde kurze Zeit später UDP entwickelt.
Zusammenfassend lässt sich sagen, dass TCP:
Sicherstellt, dass keine Pakete verworfen werden
Fordert das erneute Senden von Paketen an, wenn fehlende Pakete erkannt werden
Sendet Pakete in der richtigen Reihenfolge, damit sie leicht wieder zusammengesetzt werden können
Das am häufigsten verwendete Internetprotokoll ist
Langsamer ist als UDP, da die Ankunft jedes Pakets sichergestellt werden muss
Geeignet ist für Websites, E-Mails, FTP (File Transfer Protocol), P2P-Filesharing
Was ist UDP?
UDP, kurz für User Datagram Protocol, ist eine Alternative zu TCP und dient im Wesentlichen demselben Zweck. Beide unterscheiden sich jedoch erheblich. TCP ist sehr genau bei der Überprüfung von Paketdaten, während UDP etwas nachlässiger ist.
Stellen Sie sich zwei Mitarbeiter vor, die Briefe in einer Postsortieranlage bearbeiten: TCP ist derjenige, der jeden Brief sorgfältig prüft und die gesamte Kommunikation verzögert, bis jeder Brief eingetroffen ist, während UDP Briefe nur auf ihre Unversehrtheit überprüft und sie weiterleitet, ohne fehlende Briefe zu verfolgen oder eine erneute Zustellung anzufordern.
Daher kann man mit Sicherheit sagen, dass UDP schneller ist, aber warum sollte man die Geschwindigkeit auf Kosten des Datenverlusts setzen? Nun, es gibt einige Anwendungen, bei denen der Verlust von Paketen keine Tragödie ist.
Wenn Sie beispielsweise einen VoIP-Client verwenden und mit jemandem sprechen, kann es gelegentlich zu Frame-Verlusten oder einem leichten Stottern im Audio kommen, was meist nicht weiter schlimm ist. Dasselbe gilt für Spiele, bei denen es zu gelegentlichen Stotterern oder Lags kommen kann. Man spielt einfach weiter, da UDP einfach Pakete verwirft, die während der Übertragung verloren gegangen sind.
Mit anderen Worten, UDP:
Ist schneller als TCP und verbraucht weniger Ressourcen
Sendet Pakete nicht unbedingt in der richtigen Reihenfolge
Verwirft fehlende Pakete, um die Verbindung zu beschleunigen
Der Absender kann nicht feststellen, ob Pakete verworfen wurden
Wird hauptsächlich für Videostreaming, VoIP, Spiele und Live-Übertragungen verwendet
TCP und UDP bei der VPN-Nutzung
Heutzutage setzen immer mehr VPNs auf WireGuard oder entwickeln eigene Protokolle, aber viele verwenden weiterhin OpenVPN, da es sich nach wie vor als zuverlässig, schnell und sicher erwiesen hat.
Was Sie aber vielleicht nicht wissen, ist, dass OpenVPN sowohl mit TCP als auch mit UDP funktioniert und Sie meistens zwischen diesen beiden Protokollen wählen können. Auch wenn dies nach einer wichtigen Entscheidung (Datenintegrität versus Geschwindigkeit) klingen mag, liegt das Hauptproblem woanders.
Bei der Verwendung eines VPN stellen Sie möglicherweise keinen großen Unterschied in der Geschwindigkeit zwischen TCP und UDP fest. Wenn Ihre Verbindung jedoch eine Firewall umgehen muss, ändert sich die Situation, da diese Protokolle an unterschiedlichen Ports arbeiten und einige Firewalls Standardports für bestimmte Datentypen blockieren können.
Daher erlauben VPN-Anbieter die Auswahl zwischen TCP und UDP. Wenn Ihre Verbindung mit einem Protokoll nicht funktioniert, können Sie einfach zum anderen wechseln. Einige VPN-Anbieter bieten erweiterte Einstellungen, mit denen Sie auch einen benutzerdefinierten Port für Ihre Verbindung auswählen können, um Firewalls zu umgehen.
Unterschied zwischen TCP und UDP
TCP | UDP |
TCP ist das am weitesten verbreitete Protokoll im Internet | UDP wird für Spiele, Videostreaming, VoIP und Live-Übertragungen verwendet |
Alle gesendeten Daten erreichen den Empfänger, keine Garantie für Paketverlust | Der Absender weiß nicht, ob ein Paket fehlt (nicht empfangen) |
Pakete werden in der richtigen Reihenfolge gesendet | Pakete werden nicht unbedingt in der richtigen Reihenfolge gesendet |
Benötigt mehr Ressourcen und ist daher langsamer | Benötigt weniger Ressourcen und ist schneller |
TCP vs. UDP: Fazit
Zusammenfassend lässt sich sagen, dass TCP und UDP ähnliche Protokolle sind, da sie sicherstellen, dass Ihre Daten sicher und unverändert an ihrem Bestimmungsort ankommen.
TCP führt während der Datenübertragung mehrere Prüfungen durch und geht dabei sehr gründlich vor, um keine Pakete zu verlieren. Daher ist es ideal für Websites, E-Mails, Chatnachrichten, Bilder und Dateifreigabe.
UDP überprüft nur, ob das Ziel korrekt ist, und prüft die Unversehrtheit der Pakete, fordert aber vom Absender nicht die erneute Übertragung verlorener Pakete an, sondern verwirft sie einfach. Dadurch ergibt sich eine schnellere Verbindung, wobei aber Pakete verloren gehen können. UDP wird hauptsächlich für Spiele, VoIP, Videostreaming und Live-Übertragungen verwendet, wo der Verlust einiger Pakete das Endergebnis nicht allzu stark beeinflusst.