TCP/IP PROTOKOLÜ

kadergultekin
4 min readJan 2, 2021

--

www.afteracademy.com/blog/what-is-the-tcp-ip-model-and-how-it-works

İlkokulda babamın iş yerindeki bilgisayarda kurbağa ameliyat etme oyununu oynarken bilgisayardan uzanan kabloları görünce aklıma bir soru takıldı: bu kablolar nereye gidiyor? O kabloları o gün takip edemedim ama bugün biliyorum ki her yere gidiyorlar. www.submarinecablemap.com adresinden deniz altındaki kablo ağı haritasını incelemenizi tavsiye ederim. İşte bu kablolar beş katmanlı TCP/IP protokolünün en alt katmanı olan Fiziksel Katman (Physical Layer). Bu katmanda veri dediğimiz şey yani gönderdiğiniz fotoğraflar, mesajlar, videolar, sesler hepsi ama hepsi sadece sinyallerden ibarettir. Sinyalin nasıl iletildiği kablolarla ilgili ayrı bir konu. Sadece örnek vermek gerekirse diyebilirim ki; eğer alt yapıda fiber optik kablo kullanılıyorsa, gönderilen sinyal ışık formunda olacaktır. Tabii veri sadece kablolu iletilmez, kablosuz iletimi de mümkündür ve kablosuz iletim de fiziksel katmanda ifade edilir.

Tamam, anladık ki veriler kablolarla veya kablosuz olarak ama bir şekilde sinyallerle aktarılıyor. Peki fiziksel katmana nasıl taşınıyorlar? Bu kısımla ikinci katman olan Ağ Arayüzü Katmanı (Network Interface Layer) ilgilenir. Bu katman yazılım kısmındaki protokoller ile donanım kısmındaki ağ arasındaki iletişimi belirler. “ Data link” katmanı olarak da adlandırılır. Bu katmanda veri gönderici bilgisayardan ayrılırken kablo üzerinde alacağı yapıya yani sinyallere dönüştürülür. Bir ve sıfırları sıkça duyduğunuzdan eminim. Bir ve sıfırların kombinasyonları verileri oluşturur. Bu katmanda veri, kaynak ve hedef donanım adresleri eklenerek, iletişimin zamanı ve iletişimi başlatacak cihaz belirtilerek frame (çerçeve) adı verilen bir yapıya dönüştürülür. Başka bir yazıda bahsedeceğim CSMA/CD bu katmanda yapılır. CRC (Cyclic Redundancy Code) ile hata kontrolü bu katman üzerinde yapılır. Eğer paketlerin iletimi sırasında hata meydana gelmişse, oluşan hata frame’in içeriğine eklenerek üst katmana iletilir.

Üçüncü katman namıdiğer İnternet Katmanı (Internet Layer). Bu katmanda alıcı ve verici bilgisayarlar arasındaki iletişim belirlenir. Bu tabakaya kadar IP adresi yoktur. Bu katmanda verinin hem kaynak hem de hedef IP adresleri belirtilerek “datagram” adı verilen bir paket oluşturulur. Datagram maksimum bir boyuta kadar çıkabilir, bu nedenle internet katmanında veri, iletim için küçük boyutlu paketlere bölünür. Yine bu katmanda iletişim kesikliği, paket parçalanması, pakette hata oluşumu ya da paketin yanlış yolda olması durumları belirlenir, hatanın tam olarak hangi katmanda olduğu anlaşılır ve ona göre bir geri bildirim mesajı gönderilir.

İletim Katmanı (Transport Layer), TCP/IP protokolünün dördüncü katmanıdır. Bir üst katman olan uygulama katmanı ile alt katmanlar arasındaki iletişimi iletim katmanı sağlar. Bir alıcının veri kabul edebileceği maksimum hızın kontrol edilmesi, ağ tıkanmasını engelleyen mekanizmaların kullanılması ve tüm verinin doğru sırada ulaştığını kontrol eden teknikler bu katmanda bulunur. TCP (Transmission Control Protocol) ve UDP (User Datagram Protocol) protokolleri bu katmanda çalışır.

Kullanıcıların ve programların ağı kullanabilmesini sağlayan, her şeyin toz pembe halini gördüğümüz son katman Uygulama Katmanı (Application Layer). Bu katmandaki protokoller, iki uygulamanın birbirleriyle iletişim kurduklarında nasıl davranacaklarını belirler. Kullanılacak protokoller ise verinin türüne göre belirlenir. Bu katman iletim katmanı ile portlar aracılığıyla haberleşir. Örneğin HTTP protokolü uygulama katmanı protokollerinden birisidir ve 80 numaralı portu kullanır. TCP ve UDP port numaralarını www.wikipedia.org/List_of_TCP_and_UDP_port_numbers adresinden inceleyebilirsiniz.

www.fatihcolak.com.tr/tcp-ip-aglarda-parcalanmis-paketler-ve-guvenlik-sorunlari.html

Böylece TCP/IP protokolünün beş katmanını incelemiş olduk. Peki veri katmanlar boyunca nasıl ilerler?

Şekilde görüldüğü üzere Bilgisayar1'in Bilgisayar2'ye bir dosya göndermek istediğini düşünelim. Bu iletim Bilgisayar1'in Uygulama Katmanı (Application Layer) protokollerinden birini seçmesiyle başlar. Gönderilecek veri ve verinin kullandığı protokole uygun port numarası belirlendikten sonra veri iletim katmanına aktarılır. İletim Katmanı (Transport Layer) gönderilecek veriyi segmentlere ayırarak her birinin başına ilgili verileri, port numarasını, kontrol değişkenlerini vb. eklediği bir header bilgisi ekler. Segmentlere ayrılan veri ayrı ayrı bir alt katman olan internet katmanına aktarılır. İnternet Katmanı (Internet Layer) her bir segment için içerisinde kaynak ve hedef IP adreslerinin ve diğer kontrol değişkenlerinin bulunduğu kendi header bilgisini ekler. Bir sonraki katman Ağ Arayüzü Katmanı (Network Interface Layer) kendisine gönderilen pakete kaynak ve hedef MAC adresi bilgilerini ve diğer kontrol parametrelerini bulunduran header bilgisini ekleyerek ve paketi sinyallere dönüştürerek Fiziksel Katmana (Physical Layer) gönderir. Artık bir ve sıfırlardan oluşan veri ağ üzerinde anahtarlama ve yönlendirme işlemlerinden geçerek hedefe ulaşır. Bilgisayar1'de (kaynak makine) gerçekleşen tüm işlemler tersten yeniden yapılır ve veri yalın hale getirildikten sonra Bilgisayar2'ye (alıcı) teslim edilir.

Verinin iletildiği katmanlar boyunca protokoller verilerin beklenildiği gibi aktarılmasını sağlamak üzere bazı hesaplamalar yaparlar. Böyle bir hesaplamayı gerçekleştirmek için kaynak makine ve alıcı makine arasında bir anlaşma sağlanmalıdır. Bu anlaşmayı sağlamak için kaynak bilgisayardaki her katman veriye bir header bilgisi ekler. Alıcı bilgisayardaki katmanlar boyunca da bu header bilgileri çıkarılarak veri yalın hale dönüştürülür.

www.researchgate.net/figure/Packet-encapsulation-TCP-IP-architecture-encapsulates-the-data-from-the-upper-layer-by_fig4_49288737

Umarım faydalı bir yazı olmuştur. Bu yazıyı hazırlamak için kullandığım temel kaynak Douglas E. Comer Bilgisayar Ağları ve İnternet kitabının altıncı basımıdır. Aynı zamanda faydalandığım linkler de aşağıda belirtilmiştir. Teşekkür ederim.

www.bidb.itu.edu.tr/seyir-defteri/blog/2013/09/07/tcp-ip-protokolu

https://bidb.itu.edu.tr/seyir-defteri/blog/2013/09/07/ağ-katmanı-(network-layer)

https://afteracademy.com/blog/what-is-the-tcp-ip-model-and-how-it-works

www.bidb.itu.edu.tr/seyir-defteri/blog/2013/09/07/veri-bağlantı-(data-link)-katmanı

www.researchgate.net/figure/Packet-encapsulation-TCP-IP-architecture-encapsulates-the-data-from-the-upper-layer-by_fig4_49288737

www.fatihcolak.com.tr/tcp-ip-aglarda-parcalanmis-paketler-ve-guvenlik-sorunlari.html

--

--

kadergultekin

Karadeniz Teknik Üniversitesi Bilgisayar Mühendisliği mezunuyum. Beraber eğlenip beraber gelişmeyi hedefliyorum.