Tcp - Ip'ye Giriş

Herkese tekrar selamlar :)

Malumunuz havalar iyice soğudu Eskişehir'de, insanlar evlerine kapanmaya başladı yavaş yavaş... Ben de baktım; ee ödev yok, iş yok, hava soğuk dışarıya çıkmıyorum, dedim şu stajda yaptıklarıma şöyle bir göz gezdireyim... Birden Tcp - Ip konusu gözüme çarptı. Aslında gözüme çarpmasının sebebi, bu protokolü bitirme projemde ucundan da olsa kullanacak olmamdı[bkz: Soket Programlama], ee madem stajda da görmüşüm, neden bloğumda da paylaşmayayım dedim.

Hadi yavaştan başlayalım o zaman...



Tcp - Ip(Transmission Control Protocol - Internet Protocol [Yani Aktarım Kontrol Protokolü]) kabaca; internette bilgisayarlar arası iletişimi sağlayan bir protokol grubudur. Bilgisayarlar arasında bilgi alış-verişi, Internet Protocol Paketleri aracılığıyla yapılır. Bunu şu şekilde düşünebiliriz. Elimizde Bir A bilgisayarı ve bir de B Bilgisayarı var. Bilgisayar A, Bilgisayar B'ye göndermek istediği veriyi, paketler halinde gönderiyor. Ip paketleri, birbirinden bağımsız olarak gönderiyor. Yani; B bilgisayarının görevi, A bilgisayarının gönderdiği verileri kazanıyor. Bu cümleden şunu çıkarabiliriz. Gönderilen paketler her zaman yerine ulaşmayabilir. Peki bunun önüne nasıl geçilir? Cevap aslında basit. Gönderilen her paketin içinde, gönderilecek paketlerin sayısını belirterek A'nın toplamda kaç paket alması gerektiği kendisine söylenmiş olur. Eğer, bir eksiklik veya benzer problem olursa, A paketleri B'den tekrar ister. İşte, TCP, burada ortaya çıkıyor. Tcp'nin görevi, bu gönderilen paketlerin denetimini yapıp, tekrar geri gönderim işlemlerini halletmek.

Tcp, Ip'nin üst katmanında çalışan 2 aktarım protokolünden biri. Güvenilir ve sanal devre üzerinden çalışan bu protokol, aynı veya farklı ağlar üzerindeki 2 hostun istenilen bir şekilde haberleşmesini sağlar. Yani; Tcp, Ip'den hizmet alan bir protokoldür. Ip de, Tcp'nin sağladığı olanaklarla güvenli veri dağıtımını yapar.

Peki nedir Tcp Ip'nin bu sağladıkları:

Bir bağlantının kurulması veya sonlandırılması, Reliable(güvenilir) paket dağıtımı, Flo Control(Akış Kontrol) mekanizmasının yönetimi, veri taşmasının(overflow) önlenmesi ve hata düzenlemelerinin yapımı gibi bir çok iş Tcp üzerinden gerçekleştirilir. Bazılarını kısa kısa açıklamaya çalışayım.

Temel veri Transferi: Haberleşen Tcp hostlar üzerinde, katmanlar arası segment aktarım yoluyla haberleşme sağlanır. Tcp, veri akışı bayt'larını sıralandırıp, segment grupları halinde iletir.

Güvenilirlik: Tcp, zarar uğramış, bozulmuş veya 2lenmiş verilerin doğru olarak elde edilmesinden sorumludur. Her bir bayta sıra numarası verir ve daha sonra bu ilettiği baytlar için onay bekler. Eğer beklediği onayları alamazsa, paketleri yeniden hedef hosta gönderir.

Akış Kontrolü: Kaynak hosttan, hedefe iletilen veri miktarını kontrol etmek de Tcp'nin bir görevidir. Bunu pencere yönetimi tekniği ile yapmaktadır.

Aşağıdaki resimde, Tcp - Ip'nin yoğun kullanım alanlarından biri olan LAN(Local Area Network) gösterilmiştir.



Haberleşme esnasında, her bir host üzerindeki Tcp protokolü, sürekli hata kontrolü yapar. Eğer, herhangi bir nedenle problem ortaya çıkarsa, her 2 uçtaki Tcp yürütücüsü bu problemden haberdar olurlar ve üst katman protokollerini uyarırlar. Tcp, üst katmandan aldığı verileri segmentlere böler. Bu segmentlerin herbiri genelde 1 Ip paketi içinde taşınır. Her 1 segmente, Tcp Ip 1 numara verir. Amaç ise, ağlar üzerinde dolaşan bu segmentlerin hedefe varış sırasında karışıklıkta bunları hedef hostta tekrar düzene koyup üst katmana aktarmasıdır.

Evet, yavaştan bir giriş yapmış olduk böylece. Devamında soket kavramına girmeyi düşünüyorum. Herkese saygılar, sevgiler...

Yorumlar

  1. Güzel bir paylaşım olmuş,emeğne sağlık...
    Faydalı bir yazı dizisi olacağa benziyor.

    YanıtlaSil
  2. Teşekkürler Derya.
    Dilim döndüğünce devamını getirmeye çalışacağım..
    İyi çalışmlar...

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

Socket Kavramı

Dönem Sonu ve Bitirme Projesi

Aselsan ve MetuTech Gezisi