جهان محاسباتی که امروزه با آن روبرو هستیم روز بهروز در حال بزرگتر و پیچیدهتر شدن است. محاسبات ابری نیز در ادامه سبکهای دیگر مانند محاسبات توری با هدف پردازش حجم عظیمی از داده با بهره گرفتن از خوشههایی از کامپیوترهاست. طبق گراش ارائه شده ای از گوکل، در حال حاضر به لطف محاسبات توزیع شده روزانه بیش از 20 ترابایت داده خام اینترنتی مورد پردازش قرار میگیرد. تکامل و شکلگیری محاسبات ابری خواهد توانست این چنین مسائلی را به راحتی و به شکلی مناسبتر از طریق سرویسهای مبتنی بر تقاضا حل و فصل نماید. از زاویه دیگر، جهان محاسباتی اطراف ما در حال حرکت به سمت الگوهای “پرداخت برای استفاده” حرکت میکند و همین الگو یکی دیگر از پایههای اصلی محاسبات ابری محسوب میشود.
محاسبات ابری که در اواخر سال 2007 پا به عرضه ظهور گذاشت هماکنون به دلیل تواناییاش در ارائه زیر ساخت فناوری پویا و بسیار منعطف، محیطهای محاسباتی تصمین شده از نظر کیفیت و همچنین سرویسهای نرمافزاری قابل پیکربندی به موضوع داغ بدل شده است . در گزارش رویکردی گوگل همانطور که در شکل 1‑1 مشاهده مینمایید، محاسبات ابری، محاسبات توری را پشت سر گذاشته است [1]. محاسبات ابری از رویکرد مجازیسازی بهره گیری مینماید که این امر سبب انعطافپذیری بیشتر سیستم ابر می شود. در حقیقت با بهره گرفتن از این تکنولوژی، برنامهها میتوانند سرویسهای مختلف را به صورت مجزا و انتزاعی از گرههای سرویسدهنده دریافت نمایند.
تعاریف زیادی در مورد محاسبات ابری ارائه شده است که سعی مینمایند مشخصه های اصلی محاسبات ابری را مد نظر بگیرند که سیستم ابری را ” یک مدل برای دسترسی بنابر تقاضا و راحت تحت شبکه به یک مجموعه اشتراکی از منابع محاسباتی قابل پیکربندی” تعریف مینمایند درحالیکه “این منابع با کمترین تلاش و هزینه به صورت آزاد” فراهم گردند.
محاسبات ابری از خصوصیات منحصر به فردی بهره میبرد که این سبک محاسباتی را از سایر سبکها متمایز میکند. البته برخی از این خصوصیات کما بیش در سبکهای پیشین نیز وجود داشته اند. بعضی از این خصوصیات عبارتند از:
– ارائه سرویس مبتنی بر تقاضا: در اینجا لازم نیست تا برای آن چه استفاده نمیکنید هزینه پرداخت کنید. این بدان معناست که مشتریان تنها بر اساس مقدار و کیفیت سرویسی که مصرف مینمایند، هزینه استفاده پرداخت مینمایند. در حقیقت رویکرد این تکنولوژی همانند سرویسهای عمومی قابل استفاده دیگر امروزی است. برای مثال همانطور که برای تولید برق نیاز نیست که هر خانوار دارای ژنراتور و سایر وسایل تولید الکتریسیته باشد، دریافت سرویسی مانند محاسبات یا محل ذخیره داده نیز دیگر نیازی به خصوصی بودن ندارد و میتوان آن را از فراهم آوردنگان ابر[1] اجاره کرد.
– دسترسی شبکه گسترده (اینترنت): این سیستم برای تحویل و ارئه سرویسها از بستر موجود برای اینترنت استفاده می کند. بنابراین مشتریان سرویسها به هیچگونه نرمافزار یا سختافزار خاصی نیاز ندارند و با همان گری که هر روزه به گشت و گذار در وب میپردازند میتوانند از سرویسهای ابر بهره ببرند.
– استخر منابع: در این سیستم با حجم وسیعی از منابع روبرو هستیم. این منابع از طریق مجازیسازی از محل فیزیکی خود مستقل شده اند. بنابراین به راحتی میتوانند در بستر شبکه جابه جا شوند. در واقع نرمافزارها، پایگاههای داد، وب سرورها و سیستمهای عامل همگی به عنوان سرورهای مجازی در سیستم ابر حضور دارند.
– قابلیت اطمینان بالا: فراهم آورندگان ابر به مشتریان خود تضمین میدهند که سیستم ابر همیشه قابلیت ارائه سرویس را داشته باشد. حال آنکه در سیستمهای خانگی یک اشکال در نرمافزار یا سختافزار میتواند موجب عدم دسترسی به اطلاعات و سرویس شود.
– هزینه پایین: به صورت سنتی برای اجرای برنامههای سنگین محاسباتی یا داده ای عظیم نیاز به یک سیستم با توان بالای محاسباتی و دادهای احساس میشده است. این سیستم هزینه سنگینی را برای شرکت و یا افراد سرویسگیرنده فراهم میآورده است. حال با بهره گرفتن از سرویسهای موجود بر روی ابر، کاربران میتوانند بر روی پروژه خود تمرکز بیشتری داشته باشد و هزینه گزافی را بابت تهیه زیرساختها نپردازد.
– بهروز بودن: هزینههای گزافی که برای برپا بودن و بهروز بودن زیرساختهای سختافزاری و نرمافزاری باید پرداخت شوند با بهره گرفتن از ابر از بین میرود. در حقیقت بهروز در آوردن زیرساختها از وظایف فراهمآورندگان ابر میشود که بدون آنکه کاربر نهایی از این
موضوع مطلع شود انجام میپذیرد.
در سیستمهای محاسبات توزیعی به دلیل کم کردن هزینه و توان مصرفی، از اجزاء تجاری عاممنظوره موجود در بازار استفاده می شود[3]. این اجزا به زمان مستهلک شده و دچار خرابی میشوند تا جاییکه برای همیشه غیرقابلاستفاده میگردند. همچنین با توجه به آمار ذکر شده، تعداد پردازندهها به منظور بهبود کارآیی سیستم محاسباتی توزیعی رو به افزایش است. با این حال احتمال وقوع خرابی[2] در کل سیستم توزیعی با یک رابطه نمایی بالا میرود. برای مثال سیستم کلاستری که برای یکی از قسمتهای سایت گوگل استفاده می شود، بیش از 15000 پردازنده دارد که بر اساس آمار ذکر شده در [4]، نرخ خرابی هر گره محاسباتی تقریبا 2-3% در سال است. این سیستم به طور میانگین 20 بار در هر روز به علت خرابی ناگزیر به راهاندازی مجدد[3] است. بزرگترین مرکز داده جهان بیش از 51470000 هسته پردازشی دارد و در کمتر از هر 10 دقیقه با یک اشکال در سیستم مواجه میشود. درجدول 1-1 چند نمونه از تعداد اشکالهای گزارش شده در مراکز داده آمده است.
برای برنامه های علمی-کاربردی موازی امروزی که بسیار پیچیدهتر شدهاند و معمولا برای روزها، هفته ها و یا بیشتر طراحی شده اند تا به اتمام برسند، برخورد با اشکال در حین اجرا برنامه موازی امری اجتناب ناپذیر به نظر میرسد. امروزه رویکردهای تحملپذیر اشکال در مراکز به یکی از چالشهای اصلی در محاسبات توزیعی تبدیل شده است.
آزمون نقطه مقابلهگیری(cp)[1] و بازیافت[2] یک تکنیک معمول برای مدیریت اشکال در محاسبات توزیع شده میباشد و مقالات ارزشمندی در مورد بازیابی بر اساس الگوریتمهای آزمون نقطه مقابلهگیری مختلف موجود میباشد. مطالعه بر روی هزینه نقطه مقابله گرفتن به صورت گسترده کماکان در حال انجام است. بیشتر کارها بر روی انتخاب بازه بهینه نقطه مقابله و کم کردن سربار برای عمل نقطه مقابله انجام شده است. در واقع مهمترین مساله در بازیافت، برخورد با اشکالها بعد از وقوع آن و رویکرد بازگشت به عقب[3] است. در روش نقطه مقابله بهصورت هماهنگ دورهای، در ابتدای بازههای زمانی از پیش تعریف شده حالت کنونی تکتک واحدهای محاسباتی موجود (این واحد در ابر ماشینهای مجازی است) ذخیره میشود. پس از اتمام ذخیرهسازی تمام ماشینهای مجازی، سیستم تا ابتدای بازه زمانی بعدی به کار خود ادامه میدهد.
زمانیکه در یکی از گرههای محاسباتی خرابی رخ داد، این خرابی کشف می شود و تمام کارهای موازی[4] متوقف شده تا اشکال در سیستم بر طرف گردد. پس از رفع اشکال سیستم به آخرین حالت ذخیره شده ماشینهای مجازی باز میگردد و عملیات را از آن نقطه دوباره آغاز می کند و به کار خود ادامه میدهد. در اغلب پیادهسازیها، پروتکل کشف و بازیافت اشکال از دید برنامهنویس پنهان میباشد. این قبیل پروتکلها به صورت واکنشی پس از وقوع اشکال در سیستم عمل مینماید. بنابراین در این حالت ممکن است زمان زیادی به لحاظ تعمیر سیستم و بازیابی مجدد ماشینهای مجازی از دست برود که روی کارآیی ابر بهصورت مستقیم تاثیر منفی میگذارد.
در مقابل این روشها، اخیرا روشهای دیگری پیشنهاد شده که مبتنی بر پیش بینی اشکال در هر گره محاسباتی هستند. در این سیستمها، یک مکانیسم مدیریت اشکال تطبیقی[5] وجود دارد که سعی دارد تا بهصورت بهینه، بهترین عمل را در ابتدای هر بازه تصمیم گیری نماید.
در دهههای گذشته پیشرفتهایی در زمینه پیش بینی اشکال حاصل شده است. برای نمونه، وسایل سختافزاری مدرنی با خصیصههای مختلفی همچون سنسورهای سختافزاری طراحی شده اند که میتوانند افت یک ویژگی در طول زمان را (برای شناسایی خرابیهای نزدیک) نشان دهند و تعدادی روشهای یادگیری ماشینی و آماری مبتنی بر تکنیکهای احتمال برای بالابردن دقت آنها ارائه شده است. تکنیکهای مقاومت در برابر اشکال پیشکنشی[6] مبتنی بر پیش بینی به منظور دستیابی به دسترسیبالا[7]، برای کاربردهای بحرانی- امن اتخاذ گردیده است. اما تاکنون مطالعات خوبی بر روی ابر صورت نگرفته است.
در این پایان نامه سیستمهای محاسبات ابری را به عنوان یکی از سیستمهای پردازش موازی مبتنی بر مبادله پیام مورد بررسی قرار میدهیم. این محیطها به علت ویژگی خاص خود که ارتباط کارهای موازی فقط از پیامهای رد و بدل شده انجام میپذیرد، دارای توانمندیهای بالقوه برای انجام عملیات بازیافت میباشند. از این رو، آنچه ما به طور خلاصه مورد مطالعه قرار خواهیم داد، قراردادهای بازیافت مختلف برای محیط مبادله پیام خواهد بود. این قراردادها برای توانمند کردن محیط پردازش موازی به منظور تحملپذیر کردن در برابر اشکال، اطلاعاتی نظیر حالت ماشینهای مجازی یا محتوی پیامها را در طول اجرای عادی نگهداری میکنند تا در زمان وقوع اشکال با بهره گرفتن از آنها، عملیات بازیافت انجام پذیرد.
در این پایان نامه در فصل دوم با قابلیت دسترسیبالا آشنا خواهیم شد و سپس در فصل سوم قراردادهای بازیافت در یک محیط پردازش موازی مبتنی بر مبادله پیام را مورد بررسی و مقایسه قرار میدهیم. در فصل چهارم به مطالعه کارهای اخیر انجام شده در زمینه برخورد پیشکنشی با اشکالهای محتمل میپردازیم. فصل پنجم را به معرفی الگوریتم پیشنهادی اختصاص داده و در آخر به پیادهسازی و ارزیابی الگوریتمهای پیشنهادی و مقایسه آن با روش کلاسیک پرداخته و نتیجه گیری مینماییم.
[1] Checkpoint
[2] Recovery
[3] Rollback
[4] Tasks
[5] Adaptive
[6] Proactive
[7] High Availability
[1] Cloud Providers
[2] Failure
[3] Reboot
ممکن است هنگام انتقال از فایل اصلی به داخل سایت بعضی متون به هم بریزد یا بعضی نمادها و اشکال درج نشود ولی در فایل دانلودی همه چیز مرتب و کامل و با فرمت ورد موجود است
متن کامل را می توانید دانلود نمائید
چون فقط تکه هایی از متن پایان نامه در این صفحه درج شده (به طور نمونه)
ولی در فایل دانلودی متن کامل پایان نامه
با فرمت ورد word که قابل ویرایش و کپی کردن می باشند
موجود است
فرم در حال بارگذاری ...