::TCP/IP Nedir, Ne İşe Yarar?
Internet'in yaygınlaşmasıyla birlikte TCP/IP kısaltmasını çok sık duymaya başladık. Bu kısaltmanın bir bilgisayar ağı protokolü olduğu, Internet'in bu protokol üzerine kurulu olduğu hep tekrarlandı. Internet'e bağlanırken girdiğimiz rakamlar (IP, subnet mask, default gateway vs.) ne anlama geliyor, bunları yanlış girince niye ağa yada Internet'e bağlanamıyoruz, kısacası nasıl oluyor da oluyor... Size bu yazıda TCP/IP'nin ne olduğunu anlatmaya çalışıcağım.
TCP/IP, Transmission Control Protocol/Internet Protocol ifadesinin kısaltması. Türkçesi İletim Kontrol Protokolü/İnternet Protokolü oluyor. Protokol belli bir işi düzenleyen kurallar dizisi demek.. Ağ protokolleri de bilgisayarlar arası bağlantıyı, iletişimi düzenliyor. TCP/IP'nin adına bakıp tek bir protokol olduğunu düşünmeyin. TCP/IP, bir protokoller kümesi. Herbiri değişik işler yapan birden fazla protokolden oluşuyor.
TCP/IP'nin kökleri 1960'ların sonunda ve 1970'lerin başında Amerikan Savunma Bakanlığı'na bağlı İleri Araştırma Projeleri Ajansının (Advanced Research Projects Agency, ARPA) yürüttüğü paket anahtarlamalı ağ deneylerine kadar uzanır. TCP/IP'nin yaratılmasını sağlayan proje, ABD'deki bilgisayarların olabilecek doğal afetler anında da ayakta kalabilmesini, birbirleriyle iletişiminin devam etmesini amaçlıyordu. Şimdi baktığımız zaman projenin fazlasıyla amacına ulaştığını ve daha başka şeyleri de başardığını görüyoruz.
Bu projenin ilk aşamasında 1970'de ARPANET bilgisayarları Network Control Protocol'ünü kullanmaya başladılar. 1972'de ilk Telnet spesifikasyonu tanımlandı. 1973'de FTP (File Transfer Protocol) tanımlandı. 1974'de Transmission Control Program ayrıntılı bir şekilde tanımlandı. 1981'de IP standardı yayımlandı. 1982'de, Defense Communications Agency (DCA) ve ARPA, TCP ile IP'yi TCP/IP Protokol Suiti olarak tanımladı. 1983'de ARPANET NCT'den TCP/IP'ye geçti. 1984'de Domain Name System (DNS) tanıtıldı.
Yukarda kısaca yer verdiğimiz tarihçe aynı zamanda İnternet'in tarihçesidir. İnternet ile TCP/IP ayrılmaz ikilidirler. TCP/IP, İnternet'in temelidir.
Bu kısa tarihçeden sonra bir yerel alan bilgisayar ağı üzerinde TCP/IP'yi anlatmaya geçelim. Burada anlatılanlar İnternet üzerinde de geçerlidir.
TCP/IP ile kurulan bir bilgisayar ağında bir bilgisayarı üç parametre ile tanımlarız. Bu paramatreler bilgisayarın adı, IP adresi ve MAC adresidir. TCP/IP protokoller kümesi bu üç parametreyi kullanarak bilgisayarları birbirine bağlar.
Bilgisayarın adı kullanıcı tarafından işletim sistemi yüklenirken bilgisayara verilen addır (Bilgisayarlara, Pazarlama, Personel ya da Murat gibi açıklayıcı ve kolay adlar verilir). MAC adresi , bilgisayarların ağ, eternet kartının ya da benzer ağ cihazlarının üstüne yazılım yoluyla değiştirilemez bir şekilde yerleştirilmiş bir adrestir (00-20-AF-F8-E7-71 ) örneğinde olduğu gibi onaltılı düzende rakamlaryada harflerden oluşur). IP adresi ise 18.104.22.168 örnek adresinde olduğu gibi 4 bölümden oluşan bir adrestir. Nokta ile bir diğerinden ayrılan bu bölümlerin herbiri 0 ile 255 arasında bir değer alabilir.
IP adresinin ilk bölümü adresin sınıfını gösterir. IP adresleri üç sınıftır: Bu sınıflar A, B ve C sınıfları olarak adlandırılır. A sınıfı adreslerin ilk bölümü 1 ile 126 arasında bir değer olabilir. B sınıfı adreslerin ilk bölümü ise 128 ile 191 arasında yer alır. C sınıfı adresler 192 ile 223 arasında bulunur. 223'den sonrası ne oldu diye sorabilirsiniz. 223'ün üzeri bizi hiç ilgilendirmeyen işler için ayrılmıştır.
Dikkatli okuyucu arada 127 ile başlayan adreslerin kayıp olduğunu farketmiştir. 127 ile başlayan adresler özel işler için ayrılmıştır. Bu adreslerin bir tanesi bizi ilgilendirir ve sık sık kullanmamız gerekir. Bu adres 127.0.0.1'dir ve kendi bilgisayarımızı gösterir.
İnternet'te A sınıfı adresler çok değerli adreslerdir ve büyük, çok büyük ağlardaki bilgisayarlar için ayrılmıştır. Örneğin, IBM'in adresleri A sınıfı adresleridir. Şu anda Internet'te A sınıfı adresleri tükenmiştir, kimseye verilmemektedir. A sınıfı adres alan bir işletme yaklaşık olarak 16 milyon bilgisayarı bu adreslerle tanımlayabilir.
İnternet'te B sınıfı adresler de şu anda tükenmiştir. Bir B sınıfı adreste yaklaşık 65.000 bilgisayar tanımlanabilir. Örneğin, Microsoft'a bir B sınıfı adres alanı ayrılmıştır.
C Sınıfı adresler halen kullanılabilir. Ama C sınıfı bir adres alanı ancak 250 küsur adres tanımlanabilir.
Bir yerel ağ kurarken İnternet'teki adres kısıtlamaları bizi ilgilendirmez. Kendi ağımız için her sınıftan adres verebiliriz. Burada verilen adreslerin İnternet ile bir bağlantısı yoktur. Bu noktaya dikat ediniz. TCP/IP'yi anlamak için kendimizi bir yerel ağ, daha sonra da bir geniş alan ağı ile kısıtlayacağız. Böyle bir ağın İnternet bağlantısı ise bambaşka bir konudur.
Şimdi kendi bilgisayar ağımız için bir C sınıfı adres alanı tanımlayalım. Bilgisayarlarımıza vereceğimiz adresler 22.214.171.124 ile 126.96.36.199 arasında yer alsın. Örnek adresler:
Birinci bilgisayar için 188.8.131.52
İkinci bilgisayar için 184.108.40.206
....
...
Sonuncu bilgisayar için 220.127.116.11
Dikkat ederseniz bütün bilgisayarların adreslerinin ilk üç hanesi sabit: 212.209.4. Bu adrese, tam olarak söylemek gerekirse 18.104.22.168 adresine ağ tanımlayıcısı (Network ID) denir. Yani, sizin ağınızın adresi nedir derlerse 22.214.171.124 diyebiliriz. 126.96.36.199 bizim ağımızın adresidir.
Buradan çıkaracağımız ilk sonuç şu: Hiçbir bilgisayara sonu 0 ile biten bir adres veremeyiz. Sonu 0 ile biten adresler bir bilgisayar ağını tanımlar.
Bilgisayarlarımıza veremiyeceğimiz ikinci bir adres de sonu 255 ile biten bir adrestir. Örnek ağımızdaki bilgisayarların adresleri arasında 188.8.131.52 yer alamaz. Sonu 255 ile biten adresler broadcast adresleridir. Broadcast yayın demektir; aynen radyo televiyon yayınındaki gibi. Yani, belli bir bilgisayara değil de tüm ağa mesaj göndereceğimiz zaman sonu 255 ile biten bir adresi kullanırız; ağa yayın yaparız. Örnek ; ağımızda herkese gidecek bir mesajın hedef adresi 184.108.40.206 olur.
Biraz toparlayalım. IP adresleri iki bölümden oluşur. İlk bölüm ağın adresidir. İkinci bölüm ağ içindeki bilgisayarların adresleridir. Örneğimizdeki adreslerde "212.209.4" ifadesini içeren bölüm ağı tanımlar. Geri kalan kısım ise (10,11,....200 gibi) ağdaki bilgisayarların herbirini tanımlar. Başka bir ağda , ağ adresi 220.127.116.11 şeklinde, bir başkasında ise 18.104.22.168 şeklinde olabilir. Ağ adresleri seçtiğimiz sınıfa bağlıdır.
Bir bilgisayar, IP adresinin hangi bölümünün ağı tanımladığını, hangi bölümünün ise bilgisayarları tanımladığını bilmek zorundadır. Bunun için subnet mask bilgisini kullanır. Subnet mask'ı ağ maskesi şeklinde çevirebiliriz. Subnet mask de bir IP adresidir; dört bölümden oluşur ve ağ adresinin hangi bölüme kadar geldiğini göstermek için kullanılır. Örneğimizde subnet mask 255.255.255.0'dır. Bilgisayarlar kendi ağ tanımlayıcılarını bulmak için subnet mask'i kullanırlar. Bu yüzden subnet mask'in doğru şekilde girilmesi önemlidir. Yanlış girilen subnet mask değeri bilgisayarın diğer bilgisayarlarla iletişimini engeller.
Bilgisayarlar ağ tanımlayıcılarını bulmak için subnet mask'i nasıl kullanırlar? Şimdi örnek bilgisayarımızdaki üç bilgisayarın adres bilgilerini yukarıda belirttiğimiz gibi girdiğimizi varsayalım:
Yukardaki şekilde Pazarlama ve Personel bilgisayarlarının subnet mask'i doğru, Murat bilgisayarının subnet mask'i yanlış girilmiştir. Şimdi Murat adlı bilgisayarın Pazarlama adlı bilgisayara bir bilgi iletmek istediğini varsayalım. Murat bilgisayarı Pazarlama'nin IP adresini kullanacaktır. Murat, bilgi göndereceği bilgisayarın, yani Pazarlama'nin, kendi ağında olup olmadığını anlamak için şu işlemleri yapar. Önce kendi IP adresi ile subnet mask'ini AND işleminden geçirir; sonuç 22.214.171.124'dır . Bu rakam ona göre içinde bulunduğu ağın tanımlayıcısıdır. Sonra kendi subnet mask'i ile Pazarlama'nin IP adresini AND işleminden geçirir; sonuç 126.96.36.199'dir. Yani, MUHASEBE'nin bulunduğu ağın tanımlayıcısı, adresi 188.8.131.52'dir. Bu iki adres aynı olmadığı için Murat bilgisayarı Pazarlama bilgisayarının başka bir ağda bulunduğunu varsayar. Bu da yanlış bir varsayım olduğu için Pazarlama bilgisayarına bilgi gönderemez. Bu hatanın giderilmesi oldukça basittir. Murat'in subnet mask değerini diğer bilgisayarlarla aynı yaparsanız bütün bilgisayar aynı ağ üzerinde bulunduklarını hesaplayıp birbirlerine bilgi gönderebilirler.
Bir bilgisayar ancak kendi ağı üzerindeki bir bilgisayara bilgi gönderebilir. Başka bir ağda bulunan bilgisayarlara bilgi göndermek gerekirse yönlendirici (Router) adı verilen cihazlar kullanılır. Yönlendiriciler de aslında içinde, işlemcisi , anakartı , rami olan, bir anlamda harddisksiz bilgisayarlardir. Cihaz dedik ama üzerinde birden fazla ağ kartı bulunan bilgisayarlar da doğru konfigüre edildiklerinde yönlendirici görevi görürler.
Yukarda herşey IP adresleriyle oluyor bitiyor gibi görünüyor. Gerçekte ise iletişimden hemen önce IP adreslerinin MAC adreslerine çevrilmesi gerekir. Ağ üzerinde iletişim aslında yalnızca MAC adresleri ile gerçekleşir. Çünkü IP adresleri TCP/IP protokolüne özeldir. Başka bir protokolde, örneğin, Novell'in kullandığı IPX/SPX protokolünde IP adresi diye bir şey yoktur. Her protokol kendine göre bir adresleme şeması kullanır ama bu şemalarda yer alan adreslerin dönüp dolaşıp MAC adreslerine çevrilmesi gerekir ki bilgisayarlar birbirleriyle iletişime geçebilsinler.
Bir bilgisayar bir başka bilgisayarın IP adresine sahipse ama MAC adresine sahip değilse Adres Çözümleme Protokolü (Adress Resolution Protocol, ARP) adı verilen bir protokol kullanarak IP adresini MAC adresine çevirir. TCP/IP'nin bir protokol kümesi olduğunu söylemiştik. İşte ARP bu kümenin bir üyesi.
İletişime geçeceği bilgisayarın IP adresini bilen bilgisayar ARP protokolü ile "Bu IP adresi kiminse bana MAC adresini söylesin" şeklinde bir mesaj oluşturur ve bu mesajı yayın (broadcast) yapar, yani ağdaki tüm bilgisayarlara gönderir. Ağdaki bilgisayarların tümü bu mesajı alırlar, eğer söz konusu IP adresi kendilerine ait değilse mesajı çöpe atarlar. Mesajdaki IP adresinin sahibi olan bilgisayar ise kendi IP adresini tanır ve hemen "Bu IP adresi bana ait, benim MAC adresim şu" şeklinde bir mesaj ile yanıt verir. İlk bilgisayar artık diğer bilgisayarın MAC adresini bildiği için asıl mesajını doğrudan (broadcast yapmadan) gönderebilir...
Sonuç olarak, TCP/IP görünümde rakamlar topluluğu gibi gözüksede , TCP/IP'siz internet düşünülemez...
kaynak: bilgisayardershanesi.net
______________