OSI (Open Systems Interconnection - Açık Sistemler Ara Bağlantısı) modeli, ağ iletişimiyle ilgili işlevleri yedi soyut katmana ayıran bir referans modeldir. Amaç, farklı sistemlerin haberleşme görevlerini ortak bir çerçevede tanımlamak ve her görevin hangi katmanda ele alındığını belirlemektir.

ITU-T X.200 standardında tanımlanan model, tek başına çalışan bir protokol değildir ve protokollerin uygulama ayrıntılarını belirlemez. Gerçek ağ yazılımları bu yedi katmanı ayrı bileşenler halinde uygulamak zorunda değildir.

Yedi OSI Katmanının Temel Sorumlulukları

Katmanlar fiziksel iletimden uygulama iletişimine doğru 1 ile 7 arasında numaralandırılır. Aşağıdaki tablo, her katmanın görevini ve o katmanla ilişkili sorunları karşılaştırır.

KatmanTemel sorumlulukTanılamada tipik odak
7 - UygulamaUygulamaların ağ üzerinden iletişim kurmak için kullandığı hizmetleri sağlar.Uygulamaya özgü istek, yanıt ve hizmet hataları
6 - SunumVeriyi iki tarafın da yorumlayabileceği ortak bir biçimde temsil eder.Veri biçimi, kodlama, dönüştürme veya sıkıştırma uyumsuzlukları
5 - Oturumİletişimin kurulmasını, taraflar arasındaki konuşma düzenini ve gerektiğinde ortak bir noktadan sürdürülmesini yönetir.Oturum kurma, eşzamanlama ve sonlandırma sorunları
4 - TaşımaUç sistemler arasındaki veri aktarımını yönetir; hizmete göre sıralama, akış kontrolü ve hata kurtarma sağlayabilir.Uçtan uca aktarım, güvenilirlik ve akış kontrolü
3 - AğAğ adresleme, yönlendirme ve farklı ağlar arasında paket aktarma işlevlerini sağlar.Ağ adresleri, yönlendirme ve farklı alt ağlar arasındaki erişim
2 - Veri BağıVeriyi çerçeveler halinde taşır; bağlantı düzeyindeki adresleme ve hata denetimini yürütür.Yerel bağlantı, çerçeve aktarımı ve bağlantı düzeyindeki hatalar
1 - FizikselBitlerin fiziksel ortamda sinyallerle iletilmesini sağlayan özellikleri tanımlar.Kablo, radyo sinyali, bağlantı noktaları ve iletim koşulları

OSI Katmanlarının İletişimdeki İşlevleri

OSI katmanları birbirinden kopuk değildir. Bir katman, alt katmanın sunduğu hizmetlerden yararlanarak üst katmana hizmet verir. Böylece bir uygulama, hedefe giden kablonun veya radyo bağlantısının ayrıntılarıyla doğrudan uğraşmadan veri gönderebilir.

Katman 7: Uygulama

Uygulama katmanı, uygulama süreçlerinin ağ iletişimi hizmetlerine eriştiği en üst katmandır; programın bütün işlevlerini veya ekrandaki arayüzünü ifade etmez. Web istek ve yanıtlarını düzenleyen HTTP ile alan adlarına ilişkin kayıtları sorgulayan DNS, bu katmanla ilişkilendirilen protokollerdir.

Alt katmanlardaki bağlantı çalışsa bile istemcinin hatalı bir istek göndermesi veya sunucunun uygulamaya özgü bir hata yanıtı vermesi mümkündür. Örneğin HTTP 404 yanıtı alınıyorsa önce istenen adresin ve uygulama yönlendirmesinin doğruluğu incelenebilir; her uygulama hatası kablo veya ağ bağlantısı arızası değildir.

Katman 6: Sunum

Sunum katmanı, iki uygulamanın veriyi ortak bir biçimde temsil edebilmesini sağlar. Verinin aktarımda kullanılacak biçime dönüştürülmesi, karakter kodlaması ve gerektiğinde sıkıştırma gibi işlemler bu katmanla ilişkilidir.

Örneğin metin karşı uca eksiksiz ulaştığı halde alıcı farklı bir karakter kodlaması kullanıyorsa harfler bozuk görünebilir. Buradaki sorun verinin taşınmasından çok nasıl yorumlandığıyla ilgilidir. Bu tür gösterim işlevlerinin gerçek bir uygulamada ayrı bir sunum katmanı yazılımıyla gerçekleştirilmesi gerekmez.

Katman 5: Oturum

Oturum katmanı, taraflar arasındaki iletişimin kurulmasını, sürdürülmesini ve düzenli biçimde sonlandırılmasını yönetir. Taraflardan hangisinin ne zaman veri gönderebileceğini düzenleme ve iletişim içinde ortak eşzamanlama noktaları belirleme gibi işlevler içerir.

Buradaki eşzamanlama, cihazların saatlerini aynı zamana ayarlamak değildir. Tarafların iletişimde hangi noktaya ulaştıkları konusunda uzlaşmasını ve gerektiğinde belirlenen bir durumdan devam etmesini sağlar. Uygulama verisini o noktada kaydetmek veya geri yüklemek uygulamanın sorumluluğudur; oturum katmanı tek başına dosya yedeği oluşturmaz. Bir web sitesindeki kullanıcı oturumu da yalnız adı nedeniyle doğrudan OSI'nin beşinci katmanına karşılık gelmez.

Katman 4: Taşıma

Taşıma katmanı uç sistemler arasında veri aktarımına odaklanır ve yönlendirme ayrıntılarını ağ katmanına bırakır. Bağlantı kurulması ve sonlandırılması, uçtan uca sıralama, akış kontrolü, hata denetimi ve hata kurtarma gibi işlevler kullanılan taşıma hizmetine göre bu katmanda yer alabilir.

TCP, veriyi sıralı ve güvenilir bir bayt akışı olarak taşır; kaybolan veriyi yeniden gönderir ve alıcının kabul edebileceği miktara göre akış kontrolü uygular. UDP ise bağımsız veri mesajları gönderir ve kendi başına yeniden gönderim veya sıralı teslim sağlamaz. Bu nedenle bir protokolün taşıma katmanında yer alması, mutlaka güvenilir aktarım sunduğu anlamına gelmez.

Katman 3: Ağ

Ağ katmanı, farklı ağlar ve alt ağlar üzerinden veri aktarımı için gerekli yönlendirme ve aktarma işlevlerini tanımlar. IP adresleriyle paketlerin kaynak ve hedeflerinin belirtilmesi, yönlendirme tablosuna göre bir sonraki cihaza gönderilmesi bu katmanla ilişkilidir.

Fiziksel bağlantı ve yerel çerçeve aktarımı çalışırken başka bir ağa erişilemiyorsa IP adresleri ve yönlendirme kayıtları incelenir. Yerel ağdaki bir cihaza erişebilmek, internetteki her hedefe giden yolun da çalıştığını göstermez.

Katman 2: Veri Bağı

Veri bağı katmanı, ağ katmanından aldığı veriyi bağlantı üzerinden taşımak için çerçeveler halinde düzenler. Ethernet'te yerel ağ arayüzlerini adreslemek için kullanılan MAC adresleri ve çerçevelerin iletimi bu katmanda ele alınır. Sıralama denetimi, yeniden gönderim ve hata kurtarma özellikleri ise kullanılan bağlantı protokolüne bağlıdır.

Örneğin Ethernet alıcısı, iletimde bozulma olup olmadığını sınayan CRC denetimi başarısız olan bir çerçeveyi atabilir. Bu, verinin aynı katmanda mutlaka yeniden gönderileceği veya uygulamanın her bozuk çerçeve için ayrı hata mesajı alacağı anlamına gelmez. Ağ arayüzünün hata sayaçları, yerel bağlantıdaki bu tür sorunları incelemeye yardımcı olur.

Katman 1: Fiziksel

Fiziksel katman, bitlerin ortam üzerinden taşınmasını sağlayan mekanik, elektriksel, optik ve radyo iletim özelliklerini kapsar. Bakır kablodaki elektrik sinyalleri, fiber kablodaki ışık ve kablosuz ağdaki radyo sinyalleri bu düzeyde değerlendirilir. Bağlantının etkinleştirilmesi, sürdürülmesi ve devre dışı bırakılması da bu katmanın kapsamındadır.

Ağ arayüzünün fiziksel bağlantı göstermemesi, kablonun kopması veya radyo sinyalinin iletime elverişsiz olması burada incelenir. İlgili fiziksel bağlantı çalışmıyorsa üst katmanların doğru yapılandırılması, o bağlantı üzerinden veri aktarılmasını tek başına sağlamaz.

Veri Katmanlar Arasında Nasıl İlerler?

Gönderen tarafta uygulama verisi üst katmanlardan alt katmanlara doğru işlenir. Kullanılan protokoller, verinin taşınması için başlıklar ve çerçevenin sonundaki hata denetimi alanı gibi bilgiler ekler. Bu işleme kapsülleme denir; her OSI katmanının mutlaka ayrı bir başlık eklemesi gerektiği anlamına gelmez.

Örneğin Ethernet üzerinden yapılan bir TCP aktarımında uygulamanın baytları TCP segmentlerine, segmentler IP paketlerine, paketler de Ethernet çerçevelerine yerleştirilir. Çerçeveler fiziksel ortamda sinyallerle taşınır. Hedefte başlıklar ilgili protokollerce işlenir ve veri ters yönde uygulamaya ulaştırılır.

Aradaki bir yönlendiricinin paket iletmek için uygulama katmanına kadar bütün katmanları işlemesi gerekmez. Yönlendirme sırasında gelen bağlantının çerçevesi açılır, ağ katmanındaki bilgiye göre yol seçilir ve paket çıkış bağlantısına uygun yeni bir çerçeveyle gönderilir. Bu nedenle yerel bağlantının çerçevesi ile uçtan uca taşınan veri aynı şey değildir.

OSI Modeli ile Ağ Sorunlarını Katmanlara Ayırma

OSI modeli sorun giderme için zorunlu bir kontrol sırası tanımlamaz. Genel bağlantı problemi varsa alt katmandan yukarı ilerlemek, yalnız belirli bir uygulama etkileniyorsa ilgili üst katmandan başlamak yararlı olabilir. Aşağıdaki kontroller sabit bir sıra değil, belirtiye göre seçilecek inceleme alanlarıdır.

  • Fiziksel katman: Kablo bağlantısı, ağ arayüzünün bağlantı durumu veya kablosuz sinyal koşulları kontrol edilir.
  • Veri bağı katmanı: Çerçeve hata sayaçları ve cihazın bağlandığı yerel ağın yapılandırması incelenir.
  • Ağ katmanı: Cihazın IP adresleri, hedefe giden rota ve gerektiğinde varsayılan ağ geçidi kontrol edilir.
  • Taşıma katmanı: İlgili TCP veya UDP portunda hizmetin çalışıp çalışmadığı ve bu trafiğe erişim kurallarının izin verip vermediği incelenir.
  • Oturum ve sunum işlevleri: İletişimin beklenmedik biçimde sonlanmasıyla verinin biçim veya kodlama nedeniyle yorumlanamaması birbirinden ayrılır.
  • Uygulama katmanı: Uygulamaya özgü istekler, yanıt kodları ve sunucu günlükleri incelenir.

Bir belirti tek başına arızanın katmanını kanıtlamaz. Örneğin TCP bağlantısının zaman aşımına uğraması, taşıma protokolüyle ilgili bir hatadan kaynaklanabileceği gibi yanlış rota veya trafiği düşüren bir güvenlik duvarıyla da ilişkili olabilir. İlgili bağlantı ve uygulama kayıtları birlikte değerlendirilmelidir.

OSI ile TCP/IP Modeli Arasındaki Farklar

İnternette kullanılan TCP/IP protokol ailesi, OSI'nin yedi katmanını birebir ayrı katmanlar halinde uygulamaz. RFC 1122'nin sınıflandırması uygulama, taşıma, internet ve bağlantı katmanlarından oluşur. OSI'nin sunum ve oturumla ilişkilendirdiği görevler gerçek sistemlerde uygulama protokolleri veya yardımcı yazılım bileşenleri tarafından yerine getirilebilir.

Bir cihazı da yalnız tek bir katmana ait saymak yanıltıcı olabilir. Örneğin bir ağ cihazı hem Ethernet çerçevelerini anahtarlayabilir hem de IP paketlerini farklı ağlara yönlendirebilir. Katman sınıflandırması, ürünün adından çok incelenen işlevi açıklamak için kullanılmalıdır.