Hepimiz interneti her gün nasıl çalıştığını düşünmeden her türlü şey için kullanıyoruz . Sadece bir düğmeyi tıklayın ve posta gönderilir. Birkaç saniye içinde, diğer taraftan posta alınır. Hepsi çok hızlı ve basit. Hepimiz hızlı bir şekilde katılabiliriz. Ama gerçekten bu kadar basit mi? Ağ oluşturmayı bu kadar pürüzsüz ve basit kılan perde arkasında ne olacağını hiç merak ettiniz mi? Networking omurgası, sözde TCP/IP modelidir ve bugün ana konumuz olacak.

Bu yazıda, TCP/IP modelinin amacını açıklayacağız ve nasıl çalıştığını tanımlamaya çalışacağız.

TCP/IP modeli nedir?

Ağlar doğru çalışır, çünkü tüm cihazlar ve yazılımlar standartlar ve protokoller şeklinde gelen belirli bir kural kümesini takip eder. Bugün, en çok kullanılan ağ modeli TCP/IP'dir. Bugün yapılan internete bağlanması gereken her cihaz TCP/IP için destek içeriyor.

Her Windows PC, TCP/IP protokolünü destekler (ve her macOS bilgisayarı, her iOS cihazı, her Android aygıtı, et.)

TCP/IP, bilgisayar ağını standartlaştırmak için kullanılan bir modeldir. Bilgisayarların bir ağda iletişim kurma şeklini tanımlar. TCP/IP modeli birkaç katmandan oluşur. Bir bilgisayardan diğerine gönderilen her veri biti, gönderilmeden ve/veya alınmadan önce tüm bu katmanlardan geçmek zorundadır.

TCP/IP'deki TCP ne anlama geliyor?

TCP, iletim kontrol protokolü için bir kısaltmadır. İnternet üzerinden paket gönderilmesini sağlayan ve paketlerin diğer uçta başarıyla alınmasını sağlayan bir iletişim standardıdır.

TCP, uygulama verilerinin bir bilgisayardan internet üzerinden başka bir bilgisayara veya sunucuya gönderilme şeklini tanımlar. TCP, verileri göndermeden önce segment adı verilen daha küçük bitlere ayırır. Gönderilen her segment için TCP protokolü, bu segment hakkında bazı temel bilgileri içeren bir başlık oluşturur.

Başlık, kaynak ve hedef bağlantı noktaları hakkında bilgi içerir. Cihazlar arasında iletişim için kullanılan uygulama bağlantı noktası numarasını belirler. Örneğin, uygulama HTTP ise (bir web sitesi açmaya çalışıyorsanız), hedef bağlantı noktası 80 olacaktır. Bir HTTPS web sitesini ziyaret etmeye çalışıyorsanız, hedef bağlantı noktası 443 olacaktır. Port 25 olacaktır. Bir sunucudan (FTP protokolü) dosya aktarmaya çalışıyorsanız, başlıktaki hedef bağlantı noktası 20 ve 21 olacaktır.

Bir tür sunucu ile iletişim kuran bir istemciniz olduğunuzu varsayarsak, cihazınız için kaynak bağlantı noktaları TCP tarafından rastgele oluşturulur. Bir web sitesini ziyaret ederken, web sunucusuyla iletişim kuran bir istemci (HTTP veya HTTPS sunucusu). Bu nedenle, Web adresini yazdığınızda ve Enter tuşuna basın, TCP, web tarayıcınızdaki belirli bir sekmeye rastgele bir kaynak bağlantı noktası atar. Bu bağlantı noktası aracılığıyla bilgisayarınız sunucudan bilgi alacaktır.

İsteğiniz web sunucusuna ulaştığında, sunucu verileri size gönderir. Veriler ayrıca kaynak ve hedef bağlantı noktalarına sahip TCP başlığına da sahip olacaktır. Bu durumda, kaynak bağlantı noktası 80 (HTTP web sitesi) veya 443 (HTTPS web sitesi) olacak ve hedef bağlantı noktası bilgisayarınızdaki TCP tarafından rastgele oluşturulan bağlantı noktası numarası olacaktır. Sonuç olarak, web sitesinin içeriğini tarayıcınızda göreceksiniz.

Kaynak ve hedef bağlantı noktalarının yanı sıra, TCP başlığı birçok başka bilgi içerir.

Örneğin, TCP ayrıca her veri segmentine bir sıra numarası atar, böylece alıcı tüm segmentlerin hedefe ulaşıp ulaşmadığını ve tüm segmentleri nasıl bir araya getireceğini bilir.

Ayrıca, alıcının gönderene hangi paketin alınması beklendiğini söyleyebilmesi için her segmente onay numaraları atanır.

Sağlama toplamı TCP başlığında bulunan başka bir bilgi parçasıdır. Bu bilgi hata algılama için kullanılır. Her veri segmenti için, göndermeden önce TCP bu segment için sağlama toplamını hesaplar. Bu segment alıcıya ulaştığında, alıcı makine de sağlama toplamını hesaplar. Değerler eşleşiyorsa, veriler alınır. Sağlık toplamları eşleşmezse, alıcı verileri bırakacaktır.

TCP başlığı birkaç bilgi daha içerir, ancak işleri çok karmaşıklaştırmamaya izin vermez. Bu, TCP/IP modelinin nasıl çalıştığını açıklamak için fazlasıyla yeterli olacaktır. TCP başlığı hakkında daha fazla bilgi edinmek istiyorsanız, aşağıdaki videoyu izleyin.

TCP başlığı açıklandı

TCP başlığında tüm bu bilgilerin amacı, gönderenden alıcıya güvenli ve güvenilir bir veri akışı sağlamaktır.

TCP, veri iletimi için kullanılan tek protokol değildir. Diğer ortak protokole UDP veya Kullanıcı Datagram Protokolü denir. TCP'ye benzer ama çok daha basit. UDP kullanılarak gönderilen her veri segmentinin de bir başlığı vardır, ancak başlık çok daha küçüktür. Yalnızca kaynak ve hedef bağlantı noktaları, uzunluk ve sağlama toplamı içerir. UDP o kadar güvenilir değildir ve bağlantı kalitesine bağlı olarak çok sayıda veri paketini kaybedebilirsiniz. Öte yandan TCP, bu tür olayları önleyecek ve her kayıp veri paketini yeniden sunacaktır. Peki, bu kadar güvenilmezse neden UDP kullanıyoruz?

Gerçek şu ki - bazı uygulamalar hız ve düşük gecikme iletişimi güvenilirliğin üzerine koydu. Bu tür uygulamalar ses ve görüntülü arama ve çevrimiçi oyunlardır . Bu tür uygulamalar için, bilgisayarınız TCP yerine her zaman UDP protokolünü kullanacaktır. Düşük gecikme gerektirmeyen uygulamalar her zaman TCP kullanır. Örneğin, bir sunucudan bir dosya yüklemeye veya indirmeye çalışırken, bilgisayarınız daha güvenilir olduğu ve verilerinizin bütünlüğünü koruyacağı için TCP protokolünü kullanacaktır.

TCP ve UDP

TCP/IP'deki IP ne anlama geliyor?

IP İnternet Protokolü anlamına gelir. Her bir cihaza benzersiz adresler (IP adresleri) atayarak bir ağdaki cihazların iletişimini sağlayan bir dizi kuraldır . İki IP protokolü - IPv4 ve IPv6. IPv4 şu anda kullanılmaktadır, IPv6 henüz tam olarak uygulanmamıştır.

IPv4, bir IP adresini 32 bitten oluşan benzersiz bir dizi olarak tanımlar. Bir ağdaki her cihazın benzersiz bir adresi olmalıdır. Aksi takdirde, başkalarıyla iletişim kuramaz .

Tüm IPv4 adresleri, kullanıldıkları ağların boyutuna göre 5 sınıfa (A'dan E'ye) ayrılır. Ayrıca, özel ve kamusal olmak üzere iki gruba ayrılırlar. Genel adresler internette iletişim için kullanılırken, özel adresler bir LAN ağına bağlı diğer cihazlarla iletişim için kullanılır.

Evinizdeki tüm cihazlarda özel IP adresleri vardır. Tüm ev ağınızda (evinizdeki tüm cihazlar) ISS'niz tarafından kendisine atanan yalnızca bir genel adres vardır. Evinizdeki tüm cihazlar, çevrimiçi olmak için bir genel IP adresini kullanır, ancak ev ağınızdaki diğer cihazlarla iletişim kurarken özel adresler kullanırlar.

Son olarak, tüm IPv4 adresleri statik veya dinamik olabilir. Statik adresler bir cihazla (sunucu, bilgisayar, yazıcı, oyun) kalır ve zamanla değişmez - bir cihaz her zaman aynı adrese sahiptir. Dinamik adresler zamanla değişir.

TCP/IP modelindeki IP adreslerinin amacı oldukça açıktır. Onlar olmadan, cihazlarımız herhangi bir veri alamadı veya gönderemedi çünkü veriler nereye gideceğini bilemezdi.

TCP/IP katmanları

Belirtildiği gibi, TCP/IP modeli, verilerin bir bilgisayardan diğerine nasıl seyahat ettiğini tanımlayan bir dizi kural ve protokoldür. TCP ve IP bu modelin omurgalarıdır, ancak biraz daha fazlası vardır.

Bugün kullanılan TCP/IP modeli 5 katmandan oluşur - uygulama, taşıma, ağ, veri bağlantısı ve fiziksel katman.

Her bilginin gönderilmeden önce tüm bu katmanlardan geçmesi gerekir. Ayrıca, alınmadan önce alıcı uçtaki tüm katmanları geçmek zorundadır.

Orijinal model dört katman uygulaması, taşıma, internet ve bağlantıdan oluşuyordu. Yeni, güncellenmiş TCP/IP modeli, internet katmanını ağ katmanına yeniden adlandırırken, bağlantı katmanı iki veri bağlantısına ve fiziksel katmana ayrıldı. Yani, 4 orijinal katman yerine, şimdi 5 katımız var.

Her katmanda farklı protokollerimiz ve cihazlarımız var. Her katman kendi bilgilerini ekleyecektir. Tüm süreç kapsülleme olarak adlandırılır. Veriler fiziksel katmana ulaştığında, veriler alıcı cihaza iletilir (ister internet üzerinden ister çok daha küçük bir LAN ağında). Alıcı cihaz daha sonra her veri paketini dekore etmeye başlayacak ve bunları yeniden düzenlemeye başlayacaktır.

TCP/IP nasıl çalışır?

Belirtildiği gibi, veriler gönderilmeden önce (kapsülleme) her katmandan geçmeli ve daha sonra alınmadan önce alıcı uçtaki her katmandan geçmelidir (dekapsülasyon). Bu iki süreci tartışalım.

Veri Kapsülleme

En üst katmana uygulama katmanı denir. Programlar (tarayıcınız, Skype veya çevrimiçi oyunlarınız gibi) doğrudan bu katmanla etkileşime girer. Her şey bu katmanda oluşturulan uygulama verileriyle başlar. Veriler, bilgisayarınızdan başka bir bilgisayara gönderilen herhangi bir dosya olabilir. Bir video oyununda bir web sitesi veya komut açma isteğiniz de olabilir. Bu katman, HTTP (Güvensiz Web Siteleri), HTTPS (Güvenli Web Siteleri), SMTP (E -posta Protokolü), FTP (Dosya Aktarım Protokolü), Telnet, SSH, vb.

Aşağıdaki katman taşıma katmanıdır - TCP'nin UDP ile birlikte yaşadığı yer. Bu, verilerin segment adı verilen küçük veri parçalarına dönüştürüldüğü yerdir. Verileri bölümlere ayırarak, TCP çok daha hızlı iletim sağlar ve her paketin en hızlı yolu izlemesini sağlar. Hedefe aynı sırayla gelmeyebilirler, ancak bu yüzden TCP başlıklarımız var. Her segment, yukarıda tartışıldığı gibi bir TCP başlığı alır. Önceki katmandaki uygulamaya dayanarak, TCP kaynak ve hedef bağlantı noktalarını tanımlar. Her veri parçasının hedefine ulaşmasını ve tüm verilerin doğru alındığından emin olmak için TCP, bahsettiğimiz diğer tüm bilgileri de ekleyecektir.

Önerilen Kaynaklar:

Taşıma katmanından sonra veriler, adreslemenin gerçekleştiği ağ katmanına geçer. İnternet protokolü burada yaşıyor. Ağ katmanında, her paket kaynak ve hedef IP adresi hakkında bilgi içeren IP başlığını alır. Bu şekilde, paket nereden geldiğini ve nereden geldiğini bilir. Taşıma katmanından segment ağ katmanına ulaştığında ve IP başlığını aldığında, bir paket olur. Yönlendiriciler ayrıca LAN ağlarında IP adreslemesinden sorumlu oldukları için ağ katmanında da çalışır

Son olarak, veriler veri bağlantısı katmanına ulaşır. Burada, her paket sadece bir başlık değil, aynı zamanda bir fragman alır. Üstbilgi kaynak ve hedef MAC adreslerini içerirken, fragman, alıcı cihazın verilerin doğru alınıp alınmadığını kontrol etmesine yardımcı olan hata kontrol bilgileri içerir. Veri bağlantısı katmanı Ethernet içerir. Ethernet anahtarları da bu katmanda çalışır. Veri bağlantısı katmanını geçtikten sonra paket çerçeve olur.

Son olarak, gerçekten dokunabileceğiniz her şeyi içeren fiziksel bir katman var (yönlendiriciler ve anahtarlar hariç). Kablolar ve ağ kartları bu katmana aittir. Veriler fiziksel katmana ulaştığında, fiziksel olarak alıcı ucuna iletilir.

Veri dekapsülasyonu

Veriler fiziksel olarak hedefe iletilir ve dekapsülasyon işleminin başladığı yer. Veri bağlantısı katmanında, hedef makine her kareyi kontrol eder. Kaynak ve hedef MAC adresini kontrol eder. Hedef MAC adresi hedef makineyle eşleşiyorsa, veri bağlantısı katmanı çerçeveyi ağ katmanına daha fazla iter.

Burada, alıcı makine hedef IP adresini kontrol eder. Paket o belirli bilgisayar için tasarlanıyorsa, taşıma katmanına daha fazla gidecektir. TCP başlığı kontrol edilir ve her şey doğruysa, veriler nihayet alındığı uygulama katmanına gönderilir.

Son düşünceler

İşte aldın. Umarım, bir TCP/IP modelinin ne olduğunu, ne için kullanıldığını ve nasıl çalıştığını anlıyorsunuz. Ağ oluşturma hakkında daha ilginç makaleler için bizi izlemeye devam edin!