چکیده
سيستمهاي توزيع شده
سیستمهای توزيع شده از کامپیوترهای خود مختار تشکیل شدهاند که ضمن همکاری با هم، نمایی از یک سیستم منسجم و منفرد ارائه میدهند. یکی از مهمترین مزایای این گونه سیستمها آن است که تلفیق برنامههای کاربردی مختلف را، که روی کامپیوترهای مختلفی در حال اجرا هستند، در یک سیستم واحد تسهیل میکنند. مزیت دیگر سیستمهای توزيع شده این است که در صورت طراحی مناسب، به خوبی با ابعاد شبکه زیر بنایی مقیاس پذیر میشوند. اما هزینهای که در قبال این مزایا بپردازیم، افزایش پیچیدگی نرمافزار، افت کارایی و کاهش سطح امنیتی است وجود تمام این اشکالات، هنوز هم علاقه زیادی به ساخت و نصب سیستمهای توزيع شده در سرتاسر جهان وجود دارد. هدف غالب سیستمهای توزيع شده مخفی سازی بسیاری از پیچیدگیهای مربوط به توزیع فرآیندها، دادهها وکنترل آنهاست. اما کسب این شفافیت توزيع شده نه تنها باعث افت عملکرد میشود، بلکه در موقعیتهای علمی هم هرگز به طور کامل محقق نمیشود. در طراحی سیستمهای توزيع شده بایستی مساله ایجاد توازن در کسب اشکال مختلف شفافیت توزيع شده لحاظ شده و همین امر درک آنها را پیچیده میکند. پیچیدگی بیشتر ناشی از این واقعیت است که بسیاری از سازندگان در ابتدای کار فرضیات اساساً نادرستی راجع به شبکه زیر بنایی در نظر دارند. بعدها که این فرضیات با شکست مواجه میشود، ممکن است سرپوش گذاشتن بر رفتار ناخواسته ناشی از آنها مشکل ساز شود. بعنوان مثال، این فرض که تاخیرهای شبکه ناچیز هستند، را درنظر بگیرید. بعداً، حین انتقال سیستم موجود به یک شبکه گسترده، مخفی سازی تاخیرها ممکن است تاثیر شدیدی بر طرح اولیه سیستم داشته باشد. از نمونه فرضهای نابجای دیگر میتوان به فرض قابل اطمینان بودن، ثبات، ایمنی و همگن بودن شبکه اشاره کرد. انواع مختلف سیستمهای توزيع شده را میتوان در سه گروه سیستمهای پشتیبان محاسبات، پردازش اطلاعات و شرکتی دسته بندی کرد. سیستمهای محاسبه توزيع شده نوعاً برای برنامههای کاربردی با کارایی بالا، که از حوزه محاسبه موازی سرچشمه میگیرند، ایجاد شدهاند. گروه دیگری از سیستمهای توزيع شده را میتوان در دفاتر کار سنتی مشاهده کرد که پایگاههای داده در آنها نقش مهمی ایفا میکنند. معمولا در این محیطها از سیستمهای پردازش تراکنش استفاده میشود. در آخرین گروه سیستمهای توزيع شده نوظهور، مولفهها کوچک بوده و سیستم به صورت موردی ساخته میشود، اما مدیریت آنها دیگر بر عهده سرپرست سیستم نمیباشد. از محیطهای محاسبه همه جا حاضر میتوان بعنوان نمونه بارز این گروه نام برد.
كلمات كليدي:
سيستمهاي توزيع شده، كامپيوتر، سيستم، برنامههاي كاربردي
فهرست مطالب
فصل اول- سيستمهاي توزيع شده
1-1 تعریف سیستمهای توزیع شده
1-2 اهداف
1-2-1دسترس پذیر کردن منابع
1-2-2 شفافیت توزیع
1-2-3 باز بودن
1-2-4 مقیاس پذیری
1-2-5 طرح اشکال
1-3 انواع سیستمهای توزیع شده
1-3-1 سیستمهای محاسبات توزيع شده
1-3-2 سیستمهای اطلاعات توزیع شده
1-3-3 سیستمهای فراگیر توزیع شده
فصل دوم- معماري
2-1 شیوههای معماری
2-2معماریهای سیستم
2-2-1 معماریهای متمرکز
2-2-2 معماریهای غیر متمرکز
2-2-3 معماریهای هیبریدی (دورگه)
2-3 معماری یا میان افزار؟
2-3-1 رهگیرها
2-3-2 رویکردهای عمومی به نرمافزار تطبیقی
2-4 خود مدیریتی در سیستمهای توزیع شده
فصل سوم- ارتباطات
3-1 ارتباطات
3-1-1 پروتکلهای لایهای
3-1-2 انواع ارتباطات
3-2 فراخوانی روال راه دور
3-2-1 عملیات اصلی RPC
2-2-3 پاس کردن پارامتر
2-3-2 RPC ناهمگام
3-3 ارتباطات پیام گرا
3-3-1 ارتباطات پیام گرای ناپایدار
3-3-2 ارتباطات پیام گرای پایدار
3-4 ارتباطات چند پخشی
3-4-1 چندبخشی سطح کاربرد
3-4-2 همگام سازی جویبار
فصل چهارم- تحمل خرابي
4-1 مقدمهای بر خرابی پذیری
4-1-1 مفاهیم اساسی
4-1-2 مدلهای خرابی
4-1-3 پوشش خرابی با افزونگی
4-2 مسائل طراحی
4-2-1پوشش خرابی و تکثیر
4-2-2تشخیص خرابی
4-3 ارتباط بین مشتری و خدمتگزار
4-3-1 ارتباط نقطه به نقطه
4-3-2 فراخوانی روال راه دور در حضور خرابی
4-4 ارتباط قابل اطمینان بین اعضای گروه
4-4-1 روشهای ساده چند پخشی قابل اطمینان
4-4-2 گسترش پذیری در چند پخشی قابل اطمینان
4-4-3 چند پخشی تقسیم ناپذیر
4-5 تعهد اجرایی توزیع شده
4-5-1 تعهد اجرایی دو مرحلهای
4-5-2 تعهد اجرایی سه مرحلهای
4-6 ترمیم خرابی و برگشت سیستم
4-6-2 نقطه بازرسی
4-6-3 ثبت پیام
4-6-4 محاسبات ترمیم گرا
فصل پنجم- امنيت
5-1 مقدمهای بر امنیت
5-1-1 تهدیدهای امنیتی: سیاستها و مکانیزمها
5-1-2 مسائل طراحی
5-1-3 رمز نگاری
5-2 کانالهای امن
5-2-1 احراز هویت
5-2-2 یکپارچگی پیام و محرمانگی
5-2-3 ارتباطات گروهی امن
5-3 کنترل دسترسی
5-3-1 دیوار آتش
5-3-2 عدم پذیرش سرویس
5-4 مدیریت امنیت
فصل ششم- سيستمهاي توزيع شده شئ محور
6-1 نام گذاری
6-1-1 مرجع شئ در CORBA
6-2 سازگاری و تکثیر
6-2-1 سازگاری مدخل
6-3 تحمل خرابی
6-3-1 خرابی پذیری در CORBA
منابع و مأخذ:
فهرست شكلها
شکل 1-1 چهار کامپیوتر شبکه شده و سه برنامه کاربردی را نمایش میدهد
شکل1-2 نمونهای از سیستمهای محاسبۀ خوشه
شکل1-3 معماری لایهای سیستمهای محاسبۀ توری.
شکل1-4 تراكنش تو در تو
شکل 2-1 جريان پاسخ
شكل 2-2 ارتباط پروتكلها
شکل2-3 سازمان سلسله مراتبی گرهها در یک شبکه ابر نظیر
شکل3-1. لایهها، واسطها و پروتکلهای مدل OSI
شکل3-2 اصول کلی RPC بین برنامه مشتری و خدمتگزار
شکل3-3 الف) برهم کنش بین مشتری و خدمتگزار در یک RPC متعارف
شكل 3-3 ب) برهم کنش بین مشتری و خدمتگزار با استفاده از RPCناهمگام
شکل3-4 چهار ترکیب ارتباط سست پیوند با استفاده از صف
شکل5-1 سازماندهی منطقی یک سیستم توزيع شده به چند لایه
شکل5-2 روش متداول پیادهسازی دیوار آتش
شکل 6-1 ساختار یک IOR همراه با اطلاعات ویژه برای IIOP
فهرست جداول
جدول 1-1 اشکال مختلف شفافیت در سیستمهای توزیع شده
جدول 1-2 ليست دقيق عملهاي پايه بستگي به نوع اشياء مورد استفاده در تراكنش
جدول 4-1 نوع خرابي با توضيحات
جدول 6-1 انواع فيلد و كارهاي آنها