Şebeke Fonksiyonları Sanallaştırma Kullanarak Ims Şebekelerinde Dinamik Yük Paylaşımı

thumbnail.default.placeholder
Tarih
2015-02-09
Yazarlar
Dandin, Kaan
Süreli Yayın başlığı
Süreli Yayın ISSN
Cilt Başlığı
Yayınevi
Fen Bilimleri Enstitüsü
Institute of Science and Technology
Özet
LTE erişim teknolojisi, artan mobil trafiği karşılamak için standart hale geldi. LTE, tamamen IP tabanlı bir erişim teknolojisi kullanmaktadır. LTE şebekesi ana  şebeke elemanı olarak IMS kullanmaktadır. IMS kendi içinde P-CSCF, I-CSCF , S-CSCF ve HSS elemanlarından oluşmaktadır. Bu elemanlar sayesinde IP servisleri verilebilmektedir. Öte yandan son yıllarda bulut şebekelerinde ve donanımlardaki gelişmeler ile şebeke fonksiyonlarının sanallaştırması mümkün olmaktadır. Şebeke fonksiyonlarındaki sanallaştırma ile telekom şebekelerinde akıllı telefonların ve internet cihazlarının artışının getirdiği  veri trafiği nedeni ile oluşan yüksek yatırım maliyetlerinin önüne geçmek mümkün olmaktadır. Artan şebeke maliyetleri ve düşen gelirler nedeni ile NFV kullanımı gerekli hale gelmiştir. NFV ile sürekli gelişen kompleks şebeke servisleri de verilebilmektedir. IT altyapısında kullanılan donanımların , telekom servisleri için de kullanılması ile devreye alma ve işletme aşamaları da kolaylaşmaktadır. Öte yandan NFV dinamik olarak şebeke elemanlarının boyutlandırmasını da sağlamaktadır, böylece kapasite ihtiyacı oldukça yeni şebeke elemanları başlatılmakta, az trafik olduğu zamanlarda ise bu elemanlar kapatılmaktadır. Ani trafik ihtiyaçları sağlanmakta ve gereksiz durumlarda  bazı şebeke elemanlarının kapatılması ile şebekelerin aynı zamanda daha az enerji tüketen yeşil şebekeler  olması sağlannaktadır. Bu tezde, NFV kullanarak IMS şebekeleri için dinamik yük paylaşımını sağlayan bir yapı önerdik. Bu yapıda IMS şebeke fonksiyonları tek bir sanal makina olarak yaratılıp genel amaçlı bir donanım üzerinde çalışan bir bulut ortamına taşındı. IMS cihazlarından gelen talepler ilk olarak bir yük dağıtım elemanı tarafından işlenip IMS sanal makinalarına dağıtılmaktadır. Bir IMS sanal makinasını açma kapama kararı, VM provizyon servisi tarafından IMS sanal makinalarından gelen kullanım bilgisine göre yapılmaktadır. Dinamik yük paylaşım yapısını oluşturmak ve göstermek amacı ile tamamen açık kaynak kodlu yazılımlar kullandık. Bu açık kaynak kodlu yazılımları kullanarak gerçek bir test ortamı oluşturduk. Test ortamında yaptığımız deneyler dinamik yük paylaşımının yüksek trafik oluşturan durumlarda IMS şebekesindeki arama başarı oranını ölçülebilir şekilde arttırdığını gördük.   NFV konusu günümüz telekom dünyasında artan data trafiği ve IOT cihazları nedeni ile artık bir gereklilik haline geldi. Bu gerekliliği gören telekom dünyası, özellikle operatörler bu konuda çeşitli çalışma grupları oluşturdu. Buna örnek olarak ETSI bünyesinde oluşturulan ETSI NFV ISG çalışma grubunu verebiliriz. Bu gruba tüm dünyadan çeşitli telekom operatörleri ve üretici firmaları katılmaktadır. Bu grubun temel amacı NFV konusundaki mimari yapıyı oluşturmak, endüstriyi ürün geliştirme konusunda bilgilendirmek , standartları oluşturmak ve açık kaynak kodlu çalışmaları başlatmak ve teşvik etmek olarak söylenebilir. Açık kaynak kodlu NFV çalışmalarına "Open Platform for NFV" (OPNFV) örnek olarak verilebilir.  OPNFV grubunun amacı, açık kaynak kodlu entegre NFV fonksiyonlarını verebileceğimiz bir platform geliştirmektir. Bu gruba dahil olan üretici ve kullanıcılar ihtiyaçları tam olarak bildiği için tutarlılık, performans ve açık kaynak kodlu elemanlar arası iletişimin standart hale gelmesini sağlayabilecektir. Çalışmamızda önerdiğimiz dinamik yük paylaşımının faydasını göstermek için tamamen açık kaynak kodlu yazılımlar kullandık. Bu açık kaynak kodlu yazılımlar ticari olarak da firmalar tarafından kullanılan  yazılımlar olduğundan ortaya gerçek  bir şebeke test ortamı çıktı. Tezimizde, NS2, OmNet gibi simülasyon yazılımları kullanmak yerine tamamen açık kaynak kodlu yazılım projeleri kullanmayı tercih etmemizin sebebi, ortaya daha gerçekçi bir test ortamı çıkarmaktı.IMS şebeke elemanı olarak Open IMS yazılımı kullandık, bu yazılım Fraunhofer Enstitüsü tarafından geliştirilen halen internetde kendi komünitesi olan bir yazılımdır. Burada IMS şebeke elemamının alt fonksiyonlarını verelebilecek P-CSCF, I-CSCF, S-CSCF ve HSS yazılımlarının tamamı mevcutdur. Bu yazılımları Open IMS internet sitesinden indirip derleyerek kullanmak mümkündür. Ek A'da bu kurulumun detayları geniş olarak anlatılmaktadır. Kurulumda P-CSCF, I-CSCF, S-CSCF ve HSS fonksiyonları aynı bilgisayar üzerine kurulduğu gibi farklı bilgisayarlara da kurulabilmektedir. Biz testleriminiz sırasında tüm IMS fonksiyonlarını aynı sanal makina üzerine kurarak gelen trafik miktarina gore IMS sanal makinalarının sayısını arttırmayı tercih ettik. Bu yöntem P-CSCF, I-CSCF, S-CSCF ve HSS fonksiyonları arasındaki sinyalleşme trafiğinin aynı makina üzerinde kalmasını sağlayıp, şebeke trafiğini de azalttığından tercih edilen bir yöntem olmaya başlamıştır.  Tüm test ortamı için birden fazla sanal makina kurulmasına izin verdiği için VMware Workstation'ı kullanmayı tercih ettik. Windows makinalar üzerine kurulan VMware Workstation ile sanallaştırma işlemini gerçekledik. VMware Workstation üzerine ihtiyacımız olan sanal makinaları kurarak, bunlara farklı ağ adresleri verdik. Böylece tamamen bulut ortamında IMS network fonksiyonlarını sanallaştırmış olduk. IMS sanal makinalarında farklı ağ adresleri kullanabilmek için konfigürasyon dosyalarında çeşitli değişiklikler yapmak gerekiyor. Buna ait detayları, Ek A'da paylaştık.   IMS terminallerinden gelen trafiği simüle etmek üzere endüstri de yaygın olarak kullanılan SIPp'nin bir versiyonu olan IMS Bench SIPp kullandık. Yine bu yazılım da tamamen açık kaynak kodludur. Ek B'de IMS Bench SIPp 'in nasıl yüklendiği ve nasıl konfigüre edildiğine dair tüm detaylar bulunmaktadır. IMS Bench SIPp, özellikle IMS testlerinde kullanmak üzere gerekli değişiklikler yapılmış bir versiyondur. Bu yazılım ile şebekeye kayıt olma, arama, şebekeye tekrar kayıt olma ve mesajlaşma gibi senaryolar test edilebilmektedir. Saniye başına düşen arama sayısı ve senaryonun ne kadar süreceği bilgisi test ayarlarında verilebilmektedir. Biz de yaptığımız testlerde bu ayarları kullanarak oluşturduğumuz yapının artan trafik ortamında performansa olan katkısını gösterdik. IMS Bench SIPp oluşturduğu log dosyalarından daha sonra senaryo ile ilgili tüm detay bilgilere ulaşmak mümkün olmaktadır. IMS Bench SIPp için farklı programlar çalıştırılmaktadır. Manager programı ile çalıştırılacak senaryolar yüklenmektedir ve daha sonra SIPp programlarından manager programına olan bağlantı sağlanarak senaryo başlatılmaktadır. Daha fazla trafik simüle edebilmek için birden fazla SIPp çalıştırmak mümkün olmaktadır. Aynı zamanda test edilecek sistemlerde cpum denilen bir program çalıştırılarak manager programı ile senkronizasyon işlemi sağlanmaktadır. Dinamik yük paylaşımı yapılan yer ise Open SIPS yük paylaşım programıdır. Bu program da açık kaynak kodlu olarak erişilebilmekte ve kullanılabilmektedir. Testlerimizde yük paylaşımını bu programın lb ve dispatcher denilen farklı modülleri ile yaptık. Dispatcher modülü farklı algoritmalara göre yük paylaşımı yapabilmektedir. Testlerde kullanılmak üzere bazı kabuk programları yazılarak test işlemleri ve sonuçların alınması otomatize edildi. Farklı yük değerleri için dinamik yük paylaşımı yaparak ve yapmadan benzer testler farklı trafik modelleri ile çalıştırıldı. Artan yüklerde dinamik yük paylaşımının daha iyi çalıştığı test sonuçları ile gösterildi. Ayrıca yine açık kaynak kodlu Zabbix gözlem programı ile IMS sanal makinalarının mevcut yüklerine bakarak yeni sanal makinaları başlatmak veya mevcut sanal makinaları kapatmak mümkün oldu. Bu çalışma ile başlangıçta ulaşmak istediğimiz şebeke fonksiyonlarının sanallaştırmasını, IMS fonksiyonları için tamamen açık kaynak kodlu gerçek ürünler ile oluşturmuş olduk. Yine NFV için en kritik olan noktalardan biri olan dinamik yük paylaşımı ve gerekli durumlarda eleman sayısını arttırmayı yine tamamen açık kaynak kodlu ürünler ile gerçekleştirmiş olduk. Burada NFV'nin ve dinamik yük paylaşımının faydası gerçek bir ortamda gösterilmiş oldu.  Bundan sonraki çalışmalarda yine bu yapı üzerinde başka yük paylaşım algoritmaları denemek, LB'nin getirdiği ek maliyeti incelemek de mümkün olabilecektir. Aynı zamanda Openstack, Open NFV gibi yeni ürünlerinin oluşturduğumuz yapıya entegre edilmesi ve bu gerçek test ortamında denenmesi de mümkün olabilecektir.
Long Term Evolution (LTE) access technology has become a de facto standard to meet the unprecedented mobile traffic increase. LTE, which has an all IP based architecture, uses IP Multimedia Subsystem (IMS) at the core network for delivering and managing IP multimedia services. IMS systems has several functions like P-CSCF, I-CSCF, S-CSCF and HSS. On the other hand cloud  technologies and commercial off the shelf(COTS) HW are evolved in recent years which gives also the possibility to virtualize network functions. Virtualization at telecom networks is also necessary to overcome high capex investment costs coming with high data traffic due to  smartphones, Internet of Things(IOT) devices and decreasing revenues. Network Function Virtualization (NFV) is utilized to simplfy the deployment and management of constantly evolving and highly complex networking services. NFV also helps to dynamically scale network resources when capacity is really needed. Using COTS HW will also reduce opex costs since the HW used for IT and networks services will be similar. On the other hand NFV gives the possibility to decrease used power resources by allowing dynamic scaling down the capacity when the network traffic is low. This also makes the green network in reality.  In this thesis, we propose a dynamic load management framework for IMS networks using NFV. In the proposed framework, IMS functions are created within a single virtual machine (VM) instance and moved to the cloud environment hosted by a general purpose hardware system. Requests coming from the IMS clients are first processed by a load balancer module to efficiently distribute the incoming load over a pool of multiple IMS VMs. The decision of switching an IMS VM instance on or off is performed by the VM provisioning service using the resource utilization information periodically received from the IMS VMs. We utilized open source tools to implement the dynamic load management framework. The proof-of-concept experiments using a real testbed environment demonstrate that the proposed framework significantly increases the scalability of the IMS networks for the highly loaded traffic scenarios.  In thesis we have build a real testbed environment with open source tools. Open IMS is used for IMS functions like P-CSCF, I-CSCF, S-SCSF and HSS. Open SIPS is used as load balancer for balancing Sesssion Initiation Protocol (SIP) traffic towards IMS. IMS Bench SIPp used for SIP traffic generation. Zabbix monitoring tool used for monitoring IMS instances and starting new instances when needed because of high CPU load in active IMS nodes. The advantage of our testbed is showing real results since it is build completely by real products other than simulation tools like NS2 or Omnet+. These open source products installed on VMWare Workstation as VMs and necessary configurations done for these tools. Some configuration and source code change was also necessary at Open IMS, Open SIPS side for the integration of these tools. Scripting at Open SIPS load balancer and IMS Bench SIPp was necessary for the test scenarios like IMS calls , IMS registration and distributing the SIP traffic to IMS nodes effectively. To obtain the test results we run scenarios with LB and without LB for several times and used average values in our graphics. Results obtained shows that putting load balancer is increasing CSRs (Call Success Rate) significantly when compared with the scenario without load balancer.
Açıklama
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2015
Thesis (M.Sc.) -- İstanbul Technical University, Instıtute of Science and Technology, 2015
Anahtar kelimeler
Şebeke Fonksiyonları Sanalaştırma, Ims, Yük Paylaşımı, Lte, Bulut, Network Function Virtualization, Ims, Load Balancing, Lte, Cloud
Alıntı