محاسبات ابری و لبه

Cloud and Edge Computing

شماره درس: ۴۰۸۰۱.۷ تعداد واحد: ۳
مقطع: کارشناسی ارشد نوع درس: نظری
پیش‌نیاز: – هم‌نیاز: –

اهداف درس

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

ریز مواد

  1. معرفی محاسبات ابری و پردازش لبه، تاریخچه، آمار و ارقام، ساختار، چالش‌ها، کاربردها
  2. روش‌های خدمت‌رسانی در ابر
  3. معرفی مدل Azure IoT، قواعد حاکم بر Azure IoT Edge، تحلیل داده‌های حجیم
  4. مروری بر سخت‌افزارهای استفاده شده در زیرساخت‌های ابری
  5. توسعه‌پذیری و پارتیشن‌بندی کلید-مقدار، معرفی تکنیک‌های توسعه
  6. بررسی سلسله مراتب، مراکز داده‌ی کوچک و کامل، مفهوم انتشار و عضویت و کاربرد DHT، آشنایی با مفاهیم تئوری صف
  7. مسیریابی در شبکه‌های ابری، مسیریاب‌های با دسترس‌پذیری بالا
  8. جستجو و اشتراک‌گذاری فایل‌ها به‌صورت نقطه به نقطه، پروتکل‌های انتقال فایل
  9. خدمات ابری یک طبقه و دو طبقه، فناوری‌های پوششی انطباقی برای معماری دو طبقه
  10. برنامه‌نویسی برای فضای ابری، ذخیره‌سازی و دسترسی به داده‌ها
  11. پروتکل Torrent و نقش آن در شبکه‌های نقطه به نقطه و مراکز داده‌ی ابری
  12. مفهوم شایعه‌ و ساخت شبکه‌های پیچیده‌ی پوششی با استفاده از آن
  13. محاسبات جغرافیایی، نواحی دسترس‌پذیری، رونوشت در شبکه‌های بی‌سیم محلی، قرینه‌سازی
  14. انواع خطا و تحمل‌پذیری اشکال، رونوشت و کدهای محوکننده، معرفی پروتکل‌های تعهد تک مرحله‌ای و دو مرحله‌ای
  15. بررسی موازنه‌های موجود در سامانه‌های ابری، آشنایی با تثوری CAP
  16. آشنایی با اصل BASE و بررسی آن در تقابل با مدل ACID
  17. مفهوم زمان در محاسبات ابری، ابر بی‌درنگ، ساعت‌های منطقی و ساعت‌های برداری، بررسی موضوع ثبات
  18. مجازی‌سازی در محاسبات ابری
  19. مدل‌های نقل و انتقال و پیاده‌سازی آن‌ها، خدمات واقعه‌نگاری در سامانه‌های ابری
  20. بررسی ساختار فضای ابری در شرکت‌های بزرگ بین‌المللی
  21. امنیت در زیرساخت‌های ابری، معرفی مفهوم زنجیره‌ی بلوک‌ها، مفهوم گمنامی، اثبات کار
  22. مدل‌های تجاری در کاربردهای ابری
  23. فضای ابری آینده و تعامل با اینترنت اشیاء

ارزیابی

  • فعالیت‌های کوتاه کلاسی و منزل (۲ نمره)
    • آزمون کوتاه
    • تحقیق و تمرین
  • آزمون میان‌ترم (۷ نمره)
  • آزمون پایانی (۷ نمره)
  • پروژه نهایی (۴ نمره)

مراجع

  1. C. Davis. Cloud Native Patterns: Designing change-tolerant software. Simon and Schuster, 2019.
  2. I. Foster, and D. B. Gannon. Cloud Computing for Science and Engineering (Scientific and Engineering Computation). The MIT Press, 2017.
  3. M. Kleppmann. Designing data-intensive applications: The big ideas behind reliable, scalable, and maintainable systems. O'Reilly Media Inc, 2017.
  4. K. P. Birman. Guide to Reliable Distributed Systems: Building High-Assurance Applications and Cloud-Hosted Services. Springer Science & Business Media, 2012.Papers in the literature