Kullanıcı Datagram Protokolü (UDP) 1980’de tanıtıldı ve var olan en eski ağ protokollerinden biridir. İstemci / sunucu ağ uygulamaları için basit bir OSI aktarım katmanı protokolüdür, İnternet Protokolüne (IP) dayanır ve TCP’nin ana alternatifidir. UDP’nin kısa bir açıklaması, TCP ile karşılaştırıldığında güvenilmez bir protokol olduğunu açıklayabilir. Bu doğru olsa da, veri aktarımlarında herhangi bir hata kontrolü veya düzeltme olmadığından, bu protokol için TCP’nin eşleşemeyeceği kesinlikle uygulamalar olduğu da doğrudur. UDP (bazen UDP / IP olarak da anılır) genellikle video konferans uygulamalarında veya özellikle gerçek zamanlı performans için yapılmış bilgisayar oyunlarında kullanılır. Daha yüksek performans elde etmek için protokol, uygulama tarafından dikte edildiği gibi, tek tek paketlerin bırakılmasına (yeniden deneme yapılmadan) ve UDP paketlerinin gönderildiklerinden farklı bir sırada alınmasına izin verir. Bu iletim yöntemi, TCP ile karşılaştırıldığında, daha az veri ek yüküne ve gecikmeye izin verir. Paketler ne olursa olsun gönderildiği ve herhangi bir hata kontrolü yapılmadığı için, daha az bant genişliği kullanılmasıyla sonuçlanır.
UDP, TCP’den Daha İyi mi?
Bu sorunun cevabı bağlama bağlıdır çünkü UDP, TCP’den daha iyi performansa, ancak muhtemelen daha kötü kaliteye izin verir. UDP’nin TCP’ye göre tercih edilebileceği durumlara iyi bir örnek, çevrimiçi oyun oynama, görüntülü sohbet veya sesli iletimler gibi daha az gecikme süresiyle daha iyi performans gösteren bir uygulama söz konusu olduğunda verilebilir. Paketler kaybolabilir, ancak kaliteyi düşürmek için daha az genel gecikme ile çok fazla kalite kaybı gerçekten algılanmaz. Çevrimiçi oyunlarda UDP trafiği, bağlantı anlık olarak kesilse veya bazı paketler herhangi bir nedenle kesilse bile oyunun devam etmesine izin verir. Hata düzeltmesi söz konusu olsaydı, paketler hataları telafi etmek için kaldıkları yerden tekrar girmeye çalıştıkları için bağlantı zaman kaybına uğrayacaktır, ancak bu canlı video oyunlarında gereksizdir. Aynısı canlı yayın için de geçerlidir. Bununla birlikte, UDP’nin dosya aktarımları söz konusu olduğunda bu kadar iyi olmamasının nedeni, onu düzgün kullanmak için dosyanın tamamına ihtiyaç duymanızdır. Bununla birlikte, tadını çıkarmak için bir video oyununun veya videonun her paketine ihtiyacınız yok. Hem TCP hem de UDP, OSI modelinin 4. katmanında bulunur ve TFTP, RTSP ve DNS gibi hizmetlerle çalışır.
UDP Datagramları
UDP trafiği, tek bir mesaj biriminden oluşan her veri birimiyle, datagram denen şey aracılığıyla çalışır. Başlık ayrıntıları ilk sekiz baytta saklanır, ancak geri kalanı asıl mesajı tutan şeydir. Burada listelenen bir UDP datagram başlığının her bölümü iki bayttır:
- Kaynak bağlantı noktası numarası
- Hedef bağlantı noktası numarası
- Datagram boyutu
- Sağlama toplamı
UDP bağlantı noktası numaraları, farklı uygulamaların TCP’ye benzer şekilde kendi veri kanallarını korumalarına izin verir. UDP bağlantı noktası başlıkları iki bayt uzunluğundadır; bu nedenle, geçerli UDP bağlantı noktası numaraları 0 ile 65535 arasındadır. UDP datagram boyutu, başlık ve veri bölümlerinde bulunan toplam bayt sayısının bir sayısıdır. Başlık uzunluğu sabit bir boyut olduğundan, bu alan, değişken boyutlu veri bölümünün (bazen yük olarak adlandırılır) uzunluğunu etkili bir şekilde izler. Datagramların boyutu işletim ortamına bağlı olarak değişir, ancak maksimum 65535 bayta sahiptir. UDP sağlama toplamları, mesaj verilerinin kurcalanmasını önler. Sağlama toplamı değeri, önce gönderen ve daha sonra alıcı tarafından hesaplanan veri birimi verilerinin bir kodlamasını temsil eder. Aktarım sırasında tek bir verikatarının tahrif edilmesi veya bozulması durumunda, UDP protokolü bir sağlama toplamı hesaplama uyuşmazlığı tespit eder. UDP’de, sağlama toplamının zorunlu olduğu TCP’nin aksine sağlama toplamı isteğe bağlıdır.