بخشی از مقاله
زمانبندي
در گريدهاي محاسباتي
-1 مقدمهاي بر محاسبات توري (Grid computing)
ايده توزيع كار به منظور دستيابي به سرعت و به عبارت ديگر يك صرفه جويي در زمان قرن هاست كه مدنظر بوده است. تاريخ پر است از اين مثالها - تفكر در ساخت هرم ها، چيدن كتان در كشتزار و يا يورش گردانهاي نظامي در جنگ كه ميتوانند به شما ايده بدهند. اين ايده به طور طبيعي حتي پيش تر نيز وجود داشته كه كندوي عسل يك مثال بارز از آن است. بسياري از تكنيكهاي مدرن علمي از قبيل ميكرو آرايهها و 98-well plate نيز كارها را براي دستيابي به سرعت
، توزيع ميكنند. در اوايل قرن بيستم، كامپيوتر مثل شخصي بود كه كارهاي محاسباتي را كه به صورت توزيع شده نيز قابل انجام بودند، به تنهايي انجام ميداد (كارهايي از قبيل جدول بندي دادههاي سرشماري).
به طور خلاصه يك گريد عبارتست از: محاسبه توزيع شده قابل توسعه در مقابل Platformهاي ناهمگن چندگانه، سازمانها و مكان ها. اصطلاح قابل توسعه يا همان Scalable، به نياز عملياتي و مديريتي منابع توزيع شده به صورت امن، برمي گردد.
همانگونه كه در شكل زير نشان داده شده است، كنترل يك گريد توسط نرم افزار Middleware، مديريت ميشود كه يك مجموعه استاندارد سازگار از سرويسهاي گريد را براي Applicationها فراهم ميكند تا با منابع شبكه اي، محاسبه اي، اطلاعات و ذخاير داده به صورت امن تعادل داشته باشند.
بود كه Applicationها توسط مهندسان و محققان، روي كلاسترهاي محاسباتي با كارايي بالا اجرا ميشدند.
گريدهاي امروزي ميتوانند در سازمانهاي گوناگون از قبيل تحقيقات علمي، كشف داروها، تجزيه و تحليل ريسكهاي مالي، پيش بيني آب و هوا، طراحي، شبيه سازي، هوش تجاري و محيطهاي پردازش تراكنش، در سرتاسر جهان يافت شوند.
همچنين از مشخصههاي معمول گريد ميتوان به موارد زير اشاره كرد:
* مجازي سازي
* اشتراك گذاري منابع
* فراهم آوردن منابع پويا
1-2 مسأله گريد:
محاسبات توري بدين وسيله جدا كردن خود از محاسبات توزيعي از طريق تمركز روي اشتراك گذاري منابع، هماهنگي، قابليت مديريت و كارايي بالا، به يك عنصر مهم در صنعت كامپيوتر تبديل شده است.
تمركز روي «اشتراك گذاري منابع»، مسأله گريد ناميده ميشود كه ميتواند به عنوان مجموعه از مسايل مرتبط به هم با اشتراك گذاري منابع بين مجموعهاي از گروهها تعريف شود.
2-2 گريد و مفاهيم ديگر از محاسبات توزيعي:
يكي از مشخصههاي اساسي گريد، توانايي آن در مجازي سازي application ها، اطلاعات و منابع ديگر IT مانند شبكه ها، سرويس دهندهها و غيره ميباشد.
مجازي سازي عبارتست از يك نمايش منطقي از منابعي كه از مكان فيزيكي خود جدا شده اند. در حقيقت مجازي سازي، applicationها و منابعا طلاعاتي مرتبط به زيربناي IT را مجازي سازي ميكند. توجه به اين نكته مهم است كه بسياري از گريدهاي امروزي، اغلب از منابع IT غيرمجازي ساخته شده اند.
همچنين گريد، از يك نوع معماري مشهور به نام معماري سرويس گرا (Service-Oriented Architecture) يا SOA براي ساختن و مديريت applicationها حمايت و بهره برداري ميكند.
معماري سرويس گرا (SOA)، يك روش براي معماري نرم افزار جهت حمايت از كارها و سرويسهاي تكراري ميباشد.
3-2 محاسبات توري چيست؟
محاسبات توري، براي اشخاص مختلف معاني مختلفي ميتواند داشته باشد. يك ديدگاه كلي كه اغلب به عنوان يك مقياس براي قدرت گريدها استفاده ميشود جايي است كه كاربران يا لوازم الكتريكي از طريق پريزهاي ديوار به الكتريسيته دسترسي پيدا ميكنند بدون در نظر گرفتن اينكه الكتريسيته دقيقاً كجا و چگونه توليد ميشود.
اگر از اين ديد به محاسبات توري نگاه كنيم، فرآيندي منتشر شونده است و كاربران شخصي يا اپليكيشنهاي مشتري، به منابع محاسباتي (پردازنده ها، حافظه، ديتا، برنامههاي كاربردي و امثال آن) كه مورد نيازشان است دسترسي دارند با آگاهي كم و يا بدون آگاهي از اينكه آن منابع كجا واقع شده اند و يا از چه تكنولوژيهاي زيرين سخت افزار، سيستم عامل و غيره استفاده ميكنند.
اگر اين ديدگاه را به عنوان يك هدف نهايي در نظر بگيريم، قدمهاي كوچكتر بسياري وجود دارند كه
براي رسيدن به اين هدف بايد برداشته شوند. اين قدمهاي كوچك هر يك فوايد خاص خود را دارند. بنابراين محاسبات توري ميتواند به عنوان سفر در امتداد مسيري ديده شود كه در اين مسير تكنولوژيهاي متنوع و راه حلهاي متنوع با هم ادغام ميشوند و ما را به هدف نهاييمان نزديكتر
ميكند. محاسبات توزيع شده تكنولوژيهايي را بنا ميكند كه در پشتيباني برنامههاي كاربردي سازمان گذر در حال تكاملند و اين به اشتراك گذاشتن منابع در يك كلمه به معني مجازي سازي است.
مجازي سازي از ميان تكنولوژيها، پلتفرمها و سازمانها.
اين نوع مجازي سازي فقط از طريق به كارگيري استانداردهاي باز قابل دستيابي است. استاندارهاي باز اطمينان ميدهند كه برنامههاي كاربردي هر آنچه را كه منابع اختصاصي ميتوانند در اختيار آنها قرار دهند را ميتوانند استفاده كنند.
محيطي كه بتواند توانايي دسترسي به منابع به طور اشتراكي و شفاف را از ميان يك محيط توزيع شده نامتجانس ايجاد كند، نه تنها به تكنولوژي نياز دارد كه منابع معين را مجازي سازي كند بلكه به تكنولوژيها و استانداردهايي در زمينه زمانبندي، امنيت، حسابداري، مديريت سيستم و مانند آن نياز خواهد داشت.
محاسبات توري ميتواند به عنوان هر تنوع از سطوح مجازي سازي در امتداد يك پيوستار تعريف شود. اين پيوستار در شكل زير شرح داده شده است.
با شروع از پايين ترين قسمت سمت چپ ملاحظه ميكنيد كه سيستمهاي واحدي كه از يكديگر جدا هستند. مجازي سازي با توانايي تكه تكه كردن يك ماشين به ماشينهاي مجازي شروع ميشود. همين طور كه در اين طيف حركت ميكند شروع ميكنيد به مجازي سازي منابع مشابه.
مجازي سازي نه تنها براي سرويس دهندهها و پردازندهها به كار ميرود بلكه براي حافظه،
شبكهها و حتي برنامههاي كاربردي نيز به كار برده ميشود. با حركت در اين طيف به مجازي سازي منابع نامتشابه ميرسيم. قدم بعدي يك مجازي سازي جسورانه تر است كه نه تنها در يك مركز دادهاي خاص يا در يك دپارتمان است بلكه در سرتاسر يك سازمان توزيع شده صورت ميپذيرد و سپس در آخر مجازي سازي فوق العاده جسورانهاي صورت ميگيرد يعني مجازي سازي در سطح اينترنت. جايي كه شما ميتوانيد دقيقاً به منابع يك مجموعه از و تهيه كنندگانشان دسترسي
داشته باشيد و يا ممكن است اطلاعات را در سرتاسر يك شبكه از شركاء، ادغام كنيد.
محاسبات توري شامل يك مجموعه در حال تكامل از استانداردهاي باز براي سرويسهاي وب و واسطهايي است كه سرويسها و يا منابع محاسبات در دسترس روي اينترنت را ميسازند. اگر توجهمان را روي محاسبات توزيع شده متمركز كنيم، ميتوانيم يك تعريف براي محاسبات توري ارايه دهيم براي اينكه در سطح اينترنت به صورت محاسبات توزيع شده باشد. هدف اين است كه يك
حالي كه اين كامپيوتر قدرتمند يك مجموعه از سيستمهاي به هم متصل و به احتمال زياد نامشابه است كه منابع متنوعي را به اشتراك گذاشته است.
4-2 فوايد محاسبات توري:
وقتي كه يك گريد بر پا ميشود با نيازهاي يك مجموعه از مشاغل مواجه خواهد بود. براي سازگاري بهتر قابليتهاي محاسبات توري با آن نيازمنديها، بهتر آنست كه تعدادي از انگيزههاي مشترك براي استفاده از محاسبات توري را در ذهن داشته باشيد.
1-4-2 بهره برداري از منابع مورد استفاده
يكي از كاربردهاي اصلي محاسبات توري اين است كه يك برنامه كاربردي موجود را بر روي يك ماشين ديگر اجرا كنيم. ماشيني كه برنامه كاربردي در حالت معمولي روي آن اجرا ميشود ممكن است به طور غيرطبيعي مشغول باشد كه jobهاي مورد بحث ميتوانند روي يك ماشين بيكار در جاي ديگري از گريد اجرا شوند.
حداقل دو پيشنياز براي اين سناريو وجود دارد:
اول اينكه برنامههاي كاربردي بايد از راه دور قابل اجرا باشند و سر بار اضافي ايجاد نشود. دوم اينكه ماشين راه دور بايد اين قابليت را داشته باشد كه با هر سخت افزار، نرم افزار، يا هر منبع موردنياز خاص كه توسط برنامه كاربردي تحميل شده، مواجه شود.
در اغلب سازمانها تعداد زيادي از منابع محاسباتي وجود دارد. اغلب ماشينهاي desktop كمتر از 5% زمان در يك روز كاري مشغولند. در برخي از سازمانهاي حتي ماشينهاي سرور هم ميتوانند نسبتاً بيكار باشند. محاسبات توري يك Framework براي بهره برداري از اين منابع مورد استفاده را ايجاد ميكند بنابراين امكان افزايش كارايي كاربرد منابع را ايجاد ميكند.
منابع پردازشي فقط آنهايي نيستند كه ممكن است مورد استفاده باشند. اغلب ماشينها ممكن است ظرفيت درايورهاي ديسك بسيار بزرگ داشته باشند كه مورد استفاده قرار نگرفته اند. محاسبات توري يا به طور خاص تر يك data گريد براي جمع كردن اين حافظه استفاده نشده در يك مخزن دادهاي مجازي بسيار بزرگ تر به كار رود. اگر يك دسته job به خواندن يك مقدار زيادي داده
نياز داشته باشند اين دادهها ميتواند به صورت خودكار روي نقاط استراتژيكي گوناگون روي گريد منعكس شود. بنابراين اگر job قرار باشد روي يك ماشين دور در گريد اجرا شود، بنابران ديتا الان آنجاست و نيازي به جا به جا شدن ديتا به آن نقطه دور نيست و اين مسأله به وضوع باعث ايجاد كارايي ميشود.
همچنين اين كپيهاي ديتا ميتوانند در هنگام زياد ديدن كپيهاي اصلي و يا به هنگام عدم دسترسي به آنها مورد استفاده قرار گيرند.
از ديگر فوايد گريد، كاربرد منابع به صورت متعادل تر است. ممكن است گاهي يك سازمان حداكثر فعاليت غيرمنتظرهاي داشته باشد كه به منابع بيشتري نياز خواهد داشت.اگر برنامههاي كاربردي قابل فعال شدن به وسيله گريد باشند، ميتوانند به هنگام رخداد اين حداكثرها، به ماشينهاي مورد استفاده فرستاده شوند. در حقيقت برخي از پياده سازيهاي گريد قادرند كه jobهاي كامل شده را به صورت جزيي مهاجرت دهند.
به طور كلي يك گريد ميتواند يك راه حل براي متعادل كردن سربارهاي يك مجموعه وسيعتر از منابع باشد و اين خاصيت براي پردازنده ها، حافظه و هر منبع ديگري كه در يك گريد قرار دارد به كار ميرود.
2-4-2 ظرفيت پردازنده موازي (parallel CPU capacity)
پتانسيل ظرفيت پردازنده موازي، يكي از معمول ترين ديدگاهها و ويژگيهاي جذاب گريد محسوب ميشود. به علاوه براي نيازهاي علمي و نظري از قبيل قدرت محاسبات، در حال پيشبرد يك تكامل تدريجي در صنايعي از قبيل رشته بيوشيمي، مدلسازي مالي، اكتشاف نفت و غيره است
.
صفت مشترك هر يك از اين كاربردها اين است كه برنامههاي كاربردي نوشته شده از الگوريتمهايي استفاده ميكنند كه ميتوانند به قسمتهاي در حال اجراي مستقل تقسيم شوند. اگر يك برنامه كاربردي گريد كه شديداً به پردازنده وابسته است را در نظر بگيريم ميبينيم كه بسياري از زير jobهاي كوچكتر روي هر يك از ماشينهاي مختلف گريد در حال اجرا هستند. در اين حالت به عنوان مثال يك برنامه كاربردي در يك دهم زماني به پايان ميرسد كه اگر 10 بار از پردازنده استفاده ميكرد به پايان ميرسيد.
براي گريد enable كردن يك برنامه كاربردي فاكتورهاي زيادي وجود دارد. يكي اينكه بايد بدانيم همه برنامههاي كاربردي نمي توانند به صورت موازي در يك گريد اجرا شوند. به علاوه هيچ ابزار عملي براي تبديل برنامههاي كاربردي دلخواه براي بهره برداري از قابليتهاي موازي يك گريد وجود ندارد. تعدادي ابزار عملي وجود دارد كه به برنامه نويسان در نوشتن برنامههاي كاربردي موازي گريد
مهارت ميبخشد. هر چند تبديل برنامههاي كاربردي، علمي است كه دوران طفوليت خود را سپري ميكند. اين كار به نظر مشكل ميرسد و حتي اگر در موقعيتي ممكن باشد، به رياضيات و استعدادهاي برنامه نويسي نياز دارد. برنامههاي كاربردي جديد كه امروزه نوشته ميشوند شديداً وابسته به محاسباتند و ميتوانند به صورت موازي قابل اجرا بر روي يك گريد باشند.
3-4-2 منابع مجازي و سازمانهاي مجازي براي مشاركت:
قابليت ديگري كه به وسيله آن محاسبات توري آشكار ميشود ايجاد يك محيط همكاري بين گروه بزرگتري از افراد است. در گذشته distributed computing قول اين همكاري را داد و تا حدي هم به آن دست يافت. محاسبات توري ميتواند اين قابليتها را براي گروه وسيعتر هم ايجاد ميكند.
زماني كه استانداردهاي مهم عرضه ميشوند، سيستمهاي ناهمگن را قادر به همكاري با يكديگر ميكنند تا تصوير يك سيستم مجازي بزرگ را ايجاد كند كه تنوع وسيعي از منابع را عرضه ميكند. كاربران گريد ميتوانند به صورت خودكار به يك تعداد سازمانهاي مجازي سازماندهي شوند كه هر يك داراي نيازها و سياستهاي متفاوتي هستند. اين سازمانهاي مجازي ميتوانند منابع خود را به صورت جمعي به صورت يك گريد به اشتراك بگذارند. اين به اشتراك گذاشتن منابع با ديتا به فرم فايلها و پايگاه دادهها آغاز ميشود. يك data گريد ميتواند قابليتهاي ديتا را به چندين روش
توسعه دهد. فايلها و پايگاه دادهها ميتوانند تعداد زيادي سيستم را به هم پل بزنند. بنابراين يك سيستم واحد با ظرفيت بالاتر خواهيم داشت. چنين پل زدني ميتواند نرخ انتقال ديتا را از طريق تكنيكهاي انشعاب (striping)، بهبود بخشد. ديتا ميتواند به صورت دونسخهاي براي سرويس دهي به صورت پشتيبان، وجود داشته باشد و همچنين ميتواند روي ماشينهايي كه احتمال نياز آنها به ديتا بيشتر است ميزبان شوند. به انضمام تكنيكهاي پيشرفته زمانبندي.
به اشتراك گذاشتن محدود به فايلها نيست و شامل منابع ديگري از قبيل منابع نرم افزاري، سرويس ها، مجوزها و مانند آن نيز ميشود.
شركاء و كاربران گريد ميتوانند اعضاي چندين سازمان واقعي و مجازي باشند. گريد ميتواد به اعمال قوانين امنيتي بين آنها و انجام سياستها كه اولويتهايي را براي هم منابع و هم كاربران برقرار ميكند، كمك كند.
4-4-2 دستيابي به منابع اضافي:
همان گونه بيان كرديم، به علاوه پردازنده و منابع ذخيره (حافظه ها) يك گريد ميتواند دسترسي به منابع ديگري را نيز به خوبي فراهم كند. منابع اضافي ميتوانند در تعداد و يا ظرفيت اضافي فراهم شوند. براي مثال اگر كاربري نياز به افزايش كل پهناي باند براي انجام يك جستجو در موتور جستجوي معدن ديتا داشته باشد، اين كار ميتواند بين ماشينهاي گريد كه به طور مستقل به
اينترنت متصلند شكسته شود. در اين روش با توجه به اينكه هر ماشين يك اتصال جداگانه به اينترنت دارد، قابليت جستجوي كلي چند برابر خواهد بود. اگر ماشنها اتصال به اينترنت را به اشتراك نمي گذاشتند، چنين افزايش مؤثري در پهناي باند پديد نمي آمد. برخي از ماشينها ممكن است نرم افزاري گران داشته باشند كه كاربران به آن نيازمندند.
در چنين حالتي كارهاي كاربران ميتواند به چنين ماشينهايي فرستاده شود و يك بهره وري كاملتري از مجوزها نرم افزار صورت گيرد.
برخي از ماشينها ممكن است دستگاههاي ويژهاي داشته باشند. شايد اغلب ما از پرينترهاي راه دور با قابليتهاي رنگ بهتر يا سرعت بالاتر استفاده كرده باشيم. به طور مشابه، يك گريد ميتواد به منظور ساخت تجهيزات ويژه ديگر به كار رود.
به عنوان مثال يك گريد ميتواند داراي سرعت بالا و يك DVD writer خود تغذيه باشد كه براي انتشار سريع يك تعداد داده استفاده ميشود. در گريد ممكن است تعدادي از ماشينها به يك ميكروسكوپ الكتروني دقيق متصل باشند كه ميتوانند از راه دور با آن كار كنند. در اين حالت زمانبندي و تخصيص مسايل مهمي هستند و يك نمونه ميتواند پيشاپيش به دستگاهي كه ميكروسكوپ را ميزباني ميكند فرستاده شود. سپس كاربر ميتواند از راه دور از ماشين استفاده كند و ديد مناظر را تغيير دهد تا زماني كه تصوير مطلوب گرفته شود.
گريد ميتواند توانايي دسترسي پركار را ايجاد كند و همچنين توانايي تشخيص پزشكي از راه دور و استفاده ابزار جراحي رباتيك با فعل و انفعال دو طرفه را از يك مسافت دور فراهم كند. امروزه ما راه اندازهاي راه دور براي چاپگرها را داريم و سرانجام مااستانداردهاي قابل فعال شدن با گريد را در بسياري از دستگاهها و منابع نامتعارف خواهيم ديد. همه اينها گريد را به يك سيستم بزرگ با يك مجموعه از منابع تبديل خواهد كرد كه چيزي فراتر از چيزي است كه فقط روي يك ماشين قراردادي در دسترس است.
5-4-2 توازن منابع:
يك گريد تعداد زيادي از منابعي را كه به وسيله ماشينهاي شخصي شركت ميكنند را به شكل يك سيستم واحد بزرگ، هم پيمان ميكند. گريد ميتواند براي برنامههاي كاربردياي كه قابل فعال شدن در گريد هستند يك توازن منابع را به وسيله زمان بندي كارهاي روي ماشينهاي گريد كه كاربرد كمي دارند، ايجاد كند به گونهاي كه در شكل زير نمايش داده شده است.
اين ويژگي ارزش اداره حداكثر بارهاي فعاليتي را كه گاهي در يك سازمان بزرگ رخ ميدهد را ثابت ميكند. اين مسذله به دو طريق ميتواند اتفاق بيفتد:
يك اوج غيرمنتظره ميتواند در ماشينهاي نسبتاً بيكار در گريد ريشه داشته باشد.
اگر در حال حاضر يك گريد كاملاً در حال استفاده باشد، كاري با كمترين اولويت كه در حال انجام روي گريد است ميتواند به صورت موقتي معلق شود و يا حتي لغو شود و بعداً دوباره انجام شود تا بدين طريق فرصتي را براي كاري با اولويت بالاتر ايجاد كند. بدون داشتن يك زيربنا براي گريد چنين تصميمات هماهنگي به سختي اولويت بندي و اجرا ميشوند.
گاهي يك پروژه ممكن است به طور ناگهاني اهميتش افزايش يابد با يك مهلت خاص كه به آن اختصاص داده شده. يك گريد اگر خيلي بسته باشد، نمي توانند معجزه كند و به پشتيباني از مهلت زماني توسعه يابد. هر چند اگر اندازه يك كار مشخص باشد، و اگر كاري باشد كه قابل شكسته شدن به تعدادي كار كوچكتر باشد و منابع كافي نيز در دسترس باشند، پس از اينكه كار با اولويت كمتر قبضه شد، گريد ميتواند قدرت پردازش بالايي را براي حل مسايل ايجاد كند.
6-4-2 قابليت اطمينان
سيستمهاي محاسبه قراردادي high-end سخت افزار گراني را براي افزايش قابليت اطمينان به كار ميبرند. اين سخت افزارها از چيپهاي فراواني كه نتايج را ارايه ميكنند تشكيل شده اند و شامل مناطقي كه يك طبقه بندي از عيوب سخت افزار را ترميم ميدهند.
همچنين ماشينها از پردازندههاي دوتايي با قابليت hot plugability استفاده ميكنند به گونهاي كه هنگامي كه يكي از آنها از كار افتاد ديگري بتواند جايگزين آن شود
. همچنين منابع برق و سيستمهاي خنك كننده نيز به صورت دو نسخهاي به كار ميروند. سيستمهايي نيز روي منابع قدرت اعمال شده اند كه ميتوانند به هنگام توقف برق، ژنراتورها را روشن نگه دارند. همه اينها سيستمي مطمئن را براي ما ايجاد ميكنند كه به واسطه دو برابر كردن كامپيوننتها بسيار گران قيمت است.
در آينده يك ديدگاه مكمل كه بر قابليت اطمينان تكيه ميكند خواهيم ديد كه بر نرم افزار و سخت افزار تكيه ميكند. يك گريد فقط شروعي براي چنين تكنولوژياي است. در يك گريد سيستمها از نظر جغرافيايي به گونهاي نسبتاً ارزان پراكنده شده اند.
بنابراين اگر يك خرابي در برق يا ديگر منابع پيش بيايد روي ديگر قسمتها گريد تأثير نمي گذارد. هنگامي كه يك نقص تشخيص داده ميشود، نرم افزار مديريت گريد به صورت خودكار ميتواند كارها را به ديگر ماشينهاي گريد منتقل كند. از طريق گريد همان گونه كه در شكل زير ميبينيد چند كپي از كارهاي مهم ميتوانند روي ماشينهاي گريد اجرا شوند.
چنين سيستمهاي گريد، از محاسبات خودگردان استفاده ميكنند كه نوعي نرم افزار است كه به طور خودكار مشكلات گريد را شايد حتي قبل از اينكه يك اپراتور يا مدير از آن آگاه شود، ترميم ميكند.
7-4-2 مديريت:
هدف مجازي سازي منابع روي گريد و سيستمهاي نامتجانس با قابليت اطمينان بالاتر، موقعيتهاي جديدي براي مديريت بهتر يك زير بناي IT بزرگتر و توزيع شده تر ايجاد خواهد كرد. اگر ظرفيت و بهره وري را مجازي كنيم، كنترل هزينههاي يك سازمان بزرگتر براي سازمانهاي IT آسانتر خواهد بود.
در گذشته هر پروژ مسؤول تحقيقات و هزينههاي مخصوص خودش بود. اين منابع ممكن است تا زماني استفاده شوند كه پروژه ديگري با مشكل مواجه شود و به واسطه رخدادهاي غيرمنتظره نياز به منابع بيشتري داشته باشد. با يك ديد كلي تر، يك گريد ميتواند باعث شود كه كنترل چنين موقعيتهايي آسان شود. همانطور كه در شكل زير ميبينيد مديران ميتوانند روي تعداد سياستهاي اشتراكي ساختن منابع و رقابت براي به دست آوردن منابع تأثير بگذارند
.
هنگامي كه پشتيباني موردنياز باشد، كار گريد ميتواند به ماشينهاي ديگر مسيردهي شود بدون اينكه پروژه درگير از كار بيفتد.
همچنين در اينجا محاسبات خودكار ميتوانند نقش مهمي را بازي كنند. ابزار متفاوتي ممكن است از طريق گريد قادر به تشخيص روشهاي مهم با مديريت آگاه سازي آنهايي كه نياز به دقت دارند، باشند.
5-2 مدل معماري گريد
مدل جديد يا به عبارتي تكنولوژي جديدي براي تأسيس و مديريت منابع اشتراكي، توسعه داده شده است. اين مدل جديد، معماري گريد ناميده ميشود كه كامپوننتهاي اصلي يك سيستم گريد را تشخيص ميدهد. معماري گريد اهداف و وظايف كامپوننتها را مشخص ميكند و معين ميكند كه چگونه اين كامپوننتها با هم تراكنش دارند.
تمركز اصلي در اين معماري، بر قابليت عملي شدن برقراري ارتباطات بين تهيه كنندگان منابع و كاربران (استفاده كنندگان) است. اين قابليت مستلزم پروتكلهاي مشترك در هر لايه از مدل معماري است كه منجر به تعريف يك معماري پروتكل گريد به گونه اين كه در شكل نشان داده شده است ميشود.
اين معماري، مكانيزم ها، واسط ها، شماها و پروتكلهاي مشترك در هر لايه را تعريف ميكند تا كاربران بتوانند مذاكره كنند، و منابع را تأسيس، مديريت و اشتراكي كنند. شكل 7-2 لايههاي كامپوننتهاي معماري، گريد و قابليتهاي هر لايه را نشان ميدهد. هر لايه رفتار لايههاي كامپوننتهاي زيرين را به اشتراك ميگذارد.
در ادامه ويژگيهاي اصلي هر يك از اين لايهها كامپوننتها با شروع از پایین شکل و با حرکت به سمت بالا شرح داده می شود.
لايه فابريك
لايه فابريك واسطي براي منابع محلي كه ممكن است به اشتراك گذاشته شوند تعريف ميكند كه شامل منابع محاسباتي، ذخيره ديتا، شبكه ها، كاتالوگ ها، ماژولهاي نرم افزاري و ديگر منابع سيستم است.
لايه ارتباط
لايه ارتباط پروتكلهاي ارتباطي و تصديقي موردنياز براي تراكنشهاي سرويس شبكهاي مخصوص گريد را شرح ميدهد.
لايه منابع
اين لايه پروتكلهاي ارتباطي و امنيتي (تعريف شده توسط لايه ارتباط) را براي كنترل مذاكرات امن، ورود، بازنگري، حسابداري و پرداخت براي به اشتراك گذاشتن توابع منابع منفرد را به كار ميبرد.
لايه منابع، توابع لايه فابريك را براي دسترسي و كنترل منابع محلي صدا ميزند. اين لايه فقط مديريت منابع منفرد را برعهده ميگيرد و وضعيتهاي سراسري سيستم را كه از وظايف لايه جامع هستند ناديده ميگيرد.
لايه جامع
لايه جامع مسؤول مديريت همه منابع سرسري و تراكنشهاي مجموعه منابع است. اين لايه از پروتكل يك تنوع وسيعي از اشتراكي كردن رفتارهايي كه تعداد كمي از پروتكلهاي لايه منابع و ارتباط را به كار ميبرند را پياده سازي ميكند.
لايه درخواست
لايه درخواست، استفاده از منابع در يك محيط گريد از طريق پروتكلهاي همكاري و دسترسي به منابع متنوع را امكان پذير ميسازد.
1-5-2 ارزيابي معماري گريد:
در سال 1998 اعلام شد كه: «يك گريد محاسباتي يك زيربناي نرم افزاري و سخت افزاري است» به گونهاي كه دستيابي:
1- قابل اعتماد
2- سازگار
3- نفوذ كننده
4- كم هزينه
را به قابليتهاي محاسباتي امكان پذير ميسازد.
اين تعريف گريد روي جنبههاي محاسباتي متمركز شده بود. بعداً اين تعريف با تمركز بيشتر روي اشتراك گذاري منابع هماهنگ و حل مسايل، گسترش يافت.
6-2 ارزيابي معماري محاسبات گريد ومدلهاي گريد - Adoption:
يك سيستم توزيع شده شامل مجموعهاي از عاملهاي نرم افزاري است كه با يكديگر كار ميكنند تا برخي از عملكردهاي موردنظر را پياده سازي كنند به دليل اينكه عاملها در سيستم توزيعي در يك محيط پردازش يكنواخت نمي توانند عمل كنند. اصول محاسبات توري بر روي سيستمهاي
توزيعي با مقياس بالا كه منابع را به اشتراك ميگذارند، به صورت انعطاف پذير، مطمئن و هماهنگ، استفاده از محاسبات عملياتي بالا را براي حل مسايل پويا نتيجه ميدهد. نتيجه اين به اشتراك گذاري هماهنگ و پويا، در كاربردهاي ابتكاري، استفاده از محاسبات با توان عملياتي بالا براي حل مسايل پويا ميباشد.
يكي از نيازهاي اساسي يك سيستم توي (گريد)، توانايي فراهم ساختن سرويسهاي با كيفيت بالا و موردنياز جهت رضايت كاربر ميباشد. بدين ترتيب ارزيابي سرويسهاي با كيفيت بالا بايد به عنوان يك ويژگي اساسي در هر سيستم توري وجود داشته باشد.
اين سرويسهاي با كيفيت بالا ميتواند شامل:
1- اندازه گيري زمانهاي پاسخ
2- كنترل، نظارت و اندازه گيري كارايي وقايع متراكم
3- برقراري امنيت
4- منابع مقياس پذير
5- در دسترس بودن
6- ويژگيهاي استقلال
7- مكانيزمهاي Fail-Over
8- سرويسهاي شبكه
7-2 استانداردها براي محيطهاي گريد:
محاسبات توري شامل مفاهيم بسياري هستند و ميتوانند به روشهاي متفاوتي تعريف شوند. تكنولوژيهاي بسياري، جهت پياده سازي محيطهاي گريد، ميتوانند مورد استفاده قرار گيرند. با اين وجود براي حصول اطمينان از اين كه منابع گوناگون، در سكوهاي سخت افزاري و نرم افزاري متنوع، ميتوانند به صورت امن قرار گيرند و ارتباط داخلي برقرار كنند، نيازمند تعريف استانداردها ميباشيم.
تكنولوژيهاي موردنياز در محاسبات توري عبارتند از:
- از اجراي برنامههاي مختلف در محيطهاي مختلف حمايت كند.
- زيربناي امن
- انتقال داده
- كشف منابع
- مديريت منابع
براي هر كدام از اين محيط ها، تكنولوژيهاي گوناگوني كه ميتواند جهت اداره كردن آنها به كار رود، در دسترس است.
در اينجا تعدادي از اين استانداردها را بررسي خواهيم كرد:
1-7-2 استاندارد OGSI:
جز اصلي از معماري OGSA عبارت است از OGSI كه يك استاندارد زيربنايي نرم افزاري گريد براساس به وجود آمدن استانداردهاي سرويس وب ميباشد. هدف OGSI فراهم نمودن ماكزيمم ارتباط داخلي اجزاي نرم افزار OGSA ميباشد. شكل زير لايه بندي اجزاي OGSI در يك سرويس وب با واسط عملكرد جديد را نشان ميدهد:
2-7-2 استاندارد گريد FTP:
يك پروتكل قابل اطمينان و ايمن جهت انتقال داده، با كارايي بالا و بهينه براي شبكههاي گسترده كه پهناي باند زيادي دارند ميباشد.
همان گونه كه ممكن است از نام اين پروتكل حدس زده شود، اين پروتكل براساس پروتكل FTP اينترنت ميباشد و به دليل گستردگي كه دارد به عنوان يك ابزار مطلوب در محيطهاي گريد ميباشد.
گريد FTP ميتواند براي انتقال فايلها (خصوصاً فايلهاي بزرگ) در يك شبكه به صورت كارا و امن استفاده شود.
3-7-2 استاندارد WSRF:
WSRF يك اصطلاح عمومي است كه شامل چندين استاندارد پيشنهاد شده مرتبط ميباشد كه موارد زير را پوشش ميدهد:
- منابع
- طول عمر منابع
- ويژگيهاي منابع
- گروههاي سرويس دهي
- نقص ها
- اخطارها
- ضوابط
4-7-2 استانداردهاي مرتبط با سرويسهاي وب:
به دليل اينكه سرويسهاي گريد بسيار مرتبط با سرويسهاي وب هستند، استانداردهاي مرتبط با سرويس وب به سرويسهاي گريد نيز مرتبط ميشوند.
در اينجا تمامي اين استانداردها را بررسي نخواهيم كرد اما براي آشنايي بيشتر با اين استانداردها تنها به معرفي برخي از آنها خواهيم پرداخت:
XML -
WSDL -
- SOAP
UDDI -
8-2 معرفي امنيت گريد (گريد Security):
نيازهاي امنيتي براي طراحي گريد، اساسي و بنيادي هستند. اجزاي امنيتي اصلي، شامل مكانيزمهايي جهت تصديق، مجوز و ارتباط محرمانه بين كامپيوترهاي گريد ميباشد. بدون اين عملكرد، يكپارچگي و محرمانه بودن دادههاي پردازش شده در گريد، به خطر ميافتد.
براي اينكه امنيت محيط گريد شما به درستي برقرار باشد، ابزارها و تكنولوژيهاي در دسترس بسياري وجود دارند.
براي فهم بهتر امنيت گريد، برخي از نيازهاي اساسي امنيت و اصول امنيت گريد را مورد بررسي قرار خواهيم داد. امنيت گريد توسط استانداردها امنيتي مشهور بنا ميشود.
1-8-2 نيازهاي امنيتي گريد:
يك سازمان مجازي (Virtual Organization)، يكي از مفاهيم بنيادين در محيط گريدهاي امروزي ميباشد. يك سازمان مجازي (VO)، به عنوان يك گروه پويا از اشخاص، گروهها و سازمانهايي كه شرايط و قوانين را براي به اشتراك گذاري منابع تعريف ميكنند، ميباشد.
محيط گريد نيازمند اين است كه مديريت و به اشتراك گذاري منابع را در يك سازمان مجازي (VO)، هماهنگ كند كه به اين موضوع اشاره دارد كه كاربرد گريد ممكن است دامنههاي مديريتي چندگانه داشته باشد.
زيربناي امنيتي يك گريد مستلزم موافقت با سياستهاي امنيتي دامنه محلي ميباشد.
براي رسيدن به اين نيازها، زيربناي امنيتي گريد مستلزم است تا ارتباط بين دامنههاي متفاوت را برقرار كند.
2-8-2 چالشهاي امنيتي موجود در محيط يك گريد:
- يكپارچگي (Integrity):
زيربناي امنيتي گريد مستلزم تبعيت از زيربناي امنيتي موجود در محيطهاي ميزباني و Platformها ميباشد.
- ارتباط داخلي (Interoperability):
يك درخواست سرويس گريد ميتواند دامنههاي امنيتي چندگانه را سپري كند.
3-8-2 دامنههاي امنيتي گريد:
دامنههاي امنيتي گريد ميتوانند به صورت زير باشند:
- Authentication:
تهيه واسطها جهت عبور از مكانيزمها و اهداف اعتبارسنجي متفاوت براي رسيدن به مكانيزم استفاده شده.
- Delegation:
تهيه مكانيزمها جهت اجازه نمايندگي براي دستيابي صحيح از درخواست كنندگان به سرويسها با اطمينان از اينكه دستيابيها با توجه به محدوديتهاي سياستي، محدود ميباشد.
- Single Logon:
تغيير دادن يك مجوز براي يك بازه زماني كوتاه، هنگامي كه دستيابيهاي بعدي به منابع گريد درخواست ميشود.
- Authorization:
توانايي كنترل دستيابي به اجزاي گريد براساس سياستهاي اعتبارسنجي تعريف شده.
- Privacy:
دادن مجوز هم به درخواست كننده سرويس و هم به تهيه كننده سرويس جهت تعريف و اجراي سياستهاي پنهان.
- Confidentiality:
از محتواي پيامها و امور محرمانه، حفاظت ميكند.
- Message Integrity:
حصول اطمينان از اينكه تغييرات غيرمجاز وارد شده در محتواي پيامها يا داده ها، ميتوانند توسط گيرنده پيامها و داده ها، كشف شوند.
- Policy Exchange:
مكانيزمهاي امنيتي را، براساس اطلاعات سياستي امنيتي، بين درخواست كننده سرويس و فراهم كننده سرويس، برقرار ميكند.
از جمله دامنههاي امنيتي ديگر گريد عبارتند از:
- Credential Life Span and Renewal
Secure Logging -
Assurance -
- Manageability
Firewall Traversal -
- Securing the OGSA infrastructure
نمودار زير يك نماي سطح بالا از اجزاي گوناگون از يك مدل امنيتي گريد ارايه ميدهد:
4-8-2 اصول امنيت:
امنيت به 3 سرويس اساسي نيازمند است:
1- Authentication
2- Authorization
3- Encryption
يك منبع گريد بايد قبل از هر عملياتي، اعتبارسنجي شود. فرض كنيد كه به يك كاربر براي اولين مجوز يك گريد داده شده است. كاربر گريد ميتواند اجازه دسترسيهاي معين به منابع گريد را داشته باشد.
دنياي امنيت داراي مجموعهاي از اصطلاحات علمي و فني مخصوص به خود ميباشد. سازمان بين المللي استاندارد (ISO)، سرويسهاي امنيتي مشتركي را در سيستمهاي پيشرفته IT تعريف كرده است. براي فهم بهتر سرويسها و سيستمهاي امنيتي، تعدادي از اصطلاحات امنيتي را بررسي ميكنيم.
- Authentication
اعتبارسنجي فرآيند تصديق اعتبار يك شخص و تشخيص اينكه او چه كسي است، ميباشد. اعتبارسنجي تنها به انسانها محدودنمي شود بلكه ممكن است شامل سرويس ها، درخواستها و موجوديتهاي ديگر كه نيازمند اعتبارسنجي ميباشند، باشد.
- Access Control:
اطمينان از اينكه هر كاربر يا كامپيوتري كه سرويسها را مورد استفاده قرار ميدهد، مجاز به كارهايي كه انجام ميدهد، ميباشد.
- Data Integrity:
اطمينان ميدهد كه دادهها به صورت غيرمجاز، تغيير پيدا نكرده اند و يا خراب نشده اند.
- Data confidentiality:
اطلاعات محرمانه و حساس نبايد براي هر شخصي آشكار شوند.
- Key Management:
«مديريت كليد»، با توليد امن، توزيع امن، اعتبارسنجي امن و ذخيره سازي امن از كليدهاي استفاده شده سروكار دارد.
5-8-2 اصطلاحات مهم در رابطه با امنيت گريد:
- Symmetric Encryption:
كليد محرمانه يكسان جهت انجام هر دو عمل « Encryption» و «Decryption».
- Asymmertic Encryption:
دو كليد متفاوت، يكي براي انجام عمل « Encryption » و كليد متفاوت ديگري جهت انجام عمل «Decryption» به كار ميبرد.
- Secure Socket Layer/ Transport Layer Security:
اين دو مفهوم، دو پروتكل ضروري يكسان هستند.
- (PKI) Public Key Infrastructure:
كامپوننت ها، تكنولوژيها و پروتكلها متفاوتي هستند كه يك راه حل نامتقارن را ايجاد ميكنند.
- Mutual Authentication:
به جاي به كار بردن مخزن LDAP، جهت نگهداري PKI، دو طرفي كه ميخواهند با يكديگر ارتباط برقرار كنند، PKIهاي ذخيره شده خود را براي اعتبارسنجي با طرف مقابل به كار ميبرند.
- Symmetric Key Encryption:
براساس به كارگيري يك كليد مخفي براي انجام دادن هر دو عمل Encryption و Decryption از داده ها، ميباشد. براي حصول اطمينان از اينكه دادهها تنها توسط گيرنده و فرستنده پيام، قابل خواندن است، بايد كليد به صورت امن تنها بين فرستنده و گيرنده و نه اشخاص ديگر توزيع شود.
اين نوع از Encryption، از لحاظ كارايي (Performmance)، مفيدتر از روش Asymmertic Key Encryption ميباشد اما نيازمند مديريت و توجه اضافي در اداره كردن كليد به اشتراك گذاشته شده، ميباشد.
Asymmertic Key Encryption:
يكي ديگر از متدهاي رايج مخفي سازي، متد Public Key ميباشد. در مخفي سازي به روش Public Key، يك زوج كليد نامتقارن به نامهاي Public Key و Private Key براي عمليات Encryption و Decryption مورد استفاده قرار ميگيرند. يعني كليدي كه براي عمل رمزنگاري (Encryption) استفاده ميشود با كليدي كه جهت آشكارسازي (Decryption)، استفاده ميشود، متفاوت است.
در حالت پنهان سازي با Public Key نيازمند دانستن مالكان كليد هستيم تا كليدهاي Private آنها محافظت شود در حالي كه كليدهاي Public مخفي نيستند و ميتوانند مورد استفاده همه قرار گيرند.
به طور طبيعي كليد Public به روش ديجيتالي مهيا ميشود. الگوريتم محاسباتي مرتبط با كليد Public و كليد Private، به گونهاي طراحي شده است كه يك متن رمزنگاري شده تنها توسط كليد مرتبط با عمل Decryption، ميتواند آشكار شود و يك پيام رمزنگاري شده (Encryption)، نمي تواند توسط كليد Encryption، آشكار شود، هر كدام از دو كليد Public و Private كه دادههاي شما را رمزنگاري كردند، براي آشكارسازي همان داده بايد از كليد ديگر استفاده كنيد. به عنوان نمونه يك پيغام با كليد Public رمزنگاري شده است (Encryption)، بنابراين اين پيغام تنها و تنها توسط كليد ديگر يعني Private قابل آشكارسازي (Decryption) است.
براي اينكه يك پيام بين فرستنده و گيرنده كاملاً ايمن باشد، 2 مرتبه از كليد Public استفاده ميشود. ابتدا فرستنده پيام، جهت رمزنگاري پيام موردنظر از كليد Private استفاده ميكند و سپس پيام را مجدداً با استفاده از كليد Public متعلق به گيرنده پيام، رمزنگاري ميكند. گيرنده پيام ابتدا عمل آشكارسازي پيام را با استفاده از كليد Private خودش و سپس با استفاده از كليد Public متعلق به فرستنده، انجام ميدهد.
در اين روش يك پيام رمزنگاري شده، توسط ديگران قابل خواندن نيست. علاوه بر اين هرگونه تلاش جهت دستيابي و دستكاري پيام رمزنگاري شده با شكست مواجه شده و اين كار به درستي انجام نمي شود و دسترسيهاي غيرمجاز قابل مشاهده خواهد بود. زوج كليد نامتقارن (/Private
Public)، توسط محاسبات ايجاد ميشوند كه با پيدا كردن 2 عدد اول بسيار بزرگ شروع ميشود. حتي اگر كليد Public به صورت گستردهاي توزيع شده باشد، براي كامپيوترها، عملاً محاسبه كليد Private، از كليد Public غيرممكن است. اين الگوريتم رياضي امنيت را توسعه ميدهد ولي از طرفي نيازمند زمان زيادي جهت آشكارسازي (Encryption)، ميباشد.
6-8-2 The Certificate Authority:
مجوز اعتبارسنجي (CA)، كه به صورت صحيح پياده سازي شده است وظايف و مسئوليتهاي بسياري برعهده دارد.اين وظايف بايد به صورت دقيق دنبال شوند تا به يك امنيت مطلوب دست پيدا كنيم.
اين مسئوليتهاي اساسي عبارتند از:
• اعتبارسنجي درخواست تشخيص موجوديت ها
• صادر كردن، حذف كردن و بايگاني كردن سندها (Certificate)
• محافظت كردن از سرويس دهنده CA
• نگهداري يك فضاي نام از نامهاي يكتا براي مالكان اسناد
• به كار بردن اسناد امضا شده براي نيازهاي اعتبارسنجي موجوديت ها
• فعاليت Login كردن
اسناد ديجيتالي, مدارك ديجيتالي ميباشند كه منبع گريد را به كليد Public مخصوص اش مرتبط ميكنند.
در حقيقت يك سند، يك ساختار داده شامل يك كليد Public و جزيياتي شامل مالك كليد ميباشد. يك سند، يك ID ي الكترونيكي جهت داشتن مجوز استفاده از محيط گريد ميباشد.اسناد ديجيتالي همچنين اسناد X.509 نيز ناميده ميشوند كه بسيار شبيه به يك Passport عمل ميكند.