Skip to content

TCP ve UDP

10 de Mayıs de 2021

İletim Kontrol Protokolü ve Kullanıcı Datagram Protokolü, İnternet Protokolü ile yaygın olarak kullanılan iki taşıma katmanı protokolüdür. Bir protokol, iki bilgisayarın birbirini anlamak ve veri alışverişi yapmak için izlediği bir dizi prosedür ve kuraldır. TCP, ikisinin en yaygın kullanılan protokolü olmasına rağmen, UDP bazı durumlarda daha kullanışlıdır.

Genel Bulgular

TCP

  • Verilerin gönderildiği gibi gelmesini garanti eder.
  • Veri akışlarını hata kontrol eder.
  • 20 baytlık bir başlık, isteğe bağlı 40 baytlık işlev verisine izin verir.
  • UDP’den daha yavaş.
  • Güvenilirlik gerektiren uygulamalar için en iyisi.

UDP

  • Verilerin ulaşacağının garantisi yok.
  • Hata kontrolü sağlanmadı.
  • 8 baytlık bir başlık yalnızca zorunlu işlev verilerine izin verir.
  • TCP’den daha hızlı.
  • Hız gerektiren uygulamalar için idealdir.

Her iki protokol de internet üzerinden paketler halinde veri gönderir. İkisinden TCP bağlantı odaklıdır. Bir bağlantı kurulduktan sonra, veriler çift yönlü olarak hareket eder. UDP, bağlantısız olan daha basit bir protokoldür. TCP, UDP’den daha sağlamdır. Hata düzeltme işlevleri ve yüksek güvenilirlik sağlar. UDP, öncelikle hata düzeltme sağlamadığı için TCP’den daha hızlıdır. Ek olarak, TCP akış denetimini yönetirken, UDP’nin akış denetimi seçeneği yoktur.

Güvenilirlik Açısından En İyisi: TCP

TCP

  • Verilerin garantili teslimi.
  • Veri paketlerini izler.
  • Paketlerde hata olup olmadığını denetler.
  • Akış kontrolü.
  • Daha fazlası seçeneğiyle 20 baytlık başlıklar.

UDP

  • Teslimat garantisi yok.
  • Paketler kaybolabilir.
  • Akış kontrolü yok.
  • Başlıklar 8 bayt ile sınırlıdır.

TCP, alıcıya veri teslimini garanti eder. Herhangi bir veri kaybolursa, TCP kaybolan verileri kurtarmak için adımlar atar ve yeniden gönderir. Bunu yapmak için TCP, veri paketlerini izler ve paketlerde hata olup olmadığını kontrol eder. UDP, verilerin teslimini garanti etmez. Ek olarak, UDP paketleri aktarılırken kaybolabilir veya bozulabilir. Hem TCP hem de UDP, ağ bağlantıları üzerinden aktarım için ileti verilerini paketlemenin bir parçası olarak üstbilgileri kullanır. TCP, iki protokolden daha sağlam olduğu için, başlığı 20 baytta daha büyüktür ve ek veri seçeneği bulunurken, UDP başlıkları boyut olarak 8 bayt ile sınırlıdır.

Hız için En İyisi: UDP

TCP

  • Yavaş çünkü birçok işlevi yerine getiriyor.

UDP

  • Hızlıdır çünkü sınırlı işlevler sağlar.

TCP güvenilir olmasına rağmen, esas olarak daha fazla işlev gerçekleştirdiği için UDP’den daha yavaştır. Oyuncular ve videoyla çalışan kişiler gibi mümkün olan en hızlı hıza ihtiyaç duyan son kullanıcılar UDP’den yararlanmaktadır.

Kullanım için En İyisi: Kullanıma Bağlı

TCP

  • Web, dosya aktarımı, e-posta ve güvenli kabuk için en iyisi.

UDP

  • VPN’ler, video akışı, VoIP, canlı yayınlar ve çevrimiçi oyunlar için en iyisi.

TCP güvenilir olduğundan, web, e-posta ve FTP gibi yüksek güvenilirlik gerektiren ancak hız gerektirmeyen durumlarda en iyisidir. UDP’nin hızı, onu çevrimiçi oyunlar, canlı yayınlar, VPN tünelleme ve video akışı için en uygun hale getirir.

TCP Başlık Biçimi

Her TCP üstbilgisi, toplam 20 bayt (160 bit) boyutunda 10 gerekli alana sahiptir. İsteğe bağlı olarak boyutu 40 bayta kadar olan ek bir veri alanı içerebilir.

Cankurtaran
8 bit 1 bayta eşittir. TCP üstbilgileri, kaynak ve hedef iletişim uç noktalarından başlayarak aşağıdaki sırayla görünür:

  • Kaynak TCP bağlantı noktası numarası (2 bayt veya 16 bit): Kaynak TCP bağlantı noktası numarası, gönderen cihazı temsil eder.
  • Hedef TCP bağlantı noktası numarası (2 bayt veya 16 bit): Hedef TCP bağlantı noktası numarası, alıcı cihaz için iletişim bitiş noktasıdır.
  • Sıra numarası (4 bayt veya 32 bit): Mesaj gönderenler, bir mesaj grubunun sırasını işaretlemek için sıra numaralarını kullanır.
  • Onay numarası (4 bayt veya 32 bit): Hem gönderenler hem de alıcılar alındı ​​bildirimini kullanır son alınan veya gönderilmesi beklenen mesajların sıra numaralarını iletmek için sayılar alanı.
  • TCP veri ofseti (4 bit): Veri uzaklığı alanı, bir TCP başlığının toplam boyutunu dört baytın katları halinde depolar. İsteğe bağlı TCP alanını kullanmayan bir başlığın veri uzaklığı 5 (20 baytı temsil eder), maksimum boyutlu isteğe bağlı alanı kullanan bir başlığın veri uzaklığı 15’tir (60 baytı temsil eder).
  • Ayrılmış veriler (3 bit): TCP üstbilgilerinde ayrılmış veriler her zaman sıfır değerine sahiptir. Bu alan, toplam başlık boyutunu, bilgisayar veri işlemenin verimliliği için önemli olan dört baytın katı olarak hizalar.
  • Kontrol bayrakları (9 bit’e kadar): TCP, belirli durumlarda veri akışını yönetmek için altı standart ve üç genişletilmiş denetim bayrağı (her biri Açık veya Kapalı’yı temsil eden ayrı bir bit) kullanır.
  • Pencere boyutu (2 bayt veya 16 bit): TCP göndericileri, pencere boyutu adı verilen bir sayı kullanır, karşılığında bir onay gerektirmeden önce bir alıcıya ne kadar veri gönderdiklerini düzenlemek için. Pencere boyutu çok küçükse, ağ veri aktarımı gereksiz yere yavaştır. Pencere boyutu çok büyükse, ağ bağlantısı doygun hale gelebilir veya alıcı, gelen verileri yeterince hızlı işleyemeyebilir ve bu da performansın yavaşlamasına neden olabilir. Protokolde yerleşik olan pencereleme algoritmaları, boyut değerlerini dinamik olarak hesaplar ve gönderenler ve alıcılar arasındaki değişiklikleri koordine etmek için bu TCP başlıkları alanını kullanır.
  • TCP sağlama toplamı (2 bayt veya 16 bit): Bir TCP başlığı içindeki sağlama toplamı değeri, alıcının bozuk veya tahrif edilmiş mesajları algılamasına yardımcı olmak için bir matematiksel teknik olarak protokol göndericisi tarafından oluşturulur.
  • Acil işaretçi (2 bayt veya 16 bit): Acil işaretçi alanı genellikle sıfıra ayarlanır ve yok sayılır, ancak kontrol bayraklarından biriyle bağlantılı olarak, bir mesajın bir alt kümesini öncelikli işlem gerektiriyor olarak işaretlemek için bir veri ofseti olarak kullanılabilir.
  • TCP isteğe bağlı veriler (0 ila 40 bayt): İsteğe bağlı TCP verilerinin kullanımları, özel onay ve pencere ölçekleme algoritmalarını içerir.

UDP Başlık Biçimi

UDP, TCP’ye kıyasla yetenek açısından sınırlı olduğundan, başlıkları daha küçüktür. Bir UDP başlığı, aşağıdaki dört gerekli alana bölünmüş 8 bayt içerir:

  • Kaynak UDP bağlantı noktası numarası (2 bayt): Kaynak UDP bağlantı noktası numarası, gönderen cihazı temsil eder.
  • Hedef UDP bağlantı noktası numarası (2 bayt): Hedef UDP bağlantı noktası numarası, alıcı cihaz için iletişim bitiş noktasıdır.
  • Veri uzunluğu (2 bayt): UDP’deki uzunluk alanı, hem başlık hem de veriler dahil olmak üzere her bir datagramın toplam boyutunu temsil eder. Bu alan, minimum 8 bayttan (gerekli başlık boyutu) 65.000 baytın üzerindeki boyutlara kadar değişir.
  • UDP sağlama toplamı (2 bayt): TCP’ye benzer şekilde, bir UDP sağlama toplamı, alıcıların mesajın herhangi bir bozuk biti için gelen verileri çapraz kontrol etmesine izin verir.

Nihai Karar

TCP’nin en yaygın kullanılan protokol olmasının bir nedeni vardır. Sağlam ve güvenilirdir ve verilerin tam olarak gönderildiği gibi alınmasını garanti eder. Hata kontrollü bilgi akışı onu biraz yavaşlatabilir, ancak çoğu durumda gecikme bir anlaşmayı bozmaz. UDP’nin TCP’den daha parlak olduğu zaman, videoların, VPN’lerin veya çevrimiçi oyunların akışında olduğu gibi hızın kritik öneme sahip olduğu zamandır.