معرفي ميانافزارهاي Globus و Gridbus
با سلام به دوستان در قسمت بعد به بحث
می پردازم لطفا با نظراتتان در بهبود وبلاگ کمک کنید
لطفا روی تبلیغات هم کلیک کنید - با تشکر
سایت تخصصی در مورد گرید کامپیوتینگ-grid computing-globus و سیستم های توزیع شده و علوم جديد كامپيوتر
با سلام به دوستان در قسمت بعد به بحث
می پردازم لطفا با نظراتتان در بهبود وبلاگ کمک کنید
لطفا روی تبلیغات هم کلیک کنید - با تشکر
مشتري بايد مناطق مورد نظر خود را که عمليات اخطاردهي در آن مناطق بايد انجام شوند را مشخص نمايد. سپس ميانافزار وظيفهي مديريت آنها اعم از ثبت, فيلتر بندي و اجراي عمليات بر روي سيستمهاي پايگاههاي داده, را دارد. اين کارها در حالت ايدهآل با استفاده از سرويس عمومي رويدادها بر روي گريد قابل پيادهسازي و انجام است.
دادگان در چنين سيستمي ترکيبي خواهد بود از سرويسهاي دادگان پايگاههاي دادهاي که در گريد مجتمع ميشوند که سرويسهايي که به وسيلهي اين پايگاه داده مجازي پشتيباني ميشوند, را توصيف خواهند کرد.
اين سرويس يک واسط عمومي براي زمان بندي منابع در پايگاه داده مجازي را فراهم ميآورد. البته واضح است که به دليل ناهمگوني محيط و برنامههاي زمانبندي مختلف آنها پيادهسازي چنين سرويسي بسيار دشوار است و هنوز راه حل قطعي براي آن ارائه نشده است.
3.2. ابزاري براي دسترسي به پايگاه داده
ايجاد ابزاري براي ارتباط با پايگاههاي داده وظيفهي گروههاي فعال روي GGF DAIS[1] است. پروژهي OGSA-DAI بر طبق پيمان همکاري EPCC,IBM,NEeSC,NWeSC و Oracle در حال توسعه مجموعهاي از ابزارهايي است که اين واسط را پياده سازي کرده در حالي که استانداردهاي تعريف شده را رعايت ميکنند.
هدف اصلي آنها مديريت قابل اطمينان منابع ذخيره سازي داده, منابع چندگانه انعکاسي[2], نام دهي توزيع شده و انتقال مجموعههاي عظيم داده بين مجموعههاي مرتبط ميباشد.
ابزارهاي دسترسي و مجتمع سازي داده اجازه دسترسي به دادههايي را که به وسيلهي DBMSهاي مختلف کنترل ميشوند را ميدهند, در حالي که اين DBMSها به طور خودکار و بدون استفاده از اين ابزار ميتوانند به کار خود به صورت محلي ادامه دهند.
1.3.2. معماري OGSA-DAI
اجزاي موجود در OGSA-DAI در چهار دسته قرار ميگيرند که در ادامه مورد بحث قرار خواهند گرفت.
1. سرويسهاي پايگاه داده [3]گريد : اين سرويسها يا منابع داده ساخت يافته هستند يا يک پروکسي براي منابع داده مثل يک نمونهي واقعي از يک DBMS. در هر دو حالت اين سرويسها دسترسي به منابع داده را از طريق انواع درگاه[4] ممکن ميسازند. براي پشتيباني از مدلهاي مختلف دادهها, زبانهاي پرس و جو, زبانهاي توصيف داده و زبانهاي اختصاصي, اين واسط زبانهاي مختلفي را که عمليات خاصي را روي پايگاههاي داده انجام ميدهند را شامل ميشود. انعطاف پذيري سرويس پايگاه داده گريد تا حدي است که ميتواند دستورات اختصاصي يک DBMS خاص را نيز پياده سازي کند. همچنين ميتواند يک سري از عملياتي را که بايد به صورت دسته اي[5] و روي پايگاههاي داده مختلف انجام شوند را بهينه سازي کند. اما کاربران براي استفاده وسيع تر و مستقل از محيط اجراي اين ابزار ميتوانند کار خود را به SQL 92 و XPath محدود کنند.
2. سازندههاي سرويس پايگاه داده[6] : اين بخش ميتواند به يک نمونه از DBMS متصل شود و يا همراه با يک نوعDBMS يا مدل دادهاي باشد. در حالت اول سرويس پايگاه داده گريدي که به وسيلهي اين بخش ساخته ميشود, براي پايگاه دادهي خود, به عنوان يک پروکسي کار ميکند. در حالت دوم اين سازنده سيستمهاي ذخيره سازي دادهاي را فراهم ميکند که قابل استفاده براي پايگاه داده مانند Oracle 9i يا مدل دادهاي مشخص شده مثل XML باشد. نتيجه ميتواند يک GDSF,که پروکسيهاي لازم براي تبادل ارتباط با پايگاه داده را فراهم ميکند, باشد يا يک سرويس پايگاه داده گريد که اجازه دسترسي مستقيم به پايگاه داده مورد نظر را ميدهد باشد. اين واسط کنترل و انعطاف پذيري بسيار بالايي را براي تعريف واضح زبان استفاده شده ميدهد.
3. ابزارهاي حمل و نقل اطلاعات گريد [7]: اين ابزارها يک نمونهي انتزاعي را بر روي سيستمهاي موجود براي انتقال اطلاعات مانند GridFTP و MPICH-G ايجاد ميکنند تا استفاده از آنها را عموميت بخشند. به طور کلي دو نوع واسط تعريف ميشود. يکي به عنوان توليد کننده و ديگري مصرف کننده داده. يک GDTV ميتوانند به عنوان فراهم کنندهي اطلاعات براي يک عمليات خاص به کار رود, براي مثال در بارگذاري حجم بسيار بالاي داده و يا عمليات بر روي دادههاي توزيع شده. همچنين ميتواند به عنوان انتقال دهندهي داده از يک عمليات به پايگاه داده استفاده شود, مانند برگرداندن نتيجهي يک عمليات محاسباتي به پايگاه داده براي ذخيره سازي آن.
4. دفتر ثبت سرويسهاي داده گريد [8]: در اين بخش سرويس پايگاه داده گريد و GDSFها ثبت ميشوند تا هنگامي که کاربران به آنها نياز دارند با جستجو کردن در GDSR امکان دستيابي به منبعي با مشخصات مورد نظر براي آنها فراهم شود. GDSR در واقع نوع خاصي از دفاتر ثبت در OGSA است که به پايگاههاي داده و سرويسهاي آنها اختصاص يافته است. به همين دليل دادگاني که اين مکانها ثبت ميشوند با دادگاني که در ساير نرمافزارهاي کاربردي ذخيره ميشوند متفاوت هستند. براي مثال موارد زير که مختص پايگاه داده هستند ذخيره ميشوند.
· نوع مدل دادهاي براي مثال رابطه اي, XML و غيره
· زبانهايي که به وسيلهي يک سرويس پايگاه داده گريد پشتيباني ميشوند مانند SQL 92, XPath, XQuery و غيره
· عملياتهاي مورد پشتيباني مانند پرس و جو, حذف, ويرايش, درج, بار گذاري انبوه و غيره
· وسيله انتقال داده پشتيباني شده GDTV
· منابع و محدوديتهاي آنها
· ظرفيت و کارايي منابع
· سياستهاي دسترسي
در حالت ايدهال يک واسط کاربري در اختيار کاربر قرار خواهد گرفت تا در آن اقدام به ثبت پرسوجوي خود نمايد. سپس يک برنامه مترجم و بهينه ساز آن درخواست را فهميده و در سرتاسر گريد توزيع خواهد کرد و در نهايت نيز نتايج بدست آمده از آنها را باهم ترکيب کرده و به کاربر نشان خواهد داد. باز هم روش مبتني بر سرويس تعريف شده در بخش قبل به کمک ما خواهد آمد اما کماکان نميتواند سرويسهاي سطح بالا ارائه کند. کارهاي قبلي در رابطه با پرسوجوهاي توزيع يافته کاملا مشابه مورد معادل در گريد هستند و ميتوان از آنها در انجام اين کار استفاده کرد. بدين ترتيب که هنگامي که يک درخواست پرسجو ترجمه ميشود عبارت معادل آن به منابع مختلف ارسال ميشود تا به آنها پاسخ داده شود. سپس پاسخها با توجه به زمان پاسخ گويي تعيين شده و هزينهي قابل پرداخت براي مشتري, انتخاب ميشوند و به کاربر برگردانده ميشوند. براي مثال اگر يک عمليات ترکيب[1] به عنوان گلوگاه مطرح شود, در حالي که بازدهي يکي از عوامل موثر در نتيجهي کار است بايد از دو منبع به صورت موازي استفاده کرد تا کارايي بيشتري داشته باشد.
تراکنشهاي سادهاي که در بخش قبل تعريف کرديم نيازمنديهاي پايهي ما در اين حالت را نيز پشتيباني ميکند در حالي که براي پشتيباني کامل و پيشرفتهي تراکنشهاي گريد هنوز مدل کاملي ارائه نشده است.
اين کار در سيستم ميتواند با استفاده از ابزاري که يک فايل حجيم را به فايلهاي کوچکتر تقسيم کرده و در اختيار پايگاههاي داده مختلف قرار ميدهد, انجام شود.
بانک اطلاعاتي گريد در واقع مجموعهاي است از يک يا چند بانک اطلاعات توزيع شده ناهمگون, داراي تکرار که از طريق سيستم گريد با يکديگر تعامل و ارتباط منطقي پيدا ميکنند و به سادگي نميتوانند سرويسهاي سراسري شفاف ارائه کنند.
به بياني ساده بانک اطلاعات گريد بسيار شبيه بانک اطلاعات چندگانه است با اين تفاوت اصلي که در بانک اطلاعات چندگانه به هر حال يک کنترل کننده مرکزي عملکرد سيستم را کنترل ميکند اما در بانک گريد چنين کنترل کنندهاي وجود ندارد[9].
1.2. قرار دادن پايگاههاي داده در معماري گريد
در اين قسمت سعي بر توصيف چارچوبي داريم که پايگاههاي داده را به معماري گريد بيافزايد به طوري که نيازمنديهاي خاص پايگاههاي داده را علاوه بر نيازمنديهاي گريد پشتيباني کند.
اين چارچوب براساس سرويس[1] طراحي شده است. بدين صورت که هر سيستم پايگاه دادهاي که خود را با گريد منطبق کرده است, ليستي از سرويسهايي را که پشتيباني ميکند به گريد ميدهد که بر اساس استانداردهاي گريد معرفي ميشوند. البته واضح است که تعريف استانداردي که تمام سرويسهاي ممکن را پشتيباني کند غير ممکن است زيرا پايگاههاي داده خاصي وجود دارند که دستورات خاصي را شامل ميشوند که در هيچ بانک اطلاعاتي ديگري وجود ندارد. در چنين حالتي بايد به سيستم اجازه داده شود که سرويسهاي مورد نظر خود را براي گريد تعريف کند. يکي از مزاياي استفاده از سيستم مبتني بر سرويس اين است که پايگاه داده ميتواند در بخش مربوط به معرفي دادگان خود تمام سرويسهايي را که ميتواند پشتيباني کند را مشخص نمايد تا در هنگام کار با ساير پايگاههاي داده به مشکلي برخورد نداشته باشد.
در چنين گريدهايي, صاحب بانک اطلاعاتي مشخص مينمايد که کدام سرويسها در گريد قابل استفاده باشند.
حال به بررسي تک تک سرويسهاي مشخص شده در اين شکل ميپردازيم:
اين سرويس دسترسي به دادگان فني پايگاه داده و سرويسهايي که توسط آن پشتيباني ميشوند را فراهم ميآورد. براي مثال اطلاعات مربوط به نام فيزيکي و منطقي بانک اطلاعاتي, مالکيت آن, تعداد نسخهها و نحوهي دسترسي به اطلاعات آن در اين سرويس آورده خواهد شد.
همچنين دادگان مربوط به توصيف يک سرويس تمام اطلاعات دربارهي کيفيت سرويس, نحوه تبادل اطلاعات آن و تمام قابليتهاي آن را شامل ميشود. اين اطلاعات توسط توسعهدهندگان نرمافزارهاي کاربردي گريد و ابزارهايي که نياز به دانستن نحوهي تبادل داده با پايگاههاي داده را دارند استفاده ميشود. اين داده براي نرمافزارهاي کاربردي پويا بسيار حائز اهميت ميشوند. در يک دسترسي دو مرحلهاي به بانک اطلاعاتي (ابتدا دسترسي به منابع گريد و سپس دسترسي به خود پايگاه داده از طريق DBMS آن) نياز است که يک سري عمليات ويژه با استفاده از اين دادگان قبل از دسترسي به پايگاه داده انجام شود تا بانک اطلاعاتي مزبور به منابع گريد اضافه شود.
با وجود اينکه هستهي تمام زبانهاي پرس و جو يکسان است, اين زبان به طور خاص به پايگاه دادهاي که بر روي آن قرار ميگيرد وابسته است. بنابراين در سرويسي که بر روي يک پايگاه داده قرار ميگيرد نوع زبان پرس و جوي قابل پشتيباني بايد مشخص شود. براي زمان بندي کارها و نيز ايجاد بستري براي بهينه سازي توزيع منابع, نياز به فرايندي که تخمين زماني از اجراي پرس و جوها را به سيستم بدهد بسيار احساس ميشود.
واضح است که سرويسي که براي انجام پرس و جوها به خدمت گرفته ميشود بايد از امکانات بسياري از ديگر نرمافزارها براي تبادل داده با ساير بخشهاي گريد استفاده کند تا بتواند نتايج را به نقاط مختلف گريد انتقال دهد.
آخرين قابليتي که بايد وجود داشته باشد, امکان انتقال نتيجه به هر نقطهاي به جز فرستندهي درخواست است. اين قابليت باعث ميشود سيستم از حالت خادم-مشتري صرف خارج شده و امکاناتي براي انجام تعاملات پيشرفته را داشته باشد.
اين عملياتها قابليت انجام تراکنش بر روي يک پايگاه داده تنها و نيز توزيع شده در سطح گريد را ممکن ميسازد. انواع مختلف تراکنش وجود دارد که به وسيلهي DBMSهاي مختلف پشتيباني ميشوند براي مثال در بعضي از آنها تراکنشهاي تودرتو گنجانده شده است, در حالي که ساير پايگاههاي داده آن را پشتيباني نميکنند. به همين دليل سرويس دادگان تعريف شده بايد تعريفي از نوع تراکنش قابل پشتيباني ارائه دهد.
4.1.2. بارگذاري با حجم زياد[2]
پشتيباني از بارگذاري دادههاي حجيم در پهنهي گريد يکي از مهمترين نيازهاي پايگاههاي داده گريد ميباشد که براي برخي نرمافزارهاي کاربردي عاملي حياتي محسوب ميشود. به عبارت ديگر سرويس بايد قادر باشد که با استفاده از مکانيزمهاي انتقال داده و بهينه سازي آنها حجم بسيار زياد داده را در سرتاسر گريد منتقل کند.
اين مکانيزم به مشتريها اجازه ميدهد تا نواحي مورد علاقهي خود در گريد را انتخاب کنند و هنگامي که تغييري در آنها به وجود آمد پيام اخطاري مبني بر تغيير اين ناحيه ارسال شود. پشتيباني از اين سرويس خود شامل دو بخش ميشود که در بخش اول کاربر بايد اعلام نمايد که به چه بخشي علاقه مند است براي مثال درج, حذف, به روز رساني و غيره و در بخش دوم بايد متدي را پياده سازي نمايد که عمليات مربوط به آن تغيير را انجام دهد. پشتيباني از چنين مکانيزمي در مواردي که DBMSهاي مربوطه از زبان محلي مشترکي مثل محرکها استفاده ميکنند بسيار ساده تر خواهد شد. در چنين سيستمي, هنگامي که يک پيام اخطار توليد ميشود به سرويس رويداد گريد عمومي ارسال ميشود تا تصميم گرفته شود که چه عملياتي بر روي آن بايد انجام شود و سپس اين سرويس در ادامهي کار خود عمليات مورد نظر را انجام ميدهد؛ براي مثال يک ايميل به شخص خاصي ارسال ميکند و يا عمليات خاصي را انجام ميدهد.
اين سرويس به کاربران اجازه ميدهد که استفاده از پايگاه داده خود را زمان بندي کنند که در اين حالت پهناي باند شبکهاي هم که به اين پايگاه داده متصل است بايد از پيش تخصيص داده شود. از آنجايي که دسترسي اختصاصي به يک پايگاه داده غير عملي است مکانيزمهايي لازم است که بر اساس آن منابعي مانند حافظه, پردازنده و ديسک در لحظاتي خاص در اختيار گريد قرار گيرد تا به انجام درخواست رسيده همت گمارد.
ادعايي بر اين مبنا وجود ندارد که سرويسهاي ارائه شده در اين بخش تماما نيازهاي گريد و پايگاههاي دادهي آن را پشتيباني ميکنند. بلکه اين سرويسها فقط بنابر تجربيات سيستمهاي مبتني بر پايگاه داده طراحي شدهاند و واضح است که با گسترش گريد نياز به توليد سرويسهاي بيشتري احساس خواهد شد. سرويسهايي که در اين بخش نام برده شدند تقريبا سطح پايين و عمومي هستند و سرويسهاي سطح بالاتر در نرمافزارهاي کاربردي گريد قرار خواهند گرفت.
2.2. مجتمع کردن پايگاههاي داده در گريد
يکي از مزاياي مهم گريدهاي داده امکان مجتمع سازي منابع توزيع شده است. در اين بخش نشان خواهيم داد سيستم مبتني بر سرويس بخش قبل چگونه در اين مجتمع سازي به ما کمک خواهد کرد.
در روشي که ارائه خواهيم کرد از يک ميانافزار مبتني بر گريد استفاده خواهيم کرد که به وسيلهي آن يک پايگاه داده مجتمع شدهي مجازي خواهيم داشت که از اين پس نرمافزارهاي کاربردي به جاي استفاده مستقيم از پايگاههاي داده با اين ميانافزار به تعامل خواهند پرداخت. با چنين کاري يک سيستم مديريت پايگاه داده مجازي خواهيم داشت که دقيقا همان سرويسهايي را که در بخش قبل اشاره کرديم پشتيباني ميکند اما در واقع هيچ نوع دادهاي را در خود ذخيره نمي کند و از ساير منابع ذخيره سازي استفاده ميکند. براي انجام فعاليت بر روي چنين پايگاه داده مجتمع شدهي مجازي از يک ميانافزار سرويسهاي مجتمع[5] استفاده ميشود که با پايگاههاي داده مستقيما تبادل داده انجام ميدهد
حالت ايده آل براي ساخت چنين سيستمي استفاده از ابزاري است که بتواند مجموعهاي از پايگاههاي داده را بگيرد و با استفاده از آنها يک پايگاه داده مجازي بسازد. حال بايد به توصيف پيامدهاي چنين ابزاري بپردازيم.
روش مبتني بر سرويسي که در بخش قبل بررسي کرديم با قرار دادن استانداردهايي بر تعريف سرويسها در راه مجتمع کردن پايگاههاي داده به ما کمک بسياري خواهد نمود. هرچند به علت ناهمگوني منابع امکان استانداردسازي کامل وجود ندارد, اما اين ابزار ميتواند به شکل زير اقدام به ساختن پايگاه داده مجازي نمايد:
اين ابزار, براي هر سرويس بايد در تمام دادگان پايگاههاي داده موجود در گريد به جستجو پردازد تا قابليتهاي آنان را شناسايي کند. سپس با اطلاع از ميانافزار مورد استفاده و امکاناتي که توسط آن قابل استفاده هستند گزينههاي مختلف براي مجتمع سازي سرويسها به دست ميآيند. اگر تعداد گزينهها بيشتر از يک باشد يکي از آنها انتخاب شده و در ليست سرويسهاي گريد قرار ميگيرد ولي اگر تعداد گزينهها صفر باشد, به کاربر اطلاع داده ميشود که عمليات مورد نظر قابل انجام نيست و بايد نمي تواند از سرويس مورد نظر استفاده کند.
پياده کردن تمام سرويسهايي که در بخش قبل اشاره شد پيامدهاي خاصي را به دنبال خواهد داشت که در ادامه توضيح داده خواهند شد.
[1] Query
[2] Bulk Loading
[3] Notification
[4] Scheduling
[5] Service Federation Middleware
توجه ويروس خطرناك oslandoاین مطلب توسط دوست من آقای دکتر مهدی بهلولی برای من فرستاده شد و من آن را برای اطلاع درون وبلاگ قرار می دهم.
http://www.tabesh.net/?artid=408
دیروز از طرف کمپانی McAfee AntiVirus ویروس بسیار خطرناکی شناسایی و در سایتش اعلام شده که تاکنون در عرض فقط و فقط 1 روز طبق گفته مسئولین این شرکت بیش از 10 هزار نفر آلوده به این ویروس شدن و تمام اطلاعاتی که روی درایو C اونها بوده به کلی نابود شده.نام این ویروس : oslandoنوع عملیات تخریبی : سخت افزاریروش تخریب : این ویروس با جای نشین کردن یک خط کد در فایل kernell داخل پوشه system باعث تخریب سکتور "zero" هارد کامپیوتر شما میشود و بعد از اولین خاموش روشن کردن sector های درایو C محلی که ویندوز شما در آن نصب است را burn میکند (شدت این عمل از format کردن هم جدی تر است به طوری که طبق گفته مک آفی این ویروس توسط cia جهت نابود سازیه کامل اطلاعات hard disk استفاده میشده و اصلا قابل بازیابی نمی باشد)چگونه به این ویروس آلوده میشویم : بسیار ساده , دقیقا همینطوری کامپیوتر من به این ویروس آلوده شد , " با باز کردن یک نامه مشکوک و دانلود فایل موجود در اون نامه " که بدیش اینه که از طرف دوستتان برای شما ارسال میشود بدون اینکه او در جریان باشد (مثل ارسال pm های آلوده به ویروس در yahoo messenger که از طرف فرد آلوده به ویروس برای قربانی ارسال میشود)اطلاعات بیشتر در مورد این ویروس که همونطوری که میبینین مورد تایید سایت YAHOO هم قرار گرفته رو حتما مشاهده کنین , راه های پاکسازی (قبل از restart کردن ) و پیشگیری (و تست آلودگی/عدم آلودگی) به این ویروس همه به طور کامل تشریح شده :http://www.yahoo. com/story. virus%pOSLANDO? t=13294053idbfgروش های جلوگیری از آلودگی به این ویروس :1- طی چند روزه آینده هیچ فایل پیوست شده یا هیچ ایمیلی را تحت عنوان postcard باز نکنید. حتی اگر این نامه از طرف دوستتان برای شما ارسال شده باشد.2- همین حالا با forward این نامه به دوستانتان کامپیوتر آنها را از یک مشکل خیلی جدی نجات دهید. 20 بار دریافت کردن این نامه بهتر از آلودگی دوستتان به این ویروس است در حالی که شما میدانستید ولی دریغ کردید و به او نگفتید.ویروس فوق حتی توسط خبرگزاری CNN به عنوان مخرب ترین ویروس کامپیوتری اعلام شده.این ویروس دیروز توسط کمپانی McAfee شناسایی شد و تا کنون راهی جهت repair آن پیدا نشده است.
----------------------------------------------------------
Mahdi Bohlouli
PhD Student in Computer Science
Institute For Informatics
University of Potsdam
Room 2.19 - House 4
August-Bebel-Street 89
14482 Potsdam - Germany
http://www.cs.uni-potsdam.de/~bohlouli/
خداوند به هر پرندهای دانهای میدهد، ولی آن را داخل لانهاش نمیاندازد
درباره درخت، بر اساس میوهاش قضاوت كنید، نه بر اساس برگهایش!!!
انسان هیچ وقت بیشتر از آن موقع خود را گول نمیزند كه خیال میكند دیگران را فریب داده است
كسی كه دو بار از روی یك سنگ بلغزد، شایسته است كه هر دو پایش بشكند
هركه با بدان نشیند، اگر طبیعت ایشان را هم نگیرد، به طریقت ایشان متهم گردد
كسی كه به امید شانس نشسته باشد، سالها قبل مرده است
اگر جلوی اشتباهات خود را نگیرید، آنها جلوی شما را خواهند گرفت
اینكه ما گمان میكنیم بعضی چیزها محال است، بیشتر برای آن است كه برای خود عذری آورده باشیم
پی بردن به این راز زندگی ات را تغییر خواهد داد ...
راز 10/90 باور نكردنی است ! تعداد اندكی از مردم از آن با خبرند و آنرا در زندگی روزمره به كار میبرند.
هر روز میلیونها نفر به ناحق از فشارها، مشكلات و رنجهایی در عذابند ... این آدمها چندان موفق بنظر نمیرسند.
روزهای بد، روزهای بدتری بدنبال خواهد داشت. بنظر میآید دائما وقایع وحشتناكی در حال وقوع است، استرس همیشه وجود دارد، از خوشی خبری نیست و روابط بین افراد در حال از هم پاشیده شدن است.
بهترین ساعات عمر با نگرانی ها و دلمشغولی های بیمورد تلف میشود ... دوستی ها از بین می روند و زندگی بیرحم و كسالت آور بنظر می رسد ... و امكان لذت بردن از زندگی وجود ندارد.
جملات بالا توصیف حالات روحی شما نیز بود؟ اگر اینطور است ناامید نشوید ... شما می توانید به انسانی كاملا متفاوت تبدیل شوید ... فقط كافیست به راز 10/90 پی ببرید و از آن در زندگی تان استفاده كنید ...
این راز میتواند زندگیتان را تغییر دهد ...
این راز چیست؟
10% زندگی همه ما اتفاقاتی است كه میافتد ...
اما 90% بقیه چه؟
90% بقیه هم عكس العمل هایی هستند كه ما به آن 10% اتفاقات رخ داده، نشان می دهیم.
این یعنی چه؟
در واقع هیچ كدام از ما كنترلی روی 10% اتفاقاتی كه برایمان میافتد نداریم. ما نمیتوانیم جلوی خراب شدن اتومبیل مان را بگیریم، ممكن است هواپیمایمان دیر برسد و تمام برنامه های ما به هم بریزد، و یا ممكن است ماشین دیگری در ازدحام و شلوغی خیابان راه ما را بند بیاورد ... بله این عكس العملهای ما است كه 90% بقیه اتفاقات را شكل میدهد ... تو هیج كنترلی روی چراغ راهنمایی رانندگی نداری كه كی قرمز است یا كی سبز میشود اما میتوانی عكس العمل خود را در مورد چراغ قرمز كه طولانی بنظر میرسد كنترل كنی ... با كنترل خودت در مواقع لازم مانع از مورد تمسخر قرار گرفتن توسط دیگران خواهی شد.
مثالی میزنم :
تو در حال صرف صبحانه با خانواده هستی كه دست دختر كوچكت به فنجان چای میخورد و همه آن روی لباست میریزد! خوب تا اینجا كنترل اوضاع دست تو نبود و تو نمیتوانستی مانع از وقوع آن شوی، اما خوب دقت كن :
اینكه چه اتفاقاتی بعد از آن بیفتد كاملا در دست توست ...
تو عصبانی می شوی، شاید فحش هم بدهی و به شدت دخترت را برای ریختن چای روی بلوزت دعوا میكنی. دخترت گریه میكند. تو هم بعد از دعوا كردن او به طرف همسرت برمیگردی و از او هم برای اینكه فنجان چای را درست لبه میز گذاشته است، انتقاد میكنی. درگیری لفظی كوتاهی بین شما پیش میآید. تو با عصبانیت به طبقه بالا میروی بلوزت را عوض میكنی و بعد با عجله پایین میآیی و می بینی كه دخترت در حالی كه هق هق میكند هنوز در حال خوردن صبحانه اش است، پس هنوز آماده رفتن به مدرسه نیست، بنابراین كمی دیر میجنبد و از سرویس مدرسه جا میماند. همسرت هم دیر كرده است و باید هر چه سریعتر خود را به محل كارش برساند. حالا این تو هستی كه باید با عجله ماشین را روشن كنی و دختر كوچكت را به مدرسه برسانی. چون دیرت شده است مجبوری با سرعت بیشتر از حد مجاز رانندگی كنی. پس از 15 دقیقه تأخیر و یك قبض جریمه بالاخره به مدرسه میرسی. دخترت كه خیلی عجله دارد بدون خداحافظی به طرف ساختمان مدرسه میدود ... حالا تو با 20 دقیقه تأخیر به اداره میرسی، ولی تازه میفهمی كه كیفت را با خودت نیاورده ای. روزت را خیلی بد شروع كرده ای و با گذشت ساعت ها میبینی كه اوضاع دارد بدتر و بدتر هم میشود ... زمان كار تمام شده است و وقتش است كه به خانه برگردی. وقتی به خانه میرسی متوجه میشوی اشكالی در روابط تو با همسر و دخترت بوجود آمده است ...
میدانی چرا؟
بخاطر عكس العملهایی كه امروز صبح به آن اتفاق نشان دادی ...
خوب فكر میكنی چرا چنین روز بدی را پشت سرگذاشتی ...
1ـ آیا فنجان چای باعث آن شد؟
2ـ آیا دخترت مقصر بود؟
3ـ آیا پلیس و جریمه ای كه شدی این اوضاع را پیش آورد؟
4ـ آیا خودت اوضاع را به این شكل درآوردی؟
بله البته كه پاسخ 4 درست است.
تو هیچ كنترلی بر ریخته شدن فنجان چای نداشتی اما عكس العمل تو در طول 5 دقیقه پس از آن اتفاق بود كه تمام روزت را خراب كرد ... اما آنچه كه میتوانست و درست بود كه اتفاق بیافتد تا روز خوبی در انتظار تو باشد چه بود؟
فنجان چای روی بلوزت میریزد ... دخترت میخواهد بزند زیر گریه، اما تو خیلی آرام میگویی : " اشكالی ندارد عزیزم، فقط دفعه بعد دقت بیشتری بكن تا فنجان چای را نریزی". حوله ای بر میداری و به طبقه بالا میروی. بعد از عوض كردن بلوز، كیف ات را برمیداری و سریع به طبقه پایین میآیی. از پنجره میبینی دخترت در حالیكه دارد برای تو و مادرش دست تكان میدهد، سوار سرویس مدرسه شد. قبل از رفتن به محل كارت با همسرت خداحافظی میكنی. پنج دقیقه هم زودتر به اداره میرسی و با خوشرویی شروع به احوالپرسی با همكاران میكنی. رئیس به تو میگوید كه روز خوبی در پیش خواهید داشت.
دیدی كه این دو عكس العمل متفاوت به یك اتفاق چه نتایج متفاوتی بدنبال داشت!!!
دو سناریوی مختلف كه شروعی مشابه داشتند به دو گونه كاملا ( برعكس ) متناقض پایان یافتند. چرا؟
چون عكس العمل تو متفاوت بود .
همانطوركه گفتم، ما هیچ كنترلی روی10% از اتفاقاتی كه برایمان میافتد نداریم، اما 90% بقیه را با عكس العمل خودمان نسبت به آن اتفاقات شكل میدهیم.
برای بكار بردن راز 10/90 چند راه پیشنهاد میكنم :
اگر كسی حرف بدی در مورد تو به زبان آورد از كوره در نرو، بگذار نارا حتی ات فروكش كند، البته میتوانی بگذاری كه آن حرف تاثیر ناخوشایندی بر تو بگذارد اما با نشان دادن عكس العمل مناسبی به آن، میتوانی از خراب شدن بقیه روزت جلوگیری كنی.
یك عكس العمل بد و نامناسب به اتفاقی كه افتاده است، میتواند باعث از دست دادن دوستانت، اخراج شدنت و مورد فشار قرار گرفتنت شود.
اگر راننده ای در خیابان جلوی تو بپیچد و راه تو را بند آورد، با عصبانیت روی فرمان ماشین میكوبی! آیا فحش میدهی و یا فشار خونت خیلی سریع بالا میرود! و یا اینكه پیاده می شوی و با آن راننده خاطی گلاویز میشوی! برای چه كسی اهمیت دارد كه 10 دقیقه دیرتر به اداره برسی؟ چرا اجازه میدهی روزت خراب شود؟
راز 10/90 را همیشه به یاد داشته باش و نگرانی را از خودت دور كن ...
وقتی به تو خبر میدهند كه از محل كارت اخراج شده ای چرا میگذاری خوابت با افكار پریشان به هم بریزد و عصبی تر شوی؟ بهتر نیست بجای اینكه انرژی و وقتت را صرف نگران شدن بكنی، از آن برای پیداكردن كار جدیدی استفاده كنی؟
وقتی هواپیما دیر میرسد و تمام برنامه هایت بهم میریزد چرا عصبانیت خود را سر كمك خلبان خالی میكنی؟ او كه هیچ كنترلی بر اوضاع نداشته است، از این فرصتی كه تا رسیدن هواپیما باقی است میتوانی برای مطالعه، آشنا شدن با سایر مسافرین و ... استفاده كنی.
با تحت فشار قرار دادن خود در چنین مواقعی فقط باعث میشوی اوضاع بدتر و بدتر شود ...
حالا دیگر به راز 10/90 پی برده ای، آنرا در كارهای روزانه ات به كار ببند و از نتایج شگفت انگیزی كه به ارمغان میآورد لذت ببر.
در بحث های بعد در مورد پايگاههاي داده گريد
توضیح می دهم و مطالبی میگذارم
لطفا روی بنر های تبلیغاتی هم کلیک کنید
اين معماري, تکنولوژي گريد را به صورت مجموعهاي از سرويسهاي گريد (GS) نشان ميدهد که خود براي اينکه نيازمنديهاي گريد را برطرف کند, يک نمونهي توسعه يافته از وب سرويس است. دليل اصلي توسعهي سرويس وب به سرويس گريد مديريت حالات مختلف, هويت شناسي[2], جلسهها[3] و سيکلهاي حيات آنها ميباشد.
چنين چارچوبي بايد نيازمنديهاي سازمانهاي مجازي و گريد را به طور کامل برطرف کند. براي مثال بايد قابليت جابجايي و همکاري منابع ناهمگون را فراهم آورد. همچنين بايد سرويسهاي متداول نظير اعتبارسنجي و تبادل داده را انجام دهد.
در واقع OGSA محصول ترکيب معماري انعطاف پذير و جامعيت پوياي سرويسهاي وب و معماري مقياس پذير و توزيع شدهي گريد است. در ادامه به بررسي سرويسهاي وب و OGSA خواهيم پرداخت.
سرويسهاي وب معماري مجتمعي هستند که طراحي شده اند تا به سيستمهاي اطلاعاتي که به صورت مستقل اجرا ميشوند اجازه دهند که با يکديگر تبادل اطلاعات داشته باشند. تعريف آنها در استانداردهاي W3C به طور کامل بيان شده است و شرکتهاي بزرگي مثل IBM, Oracle و Microsoft به طور فعال بر آن نظارت دارند.
تعريف سرويس وب به اين صورت ميباشد:
"وب سرويس يک بستر و يک بخش نرمافزار مستقل از پياده سازي است که ميتواند
· به وسيلهي زبان توصيف سرويس تعريف شود
· توسط بخش ثبت سرويسها ثبت شود.
· از طريق يک مکانيزم استاندارد درک و فهميده شود(هنگام اجرا يا طراحي)
· از طريق يک واسط برنامه نويسي نرمافزاري(API) و معمولا بر روي شبکه فراخواني شود.
· با ساير سرويسها ترکيب شود"[8]
سرويسهاي وب به دو دليل براي ما حائز اهميت است:
1. وظيفهي آنها در متصل کردن چند منبع اطلاعاتي به هم ديگر مشابه چيزي است که ما در گريد به آن نياز داريم. اين به هم پيوستگي براي بسياري از سيستمهايي که قصد استفاده از بستهها و اجزاي مختلف را دارند اهميت ويژهاي دارد.
2. پشتيباني شرکتهاي مختلف از استانداردهاي سرويسهاي وب, زبانهاي توصيفي, بسترها و ابزارهاي توسعهي نرمافزاري زيادي را در اختيار قرار ميدهد. اين امکانات با در اختيار قرار دادن يک چارچوب استاندارد براي توصيف و ترکيب کردن سرويسهاي وب و سرويسهاي گريد به سرويسهاي گريد اجازه توسعهي سريع را ميدهد.
يکي از مشخصههاي مهم سرويسهاي وب وجود زبانهايي است که براي توصيف جنبههاي مختلف بخشهايي است که بايد با هم مجتمع شوند و اين زبان کاملا مستقل از پياده سازي و تکنولوژيهاي محيط است. اين زبانها به طور کلي به وسيلهي XML Schema پياده سازي ميشوند. براي مثال WSDL[4] براي توصيف وظايف و واسطههاي سرويسهاي وب به کار ميرود وWSIL[5] براي پشتيباني سيستمهاي ساده ثبت و بازيابي سرويسها به کار ميرود. درحال حاضر تعداد بسياري پيشنهاد براي بازنگري اين زبان وجود دارد تا امکاناتي مثل کيفيت سرويس, وضعيت سرويس و انواع داده پيچيده تري را به اين زبان اضافه گردد.
2.6.1.سرويس OGSA
سيستمي که بر اساس OGSA طراحي ميشود ترکيبي از سرويسهاي گريد خواهد بود. هر سرويس گريد يک سرويس وب است که به وسيله WSDL تعريف ميشود. نمونههاي توسعه يافتهاي از WSDL در حال تعريف شدن هستند تا مشخصههاي خاص گريد را به اين زبان بيافزايند. اين نسخه توسعه يافتهي WSDL به نامGSDL [6] معروف است.
يک سرويس گريد بايد واسطههاي معيني را پياده سازي کند, سيکل حيات مشخصي داشته باشد و در اين سيکل حيات به وسيلهي GSH[7] به طور يکتا قابل شناسايي باشد. مديريت سيکل حيات شامل يک مدل مرحلهاي است تا بتواند بر روي ملزومات سيستم محدوديت قرار دهد, هنگامي که اختلال جزيي[8] در سيستم رخ دهد از بروز نابودي دادههاي دائمي جلوگيري کند و استقلال سيستم را تضمين کند.
يک سرويس گريد ممکن است که بعضي از مشخصههاي خود را از طريق عناصر داده سرويس (SDE) به نمايش گذارد. اين عناصر داده سرويس ميتوانند ايستا يا پويا باشند. آنهايي که ايستا هستند در طول سيکل حيات سرويس گريد ثابت ميمانند. اطلاعات اين عناصر داده سرويس با استفاده از WSDL قابل فهم خواهد بود. آنهايي که پويا هستند براي نمايش وضعيت سرويس گريد به کار ميروند. از اين عناصر داده سرويس معمولا براي آناليز سرويسهاي گريد استفاده ميکنند. براي مثال با استفاده از ابزارهاي خاصي کارايي سرويس, شناسايي خطاهاي پيش آمده و آناليز پيشرفت سرويس, محاسبه و تعيين ميشود. عناصر داده سرويس با استفاده از XML Schema پياده ميشوند و به سادگي قابل پرس و جو[9] ميباشند.
در عناصر داده سرويس مکانيزمهاي اخطار يک رويداد[10], ثبت و انتشار پشتيباني شده است و توابعي که در واسطههاي عناصر داده سرويس وجود دارند فقط اعتبار سنجي و ثبت و درک سرويسها ميباشد.
3.6.1. تاريخچه OGSA
نويسندگان OGSA انتظار داشتند که اولين پياده سازي OGSA که بر روي Globus Toolkit 3 صورت گرفت تمام نيازمنديهاي اين نرمافزار را برطرف کند و تمام امکاناتي را که Globus Toolkit 2 فراهم کرده بود را نيز داشته باشد و در واقع نيز OGSA فرصت خوب و مناسبي براي طراحي دوباره تکنولوژيGlobus بود. اگر چه اين روش بسيار مفيد خواهد بود ولي تغييرات زيادي بايد از نظر معنايي در سيستم داده شود.
به خاطر اينکه سرمايه گذاريهاي بسياري بر روي گريدهاي قديمي انجام شده بود, به وجود آوردن يک تغيير اساسي در ساختار گريد باعث ايجاد نگراني در ميان اين شرکتها گشت. به همين دليل بايد نيرويي آنها را وادار ميکرد که از اين تکنولوژي جديد استفاده کنند و آن را به عنوان پايه براي تکنولوژيهاي بعد گريد در نظر گيرند. بحث بر پذيرفتن OGSA به عنوان پايهي تکنولوژيهاي آيندهي گريد به سه فاکتور اساسي وابسته ميباشد: سياسي, بازرگاني و تکنولوژيکي.
از نظر سياسي, براي اينکه اين تکنولوژي فراگير باشد, کيفيت سرويس بالايي داشته باشد و تمام شرکتهايي که بر روي گريد کار ميکنند از اين استاندارد استفاده کنند, موسسهي eScience وظيفهاي را بر عهده گرفت که شرکتهاي مختلف را از لحاظ قانوني مجبور کند که اين استاندارد را رعايت کنند و در صورت تخلف مورد پي گرد قرار گيرند.
از نظر بازرگاني, ابزارهاي برنامه نويسي و يک بستر مناسب براي گريد در حال حاضر وجود ندارد و اين امر به اين دليل است که منابع موسسهي eScience در برابر تقاضاي بسيار زياد براي يک بستر کامل و استاندارد گريد ضعيف و اندک است. از آنجايي که ساخت چنين بستري به نيروي کار بالا و هزينههاي سنگين وابسته است شرکتهاي تجاري مختلفي سعي در پشتيباني مالي اين پروژه دارند تا يک بستر استاندارد براي گريد پديد آيد.
از نظر تکنولوژيکي, OGSA به طور وسيعي به مهندسي نرمافزار وابسته است. در حال حاضر بستههاي نرمافزاري که براي گريد وجود دارد عموما زياد ساخت يافته نيستند و توسعه دهندگان اين سيستمها را دچار سردرگمي ميکنند. اين عدم وجود ساختار منظم باعث افزايش هزينه نگهداري و توسعهي بستر گريد ميشود.
به هر حال با تعريف GSDLها و استفادهي برنامه نويسان از آنها به گونهاي اين مشکل کمتر احساس ميشود و زبان استانداردي براي توسعه دهندگان پديد آمده است.
براي اينکه استانداردهاي OGSA تامين شوند چالشهاي زيادي وجود دارد. رسيدن به استانداردهايي که در تمام نقاط دنيا پذيرفته باشند براي مجتمع کردن سرويسهاي وب و گريد يکي از واضح ترين و مهم ترين چالشها است. ما در اين قسمت بر روي مشکلات فني تر تمرکز خواهيم کرد.
· انواع ابتدايي[11] مختلف که براي نرمافزارهاي کاربردي علمي استفاده ميشوند بايد در يک XML Schema تعريف شده و به وسيلهي تمام گريدهاي تعريف شده در دنيا مورد قبول واقع شوند, در غير اين صورت هر شبکهاي از استانداردهاي خود استفاده کرده و هماهنگ کردن آنها مقدور نخواهد بود.
· دقت زيادي در تعريف GSDLها بايد وجود داشته باشد تا اين سرويسها به صورت جامع و مانع تعريف شده و نيز استفادههاي فزايندهي آينده از اين زبان را نيز پشتيباني کند.
· بسترهاي استانداردي نياز است که بر روي آنها سرويسهاي گريد و نرمافزارهاي کاربردي پياده شوند.
· بستري براي اعلان خطاهاي سيستم(شامل کشف خطا, گزارش آن, نحوه برطرف کردن خطاهاي جزيي و غيره) و پاسخ گويي به آنها بايد ايجاد شود.
· بستري براي مديريت و توسعه. اين بستر امکاناتي را در اختيار قرار خواهد داد تا به وسيله آنها رفتار گريد را مديريت کرده و نيز توانايي افزودن,حذف و ويرايش سرويسهاي گريد را به صورت پويا داشته باشيم.
· سرويسهاي هماهنگ کنندهاي بايد پياده سازي شوند که بتوانند سرويسهاي مختلف گريد را با يکديگر هماهنگ کنند.
· روشهاي تست يکي از اساسي ترين نيازهايي هستند که به عنوان معيارهايي از کارايي گريد بايد تعريف شده و پياده سازي شوند.
· پشتيباني از گريدهاي متحرک[12] که به طور نا پيوسته به شبکه متصل ميشوند و نوعي تبادل اطلاعات نامعتبر(به دليل وجود ارتباط غير قابل اطمينان) دارند يکي ديگر از چالشهاي پيش روي گريد است.
در حال حاضر اين چالشها در برابر معماري کلاسيک گريد قرار دارند که گروههاي فعال در مجمع گريدهاي عمومي[13] آنها را در نظر دارند. OGSA يک چهارچوب مناسب را فراهم ميکند که اين چالشها را مورد توجه قرار داده است. براي مثال واسطهايي را در اختيار قرار ميدهد تا بتوان GSDLها را تعريف کرد.
[1] Open Grid Services Architecture
[2] Identification
[3] Sessions
[4] Web Service Description Language
[5] Web Services Inspection Language
[6] Grid Services Description Language
[7] Grid Service Handle
[8] Partial Failure
[9] Query
[10] Event Notification
[11] primitive
[12] mobile
[13] Global Grid Forum
5.1. ارتباط گريد با ساير تکنولوژيها
مفهوم به اشتراک گذاري پويا و کنترل شده در داخل سازمانهاي مجازي بسيار پايهاي است به طوري که ما ميتوانيم تصور کنيم که تکنولوژيهاي مانند گريد بايد هم اکنون به صورت گستردهاي نصب شده باشند. در عمل ما ميبينيم که فقط تعداد کم و ناکافي راه حل براي مشکلات سازمانهاي مجازي وجود دارد. به طور خلاصه, راه حلهاي موجود براي سيستمهاي توزيع شده نميتوانند يک چارچوب مناسب و کلي پديد آورند که تمام نيازمنديهاي سازمانهاي مجازي براي به اشتراک گذاري منابع را پاسخ دهد. تکنولوژيهاي گريد با فراهم سازي چنين راه حل کلي خود را از ساير تکنولوژيها متمايز کرده اند. در زير تکنولوژيهايي که گريد ميتواند براي رسيدن به هدف خود از آنها استفاده کند ذکر شده است.
تکنولوژيهاي وب به خاطر گستردگي و مقبوليت عام گزينهي مناسبي براي استفاده در گريد و حل مشکلات سازمانهاي مجازي ميباشند. به همين خاطر ميتوان از آنها در ساخت بستر براي سازمانهاي مجازي استفاده کرد. با وجود اينکه اين فن آوري مدلي بسيار قوي براي استفاده در سيستمهاي مجري-مشتري است, که هم در وب و هم در گريد کاربرد دارد, فاقد مشخصههاي قدرتمند تري هستند که براي ساخت سازمانهاي مجازي نياز است. براي مثال مرورگرهاي وب براي تاييد اعتبار کاربران عموما از TLS[1] استفاده ميکنند و نميتوانند سيستم تک وروده[2] يا جانشيني[3] را پشتيباني کنند.
بدين منظور بايد گامهايي برداشته شود تا گريد و وب را با همديگر مجتمع سازد. براي مثال GSI[4] که خود مدل توسعه يافتهاي از TLS است قابليت تک وروده را پشتيباني ميکند و اگر بتواند با وب مجتمع شود ميتواند اين قابليت را به وب اضافه نمايد. همين طور اگر GSI قابليت جانشيني خود را به وب بيافزايد, وب ابزار بسيار مناسبي خواهد بود تا به عنوان درگاه سازمانهاي مجازي مورد استفاده قرار گيرد تا واسطههاي بسيار کم حجم و کوچکي را بر روي نرمافزارهاي کاربردي حجيم قرار دهد.
2.5.1. فراهم کنندگان سرويسهاي ذخيره سازي اطلاعات و نرمافزارهاي کاربردي
فراهم کنندگان سرويسهاي نرمافزارهاي کاربردي و سرويسهاي ذخيره سازي و ساير شرکتهاي ميزباني مشابه, پيشنهاد ميدهند که بعضي از نرمافزارهاي کاربردي مهندسي و تجاري و نيز فضاي ذخيره سازي را به صورت اجارهاي در اختيار مشتريها قرار دهند. مشتري و فروشنده بر روي سطح سرويس و نوع سختافزار و نرمافزار مورد نظر به توافق ميرسند. همچنين سطحي از امنيت که بايد توسط سرويس دهنده تضمين شود مشخص ميشود.
مجتمع سازي تکنولوژي گريد با اين سرويس دهندهها محدودهاي وسيع تر و غني تر از امکانات بهوجود ميآورد. براي مثال, سرويسها و پروتکلهاي استاندارد گريد ميتوانند براي جداسازي سختافزار و نرمافزار از يکديگر به کار روند. يک مشتري ميتواند با يک سرويس دهنده به توافق رسيده و منبعي را با مشخصات لازم در اختيار گرفته, سپس آن را در شبکه قرار دهد. در اين صورت منبعي که توسط اين سرويس دهنده در اختيار مشتري قرار گرفته, بر طبق پروتکلهاي گريد و تحت امنيت پروتکلهاي گريد به اشتراک گذاشته ميشود.
3.5.1. سيستمهاي محاسباتي حرفه اي
تکنولوژيهاي توسعه نرمافزاري مثل CORBA,EJB[5],J2EE [6] و DCOM سيستمهايي هستند که براي ساخت نرمافزارهاي توزيع شده طراحي شدهاند. آنها ميتوانند واسطههاي استانداردي براي منابع تعريف کنند, متدها را از راه دور صدا بزنند(RMI) و منابع را در داخل يک سازمان خاص به اشتراک گذارند. هرچند که هيچ کدام از اينها جزو نيازمنديهايي که از قبل براي سازمانهاي مجازي تعريف کرديم نيستند. ولي در پياده سازي گريد ميتوان از آنها استفاده کرد. براي مثال در CORBA ميتوانيم يک شئي پياده سازي کنيم که با استفاده از GSI عمليات برقراري امنيت بين سازمانها را مديريت کند. ميتوانيم شيئي بسازيم که با منابع موجود در گريد به تبادل اطلاعات پرداخته تا کنترل يک يا چند منبع را در داخل يک سازمان مجازي بر عهده بگيرد.
در تمام اين حالات استفاده از پروتکلهاي گريد قابليتهاي توسعه يافتهاي را در اختيار قرار ميدهد (مثل امنيت بين واحدهاي سازماني مختلف) و امکان برقراري ارتباط با ديگر تکنولوژيها (غير از CORBA) فراهم ميآورد.
4.5.1. محاسبات همرده و اينترنت
محاسبات همرده (همان طور که در نرمافزارهايي مثل Napster و Gnutella وجود دارد) و محاسبات اينترنتي(مثل سيستمهاي Entropia) نمونههاي عمومي تري از سيستمهاي کلاسيک مشتري-مجري هستند. امکاناتي از قبيل به اشتراک گذاري و ساختار محاسباتي موجود در اين نرمافزارها بسيار به آنچه که ما در گريد بدان نيازمنديم نزديک است.
در عمل, تمرکز بر روي اين دو محدوده هيچ همپوشاني مهمي با يکديگر ندارد و دليل اين اتفاق اين است که توسعه دهندگان اين سيستمها بيشتر سعي داشتند راه حلهايي پيدا کنند که پروتکلهايي را براي نرمافزار خود پديد آورند نه اينکه يک پروتکل عمومي پديد آورند که به وسيلهي ساير نرمافزارها نيز مورد استفاده واقع شود.
همان طور که اين نرمافزارهاي کاربردي پيچيده تر و احتياج به همکاري بين منابع روشن تر ميشود, همگرايي بيشتري بين محاسبات همرده, اينترنت و گريد به وجود ميآيد.
چهار سناريوي زير را در نظر بگيريد
اين مثالها از جنبههاي بسياري با هم متفاوت هستند: تعداد و انواع کاربران شرکت کننده در عمليات, انواع فعاليتها, مقياس و محدودهي فعل و انفعالات و منابع مشترک. اما در بسياري از نقاط هم اشتراک دارند همان طور که در ادامه توضيح داده ميشود(شکل 3).
در همهي اين حالات تعدادي شرکت کنندهي غير قابل اعتماد مقداري از منابع خود را به اشتراک ميگذارند تا وظيفهاي را انجام دهد. اما به اشتراک گذاشتن فقط به معني استفاده از اطلاعات يکديگر نيست بلکه گاهي اوقات معني استفاده مستقيم از منبع و در اختيار گرفتن کنترل آن به طور کامل ميباشد.
به اشتراک گذاشتن منابع شرطي است؛ به اين معني که هر فرد موقعي که يک منبع را به اشتراک ميگذارد مشخص مينمايد که اين منبع در چه مواقعي و چه مکاني قابل استفاده است و چه کاري ميتواند انجام دهد. براي مثال يک شرکت کننده در سازمان مجازي P در شکل 3 ميتواند به ساير شرکت کنندگان همان سازمان مجازي اجازه دهد که فقط مسائل ساده را بر روي رايانهي وي اجرا کنند. مصرف کنندگان نيز ميتوانند بر روي منابعي که ميخواهند در اختيار بگيرند محدوديت قرار دهند, براي مثال شرکت کنندهاي در سازمان مجازي Q درخواست دادههايي را ميکند که فقط با عنوان امن تاييد شده باشند. که البته قرار دادن چنين محدوديتهايي مستلزم تعريف کردن قراردادهايي به عنوان اصول امنيت ميباشد.
به اشتراک گذاشتن منابع ميتواند حالت پويا داشته باشد و طي دورههاي زماني تغيير يابد. شرکت کنندگان و به تبع آن منابعي که به آنها اختصاص يافته ميتوانند حذف شوند, يا به محيط اضافه شوند يا دسترسيهاي آنها تغيير يابد.
روابط بين منابع مشترک هميشه به صورت مشتري-مجري نيست بلکه گاهي ميتواند همرده[1] باشد يعني جاي مشتري و مجري به تناوب تغيير يابد. اين به اشتراک گذاشتن منابع ميتواند در هر زير مجموعهاي از شبکه قرار بگيرد و بين تعداد خاصي از منابع به وقوع افتد.
اين روابط ميتوانند با هم ترکيب شوند تا در رسيدن به هدف خاصي همکاريهاي لازم را به انجام رسانند. منابع مورد استفاده ميتوانند متعلق به سازمانهاي متفاوتي باشند که توسط يکديگر استفاده ميشوند.
يک منبع ثابت ميتواند بسته به محدوديتهايي که بر رويش قرار ميگيرد و هدف از پيش تعيين شده با روشهاي مختلفي استفاده گردد. براي مثال يک رايانه ميتواند فقط براي اجراي قسمت خاصي از يک نرمافزار به اشتراک گذاشته شود, در حالي که در حالت ديگري ميتواند به مديريت يک پروژهي بزرگ اختصاص يابد. به خاطر عدم وجود اطلاعات قبلي دربارهي نحوهي استفاده از يک منبع, مقدار کارايي, انتظارات و محدوديتها (که کلا به نام کيفيت سرويس معروف هستند) بايد جزيي از شرايطي باشند که براي يک منبع و يا نحوهي استفاده از آن در نظر گرفته ميشود.
اين مشخصهها و نيازمنديها چيزي را تعريف ميکنند که به آن سازمان مجازي ميگوييم, مفهومي که به اعتقاد ما يکي از کليدي ترين مفاهيم موجود در گريد خواهد بود. سازمانهاي مجازي به گروههاي مختلف سازماني يا اشخاص اجازه خواهد داد که منابع خود را در يک روند کنترل شده به اشتراک گذارند.
بهطور کلي در محيط شبکه که اطلاعات به صورت اشتراکي در اختيار قرار ميگيرد مسئله تامين امنيت موضوعي است که بايد در نظر گرفته شود. در گريد تجهيزات و منابع زيادي مانند کامپيوترهاي گران قيمت، تجهيزات حساس و باارزش و اطلاعات محرمانهاي وجود دارند که بايد در برابر دسترسيهاي غير مجاز محافظت شوند.
حتي در محيطهايي که احتمال خرابکاري وجود ندارد نيز بايستي اين مسئله مد نظر قرار گيرد. چرا که ممکن است دسترسي به اطلاعات غير مجاز و يا انجام عمليات مخرب بصورت نا خواسته توسط کاربران يا نرمافزارهاي کاربردي انجام شود. اين سرويس ميانافزار هسته اي, وظيفه ايجاد امنيت براي استفاده از منابع موجود را برعهده دارد.
به هر حال دسترسي و استفاده از منابع با يک درخواست از طرف کامپيوتر مبدا انجام ميشود اين درخواست ممکن است مربوط به يک کاربر، يک منبع و يا يک پردازه باشد. ارتباط اين درخواستها با منابع ميتواند بصورت منبع به کاربر، کاربر به منبع، پردازه به منبع و پردازه به پردازه باشد که سيستم بايد اطلاعات کاملي از هر جفت از موارد فوق مربوط به محيط گريد در اختيار داشته باشد تا با استفاده از آنها مشخص کند که آيا يک درخواست مجاز هست به يک منبع خاص دسترسي داشته باشد يا خير.
اين سرويس براي ايجاد امنيت در سطح گريد از يک معماري دوسطحي استفاده ميکند.
در سطح اول مسائلي مانند تعيين هويت، کنترل دسترسيها، جامعيت، مجوز و رمزگشايي انجام ميشود و درسطح دوم پيگيري در حال اجراي پردازهها انجام ميشود تا از انجام هرگونه عمليات مخرب جلوگيري شود.
بهطور کلي وظايف اين سرويس را ميتوان بصورت زير خلاصه نمود:
- تعيين هويت
براي تعيين هويت کاربرهاست تا مشخص شود که معتبر هستند يا خير.
- مجوز
براي اطمينان از اينکه کاربرهاي مجاز تنها به منابع مشخص شده براي آنها دسترسي پيدا ميکنند.
- جانشيني
براي اينکه به سيستم اجازه داده شود تا بتواند مجموعهاي از عمليات را براي يک کاربر که هنوز در سيستم معرفي نشده انجام دهد.
- تک ورود
سيستم بايد اين امکان را داشته باشد که وقتي يک کاربر يک بار براي استفاده از يک منبع وارد سيستم شد براي استفاده از منابع ديگر که از نظر مجوزهاي استفاده شبيه به اين منبع هستند، نياز به ورود مجدد نباشد.
- ارتباط امن
براي ضمانت کردن جامعيت و محرمانگي در ارتباطات.
برخي از نرمافزارهاي کاربردي گريد طوري هستند که براي دريافت سرويس يا به عبارت ديگر براي اجرا شدن نياز دارند که سرويسهاي ارائه شده در محيط با محدوديتها و معيارهاي خاصي ارائه شوند. به عنوان مثال يک برنامه بلادرنگ[1] نياز دارد که منابع مورد نيازش حتما در محدوده زماني مشخص به آن تخصيص داده شده و سرويسها بتوانند در زمان مشخص سرويس خود را ارائه کنند و يا برنامه ديگري ممکن است نياز داشته باشد که سطح خاصي از پوشيدگي مربوط به عملکرد آن در حين اجرا در اختيارش قرار گيرد.
در مورد اطلاعات پيوسته مانند چند رسانهايها هم مسئله کيفيت سرويس مطرح ميشود و سيستم بايد بتواند اطلاعات چند رسانهاي را که ترکيب صدا و تصوير هستند با کيفيت قابل قبول ارسال و دريافت نمايد. مثلا تصوير دريافتي بايد با صدا هماهنگ باشد. وجود مسائلي از اين قبيل باعث ميشود که سيستم تمهيداتي را براي ارائه سرويسهاي مورد نظر در نظر بگيرد.
فاکتورهاي کيفيت سرويس براي منابع مختلف متفاوت است. مثلا در مورد پردازنده درصد بکارگيري آن مطرح است. در مورد منابع ذخيره سازي اطلاعات و ديسکها، ظرفيت در مورد منابع شبکه سرعت انتقال اطلاعات و غيره مطرح است.
در محيط گريد يک نرمافزار کاربردي بايد فاکتورها و پارامترهاي کيفيت سرويس را در مورد منابع مورد نياز مشخص کند. بعد از آن سرويس کنترل کيفيت از عمليات زير براي ارائه سرويس استفاده ميکند.
سيستم بايد با استفاده از مکانيزمي به سرعت منابع مورد نياز را براي يک نرمافزار کاربردي خاص رزرو نمايد بهخصوص در مورد منابع کمياب در محيط گريد.
- سياستهاي رزرو
سيستم بايد با استفاده از مکانيزمي محدوديتها و سياستهاي اعمال شده روي منابع از طرف مالک آنها را در نظر بگيرد. اين محدوديتها مشخص ميکنند که چه کسي، چه وقت و چگونه ميتواند به منابع اين دامنه دسترسي داشته باشد. سيستم با استفاده از اين اطلاعات و محدوديتهاي کيفيت سرويس موجود ميتواند منبع مناسب را رزرو نمايد.
- پروتکل مورد توافق
سيستم بايد اين اطمينان را به وجود بياورد که کيفيت سرويس ارائه شده به يک مشتري در طول زمان سرويس دهي همان است که وي انتظار آن را داشته و سيستم با استفاده از اين پروتکل اين کار را انجام ميدهد.
- امنيت
سيستم بايد از ورود کاربران غير مجاز جلوگيري کرده و سياستهايي براي جلوگيري از اعمال تغييرات در مخازن دادهاي که حاوي اطلاعات تجهيزات رزرو شده، سياستها و اطلاعات پروتکل مورد توافق است در نظر بگيرد.
- سادگي کيفيت سرويس
اعمال سياستهاي کيفيت سرويس براي يک پردازه بايد حتي الامکان طوري انجام شود که در صورتيکه امکان ارتقاي فاکتورهاي کيفيت سرويس وجود داشت، اين کار با حداقل تغييرات ممکن صورت گيرد. هرچند که در عمل اين کار بسيار مشکل است. به دليل اينکه نياز به پيشبيني وضعيت آينده سيستم دارد.
- مقياس پذيري
روش انتخاب شده براي کيفيت سرويس بايد طوري باشد که بتوان از آن براي تعداد زيادي از موجوديتهاي محيط گريد استفاده نمود.
2.1. شرح وظايف ميانافزار هستهاي گريد در جهت ايجاد محيطهاي گريد
شرح وظايف يا عملياتي که اين ميانافزار انجام ميدهد به شرح زير است:
سرويس اطلاعاتي گريد بايد در مورد منابع موجود در گريد که سرويس ارائه ميکنند اطلاعات جمع آوري نمايد. اين اطلاعات، اطلاعات ماندگاري در مورد سرورهاي موجود است. اين سرورها براي فعال کردن سرويسها و برنامههاي موجود در گريد مديريت ميشوند. در واقع وقتي قرار است يک برنامه در محيط گريد به اجرا در آيد لازم است که بهصورت موازي در سراسر محيط گريد توزيع شود. در اين حالت کامپيوتر مبدا بايد از امکانات و منابع موجود در گريد با اطلاع باشد يعني اطلاعات سرورهاي موجود را در اختيار داشته باشد تا بتواند به آنها مرتبط شده و از سرويسهاي آنها استفاده نمايد.(در اينجا منظور از سرور ماشين سرور نيست بلکه منظور از سرور سرويس دهنده نرمافزاري است که بوسيله يک شناسه مورد شناسايي قرار ميگيرد). بنابراين يکي از وظايف ميانافزار هستهاي گريد جمع آوري و ذخيرهسازي اطلاعات در مورد منابع موجود در گريد است.
در اين قسمت بهطور کلي مراحل زير انجام ميشود:
- تهيه مشخصات تعيين شده در مورد منابع موجود در گريد به همراه هدف مربوط به هر منبع.
- تهيه اطلاعات مربوط به وضعيت منابع.
2.2.1.زمان بندي[1] منابع
وقتي قرار است يک فعاليت در محيط گريد انجام شود، به دليل وجود مسائلي همچون زمان پاسخگويي، کارايي[2] وغيره ميبايست منابع در دسترس برنامه ريزي، زمان بندي و هماهنگ شوند. تا بتوانيم وظيفه مورد نظر را در زمان مناسب و با کيفيت در نظر گرفته شده اجرا نماييم. به عبارت ديگر بهکارگيري منابع براي همکاري با يکديگر مثلا جهت عمليات موازي يا پردازههاي چند سطحي نياز به هماهنگي زيادي بين عناصر موجود در گريد دارد. در اينجا در واقع کامپيوتر مبدا از نظر زمانبندي صرفا ميتواند منابع مورد نياز را رزرو نمايد.
3.2.1. دسترسي يکسان به منابع محاسباتي
در بين منابع موجود در گريد تفاوتهاي زيادي وجود دارد. اين تفاوتها نبايد روي نحوه دسترسي به منابع تاثير بگذارند. يعني اگر بخواهيم يک نرمافزار کاربردي بصورت قابل حمل در گريد مورد استفاده قرار گيرد بايد محيطي يکنواخت براي اجراي آن ايجاد نماييم که يکي از ويژگيهاي اين محيط يکنواخت که کاربر و برنامه نويس و نرمافزار کاربردي احساس ميکنند امکان دسترسي يکسان به منابع کامپيوتري موجود درگريد است.
يکي از اهداف ايجاد گريد امکان دسترسي به حجم وسيعي از منابع ذخيره سازي اطلاعات است. ولي مسئله اين است که باز هم بايد نرمافزارهاي کاربردي قابل حمل داشته باشيم بهطوريکه بتوانند به دادههاي مورد نظر خود با روشي يکسان دسترسي پيدا کنند. يعني اين دسترسي بايد مستقل از تمام وابستگيهاي دادهاي در محيط گريد باشد. علاوه بر اين امروزه سرويسهاي دسترسي به دادهها در گريد دادهها را بوسيله نام شناسايي ميکنند.
5.2.1. ارتباطات امن و تاييد اعتبار کاربران
يکي ديگر از وظايف ميانافزار هستهاي گريد اين است که اعتبار و سنديت درخواستهاي رسيده را مشخص نموده، مجوز آنها را بررسي کرده آنها را رمز گشايي و در مورد يک سرويس معين بررسي کند. اين کار با استفاده از مدلهاي امنيتي، پروتکلها و تکنولوژيهاي برقراري ارتباط انجام ميشود. در واقع اين سرويس مسائل امنيتي را براي محيط گريد فراهم ميکند. در واقع هر کامپيوتر موجود در محيط بايد قبلا تاييد اعتبار شده باشد تا بتواند از امکانات گريد استفاده نمايدکه اين کار براي جلوگيري از نفوذ و خرابکاري درون کامپيوترها ضروري است.
3.1. بررسي سرويسهاي ارائه شده توسط ميانافزار هستهاي گريد
اين ميانافزار براي انجام وظايف خود سرويسهاي مختلفي را شامل ميشود که عبارتند از:
1. مديريت راه دور پردازهها
2. تخصيص منابع
3. دسترسي به منابع ذخيره سازي
4. کشف و ثبت منابع
5. امنيت
6. کيفيت سرويس
7. رزرو کردن منابع
1.3.1. مديريت راه دور پردازهها
در محيط شبکه و ارتباطات شبکهاي ارتباط کامپيوترها از طريق ارسال و دريافت پيام انجام ميشود. بنابراين اين پيغامها بايد به نوعي مديريت و کنترل شوند. يک کامپيوتر ممکن است درخواستهاي زيادي از ساير کامپيوترها بصورت مستمر دريافت کند. پس بايد با روشي مثل صف بندي پيامها آنها را نگهداري کرده, درخواستها را پردازش نموده و پاسخ را به درخواست کننده ارسال نمايد.
اين سرويس از ميانافزار هستهاي گريد وظيفه دارد عمليات برقراري ارتباط جهت ارسال و دريافت پيام، عمليات همگام سازي ارتباطات، انتقال دادهها، عمليات ضبط و نگهداري وقايع را انجام داده و امکان مشاهده و پيگيري درخواستها و وقايع را فراهم نمايد.
در يک تعريف خيلي ساده محاسبات گريد عبارتست از استفاده از چندين منبع کامپيوتري مثل کامپيوتر، داده، I/O، تجهيزات و غيره براي حل يک مسئله بزرگ بهطوريکه اين مسئله قابل انجام توسط يک منبع تکي نباشد[5].
همانطور که ميدانيم در محيط يک کامپيوتر تک که از منابع محلي براي اجراي برنامهها استفاده ميکند هنگام اجراي يک برنامه بايد منابع کامپيوتر مثل حافظه، پردازنده، منابع ذخيره سازي داده، ورودي-خروجي و... در اختيار آن قرار گرفته (به آن تخصيص داده شده ) و اين منابع مديريت شوند. مثل مديريت حافظه.
در محيط گريد نيز وقتي يک برنامه ميخواهد اجرا شود بايد منابع مورد نيازش را در اختيار گيرد. بهعنوان مثال يک برنامه ممکن است به 400 پردازنده براي اجرا نياز داشته باشد. درواقع بايد سيستم مجموعهاي از منابع را بهطور همزمان در اختيار يک نرمافزار کاربردي قرار داده و آنها را مديريت نمايد. مسلما مديريت منابع در اين حالت با حالت کامپيوتر تک متفاوت است. چرا که مجموعهاي از تجهيزات و منابع بايد باهم همکاري کنند و بهطور همزمان در اختيار برنامه قرار گيرند. وظيفه اين سرويس, تخصيص منابع مورد نياز يک برنامه جهت اجرا در محيط گريد و مديريت اين منابع ميباشد.
تخصيص منابع توسط اين سرويس در سه فاز بصورت زير ميتواند انجام شود.
- فاز تخصيص : که در آن منابع کامپيوتري مورد نياز را در اختيار گرفته و اشياي مختلف مورد نياز ايجاد ميشوند.
- فاز پيکربندي : که در آن نرمافزار کاربردي مورد نظر مقدار دهي و آماده اجرا ميشود.
- فاز کنترل و پيگيري : که در حين اجراي برنامه انجام ميشود. دراين فاز عمليات کنترل تجهيزات و منابع تخصيصي و نمايش اطلاعات مورد نياز برنامه در حال اجرا انجام ميشود.
3.3.1. دسترسي به منابع ذخيره سازي
در محيط گريد برخي از برنامهها با حجم وسيعي از اطلاعات سر و کار دارند که بايستي اولا بتوانند منابع لازم جهت ذخيره سازي اين اطلاعات را در محيط گريد در دسترس داشته باشند و ثانيا در مواقع نياز بتوانند به اين اطلاعات دسترسي پيدا کنند. همانطور که قبلا نيز اشاره شد يکي از ضروريات محيط گريد ايجاد يک محيط يکنواخت و شفاف براي کاربرها و نرمافزارهاي کاربردي است يعني نرمافزارهاي کاربردي بايد شبيه به منابع محلي خود به اطلاعات مورد نياز خود دسترسي پيدا کنند.
وظيفه اين سرويس پديد آوردن امکاناتي جهت رسيدن به اين هدف است. يکي از ابزارهاي مناسبي که در اين بخش استفاده ميشود يک ميانافزار بهنام فروشنده منابع گريد[3] است که اين ميانافزار امکاناتي را فراهم ميکند تا نرمافزارهاي کاربردي بتوانند به سادگي به اطلاعات مورد نياز خود که درون منابع ذخيره سازي مختلف در سطح گريد ذخيره شده اند، دسترسي پيدا کنند.
فروشنده منابع گريد به طور خلاصه سه وظيفهي مهم جمعآوري و مديريت فايلها, مديريت دادگان و کنترل دسترسي فايلها و دادگان را به عهده دارد.
در محيط گريد سرويس تخصيص منابع که زمانبندي را انجام ميدهد, نياز دارد بداند که در حال حاضر چه امکاناتي از محيط را ميتواند رزرو کرده و به برنامهها تخصيص دهد. اين سرويس که سرويسهاي اطلاعاتي را در محيط انجام ميدهد، وظيفه دارد در محيط گريد به جستجو پرداخته و اطلاعات به روز از منابع موجود مانند اطلاعات مربوط به افراد، نرمافزارها، سرويسها، شبکه و سختافزارهاي فعال قابل استفاده و بهطور کلي موجوديتهاي محيط را جمع آوري و نگهداري نمايد. اين سرويس به نوعي عمليات سرويس پوشهها [4]و نام دهي[5] را در محيط انجام ميدهد.
گريد نوعي سيستم نامتمرکز و موازي است که امکان به اشتراک گذاشتن و انتخاب منابع ناهمگون, خودمختار و توزيع شده از نظر جغرافيايي را به صورت پويا و در زمان اجرا و با ملاحظاتي نظير کارايي, در دسترس بودن, هزينه و کيفيت سرويس فراهم مينمايد.
سيستمهاي گريد را ميتوان به سه دستهي گريد محاسباتي, گريد سرويس و گريد دادهاي تقسيم بندي کرد[9].
همانطور که گفته شد هدف گريد ايجاد محيطي است تا کامپيوترها بتوانند به آساني به منابع موجود در ساير کامپيوترها دسترسي پيدا کرده و از آنها استفاده نمايند. ولي ايجاد چنين ساختاري به جهت وجود ناهمگوني بين کامپيوترها کار بسيار مشکلي است.
محيط گريد مملو از تجهيزاتي است که با تکنولوژيهاي مختلف نرمافزاري و سختافزاري کار ميکنند. کامپيوترهاي مختلفي مانند سرورها، ابر رايانهها، رايانههاي شخصي معمولي، ابزار و منابع ذخيره سازي اطلاعات با ساختارهاي مختلف، تجهيزات مهندسي مثل تلسکوپ و....
کامپيوترها سختافزار خاص خود را دارند و از سيسستم عامل مخصوص به خود استفاده ميکنند. يک کامپيوتر با Windows کار ميکند ديگري يک Mainframe است که سيستم عامل VAX روي آن قرار دارد و اطلاعات را با روش سختافزاري تعريف شده, ذخيره و پردازش ميکند و کامپيوتر ديگر يک سرور است که سيستم عامل Novell روي آن اجرا ميشود، نرمافزارهاي کاربردي در محيط و سکوي[1] خاص خود ايجاد شده و اجرا ميشوند. کامپيوترها در شبکههاي مختلف با سياستهاي مديريتي خاص، پيکربنديها و پروتکلهاي مختلف کار ميکنند.
در واقع هدف گريد در برخورد با چنين محيطي تبديل اين محيط به يک محيط يکنواخت است که در آن کامپيوترها بتوانند باهم ارتباط برقرار کرده، پيغامهاي يکديگر را بفهمند و درخواستهاي رسيده را پاسخ دهند. کليه کاربران محيطي همگن و يکنواخت را ببينند و احساس کنند. يعني هر کاربر يا نرمافزار کاربردي بتواند با يک روش مشخص به منابع مورد نياز خود دسترسي پيدا کرده و از آنها استفاده کند و تمامي دغدغههاي موجود مانند مشکلات ارتباطي، غير همگون بودن کامپيوترها و غيره از ديد او پنهان بماند. مسلما براي دستيابي به اين محيط همگن و يکنواخت تغيير دادن و يکي کردن کامپيوترهاي موجود در دنيا عملي نشدني است. پس بايد با روشهاي ديگري اين کار انجام شود.
يعني بايد بتوانيم يک محيط انتزاعي همگن از تجهيزات و منابع کامپيوتري موجود بسازيم. که در آن کامپيوترها بر اساس يک قانون يا پروتکل با هم ارتباط برقرار نمايند. به عبارت ديگر يک ماشين مجازي ايجاد کرده و در اختيار کامپيوترها و استفادهکنندگان از آنها قرار دهيم تا سيستمهاي مختلف بدون دغدغه ناهمگون بودن امکانات و تجهيزات بتوانند با يکديگر تبادل داده انجام دهند. در همين راستا ميانافزارهايي طراحي شده و در اختيار کاربران قرار گرفته است.
براي محيط گريد ساختاري بصورت شکل 2 در نظر گرفته شده است.
اين ساختار چند لايهاي انتظارات ما از يک محيط يکنواخت گريد را بر آورده ميکند. که وظيفه لايههاي آن به شرح زير است [3].
لايه ميانافزار سطح کاربر
اين لايه شامل محيطي براي ايجاد و ارتقاي برنامههاي کاربردي در محيط گريد، ابزار برنامه سازي و امکاناتي جهت دسترسي و مديريت منابع است و همچنين وظيفه دارد که برنامهها را براي اجرا در محيط گريد زمانبندي و مديريت نمايد. اين لايه با فراهم آوردن دستورات و امکانات بهصورت انواع اوليه[1] اين امکان را در اختيار برنامه نويس و نرمافزار کاربردي قرار ميدهد تا بتواند با استفاده از اين انوع اوليه, امکانات موجود در محيط گريد را مورد استفاده قرار دهد.
· لايه ميانافزار هستهاي گريد[2]
همانطور که گفته شد ميانافزار سطح کاربر وظيفه دارد تا حتي الامکان شرايطي را براي ديدن يک محيط يکپارچه و يکنواخت در اختيار کاربران و نرمافزارهاي کاربردي قرار دهد.
در اين ميان به دليل اينکه محيط ما يک محيط وسيع شبکهاي است بايستي براي اجراي يک برنامه در اين محيط مسائل ديگري همچون امنيت[3]، کيفيت سرويس دهي[4]، مسائل و سياستهاي مديريتي و... نيز در نظر گرفته شود. لايه ميانافزار هستهاي يکي از مهمترين قسمتها در معماري گريد است که وظيفه دارد يک محيط يکپارچه امن براي دسترسي نرمافزارهاي کاربردي به منابع فراهم سازد. اين لايه يک محيط انتزاعي از منابع موجود در گريد در اختيار نرمافزارهاي کاربردي قرار ميدهد تا بتوانند بهوسيله سرويسهاي اين لايه منابع مورد نياز را در اختيار گرفته و استفاده نمايند. همچنين اين لايه وظيفه دارد دسترسيها به منابع را کنترل کرده و مجوزهاي مورد نياز را در اختيار پردازههاي دريافتي از ساير کامپيوترها قرار دهد.
پایان قسمت ۱