TR201811297A2 - CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem - Google Patents

CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem Download PDF

Info

Publication number
TR201811297A2
TR201811297A2 TR2018/11297A TR201811297A TR201811297A2 TR 201811297 A2 TR201811297 A2 TR 201811297A2 TR 2018/11297 A TR2018/11297 A TR 2018/11297A TR 201811297 A TR201811297 A TR 201811297A TR 201811297 A2 TR201811297 A2 TR 201811297A2
Authority
TR
Turkey
Prior art keywords
distribution
sampling
requests
automation engine
cdn
Prior art date
Application number
TR2018/11297A
Other languages
English (en)
Inventor
Canberk Berk
Ak Eli̇f
Sevi̇m Sekan
Original Assignee
Medianova Internet Hizmetleri Ve Ticaret Anonim Sirketi
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Medianova Internet Hizmetleri Ve Ticaret Anonim Sirketi filed Critical Medianova Internet Hizmetleri Ve Ticaret Anonim Sirketi
Priority to TR2018/11297A priority Critical patent/TR201811297A2/tr
Publication of TR201811297A2 publication Critical patent/TR201811297A2/tr
Priority to US17/265,523 priority patent/US20210224136A1/en
Priority to PCT/TR2018/050599 priority patent/WO2020027743A1/en
Priority to DE112018007888.4T priority patent/DE112018007888T5/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Buluş, CDN şirketlerinin kullanıcılara verdikleri kaliteyi geliştirmek ve kaynak kullanımını optimize etmek için kullanılan sistem olup; işyükü otomasyon motorunun (60) örnekleme yöneticisini (70) dinleme durumunda olması (S2001), örnekleme yöneticisi (70) tarafından fiziksel makinenin (30) kaynak bilgilerinin iş yükü otomasyon motoruna (60) periyodun sonunda gönderilmesi (S2002), yük yönlendiricisi (50) tarafından gelen istek sayılarını gelen istek tipi bazında iş yükü otomasyon motoruna (60) gönderilmesi (S2003), iş yükü otomasyonu (60) tarafından yeni algoritmaya göre VNF (40) dağılımının oluşturulması (S2004), yeni oluşturulan VNF (40) dağılımının bir önceki periyottaki dağlımla karşılaştırılarak fark olup olmadığı kontrolü yapılması (S2005), yeni VNF (40) dağılımının iş yükü otomasyon motoru (60) tarafından örnekleme yöneticilerine (70) gönderilmesi (S2006), örnekleme yöneticileri (70) tarafından iş yükü otomasyon motorundan (60) gelen karara göre kendi fiziksel makinelerindeki (30) her bir CDN düğümleri (41,42,43) ile ilgili yapılması gereken işleme bakılması (S2007) ve diğer bir periyodun sonuna kadar gelen isteklerin ve fiziksel makinelerin (30) kaynak durumlarının gözlemlenmesi (S2008) işlem adımlarını içermesi ile karakterize edilmektedir.

Description

TARIFNAME CDN Sirketlerinin Kullanicilara Verdikleri Kaliteyi Gelistirmek Ve Kaynak Kullanimini Optimize Etmek Için Kullanilan Sistem Teknik Alan Bu bulus, CDN (Içerik Dagitim Aglari/Content Delivery Network) sirketlerinin kullanicilara verdikleri kaliteyi gelistirmek ve kaynak kullanimini optimize etmek için kullanilir. CDN, kullanicilar tarafindan talep edilen verileri (büyük alisveris siteleri, haber sayfalari, multimedya paylasim platformlari vb.) dünyanin çesitli noktalarinda bulunan PoP°ler (Uzak Erisim Noktalari/Point of Presences) üzerinden sunarak hizli bir erisime olanak saglayan bulut bilisim hizmetidir. Bulus, temel itibariyle VNF”lar1 (Sanal Ag Fonksiyonlarini/Virtual Network Functions) yöneterek bu VNF7dan periyodik olarak gelen bilgileri degerlendirerek kaynak kullanimini orkestre eden (yönlendiren) modüller ve Önceki Teknik CDN (içerik dagitim aglari/content delivery network), kullanicilarin isteklerine göre 4 farkli sekilde hizmete odaklanarak CDN destegi saglanmaktadir.
Bu hizmetler; küçük boyutlu veriler (Örn. resim), büyük boyutlu veriler (örn. Pdf veya javascript/css dosyalari) ve canli yayin veya online Video gibi Streaming istekleridir. Bu farkli kullanici istekleri ise farkli tipte sunucular ile karislanmak zorunda oldugundan mevcut CDN yapilari her bir ag fonksiyonu için ayri bir fiziksel makine yapilandirir. Bu da kullanicilardan az istek geldigi zaman bazi fiziksel makinelerin kaynaklarinin bosta kalmasina neden olur. Örnegin günün bazi saatlerinde canli yayin akisina olan istek sayisi çok fazlayken resim içerigi için gelen istek sayilari az olur. Bu durumda resim isteklerine cevap veren CDN sunucusu kaynaklarini minimum seviyede kullanirken, video isteklerine cevap veren sunucu ise hizmet kalitesini düsürmemek için ilave kaynak destegine ihtiyaç duyar. Bilinen teknikte, CDN sirketlerinde kullanilan ana sistemin gerçeklestirdigi islevler (1000) sirasi ile su sekildedir; - Kullanici tarafindan istenilen web sayfasina istek olusturulmasi (51001), - Kullanici isteginin alan adi sistemine ulasmasi (51002), - Alan adi sistemi tarafindan istegin en uygun uzak erisim noktasina yönlendirilmesi (51003), - Yük yönlendiricisi tarafindan gelen istege uygun CDN dügümünün belirlenmesi (51004), - Kullaniciya verilmesi gereken içerigin uzak erisim noktasinda var mi sorgusunun yapilmasi (51005), - Gereken içerigin merkez cihazdan alinmasi (51006), - Içerigin kullaniciya gönderilmesi (51007) islem adimlarindan meydana gelmektedir. Bu kaynak mevcut CDN uygulamalarinda dinamik olarak verilemedigi için de bu gibi durumlarda gecikme süresinde artis, kullaniciya verilen hizmet kalitesinde ise düsüs olmaktadir.
Ani degisen istek yogunluklarinda olusan fazla gecikme süresine çözüm getirmek için de bazi mevcut sistemler donanima yatirimlar yaparak düsük gecikme süresini yakalamaya çalisirlar. Fakat bu da fazla trafik yogunluguna neden olan durumlar için çözüm olurken, istek sayisinin normal seviyede oldugu zamanlarda kaynaklarin gereksiz yere bosta kalmasina neden olmaktadir. Düsük gecikme süresini elde etme ile kaynak ihtiyaci arasindaki bu çeliski hem içerik iletim saglayicilarini hem de kullanicilari zor duruma sokmaktadir.
Bazi sanallastirma teknolojileri (kvm, hyper-v veya xen gibi) yukaridaki problemlere çözüm saglamak amaciyla kurduklari sistemlerde ise 12 saniyelik yüklenme zamaniyla ani degisimlere hizli bir sekilde cevap vermek zor olmaktadir.
Konteynir teknolojisi ile yapilan çalismalarda ise 1 saniyelik hizli bir önyükleme süresi dinamik bir sekilde orkestrasyon edilebilen sistemler kurulabilmeye imkân saglar. Fakat içerik dagitim aglarina özel konteynir yönetiminin eksikliginden dolayi içerik dagitim aglarinda etkili bir kaynak kullanimina ve düsük gecikme süresine ulasilamaz.
Bilinen teknikte kullanilan konteynir teknolojisi olan Docker konteyniri içerik dagitim aglarinda (CDN'de) kullanilmaktadir. Docker konteyniri, konteynirlastirma (containerization) yöntemi ile ortaya çikan bir sanallastirma teknolojisidir. Virtual Machine (sanal makine) olarak adlandirilan kvm, hyper-V teknolojilerine oranla daha hizli ve esnek bir sanallastirma sunar. Bu yöntemle CDN'deki ag fonksiyonlari (DNS, load balancer, edge servers gibi) sanallastirilabilirler. Bu sayede donanimsal olarak ag fonksiyonlarina bagimlilik azaltilarak islevsellik yazilim ortamina tasinabilir. Fakat bu sanal ag fonksiyonlarini yönetebilmek için bir orkestre aracina ihtiyaç duyulur. Çünkü hangi ag fonksiyonun ne zaman nasil çalisacagini yöneterek kaynak kullanimi dengeli dagitilmasi gerekmektedir. Bu baglamda açigi kapatmak için Docker konteynirlarini yönetmek için yazilmis olan Kubemetes yazilimi bulunmaktadir. Fakat CDN için verim elde edilebilecek bir orkestre araci degildir. Çünkü bulut bilisimdeki diger servislerin ihtiyaçlarina göre yazildigindan belirli bir CPU kullanimi geçince bulutta yeni bir sunucuda ihtiyaç duyulan Docker konteynirini ayaga kaldirir. CDN yapisinda ise hem CPU hem ag bilgilerini kaynak kullanimi olarak dikkate alip hem de gelen istekler; istek tiplerine göre degerlendirilerek karar verilmelidir. Sonuç olarak bunu yapacak bir algoritma ve bir yönetim sistemi söz konusu bulusu olusturinaktadir.
Günümüzde kullanilan konteynir yönetim araçlari (container orchestration) içerik dagitim aglarina özel olmadiklari için kaynak kullanimi ve gecikme süresini yeterince düsürememektedirler. Çünkü var olan konteynir orkestrasyonlari (örn. kubemetes) sadece CPU gibi kaynaklari kriter olarak alirlar. Fakat içerik dagitim aglarinda gecikme süresini düsüren asil seyin kaynak kullaniminin yanindav gelen isteklerin egilimleri ve sayilari da önemlidir. Bu yüzden gereken düsük gecikme oranini elde edilememektedir.
Bulusun Amaci Bulusun amaci; içerik dagitim aglarina özel, kaynak kullanimi ve gecikme süresini yeterince düsürebilen bir konteynir sistemi meydani getirmektir.
Bulusun bir diger amaci; içerik dagitim aglarinda gelen isteklerin egilimlerini ve sayilarini dikkate alan bir konteynir sistemi meydani getirmektir.
Bulusun bir diger amaci; hizli bir önyükleme süresi dinamik bir sekilde orkestrasyon edilebilen sistemler kurulabilmeye imkân saglayan bir konteymr sistemi meydani getirmektir.
Bulusun bir diger amaci; ani istek degisimlerine hizli bir sekilde cevap verebilen ag fonksiyonlari olusturularak gecikme süresinin azaltilmasini saglayan bir konteynir sistemi meydana getirmektir.
Bulusun bir diger amaci; düsük maliyetle daha düsük gecikme sürelerine sahip dagitim aglari meydana getirmektir.
Bulusun bir diger amaci; hem içerik dagitim agi saglayicilari için hem de kullaniciya verilen hizmet için karsilikli bir kazanç veren bir konteynir sistemi meydana getirmektir.
Bulusun bir diger amaci; kaynaklara, istek yogunluklarina ve var olan konteynir dagilimina göre yeni dagilimdaki konteynir sayisini minimuma indirmektir.
Bahsedilen amaçlari gerçeklestirmek üzere gelistirilen konteynir sistemi; alan adi sistemi (10), uzak erisim noktasi (20), fiziksel makine (30), sanal ag fonksiyonlari (40), sanal tip-1 dügüm (41), sanal tip-2 dügüm (42), sanal tip-3 dügüm (43), yük yönlendiricisi (50), is yükü otomasyon motoru (60) ve Örnekleme yöneticisinden (70) meydana gelmektedir.
Sekillerin Açiklamasi Ekte sunulan Sekil - l sistemde (1) kullanicilarin (k) internet üzerinde olusturduklari her bir istegin, ag üzerinden Alan Adi Sistemine (10) yönlendirilmesini ve detaylarini anlatan çizimin genel görünümüdür.
Sekil-2 ana sistemin gerçeklestirdigi islevlerin akis diyagramidir.
Sekil-3 ana sisteme eklenen modülün gerçeklestirdigi islevlerin akis diyagramidir.
Sekil-4 Dünyanin çesitli yerlerinde konumlandirilinis halde bulunan Uzak Erisim Noktalari (20) ve Alan Adi Sistemi (10) sunucularinin genel görünümüdür.
Sekillerde ifade edilen baslica parçalar asagida numara ve isim olarak verilmistir. (10) Alan Adi Sistemi (DNS) (30) Fiziksel Makine (40) Sanal Ag Fonksiyonlari (VNF) (konteynirlastirma) (41) Sanal Tip-1 Dügüm (42) Sanal Tip-2 Dügüm (43) Sanal Tip-3 Dügüm (50) Yük Yönlendiricisi (Load Balancer) (60) Is yükü Otomasyon Motoru (Workload Automation Engine) (70) Örnekleme Yöneticisi (Instance Managers) (k) Kullanici (m) Merkez Bulusun Detayli Açiklamasi Bu bulus, CDN (içerik dagitim aglari/content delivery network) sirketlerinin kullanicilara verdikleri kaliteyi gelistirmek ve kaynak kullanimini optimize etmek için kullanilir. CDN, kullanicilar tarafindan talep edilen verileri (büyük alisveris siteleri, haber sayfalari, multimedya paylasim platformlari vb.) dünyanin çesitli noktalarinda bulunan uzak erisim noktalari (20) yani PoP'ler (point of presences) üzerinden sunarak hizli bir erisime olanak saglayan bulut bilisim hizmetidir. Bulus, temel itibariyle Sanal Ag Fonksiyonlarini (40) yani VNFvlari (virtual network functions) yöneterek bu VNF7dan (40) periyodik olarak gelen bilgileri degerlendirerek kaynak kullanimini orkestre eden modüller ve algoritmalardan olusmaktadir.
CDN (content delivery networks/içerik dagitim aglari) kisaca; Video, resim, müzik ve kod parçaciklarindan olusan dijital varliklari barindiran, optimize eden ve son kullanicinin her cihazina süratle ulasmasini saglayan bir bulut bilisim platformudur.
Bulus, var olan konteynir teknolojisini (önr. Docker containerization) içerik dagitim aglarinda (CDN°de) kullanmaktadir. Ve bu sanallastirma yapisina CDN için özellesmis orkestrasyon algoritmasini ekleyerek gün içerisinde degisen kullanici sayilarina dinamik bir sekilde cevap verebilmek için gereken esnek sistemi saglar. Bunu yapmak için bulusumuz, kullanici egilimine göre ihtiyaç olunan ag rollerini dinamik bir sekilde olusturur ve ihtiyaç bittiginde ise baska ag rollerine kaynak ayirmak için pasife çeker. Ani istek degisimlerine hizli bir sekilde cevap verebilen ag fonksiyonlari olusturularak gecikme süresi azaltilir. Bahsedilen bulus sayesinde içerik dagitim aglarini daha düsük inaliyetlerle ve daha düsük gecikme süreleriyle kurmak mümkün olmaktadir. Bu da hem içerik dagitim agi saglayicilari için hem de kullaniciya verilen hizmet için karsilikli bir kazanç olmaktadir.
CDN sirketlerinin kullanicilara verdikleri kaliteyi gelistirmek ve kaynak kullanimini optimize etmek için kullanilan yöntemde kullanilan fiziksel parçalar ve yaptigi isler su sekildedir: Alan adi sistemi (10), kullanicilardan (k) aldigi istekleri bulunduklari konuma göre en uygun içerik dagitim ortamina gönderme görevini üstlenmektedir. Uzak Erisim Noktasi (20), kullanicidan (k) gelen istekleri cevaplayan sistemleri içeren ortama denilmektedir. Fiziksel Makine (30), gelen istekleri cevaplayabilecek islem gücüne ve kaynaga sahip sunuculardir. Içinde sanal ag fonksiyonlari (40) bulundurarak bu istekleri cevaplamaktadir. Sanal Ag Fonksiyonlari (40), bir diger adiyla konteynirlastinna ise konteynirlastirma yöntemi ile sanal ag fonksiyonlari (40) içeren konteynir grubuna verilen isimdir.
Sanal Tip-1 Dügüm (41), CDN°deki küçük boyutlu dosyalar (öm. resim) için gelen istekleri karsilamak için tasarlanmis bir CDN dügümüdür. Sanal Tip-2 Dügüm (42), CDN'deki büyük boyutlu dosyalar (örn. pdf dosyalari) için gelen istekleri karsilamak için tasarlanmis bir CDN dügümüdür. Sanal Tip-3 Dügüm (43), CDN”deki yayin akislarina (örn. yayin akislari, canli veya talep üzerine görüntü istegi) gelen istekleri karsilamak için tasarlanmis bir CDN dügümüdür. Yük Yönlendiricisi (50), gelen istegin hangi tip oldugunu anladiktan sonra uygun tipte bir dügüme yönlendirir. Eger ayni tipte birden fazla dügüm varsa esit miktarda dagitarak yönlendirme yapar. Isyükü Otomasyon Motoru (60) bulundugu POP (20) içerisindeki sanal CDN dügümlerinin (41, 42, 43) otomatik sekilde olusturulmasindan veya kaldirilmasindan sorumludur. Bunu özellesmis bir algoritma ile yapmaktadir. Örnekleme Yöneticisi (70), bulundugu fiziksel makinenin ve üzerindeki sanal dügümlerin bilgilerini Isyükü Otomasyon Motoruna (60) göndermektedir.
Bulus, uzak erisim noktasi (20) için bir adet isyükü otomasyon motoru (60) içerir. Bu mekanizina içerisinde bes adet modül bulundurur. Bu modüller sayesinde var olan konteynir dagilimi, farkli tiplerde gelen istek sayilari/yogunluklari ve kaynak kullanimi (CPU ve Ag) dikkate alinarak yeni konteynir dagilimi hesaplanir.
Bunu yapmak için de Optimizasyon algoritmasi kullanilmaktadir. Burada ki amaç kaynaklara istek yogunluklarina ve var olan konteynir dagilimina göre yeni dagilimdaki konteynir sayisini minimuma indirmektir.
Bulus konusu sistemde (1) kullanicilarin (k) Internet üzerinde olusturduklari her bir istek ag üzerinden Alan Adi Sistemine (10) yönlendirilir. Alan Adi Sistemi (10) cografik olarak kendisine en yakin Uzak Erisim Noktasini (20) seçer. Artik kullanicinin istegi Uzak Erisim Noktasinda (20) bulunan yük yönlendiricisine (load balancer) (50) geçer. Yük yönlendiricisi (50), Uzak Erisim Noktasina (20) gelen istekleri degerlendirip ilgili dügüme (41,42,43) yönlendirir. Bu dügümler (41,42,43l, kullanicilardan (k) gelen istekleri yanitlarlar. Bunun için de önbelleklerinde bulunan dosyayi/dosyalari kullaniciya (k) gönderir. Eger 0 an önbellekte istenilen dosya yoksa dügüm, merkezden (m) dosyayi alir ve istegi yanitlar. Bahsi geçen dügümler (41.42.43) ise sanal ag fonksiyonlari (40) olarak fiziksel makinelerde (30) bulunur. Her bir fiziksel makinede (30) her tipten en fazla birer adet sanal ag fonksiyonu (40) bulunur. Çünkü ayni fiziksel makinede (30) ayni isi yapan birden fazla sanal ag fonksiyonu (40) olmasina gerek yoktur. Fakat kullanicilardan (k) gelen istek yogunluguna ve fiziksel makinelerin (30) kaynak kullanim yogunluklari da dikkate alinarak bu sayilar degiskenlik gösterir. Bulus konusu sitemde (1) çalisan ve asagida detaylica anlatilacak olan algoritmaya göre sayilara karar verilir. Bu sayede verimli kaynak kullanimi ve düsük gecikme süresi Her bir dügüm (41.42.43), gelen kullanici isteklerini karsilamak için üzerlerinde bulunduklari fiziksel makinelerin (30) kaynaklarini kullanir. Bulus konusu sistemde (1) ise Is yükü Otomasyon Motoru (60) bu kaynak kullanimini yöneten merkezi bir sistemdir. Yani Uzak Erisim Noktasindaki (20) fiziksel makinelerden (30) biri üzerinde çalisan ve bulus konusu sistemin yazilimsal kismini olusturan algoritmaya göre hesaplama yapar. IOM (60) hesaplama yaparken Uzak Erisim Noktasindaki (20) fiziksel makinelerin kaynak kullanim oranini ve gelen istek sayilarini dikkate alir. Fiziksel makinelerin (30) kaynak durum bilgisini IOM°na (60) belirli periyotlar halinde gönderen modül ise Ömekleme Yöneticisidir (70). Her bir Ömekleme Yöneticisi (70), bulunduklari fiziksel makinelerin (30) CPU ve ag bilgilerini IOM7na (60) gönderir. Ayni zamanda IOM (60) hangi istek tipinden ne kadar istek gelmis ve bu istekler hangi dügüm (41,42,43) tarafindan karsilanmis bilgisini de Ömekleme Yöneticilerinden (70) alarak algoritmaya giris bilgisi olarak verir. Yani bulus konusu sistem (1), yeni sanal dügüm dagilimini (41,42,43) yapmak için var olan kaynaklarin su an ne kadari hangi fiziksel makineye daha çok yük oluyor ya da hangi dügüm tipinin (41,42,43) istekleri daha etkili cevaplamasi için destege ihtiyaci var onu hesaplar. Bulus konusu sistemin algoritmasi ise hesaplamayi su sekilde yapmaktadir; Birinci adim olarak, örnekleme yöneticilerinden (70) gelen kaynak kullanim bilgilerini yüzdesel formata çevirdikten sonra bu iki kaynak kullanim bilgisini (CPU ve ag) toplar. Yani sistem Uzak Erisim Noktasinda (20) bulunan her bir fiziksel makine için toplam kaynak kullanimi bulur. Bu sayi en fazla 200 en az 0 olur (iki kaynak kullanimi da yüzdesel formatta oldugu Ikinci adim olarak, kullanicilardan gelen istekler, istek tiplerine göre gruplandirildiktan sonra her bir istek tipi için ne kadar istek gelmis bilgisi edilir. Örnegin sanal tip-l dügümün (41) karsiladigi resim formatinda istekler için 2000; sanal tip-2 dügümünün (42) karsiladigi büyük boyutlu dosyalar için (pdf, javascript/css dosyalari) 1500; ve sanal tip-3 dügümünün (43) karsiladigi video yayin istekleri için de 1000 istek geldigi bilgisi elde Üçüncü adiin olarak, her bir tipteki istek sayisi, toplam istek sayisina bölünür. Bu sayede hangi istekten ne kadar yogunlukta istek gelmis oransal olarak dagitilmis halde bilgisi elde edilir.
Dördüncü adim olarak, bir önceki periyottan kalan sanal dügüm (41,42,43) dagilimini gösteren matris bilgisi de algoritmaya verilir. Yani bu matris, her bir sanal dügüm (41,42,43) için hangi fiziksel makinede var hangi fiziksel makine yok bilgisini içerir. Bu da 1 ve 0 ile sirasiyla var ve yok olarak ifade Besinci adiin olarak, birinci adimda elde edilen fiziksel makinelere göre toplam kaynak kullanimi bilgisi ile, dördüncü adimda elde edilen fiziksel makinelere göre sanal dügüm dagilimi (41,42,43) gösteren matris çarpilir.
Bu islem sonucunda hangi dügümün hangi fiziksel makineye kaynaksal olarak yük yaptiginin dagilimi bulunur. Dolayi hangi tipte sanal dügümün destege ihtiyaci var o belirlenmek istenir.
Altinci adim olarak, besinci adimda bulunan dagilim, üçüncü adimdaki gibi yöntemle oransal orak dagilima çevrilir ve üçüncü adimdaki Istek sayilarinin oransal dagilimi ile karsilastirilir. Buradaki karsilastirma araligi arti/eksi 0,1 olarak belirlenmistir. Eger bu sinirlarin arasinda degilse bahsi geçen fiziksel makine çok yük altindadir çünkü üzerinde bulunan sanal dügümler çok istege maruz kaliyor demektir. O yüzden diger fiziksel makinelerden kaynak açisindan daha az yogun olan seçilerek destege ihtiyaç duyulan sanal dügüm, seçilen fiziksel makinede baslatilir.
Yedinci adim olarak, bu adim sinir degerler korunana kadar devem eder.
Sinir degerler saglandiktan sonra isyükü otomasyon motoru (60] yeni sanal ag fonksiyonlarinin (40) dagilimini, örnekleme yöneticilerine (70) gönderir.
Sekizinci adim olarak, örnekleme yöneticileri (70) gelen hesaplamalara uygun olarak üzerlerinde bulunduklari fiziksel makinede (30) çalisan her bir sanal dügüm (40) için açma ya da kapama islemi yapar. Ve diger periyoda kadar birinci adimdaki ve ikinci adimdaki bilgileri IOMlna (60) göndermek için kayit tutar.
CDN sirketlerinin kullanicilara verdikleri kaliteyi gelistirmek ve kaynak kullanimini optimize etmek için kullanilan ana sisteme eklenen modülün gerçeklestirdigi islevler ise sirasi ile su sekildedir; - Isyükü otoinasyon motorunun (60) örnekleine yöneticisini (70) dinleme durumunda olmasi (82001), - Örnekleme yöneticisi (70) tarafindan fiziksel makinenin (30) kaynak bilgilerinin Isyükü otomasyon motoruna (60) periyodun sonunda gönderilmesi (82002), - Yük yönlendiricisi (50) tarafindan gelen istek sayilarini gelen istek tipi bazinda is yükü otomasyon motoruna (60) gönderilmesi (82003), - Is yükü otomasyonu (60) tarafindan yeni algoritmaya göre VNF (40) dagiliminin olusturulmasi (82004), - Yeni olusturulan VNF (40) dagiliminin bir önceki periyottaki daglimla karsilastirilarak fark olup olmadigi kontrolü yapilmasi (82005), - Yeni VNF (40) dagiliminin is yükü otomasyon motoru (60) tarafindan örnekleme yöneticilerine (70) gönderilmesi (82006), - Örnekleme yöneticileri (70) tarafindan is yükü otomasyon motorundan (60) gelen karara göre kendi Iiziksel makinelerindeki (30) her bir CDN dügümleri (41,42,43) ile ilgili yapilmasi gereken isleme bakilmasi (52007), - Diger bir periyodun sonuna kadar gelen isteklerin ve fiziksel makinelerin (30) kaynak durumlarinin gözlemlenmesi (82008) islem adimlarindan meydana gelmektedir. Ana sisteme eklenen modülün gerçeklestirdigi islevler (2000) ve bahsedilen islem adimlari Sekil-37 de akis semasi olarak da gösterilmektedir.
Söz konusu sistemin bütününde dünyanin çesitli yerlerinde konumlandirilmis halde bulunan Uzak Erisim Noktalari (20) ve Alan Adi Sistemi sunuculari (10) bulunur. Sekil-4 üzerinde “D” harfi ile ifade edilmis noktalar DNS”leri (10); “P” harfi ile ifade edilmis sunucular ise PoP°lari (20) göstermektedir. Her bir POP (20) noktasi en az bir adet DNS (10) sunucu tarafindan bilinir. Kullanici bir sayfaya istek yaptigi zaman DNS (10) sunuculari istegi karsilayabilecek en yakin PoP (20) noktasina yönlendirme yapar. Içerik eger seçilen P0P”ta (20) varsa istek karsilanir; yoksa merkez sunucusuna (Sekil-4”de “M” harfi ile gösterilmistir) gidilir. Bu merkez sunucusu içerigin orijinal sahibidir.
Bulus konusu sistemde; genel veri aktarimi üzerinde degisiklik yapilmamistir. Sadece her bir POP”taki (20) sunucularin kendi içindeki kaynak kullanimini organize eden otomasyon mekanizmasi sisteme eklenmistir. Bu amaçla ag fonksiyonlarini sanallastirma yoluna gidilmis ve sisteme temel olarak iki ayri ana modül eklenmistir: Isyükü Otomasyon Motoru (60) ve Örneklem Yöneticileri (70). Ag fonksiyonlarini sanallastirirken kullanilan araç ise Docker Containerization°dir. Bulus konusu sistemin bütünü Sekil-4”de gösterilmistir. request distribution for each request type RN, and container distribution matrix Output: New container distribution matrix BNXM 1: Vwm (- C + T 2: D <- i/Sum.A 3: DN <- NORMALIZE (D) 4: while ANxMis changed de 6: ifRgV - 0,1 > DiNthen 7: j (- FINDMINLOADEDMACHINE(ANxM, Vsum) 8: AJI (- 1 9: else if R5” + 0.1 < D?' then : j «- FINDMAXLOADEDMACHINE(ANxM, Vsum) 111 AJI (- Ü 12: end if 13: end for 14: D (- Vsum.A : DN (- NORMALIZE (D) 16: endwhile Algoritma 1- Isyükü Otomasyon Motoru Çalisina Prensibi Algoritma 1, CDN için özellesmis orkestrasyon algoritmasidir. Algoritma; örnekleme Yöneticilerinden (70) gelen CPU ve ag kullanim bilgilerini ve uzak erisim noktasindaki (20) fiziksel inakinelerdeki anlik sanal dügüm (41,42,43) dagilim matrisini alarak yeni sanal dügüm dagilimlarini olusturur.
Algoritma 1°de kullanilan semboller için açiklamalar Tablo 1”de verilmistir.
Ayni zamanda algoritma bir optimizasyon probleminin çözümü olarak gelistirildiginden ilgili optimasyon formülü de Denklem 1 ”de verilmistir.
Parametre Tanitim N Fiziksel makine sayisi M Orkestre edilecek sanal ag sayisi 2 Anlik sistemde bulunan toplam konteyner sayisi ANxM Fiziksel makinelere göre konteyner dagilim matrisi (algoritma girdisil BNxM Fiziksel makinelere göre konteyner dagilim matrisi (algoritma girdisi) Fiziksel makinelere ve istek tiplerine göre istek sayilari vektörü Fiziksel makinelere göre CPU kullanim bilgisi Fiziksel makinelere göre ag kullanim bilgisi Tablo 1 Matematiksel Sembol Açiklamalari minimize z Z 21- subject to XgV-oi 5 12925 XiN+ 0.1, vr e N (2) Denklem- 1 Algoritmanin Optimizasyon Formülü Seklinde Gösterimi Denklem lsde ifade edilen numaralar; sistemde anlik bulunan toplam konteynir sayisini minimize etmeye çalisirken (1 numarali islem) kaynak dagilimi ile gelen istek sayisi arasindaki sinir degeri korumaya çalisilmaktadir (2 numarali islem). Bunu yaparken de her bir fiziksel makine ayni tipte en fazla bir adet konteynir bulundurabilir (3 numarali islem).
Asagida örnek degerler ile algoritmanin ve denklemin çalisma mantigi gösterilmistir. C, T ve R sembolleri Tablo l”de açiklanmistir. Örnek sistem üç fiziksel makine için bir örnegi göstermektedir.

Claims (1)

ISTEMLER
1. Bulus: CDN sirketlerinin kullanicilara verdikleri kaliteyi gelistirmek ve kaynak kullanimini optimize etmek için kullanilan sistem olup özelligi; - Isyükü otomasyon motorunun (60) örnekleme yöneticisini (70) dinleme durumunda olmasi (52001), - Ömekleme yöneticisi (70) tarafindan fiziksel makinenin (30) kaynak bilgilerinin Is yükü otomasyon motoruna (60) periyodun sonunda gönderilmesi (52002)I - Yük yönlendiricisi (50) tarafindan gelen istek sayilarini gelen istek tipi bazinda is yükü otomasyon motoruna (60) gönderilmesi (52003), e Is yükü otomasyonu (60) tarafindan yeni algoritmaya göre VNF (40) dagiliminin olusturulmasi (52004), - Yeni olusturulan VNF (40) dagiliminin bir önceki periyottaki daglimla karsilastirilarak fark olup olmadigi kontrolü yapilmasi (52005), - Yeni VNF (40) dagiliminin is yükü otomasyon motoru (60) tarafindan ömekleme yöneticilerine (70) gönderilmesi (52006), - Örnekleme yöneticileri (70) tarafindan is yükü otomasyon motorundan (60) gelen karara göre kendi fiziksel makinelerindeki (30) her bir CDN dügümleri (41,42,43) ile ilgili yapilmasi gereken isleme bakilmasi (52007), - Diger bir periyodun sonuna kadar gelen isteklerin ve fiziksel makinelerin (30) kaynak durumlarinin gözlemlenmesi (52008) islem adimlarini içermesidir. Istem 1`de bahsedilen Sistem olup özelligi; bulundugu POP (20) içerisindeki sanal CDN dügümlerinin (41, 42, 43) otomatik sekilde olusturulmasindan veya kaldirilmasindan sorumlu olan ve bunu özellesmis bir algoritma ile yapan isyükü otomasyon motoru (60) ile bulundugu5 tiziksel makinenin ve üzerindeki sanal CDN dügümlerin (41,42,43) bilgilerini bahsedilen isyükü otomasyon motoruna (60) gönderen bir örnekleme yöneticisine (70) sahip olmasidir. istem 2°de bahsedilen yeni algoritma olup özelligi; Birinci adim olarak, örnekleme yöneticilerinden (70) gelen kaynak kullanim bilgilerini yüzdesel formata çevirdikten sonra bu iki kaynak kullanim bilgisini (CPU ve ag) toplanmasi, Ikinci adim olarak, kullanicilardan gelen istekler, istek tiplerine göre gruplandirildiktan sonra her bir istek tipi için ne kadar istek gelmis bilgisi elde edilmesi, Üçüncü adiin olarak, her bir tipteki istek sayisi, toplam istek sayisina bölünür. Bu sayede hangi istekten ne kadar yogunlukta istek gelmis oransal olarak dagitilmis halde bilgisi elde edilmesi, Dördüncü adim olarak, bir önceki periyottan kalan sanal CDN dügüm (41,42,43) dagilimini gösteren matris bilgisi de algoritmaya verilmesi, Besinci adim olarak, birinci adim sirasinda elde edilen fiziksel makinelere göre toplam kaynak kullanimi bilgisi ile, dördüncü islem sirasinda elde edilen fiziksel makinelere göre sanal CDN dügüm dagiliini (41,42,43) gösteren matris çarpilmasi ve bu islem sonucunda hangi dügümün hangi fiziksel makineye kaynaksal olarak yük yaptiginin dagilimi bulunmasi ve sonrasinda hangi tipte sanal dügümün destege ihtiyaci varsa onun belirlenmesi, Altinci adiin olarak, besinci islem adiminda bulunan dagilim, üçüncü islem adiinindaki gibi bir yöntemle oransal orak dagilima çevrilmesi ve üçüncü islem adiminin istek sayilarinin oransal dagilimi ile karsilastirilmasi, Yedinci adim olarak, sinir degerler saglandiktan sonra isyükü otomasyon motoru (60) yeni sanal ag fonksiyonlarinin (40) dagilimini, örnekleme yöneticilerine (70) gönderilmesi, Sekizinci adim olarak, örnekleme Yöneticileri (70) gelen hesaplamalara uygun olarak üzerlerinde bulunduklari fiziksel makinede (30) çalisan her bir sanal dügüm (40) için açma ya da kapama islemi yapilmasi ve diger periyoda kadar birinci ve ikinci islem adimlarindaki bilgileri IOlVFna (60) göndermek için kayit tutmasi islem adimlarini içermesidir.
TR2018/11297A 2018-08-03 2018-08-03 CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem TR201811297A2 (tr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TR2018/11297A TR201811297A2 (tr) 2018-08-03 2018-08-03 CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem
US17/265,523 US20210224136A1 (en) 2018-08-03 2018-10-17 System Used by CDN Companies to Improve the Quality Offered to the Users and to Optimize Resource Utilization
PCT/TR2018/050599 WO2020027743A1 (en) 2018-08-03 2018-10-17 System used by cdn companies to improve the quality offered to the users and to optimize resource utilization
DE112018007888.4T DE112018007888T5 (de) 2018-08-03 2018-10-17 System welches von CDN-Unternehmen verwendet wird zur Verbesserung der den Benutzern angebotenen Qualität und zur Optimierung der Ressourcennutzung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TR2018/11297A TR201811297A2 (tr) 2018-08-03 2018-08-03 CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem

Publications (1)

Publication Number Publication Date
TR201811297A2 true TR201811297A2 (tr) 2018-08-27

Family

ID=64559019

Family Applications (1)

Application Number Title Priority Date Filing Date
TR2018/11297A TR201811297A2 (tr) 2018-08-03 2018-08-03 CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem

Country Status (4)

Country Link
US (1) US20210224136A1 (tr)
DE (1) DE112018007888T5 (tr)
TR (1) TR201811297A2 (tr)
WO (1) WO2020027743A1 (tr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114268672B (zh) * 2021-12-20 2024-01-12 北京字节跳动网络技术有限公司 Cdn节点分配方法、装置、电子设备、介质及程序产品

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7574499B1 (en) * 2000-07-19 2009-08-11 Akamai Technologies, Inc. Global traffic management system using IP anycast routing and dynamic load-balancing
US9237188B1 (en) * 2012-05-21 2016-01-12 Amazon Technologies, Inc. Virtual machine based content processing
US8626910B1 (en) * 2012-06-19 2014-01-07 Edgecast Networks, Inc. Systems and methods for performing localized server-side monitoring in a content delivery network
EP2957080B1 (en) * 2013-02-12 2020-06-10 Hewlett-Packard Enterprise Development LP Network control using software defined flow mapping and virtualized network functions
US10664297B2 (en) * 2014-02-24 2020-05-26 Hewlett Packard Enterprise Development Lp Activating pre-created VNFCs when a monitored performance level of a VNF exceeds a maximum value attainable by the combined VNFCs that form a VNF
FR3023108A1 (fr) * 2014-06-30 2016-01-01 Orange Procede et dispositif d'orchestration de ressources
US9979602B1 (en) * 2014-08-25 2018-05-22 Cisco Technology, Inc. Network function virtualization infrastructure pod in a network environment
WO2016066199A1 (en) * 2014-10-30 2016-05-06 Hewlett-Packard Development Company L.P. Virtual content delivery network
US10356169B1 (en) * 2014-12-23 2019-07-16 EMC IP Holding Company LLC Virtual content delivery network
US9882833B2 (en) * 2015-09-28 2018-01-30 Centurylink Intellectual Property Llc Intent-based services orchestration
WO2017194990A1 (en) * 2016-05-09 2017-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Orchestrator for a virtual network platform as a service (vnpaas)
US10063666B2 (en) * 2016-06-14 2018-08-28 Futurewei Technologies, Inc. Modular telecommunication edge cloud system
EP3501152B1 (en) * 2016-08-18 2019-10-16 Telefonaktiebolaget LM Ericsson (publ) Technique for selecting a content distribution network entity
US11237862B2 (en) * 2017-03-27 2022-02-01 British Telecommunications Public Limited Company Virtualized network function deployment
CN107124306B (zh) * 2017-04-24 2019-11-05 电子科技大学 网络功能虚拟化环境下的内容交付网络服务器优化部署方法
KR102105683B1 (ko) * 2017-04-28 2020-05-29 한국전자통신연구원 유선 및 이동 통신 서비스의 통합 플랫폼 관리 장치 및 방법
US11032236B2 (en) * 2018-03-31 2021-06-08 Intel Corporation Technologies for content delivery network with multi-access edge computing
TR201909549A2 (tr) * 2019-06-26 2019-07-22 Medianova Internet Hizmetleri Ve Ticaret Anonim Sirketi Performansı Arttırılmış CDN Hizmeti

Also Published As

Publication number Publication date
DE112018007888T5 (de) 2021-05-20
WO2020027743A1 (en) 2020-02-06
US20210224136A1 (en) 2021-07-22

Similar Documents

Publication Publication Date Title
US20090327460A1 (en) Application Request Routing and Load Balancing
Wang et al. Workload balancing and adaptive resource management for the swift storage system on cloud
EP3609134B1 (en) Bgp anycast cluster service quality detection method and detection apparatus
Liu et al. Cost-effective service provisioning for hybrid cloud applications
Somula et al. A honey bee inspired cloudlet selection for resource allocation
CN102947798B (zh) 计算机系统及其控制方法
Jaikar et al. Cost and performance effective data center selection system for scientific federated cloud
Kravets et al. Multiagent technology for the application of a distributing function for load balancing in multiserver systems.
Arunkumar Reddy et al. Feedback-based fuzzy resource management in IoT using fog computing
Kumar et al. DAIS: dynamic access and integration services framework for cloud-oriented storage systems
TR201811297A2 (tr) CDN Şirketlerinin Kullanıcılara Verdikleri Kaliteyi Geliştirmek Ve Kaynak Kullanımını Optimize Etmek İçin Kullanılan Sistem
Pingle et al. Big data processing using apache hadoop in cloud system
Yang et al. Multi-resource allocation for virtual machine placement in video surveillance cloud
Chang et al. A multiple parallel download scheme with server throughput and client bandwidth considerations for data grids
Tekinerdogan et al. Performance isolation in cloud-based big data architectures
Ramasamy et al. Priority queue scheduling approach for resource allocation in containerized clouds
Jayalakshmi et al. Dynamic data replication across geo-distributed cloud data centres
Wu et al. Adaptive processing rate based container provisioning for meshed micro-services in kubernetes clouds
Ding et al. Research and optimization of the cluster server load balancing technology based on centos 7
Vasireddy et al. Kubernetes and Docker Load Balancing: State-of-the-Art Techniques and Challenges
Bharti et al. Load Balancing Issues and its Solution in Cloud Computing: A Review
Calsin Quinto et al. Reference Method for Load Balancing in Web Services with REST Topology Using Edge Route Tools
Kumar et al. Adjacency cloud-oriented storage overlay topology using self-organizing m-way tree
Seyyedsalehi et al. Analytical comparison of virtual machine and data placement algorithms for big data applications based on cloud computing
Rajadarshini et al. Optimal double renting scheme based dynamic virtual machine provisioning and allocation for improving QoS and profit maximization