بخشی از مقاله
*** این فایل شامل تعدادی فرمول می باشد و در سایت قابل نمایش نیست ***
کاهش مصرف انرژی در رایانش ابری بر اساس روش مبتنی برعامل و الگوریتم فراابتکاری فاخته
چکیده در رایانش ابری، مدیریت منابع یکی از مهمترین مباحث میباشد. فرآیند مدیریت منابع، فرایندی بسیار پیچیده بوده و تحقیقات بسیار
زیادی در این زمینه انجام گرفته است تا همه ابعاد آن به درستی شناخته شده و توانایی استفاده موثرتری از منابع ابرها ایجاد گردد. مدیریت منابع شامل مباحثی همچون فرایند تخصیص منابع، زمانبندی منابع، تعادل بار، کاهش مصرف انرژی و ... میباشد. یکی از روش های مهم و کلیدی مدیریت منابع در رایانش ابری، مفهوم مدیریت منابع براساس روش مبتنی بر عامل می باشد. در این روش، کاربر نیاز ندارد که بداند محل اقامت منابع ارائه دهنده خدمات ابر، در کجا قرار دارد. سیستم پیشنهادی در این زمینه دارای سه نوع عامل یعنی عامل مصرف کننده، عامل واسطه (کارگزار ابر) و عامل ارائه دهنده منابع می باشد. در این مقاله علاوه بر روش مبتنی بر عامل از الگوریتم فراابتکاری فاخته برای تخصیص بهتر منابع به مصرف کننده استفاده شده است. نتایج نشان میدهد زمانی که از روش پیشنهادی استفاده میشود انرژی مصرفی برای میزبانها بدون افزایش میزان تخلف از توافق نامه با مشتری به مقدار قابل توجهای کاهش مییابد.
واژگان کلیدی: رایانش ابری، مدیریت منابع، کاهش مصرف انرژی، الگوریتم فاخته، روش مبتنی بر عامل.
-1 مقدمه
امروزه پیشرفت و توسعه مرزهای دانش به گسترش تکنولوژیهای محاسباتی وابسته شده است. به عنوان نقطه آغاز این تکنولوژیها میتوان به تشکیل شبکه کامپیوتری اشاره کرد که در آن تنها چندین کامپیوتر به هم متصل شده بودند. پس از آن این شبکههای کوچک به یکدیگر متصل شدند و اینترنت را به وجود آوردند که در اینترنت شبکهها به اشتراک گذاشته شدند. دراین راستا تکنولوژی جدیدی به نام رایانش توری شکل گرفت که در آن منابع از راه دور به اشتراک گذاشته شدند و هدف آن افزایش کارایی و توان پردازشی بود. در عصر حاضر با روش جدیدی به نام رایانش ابری روبرو هستیم که در این روش سرویس ها از طریق اینترنت به اشتراک گذاشته میشوند. رایانش ابری مدلی است برای فراهم کردن دسترسی آسان بر اساس تقاضای کاربر از طریق شبکه به مجموعهای از منابع رایانشی قابل تغییر و پیکربندی مثل: شبکهها، سرورها، فضای ذخیرهسازی، برنامه های کاربردی و سرویسها، که این دسترسی بتواند با کمترین نیاز به مدیریت منابع و یا نیاز به دخالت مستقیم فراهمکننده، سرویس به سرعت فراهم شده یا آزاد گردد. در زمینه اختصاص منبع به یک مشتری ابری، فاکتورهایی نظیر کیفیت سرویس، قیمت ارائه سرویس، انرژی و زمان پاسخ میتوانند موثر باشند. بنابراین فرایند تخصیص منبع یک فرایند بسیار پیچیده است، زیرا هم مشتری و هم سرویس دهنده ابر، به دنبال بدست آوردن بیشترین سود هستند . و به دلیل متغییر بودن نیازهای برنامه های کاربردی در این محیطها، ممکن است این برنامهها در طول اجرای خود به منابع متفاوتی از آنچه که اکنون در اختیار دارند، نیاز داشته باشند. ما در این مقاله با مدیریت منابع بر اساس روش مبتنی بر عامل و استفاده از الگوریتم فراابتکاری فاخته سعی بر تخصیص بهترین منابع از سوی ارائه دهندهها به مصرف کنندهها هستیم.
این مقاله در شش بخش و به این صورت سازماندهی شده است، ابتدا در بخش 2 به ادبیات موضوعی میپردازیم، در بخش 3 مروری بر کارهای پیشین خواهیم داشت، در بخش 4 روش پیشنهادی، در بخش 5 ارزیابی و مقایسه روش پیشنهادی و در بخش6 نتیجهگیری را بیان خواهیم کرد.
-2 ادبیات موضوعی
-1-2 رایانش ابری
رایانش ابری مدلی رایانهای است که تلاش میکند دسترسی کاربران را بر اساس نوع تقاضایی که از منابع اطلاعاتی و رایانشی دارند، آسان کند. این مدل سعی دارد با کمترین نیاز به منابع نیروی انسانی و کاهش هزینهها و افزایش سرعت دسترسی به اطلاعات، جوابگوی نیاز کاربران باشد. عموما مصرف کنندههای رایانش ابری مالک زیر ساخت فیزیکی ابر نیستند، بلکه برای اجتناب از هزینه، سرمایهای آن را از عرضه کنندگان شخص ثالث اجاره میکنند. آن ها منابع را در قالب سرویس مصرف میکنند و تنها بهای منابعی که به کار میبرند را میپردازند.
-2-2 تخصیص منابع در رایانش ابری
تخصیص منابع در رایانش ابری به دو صورت ثابت و پویا انجام میشود. در تخصیص منابع به صورت ثابت منابع به صورت ثابت به درخواستها تخصیص داده میشود و در ادامه نیز بهینگی منابع و یا مصرف انرژی و ... بررسی نمیگردد. مزیت این روشها کم بودن سربار سیستم و پایین بودن هزینهی مدیریت منابع میباشد. در تخصیص منابع به صورت پویا، هدف اصلی این است که از اتلاف منابع به دلیل کم بودن بهینگی آنها و همچنین بالا رفتن زمان پاسخ درخواستهای مشتری به دلیل استفادهی بیش از حد از منابع، جلوگیری گردد. روش تخصیص منابع پویا همچنین به بحث مصرف انرژی نیز توجه ویژهای دارد. مراکز دادهای که میزبان برنامههای ابری هستند، مقدار بسیار زیادی انرژی الکتریکی مصرف میکنند. در نتیجه هزینههای عملیاتی و تولید گازهای گلخانه ای زیادی را به همراه دارند.
-1-2-2 روشهای تخصیص منابع پویا در رایانش ابری
روش مبتنی بر مناقصه:
در بحث محاسبات ابری دو نوع روش قیمتگذاری وجود دارد : ثابت و پویا. در محیط ابرها هم سرویسدهنده ابر و هم کاربر، اطمینانی به دریافت سود و منافع مورد نظر خود ندارند. این نگرانی با داشتن قیمت های ثابت، تا حدود زیادی از بین میرود، اما در مورد قیمتگذاری پویا و متغیرهمچنان پابرجاست.
روش مبتنی بر نظریه بازی:
پیروزی در هر بازی تنها تابع شانس نیست، بلکه اصول و قوانین ویژه خود را طلب مینماید و هر بازیکن در طی بازی سعی میکند با به کارگیری آن اصول، خود را به بردن نزدیکتر کند.
روش مبتنی بر مقدار آستانه:
میزان استفاده از منابع، نشان دهندهی میزان بهینگی آن منابع میباشد. در صورتی که استفاده از یک منبع پایین باشد، بهینگی آن منبع نیز پایین بوده و به اصطلاح به هدر میرود. در نقطه مقابل، در صورتی که استفاده از یک منبع بسیار بالا باشد، تمام ظرفیت منبع مورد استفاده قرار گرفته و منبع نمیتواند جوابگوی نیازها ودرخواستهای بیشتری باشد. که این موضوع می تواند زمینه ساز بروز تخلف از توافقات با مشتری گردد.
روش مبتنی بر عامل:
در روش مذاکره مبتنی بر تخصیص منابع، مصرفکننده و ارائهدهنده به طور مستقیم با یکدیگر ارتباط برقرارمیکنند. اگر منابع درخواست شده در یک ارائهدهنده ابر وجود داشته باشند وهمچنین در دسترس باشند این تخصیص بسیار ساده است اما اگر منابع در یک مجموعهای از ابرها، باشد این تخصیص باید از ارائهدهندگان مختلف جمعآوری شود، که به روشهای پیچیده ایی نیاز است. در ضمن قیمت هر یک از منابع به صورت پویا بر اساس عرضه و تقاضا متفاوت است. پس گرفتن قیمت فعلی منابع از ارائه دهندگان مختلف بسیار دشوار است. شکل 1 سیستم پیشنهادیی را نشان میدهد، که در آن از برخی کارگزاران به عنوان واسطه در نظر گرفته شدهاند و شامل: عامل مصرفی، عامل کارگزار ابر، عامل ارائهدهنده منابع می باشد.
شکل (1) مدل سیستم
-3-2 الگوریتم بهینهسازی فاخته:
الگوریتم بهینهسازی فاخته(COA) 1 یک الگوریتم تکاملی جدید که در 2009 توسط رامین رجبیون بر اساس زندگی پرنده ای به نام فاخته نامیده میشود، معرفی گردید. این الگوریتم روش جستجوی تصادفی و تکاملی است و نیاز به حافظه کمی دارد. همچنین دارای توانایی بهینهسازی هم تراز و حتی بالاتر در مقایسه با الگوریتم های مختلف بهینهسازی، در مواجهه با انواع مسائل بهینهسازی و سرعت مناسب یافتن جواب بهینه است. در هنگام حل مسائل با بهینهسازی محلی، احتمال بسیار کمتر در گیرافتادن در نقاط بهینه محلی نسبت به سایر الگوریتمها دارد.
هر فاخته به صورت تصادفی تخمهایی را در لانه پرندگان میزبان که در حداکثر دامنه تخمگذاری خود قرار دارد، می گذارد. وقتی تمام فاختهها تخم خود را گذاشتند برخی از تخمها که کمتر شبیه تخم پرنده میزبان هستند شناسایی شده و از لانه بیرون انداخته میشود. بنابراین بعد از هر تخم-گذاری p% از تمام تخمها که مقدار تابع سود آنها کمتر است، نابود می شود. بقیه جوجهها در لانههای میزبان تغذیه شده و رشد میکنند.
وقتی جوجه فاختهها رشد کردند و بالغ شدند مدتی در محیطها و گروههای خودشان زندگی میکنند ولی وقتی زمان تخم گذاری نزدیک می-شود به محلهای سکونت بهتر که در آنجا شانس زنده ماندن تخمها بیشتر است مهاجرت میکنند.
هر فاخته فقط λ از کل مسیر را به سمت هدف ایدهآل فعلی طی میکند و یک انحراف φ رادیان نیز دارد. این دو پارامتر به فاختهها کمک میکند تا محیط بیشتری را جستجو کنند. λ عددی تصادفی بین 0 و 1 است و φ عددی بین 6 و 6 میباشد. وقتی تمام فاختهها به سمت نقطه هدف مهاجرت کردند و نقاط سکونت جدید هر کدام مشخص شد، هر فاخته صاحب تعدادی تخم می شود. با توجه به تعداد تخم هر فاخته یک ELR برای آن مشخص میشود و سپس تخمگذاری شروع میشود.
فاختهها در یک دامنه مشخص تخمهای خود را میگذارند که حداکثر دامنه تخمگذاری را (ELR) Egg Laying Radius مینامند. در این مسئله بهینهسازی حد بالای متغیرهای varhi و حدپایین varlow هر فاخته دارای ELR خواهد بود که متناسب است با تعداد کل تخمها، تعداد تخم های فعلی فاخته و همچنین حد بالا و پایین متغییرهای مسئله. بنابراین ELR بصورت زیر تعریف میشود:
آلفا متغیری است که حداکثر مقدار ELR را با آن تنظیم میشود.
پس از چند تکرار تمام جمعیت فاختهها به یک نقطه بهینه با حداکثر شباهت تخمها به تخمهای پرندگان میزبان و همچنین به محل بیشترین منابع غذایی میرسند. این محل بیشترین سود کلی را خواهد داشت و در آن کمترین تعداد تخمها از بین خواهد رفت. همگرایی بیش از %95 تمام فاختهها به سمت یک نقطه، الگوریتم بهینهسازی فاخته را به انتهای خود می رساند.
-3کارهای پیشین
ارائهدهندگان و مصرف کنندگان ابر علاقه زیادی برای به حداکثر رساندن منافع خود با روش تست کردن دارند. تخصیص بهینه منابع(تخصیص کارآمد با منابع محدود و حداکثر سود) به مصرفکنندگان ابر یک روش پیچیده است، زیرا قیمت منابع در ابر به صورت پویا تعیین می شود که تئو و میهالسیو در 2]،[1 بر اساس مدل عرضه و تقاضا و یا بر اساس مدل قیمت ثابت این موضوع را توضیح داده اند.
چوالر و همکارانش در [3]، مسائل مربوط به اختصاص منابع چند عاملی را تعریف کردهاند. در این تخصیص فرضهای اصلی عبارتند از پروتکل مورد استفاده برای برقراری ارتباط، استراتژی تولید عوامل مصرفکننده و الگوریتمهای که برای تخصیص منابع بهینه استفاده میشود. پروتکل ممکن است یک مکانیزم مرکزی مثل مزایده و یا مکانیزم توزیع مانند مذاکره باشد.
یو و همکارانش در [4] پیشنهاد تخصیص منابع ابر، بر اساس مکانیزم بازار دادند. در این روش، در صورت تخصیص منابع اگر منابع در حالت تعادل و زیر قیمت باشند هر یک از منابع که مطلوب تراست را در نظر میگیرند. این روش منفعت مصرف کننده و ارائهدهنده را به اوج خود میرساند آنها از الگوریتم ژنتیک برای تنظیم قیمت استفاده میکنند.
در مقاله [5]یک الگوریتم بهینه ارائه منبع (RPOA) بر اساس الگوریتم PSO معرفی شده است و اجرا برای پیدا کردن راه حل بهینه در تخصیص منابع با به حداقل رساندن زمان و هزینه انجام میشود. نتایج نشان میدهد که با استفاده از PSO نقشه توزیع بهتر از آن ارائه میشود، چرا که تعداد تکرارکه رسیدن به نزدیکترین بهترین ارزش مطلوب است کاهش مییابد.
در مقاله [6] یک استراتژی توازن بار با استفاده از الگوریتم ژنتیک (GA) پیشنهاد شده است. این الگوریتم توازن بار را در زیرساخت های ابر بهبود میبخشد در حالی که تلاش به حداقل رساندن طول وظایف داده شده انجام میشود. نتایج شبیه سازی برای یک کاربرد نمونه معمولی نشان می-دهد که الگوریتم پیشنهادی عملکرد بهتری نسبت به روشهای موجود مانند FCFS، Round Robing و SHC دارد.
در Beloglazove [7] و همکارانش، یک معماری برای مدیریت مصرف انرژی ابرها و همچنین چند سیاست تخصیص منبع و الگوریتم زمانبندی را ارائه کردهاند. برای تعیین میزان بهینگی منابع، معمولا یک حد بالای بهینگی و یک حد پایین بهینگی تعیین میگردد. درصورتی که میزان
استفاده از یک منبع آنقدر زیاد باشد که بهینگی منبع از حد بالای بهینگی عبور نماید، در این صورت منبع از حالت بهینگی مطلوب خارج شده و این امکان وجود دارد که منبع جوابگوی درخواستها نباشد و یا زمان پاسخ به درخواستها افزایش یابد. در نتیجه این امر موجب بروز تخلف از تعهدات با مشتری میگردد.
در طرف مقابل نیز در صورتی که میزان بار یک منبع آنقدر پایین بیاید که بهینگی منبع از حد پایین بهینگی نیز کمتر گردد، در این صورت منبع از حالت بهینگی مطلوب خارج شده و به دلیل استفادهی کم، منبع به هدر میرود، حال در چنین شرایطی در صورت استفاده از حد آستانهی ثابت برای بررسی میزان بهینگی منابع، در مورد برنامههای کاربردی که حجم کاری آنها در طول زمان متفاوت است( مانند برنامه های کاربردی وب)، با مشکلاتی مواجه خواهیم بود.
در Beloglazove [8] و همکارانش، کار قبلی خود را ارتقا بخشیده و نقاظ ضعف آنرا بهبود دادهاند .در این مقاله روشهایی برای مدیریت منابع بر پایهی تاریخچهی مصرف ماشین مجازی از منبع، پیشنهاد شده است. این بدان معناست که این مرجع، به جای استفاده از یک حد آستانهی ثابت، میزان استفادهی ماشینهای مجازی از منبع در گذشته را ملاک میزان استفادهی آنها در آینده قرار میدهد. روشهای پیشنهادی آنها موجب کاهش مصرف انرژی گردیده و در نتیجه کاهش هزینه های عملیاتی و تولید گازهای گلخانهای را در پی دارد. در این مرجع، نویسندگان چهار الگوریتم برای یافتن میزبان (منبع)هایی با بار بیش از اندازه معرفی می نمایند:
x انحراف مطلق میانه1
x دامنهی بین چارکی2
x رگرسیون محلی 3
x رگرسیون محلی قوی4 با استفاده از این روشها میتوان میزبانهایی را که دارای بار بیش از حد میباشند را شناسایی کرده و سپس با مهاجرت دادن یک یا تعدادی از
ماشینهای مجازی تخصیص داده شده به آن میزبان پربار به میزبانهای دیگر، بهینگی آنها را بهبود بخشید. اما ذکر این نکته ضروری است که با مشخص شدن میزبان با بار بیش از حد، کدام یک از ماشینهای مجازی باید برای مهاجرت به میزبان های دیگر انتخاب گردند. برای این منظور در این مرجع سه سیاست مختلف برای انتخاب ماشینهای مجازی معرفی شده است:
x سیاست کمترین زمان مورد نیاز برای مهاجرت:5 در این سیاست ماشینهای مجازی که میتوانند در کمترین زمان ممکن فرایند مهاجرت خود را از میزبانهای با بار بیش از حد به میزبانهای دیگر تکمیل نمایند، انتخاب میگردند .
x سیاست انتخاب تصادفی:6 در این سیاست ماشینهای مجازی به صورت تصادفی برای مهاجرت از میزبانهای با بار بیش از حد به میزبانهای دیگر، انتخاب میگردند.
x سیاست بیشترین همبستگی:7 در این سیاست ماشینهای مجازی که بیشترین وابستگی را به یکدیگر دارند، برای مهاجرت انتخاب میگردند. پس از انجام مراحل فوق، نویسندگان راهحلی برای مدیریت میزبانهای با بار بسیار کم پیشنهاد کردهاند. طبق روش آنها، پس از آنکه میزبانهای
با بار بیش از اندازه شناسایی شد و یک یا تعدادی از ماشینهای مجازی آنها مهاجرت داده شد، طبق روشی ساده، میزبانهای با کمترین بار را پیدا کرده و سعی میکنند تمامی ماشینهای مجازی تخصیص داده شده به آنرا به میزبانهای دیگر تخصیص دهند، با این شرط که موجب قرار گرفتن میزبانهای دیگر به حالتی با بار بیش از حد نشود. سپس میزبان مورد نظر را خاموش مینمایند تا مصرف انرژی کاهش یابد. در صورتی که نتوانستند همهی ماشینهای مجازی میزبان مورد نظر را با هم مهاجرت دهند، میزبان به صورت فعال باقی میماند.
-4روش پیشنهادی
یکی از ویژگیهای مهم و کلیدی در رایانش ابری، مفهوم مدیریت منابع میباشد. تخصیص منابع در ابر یک روش پیچیده است. یکی از اصلیترین مشکلات رایانش ابری، ابر منفرد میباشد که با افزایش درخواست های سرویس دچار سربار خواهد شد. یکی دیگر از مشکلات اصلی، منابع پویایی است که در ترکیب وب سرویسها وجود دارد که مرتبا فاکتورهایی مانند قیمت، انرژی و سرعت ارائه منابع در حال تغییر میباشد.