
Bilgisayar ağları kullanılarak bilgisayarların birbirileriyle haberleşmeye başladıkları ilk yıllarda iki bilgisayarın birbiriyle haberleşebilmeleri için aynı marka/model cihazları kullanmaları gerekiyordu. Bunun üzerine farklı üreticiler tarafından üretilen cihazların birbiriyle sorunsuz ve belirli bir düzen içinde haberleşebilmesi için çeşitli standartlar geliştirilmiştir.
İki ya da daha fazla bilgisayarın birbirleriyle iletişim kurabilmesi için bazı protokollere ihtiyaçları vardır. Bugün bunlardan TCP/IP protokollerine değineceğiz. İlk olarak 80’li yıllarda Amerikan Savunma Bakanlığı(DoD) tarafından OSI tabanlı sistemlere alternatif olarak geliştirilmiştir. Açılımı Transmission Control Protocol/Internet Protokol olan TCP/IP internetin temel protokollerini içeren bir pakettir. Bir çok protokolün bir araya gelmesi ile oluşmuştur.
TCP kısmı veri transferinde önemli noktaları belirtirken IP kısmı taşıma yolunu bulmayı belirtir. Protokol yapısı Uygulama Katmanı, Taşıma Katmanı, İnternet Katmanı, Ağ Erişim Katmanı ve Fiziksel Katman olmak üzere 5’e ayrılır. Protokol bir iletişim sürecinde bu bağlantıyı sağlayan noktalar arasındaki gidip gelen mesajlaşmayı düzenleyen kurallar dizisidir. Bu protokoller birbirleriyle iletişim içinde bulunan gerek donanım gerekse yazılımlar arasında oluşur. İletişimin gerçekleşmesi için her öğenin bu protokolü kabul etmiş ve uyguluyor olması gerekir.
TCP/IP‘de bu şekilde oluşan yüzden fazla bilgi iletişim protokolün toplandığı bir protkoller ailesidir. Bunlardan en önemlileri TCP (transmission control protokol) ve IP (ınternet protokol) olduğu için bu ismi almıştır. Bir bilgisayar ağında kullanılan protokol ne olursa olsun aslında bilgisayarlar fiziksel adresleri ile birbirlerini tanır ve iletişimde bulunurlar. Bu fiziksel adres ağ kartı veya ağa bağlanmayı sağlayan herhangi bir donanım içinde hiçbir şekilde değiştirilmesi mümkün olmayan 48 bit olan bir numaradır.
TCP/IP protokolünde diğer bilgisayarlardan farklı olarak her bilgisayar bir IP numarası alır. Görünüşü 194.62.15.2 şeklindedir. İnternette bulunan her bilgisayarın kendine ait bir IP numarası vardır ve sadece ona aittir. IP adresleri 32 bitlik düzendedirler ama kolay okunabilmeleri için 8 bitlik 4 gruba ayrılmışlardır. Internet üzerinde veri alış verişi yapan alıcı ve göndericiyi tanımlamaktadırlar. Veriler gönderilirken mutlaka gönderenin IP adresini taşırlar. Alıcının adresi de adresteki domain adrese göre çözümlenir ve gönderilir.
IP adres yapısının 2 bölümü vardır. Birincisi bilgisayarın bağlı olduğu özel bir ağın numarası ikincisi ise bilgisayarın özel numarasıdır. Veriler dolaşım sırasında router denilen yönlendiricilerden geçerken sadece bu özel ağın numarasına bakılır. IP adresleri a,b,c,d,e adı verilen beş sınıfa ayrılmıştır. A sınıfı adresleri ilk “oktet” ile belirlenir ve 2 ile 126 arasında olmalıdır. Örneğin 124.0.0.0 A sınıfı bir IP’dir. Aynı şekilde B ilk iki oktetle belirlenir ve ilk okteti 129 ile 91 arasındadır.
C sınıfı ise ilk 3 okteti kullanır ve ilk okteti 192 ile 223 arasındadır. D ve E sınıfı IP ‘ler ise kullanılmazlar zira sadece test amaçlıdırlar. Bir örnek vermek gerekirse siz ISS’a telefon hattı ile bağlandığınızda ISS’ nin ağına dahil oluyorsunuz. Daha evvel alınmış olan IP adresi havuzundan size bir IP adres veriliyor. Mesela IP adresiniz 194.62.15.2 ise, ISS nizin aldığı IP adresinin sınıfı C dir.Yani ilk 3 oktat içinde bulunduğunuz ağı, sonda bulunan oktat da sizin bilgisayarınızın o andaki adresini temsil eder.
1) Uygulama Katmanı
Farklı sunucular üzerindeki süreç ve uygulamalar arasındaki iletişimi sağlar. (Örn: HTTP, FTP, SMTP, vs.)
2) Taşıma Katmanı
Noktadan noktaya veri akışını sağlar. (TCP ve UDP)
3) İnternet Katmanı
Routerlar ile birbirine bağlanmış ağlar boyunca verinin kaynaktan hedefe yönlendirilmesini sağlar. Bu akışı sağlayan kaynak ve hedef adres bilgileri internet katmanında saklanır
4) Ağ Erişim Katmanı
Uç sistem ile ağ arasındaki lojik arabirime ilişkin katmandır. Verilerin fiziksel olarak 1 ve 0’lara dönüştürülerek taşınması sağlanır. MAC
5) Fiziksel Katman
İletişim ortamının karakteristik özelliklerini, sinyalleşme hızını ve kodlama şemasını belirler. Veri kablo tipine (veya kablosuz) göre elektrik sinyallerine veya elektromanyetik dalgalara dönüştürülür. Bunlardan en çok kullanılanı Açık Sistem Bağlantıları komitesi tarafından geliştirilen 7 katmanlı OSI referans modeli ve Amerikan Savunma Bakanlığı tarafından geliştirilen TCP/IP referans modelidir.
OSI iki bilgisayar arasındaki haberleşme problemini çözmek için 7 katmanlı (aşamalı) bir ağ sistemi önermiştir. OSI referans modelindeki 7 katmana karşılık TCP/IP referans modeli 4 katmanlı bir çözüm sunar ve 7 katmanlı OSI modeline göre daha hızlı bir iletişim imkânı sunar. OSI modeli iletişim standartlarını belirlemeye yöneliktir ve TCP/IP daha uygulanabilir bir model olduğu için daha çok uygulamaya yöneliktir.
İnternet Protokolü IP: Internet’te herhangi bir veri gönderirken veya alırken, örneğin e-posta yada web sitesi, mesajlar küçük paketlere bölünür. Her paketin üzerinde gönderenin ve alıcının IP adresleri 10 yazılı olarak bulunur. Her paket öncelikle bir “gateway” adı verilen bilgisayardan geçer. Bu bilgisayar paketlerin üzerindeki alıcının adresini okur ve buna göre paketleri yönlendirir.
Bu işlem alıcının adresine en yakın bilgisayara kadar böyle devam eder. Bu en son bilgisayarda paketlerialıcı bilgisayar gönderir. Internet protokolüne göre yol alan bu paketler bir çok değişik yönden giderek alıcıya ulaşabilirler. Hatta paketler olması gerektiği sırada da alıcıya ulaşmayabilirler. Internet protokolünün amacı sadece bu paketleri göndermektir. Paketleri aski düzenine getirmek bir başka protokolün yani TCP nin görevidir.
TCP/IP Nedir?
TCP/IP birçok protokolün toplandığı bir protokoller ailesidir. Bu referans modeline en çok kullanılan iki protokolün ismi verilmiştir; TCP (Transmission Control Protocol) ve IP (Internet Protocol). Bu referans modelinde 4 farklı katmanda 15’ten fazla protokol vardır. Veriler bu katmanlar arasında sırasıyla paketlenerek gönderilir, alıcıda ise paketlemenin tersi sırayla teker teker açılarak veri ulaştırılmış olur.
- Protokol: Protokoller cihazlar arası iletişimde kullanılan, iletişim kurallarını belirleyen ağ dilleridir. Referans modelinin her katmanda ayrı protokoller görev yapar. Farklı referans modellerinde aynı protokoller çalışabilir.

TCP/IP Referans Modeli Katmanları
Uygulama katmanı: Bu katmanda gönderilecek veri tipi ve veriyi işleyen uygulamalar bulunur. Örneğin bir HTML web sayfası ve bu veri tipini kullanan HTTP protokolü bu katmandadır. OSI modelindeki sunum ve oturum katmanları TCP/IP modelinde uygulama katmanı içerisinde yer alır. E-Posta gönderimi için kullanılan SMTP ve dosya gönderimi için kullanılan FTP protokolleri bu katmanda bulunur.
Taşıma katmanı: Bu katmanda verinin nasıl gönderileceği belirlenir. Veri güvenliği, hata kontrolü gibi işlemler yapılır. TCP ve UDP bu katmandadır. TCP klasik veri aktarımında UDP ise medya aktarımında kullanılır. TCP, UDP ye göre daha güvenli fakat daha yavaş çalışır. Çünkü TCP 'de gönderilen her veri paketinin ardından verinin yerine doğru bir şekilde ulaşıp ulaşmadığı kontrol edilir.
Ağ katmanı: IP katmanı olarak da adlandırılan bu katman da verilerin gideceği adres veriye eklenir yani veri bu katmandan gönderilir ve yönlendirilir. IPv4 ün gelecekte yetersiz kalma durumuna karşı IPv6 sistemine geçmek için çalışmalar başlatılmıştır.IPv4 32 bit iken IPv6 ile 128 bitlik adresler kullanılacak. Bu sayede daha fazla cihaza IP adresi atanabilecek.
Fiziksel katman: Bu katman verinin hangi yolla gönderileceği belirlenir. İletişim ortamının özelliklerini, haberleşme hızını ve kodlama şemasını belirler. Ethernet, Wi-Fi, Token Ring, ATM gibi protokoller bu katmanda çalışır.
Katmanlar ve Protokoller Nasıl İşler?
Örneğin bir web sayfası bilgisayarınıza şu şekilde gelir;
- Web sayfasının saklı olduğu sunucuda uygulamalar sayfanın HTML veri formatında bir çıktısını oluşturur. Ve bu veriyi HTTP protokolüyle gönder komutunu verir. Bunlar 4. katmanda yani uygulama katmanında olur. Buradan çıkan veri 3. katmana yani taşıma katmanına gönderilir.
- Taşıma katmanında veriye taşıma katmanının bilgileri yani port bilgisi ve veri boyutu eklenir.
- Üçüncü katmandan çıkan veri paketine ikinci katmanda verinin gönderileceği bilgisayarın (sunucunun) ve sizin bilgisayarınızın IP adresleri ve verinin son halinin boyutu eklenir.
- Son katmanda yani fiziksel katmanda fiziksel adresler ve verinin yeni boyutu pakete eklenir.
- Paket sunucudan çıkar ve sunucu ile sizin bilgisayarınız arasındaki binlerce kilometrelik yolu kat ederek bilgisayarınıza ulaşır.
Veri bilgisayarınıza ulaştığında bu sefer tersi sırayla katmanlardaki protokoller işletilir. Bilgisayarınız önce fiziksel katmanı ardından ağ katmanını, daha sonra taşıma ve uygulama katmanlarını işletir. Ve en sonunda kalan paketi web tarayıcınıza gönderir. Her katmanda ayrı donanımlar görev yapar. Fiziksel katmanda Switch, ağ katmanında Router, taşıma katmanında ise NAT gibi donanımlar kullanılır.
ARP ADDRESS RESOLUTION PROTOKOL:
Daha evvel bir ağ üzerinde gerçekte bütün iletişimin fiziksel adresler üzerinde gerçekleştiğinden bahsetmiştim. Yerel bir ağ üzerinde IP adresleri belirlenmiş bilgisayarlar mesajlaşmaya başlamadan önce normalde IP adresinin sahibinin fiziksel adresini sorgulamaya gelen bir yayın yaparlar. IP adresine sahip bilgisayar kendi fiziksel adresini içeren bir mesajı istemci bilgisayara gönderir ve böylece gerçek veri gönderimi bu adres üzerinden yapılmış olur.
IP ROUTING:
Paket net ortamında yönlendirilmesi ve gönderilmesi işlemi internet protokolünün görevidir. Paketlerin üzerinde yazılı olan adreslere bakarak bunu bir yönlendirme tablosundaki bilgilerle karşılaştırılır ve yönlendirmeyi yapar. Bu tablonun oluşturulması görevi ise routing protokol‘un görevidir. Routing protokolünde çeşitleri vardır. Ama bunlardan sadece bir tanesi internet yönlendirme domain ‘leri arasında bilgi alışverişi yapar.
ICMP İnternet control message protocol:
Bu protokol internet protokolün veri iletişimi sırasında beklenmedik bir olay gerçeklemesi halinde göndereni uyarma görevi üstlenmiştir. ICMP mesajlarına örnek vericek olursak: Destination unreachable: bu mesajvarış noktası olan alıcı host’un erişilmez olduğunu belirtmek için kullanılır. Yani ağ tanımsız ya da ulaşılmaz halindedir. Echo and echo reply: bu ik mesaj türü alıcının erişilebilir olup olmadığını anlamak için kullanılır. Gönderen bilgisayar alıcıya veri içeren bir echo mesaj atar. Karşılığında alıcı bilgisayardan cevap yani echo reply gelirse alıcı bilgisayarın ağ üzerinde erişilebilir olduğunu gösterir.
TCP:
Daha önce belirttiğim gibi veriler küçük paketlere ayrılıp gönderilirken değişik yollardan ve değişik sıralar ile gönderilirler. Bu paketlerin sıralanmasını sağlayan protokolün adı TCP (transmission control protocol) ‘dir. Örneğin bize gelen herhangi bir veri önce paketlere ayrılır. Bu paketleme işlemini gerçekleştiren TCP aynı zamanda bu paketleri doğru sırası ile numaralandırır ve adreslendirir, IP katmanına gönderir. Artık gönderme işlemi sadece internet protokolünün elindedir.
Paketler yola çıktıktan sonra birbirlerinden ayrılır ve farklı yönleri takip ederler. Bilgisayarımıza ulaştığında bizim bu paketleri bir bütün olarak ve tam sırasıyla görmemizi sağlayan gen TCP ‘ dir. Aynı zamanda TCP/IP ‘nin en güvenilir protokol olmasını sağlayan işlevide yerine getirir. Paketlerin belirli bir kısmı ulaştıktan, eğer paketler sağlam ise, TCP bize bir onay gönderir. Eğer paketlerde bir sorun var ise bu onay gelmez ve biz bu verileri baştan göndermek zorunda kalırız. Yani diğer protokollerden farkı paketlere bir şey olması halinde biz bunu mutlaka biliriz ve eksikleri tekrardan göndermek suretiyle iletişimi kesin tamamlamış oluruz.
UDP:
User datagram protokol TCP’nin aksine az güvenilir ama daha hızlı olmayı amaçlayan bir protkoldür. Bazı basit istem ve cevap ile işleyen uygulamalarda kullanılması işlemin daha hızlı gelişmesini sağlar. UDP’nin yaptığı paket üzerinde bulunan IP numarasının yanına bir adet port numarsı eklemek ve böylece uygulamaların çalışması için gereken soketleri oluşturmak. Internet’i oluşturan TCP/IP’nin bir başka katmanında bulunan bazı protokol ve uygulamalar şöyledir.
Telnet: “Telecommunication Network“ ibaresinin kısaltılmışı kullanıcıya başka bir host a bağlanıp ağ üzerindeki diğer host lara ulaşma imkanı veren bir terminal protokolüdür.
FTP: “File transfer protocol” kullanıcıya kendi bilgisayarı ile başka bir bilgisayar arsında dosya transferi yapmasına olanak verebilen bir terminal protokolüdür.
ARCHİE: Kullanıcıya kayıtlı tüm anonymous FTP sunucularında belli bir dosyanın adını aramasına olanak veren bir araç.
GOPHER: İnsanlara mönü bazlı ve hiyerarşik bir ara yüz kullanarak veri repositories arasında arama yapılmasına olanak veren bir araç.
SMTP: “Simple mail transfer protocol” internet üzerinde elektronik olarak posta alım ve gönderim sağlayan standart bir protokol. SMTP internet üzerindeki e-posta sunucuları arasına ve herhangi bir bilgisayardan e-posta sunucusuna posta ulaşımını sağlar.
HTTP: “The hypertext transfer protocol” Internet üzerinde bilgi değişimini sağlayan baz protokol. WWW üzerinde bilgiler kullanıldığı sisteme bakmaksızın HTML formatında yazılır ve her sistem bu formatı tanır.
FINGER: Diğer kullanıcıların ya da hostlara internet üzerindeki durumunu öğrenmek için kullanılır.
POP: “The post office protocol” Bir kullanıcının e-posta programı ile sunucu arasındaki pop e-posta sunucusundan istemciye postaların alınmasını ve kullanıcıların kendi posta kutularını yönetmelerine olanak verir. DNS: “The domain name system” Internet üzerinde buluna isimleri ve bunlara ait IP adreslerini düzenler. Aynı zamanda postaya isim sunucularında alan adları ile ilişkilendirilir.
SNMP: “The simple network management protkol” TCP/IP bazlı network araçlarını yönetmeye yönelik prosödürleri ve veri tabanlarını belirler. SNMP (RFC 1157) is widely deployed in local and wide area network.
PINK:” The packet internet groper”, bir sistemdeki kullanıcıya diğer bağlı bilgisayarların durumu ve mesajlaşma süresinde yaşanan gecikmeleri öğrenmesine olanak verir. ICMP echo mesajlarını kullanır.
WHOİS/NICKNAME: Kullanıcıya internet üzerindeki “domain“ ve “domainler” hakkındaki irtibat bilgilerini derleyen veri tabanlarında arama yapma olanağı verir.
TRACEROUTE: Paketlerin uzaktaki başka bir bilgisayara giderken ki yolunu takip edip öğrenmeye yarayan bir araçtır.









