SDN 2 – Katmanlar, Northbound, Southbound

Merhabalar önceki yazimizda genel kültür olabilecek kadar giris yaptigimiz SDN konusuna bu sefer biraz daha teknik açidan bakalim. Terimlerini bilesenlerini taniyalim.

Öncelikle hizli bir hatirlatma ile SDN cihazin üzerindeki kontrol, veri ve yönetim katmanlarini ayirip merkezi, esnek ve güzel gözlemlenebilir bir yapi kurarak mimari anlamda ag yapisina yeni bir akis açisi getiriyor idi. Simdi bu katmanlari nasil ayiriyor ve bunlari nasil birbirine bagliyor onlara bakalim. Öncelikle çok güzel bilgi alabileceginiz kaynak www.opennetworking.org. Zaten bu isi destekleyen birçok kurulusun üye oldugu Open Networking Foundation’in web sitesi.

SDN mimarisi 3 katmandan ve bu katmanlari birbirine baglayan birtakim araçlardan olusuyor. Terimleri Türkçelestirme konusunda sikinti yasayabilirim. Terimlerle birlikte orijinal karsiliklarini da aktaracagim.

drawit-diagram

Bu 3 katman:

Uygulama Katmani (Application Layer) : SDN kontrolörü yönetmemizi, görüntüleyebilmemizi, kontrolörden veri almamizi ve bu veriler dogrultusunda istatistik çikarabilmemizi saglayan bir takim uygulamalarin bulundugu katmandir. Birçok kontrolör zaten içerisinde bu uygulamayi kullaniciya sunuyor.

Kontrol ve Yönetim Katmani (Control and Management Layer): Ayni katmanin 2 farkli bileseni olarak adlandirabiliriz. Adi üstünde kontrolörümüz bu katmanda islem görüyor. Aslinda saf kontrolöre komut verdigimiz, direk programlanabilen kisim diyebiliriz.(Control Plane)

Altyapi katmani (Infrastructure Layer) : Veri iletimini yapan fiziksel donanimlarin oldugu katmandir. (Data or Forwarding Plane) Bu katmanlar kadar önemli baska bir konu aradaki baglanti saglayan araçlar.

• A-CPI : Application-Controller Plane Interface

• D-CPI : Data-Controller Plane Interface

Biraz açar isek bu iki ara yüz kontrolör ile onu yönetmemizi ve üzerinde gerçeklesen olaylari görüntülememizi saglayan uygulama-kontrolör baglanti ara yüzü ve kontrolörün cihazlari yönetmesini saglayan kontrolör-cihaz baglanti ara yüzü. Aslinda bu terim çevirisi aslini karsilamiyor. Söyle örnek vereyim: Kontrolörün bir web ara yüzü var ise bu ara yüz ile kontrolör arasindaki iletisimi saglayan yapi A-CPI oluyor. Kontrolör ile cihazlarin ayni dili konusmasini saglayan baglanti ki bu suan en yaygin kullanimla openflow protokolüdür, D-CPI oluyor.

D-CPI tabirinden daha sik duyacaginiz es kavram Southbound interface’dir.

A-CPI için bu tabir Northbound interface’dir.

Yani cihaz kontrolör arasi iletisim güney baglantisidir. Kontrolör kullanici arasi baglantiyi saglayan kuzey baglantisidir. Teknik terimlerden sonra biraz daha baglanti yapisina ve çalisma mekanizmasina bakalim.

En basta sunu belirtmek gerekir ki kontrolör siz ona bir çalisma yöntemi bir kurallar dizisi vermediginiz sürece bostur. Yani zeki ama çalismiyor diyebiliriz. SDN cihazlari üzerlerinden tanimli olan kontrolöre kendilerine gelen trafige karsi nasil bir aksiyon almalari gerektigini sorarlar. Kontrolör ise üzerindeki koda bakarak gelen sorgunun cevabini iletir. Cihaz ise bunu geçici bir süre belleginde bir tabloda saklar. Tekrar benzer bir trafik geldiginde bu sefer kontrolöre gitme ihtiyaci hissetmez. Bu tablodan ilgili veriyi bulur.

Cihaz üzerindeki bu tablo baslangiçta her hangi bir girdi içermez. Zaman içerisinde olusan her bir farkli trafik için tabloya bir veri eklenir.

Cihazlarin üzerinde tuttugu bu tabloya akis tablosu (Flow Table) denir. Ve SDN mimarisi içerisinde temel tas olan baska bir kavramdir.

Gelecek yazilarda openflow, paket tipleri, akis tablolari, pox ve mininet üzerine birkaç detay verecegim. Eksik hatali bir yer görürseniz lütfen bildirmeden geçmeyin. 🙂

Saglicakla.

Musa AYDIN

musa.aydin@netoburus.com