Sobes.tech
Junior

Was ist der Unterschied zwischen den Protokollen TCP und UDP?

sobes.tech KI

Antwort von AI

TCP - verbindungsorientiert, garantiert die Zustellung und Reihenfolge der Pakete. UDP - ohne Verbindungsaufbau, garantiert keine Zustellung oder Reihenfolge, aber schneller.

Hauptunterschiede:

Merkmal TCP UDP
Orientierung Mit Verbindungsaufbau Ohne Verbindungsaufbau
Zuverlässigkeit Hoch (garantiert die Zustellung) Niedrig (garantiert die Zustellung nicht)
Reihenfolge Garantiert Nicht garantiert
Flusskontrolle Ja Nein
Fehlerkontrolle Ja (Übertragung und Reihenfolge) Nein (Basis-Checksumme)
Geschwindigkeit Niedriger Höher
Verwendung HTTP, FTP, SSH DNS, DHCP, Online-Spiele, Streaming

Beispielcode zum Senden von Daten über TCP in Go:

package main

import (
	"net"
	"log"
)

func main() {
	conn, err := net.Dial("tcp", "localhost:8080") // TCP-Verbindung herstellen
	if err != nil {
		log.Fatal(err)
	}
	defer conn.Close() // Verbindung schließen

	_, err = conn.Write([]byte("Hello, TCP!")) // Daten senden
	if err != nil {
		log.Fatal(err)
	}
}

Beispielcode zum Senden von Daten über UDP in Go:

package main

import (
	"net"
	"log"
)

func main() {
	addr, err := net.ResolveUDPAddr("udp", "localhost:8081") // UDP-Adresse definieren
	if err != nil {
		log.Fatal(err)
	}

	conn, err := net.DialUDP("udp", nil, addr) // "Verbindung" erstellen (ohne Sitzung)
	if err != nil {
		log.Fatal(err)
	}
	defer conn.Close() // Socket schließen

	_, err = conn.Write([]byte("Hello, UDP!")) // Daten senden
	if err != nil {
		log.Fatal(err)
	}
}