بخشی از مقاله
چکیده :
چگونگی یافتن منابع پویا، غیرهمگن و توزیع شده در شبکههای مشبک به صورت شفاف و با دسترسی پایدار برای کاربران یکی از چالشهای مهم در مطالعات مشبک میباشد. در این مقاله ما با استفاده از یک ساختار درختی و اختصاص اعداد اول بهعنوان وزن یالهای درخت، الگوریتم جدیدی ارائه میکنیم که علاوه بر کاهش میزان ترافیک تولیدی هنگام کشف منبع در سیستمهای مشبک - رایانش مشبک - ، تعداد منابع بیشتری را کشف نماید.
در این مقاله ما از یک نقشهبیتی برای نمایش خصوصیات موجود در هر نود استفاده میکنیم. اعداد حاصل شده از ضرب اعداد اول این خاصیت را دارند که در صورت تجزیه همان اعداد مضروب را نتیجه میدهند. ما این خاصیت را خاصیت حافظهای اعداد اول نامگذاری کردهایم. با کاربرد این روش در سیستمهای مشبک ، ما خواهیم توانست بدون مراجعه به نودهای اضافه به صورت مستقیم درخواست منبع را به سمت نودهای حاوی منبع درخواستی ارسال کنیم و درضمن در صورت وجود بیش از یک منبع تمامی آنها را با کمترین هزینه کشف کنیم. ما روش پیشنهادی را با استفاده از نرمافزار متلب شبیهسازی کردهایم.
نتایج شبیهسازی نشان میدهد که روش پیشنهادی از لحاظ ترافیک تولیدی و تعداد منابع کشف شده نسبت به کارهای گذشته وضعیت بهتری دارد.
-1 مقدمه
یک گرید مجموعهای از منابع محاسباتی توزیعشده در یک شبکه محلی یا یک شبکه گسترده است که برای کاربردها یا برنامههای کاربردی به صورت یک سیستم کامپیوتری و محاسباتی مجازی بزرگ به نظر می رسد. دیدگاه اصلی گرید ایجاد یک سازمان مجازی پویا از طریق به اشتراک گذاردن منابع به شیوهای هماهنگ شده و امن میان کاربران میباشد. تفاوت اصلی گرید با اینترنت در این است که اینترنت منابع عظیم اطلاعاتی را میان کاربران به اشتراک می گذارد در حالی که منابع به اشتراک گذاشته شده در محیط گریدصرفاً منابع اطلاعاتی نمیباشد.
این منابع میتواند شامل ماشینها، اطلاعات، برنامههای کاربردی، مجوزهای نرمافزاری، دستگاههای ذخیرهسازی، دستگاههای خاص و... باشد. با توجه به تعدد انواع منابع و وجود خصوصیات فراوان برای این منابع وجود الگوریتمهای کشف منبع قدرتمند و قابل اعتماد در محیط گرید یکی از ملزومات حیاتی این تکنولوژی میباشد. الگوریتمهای بسیاری در زمینه کشف منبع ارائه شدهاست. ولی در حالت کلی میتوان این الگوریتمها را در دو دسته تقسیم بندی نمود:
الف-الگوریتمهای متمرکز، مثل الگوریتمهای سلسلهمراتبی ب- غیرمتمرکز، مثل الگوریتمهای غیرمتمرکز مبتنی بر شبکههای نظیر به نظیر.
هر کدام از این روشها دارای معایب و مزایایی می باشند. به عنوان مثال الگوریتمهای کشف منبع متمرکز یا سلسلهمراتبی قادر به مدیریت موثر منابع در محیطهای گرید پویا با مقیاس بزرگ نمیباشند. روشهای نظیر به نظیر نیز باوجود اینکه میتوانند از لحاظ مقیاسپذیری و پویا نمودن محیط گرید، موثر واقع شوند ولی به صورت کامل نمیتوانند درخواستهایی با خصوصیات چندگانه را پشتیبانی نمایند .
الگوریتمهایی برای کشف منبع در این محیط میتوانند قابل استفاده و کارا باشند که بتوانند با ایجاد کمترین ترافیک ، منبع مورد درخواست کاربر را بدون هدر دادن زمان برای کاربر کشف کنند. همچنین این الگوریتمها باید قادر باشند تغییرات وسیعی را که در منابع این محیط به صورت مکرر اتفاق میافتد را به سرعت تشخیص داده و با هزینه زمانی و مکانی کم و با ایجاد ترافیک پایین، محیط را به روز رسانی کنند.
روشی را نیز که ما در این پایان نامه ارائه دادهایم روش کشف منبعی است که دارای هزینه کشف منبع و به روز رسانی بسیار کمتری نسبت به روشهای قبلی است. ما با استفاده از این روش میتوانیم منابع درخواستی کاربر را با کمترین تعداد گرههای ملاقات شده و با ایجاد کمترین ترافیک در محیط برای کاربر کشف کنیم. نتایج شبیه سازیها نیز این مطلب را به وضوح نشان میدهند.
-2 کارهای انجام شده
برای کشف منبع در شبکههای مشبک روشهای متفاوتی ابداع شدهاست. روش کشف منبع مبتنی بر جداول مسیریابی مجدد - 2008,Karaoglanoglou - از مسیریابها و منابع تشکیل شده است که هر مسیریاب نماینده منابع محلیاش میباشد . در روش کشف منبع بر اساس مقادیر اعتماد، مسیریابها و منابع، سازمانهای مجازی در شبکه مشبک را تشکیل میدهند. روش دیگر روش - Li,2009 - Li است که در آن هر یک از نودها زیر نظر یک سرخوشه قرار میگیرند. به طوری که یک سرخوشه مسئولیت نودهای مشابه را بر عهده دارد.روش بعدی روش کشف منبع با استفاده از نقشه بیتی ردپا Khanli - ، - 2011 میباشد .
این روش شامل 3 بخش است: بخش آمادهسازی درخت، بخش کشف منبع، بخش بهروز رسانی. مشکل اساسی روش ردپا تک منبعه بودن فاز کشف میباشد . به عبارت دیگر زمانی که درخواستی برای منبعی انجام میشود این روش تنها یک منبع را کشف میکند در صورتی که یکی از شاخصههای سیستمهای مشبک کشف چندین منبع برای درخواست کننده میباشد تا کاربر بتوند از میان منابع موجود بهترین منبع را انتخاب نماید. در این مقاله ما این مشکل را برطرف خواهیم کرد.
روشهای نظیر به نظیر غیر ساختار یافته به صورت سیلآسا عمل میکنند که این روش سربار اضافی متحمل شبکه خواهد کرد.در مرجع - Tangpongprasit، - 2005از جدولی که اطلاعات منابع را در خود ذخیره میکند برای یافتن منابع درخواست شده استفاده میکند. از روشهای کشف منبع دیگر میتوان به روشهایی اشاره کرد که از ارتباط معنایی برای کشف منبع در محیط شبکه مشبک استفاده میکنند.
نمونهای از روشهای نامتمرکز دیگری برای کشف منبع در محیط مشبک ، روش موجود در مرجع - Iamnitchi ، - 2001 و روشهایی که از طبیعت الهام گرفته و به هوش جمعی زنبوران و مورچهها وابسته میباشد ، هستند.
-3 روش پیشنهادی
الگوریتمهای کشف منبعی که برای محیطی مانندشبکه-های مشبک، که تعداد منابع و درخواستها بسیار زیاد است، پیشنهاد میشوند باید فاکتورهایی مانند هزینه بسیار پایین در کشف منبع و به روز رسانی، ترافیک تولیدی بسیار کم در مراحل آمادهسازی، کشف و به روز رسانی، مقیاسپذیری، سادگی روش بدون نیاز به محاسبات پیچیده و فضای مورد نیاز کم برای ذخیره اطلاعات را در نظر بگیرند
در روشی که در این مقاله ارائه شدهاست سعی شده این فاکتورها در نظر گرفته شود. این روش با تخصیص عدد اول به عنوان وزن یالهای درخت علاوه بر تسریع عملیات کشف و کاهش ترافیک تحمیلی به شبکه ، تعداد منابع درخواستی کشف شده را افزایش میدهد تا کاربران - درخواستکنندگان منابع - بتوانند از منابع موجود بهترین منبع را که برطرف کننده نیاز درخواست کننده باشد ، انتخاب نمایند.
-3-1نقشه بیتی استفاده شده در این روش
به دلیل اینکه در محیط مشبک منابع مختلفی وجود دارند و هر منبع نیز صفتهای متفاوتی دارد بنابراین باید این منابع و صفتهایشان به گونهای در بستههای پیشنهادی ما مشخص باشند. در این روش تعداد خانههای نقشه بیتی متناسب با انواع منابع موجود در سیستم میباشد به این ترتیب که برای هر صفت منبع ، دو خانه با نام های "مقدار مسیر "و "منبع محلی " در نظر گرفته میشود.به عنوان مثال اگر همانطور که در شکل 1 مشاهده میشود منابع ما
از نوع سیستمعامل باشد و پنج نوع سیستم عامل در محیط موجود باشد ، نقشه بیتی ما دارای 10 خانه خواهد بود
شکل :1 مثالی از نقشه بیتی روش پیشنهادی
خانه "منبع محلی" میتواند فقط مقدار 1 یا 0 داشته باشد که مقدار 1 نشانگر وجود منبع درخواستی در خود گره میباشد و مقدار 0 هم عدم وجود منبع به صورت محلی را نشان میدهد.
خانه "مقدار مسیر" هم نشانگر وجود منبع متناظر در فرزندان گره میباشد . مقدار موجود در این خانه میتواند مقدار "0" - عدم وجود منبع در فرزندان - ، - "1"این مقدار زمانی مورد استفاده قرار میگیرد که حاصلضرب اعداد اول فرزندان از یک مقدار آستانه بیشتر شود . در حالت کلی به معنای وجود منبع در فرزندان گره میباشد - هر عدد اول و یا هر مضربی از اعداد اول باشد. این اعداد اول در حقیقت همان وزن یالهای درخت میباشد . به عنوان مثال شکل1 نشانگر نقشه بیتی برای گرهی میباشد که در محیطی واقع شدهاست که در این محیط پنج نوع سیستم عامل وجود دارد.