Bölüm 8 : PROTOKOLLER VE KATMANLI YAPI: OSI, TCP/IP REFERANS MODELLERİ. Türkçe (İngilizce) karşılıklar Servis Kalitesi (Quality of Service, QoS) Uçtan-uca (end-to-end) Düğümden-ağa (host-to-network) Bölüm Hedefi Bu bölümü bitirdiğinizde Katmanlı yapı nedir OSI Referans modelini ve TCP/IP referans modelini öğrenmiş olacaksınız. 8.1 OSI Referans Modeli Haberleşme ağları karmaşık bir yapıya sahiptir. Ortamın fiziksel olarak yaratılması, bu ortam üzerinde veri aktarımı için gerekli kodlamanın yapılması, paketlerin oluşturulması, paketlerin varış noktasına yönlendirilmesi, veri aktarımı sırasında oluşan tıkanıklıkların giderilmesi, ağdaki bir hattın ya da birimin bozulması durumunda alternatif yolların bulunması, paketlerin birleştirilmesi, hataların farkedilmesi/düzeltilmesi, verinin bir uygulama protokolü aracılığı ile kullanıcıya sunulması... gibi pek çok karmaşık işlemin yapılması gerekir. Bunların hepsi haberleşme donanımı üzerinde çalışan haberleşme yazılım programları ile gerçeklenir. Bu işlemleri bir düzen içinde gerçeklemek için ISO (International Standards Organization) tarafından Şekil 8.1 de görülen OSI (Open Systems Interface) Referans Modeli önerilmiştir. 7. 6. 5. 4. 3. Uygulama Katmanı (Application Layer) Sunum Katmanı (Presentation Layer) Oturum Katmanı (Session Layer) Ulaşım Katmanı (Transport Layer) Ağ Katmanı (Network Layer) 1
2. 1. Veri bağı Katmanı (Data Link Layer) Fiziksel Katman (Physical Layer) Şekil 8.1 OSI Referans Modeli OSI referans modeli yedi katmandan oluşmuştur. Her katmanda, aktarılan veri farklı bir isim alır (Şekil 8.2 de gösterildiği gibi). Alt katmanlarda bit katarı, çerçeve, paket gibi isimler verilirken, üst katmanlara gidildikçe isimlendirme ulaşım katmanı protokolü veri birimi (Transport Protocol Data Unit - TPDU) gibi katmana özel hale gelir. Uygulama Sunum Oturum Ulaşım Ağ Veri bağı Fiziksel APDU PPDU SPDU TPDU Paket Çerçeve Bit katarı Uygulama Sunum Oturum Ulaşım Ağ Veri bağı Fiziksel Şekil 8.2 Katmanlara göre taşınan verinin isimlendirilmesi Bu katmanların görevi aşağıdaki gibidir. 8.1.1 Fiziksel Katman: Verinin fiziksel (bakır tel, optic lif, hava ) ortamda taşınması için gerekli yapıyı, kodlamayı oluşturur. Bu katman için veri bir bit katarı (dizisi) demektir. Ortamda kullanılacak kablo standartları, gerilim seviyeleri, işaret şekilleri, işaret hızları, örnekleme hızı, bit süresi bu katmanın bilgisindedir. Hat üzerinden aktarılacak 0/1 lerin fiziksel 2
olarak ne şekilde ifade edileceği bu katmanın görevidir. Taşıma ortamına göre kullanılacak yöntemler de değişim gösterir. 8.1.2 Veri Bağı Katmanı: Bu katmanda hat kavramı oluşmaya başlar. Katmanın amacı verinin bir noktadan bir sonraki noktaya ulaştırılmasıdır. Bu katmanda veri çerçeve adı verilen bloklara bölünür. Hat üzerinden aktarım sırasında oluşan hataların sezilmesi bu katmanın görevidir. Hattın iki ucundaki birimin aynı hızlarda çalışmasını ayarlamak da bu katmanın görevidir. İletim ortamına erişim bu katman tarafından organize edilir. 8.1.3 Ağ Katmanı: Bu katmanda taşınan veri paket adını alır. Verinin kaynaktan varışa ulaşması için takip edeceği yolun bulunması bu katmanın görevidir. Veri aktarımı sırasında bazı düğümler (yönlendiriciler) üzerinde tıkanıklıklar olabilir. Bunların sezilmesi ve gerekli önlemlerin alınması da ağ katmanının görevidir. Bunları servis kalitesini (Quality of Service, QoS) arttırıcı görevler olarak da adlandırabiliriz. Heterojen altağların bulunduğu bir ortamda, altağlardan geçiş sırasında adresleme, paket boyu farklılığı gibi problemler bu katmanda çözülür. 8.1.4 Ulaşım Katmanı: Bu katman, kaynak tarafında, oturum katmanından aldığı veriyi paketlere böler. Varış tarafında ise gelen paketleri birleştirerek oturum katmanına iletir. Bölünen verinin numaralandırılması ve varış noktasında karışmış paketlerin tekrar sıralanması, yolda veri üzerinde oluşmuş hatalarla ilgili işlemlerin yapılması bu katmanın görevidir. Ulaşım katmanı uçtan-uca çalışır. Bu da kaynak ve varış düğümlerinde etkinlik göstermesi anlamına gelmektedir. 8.1.5 Oturum Katmanı: Bu katman yardımı ile farklı bilgisayarlardaki kullanıcılar arasında oturumlar kurulması sağlanır. Bu işlem oturumların kurulmasını, yönetilmesini ve bitirilmesini içerir. İletişimin kopması durumunda oturumun devam etmasi için eşzamanlama (synchronization) bilgileri tutulur. Oturumlara farklı kalitede servisler de sunabilir. 8.1.6 Sunuş Katmanı: Bu katmanda iletilecek verinin yapısı belirtilir. İletilecek veri karakter şeklinde ifade edilecekse hangi formatın (EBCDIC, ASCII,...) kullanılacağını belirtmek, ya da format dönüşümleri bu katmanın işidir. Uygulamaya bağlı olarak verinin sıkıştırılması/açılması, şifrelenmesi/çözülmesi yine bu katmanın görevleri arasındadır. 8.1.7 Uygulama Katmanı: 3
Uygulama katmanı, uygulama protokolleri yardımı ile ağa erişmek için gerekli alt yapıyı sağlar. HTTP (HyperText Transfer Protocol), Telnet, FTP,... uygulama protokollerinden birkaçıdır. 8.1.8 Katman Bazında Düğümler Arasındaki İlişki: Şekil 8.3 katman bazında düğümler arasındaki ilişkiyi gösterir. Şekil 8.3 OSI Referans Modeline göre katman bazında düğümler arasındaki ilişki. [1] den alınmıştır. 8.2 TCP/IP Referans Modeli Bir başka referans modeli de TCP/IP dir. Bu modelin temelini ABD Savunma Bölümü tarafından desteklenerek geliştirilen ARPANET oluşturur. ARPANET te amaç heterojen (telli, telsiz) altağların oluşturduğu bir ortamda kesintisiz bir bağlantı oluşturmaktı. Önem verilen bir diğer nokta ise bazı hatların kopması ya da düğümlerin bozulması sonrasında bile alternatif yolların bulunarak bağlantıların yaşatılmasını sağlamaktı. TCP/IP referans modelinin yapısı Şekil 8.4 te verilmiştir. 4
Uygulama (Application) Ulaşım - TCP/UDP (Transport) Internet Düğümden-Ağa (Host-to-Network) Şekil 8.4 TCP/IP Referans modeli TCP/IP referans modelindeki katmanların açıklaması aşağıdaki gibidir: TCP/IP protokolünde düğümden-ağa katmanı hakkında fazla birşey söylenmez. Bu katmanın amacı düğüm ile ağ arasında IP paketlerini gönderecek bir bağlantının kurulmasıdır. Internet katmanı bir paket yapısı ve IP (Internet Protocol) adı verilen protokol tanımlar. Paketlerin oluşturulması, yönlendirilmesi, ortamdaki tıkanıklıkların giderilmesi bu protokolün görevidir. Internet katmanının üzerinde ulaşım katmanı çalışır. Ulaşım katmanında kullanılmak üzere iki uçtan-uca protokol tanımlanmıştır. Bu protokoller: TCP (Transmission Control Protokol) ve UDP dir (User Datagram Protocol). TCP/IP referans modelinde de uygulama katmanı tanımlanmıştır. Bu katman OSI referans modelinde olduğu gibi, ağa erişmek için gerekli uygulama protokollerini içerir. OSI ve TCP/IP referans modellerinin karşılaştırılmasını Şekil 8.5 te bulabilirsiniz. Şekilde de görüldüğü gibi TCP/IP referans modeli sunuş ve oturum katmanlarına sahip değildir. OSI referans modelindeki veri bağı katmanı ve fiziksel katmanın işlevleri, TCP/IP referans modelinde düğümden-ağa katmanında gerçeklenmiştir. 5
Şekil 8.5 OSI ve TCP/IP referans modellerinin karşılaştırılması. [1] den alınmıştır. TCP/IP modeli ilk önerildiğinde içinde yeralan protokoller ve ağlar aşağıdaki şekilde gösterilmiştir. Şekil 8.6 TCP/IP ile ilgili protokoller ve ağlar (ilk önerildiğinde). [1] den alınmıştır. 6