TCP (İletim Kontrol Protokolü), TCP anlaşması adı verilen bir işlemle başlar. Bu el sıkışma, veri iletimi başlamadan önce iki cihaz (genellikle bir istemci ve bir sunucu) arasındaki parametreleri başlatır ve müzakere eder. TCP anlaşması üç adımdan oluşur: SYN, SYN-ACK ve ACK. İlk olarak istemci, bir bağlantı isteği başlatmak için sunucuya bir SYN (senkronizasyon) paketi gönderir. Sunucu, SYN’yi aldığını ve bağlantı kurmaya istekli olduğunu belirten bir SYN-ACK (senkronizasyon onayı) paketiyle yanıt verir. Son olarak istemci, SYN-ACK’nin alındığını onaylayan bir ACK (onay) paketini sunucuya geri gönderir. Bu el sıkışma tamamlandıktan sonra her iki taraf da güvenilir veri iletimi için gerekli olan ilk sıra numaraları, pencere boyutları ve diğer parametreler üzerinde anlaşmaya varır.
TCP, bir ağ üzerinden iletim için verilerin bölümler halinde kapsüllenmesiyle oluşturulur. Bir uygulama veri gönderdiğinde, TCP onu segmentler olarak bilinen daha küçük birimlere ayırır. Her bölüm, sıra numaraları, onay numaraları, pencere boyutları ve hata tespiti için sağlama toplamları gibi kontrol bilgilerini içeren bir TCP başlığı içerir. Bu segmentler daha sonra ağ üzerinden yönlendirme ve dağıtım için IP katmanına aktarılır. Alındıktan sonra, alıcı uçtaki TCP, segmentleri orijinal veri akışında yeniden birleştirir ve paketler hatalı gelse veya kaybolsa bile verilerin güvenilir ve düzenli bir şekilde teslim edilmesini sağlar.
TCP’nin üç temel adımı şunlardır:
- Bağlantı Kurulumu: Bu, daha önce açıklanan TCP anlaşması sürecini içerir; burada bir istemci ve sunucu, veri iletimi başlamadan önce güvenilir bir bağlantı kurmak için SYN, SYN-ACK ve ACK paketlerini değiştirir.
- Veri Aktarımı: Bağlantı kurulduğunda TCP, segmentler halinde veri aktarımını yönetir. Veri bölümleri göndericiden alıcıya gönderilir ve TCP, sıralama için sıra numaralarını ve güvenilirlik için onayları kullanarak bunların doğru sırada ve hatasız ulaşmasını sağlar.
- Bağlantı Sonlandırma: Veri aktarımı tamamlandığında TCP, bağlantıyı zarif bir şekilde kapatmak için bir bağlantı sonlandırma işlemi başlatır. Bu, her iki tarafın da bağlantıyı koordineli bir şekilde kapatmak için FIN (bitirme) paketlerini değiştirdiği bir el sıkışmayı içerir. Her iki taraf da FIN paketlerini kabul ettiğinde bağlantı tamamen kapatılır ve bağlantıya tahsis edilen kaynaklar serbest bırakılır.
TCP, bir ağ üzerinden iki ana bilgisayar arasında bağlantıya yönelik bir iletişim kanalı kurarak çalışır. Sıra numaraları, alındı bildirimleri ve akış kontrolü gibi mekanizmalar aracılığıyla verilerin güvenilir şekilde iletilmesini sağlar. Bir gönderici veri ilettiğinde, TCP onu parçalara ayırır, kontrol bilgilerini içeren başlıklar ekler ve bunları alıcıya gönderir. Alıcı, her bölümün alındığını onaylar ve kayıp veya bozuk bölümlerin yeniden iletilmesini talep eder. TCP ayrıca alıcının veriyle aşırı yüklenmesini önlemek için akış kontrolünü de yönetir ve iletim hızlarını ağ koşullarına göre ayarlar. Bu özelliklerin birleşimi, TCP’nin çeşitli ağlar arasında hatasız, düzenli ve güvenilir veri aktarımı sağlamasına olanak tanıyarak, onu garantili teslimat ve veri iletimi üzerinde hassas kontrol gerektiren uygulamalar için uygun hale getirir.