Yazılım tanımlı ağ (SDN), ağ performansını iyileştirmek için dinamik ağ yapılandırmasını sağlayan ağ yönetimi yaklaşımıdır. Bilgisayar ağlarını yönetmenin, onları kontrol etmeyi kolay ve esnek hale getiren yeni bir yoludur.
Yazılım tanımlı ağlar (SDN)
Geleneksel ağlarda, donanım (yönlendiriciler ve anahtarlar gibi) verilerin ağ üzerinden nasıl hareket ettiğine karar verir. Ancak SDN karar vermeyi merkezi bir yazılım sistemine taşıyarak bunu değiştirir. Bu, kontrol düzlemini veri düzleminden (paketleri seçilen hedefe taşıyan) ayırarak yapılıyor.
Geleneksel bir ağda, her anahtarın kendi kontrol düzlemi ve veri düzlemi vardır. Anahtarlar, veri paketlerinin nereye gönderileceğine karar veren bir yönlendirme tablosu oluşturmak için topoloji bilgilerini değiştirir. Yazılım Tanımlı Ağ’da (SDN), kontrol düzlemi anahtarlardan kaldırılıyor ve merkezi bir SDN denetleyicisine atanıyor. Bu, ağ yöneticilerinin her anahtarı ayrı ayrı yapılandırmak yerine trafiği tek bir konsoldan yönetmesini sağlar.
Veri düzlemi anahtarda kalır ve paketleri denetleyici tarafından ayarlanan akış tablolarına göre iletir. Bu tablolar eşleşme alanları ve talimatlar (paketleri ilet, bırak veya değiştir) içerir. Ayrıca bir paket herhangi bir girişle eşleşmezse, anahtar denetleyiciyle iletişim kurar ve bu da paketin yolunu belirlemek için yeni bir akış girişi sağlar. Tipik bir SDN mimarisi üç katmandan oluşur.
Uygulama Katmanı: Saldırı tespiti, güvenlik duvarı ve yük dengeleme gibi tipik ağ uygulamalarını içerir.
Kontrol Katmanı: Ağın beyni olarak görev yapan SDN denetleyicisinden oluşur. Ayrıca, üzerine yazılan uygulamalara donanım soyutlaması yapılmasına da olanak tanır.
Altyapı Katmanı: Veri düzlemini oluşturan ve veri paketlerinin gerçek hareketini gerçekleştiren fiziksel anahtarlardan oluşur.
Katmanlar, uygulama ve kontrol katmanı arasında kuzey yönlü API’ler ve kontrol ve altyapı katmanı arasında güney yönlü API’ler adı verilen bir dizi arayüz aracılığıyla iletişim kurar.