برای جستجو در بین هزاران پایان نامه در موضوعات مختلف     

      و دانلود متن کامل آنها با فرمت ورد اینجا کلیک کنید     

 
دانلود پایان نامه

پس از اینکه واحد طبقه بندی سرورها کار قرار دادن سرورها در این پنج صف را به اتمام رساند، واحد اتخاذ تصمیم را صدا می‌زند.
واحد اتخاذ تصمیم
این واحد در واقع مسئول اجرای الگوریتم اصلی مدل پیشنهادی است. به طور خلاصه هدف از اجرای این الگوریتم انتقال بار پردازشی بین سرورها با هدف ادغام سرورهای فروبار و قرار دادن تعداد هر چه بیشتر از سرورها در محدوده‌ای است که ضمن حفظ توافق سطح سرویس، با توان پردازشی نزدیک به بیشینه کار کنند تا نسبت پردازش به توان مصرفی قابل قبولی داشته باشند.
این الگوریتم با بررسی صف‌های پنجگانه که توسط واحد طبقه بندی سرورها آماده شده بودند، دستورات لازم برای تحقق هدف بیان شده را اتخاذ می کند و در صورت لزوم اجرای محلی، برای گره ارسال می‌دارد. برای بیان عملکرد الگوریتم نیاز است ابتدا این دستورات را شرح دهیم:
دستور به خواب رفتن: از آنجا که اجرای این دستور باید به صورت محلی باشد، خروجی واقعی واحد اتخاذ تصمیم شبه دستوری است که برای اجرا به سرور مورد نظر ارسال شده و در آنجا تفسیر و تبدیل به دستوری می‌شود که حاصل اجرای آن قرار گرفتن سرور در حالت خواب است.
دستور سبک سازی: اجرای این دستور نیز به صورت محلی می‌باشد برای همین آنچه به سرور ارسال می‌گردد در واقع شبه دستوری است که در سرور تبدیل به دستور قابل اجرا می‌گردد. اجرای این دستور سبب مهاجرت دادن ماشین از این سرور به سرور دیگری است که توسط سرور مرکزی در شبه دستور مشخص گردیده است. در واقع با اجرای این دستور بار پردازشی روی سرور اجرا کننده کاهش یافته و به سرور دیگری منتقل می‌گردد.
دستور بیدار شدن: این دستور مستقیماً توسط سرور مرکزی اجرا می‌گردد و حاصل آن فعال شدن سروری است که در حالت خواب قرار دارد. این زمانی است که برای پاسخ دهی مناسب به درخواست‌های رسیده به مرکز داده، نیاز به افزایش تعداد سرورهای فعال می‌باشد. طبیعتاً سروری که از خواب بیدار شده است بلافاصله به عنوان مقصد مهاجرت ماشین یا ماشین‌هایی از سایر سرورها قرار خواهد گرفت.
الگوریتمی واحد اتخاذ تصمیم بخش مرکزی مدل پیشنهادی آن را اجرا می کند، شامل مراحل زیر می‌باشد:
الگوریتم کار خود را از صف سرورهای فرابار آغاز می‌کند؛ همانطور که گفته شد در حالت ایده آل این صف باید خالی باشد ولی چنانچه در این صف سروری وجود داشت الگوریتم به سبک سازی آن خواهد پرداخت. برای این کار ابتدا باید سروری را مقصد مهاجرت ماشین مجازی انتخاب نماییم، که به از این پس آن را پذیرنده می نامیم. روند انتخاب پذیرنده به این شکل است:
ابتدا به صف سرورهای فروبار مراجعه می‌شود، اگر در این صف سروری قرار داشت، اولین سرور این صف به عنوان پذیرنده انتخاب شده و آن سرور از صف سرورهای فروبار حذف می‌گردد.
اگر صف سرورهای فروبار خالی بود، صف سرورهای بیکار مورد بررسی قرار می‌گیرد؛ اولین سرور این صف (در صورت وجود) به عنوان پذیرنده انتخاب شده و از صف سرور‌های بیکار به صف سرورهای فروبار منتقل می‌گردد.
اگر صف سرورهای بیکار هم خالی بود اولین عنصر از صف سرورهای خواب به عنوان پذیرنده انتخاب شده و به صف سرورهای فروبار منتقل می‌گردد.
اگر بعد از طی این 3 مرحله هیچ سروری به عنوان پذیرنده انتخاب نشده بود، (یعنی هر 3 صف فروبار؛ بیکار و خوابیده خالی بودند) به این معناست که تمامی سرورهای مرکز داده با توان پردازشی نزدیک به بیشینه‌ی در حال فعالیت هستند از اینرو نیازی به انتقال بار و مهاجرت ماشین مجازی بین سرور ها وجود ندارد. به عنوان کارهایی که در جهت تکمیل مدل پیشنهادی در حال انجام آن هستیم، اضافه نمودن عملکرد دراین حالت است. یعنی ارسال ماشین مجازی از گره فرابار به سبکترین گره متعادل.
اگر پس از طی این مراحل سروری به عنوان پذیرنده انتخاب شده بود، با استفاده از شبه دستور سبک سازی که در آن این پذیرنده به عنوان مقصد مهاجرت تعیین شده است، بخشی از بار سرور فرابار به آن منتقل شده و سرور فرابار از این لیست حذف می‌گردد.
این روند برای تمامی سرورهای موجود در صف فرابار تکرار می‌شود. این فاز از الگوریتم با اتمام سرورهای موجود در صف فرابار و یا با فعال شدن تمامی سرورها (و عدم وجود راهی برای کاهش بار روی سرورهای فرابار به پایان می‌رسد.
2- بعد از اتمام فاز یک به سراغ صف سرورهای فروبار می‌رویم. هدف در این فاز از الگوریتم، ادغام سرورهای موجود در این صف جهت ساختن یک گروه سرور بیکار و یک گروه سرور متعادل است. برای این کار اولین سرور موجود در این صف انتخاب شده و به تعداد ماشین‌های در حال اجرای روی آن دستور سبک سازی برای آن فرستاده می‌شود. پذیرنده‌ی که در این دستورات تعیین می‌گردد، سرورهای بعدی در هیمن صف می‌باشد. در واقع به صورت ساده، تمام ماشین‌های هر سرور به دو سرور بعدی در صف، مهاجرت داده شده سپس سرور اولی از این صف حذف و به صف سرورهای بیکار افزوده می‌شود و دو سرور بعدی نیز از صف سرورهای فروبار حذف و به صف سرورهای متعادل افزوده می‌شوند. با اتمام سرورهای این صف و یا کاهش تعداد آنها به کمتر از 3 سرور این فاز نیز به اتمام می‌رسد.
3- در این فاز الگوریتم به بررسی سرورهای صف بیکار می‌پردازد. همانطور که در بخش قبل گفته شد ممکن است نیاز باشد تعدادی سرور را به صورت بیکار نگاه داشت. در این فاز از الگوریتم برای تمام سرورهای موجود در این صف به جز تعدادی که به عنوان رزرو در نظر گرفته می‌شوند، دستور خواب فرستاده می‌شود سپس از این صف حذف و به صف سرورهای خوابیده اضافه می‌گردند.
پس از این 3 مرحله و تخصیص‌های جدید ماشین‌های مجازی به سرورها، مرکز داده در حالتی کار خواهد کرد که تقریباً فقط به تعداد مورد نیاز برای پاسخگویی به بار پردازشی آن بازه از فعالیت مرکز داده، سرور فعال وجود دارد و این بیشتر این سرورها هم در سطحی از بکارگیری قرار دارند که از لحاظ مصرف انرژی به صرفه است.
واحد ارسال دستورات
این واحد وظیفه‌ی ارسال دستورات اخذ شده در واحد قبلی و ارسال آنها به سرور گیرنده را بر عهده دارد. این واحد نیز خود از چندین تابع بسته به دستورات و شبه دستورات مختلف تشکیل شده است.
سربارهای مدل پیشنهادی
در این بخش سربارهای کلی ناشی از اجرای مدل پیشنهادی در یک مرکز داده بیان می‌گردد.
دسته بندی : علمی