TCP nasıl çalışır?

TCP (İletim Kontrol Protokolü), bir ağ üzerinden iki cihaz arasında güvenilir ve düzenli bir iletişim kanalı kurarak çalışır. TCP/IP protokol paketinin taşıma katmanında çalışır ve gönderen ile alıcı arasında iletilen verilerin sağlam ve doğru sırada ulaşmasını sağlar. TCP bu güvenilirliği sıra numaraları, onaylar, sağlama toplamları ve akış kontrolü gibi mekanizmalar aracılığıyla başarır. 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 bir bölümün alındığını onaylar ve kayıp veya bozuk bölümlerin yeniden iletilmesini talep ederek hatasız veri teslimatını sağlar.

TCP birkaç aşamada adım adım çalışır:

  1. Bağlantı Kurulumu: Süreç, istemci ve sunucunun parametreleri görüşmek ve ilk sıra numaraları üzerinde anlaşmak için senkronizasyon (SYN) paketlerini değiştirdiği TCP anlaşmasıyla başlar. Adımlar arasında bir SYN paketinin gönderilmesi, yanıt olarak bir SYN-ACK paketinin alınması ve bağlantıyı onaylamak için bir ACK paketinin gönderilmesi yer alır.
  2. Veri Aktarımı: Bağlantı kurulduktan sonra segmentler halinde veri aktarımı gerçekleşir. Gönderen, verileri yönetilebilir parçalara böler, sıra numaralarıyla birlikte TCP başlıklarını ekler ve bunları ağ üzerinden gönderir. Alıcı her bir bölümü onaylayarak göndericinin kayıp bölümleri yeniden iletmesine olanak tanır.
  3. Akış Kontrolü: TCP, alıcı kapasitesine bağlı olarak veri iletim hızlarını yönetmek için akış kontrolü uygular. Alıcı, ne kadar veri kabul edebileceğini gösteren bir pencere boyutu reklamı yaparak aşırı yüklemeyi önler ve verimli veri aktarımı sağlar.
  4. Hata İşleme: TCP, segment başlıklarındaki sağlama toplamlarını kullanarak hataları tespit eder. Hatalar tespit edilirse, alıcı segmenti atar ve seçici tekrar veya benzer mekanizmalar kullanarak yeniden iletim talep eder.
  5. Bağlantı Sonlandırma: Veri alışverişi tamamlandığında TCP bir bağlantı sonlandırma işlemi başlatır. Bu, bağlantıyı zarif bir şekilde kapatmak için FIN (sonlandırma) paketlerinin değiş tokuşunu, kaynakların serbest bırakılmasını ve her iki tarafın da kapanışı kabul etmesini sağlamayı içerir.

TCP oturumu, iki ana bilgisayar arasındaki TCP bağlantısının tüm yaşam döngüsünü ifade eder. Bağlantı kurmak için TCP anlaşmasıyla başlar, segmentler kullanılarak veri alışverişini içerir, akış kontrolünü ve hata yönetimini yönetir ve bağlantının sonlandırılmasıyla sona erer. Oturum boyunca TCP, gönderen ve alıcı arasında güvenilir ve düzenli veri aktarımı sağlamak için durum bilgilerini, sıra numaralarını, alındı ​​bildirimlerini ve diğer parametreleri yönetir.

TCP, TCP/IP modelinde taşıma katmanında çalıştığı katmanlı bir yaklaşımı izler. Bu model, TCP’nin uçtan uca iletişim güvenilirliğini ve akış kontrolünü ele almasıyla ağ iletişimini katmanlara ayırır. Aktarım katmanının altında IP (İnternet Protokolü) adreslemeyi ve yönlendirmeyi yönetirken, onun üstünde HTTP, FTP ve SMTP gibi uygulama katmanı protokolleri güvenilir veri alışverişi için TCP hizmetlerini kullanır.

TCP veri aktarımı, gönderenin verileri bölümlere ayırması ve sıra numaralarıyla TCP başlıklarını eklemesiyle başlar. Bu bölümler ağ üzerinden, her bir bölümün alındığını onaylayan alıcıya iletilir. Segmentler kaybolur veya bozulursa gönderen, alıcı bildirimlerine ve seçici tekrar mekanizmalarına dayanarak bunları yeniden iletir. TCP, segmentleri numaralandırarak ve bunları alıcıda doğru sıraya göre yeniden birleştirerek düzenli teslimatı sağlar. Bu güvenilir veri aktarım mekanizması, TCP’nin güvenilmez ağ bağlantıları üzerinden hatasız iletişim sağlamasına olanak tanıyarak, onu garantili teslimat ve hassas veri sıralaması gerektiren uygulamalar için uygun hale getirir.