فرمت فایل : word (قابل ویرایش) تعداد صفحات : 97 صفحه
فهرست مطالب
مقدمه................................................................. 1
فصل اول: تشخیص بن بست در سیستمهای توزیع شده.......................... 2
1-1- مفاهیم پایه......................................................... 3
1-2- انواع مدلهای بنبست بر اساس سیستم تبادل پیام.......................... 3
1-3- انواع مدلهای بنبست بر اساس نوع درخواست............................ 3
1-4- شرایط وجود بنبست.................................................. 5
1-5- طبقهبندی الگوریتمهای تشخیص بنبست................................ 5
فصل دوم: مروری بر الگوریتمهای تشخیص بنبست............................. 9
مقدمه....................................................................10
2-1- نمونهای از الگوریتم متمرکز جهت تشخیص بنبست در سیستمهای توزیعشده..... 10
2-1-1- الگوریتم هو- رامامورتی........................................... 10
2-2- نمونهای از الگوریتمهای تشخیص بنبست سلسلهمراتبی................... 11
2-2-1- الگوریتم منساس – مانتر............................................ 11
2-2-2- الگوایتم هو – رامامورثی....................................... 11
2-3- نمونههایی از الگوریتمهای توزیعشده............................... 11
2-3-1- الگوریتم تشخیص بنبست چندی – مسیرا – هاس...................... 11
2-3-2- الگوریتم محاسبه پخش کردن چندی – مسیرا – هاس..................... 12
2-3-3- الگوریتم براچا – توگ............................................. 13
2-3-4- الگوریتم منساس و مانتز2-3-5- الگوریتم ابرمارک..................... 13
2-3-5- الگوریتم ابرمارک................................................ 14
2-3-6- الگوریتم بدالض...................................................... 15
فصل سوم: مروری بر الگوریتمهای تشخیص بنبست توزیع شده تعقیب یال.......... 20
مقدمه............................................................... 21
3-1- بررسی الگوریتمهای تشخیص بنبست تعقیب یال......................... 22
3-1-1- الگوریتم میچل و مریت........................................... 22
3-1-2- الگوریتم سینها و ناتارجان......................................... 23
3-1-3- الگوریتم چودهاری – کوهلر – استنکویچ و توسلی................... 23
3-1-4- الگوریتم سینقال و شمکالیانی........................................ 24
3-1-5- تشخیص بنبست توزیع شده و حل آن بر اساس ساعتهای سختافزاری....... 24
3-2- ارائه روشی برای حذف بنبست نادرست در الگوریتمهای تشخیص بنبست...... 25
3-3- نتیجهگیری........................................................... 27
فصل چهارم: الگوریتمهای تشخیص بنبست توزیع شده تحمل خطاپذیر............. 29
مقدمه........................................................ 30
4-1- مروری بر الگوریتمهای تحملپذیر خطا جهت تشخیص بنبست.............. 31
4-2- معرفی مدل سیستم تشخیص خرابی بر اساس شاخص زمان اتصال.............. 33
4-3- یک الگوریتم تشخیص بنبست توزیع شده تحملپذیر خطا................... 34
4-4- اثبات درستی الگوریتم.............................................. 37
4-5- نتیجهگیری......................................................... 38
فصل پنجم: تشخیص و حل بنبست در سیستمهای نماینده موبایل................. 39
مقدمه............................................................... 40
5-1- معرفی سیستمهای نماینده موبایل(نسل آینده سیستمهای توزیع شده)............... 41
5-2- تشخیص بنبست توزیعشده در سیستمهای نماینده موبایل.................. 41
5-3- معایب الگوریتم اصلی و مشکلات کارایی الگوریتم...................... 44
5-4- الگوریتم تشخیص بنبست توزیع شده مبتنی بر اولویت بهبودیافته................. 47
5-4-1- آنالیز کارایی الگوریتم بهبودیافته.................................... 48
5-4-2- اثبات درستی الگوریتم............................................ 49
5-5- نتیجهگیری....................................................... 50
نتیجهگیری.............................................................. 51
فهرست منابع............................................................... 53
پیوستها................................................................ 55
جدول 2-1- مقایسه الگوریتم های بررسی شده تشخیص بن بست.................... 17
جدول 2-2- مقایسه کارایی الگوریتم های بررسی شده........................... 19
جدول 3-1- مقایسه مدل های الگوریتم های بررسی شده کلاس تعقیب یال......... 27
جدول3-2- بررسی صحت الگوریتم های بررسی شده.......................... 28
مقدمه
امروزه کمتر سیستمی را می توان یافت که روی یک کامپیوتر متمرکز باشد. رشد روزافزون استفاده از سیستمهای توزیع شده، اهمیت تحقیق و پژوهش در راستای حل موانع و مشکلات موجود در این سیستمها را بیشتر آشکار می نماید. از جمله سیستمهای توزیع شده می توان به بانکهای اطلاعاتی توزیع شده، سیستم عاملهای توزیع شده، و سیستمهای کارگزار موبایل اشاره نمود.
سیستم توزیع شده از مجموعه ای از فرآیندهایی که از طریق ارسال پیام با یکدیگر در ارتباط اند،تشکیل شده است.یکی از مسائل مهم در سیستمهای توزیع شده در راستای مدیریت منابع، تشخیص بن بست توزیع شده است. مدیریت منابع زمانی که فرایندهای درخواست کننده در سطح شبکه در مکانهای مختلف توزیع شده اند،فرایند تشخیص را نسبت به سیستمهای متمرکز، دشوارتر می نماید.
طی دهه اخیر الگوریتم های زیادی برای تشخیص بن بست در سیستم های توزیع شده ارائه شده است که تعداد زیادی از آنها موفق به تشخیص بن بست نمی شوند و یا بن بست هایی را گزارش می کنند که در واقع وجود ندارند و یا اینکه اثبات شده است که نادرست اند.
هدف از این تحقیق مطالعه و بررسی روشهای مختلف تشخیص بن بست در سیستمهای توزیع شده، شناسایی مشکلات، محدودیت های آنها و ارائه راه حل عملی مبتنی بر واقعیات موجود در سیستمهای توزیع شده در خصوص مشکلات شناسایی شده است.
1-1- مقدمه ای بر سیستم های توزیع شده:
عمومی ترین دسته بندی که معمولا کاربران عادی از شبکه های کامپیوتری می دانند عبارت است از LAN , WAN , MAN و اینترنت را هم جزء شبکه های کامپیوتری در نظر میگیرند. به ظاهر اینترنت هم نوعی شبکه کامپیوتری است ولی در باطن در دسته بندی دیگری قرار می گیرد که با عنوان سیستم های توزیع شده یا Distributed Systems معرفی می شود.
1-2- سیستم توزیع شده چیست ؟
در ساده ترین تعریف، سیستم توزیع شده کلکسیونی از کامپیوترهای مستقل است که از دیدگاه کاربران مثل یک سیستم منسجم عمل می کند .
1-3- تفاوت سیستم های توزیع شده و شبکه های کامپیوتری در چیست ؟
یک سیستم توزیع شده مجموع ای است از چندین کامپیوتر مستقل که کاربر آن را به شکل یک سیستم واحد و متجانس می بیند. در این سیستمها معمولا یک لایه نرم افزاری {روی سیستم عامل} به نام میان افزار middleware است که مدل مورد نظر را پیاده سازی می کند. وب نمونه ای از یک سیستم توزیع شده است، که در آن همه چیز از دیدگاه کاربر یک سند {صفحه وب} به نظر می رسد.
در شبکه های کامپیوتری این تجانس، مدل و نرم افزار وجود ندارد.کاربران به طور مستقیم با کامیپوترها در تماسند و هیچ کوششی برای ایجاد تجانس بین آنها صورت نمی گیرد. کاربر به روشنی تفاوت های نرم افزاری و سخت افزاری کامپیوترها را می بینند.
در حقیقت، یک سیستم توزیع شده نرم افزاریست که روی شبکه کار می کند و تجانس و شفافیت آن توسط این نرم افزار تعیین می شود. به همین دلیل تفاوت سیستم توزیع شده با یک شبکه کامپیوتری، بیشتر در نرم افزار به ویژه سیستم عامل نهفته است تا سخت افزار.
با این همه، شباهت های زیادی بین این دو وجود دارد. مثلا سیستم های توزیع شده و شبکهها هردو به انتقال فایل نیاز دارند. تفاوت در این است که این کار را چه کسی انجام می دهد، سیستم یا کاربر!
انواع سیستم های توزیع شده
- سیستمهای محاسباتی توزیع شده .
- سیستمهای اطلاعاتی توزیع شده .
- سیستمهای متفرق توزیع شده .
سیستم های محاسباتی توزیع شده
سیستم های محاسباتی توزیع شده دسته مهمی از سیستم های توزیع شده هستند برای کارهای محاسباتی با کارایی بالا به کار می روند .این سیستمها به دو گروه تقسیم می شوند
- محاسبات خوشه ای {Cluster Computing}
- محاسبات شبکه ای {Grid Computing}
1-4- سیستم های محاسبات خوشه ای
در محاسبات خوشه ای سخت افزار شامل مجموعه ای از Pcها یا ایستگاه های کاری مشابه است که از طریق شبکه محلی پرسرعت به هم متصل می شوند، علاوه بر این هر گره سیستم عامل یکسانی را اجرا می کنند.
1-5- سیستم های محاسبات شبکه ای
این گروه شامل سیستم های توزیع شده ای هستند که اغلب به صورت فدراسیونی از سیستم های کامپیوتری ساخته می شوند که هر سیستم ممکن است در دامنه مدیریتی مختلفی واقع شود، بر حسب نوع سخت افزار، نرم افزار و فن آوری شبکه فرق کند.
1-6- زیر شاخه ها:
باید بگم که یکی از وسیع ترین زمینهها در علم کامپیوتر سیستم های توزیع شده هست اما مهمترین زیر شاخه هارو عنوان میکنم:
فهرست مطالبعنوان صفحه
فهرست جدولها ج
فهرست شکلها د
فصل 1- سیستم های توزیع شده. 5
1-1- مقدمه ای بر سیستم های توزیع شده: 5
1-2- سیستم توزیع شده چیست ؟. 5
1-3- تفاوت سیستم های توزیع شده و شبکه های کامپیوتری در چیست ؟. 5
1-4- سیستم های محاسبات خوشه ای.. 7
1-5- سیستم های محاسبات شبکه ای.. 7
1-6- زیر شاخه ها: 7
1-7- Cloud computing and virtualization: 7
1-8- Parallel and distributed operating systems : 8
1-9- Grid Computing : 8
1-10- Wireless and ad-hoc networks: 8
1-11- Distributed Algorithms : 9
فصل 2- الگوریتمهای تشخیص بنبست... 10
2-1- مقدمه 10
2-1- 10
2-1-1- الگوریتم هو- رامامورتی.. 11
2-2- نمونه هایی از الگوریتم های تشخیص بن بست سلسله مراتبی.. 12
2-2-1- الگوریتم منساس- مانتز. 12
2-2-2- الگوریتم هو-رامامورتی.. 13
2-3- نمونه هایی از الگوریتم های توزیع شده 14
2-3-1- الگوریتم تشخیص بن بست چندی – مسیرا– هاس.... 14
2-3-2- الگوریتم محاسبه پخش کردن چندی- مسیرا-هاس.... 15
2-3-3- الگوریتم براچا- توگ... 17
2-4- الگوریتم بدال.. 21
فصل 3- تشخیص و رفع بن بست در پایگاه داده (سیستم) توزیع شده. 29
3-1- مقدمه 29
3-2- روشهای صوری در تشخیص بنبست... 30
3-3- بنبست از نقطهنظر گراف... 32
3-4- مدلهای بنبست... 34
3-4-1- 4.1 مدل تک منبع (one-resource) 34
3-4-2- 4.2 مدل عطفی (AND model) 36
3-4-3- مدل عمومی (Genral model) 37
3-5- مدیر داده آغازگر کاوشگر. 41
3-6- تراکنش کاوشگرها را دریافت نموده میفرستد. 42
3-7- دریافت کردن کاوشگر توسط مدیر داده 43
3-8- الگوریتم چندی.. 43
3-9- اثبات درستی.. 44
فصل 4- تشخیص و حل بن بست در سیستم های نماینده موبایل (نسل آینده سیستم های توزیع شده) 49
4-1- مقدمه [ ، ، ، ، و ] 49
4-2- معرفی سیستم های نماینده موبایل (نسل آینده سیستم های توزیع شده) 50
4-3- تشخیص بن بست توزیع شده در سیستم های نماینده موبایل.. 52
4-4- معایب الگوریتم اصلی و مشکلات کارایی الگوریتم.. 57
4-5- الگوریتم تشخیص بن بست توزیع شده مبتنی بر اولویت بهبود یافته. 64
4-6- آنالیز کارایی الگوریتم بهبود یافته. 66
4-7- اثبات درستی الگوریتم.. 67
فصل 5- آشکار سازی بن بست در سیستم عامل توزیع شده. 70
5-1- - مقدمه 70
5-2- 2- پیش زمینه. 71
5-3- مشکل بن بست عمومی.. 74
5-3-1- انتظار برای نمودار 76
5-3-2- نمونههای بن بست متفاوت... 76
5-4- الگوریتمهای آشکار سازی بن بست توزیع شده 77
5-5- 1-راه حل بن بست... 78
5-6- روش تایم اوت (زمان سپری شده) 78
5-7- گروه بندی الگوریتمهای توزیع شده 79
5-8- الگوریتم های هل دادن (فشار) مسیر (جریان کار) 80
5-9- الگوریتم هایی بر پایه تحقیق.. 82
5-10- الگوریتمهای جستجوی لبه. 82
5-11- منتشر کردن محاسبه. 85
5-12- خلاصه ای از الگوریتمهای آشکار سازی بن بست توزیع شده 85
فهرست مراجع.. 89
فهرست شکلها
عنوان صفحه
No table of figures entries found.
شکل 3‑1: یک گراف تخصیص منبع.. 33
شکل 3‑2: مثالی برای گراف در حالت تک منبع.. 36
شکل 3‑3: یک سیستم توزیع شده. 38
شکل 3‑4: مثال برای الگوریتم چادهری... 45
شکل 4‑1- شمای کلی یک محیط میزبان در سیستم نماینده موبایل.. 54
شکل 4‑2- یک چرخه بن بست با درخواست قفل محلی، مربعها نشان دهنده نماینده های مصرف کننده و دایره ها نشان دهنده منابع بوده و فلشهای جهت دار نشان دهنده درخواست قفل محلی است. 59
شکل 4‑3- مثالی از یک سیستم نماینده موبایل با دوچرخه بن بست: چرخه 1 شامل منابع 1، 2، 4 و چرخه دو شامل منابع 2، 4، 5، 3. 63
عنوان:تشخیص بن بست در سیستمهای توزیع شده
قالب بندی:word
تعدادصفحه:62
شرح مختصر:امروزه کمتر سیستمی را می توان یافت که روی یک کامپیوتر متمرکز باشد. رشد روزافزون استفاده از سیستمهای توزیع شده، اهمیت تحقیق و پژوهش در راستای حل موانع و مشکلات موجود در این سیستمها را بیشتر آشکار می نماید. از جمله سیستمهای توزیع شده می توان به بانکهای اطلاعاتی توزیع شده، سیستم عاملهای توزیع شده، و سیستمهای کارگزار موبایل اشاره نمود.
سیستم توزیع شده از مجموعه ای از فرآیندهایی که از طریق ارسال پیام با یکدیگر در ارتباط اند،تشکیل شده است.یکی از مسائل مهم در سیستمهای توزیع شده در راستای مدیریت منابع، تشخیص بن بست توزیع شده است. مدیریت منابع زمانی که فرایندهای درخواست کننده در سطح شبکه در مکانهای مختلف توزیع شده اند،فرایند تشخیص را نسبت به سیستمهای متمرکز، دشوارتر می نماید.
طی دهه اخیر الگوریتم های زیادی برای تشخیص بن بست در سیستم های توزیع شده ارائه شده است که تعداد زیادی از آنها موفق به تشخیص بن بست نمی شوند و یا بن بست هایی را گزارش می کنند که در واقع وجود ندارند و یا اینکه اثبات شده است که نادرست اند.
فهرست:
مقدمه
فصل اول: تشخیص بن بست در سیستمهای توزیع شده
1-1- مفاهیم پایه
1-2- انواع مدلهای بنبست بر اساس سیستم تبادل پیام
1-3- انواع مدلهای بنبست بر اساس نوع درخواست
1-4- شرایط وجود بنبست
1-5- طبقهبندی الگوریتمهای تشخیص بنبست
فصل دوم: مروری بر الگوریتمهای تشخیص بنبست
مقدمه
2-1- نمونهای از الگوریتم متمرکز جهت تشخیص بنبست در سیستمهای توزیعشده
2-1-1- الگوریتم هو- رامامورتی
2-2- نمونهای از الگوریتمهای تشخیص بنبست سلسلهمراتبی
2-2-1- الگوریتم منساس – مانتر
2-2-2- الگوایتم هو – رامامورثی
2-3- نمونههایی از الگوریتمهای توزیعشده
2-3-1- الگوریتم تشخیص بنبست چندی – مسیرا – هاس
2-3-2- الگوریتم محاسبه پخش کردن چندی – مسیرا – هاس
2-3-3- الگوریتم براچا – توگ
2-3-4- الگوریتم منساس و مانتز2-3-5- الگوریتم ابرمارک
2-3-5- الگوریتم ابرمارک
2-3-6- الگوریتم بدالض
فصل سوم: مروری بر الگوریتمهای تشخیص بنبست توزیع شده تعقیب یال
مقدمه
3-1- بررسی الگوریتمهای تشخیص بنبست تعقیب یال
3-1-1- الگوریتم میچل و مریت
3-1-2- الگوریتم سینها و ناتارجان
3-1-3- الگوریتم چودهاری – کوهلر – استنکویچ و توسلی
3-1-4- الگوریتم سینقال و شمکالیانی
3-1-5- تشخیص بنبست توزیع شده و حل آن بر اساس ساعتهای سختافزاری
3-2- ارائه روشی برای حذف بنبست نادرست در الگوریتمهای تشخیص بنبست
الف
3-3- نتیجهگیری
فصل چهارم: الگوریتمهای تشخیص بنبست توزیع شده تحمل خطاپذیر
مقدمه
4-1- مروری بر الگوریتمهای تحملپذیر خطا جهت تشخیص بنبست
4-2- معرفی مدل سیستم تشخیص خرابی بر اساس شاخص زمان اتصال
4-3- یک الگوریتم تشخیص بنبست توزیع شده تحملپذیر خطا
4-4- اثبات درستی الگوریتم
4-5- نتیجهگیری
فصل پنجم: تشخیص و حل بنبست در سیستمهای نماینده موبایل
مقدمه
5-1- معرفی سیستمهای نماینده موبایل(نسل آینده سیستمهای توزیع شده)
5-2- تشخیص بنبست توزیعشده در سیستمهای نماینده موبایل
5-3- معایب الگوریتم اصلی و مشکلات کارایی الگوریتم
5-4- الگوریتم تشخیص بنبست توزیع شده مبتنی بر اولویت بهبودیافته
5-4-1- آنالیز کارایی الگوریتم بهبودیافته
5-4-2- اثبات درستی الگوریتم
5-5- نتیجهگیری
نتیجهگیری
فهرست منابع