Sobes.tech
Junior

TCP və UDP protokolları arasındakı fərq nədir?

sobes.tech Süni İntellekt

AI-dan cavab

TCP - əlaqəyə yönəlikdir, paketlərin çatdırılmasını və ardıcıllığını təmin edir. UDP - əlaqə qurulmadan, çatdırılma və ardıcıllığı təmin etmir, amma daha sürətlidir.

Əsas fərqlər:

Xüsusiyyət TCP UDP
Yönəltmə Əlaqə quraraq Əlaqəsiz
Etibarlılıq Yüksək (çatdırılmanı təmin edir) Aşağı (çatdırılmanı təmin etmir)
Ardıcıllıq Garantiyalı Garantiyalanmayıb
Axın idarəsi Var Yox
Xəta nəzarəti Var (transmissiya və ardıcıllıq) Yox (əsas yoxlama cəmisi)
Sürət Aşağı Yüksək
İstifadə HTTP, FTP, SSH DNS, DHCP, onlayn oyunlar, streaming

Go dilində TCP ilə məlumat göndərmək üçün nümunə kod:

package main

import (
	"net"
	"log"
)

func main() {
	conn, err := net.Dial("tcp", "localhost:8080") // TCP əlaqəsi qur
	if err != nil {
		log.Fatal(err)
	}
	defer conn.Close() // Əlaqəni bağlamağı təmin et

	_, err = conn.Write([]byte("Hello, TCP!")) // Məlumat göndər
	if err != nil {
		log.Fatal(err)
	}
}

Go dilində UDP ilə məlumat göndərmək üçün nümunə kod:

package main

import (
	"net"
	"log"
)

func main() {
	addr, err := net.ResolveUDPAddr("udp", "localhost:8081") // UDP ünvanını müəyyən et
	if err != nil {
		log.Fatal(err)
	}

	conn, err := net.DialUDP("udp", nil, addr) // "əlaqə" yaradın (sessiya olmadan)
	if err != nil {
		log.Fatal(err)
	}
	defer conn.Close() // Sokinı bağla

	_, err = conn.Write([]byte("Hello, UDP!")) // Məlumat göndər
	if err != nil {
		log.Fatal(err)
	}
}