İçindekilerGirişİndex
YukarıİlkÖnceki YokSonrakiSon
Geriİleri
Yazdır

TCP'nin Ana Özellikleri

Giriş

TCP üst katmanlara aşağıdaki servisleri sağlar:

TCP bağlantı-yönlendirmeli bir protokoldür. Bundan şunu anlarız ki TCP, modülüne giren veya çıkan her bir ‘kullanıcı verisi nehir-akışı' ile ilgili durum ve konum bilgilerini sağlar. TCP aynı zamanda bir ağ veya çoklu ağlar boyunca yerleşmiş bir alıcı kullanıcı uygulaması ile (veya diğer ULP) uçtan-uca veri transferi yapılmasından sorumludur. Şekil 9-1'de TCP'nin, veriyi üç ağ boyunca iki host arasında iletmesi gösterilmiştir. TCP iletim yaparken sıra numaraları ve pozitif acknowledgment'ler kullanır.

İletilen her bir bayt için bir sıra numarası atanır. Alıcı TCP modülü bir toplamsal-hata rutini kullanarak verinin iletim boyunca bir hasara uğrayıp uğramadığını kontrol eder. Eğer veri kabul edilebilir ise, TCP gönderici-TCP modülüne bir pozitif acknowledgment gönderir. Eğer veri hasarlı ise, alıcı-TCP veriyi yok eder ve bir sıra numarası kullanarak gönderici-TCP'ye sorun hakkında bilgi gönderir. TCP zamanlayıcıları tedavi ölçümleri yapmadan önce zaman kaymasının aşırı olmadığından emin olurlar. Tedavi ölçümleri alıcı siteye acknowledgment gönderilerek veya veriyi gönderici siteye yeniden-göndererek yapılır.

Şekil 9-1 Aktarım Katmanının Diğer Katmanlarla İlişkisi

TCP, veriyi bir ULP'den nehir-yönlendirmeli biçimde alır. Nehir-yönlendirmeli protokoller ayrık karakterler (blok, çerçeve veya datagram değil) göndermek üzere tasarlanmamışlardır. Baytlar bir ULP'den nehir temelli, yani bayt-bayt gönderilir. Baytlar TCP katmanına varınca, TCP segmentleri olarak gruplaşırlar. Bu segmentler daha sonra diğer varışa iletilmek üzere IP'ye (veya başka bir alt-katman-protokolüne) geçirilir. Segment uzunluğuna TCP karar verir, ancak bir sistem geliştiricisi TCP'nin bu kararı nasıl vereceğine karar verebilir.

TCP ayrıca ikilenmiş veri kontrolü yapar. Eğer gönderici TCP veriyi tekrar yollarsa, alıcı TCP tüm ikilenmiş gelen veriyi yok eder. Örneğin, alıcı TCP acknowledgment trafiğini belli bir zamanda gerçekleştirmezse, gönderici TCP veriyi yeniden gönderir ve veri ikilenmiş olur.

TCP push fonksiyonu kavramını destekler. Bir uygulama; alt katmandaki TCP'ye geçirdiği tüm verinin iletildiğinden emin olmak istediğinde push fonksiyonunu çalıştırılır. Böylece, push fonksiyonu TCP'nin tampon yönetimini ele geçirir. ULP push'u kullanmak için, push parametresi bayrağı 1'e set edilmiş bir send komutunu TCP'ye gönderir. Bu işlem TCP'nin, tüm tamponlanmış trafiği bir veya daha fazla segment içerisinde varışa ilerletmesini gerektirir. TCP kullanıcısı bir close-bağlantı işlemi kullanarak da push fonksiyonunu sağlayabilir.

TCP acknowledgment'ler için sıra numaraları kullanır. TCP bu sıra numaralarını aynı zamanda, segmentlerin son varışa sırası ile varıp varmadıklarını kontrol etmek üzere, segmentleri yeniden-sıralamada kullanır. TCP bağlantısız bir sistemin üzerinde yer aldığı için ki bu sistem internet içerisinde dinamik, çoklu rotalar kullanabilir, internette ikilenmiş datagramların oluşması muhtemeldir. Daha önce değindiğimiz gibi, TCP ikilenmiş datagramlar içerisinde taşınmış, ikilenmiş segmentleri yok eder.

TCP her bir oktete sıra numarası verir. Daha sonra ilettiği bu oktetlere karşılık acknowledgment (ACK) bekler. Eğer belirli aralıklarla beklenen ACK'leri almazsa ACK almadığı kısımları yeniden varış host'a iletir. TCP olumsuz bir geri bildirim mekanizması kullanmaz.

Alıcı TCP modülü gönderici verisi üzerinde akış kontrolü yapabilir. Böylece tampon overrun ve alıcı cihazın doyması (saturation) gibi sorunlar engellenir. TCP'nin kullandığı kavramın, haberleşme protokollerinde kullanımı alışılmış değildir. Akış kontrolü göndericiye bir "pencere" değeri verilmesine dayanır. Gönderici bu pencere ile belirlenmiş sayıda bayt iletebilir, pencere kapanınca gönderici veri göndermeyi durdurmalıdır.

TCP'nin bir hüneri de host cihazı üzerindeki çoklu kullanıcı oturumlarını çoğullayabilmesidir. Çoğullama; TCP ve IP modüllerindeki portlar ve soketler için basit isimlendirme anlaşmaları kullanılarak gerçekleştirilir. TCP, iki TCP varlığı arasında tam-duplex iletim sağlar. Böylece bir dönüş işareti beklemeksizin (half-duplex'te gereklidir) eşzamanlı iki-yönlü iletim yapılır.

TCP kullanıcının bağlantı için güvenlik ve öncelik seviyeleri belirleyebilmesine olanak tanır. Bu iki özellik, tüm TCP ürünlerinde bulunmayabilir ancak TCP DOD standardında tanımlanmışlardır. TCP iki kullanıcı arasında hoş close sağlar. Hoş close bağlantı koparılmadan önce tüm trafiğin ACK'larının oluşturulduğundan emin olunmasını sağlar.

İçindekilerGirişİndex
YukarıİlkÖnceki YokSonrakiSon
Geriİleri
Yazdır