OSI Modeli Nedir?

OSI Modeli Nedir?

Osi Model
Osi Model

OSI Modeli , network iletişiminde kullanılan temel, çatı modeldir. Bu model , ağa bağlı cihazların birbirleri ile nasıl konuşacağını ve birbirlerini nasıl anlayacağını belirleyen bir kurallar bütünüdür.

OSI model olmadan önce 2 cihazın birbiri ile iletişiminin sağlanması için her iki cihazında aynı dil ve kuralları (protokoller) biliyor olması gerekirdi ama OSI Modeli sayesinde şuan dünyanın herhangi 2 noktasındaki cihaz birbiri ile iletişim kurabiliyor.

Örneğin şuan ingilizce bilgim sadece bildiğim kelimeleri anlamaktan ibaret olduğu için İngiltere'de yaşayan birisi ile akıcı bir şekilde konuşamam. Çünkü ne kelime bilgim var ne de gramer bilgim. Kısaca ingilizcenin kurallarını bilmiyorum ve bilmediğim için ne ben karşı tarafın dediğini anlarım ne de o beni anlar. Ama Türkçe bilen biri ile konuştuğum zaman ikimizde aynı dili konuştuğumuz için ve konuşmanın kurallarını bildiğimiz için birbirimizi çok iyi bir şekilde anlayabiliriz .

İşte bir networkteki cihazların arasında da bu şekilde bir benzerlik söz konusu. Ben buradan linux üzerinde markdown bir metin yazıyorum ve bunu chromium ile github sayfama yüklüyorum karşıdaki ise windows bir cihazdan firefox üzerinden bunu okuyabiliyor. Peki nasıl oluyor bu? Sonuçta hepsi birbirinden farklı bir yazılım.

Elcevap: İkiside aynı dili konuşup anlayabiliyor deriz, yani ikiside aynı protokoller ile çalışıyor.

Uzun lafın kısası OSI Model , ağa bağlı cihazların birbiri arasındaki iletişimini ortak bir protokolde belirleyen bir protokoller kümesidir. Ve bu iletişimin nasıl gerçekleştiğini 7 katmanda bize açıklıyor.

7.Application Layer (Uygulama Katmanı)

Application Layer (Uygulama Katmanı)
7.Application Layer (Uygulama Katmanı)

  • Kullanıcıya en yakın olan katmandır.
  • Bu katmanda çeşitli yazılımlar kullanılarak network haberleşmesi başlatılır (Chrome, Whatsapp, Mail, Skype).
  • HTTP, SMTP, POP3, IMAP, FTP, TFTP gibi protokoller vardır.
  • Bu katman kullanıcı gereksinimlerini karşılayarak bize basit bir arayüz sağlar.
  • Haberleşmenin başlatıldığı yerdir.

6.Presentation Layer (Sunum Katmanı)

Presentation Layer (Sunum Katmanı)
6.Presentation Layer (Sunum Katmanı)
  • Client tarafından gönderilen veriyi diğer cihazdaki uygulamanın anlayacağı formata dönüştürür.
  • Verinin şifrelenmesi (encryption), şifrenin çözülmesi (decryption), sıkıştırılması (compression) gibi işlemler bu katmanda yapılır.
  • GIF, JPEG, TIFF, EBCDIC, ASCII ,MP4 vs bu katmanda çalışan format tiplerinden birkaçıdır .

5.Session Layer (Oturum Katmanı)

Session Layer (Oturum Katmanı)
5.Session Layer (Oturum Katmanı)


Client-Server arasında iletişimin olması için bir oturum yani bağlantı kurulması gerekir. Bu bağlantıyı Session(Oturum) Katmanı sağlar.
  • Veriler gönderilip alınmadan önce iki cihazı birbiri ile senkronize eder.
  • Oturumun başlatılması,sonlandırılması ve doğru verinin doğru oturumda bulunması için oturumu yönetir.

Örneğin bir yandan mesajlaşırken diğer yandan Spotify'da müzik dinleniyorsa her ikisi içinde ayrı bir oturum olması gerekir. Sunum katmanındaki verilerin hangisinin hangi uygulamada çalışacağını bilir ve verilerin birbirine girmemesi için farklı oturumlar ile verinin doğru uygulamada çalışmasını sağlar. Örneğin bir hesap oluşturularak girilen web sitelerinde siz web sitesine girdiğiniz anda bir session başlatılır ve session süresi boyunca hesabınıza tekrardan giriş yapmanız gerekmez tabi çıkış yapmadıysanız. Sitede belirli bir süre bir aktivite gerçekleşmediğinde hesabınızdan çıkış yapıldığını görürsünüz tekrar girmeniz gerekir. İşte burada sessionun bariz bir kullanım alanıdır. Eğer daha önce üyelik sisteminin olduğu web uygulamaları geliştirdiyseniz olayı daha iyi anlamışsınızdır.

4.Transport Layer (Taşıma Katmanı)

Transport Layer (Taşıma Katmanı)
4.Transport Layer (Taşıma Katmanı)

Taşıma katmanı veriyi parçalara ayırmak ve tekrar birleştirmekten sorumludur. Oturum katmanından alınan verilerin hangi port üzerinden hizmet göreceği bu katmanda belirlenir. Taşıma katmanında kaynak port numarası, hedef port numarası ve sıra numarası gibi ek başlıklar vardır.
  • Bu katmanda oluşan dataya segment yada datagram adı verilir.
  • TCP ve UDP adında iki protokolü vardır.

TCP ve UDP arasındaki fark?

TCP UDP
UDP’ye göre yavaştır TCP’ye göre hızlıdır
Güvenli ve eksiksiz iletimi amaçlar Amacı seri olmaktır
Oturum kurar (three-way handshake) Oturum kurmaz
Veriyi sıralar Sıralama işlemi yapmaz
Alında onayı vardır Alındı onayı yoktur
Bozuk paketleri tekrar yollar Yeniden gönderim olmaz
  Canlı ses ve görüntülerde kullanılır

3.Network Layer (Ağ Katmanı)

Network Layer (Ağ Katmanı)
3.Network Layer (Ağ Katmanı)

Eğer veri farklı bir ağa gidecekse bu görevi network katmanı üstlenir.
  • Taşıma katmanından aldığı segmentlere gönderici, alıcı ve daha fazla bilgiler ekleyerek verinin istenilen ağdaki cihaza ulaşmasını sağlar.
  • Veri iletimi sırasında hedefe gidilecek en kısa yolu seçmeye çalışır.
  • IPv4, IPv6, ARP, ICMP adreslemeri bu katmanda çalışan protokollerdir.
  • Bu katmanda oluşan dataya packet denir.
  • Router bu katmanda çalışır. Örnek olarak hemen aşağıda bir IPv4 başlık bilgisi bulunmaktadır.
IPv4 Header
IPv4 Header

IP adresleri sayesinde farklı ağlara ulaşım sağlanır. Paket gönderdiğimizde veya aldığımızda IP adresimiz yol boyunca değişmez. Bu sayede paketin kimden kime gideceği anlaşılır. IP adresi ile beraber çalışan iki önemli protokol vardır. Bunlardan birisi ARP Protokolu diğeri ise ICMP protokoludur. ICMP ARP’a göre ek özelliklere sahiptir. Her iki protokolun görevi IP adresinden MAC adresi sorgulamaktır. ICMP protokolune örnek verecek olursak bilgisayarlarımızda internet varmı yokmu diye kontrol ettiğimiz komut olan ping komutu, ICMP echo reply ve request mesajlarını kullanarak çalışır. Ek olarak ARP zehirlenmesi (ARP spoofing) bu katmanda oluşan saldırı çeşitlerinden biridir.

2.Data Link Layer(Veri Bağlantı Katmanı)

Data Link Layer(Veri Bağlantı Katmanı)
2.Data Link Layer(Veri Bağlantı Katmanı)
  • Bu katmanda Network Katmanından alınan verinin fiziksel ortama geçişini kontrol eder ve fiziksel ortamdan verinin hangi protokol ile taşınacağını belirler.
  • Verinin cihazlar arasındaki fiziksel aktarımından sorumludur.
  • Aynı networkte iletişim için kullanılır.

Bu katman kendi içinde 2 kısıma ayrılır:

  • MAC (Media Access Control):Veri kapsülleme ve medya erişim kontrolünden sorumludur. MAC alt katman ile köprü görevi görür.
  • LLC (Logical Link Control):Üst katmandaki ağ yazılımı ile alt katmandaki cihaz donanımı arasında iletişim kurar. Üst katmanda hangi protkolün olduğunu olacağını belirler. Üst katman ile Data Link arasında köprü görevi görür.

Data Link katmanında kapsüllenmiş veriye frame denir.

Bu katmanda kullanılan protokollerden bazıları şunlardır: PPP, Ethernet , WLAN ,WPAN..

Frame başlık ve kuyruk bilgilerinden oluşur. Başlık bilgisinde kaynak ve hedef MAC adresleri bulunur. Kuyruk bilgisinde ise FCS ile hata kontrol durumu incelenir. Burada oluşturulan frame, fiziksel katmana iletilir ve veri yola çıkar. Hedef MAC adresi karşı taraftaki NIC kartına gittiğinde NIC kartı frame’i baştan başlayarak okumaya başlar. Eğer hedef adreste kendi MAC adresi bulunmuyorsa gelen verinin devamını okumadan direk çöpe atar . Kendisine gelmiş ise frame’i okumaya devam eder. En son FCS yani kuyruk bilgisine geldiğinde bunu CRC algoritması ile test ederek verinin yolda bozulup bozulmadığına bakar. Eğer veri bozulmuş ise yine çöpe atar.

1.Pyhsical Layer ( Fiziksel Katman )

Pyhsical Layer ( Fiziksel Katman )
1.Pyhsical Layer ( Fiziksel Katman )

Herhangi bir ağ iletişimi olmadan önce yerel bir ağa fiziksel bir bağlantı kurulması gerekir. Bu bağlantı ağın durumuna göre kablolu veya kablosuz olarak gerçekleşebilir. Bir cihazın ağa bağlanmasını sağlayan en önemli donanım NIC (Network Interface Card) Karttır. Fiziksel Katman ,Data Link katmanında son halini alan kapsüllenmiş (encapsulation)1 datamızı bitler (0 ve 1) halinde kablolu veya kablosuz olarak karşı tarafa iletilir. Karşı tarafta bitleri yine fiziksel katman karşılar ve gelen datayı kapsüllerinden çıkarır (de-encapsulation)2.

Bu katmanda Kablolar(utp,stp,fiber) , Konnektorler(rj45) , NIC kartlar , Hub çalışır.

Bu katmandaki standartlardan bazıları ise şunlardır:

  • Ethernet (IEEE 802.3),
  • Bluetooth(IEEE 802.15),
  • WLAN (IEEE802.11)
  1. Encapsulation: Paket haline getirme gibi düşünülebilir. Data her seferinde yeni bir kutuya konulur. 

  2. De-encapsulation: İç içe olan kutuların tek tek çıkarılma işlemi. 


Yorumlar


Donate