Tezin Türü: Yüksek Lisans
Tezin Yürütüldüğü Kurum: Erciyes Üniversitesi, Fen Bilimleri Enstitüsü, BİLGİSAYAR MÜHENDİSLİĞİ ANABİLİM DALI, Türkiye
Tezin Onay Tarihi: 2019
Tezin Dili: Türkçe
Öğrenci: SİNAN KARAKAYA
Danışman: Bilal Babayiğit
Açık Arşiv Koleksiyonu: AVESİS Açık Erişim Koleksiyonu
Özet:Her geçen gün internete bağlı cihaz sayısı tüm dünyada hiç olmadığı kadar hızlı bir artış göstermektedir. Günümüzde sadece bilgisayar telefon gibi temel cihazlar değil günlük hayatta kullandığımız televizyonlar, lambalar gibi cihazlar dahi internete bağlanmaktadır. IoT (Nesnelerin interneti) kavramı ile bu bağlantı sayısı çok üst noktalara ulaşmıştır. Artan bilgi alışverişine karşılık iletişim hızından beklentide bununla paralel olarak artmıştır. Bu kadar cihazın yüksek hızda internet erişimi ve konfigürasyonu da bu büyümeyle doğru orantılı olarak zorlaşmıştır. Birbiri ile bağlantılı cihazların bu hızda büyümesi ve gelişmesi ağ teknolojilerinde birtakım yenilikler getirmiştir. Bu noktadan yola çıkarak mevcut ağı daha yönetilebilir, dinamik, daha uygun maliyetli bir yapı hedeflenmektedir. Buradan yola çıkarak her cihazı ayrı ayrı konfigürasyon yapmak yerine merkezi yönetilebilir ve programlanabilir bir yapı (Yazılım Tanımlı Ağlar, YTA) sunulmuştur. YTA'larda temelde birlikte bulunan ağ kontrol düzlemi ve veri düzlemi birbirinden ayrılmıştır. Bu sayede bir kontrol düzlemi çok fazla sayıda cihazı kontrol edebilir. Bu merkezileştirme sayesinde birçok cihaz üzerinde aynı anda çok hızlı bir şekilde konfigürasyon yapabiliriz. Ağ kontrol düzlemi bulunduğu ağın işletim sistemi gibi davranır. Diğer cihazlardan aldığı bilgiler ile paketlerin nasıl yönlendirileceği bilgisini veri düzlemine iletmektedir. Veri düzlemi ise kontrol düzleminden aldığı bilgiler doğrultusunda paket iletimi işlemlerini gerçekleştirmektedir. Ağ kontrol düzlemi ve veri katmanı kendi arasında bazı farklı protokoller kullanır. Bu tez çalışmasında kullanılan protokol bunlardan birisi olan openFlow protokolüdür. Ağ kontrol düzlemi ile uygulamalar arasındaki iletişimin bulunduğu kısım güney API ara yüzü olarak adlandırılır. Ağ kontrol düzleminin dışarıdan farklı uygulamalar ile de iletişim halinde bulunmasını sağlayan güney API ara yüzü, standart RESTFUL ile haberleşir. Bu uygulamalara örnek olarak güvenlik duvarı, yük dengeleyici gibi veya kendi geliştirdiğimiz uygulamalarda örnek olabilir. Ağ kontrol düzlemi ile veri düzleminin iletişim kurduğu kısım da kuzey API ara yüzü olarak adlandırılır. Oluşturulan sistemlerde birden fazla da ağ kontrol düzlemi bulunabilir. Bunlarda kendi aralarında batı ara yüzü API'si veya doğu ara yüzü API'si ile iletişimde bulunabilirler. Burada yazılmış açık kaynak kodlu birçok ağ kontrol düzlemi bulunmaktadır. Bu tez çalışmasında bu yapının kolayca kurulup kullanılır hale gelebilmesi için bir yapı tasarlandı. Bunun sebebi bu yapıların bulunduğu cihazların maliyetinin fazla olması ve dışarıdan erişimin kısıtlı olması ve başlangıç için uygun olmamalarıdır. Tasarlanan yapının maliyetinin uygun olması için Linux kurulabilen mikro denetleyiciler tercih edildi. Mikro denetleyicilere gerekli olan paketleri otomatik olarak kurup ağ ara yüzlerini tespit eden aynı zamanda bu yapının uzak kontrolcü ile olan bağlantısını gerçekleyen bir yapı tasarlandı. Kullanıcı ara yüzü ile de kolayca erişip değişiklikler yapılabilir şekilde yapılmıştır. Anahtar Kelimeler: Yazılım Tabanlı Ağlar, Kontrolcü, Floodlight, Open vSwitch, Virtual Dom, Sunucu