Muhammad al-xorazmiy nomidagi toshkent axborot texnogiyalari universiteti


Download 308.75 Kb.
bet7/12
Sana07.04.2023
Hajmi308.75 Kb.
#1336252
1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
Виртуализация.en.uz

Yangi oqim xabarlari. OpenFlow-da, paket oqim jadvalidagi yozuvga mos kelmaydigan kalitga kelganida, boshqaruvchiga yangi oqim xabari yuboriladi. Ushbu jarayon kalitda ishlov berish resurslarini sarflaydi va agar xabarlar juda tez-tez paydo bo'lsa, CPU resurslari tugashi mumkin. Ochlikning oldini olish uchun FlowVisor har bir bo'lak uchun yangi oqim xabarining kelish tezligini kuzatib boradi va agar u chegaradan oshib ketgan bo'lsa, FlowVisor xafa bo'lgan paketlarni qisqa muddatga tashlab yuborish uchun yuborish qoidasini kiritadi. Shunday qilib, FlowVisor kiruvchi yangi oqim xabarlarini cheklash uchun OpenFlow protokolidan foydalanadi. Biz ushbu texnikaning samaradorligini muhokama qilamiz.
Nazoratchi so'rovlari .OpenFlow boshqaruvchisi kommutatorga yuboradigan so'rovlar, masalan, yo'naltirish jadvalini yoki so'rovlar statistikasini tahrirlash uchun CPU resurslarini sarflaydi. Har bir bo'lak uchun FlowVisor protsessor sarfini cheklaydi OpenFlow xabar tezligini soniyasiga maksimal tezlikka kamaytirish orqali. Iste'mol qilinadigan protsessor resurslari miqdori xabar turiga va apparat tatbiqiga qarab o'zgarganligi sababli, har bir apparat platformasi uchun har bir OpenFlow xabarining narxini dinamik ravishda aniqlash kelajakdagi ishdir.
Sekin yo'lni yo'naltirish. “Sekin” yo‘lni bosib o‘tuvchi paketlar, ya’ni “tez” ajratilgan apparat uzatish yo‘lini emas, protsessor resurslarini sarflaydi. Shunday qilib, paketlarni sekin yo'l orqali uzatuvchi OpenFlow qoidasi o'zboshimchalik bilan protsessor resurslarini iste'mol qilishi mumkin. FlowVisor mehmon kontrollerlariga sekin yo'lni yo'naltirish qoidalarini bir martalik paketlarni yo'naltirish hodisalari, ya'ni OpenFlow "paket chiqishi" xabari sifatida qayta yozish orqali oldini oladi. Natijada, sekin yo'l paketlari tezligi yuqoridagi ikkita izolyatsiyalash mexanizmi bilan cheklangan: yangi oqim xabarlari va kontroller so'rovi tezligini cheklash.
Ichki buxgalteriya hisobi. Barcha tarmoq qurilmalari o'zlarining ichki hisoblagichlarini yangilash, jarayonlarni qayta ishlash, hisoblagichlarni yangilash va h.k. uchun protsessordan foydalanadilar. Shu sababli, kalitning hisobini yuritish uchun etarli protsessor mavjudligiga e'tibor qaratish lozim. FlowVisor buni yuqoridagi tezlik chegaralarini kalitlarning ichki funksiyasi uchun etarli protsessor resurslarini qoldirish uchun sozlanishini ta'minlash orqali hisoblaydi.
O'tkazish qobiliyatini izolyatsiya qilishda bo'lgani kabi, bu CPU-izolyatsiya mexanizmlari FlowVisor dizayniga xos emas, balki mavjud apparat abstraktsiyasi bilan shug'ullanish uchun ishdir. Kommutatorning mavjud jarayonlarni rejalashtirish va tezlikni cheklash xususiyatlarini apparat abstraktsiyasi orqali ochish yaxshiroq uzoq muddatli yechim bo'ladi. Ba'zi arxitekturalar, masalan, HP ProCurve 5400, OpenFlow va OpenFlow yoqilmagan VLAN-lar o'rtasida protsessor izolyatsiyasini almashtirish uchun ushbu tezlikni cheklovchilardan allaqachon foydalanadi. Ushbu xususiyatlarni OpenFlow-ga qo'shish kelajakdagi ishning faol nuqtasidir.

    1. FlowSpace izolyatsiyasi

Har bir bo'lak faqat ularning oqim maydonidagi oqimlarga ta'sir qilish bilan cheklanishi kerak. FlowVisor xabarni qayta yozishni amalga oshiradi, bu bo'lim faqat o'z oqimlarini boshqarishi va boshqa bo'limlar oqimiga ta'sir qilmasligini ta'minlaydi. Barcha qoidalarni bir qismga moslash uchun qayta yozish mumkin emas: FlowVisor faqat qoidalarni yanada aniqroq qiladi. Shunday qilib, oldingi kesish misolidan foydalanib, agar Bob boshqaruvchisi barcha trafikka ta'sir qiluvchi qoida yaratishga harakat qilsa, FlowVisor qoidani faqat TCP trafigiga 80-portga ta'sir qilish uchun qayta yozadi. Biroq, FlowVisor, masalan, 22-port trafigiga ta'sir qiluvchi qoidani faqat bittasiga qayta yozmaydi. port 80 trafigiga ta'sir qiladi. Qayta yozish mumkin bo'lmagan qoidalar bo'lsa, FlowVisor tekshiruvchiga oqim yozuvini qo'shib bo'lmasligini ko'rsatuvchi xato xabarini yuboradi.

    1. Oqim yozuvlarini izolyatsiya qilish

FlowVisor har bir bo'lak uchun ishlatiladigan oqim yozuvlari sonini hisoblaydi va har bir bo'lak oldindan belgilangan chegaradan oshmasligini ta'minlaydi. FlowVisor mehmon boshqaruvchisi kalitga kiritgan har bir qoida uchun hisoblagichni oshiradi va qoida muddati tugaganda hisoblagichni kamaytiradi. Uskuna cheklovlari tufayli ba'zi kalitlar bir nechta kirish portlariga mos keladigan qoidalarni ichki kengaytiradi, shuning uchun FlowVisor bu ishni alohida hal qilishi kerak. OpenFlow protokoli, shuningdek, FlowVisor uchun kalitdagi oqim yozuvlarini aniq ro'yxatga olish mexanizmini taqdim etadi. Mehmon boshqaruvchisi oqim kiritish chegarasidan oshib ketganda, har qanday yangi qoida qo'shilishi "jadval to'la" xato xabarini oldi.
4. OpenFlow boshqaruvining izolyatsiyasi
Jismoniy resurslarga qo'shimcha ravishda, OpenFlow boshqaruv kanalining o'zi virtuallashtirilgan va izolyatsiya qilingan bo'lishi kerak. Masalan, OpenFlow-dagi barcha xabarlar noyob tranzaksiya identifikatorini o'z ichiga oladi; FlowVisor turli mehmon tekshiruvchilaridan kelgan xabarlar bir xil identifikatordan foydalanmasligiga ishonch hosil qilish uchun tranzaksiya identifikatorlarini qayta yozishi kerak. Xuddi shunday, OpenFlow paketning navbatda turgan buferni aniqlash uchun 32 bitli butun sondan foydalanadi, shu bilan birga uni yo'naltirish qarori tekshirgichga yuboriladi. FlowVisor har bir mehmon nazoratchisi faqat o'z buferlariga kirishini ta'minlashi kerak. Holat xabarlari, masalan, portdagi havola, barcha ta'sirlangan bo'laklarga takrorlanishi kerak. Boshqaruv kanalini jonlantirish osonroq bo'ladi, chunki Open Flow protokoli faqat 16 ta xabar turini belgilaydi.

  1. BAHOLASH

Dizaynning samaradorligi va mustahkamligini rag'batlantirish uchun ushbu bo'limda biz FlowVisorning ishlashi va izolyatsiyasi xususiyatlarini baholaymiz.
Boshqarish va ma'lumotlar yo'llari o'rtasida qo'shimcha qatlam qo'shilishi tizimga ortiqcha yuk qo'shadi. Biroq, qayta sifatida


3-rasm: Open Flow port holati so'rovlari uchun virtualizatsiya qo'shimcha xarajatlari CDF.

Bizning dizaynimizga mos keladigan FlowVisor ma'lumotlar yo'liga ortiqcha yuk qo'shmaydi. Ya'ni, FlowVisor bilan paketlar to'liq chiziq tezligida uzatiladi. FlowVisor boshqaruv tekisligiga qo'shimcha yuk ham qo'shmaydi: marshrut tanlash kabi nazorat darajasidagi hisoblar virtual bo'lmagan tezlikda davom etadi. FlowVisor faqat boshqaruv va ma'lumotlar yo'li qatlamlari o'rtasidagi harakatlarga qo'shimcha yuk qo'shadi.


Ushbu o'zaro qatlamli qo'shimcha xarajatlar miqdorini aniqlash uchun biz FlowVisor bilan va bo'lmasdan mehmonlar nazoratchisi so'rovlariga javob berish vaqtini o'lchaymiz. Xususan, biz tarmog'imizda va monitoring dasturimiz tomonidan eng ko'p ishlatiladigan OpenFlow xabarlarining javob vaqtini ko'rib chiqamiz, yangi oqim va port holati so'rovi xabarlari.
OpenFlow-da, mavjud yo'naltirish qoidalariga mos kelmaydigan paket kelganda, kalit boshqaruvchiga yangi oqim xabarini yuboradi. FlowVisor ulanishni sozlashning kechikish vaqtini qanday oshirishini yaxshiroq tushunish uchun biz yangi oqim xabarining yukini ko'rib chiqamiz. Tajribamizda ikkita interfeysli mashinani kalitga ulaymiz. Bitta interfeys sekundiga 51 ta paketni kalitga yuboradi, ikkinchisi esa OpenFlow boshqaruv kanalidir. Biz libpcap yordamida paketni jo'natish va yangi oqim xabarini olish o'rtasidagi vaqtni o'lchaymiz. Bizning natijalarimiz. FlowVisor yangi oqim xabarining kechikishini, ya'ni o'tishdan boshqaruvchiga qo'shimcha vaqtni o'rtacha 16 ms ga oshirishini ko'rsating. Kechikish vaqtiga sezgir bo'lgan ilovalar, masalan, yirik ma'lumotlar markazlaridagi veb-xizmatlar uchun 16 ms juda ko'p yuk bo'lishi mumkin. Biroq, yangi oqim xabarlari FlowVisorsiz ham o‘rtacha 12 ms kechikish vaqtini qo‘shadi, shuning uchun biz ishonamizki, o‘sha muhitdagi mehmon boshqaruvchilar oqim yozuvlarini proaktiv ravishda kalitlarga kiritib, bu kechikishning barchasini oldini oladi. Bundan tashqari, FlowVisor yangi oqim xabarlarini qayta ishlash uchun foydalanadigan algoritm sodda va oqimlar maydoni qoidalari soniga nisbatan o'z vaqtida ishlaydi. Bizning kelajakdagi ishimiz ushbu qidiruv jarayonini sinab ko'rish orqali optimallashtirishdir.
Port holati so'rovi - bu ma'lum bir port uchun bayt va paket hisoblagichlarini so'rash uchun kontroller tomonidan kalitga yuborilgan xabar. Kalit hisoblagichlarni mos keladigan port holatiga javob xabarida qaytaradi. Biz portlar holati so‘rovini o‘rganishni tanladik, chunki biz buni FlowVisor uchun eng yomon holat deb hisoblaymiz: xabarni kommutator va kontrollerda qayta ishlash juda arzon va FlowVisor portlar statistikasini olib tashlash uchun har bir bo‘lak uchun xabarni tahrirlashi kerak. tilim virtual topologiyasida ko'rinmaydi.
Biz sekundiga taxminan 200 ta so'rovda port holati so'rovlarini yuboradigan va javob vaqtini o'lchaydigan maxsus maqsadli kontroller yozdik. Ta'rif apparat tomonidan qo'llab-quvvatlanadigan maksimal so'rov tezligini taxmin qilish uchun tanlangan. Tekshirish moslamasi, kalit va FlowVisor bir xil mahalliy tarmoqda edi, lekin kontroller va FlowVisor alohida shaxsiy kompyuterlarda joylashgan edi. Shubhasiz, FlowVisor-ni boshqaruvchidan o'zboshimchalik bilan uzoqroqqa ko'chirish orqali qo'shimcha xarajatlarni oshirish mumkin, ammo biz bu tajribani FlowVisor-ning qayta ishlash xarajatlarini aniqlash uchun ishlab chiqdik. Bizning natijalarimiz shuni ko'rsatadiki, FlowVisor qo'shilishi port holatiga javob berish uchun o'rtacha 0,48 millisekundlik yukni keltirib chiqaradi (rasm 3). Bizning fikrimizcha, port holatiga javob berish vaqti yangi oqimni qayta ishlash vaqtidan tezroq bo'lishi tabiiy emas, balki port holati so'rovlarini qayta ishlash uchun yaxshiroq optimallashtirish masalasidir.

  1. Izolyatsiya


Download 308.75 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   12




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling