TCP Özellikleri
Önceki konuda, TCP ve UDP'nin iki taşıma katmanı protokolü olduğunu öğrendiniz. Bu konuda, TCP'nin ne yaptığı ve UDP yerine onu kullanmanın ne zaman iyi bir fikir olduğu hakkında daha fazla ayrıntı verilmektedir.TCP ve UDP arasındaki farkları anlamak için, her protokolün belirli güvenilirlik özelliklerini nasıl uyguladığını ve her protokolün konuşmaları nasıl izlediğini anlamak önemlidir.
Veri bölümleme ve yeniden birleştirmenin temel işlevlerini desteklemeye ek olarak, TCP aşağıdaki hizmetleri de sağlar:
- Bir Oturum Kurar - TCP, herhangi bir trafiği iletmeden önce kaynak ve hedef cihazlar arasında müzakere eden ve kalıcı bir bağlantı (veya oturum) oluşturan bağlantı yönelimli bir protokoldür. Oturum oluşturma yoluyla, cihazlar belirli bir zamanda iletilebilecek trafik miktarını müzakere eder ve ikisi arasındaki iletişim verileri yakından yönetilebilir.
- Güvenilir Teslimat Sağlar - Birçok nedenden dolayı, bir segmentin ağ üzerinden iletilmesi nedeniyle bozulması veya tamamen kaybolması mümkündür. TCP, kaynak tarafından gönderilen her segmentin hedefe ulaşmasını sağlar.
- Aynı Sırada Teslimat Sağlar - Ağlar, farklı iletim hızlarına sahip birden fazla yol sağlayabildiğinden, veriler yanlış sırada gelebilir. Segmentleri numaralandırarak ve sıralayarak TCP, segmentlerin doğru sırayla yeniden birleştirilmesini sağlar.
- Akış Kontrolünü Destekler - Ağ ana bilgisayarlarının sınırlı kaynakları vardır (örn. bellek ve işlem gücü). TCP, bu kaynakların aşırı yüklendiğinin farkına vardığında, gönderen uygulamadan veri akış hızını düşürmesini isteyebilir. Bu, kaynağın ilettiği veri miktarını düzenleyen TCP tarafından yapılır. Akış kontrolü, alıcı ana bilgisayarın kaynakları dolduğunda verilerin yeniden iletilmesi ihtiyacını önleyebilir.
TCP Başlığı
TCP, durum bilgisi olan bir protokoldür, yani iletişim oturumunun durumunu takip eder. Bir oturumun durumunu izlemek için TCP, hangi bilgileri gönderdiğini ve hangi bilgilerin onaylandığını kaydeder. Durum bilgisi olan oturum, oturumun kurulmasıyla başlar ve oturumun sonlandırılmasıyla sona erer.Bir TCP segmenti, uygulama katmanı verilerini kapsüllerken 20 bayt (yani 160 bit) ek yük ekler. Şekil, bir TCP başlığındaki alanları göstermektedir.
Source Port = Kaynak uygulamayı bağlantı noktası numarasına göre tanımlamak için kullanılan 16 bitlik bir alan.
Destination Port = Hedef uygulamayı bağlantı noktası numarasına göre tanımlamak için kullanılan 16 bitlik bir alan. |
Acknowledgment Number = Verilerin alındığını ve kaynaktan bir sonraki baytın beklendiğini belirtmek için kullanılan 32 bitlik bir alan.
Header Length = TCP segment başlığının uzunluğunu belirten, "veri ofseti" olarak bilinen 4 bitlik bir alan.
Reserved = İleride kullanılmak üzere ayrılmış 6 bitlik bir alan.
Control bits = TCP segmentinin amacını ve işlevini gösteren bit kodlarını veya bayrakları içeren 6 bitlik bir alan. |
Checksum = İçerilen verilerin acil olup olmadığını belirtmek için kullanılan 16 bitlik bir alan.