Merhaba,

Yeni umutlarla girdiğimiz 2022 yılındaki ilk yazımı, Gantek olarak yatırım yaptığımız “Network Function Virtualization” konusunda yazmaya karar verdim.

Ne güzel geleneksel fiziksel “network” cihazlarımız ile mesut ve mutlu yaşarken, nerden çıktı şimdi NFV (Network Function Virtualization)? Sektöre Solaris Unix ile başlayan ben, sistemin Network ile olan entegrasyonunu anlamak için gerçekten çok çalışıyordum. Hatta, o dönemde, Solaris Administration I ve II, ek olarak kalınca bir Network Administration kitabı vardı. Sertifikasını da almam gereken Network Administration için, deli divane çalışırdım. DHCP, subnet, TCP/IP network modeli, Ethernet kavramı, ARP/RARP kavramları, TCP/UDP, IPV4 sonrasında IPV6, router, gateway derken, bir de fiziksel kablolamalar işin içine girince, network deyince hayli heyecan yapardım.

Teknolojinin gittiği yöne baktığımız zaman, bulut tabanlı hizmetlerin getirdiği gereksinimler, nesnelerin interneti (IoT) uygulamaları, mobil uygulamalar, gelen veri miktarındaki devasal artışlar, bilgi işleme ve depolamaya ev sahipliği yapan mega ölçekli veri merkezleri gibi pek çok etken, mevcut network yapılarında iyileşme yapılmasını, daha verimli kullanılmasını ve daha düşük gecikme sürelerine ihtiyacımız olduğunu bize çok net olarak gösterdi. Yeni ihtiyaçların bize yönlendirdiği bant genişliği talebindeki üstel artışla birlikte, network hizmetlerini, tercihen maliyetlerde önemli bir artış olmadan genişletmenin ve ölçeklendirmenin yollarını arar olduk. Geleneksel cihazların özelliklerinin bu yeni gereksinim için bir darboğaz oluşturması ve network’ün ölçeklenebilirliğini, dağıtım maliyetlerini ve operasyonel verimliliğini sınırlayan birçok kısıtlama getirmesi gibi nedenler network teknolojisinde de taze kana ihtiyaç olduğunun en açık kanıtı olarak karşımıza çıktı.

Yazıyı yazmadan önce, kesinlikle SDN (Software-Defined-Network) ve NFV ayrımını da iyi yapmalıyım diye düşündüm. Açıkcası, kendimde de iki kavramı karşılaştırıken bazı noktalar çok net değildi. Aslında, her iki teknolojinin temelinin büyük ölçüde sanallaştırmaya bağlı olduğunu söylemek yanlış olmaz. SDN, network kontrol fonksiyonlarını, network yönlendirme fonksiyonlarından ayırmaya çalışırken; NFV, üzerinde çalıştığı donanımdan network yönlendirme ve diğer network fonksiyonlarını soyutlamaya çalışır. Yani, SDN, fiziksel network kaynaklarını (anahtarlar, yönlendiriciler vb.) soyutlar ve karar vermeyi sanal bir network kontrol düzlemine taşır. Bu yaklaşımda, donanım, trafiği yönlendirmeye ve yönetmeye devam ederken, kontrol düzlemi trafiğin nereye gönderileceğine karar verir. NFV, tüm fiziksel network kaynaklarını bir hipervizör altında sanallaştırmayı amaçlar ve elbette, bu da network’ün daha fazla cihaz eklenmeden büyümesine imkan sağlar.

https://www.codilime.com/blog/the-difference-between-sdn-and-nfv-a-simple-guide/ linkinden, bizim meşhur OSI (Open Systems Interconnect) katmanına göre SDN ve NFV’nin ne şekilde ayrıştırıldığına dair güzel bir görsel buldum.

No alt text provided for this image

NFV’nin OSI modelinde 4-7. katmanları içerdiğini görüyoruz. Yani, NFV’nin uç kimlik doğrulama, yük dengeleyiciler, güvenlik duvarları veya WAN denetleyicileri gibi network fonksiyonlarının dağıtımını optimize etmemizi sağladığını söyleyebiliriz. SDN’nin ise OSI modelinde katman 2-3’ten sorumlu olduğunu görüyoruz. Yani, network altyapısını optimize eder, ör. Ethernet anahtarları, yönlendiriciler, kablosuz erişim noktaları gibi.

SDN teknolojisini, NFV kullanmadan kullanmak mümkün ve elbette bunun tersi de mümkün. Aslında, SDN ve NFV teknolojileri birbirlerini tamamlayıcıdır ancak bağımsızdırlar. Yani, SDN olmadan NFV’yi tek başına kullanabiliriz. Birbirinin tamamlayıcısı olan bu teknolojileri ayrı ayrı kullanmak, elde edeceğimiz faydaları sınırlar. Genelde, NFV denetleyicileri ile bir SDN çözümü oluşturulması önerilmektedir. Sonuç olarak, rekabet avantajı elde etmek ve maliyetlerimizi optimize etmek için SDN ve NFV teknolojilerinin birlikte kullanılması uzmanlar tarafından önerilmektedir.

SDN ve NFV teknolojilerini birleştirdiğimizde, network ortamlarımızı sanal makinelerle sanallaştırmanın ve veri merkezlerinde en karmaşık network’leri bile kurmanın faydalarını en üst düzeye çıkarabiliriz. Bize ne tür faydalar sağlar dersek, aşağıdakileri sıralamak mümkündür.

Daha ucuzdur çünkü özelleşmiş donanım satın almaya gerek yoktur.

Herhangi bir satıcıya bağlı kalmamızın önüne geçer çünkü sanallaştırılmış network fonksiyonları standart ticari donanım üzerinde çalıştırılabildiğinden özel donanım satın almamıza gerek yoktur.

Daha güvenlidir çünkü network yöneticisi, tüm bileşenler için güvenlik kurallarını tek bir kontrol paneli üzerinden belirleyebilir.

Yapı otomatikleştirilebilir. Bir yönlendiricinin veya başka bir network bileşeninin fiziksel konumuna bir bakım uzmanı göndermeye gerek yoktur çünkü her şey tek bir kontrol paneli üzerinden yapılır. Uzmanlar, yalnızca hasar görmüş bir fiziksel network’ü onarmak gibi  çalışmalara gönderilir.

Kolayca ölçeklenebilir çünkü network trafiği arttığında, artan trafikle başa çıkmak için daha fazla VNF (Virtual Network Function) oluşturabiliriz.

Ortam esnektir çünkü bir bileşen eklemek veya kaldırmak yalnızca birkaç saniye sürer. Fiziksel bir makine satın almaya, onu teslim etmeye ve network’e bağlamaya  gerek yoktur.

İzlemesi kolaydır çünkü network yöneticisi, tek bir kontrol panelinden tüm network topolojisine net bir genel bakış sağlar ve network yapısını daha verimli bir şekilde yönetebilir.

SDN ve NFV arasında olan farkları gördükten sonra, NFV üzerine daha fazla odaklanabiliriz. NFV mimarisi, Avrupa Telekomünikasyon Standartları Enstitüsü (ETSI) tarafından önerilmektedir. Bu kurallar dizisi sayesinde, NFV implementasyonu için standartları tanımlayabiliyoruz. Mimarinin her bileşeni, daha iyi stabilite ve birlikte uyumlu çalışabilirliği desteklemek için bu standartları temel almaktadır.

NFV mimarisi nelerden oluşur?

Öncelikle, “Virtualized Network Functions (VNF)” (yukarda bir cümle içinde kullandım) dediğimiz yapılar var. Bu yapılar, aslında yazılım uygulamalarından başka bir şey değil. Neler yapıyor? Dosya paylaşımı, dizin servisleri, IP yapılandırmaları gibi network fonksiyonlarını yerine getirir.  İkinci olarak, “Network Functions Virtualization Infrastructure (NFVi)”, altyapı bileşenlerinden oluşur. Yani, bilgi işlem (compute), depolama (storage), network altyapı bileşenlerini içerir. Amacı, hipervizor veya konteyner yönetim platform gibi yapıları destekleyerek, network uygulamalarının çalıştırılmasını sağlamaktır. Üçüncü bileşenimiz ise elbette, yönetim, otomasyon ve orkestrasyon ile ilgilidir. Bu bileşen management, automation and network orchestration (MANO) olarak ifade edilmektedir. NFV altyapısını yönetmek ve yeni VNF’ler oluşturmak için bir platform sağlamaktadır.

Şimdi gelelim asıl konumuza, malum Red Hat’in premier partner’ı olarak,  Red Hat’in NFV konusunda olan çözümünü de gururla sunuyoruz.

Red Hat’in NFV çözümü, OpenStack, KVM (Kernel-Based Virtual Machine) ve DPDK (Data Plane Development Kit) projelerinin sağladığı katkıların bir sonucudur. Elbette, Red Hat’in sertifikalı iş ortaklarından oluşan geniş ekosistemi tarafından daha da güçlendirilmiştir. Red Hat NFV çözümü, açık kaynak kodlu ve standartlara dayalı olup, üzerine inşa edebileceğimiz kararlı, birlikte uyumlu çalışabilir bir temel sağlar.

Red Hat OpenStack Platform 10, otomatik OVS-DPDK ve SR-IOV yapılandırmasının dahil edilmesiyle NFV dağıtımlarını desteklemektedir. Ayrıca, Hiper Bütünleşik Altyapı (HCI) çözümü kullanmak isteyenler artık hesaplama alt sistemini Red Hat Ceph Depolama yapısıyla birlikte konumlandırabilir. Bu model, daha düşük giriş maliyeti ile maksimum kapasite kullanımı ve NFV kullanım durumlarında daha verimli yönetimi beraberinde getirir.

Avrupa Telekomünikasyon Standartları Enstitüsü (ETSI)’nden yukarda bahsetmiştim. ETSI, Avrupa’da bilgi ve iletişim teknolojileri (BİT) için standartlar geliştiren bağımsız bir standardizasyon grubudur. Grubun temel amacı, network fonksiyonlarının sanallaştırması (NFV), tescilli donanım cihazlarının kullanılmasıyla ilgili sorunların ele alınmasına odaklanmaktır. NFV ile yukarda da değindiğimiz gibi, kullanım senaryosu gereksinimlerine ve ekonomik faydalara bağlı olarak, network’e özel ekipman/cihaz kurma gerekliliği azaltılır.

Red Hat, NFV ile OpenStack gibi mevcut açık kaynak projelerine SR-IOV, DPDK-OVS gibi özellikleri ekleyerek İletişim Hizmet Sağlayıcılarının (Communication Service Providers), bilgi teknolojileri ihtiyacını karşılamak  için açık kaynak tabanlı, bulut için optimize edilmiş bir çözüm sunmaktadır.

Red Hat OpenStack Platform 10’u NFV bileşenleriyle kurmak için abone olmanız gereken CDN (Red Hat Content Delivery Network) kanallarının listesini https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/10/html/network_functions_virtualization_product_guide/ch-understanding_red_hat_nfv linkinde bulabilirsiniz.

Nasıl bir yapı kuracağımızı aşağıdaki şekil çok güzel özetlemektedir.

No alt text provided for this image

En alt katmanda, kullanabileceğimiz sertifikalı donanım katmanı var. Onun üzerinde, SDN, SDS plugin’leri de dahil olacak şekilde, Red Hat OpenStack platform mevcut. Bu platform’da, çok iyi bildiğimiz, sanal bilgi işlem yapısı (KVM), sanal depolama alanımız (Ceph) ve sanal network bileşenlerimiz (OVS, DPDK) mevcut. Donanım ve OpenStack platformunun yönetimini, otomasyonunu ve yaşam döngüsü yönetimini yine iki iyi dostumuz, Ansible ve Satellite ile yapıyoruz. Üst katmanda, VNF yapısını görüyoruz. Red Hat Enterprise Linux ve OpenShift üzerinde tanımlayabilceğimiz VNF’lerin yanında farklı üreticilerden gelen VNF’leri de ortamımıza dahil edebiliyoruz. Bu katmanda NFV MANO ile yönetimimizi yapabiliyoruz. En üst katmanda, OSS/BSS, OpenShift, JBOSS Middleware bileşenlerini görüyoruz. Bu katmanda çoklu bulut ortamlarımızı da yönetebileceğimiz CloudForms’u kullanabiliyoruz.

Özet olarak, NFV, network fonksiyonlarını yerine getirmek için sanallaştırma teknolojisini kullanır. NFV, özel donanım cihazlarını, yazılım ve otomasyonla değiştirerek network’ü tanımlamanın, oluşturmanın ve yönetmenin yeni bir yoludur. Bir NFV ortamı, network fonksiyonlarını sanallaştırmak için anahtarlar, yönlendiriciler ve depolama gibi standart donanım cihazlarında çalışan standart sanallaştırma teknolojilerini kullanarak sanallaştırılmış bir altyapı sağlayarak ihtiyaç duyduğumuz network fonksiyonlarını sağlar. NFV yapısı, ayrıca bir Sistem Yönetimi, Otomasyon ve Yaşam Döngüsü Yönetimi fonksiyonlarını da içerir ve böylece gerekli manuel çalışmayı azaltır.

Sarav Asiye Yiğit – 2 Ocak 2022 Pazar

Kaynakça:

https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/10/html-single/network_functions_virtualization_product_guide/index#ch-Understanding_Red_Hat_NFV

https://www.redhat.com/en/topics/virtualization/what-is-nfv

https://www.vmware.com/topics/glossary/content/network-functions-virtualization-nfv.html

 https://www.informit.com/articles/article.aspx?p=2755705

https://www.cisco.com/c/en/us/solutions/software-defined-networking/sdn-vs-nfv.html

https://zoomgroup.com/blog/what-s-the-difference-between-sdn-and-nfv.asp

https://www.codilime.com/blog/the-difference-between-sdn-and-nfv-a-simple-guide/

https://www.networkworld.com/article/3239677/the-osi-model-explained-and-how-to-easily-remember-its-7-layers.html

https://slidetodoc.com/sdn-and-nfv-security-introduction-to-network-function/