Mobil şəbəkənin nüvəsini uzun müddət belə qururdular: bir funksiya — istehsalçının platalarından ibarət bir şkaf. Bu etibarlıdır, amma bahalı və yavaşdır. Bu dərsdə belə yanaşmanın nəyinin pis olduğunu, operatorların hansı ideyanı irəli sürdüyünü və sadə hesablamanın xeyri necə göstərdiyini araşdıracağıq: altı şkafı üç server əvəz edə bilər. İdeya NFV adlanır — şəbəkə funksiyalarının virtuallaşdırılması.
Məqsəd və nə bilmək lazımdır
Dərsdən sonra siz:
- nüvə şəbəkəsinin əvvəllər necə qurulduğunu və hər funksiyanın niyə öz güc ehtiyatının olduğunu izah edə biləcəksiniz;
- NFV-nin nə olduğunu və «şkaf-funksiya» ilə «proqram-funksiya»nın fərqini sadə sözlərlə deyə biləcəksiniz;
- NFV-nin üstünlüklərini və əvvəlcədən düşünmək lazım olan üç riski sadalaya biləcəksiniz;
- verilmiş yüklənmədə ümumi puldakı neçə serverin bir dəst şkafı əvəz edəcəyini hesablaya biləcəksiniz;
- NFV üzrə işə başlanğıc verən sənədi və ili deyə biləcəksiniz.
Əvvəlcədən nə bilmək lazımdır: ipnet kursu, 1-ci dərs (səs və siqnallaşma niyə IP-yə keçdi); lte kursu, 6-cı dərs (nüvə avadanlığı platalı şkaflar şəklində); ims kursu, 1-ci və 13-cü dərslər (IMS nə üçün lazımdır və funksiyaları avadanlıqda necə görünür). MME, S-GW, P-GW, HSS, PCRF və CSCF qovşaqları sizə artıq tanışdır — burada onların nə etdiyinə yox, harada və necə işlədiyinə baxırıq.
Həyatdan tapşırıq
Kiçik operator Yeni ilə hazırlaşır. Yeni il gecəsi zənglərin və SMS-lərin sayı nəzərəçarpacaq dərəcədə artır, lakin yalnız bir neçə saatlıq. Nüvə qovşaqları — MME, S-GW, P-GW, CSCF, HSS və PCRF — ayrı-ayrı şkaflarda dayanır. Şkafın gücünü bir gündə artırmaq olmaz: istehsalçıdan plata sifariş etmək, çatdırılmanı gözləmək, quraşdırmaq və tənzimləmək lazımdır. Ona görə hər şkafı ilin ən ağır axşamına nəzərdə tutulmuş ehtiyatla birlikdə alırlar.
Qalan vaxt həmin ehtiyat boş dayanır, operator isə onun üçün, yer üçün və elektrik enerjisi üçün pul ödəyir. Dərsin sualı: bunu başqa cür etmək olarmı — ehtiyat ümumi olsun, yeni güc isə yeni şkaf sifariş edib quraşdırmadan meydana çıxsın?
Nüvəni əvvəllər necə qururdular
Şəbəkənin hər funksiyası qovşağın yerinə yetirdiyi işdir. HSS abunəçi verilənlərini saxlayır, MME abunəçilərin yerdəyişməsinə nəzarət edir, CSCF seansları idarə edir. Əvvəllər belə hər iş üçün xüsusi təyinatlı avadanlıq alırdılar (ona purpose-built və ya dedicated hardware da deyirlər): istehsalçının bir tapşırıq üçün yığdığı şkaf — öz platalarıyla, öz korpusuyla və öz mikroproqramıyla.
Bu yanaşmanın dörd xüsusiyyəti var:
- Öz güc ehtiyatı. Şkaf öz funksiyasının pik yükünə görə hesablanır. Qonşu şkafın ehtiyatı ona kömək edə bilməz.
- Öz ehtiyat hissələri. MME platası CSCF-ə uyğun gəlmir, ona görə anbarda hər şkaf növü üçün ayrıca ehtiyat hissələri dəsti saxlanılır.
- Öz satınalma dövrü. Yeni güc deməkdir: sifariş, istehsal, çatdırılma, quraşdırma və tənzimləmə.
- Öz ömrü. Bir neçə ildən sonra şkaf köhnəlir və hər şey təkrar olunmalı olur, halbuki bu, demək olar ki, yeni gəlir gətirmir.
Bu problemlər haqqında operatorların özləri 2012-ci ildə yazdılar: müxtəlif «qutuların» sayı artır, onlar üçün yer və elektrik enerjisi çatmır, avadanlığın ömrü isə qısalır.
İdeya: funksiya proqramdır
HSS şkafı əslində nə edir? O, öz platalarına yazılmış proqramı icra edir. İdeya proqramı konkret qutudan ayırmaqdır: şəbəkə funksiyası adi serverdə işə salına bilən proqramdır.
Server — ekranı və klaviaturası olmayan, sutkaboyu işləyən və başqalarının sorğularına cavab verən kompüterdir. Belə serverləri banklar, mağazalar və universitetlər üçün kütləvi istehsal edirlər. Telekomda onlara ümumi təyinatlı standart serverlər — COTS (commercial off-the-shelf, «hazır kommersiya məhsulu») deyirlər. Sinonimlər: seriyalı server, adi server, COTS server.
Bütün serverlər eyni olarsa, onları ümumi pulda (ing. pool, yəni ümumi güc ehtiyatı) birləşdirmək olar. İstənilən funksiya ondan indi lazım olan qədərini götürür, lazım olmayanda isə qaytarır. Bir neçə funksiyanın bir serverdə bir-birinə mane olmadan necə yaşadığı ayrıca mövzudur. Hələlik bilmək kifayətdir ki, server bir neçə müstəqil «kompüterin proqram surətinə» bölünə bilər və hər birində öz funksiyası yaşayır.
NFV nədir
NFV (Network Functions Virtualisation) — şəbəkə funksiyalarının virtuallaşdırılması: şəbəkə funksiyasının ayrıca «dəmir qutu» olmaqdan çıxıb, ümumi puldakı ümumi təyinatlı standart serverlərdə işə salına bilən proqrama çevrildiyi yanaşma.
Sinonimlər və yazılış: şəbəkə funksiyalarının virtuallaşdırılması = NFV = Network Functions Virtualisation. ETSI sənədlərində söz «s» ilə (Virtualisation), ABŞ-da «z» ilə (Virtualization) yazılır; bu, eyni şeydir. Burada «virtuallaşdırma» məhz funksiyanın konkret avadanlıqdan ayrılması deməkdir.
Bənzətmə 1: mətbəx. Əvvəllər hər cihazın öz yeri və öz ştepseli var idi: ayrıca qəhvə maşını, ayrıca çaydan, ayrıca toster. İndi isə bu, bir mətbəxdir, orada istənilən cihaz ümumi rozetkaya qoşulur. Cihazı dəyişmək və ya yenisini əlavə etmək üçün naqilləri yenidən çəkmək lazım deyil.
Bənzətmə 2: icarə avtomobilləri parkı. Hər ailə ildə bir-iki səfər üçün evin yanında öz mikroavtobusunu saxlayarsa, o, vaxtın çox hissəsində boş dayanır. İcarə parkı başqa cür işləyir: maşını lazım olanda götürürlər, lazım olmayanda qaytarırlar. Serverlərin ümumi pulu belə parkdır.
İki iş sxemini müqayisə edək:
| Sual | Şkaf (əvvəl) | Ümumi pul (indi) |
|---|---|---|
| Güc ehtiyatı | hər funksiyanın öz ehtiyatı | bütün funksiyalar üçün bir ümumi ehtiyat |
| Yeni xidmət | şkaf sifarişi, quraşdırma, tənzimləmə | boş serverdə proqramın işə salınması |
| Daha çox güc lazımdır | əlavə plata almaq | proqramın daha bir surətini işə salmaq |
| Ehtiyat hissələri | hər şkaf növü üçün ayrıca dəst | eyni serverlər üçün bir dəst |
| Köhnəlmə | şkafla birlikdə | server dəyişdirilir, proqram qalır |
Üstünlüklər və keçidin qiyməti
Üstünlüklər:
- Hər funksiya üçün ehtiyat əvəzinə ümumi pul. Müxtəlif funksiyaların piklərinin vaxtca üst-üstə düşməsi vacib deyil, ona görə ümumi ehtiyat ayrı-ayrı ehtiyatların cəmindən kiçik ola bilər.
- Yeni xidmətin sürətli işə salınması. Şkafın çatdırılmasını gözləmək lazım deyil: proqram artıq pulda olan serverdə başlayır.
- Proqramla miqyaslama. Miqyaslama — gücün yükə uyğun artırılması və ya azaldılmasıdır. NFV-də bunun üçün proqramın daha bir surətini işə salırlar və ya artıq surəti dayandırırlar.
- Daha az avadanlıq növü. Onlarla müxtəlif şkaf əvəzinə bir server növü və bir ehtiyat hissələri dəsti.
Qiymət və risklər:
- Səs və videonun performansı. Media axını saniyədə çoxlu sayda kiçik paketdir. Xüsusi plata onunla özü bacarır, qonşularla paylaşılan adi serverə isə onu emal etmək çətindir. Bunun necə həll edildiyini növbəti dərslərdə görəcəyik.
- Bir neçə təchizatçının inteqrasiyası. Funksiya bir təchizatçıdan, serverlər başqasından, idarəetmə üçüncüdən. Birləşmə yerlərində suallar yaranır: nəsə işləmirsə, kim cavabdehdir?
- Yeni bacarıqlar. Platanı və kabeli bilən mühəndisə indi serverlərlə və avtomatlaşdırma ilə işləmək bacarığı da lazımdır.
💡 NFV funksiyanı daha yaxşı etmir. O, eyni funksiya olaraq qalır — eyni mesajlarla və qovşaqlarla. Dəyişən onun nəyin üzərində və necə işləməsidir.
Nümunənin təhlili: pulda neçə server lazımdır
Öyrədici modelin şərtləri:
- altı şkaf: MME, S-GW, P-GW, CSCF, HSS, PCRF;
- hər birinin orta yüklənməsi
30%; - pulun bir serveri gücünə görə bir şkafa bərabərdir;
- serverin hədəf yüklənməsi
70%-dir: bu, gücün 30%-nin ani yük artımları üçün ehtiyatda qalması deməkdir.
Yüklənmə — cihazın öz gücünün nə qədərindən istifadə etdiyi paydır. 30% — üçdə bir işləyir, qalanı boş dayanır. Hədəf yüklənmə — serveri hansı səviyyəyə qədər doldurmağı planlaşdırırlar.
servers = ceil(cabinets × load / target)Burada ceil — yuxarı yuvarlaqlaşdırmadır. Addım-addım həll edək:
total load = 6 × 30% = 180% (1.8 cabinets' worth of work)
servers = 180% / 70% = 2.57
servers = round up -> 3Yuxarı yuvarlaqlaşdırırıq: iki yarım maşın almaq olmaz, iki server isə 180% / 2 = 90% yük daşıyardı — bu, hədəfdən yüksəkdir. Yoxlama: üç serverdə yüklənmə 180% / 3 = 60% olur, bu, 70%-dən çox deyil. Nəticə: altı şkaf əvəzinə üç server.
Bu, sadələşdirilmiş modeldir. Real pulu orta yük ilə yox, pik yük ilə hesablayırlar və nasazlıq halı üçün ehtiyat server əlavə edirlər. Amma prinsip eynidir: ehtiyat hamı üçün bir dəfə hesablanır.
Xidmətin əvvəllər necə işə salındığını müqayisə edək:
cabinet: order -> build -> ship -> install -> configure -> launch
pool: pick free server -> start program -> configure -> launchVacib olan, neçə mərhələnin itməsidir: yeni şkafın istehsalı, çatdırılması və quraşdırılması yoxdur.
Tarix: ideya haradan gəldi
2012-ci ilin oktyabrında bir qrup rabitə operatoru ağ kitab (white paper — sənaye iştirakçılarının mövqeyini bildirdiyi və birgə işə çağırdığı sənəd) dərc etdi; adı «Network Functions Virtualisation – An Introduction, Benefits, Enablers, Challenges & Call for Action» idi. Müəlliflər siyahısında 13 təşkilat var. Mətndə üstünlüklər və çətinliklər izah edildi, beynəlxalq əməkdaşlığa çağırış edildi.
2012-ci ilin noyabrında Avropa standartlaşdırma institutu ETSI nəzdində ISG NFV (Industry Specification Group) işçi qrupu yaradıldı; ETSI-nin məlumatına görə onu yeddi iri operator təsis edib. Bu qrupun sənədlərindən biri ETSI GS NFV 002-dir (ilk versiyası 2013-cü ildə çıxıb).
Bunlar ad-etiketlərdir: onları «kim, nə vaxt və nə dərc etdi» kimi yadda saxlayın. Təfərrüat lazım deyil.
Nə xarab ola bilər və bunu necə tapmaq olar
| Simptom | Mümkün səbəb | Nəyi yoxlamaq |
|---|---|---|
| Hesablama 3 server göstərdi, amma axşam pikində güc çatmadı | orta yük hesablanıb, pik yük yox; hədəf yüklənmə çox yüksək seçilib; serverin nasazlığı nəzərə alınmayıb | funksiyaların pik yükünü; hədəf yüklənməni; ehtiyat serverin olub-olmadığını |
| Funksiya köçürüldükdən sonra səs kəsilir və ya gecikmə yaranıb | ümumi serverdə media emalı xüsusi plataya nisbətən yavaşdır; qonşu funksiyalar gücü bölüşür | serverin köçürmədən əvvəlki və sonrakı yükünü; mediaya görə ağır funksiyaların yanaşı dayanıb-dayanmadığını |
| Server sayı şkaf sayı qədərdir, qənaət yoxdur | ehtiyat hələ də hər funksiya üçün ayrıca hesablanır, pul yalnız kağız üzərində ümumidir | ehtiyatın hər funksiya üzrə yox, yüklərin cəmi üzrə hesablanıb-hesablanmadığını |
| Bir təchizatçının funksiyası alınmış serverlərdə işə düşmür | funksiyanın serverə tələbləri alınanla üst-üstə düşmür | funksiya təchizatçısının tələblər siyahısını və serverlərin xarakteristikalarını |
| Yeni xidmət yenə də aylarla işə salınır | köhnə razılaşdırmalar və əl ilə addımlar qalıb | hansı mərhələlərin hələ də əllə görüldüyünü |
⚠️ Tipik səhv «virtual» sözünü «ödənişsiz və limitsiz» kimi başa düşməkdir. Pulun arxasında real serverlər, yer və elektrik enerjisi dayanır, pul da sonludur.
Təcrübə
- Proqnozlaşdırın. Altı şkaf
30%yox,50%yüklənib. Pulda server təhlildəkindən çox olacaq, yoxsa az? Hesablamayın — cavabı «gözəyarı» deyin. - Yoxlayın. Hesablayın:
6 × 50% / 70%, yuxarı yuvarlaqlaşdırın. Fərziyyənizlə üst-üstə düşdü? - İzah edin. Üç serverdən ibarət pul altı funksiyaya necə xidmət edir, halbuki onların hər biri əvvəllər bütöv şkaf tuturdu?
- Dəyişdirin. Altı şkaf
30%yüklənib, lakin serverin hədəf yüklənməsi50%-dir. Neçə server lazımdır? - Özünüz edin ⭐. Orta yüklənməsi
25%olan səkkiz şkaf, hədəf yüklənmə70%, bir server gücünə görə bir şkafa bərabərdir. Nasazlıq halı üçün bir ehtiyat server əlavə etsəniz, neçə server lazımdır?
Özünüyoxlama
Sual 1. Operator istehsalçıdan S-GW üçün platalı yeni şkaf aldı. Bu, NFV-dir?
Təhlil. Xeyr. Funksiya hələ də xüsusi avadanlığa bağlıdır, öz ehtiyatı və öz satınalması var. NFV-də eyni funksiya ümumi puldakı standart serverlərdə proqram kimi işləyir.
Sual 2. Ümumi iş eyni olduğu halda pulda server niyə şkafdan azdır?
Təhlil. Şkaflarda ehtiyat hər funksiya üçün ayrıca nəzərdə tutulurdu və onun böyük hissəsi boş dayanırdı. Pulda ehtiyat ümumidir: ümumi yükü (180%) toplayıb hədəf yüklənməyə (70%) bölürlər. Nəticə 2.57 olur, yəni altı şkaf əvəzinə üç server.
Təcrübəyə cavablar. 1 — çox: eyni hədəfdə yük yüksəkdir. 2 — 6 × 50% = 300%, 300% / 70% = 4.29, yuxarı 5-ə yuvarlaqlaşdırılır. 3 — pulda ehtiyat hər funksiya üçün ayrıca yox, ümumidir və funksiyaların piklərinin üst-üstə düşməsi vacib deyil. 4 — 180% / 50% = 3.6, 4 serverə qədər. 5 — 8 × 25% = 200%, 200% / 70% = 2.86, 3 serverə qədər; üstəgəl bir ehtiyat — 4 server.
Təkrar və növbəti dərsə keçid meyarı
Aşağıdakıları ipucusuz bacarırsınızsa, növbəti dərsə keçin:
- «şkaf-funksiya» ilə «proqram-funksiya»nın fərqini və NFV-nin nə olduğunu (sinonimləri ilə) izah etmək;
- keçidin dörd üstünlüyünü və üç riskini sadalamaq;
- pulun ölçüsünü
servers = ceil(cabinets × load / target)düsturu ilə hesablamaq; buradaceil— yuxarı yuvarlaqlaşdırmadır; - 2012-ci ildə operatorların və ETSI-nin nəyi və nə vaxt dərc etdiyini demək.
Növbəti. Növbəti dərslərdə: məlumat mərkəzinin (data center) quruluşu, hipervizor və virtual maşın, OpenStack platforması, sonra isə VNF, MANO və Kubernetes ilə konteynerlər.
Standartlar və mənbələr
- Bir qrup rabitə operatoru (13 təşkilat), Network Functions Virtualisation – An Introduction, Benefits, Enablers, Challenges & Call for Action (white paper, Issue 1, 2012-ci ilin oktyabrı); mətn ETSI portalında yerləşdirilib: portal.etsi.org.
- ETSI GS NFV 002 — ISG NFV işçi qrupunun sənədi (yalnız ad; ilk versiya — 2013-cü il).
- ETSI, «10 years of ETSI NFV» — ISG NFV-nin 2012-ci ilin noyabrında yaradılması haqqında: etsi.org.