Selamlar,
Öncelikle şunu belirtmek isterim ki teknik makale yazmak ciddi emek ve zaman istiyor. İş yoğunluğundan zaman buldukça teorik bilgileri elimden geldiğince başlangıç seviyesinden ileri seviyeye kadar işleyeceğim. Yeni başlayan ve alanında daha iyi olmak isteyenler için referans kaynak niteliğinde ki bu makale serilerini video eğitim setleri ile de destekleyeceğim.
Bu bölümde OSI Referans Modeli ni işleyeceğiz.
Ağlar Arası İletişim Modelleri
Eskiden Network ( Ağ ) üzerinde çalışmaya başladığınızda bilgisayarlar tipik olarak aynı üreticiden bilgisayarlarla iletişim kurardı. Örneğin firmalar, ya komple bir DECnet çözümü ya da bir IBM çözümü çalıştırır, ikisi bir arada olmazdı. 1970’lerin sonlarında Open Systems Interconnection ( OSI ) referans modeli, bu sınırlamayı kaldırmak için International Organization for Standardization (ISO) tarafından oluşturuldu.
OSI modeli, farklı üretici ağlarının, diğerleriyle çalışabilmesi için üreticilerin, ortak çalışan ağ cihazı ve protokollere benzer yazılım oluşturmasına yardım etmesi anlamına gelmekteydi. Aynı dünya barışı gibi değil mi ? 🙂
OSI modeli, ağlar için öncelikli bir mimari modeldir. OSI, bir bilgisayardaki bir uygulamadan, ağ ortamı aracı boyunca, başka bilgisayardaki bir uygulamaya veri ve ağ bilgisinin nasıl aktarılacağını açıklar. OSI referans modeli, bu yaklaşımı katmanlara ayırır.
Şimdi katmanlı yaklaşımı ve bu yaklaşımın, ağ topluluklarımızda hata tespitinde bize yardımcı olması için nasıl kullanabileceğini açıklayalım.
Katmanlı Yaklaşım
Bir referans modeli, haberleşmenin nasıl olması gerektiğinin kavramsal bir tasarımıdır. Verimli haberleşme için gerekli tüm işlemleri adresler ve bu işlemleri, katman denilen mantıksal gruplara böler. Bir iletişim sistemi, bu yolla tasarlandığında, katmanlı yapı olarak bilinir.
Şu şekilde düşünelim: Diyelim ki bazı arkadaşlarınızla bir işe başlamak istiyorsun. Yapacağınız ilk işlerden biri, oturmak ve hangi işlemlerin yapılmak zorunda olduğunu, onları kimin yapacağını, yapılacağı sırayı ve birbirleriyle nasıl ilişkilendirileceğini düşünmektir. Eninde sonunda bu işleri bölümlere ayıracaksınız. Bölümlere ayırdığınız departman çalışanlarını meşgul eden ve sadece kendi görevlerine odaklanmalarını gerektiren işleri olacak değil mi ?
Şimdi bu senaryoda bölümleri, bir iletişim sistemindeki katmanlara benzeteceğim. İşlerin ilerlemesini kolaylaştırmak için her bölümün elemanı diğerlerine güvenmeli, işlerini yapmalarını sağlamak için ağırlıklarını koymalı ve kendi sorumluluklarını profesyonelce ele almalıdır. İşi planlarken toplantılarınızda notlar alırsınız, iş planınız veya referans modeliniz gibi operasyon standartları hakkında sonraki sürece yardım etmesi için tüm işleyişi kaydedersiniz.
İşe başladığınızda, kendileri ile ilgili projelere sahip bölüm müdürleri, tanımlı görevleri yerine getirmek için pratik yöntemler geliştirmeye ihtiyaç duyacaktır. Bu pratik yöntem veya protokollerin, standart bir çalışma prosedür kılavuzu olarak birleştirilmesine ve yakından takip edilmesine gerek duyulacaktır. Yol haritanızdaki çeşitli prosedürlerin her biri, farklı gerekçeler içerecek, farklı önem derecelerine ve kurulumlara sahip olacaktır. Şayet yapacağınız işte bir ortaklık oluşturacak ya da başka bir firmayı alacaksanız, iş protokollerinin (iş planlarının) sizinkilerle uygun (en azından uyumlu) olması gerekecektir.
Benzer şekilde, yazılım geliştiriciler, bilgisayar iletişim prosedürlerini anlamak için bile, referans modeli kullanabilirler ve herhangi bir katmanda hangi tür fonksiyonlara ihtiyaç duyulacağını görebilirler. Şayet belirli bir katman için protokol geliştiriyorlarsa, ilgilenmeleri gereken diğer katmanlar değil, bu belirli katmandır. Diğer katman ve protokoller, diğer fonksiyonları ele alacaktır. Bu fikir için kullanılan teknik terim, binding’dir. Birbirleriyle ilişkili haberleşme protokolleri, belirli bir katmanda birleştirilmiş veya gruplanmıştır.
Referans Modellerinin Avantajları
OSI modeli hiyerarşiktir. Aynı fayda ve avantajlar, herhangi bir katmanlı modele uygulanabilir. Bu tür modellerin hepsinin, özellikle de OSI modelinin asıl amacı, farklı üretici ağlarının birlikte çalışmalarına izin vermektir.
OSI katmanlı modeli kullanmanın avantajlarını aşağıda belirtiyorum fakat bunlarla sınırlı değildir:
- Ağ iletişim işlemlerini daha küçük ve basit bileşenlere böler, böylece geliştirme, planlama ve hata gidermeye yardımcı olur.
- Ağ bileşenlerinin standartlaştırılmasıyla, çoklu-üretici gelişimine izin verir.
- Modelin her katmanında hangi fonksiyonların olduğunu açıklayarak, endüstri standartlaşmasına cesaret verir.
- İletişim için farklı ağ donanım ve yazılım çeşitlerine izin verir.
- Bir katmanın diğer katmanı etkilemesini engeller, böylece gelişimi engellemez.
OSI Referans Modeli
OSI düzenlemelerinin en iyi fonksiyonlarından biri, tamamen farklı kullanıcı makineleri arasında veri transferine yardımcı olmasıdır. Yani, örneğin bize bir Unix host’u ve bir PC veya bir Mac arasında veri transferi yapmamıza izin verir.
Buna rağmen, OSI fiziksel bir model değildir. Daha çok uygulama geliştiricilerin, bir ağda çalışan uygulamaları oluşturmak ve tamamlamak için kullanabildikleri bir kurallar bütünüdür. Ayrıca, ağ kurulumu standartları, cihazlar ve ağlar arası iletişim planları oluşturmak ve tamamlamak için bir iskelet oluşturur.
OSI, iki gruba ayrılmış, yedi katmana sahiptir. Üstteki üç katman, uç istasyonlardaki uygulamaların birbirleri ve kullanıcılar ile nasıl iletişim kuracaklarını açıklar. Alttaki dört katman, verinin uçtan uca nasıl aktarılacağını açıklar. Şekil 1, üstteki üç katmanı ve fonksiyonlarını gösterir. Şekil 2, dört alt katman ve fonksiyonlarını gösterir.
Şekil 1: Üst katmanlar.
Şekil 1’i düşündüğünüzde, Application katmanında bilgisayarlar ile kullanıcı arayüzlerini ve ayrıca, üst katmanların, kullanıcı makineleri arasında uygulamaların iletişiminden sorumlu olduğunu anlarsınız. Üst katmanların hiçbirinin, ağ kurulumu ve ağ adresleri hakkında bir şey bilmediklerini unutmayın. Bunlar alttaki dört katmanın sorumluluğundadır.
Şekil 2: Alt katmanlar
Şekil 2’de, switch ve router’lar yardımıyla veya fiziksel bir kablo üzerinden verinin nasıl transfer edildiğini açıklayan, alttaki dört katmanın çalışmasını görebilirsiniz. Bu alt katmanlar ayrıca, kaynak host’tan bir veri akışının, hedef host’un uygulamasında tekrar nasıl oluşturulacağını belirler.
Aşağıdaki ağ cihazları, OSI modelinin tüm 7 katmanını da kullanır:
- Network management station (NMS) ’ler
- Web ve uygulama sunucuları
- Gateway’ler (varsayılan ağ geçitleri değil)
- Ağ host’ları
Basit olarak OSI, ağ protokol dünyasının Emily POST’udur. Post’un, insan sosyal etkileşimi için standartlar ya da protokoller oluşumu için yazdığı gibi OSI, emsalleri ve açık ağ protokolü serisi için kılavuz ve emsal olarak, OSI referans modelini geliştirdi. İletişim modellerinin etiğini açıklayarak, bugün protokol aileleri için, en popüler kıyaslama yöntemi olarak kalmıştır.
OSI referans modeli yedi katmana sahiptir:
- Application katmanı (katman 7)
- Presentation katmanı (katman 6)
- Session katmanı (katman 5)
- Transport katmanı (katman 4)
- Network katmanı (katman 3)
- Data Link katmanı (katman 2)
- Physical katmanı (katman 1)
Şekil 3: Katman fonksiyonları.
Şekil 3, OSI modelinin her katmanında tanımlanan fonksiyonların bir özetini gösterir. Öğrendiğimiz bu bilgilerle, her katmanın fonksiyonlarını detaylı olarak inceleyeceğimiz makalemizde görüşmek üzere.