عصر رایانه

(فناوری - شبکه - اینترنت - نرم/سخت افزار )

فناوری Grid
ساعت ٦:٠٧ ‎ق.ظ روز ۱۳۸٧/٤/۸  
فناوری‌ Grid - انقلابی در فناوری اطلاعات که به ‌وعده‌های اینترنت عمل می‌کند! اشاره : Grid Computing یا شبکه‌های متصل کامپیوتری مدل شبکه‌ای جدیدی است که با استفاده از پردازشگرهای متصل به هم امکان انجام‌دادن عملیات‌ حجیم محاسباتی را میسر می‌سازد. Gridها در واقع از منابع کامپیوترهای متصل به‌شبکه استفاده می‌کنند و می‌توانند با استفاده از برآیند نیروی این منابع، محاسبات بسیار پیچیده را به‌راحتی انجام دهند. آن‌ها این کار را با قطعه قطعه کردن این عملیات و سپردن هر قطعه به‌کامپیوتری در شبکه انجام می‌دهند.
فناوری‌ ‏Grid‏ - انقلابی در فناوری اطلاعات‏ اشاره : ‏ Grid Computing‏ یا شبکه‌های متصل کامپیوتری مدل شبکه‌ای جدیدی است که با استفاده از پردازشگرهای ‏متصل به هم امکان انجام‌دادن عملیات‌ حجیم محاسباتی را میسر می‌سازد. ‏Gridها در واقع از منابع کامپیوترهای ‏متصل به‌شبکه استفاده می‌کنند و می‌توانند با استفاده از برآیند نیروی این منابع، محاسبات بسیار پیچیده را ‏به‌راحتی انجام دهند. آن‌ها این کار را با قطعه قطعه کردن این عملیات و سپردن هر قطعه به‌کامپیوتری در شبکه ‏انجام می‌دهند.‏ به عنوان مثال وقتی شما از کامپیوترتان برای مدتی استفاده نمی‌کنید و کامپیوتر شما به‌ اصطلاح به‌وضعیت ‏محافظ نمایشگر یا ‏Screensaver‏ می‌رود، از پردازشگر کامپیوتر شما هیچ استفاده‌ای نمی‌شود. اما با استفاده از ‏شبکه‌های ‏Grid‏ می‌توان از حداکثر توانایی‌های پردازشگر‌ها استفاده نمود و برنامه‌ای را در کامپیوتر قرار داد ‏که وقتی از سیستم استفاده‌ای نمی‌شود، این برنامه بتواند از نیروی بلااستفاده دستگاه بهره بگیرد و قسمتی از ‏محاسبات بزرگ عملیاتی را انجام دهد. در این مقاله این پدیده در فناوری اطلاعات مورد بحث قرار می‌گیرد و ‏اهمیت استفاده از این فناوری، پیچیدگی‌ها، اجزای تشکیل دهنده و استانداردهای این مدل بررسی می‌شود و نشان ‏داده خواهد شد که با استفاده از این مدل چگونه در وقت و زمان شما صرفه‌جویی می‌شود. گفتنی است در حال ‏حاضر بزرگ‌ترین شبکه ‏Grid‏ جهان در خدمت پروژه ‏SETI@home‏ برای یافتن حیات هوشمند فرازمینی ‏قرار دارد. در شماره ۵۵ ماهنامه شبکه مصاحبه‌ای اختصاصی با دکتر دان ورتیمر، دانشمند ارشد این پروژه ‏توسط سردبیر ماهنامه انجام شده‌بود.‏ امروزه فناوری جدیدی به‌ نام ‏Grid‏ به ‌عرصه ارتباطات الکترونیک قدم نهاده است که براساس‏‎ ‎آن با دانلود ‏کردن یک محافظ نمایشگر مخصوص می‌توانیم به‌کامپیوترهای شخصی خود اجازه دهیم که وقتی از آن استفاده ‏نمی‌کنیم، به ‌شبکه جهانی متصل شوند و به ‌سیستم‌های بزرگ تحقیقاتی اجازه دهند از منابع آزاد و بلااستفاده ‏سیستم ما استفاده نمایند.‏ Grid computing‏ چیست ؟‏ ‎ ‎حدود ۳۳ سال از به ‌وجود آمدن اینترنت می‌گذرد و از سال ۱۹۸۹ که وب پدید آمد، بیشتر مردم از آن ‏استفاده می‌کنند و به‌صورت بخشی از زندگی ایشان در آمده است. شاید علت این استفاده زیاد از اینترنت، ‏استاندارد باز آن بوده است که امکان ارتباط کامپیوترهای مختلف را با یکدیگر مهیا می‌سازد. با استفاده از ‏اینترنت می‌توانید از هر کامپیوتری که به‌آن متصل است، ایمیل بفرستید و شخصی در آن طرف دنیا با ‏کامپیوتری کاملاً متفاوت با کامپیوتر شما، آن ایمیل را به ‌راحتی بخواند و به ‌شما ایمیل دیگری بفرستد. امروزه ‏تقریباً تمامی ‌شرکت‌ها و سازمان‌های بزرگ، برای تبادل اطلاعات و فرستادن ایمیل به‌مشتریان خود از اینترنت ‏استفاده می‌کنند. پرسش این است که آیا به‌راستی امکاناتی که اینترنت در اختیار ما قرار می‌دهد، فقط در فرستادن ‏ایمیل و داشتن وب‌سایت خلاصه می‌شود؟ آیا اینترنت امکان استفاده از منابع سخت‌افزاری سیستم‌های دیگر را ‏نیز به‌ ما می‌دهد؟ پس از اینترنت چه ابزار یا بستری خواهد آمد؟ ‏ امروزه فناوری جدیدی به‌ نام ‏Grid‏ به ‌عرصه ارتباطات قدم نهاده است که براساس آن با دانلودکردن یک ‏محافظ نمایشگر مخصوص می‌توانیم به‌کامپیوترهای شخصی خود اجازه دهیم که وقتی از آن استفاده نمی‌کنیم، به ‏‏‌شبکه جهانی متصل شوند و به ‌سیستم‌های بزرگ تحقیقاتی اجازه دهند از منابع آزاد و بلااستفاده سیستم ما استفاده ‏نماید. کامپیوترهای امروزی مانند مغز انسان معمولا از بخش کوچکی از توانایی‌های خود استفاده می‌کنند و ‏اغلب به‌ صورت غیرفعالند و منتظر اطلاعات ورودی می‌مانند. تصور کنید که اگر از منابع سخت‌افزاری این ‏همه کامپیوتر غیرفعال استفاده شود و همه در یک کامپیوتر جمع شود، چه دستگاه پرقدرتی خواهیم داشت. ‏Grid ‎Computing‏ با ‌کمک به اینترنت زمینه‌ای را فراهم آورده است که بتوان با استفاده از آن، از منابع ‏سخت‌افزاری سیستم‌های دیگر نیز استفاده نماییم.‏ ممکن است ‏Grid‏ برای افراد مختلف معانی متفاوتی داشته باشد، اما اگر بخواهیم تعریف ساده‌ای از آن داشته ‏باشیم، می‌توانیم بگوییم ‏Grid Computing‏ در واقع به‌شما اجازه می‌دهد با استفاده از منابع سیستم‌های متصل ‏به‌ شبکه و ایجاد یک منبع بزرگ از سرویس‌ها و امکانات این سیستم‌ها، مرکزی بزرگ و قدرتمند به‌ وجود ‏آوریم که توانایی انجام‌دادن عملیات بسیار پیچیده‌ای را داشته باشد که یک سیستم به‌تنهایی نمی‌تواند انجام دهد. ‏به‌نحوی که از دید استفاده‌کنندگان این سیستم‌های بزرگ، این عملیات تنها از طریق یک سیستم انجام می‌شود.‏ Grid Computing‏ در حقیقت نسل جدیدی از شبکه‌های توزیع یافته است و همانند اینترنت به‌ کاربران خود ‏اجازه می‌دهد فایل‌ها را به ‌اشتراک بگذارند. به‌علا‌وه، منابع مشترکی از اطلاعات را برای استفاده‌کنندگان فراهم ‏می‌کند. با استفاده از این سیستم‌ها می‌توان منابع کامپیوترهای ناهمگون را به‌اشتراک گذاشت. هدف اصلی ‏Grid‏ ‏استفاده از این منابع مشترک مانند قدرت پردازنده، پهنای باند، پایگاه اطلاعاتی و در اختیار گذاردن آن برای ‏‏‌کامپیوتر مرکزی است.‏ انواع ‏Grid‏ ‏ ‎ ‎سیستم‌های ‏Grid‏ با توجه به‌ نیازهای کاربران می‌توانند در انواع مختلف مورداستفاده قرار گیرند. اغلب این ‏سیستم‌ها بر اساس نوع کاری که انجام می‌دهند، طبقه بندی می‌شوند. از سه نوع اصلی این سیستم می‌توان از ‏Gridهای اطلاعاتی، ‏Gridهای جوینده منابع و ‏Gridهای محاسباتی نام برد. ‏ • Gridهای اطلاعاتی یا ‏Data Grid‏ موظفند اطلا‌عات را ذخیره کنند و آن‌ها را در اختیار کاربران قرار ‏دهند. کاربران این سیستم‌ها بدون آن‌که از موقعیت جغرافیایی و مکانی این اطلاعات آگاه باشند، به ‌اطلاعات ‏دسترسی دارند. مثلاً تصور کنید که دو دانشگاه در دو سوی دنیا یکی در ایران و دیگری در انگلستان روی یک ‏مطلب علمی‌مشترک تحقیق می‌کنند و هر یک از آن‌ها اطلاعات خاص خود را ذخیره می‌کند و می‌خواهد دانشگاه ‏دیگر نیز به ‌برخی از ‌این اطلاعات (نه تمامی‌آن) دسترسی داشته باشد. این دانشگاه‌ها می‌توانند از یک ‏Data ‎Grid‏ استفاده کنند و اطلاعات خود را با ضریب امنیتی بالایی با هم به‌اشتراک بگذارند.‏ در این نوع ‏Grid‏ دستگاه‌های متصل به‌سیستم نیاز به‌قدرت زیاد ندارند و فقط مسئول به ‌اشتراک گذاشتن ‏اطلاعات هستند. ‏ • از طرف دیگر ‏Grid‏ ‌های محاسباتی یا ‏Computational Grid‏ از آن جا که نیاز زیادی به ‌قدرت ‏پردازنده‌ها دارند، باید از ماشین‌هایی با قدرت بسیار بالا استفاده نمایند. ‏ • یکی دیگر از انواع ‏Gridها، سیستم‌های جوینده منابع یا ‏Scavenging Grid‏ است. این سیستم‌ها از تعداد ‏زیادی کامپیوتر شخصی استفاده می‌کنند و بصورت مداوم ب‌دنبال ظرفیت‌ها، منابع آزاد و چرخه پردازنده (‏CPU ‎cycle‏) کامپیوتر‌های متصل به ‏Grid‏ هستند و از این منابع استفاده می‌نمایند. البته صاحبان این کامپیوترهای ‏شخصی باید قبلا‌ً اجازه استفاده از منابع بدون استفاده خود را بدهند. ‏ اهمیت ‏Grid Computing‏ ‏ ‎ ‎تقریبا در همه سازمان‌ها و شرکت‌های بزرگ تعدادی کامپیوتر بدون استفاده وجود دارد. مثلاً سرورهای ‏یونیکس از تقریباً ده تا بیست درصد از ظرفیت حقیقی خود استفاده می‌کنند و کامپیوترهای شخصی حدوداً از ۹۵ ‏درصد از ظرفیت خود اصلاً استفاده نمی‌کنند. با استفاده از ‏Grid Computing‏ در یک سازمان یا شرکت ‏بزرگ می‌توان از منابع بلا‌استفاده کامپیوترهای سازمان کمال استفاده را برد و سرعت پردازش اطلاعات در ‏سیستم‌هایی که با کمبود حافظه مواجهند را جبران نمود. از طرف دیگر، سرعت نرم‌افزارهایی که از این منبع ‏بزرگ سخت‌افزاری استفاده می‌کنند، بسیار بالاتر خواهد بود و در نتیجه می‌توانیم به ‌فکر درست کردن ‏نرم‌افزارهایی با قابلیت‌های بالاتر باشیم و منابع بیشتری را در اختیار استفاده‌کنندگان قرار دهیم. ‏ Grid Computing‏ می‌تواند مزایای زیادی برای مدیران و برنامه‌نویسان داشته باشد. مثلاً با آن می‌توان ‏برنامه‌هایی که نیاز به‌حافظه زیادی دارند را اجرا نمود و به ‌اطلاعات، دسترسی آسان‌تری پیدا کرد. اصولا ‏ًGrid Computing‏ می‌تواند به ‌سازمان‌ها و شرکت‌های بزرگی که سرمایه هنگفتی را در ‏IT‏ هزینه کرده‌اند، ‏کمک کند از سیستم‌های خود حداکثر استفاده را ببرند. ‏ فناوری‌های ‏Grid‏ در واقع می‌توانند از منابع و سیستم‌های غیرمتمرکز پشتیبانی کنند و امکان ارتباط سیستم‌ها را ‏با هم فراهم ‌سازند. وقتی برای اولین بار فناوری ‏Grid‏ ابداع شد، هدف آن تنها به‌اشتراک گذاشتن منابع سیستم و ‏در اختیارداشتن سیستمی ‌قدرتمند بود و به‌طور کلی بیشتر در اختیار مؤسسات تحقیقاتی قرار داشت. اما امروزه ‏از ‏Grid‏ توقع بیش‌تری می‌رود و اهمیت بیشتری پیدا کرده است؛ به‌ویژه در تجارت الکترونیک و سیستم‌های ‏تجاری غیرمتمرکز و توزیع‌یافته. به‌ عنوان نمونه، مدل تجارت الکترونیک ‏B2B‏ را در نظر بگیرید که دو ‏مؤسسه تجاری اطلاعات خود را از طریق اینترنت با هم مبادله می‌کنند. ‏Grid‏ نیز می‌تواند کاری مشابه ‌را انجام ‏دهد و دو یا چند سیستم تجاری را به‌هم مرتبط سازد. به‌طوری که بتوانند اطلاعات خود را به‌اشتراک بگذارند. ‏فناوری ‏Grid‏ همچنین می‌تواند راه‌حل مناسبی برای افزایش دسترسی، قابلیت اطمینان و امنیت سیستم‌های ‏غیرمتمرکز نیز باشد. ‏ ابزار قدرتمند ‏Globus‏ ‏ ‎ ‎یکی از قدرتمند‌ترین ابزارهای ایجاد، کنترل و مدیریت سیستم‌های ‏Grid، ابزار ‏Globus‏ است. پروژه ‏Globus‏ حدود سال ۲۰۰۳ به‌صورت عملی درآمد. این پروژه حاصل تلاش مشترک محققان و برنامه‌نویسان ‏Grid‏ در سرتاسر دنیاست که بر حول چهار محور بنا شده است: تحقیق، ابزارهای نرم‌افزاری، آزمون و ‏نرم‌افزار‌ها. این ابزار در نسخه ۲.۲ خود خدمات بسیاری به‌مدیران سیستم‌های ‏Grid‏ ارائه می‌کند که می‌توان به ‏امنیت، مدیریت منابع و مدیریت دقیق اطلاعات اشاره کرد. ‏Globus‏ با در اختیار گذاشتن ‏APIها و فایل‌های ‏Header‏ زبان ‏C‏ برای ساختن و کامپایل برنامه‌ها به ‌برنامه‌نویسان اجازه می‌دهد سیستم‌های خود را به ‏Grid‏ ‏متصل نمایند و به ‌مدیران امکان می‌دهد منابع متصل به ‏Grid‏ را به‌راحتی مدیریت کنند. ‏ اضافه براین، ‏Globus‏ با در اختیار گذاشتن ‏Componentهایی مخصوص، کار مدیران ‏Grid‏ را آسان‌تر ‏می‌کند. مثلاًGlobus‏ یک ابزار بسیار کارا به‌نام ‏Commodity Grid) COG‏) که زبان‌های برنامه‌نویسی مانند ‏Python، جاوا و فناوری‌های روز مانند سرویس‌های وب، کوربا و ‏RMI‏ را می‌شناسد و می‌تواند در دو بخش ‏تهیه نرم‌افزارهای سازگار با ‏Grid‏ و مدیریت سیستم‌های ‏Grid‏ به ‌ما کمک کند. البته نسخه ۲.۲ ابزار ‏Globus‏ ‏در برخی موارد ضعف‌هایی نیز دارد. این نسخه از سرویس‌هایی مثل مدیریت ‏Life-Cycle‏ یا چرخه زندگی ‏نرم‌افزار و سیستم‌های ذخیره و بازیابی پشتیبانی نمی‌کند. البته نسخه جدید ‏Globus‏ یعنی نسخه ۳ از آن جا که ‏سعی داشته است با معماری باز سرویس‌های ‏Grid‏ یا همان ‏the Open Grid Services Architecture) ‎OGSA‏) هم‌خوانی داشته باشد، توانسته‌است بسیاری از نقاط ضعف نسخه قبلی را رفع کند.‏ زشت و زیبا همه می اندیشند و من هیچگونه مسؤلیتی در قبال اندیشه و نظرات دیگران ندارم‏ نگاهی به‌اجزای ‏Grid‏ ‏ اجزای تشکیل دهنده ‏grid‏ عبارتند از:‏ ‏- رابط کاربر ‏ ‏- اجزای امنیت‌‏ ‏- مدیریت کنترل کار سیستم (‏Workload management‏)‏ ‏- زمانبند (‏Scheduler‏)‏ ‏- مدیریت اطلاعات (‏Data Management‏)‏ ‏- مدیریت منابع (‏Resource management‏)‏ در این قسمت به‌صورت مختصر در مورد هر یک از این اجزا توضیح داده می‌شود. دسترسی به ‌اطلاعات در ‏Grid‏ اهمیت شایانی دارد و رابط کاربر یا ‏User Interface‏ این مسئولیت مهم را عهده‌دار است. رابط کاربر ‏می‌تواند یا در برنامه‌ای که کاربر از آن مستقیما استفاده می‌کند یا در ابزارهای مدیریتی ‏Grid‏ که مورد استفاده ‏مدیر سیستم است، نقش ایفا کند. همانطور که شما برای استفاده از برق فقط وسیله برقی خود را به ‌پریز برق ‏متصل می‌کنید و لازم نیست از مکان منبع یا منابع اصلی این قدرت اطلاعی داشته باشید، استفاده کننده سیستم ‏Grid‏ نیز الزاماً نباید از پیچیدگی‌های داخل این سیستم‌ها مطلع باشد. مثال دیگر این‌که، شما از مرورگر وب ‏جهت استفاده از اینترنت استفاده می‌کنید؛ بدون این‌که از مکان سرور وب سایت اطلاعی داشته باشید و تنها با ‏وارد کردن آدرس سایت موردنظر، وب سایت آن در مرورگر نمایش داده می‌شود. اینترفیس ‏Grid‏ نیز باید مانند ‏مرورگر باشد. یعنی استفاده‌کننده ‏Grid‏ نیز از پیچیدگی‌های این سیستم اطلاعاتی ندارد و فقط با ورود یک ‏پارامتر ورودی، یک خروجی دریافت می‌کند. (شکل ۱) ‏ ‎ ‎شکل۱- سیستم‌های ‏Gird‏ از دید استفاده کنندگان‏ کامپیوترها در ‏Grid‏ به ‌شبکه متصلند. این سیستم‌ها همچنین می‌توانند حاوی اطلاعات بسیار مهم و حساسی ‏باشند. در نتیجه امنیت را می‌توان یکی از مهم‌ترین اجزایی این سیستم‌ها دانست که خود حاوی اجزای فرعی ‏مانند احراز هویت (‏authentication‏)، اختیارات (‏authorization‏) و رمزدهی (‏encryption‏) است. ‏ مثلاً ابزار ‏Globus‏ حاوی یک ‏Component‏ به‌ نام ‏Grid Security Infrastructure) GSI‏) یا ساختار زیر ‏بنایی امنیت ‏Grid‏ است که مسئولیت امنیت در محیط را برعهده دارد. ‏GSI‏ حاوی یک ‏SSL‏ باز است. در نتیجه ‏وقتی یک استفاده کننده یک بار به‌صورت مجاز به‌ سیستم راه پیدا کرد، یک ‏Proxy Certificate‏ برای کاربر ‏به‌ وجود می‌آید و برای آن کاربر در نظر گرفته می‌شود. ‏GSI‏ در درگاه ‏Grid‏ قرار دارد. (شکل ۲) ‏ ‎ ‎شکل۲- ‏GSI‏ در ‏Gird‏ ‏ استفاده کننده از یک سیستم ‏Grid‏ باید از منابع موجود و قابل دسترس در سیستم اطلاع داشته باشد. مدیریت ‏کنترل کار سیستم یا ‏Workload Management‏ می‌تواند این کار را به‌ راحتی انجام دهد. درخواست‌کننده ‏سرویس می‌تواند با ارتباط با این قسمت از منابع آزاد سیستم، ظرفیت هر منبع و موقعیت آن‌ها اطلاع حاصل ‏نماید. در سیستم‌های ‏Grid‏ که توسط ‏Globus‏ هدایت می‌شوند، زمانی که یک استفاده کننده شناسایی شد و ‏برنامه موردنظر آن کاربر اجرا گردید، با توجه به ‌نوع نرم‌افزار و پارامترهای ورودی کاربر، سیستم ‏Grid‏ ‏به‌دنبال منابع آزاد موجود در شبکه می‌گردد.‏ این وظیفه اغلب به‌ عهده ‏Broker‏ ها است. ‏Globus‏ به‌صورت عادی، ‏Broker‏ ندارند، اما از سرویس‌هایی ‏مانند Grid Information Service) GIS‏) و ‏Monitoring and Discovery Service) MDS‏) را پشتیبانی ‏می‌کنند که به‌سیستم اطلاع می‌دهند کدام منبع یا منابع قادرند منابع خود را در اختیار بگذارند. شکل ۳ موقعیت ‏این سرویس‌ها را نمایش می‌دهد. ‏ ‎ ‎شکل ۳- موقعیت سرویس‌های ‏MDS‏ در ‏Gird‏ ‏ یکی دیگر از اجزایی که در سیستم‌های ‏Grid‏ بسیار اهمیت دارد، زمانبند یا ‏Scheduler‏ است. در این سیستم‌ها ‏از آن جایی که باید هر کاری را کامپیوتر مشخصی به‌عهده بگیرد و هر کامپیوتر باید مدت زمانی را در اختیار ‏Grid‏ قرار دهد، سیستم نیاز به‌ یک زمانبند دارد. این زمانبند می‌تواند بسیار ساده باشد، اما اکثر زمانبند‌ها باید ‏بتوانند کارها را اولویت‌بندی کنند و سیستم را کنترل نمایند. در ابزار ‏Globus‏ زمانبند‌هایی با قابلیت بالا وجود ‏ندارند، اما تعدادی سازوکار زمانبند وجود دارد که کار زمانبندهای دقیق را تا حدی انجام می‌دهد. شکل ۴ ‏موقعیت زمانبند‌ها را در ‏Grid‏ نشان می‌دهد. ‏ ‏ ‏ ‎ ‎شکل ۴- موقعیت زمانبند‌ها در ‏Grid‏ ‏ جزء دیگر ‏Grid‎ها، مدیریت اطلاعات این سیستم‌ها است که وظیفه ذخیره‌سازی اطلاعات را در سیستم به عهده‌ ‏دارد. این بخش وظیفه محافظت از اطلاعات و جابه‌جایی این اطلاعات در تمامی‌دستگاه‌های متصل به ‏Grid‏ را ‏عهده‌دار است. جابه‌جایی و انتقال اطلاعات کار بسیار مشکلی است و اطلاعات باید از کانالی مطمئن منتقل شود. ‏ با استفاده از ابزار ‏Globus‏ و بخش مدیریت اطلاعات این ابزار، می‌توان محیطی امن برای انتقال این اطلاعات ‏به ‌وجود آورد. این قسمت از ‏Globus‏ به ‏Grid Access to Secondary Storage) GASS‏) معروف است ‏که امکاناتی مانند‏GridFTP‏ را دربردارد که مانند ‏FTP‏ است، اما امکانات امنیتی مانند ‏GSI‏ را نیز ‏دربرمی‌گیرد. در نتیجه وقتی یک کاربر‏Proxy Certificate‏ را داشته‌باشد، می‌تواند از ‏GridFTP‏ جهت انتقال ‏فایل‌ها استفاده کند؛ بدون آن که نیاز داشته باشد دوباره به‌ سیستم وارد شود. شکل ۵ موقعیت ‏GASS‏ را در ‏Grid‏ نشان می‌دهد. ‏ ‎ ‎شکل۵- ‏GASS‏ در ‏Gird‏ ‏ از دیگر بخش‌های مهم ‏Grid، بخش مدیریت منابع است که به‌ ‏Grid Resource Allocation Manager) ‎GRAM‏) شهرت دارد. این بخش وظایف هر دستگاه را مشخص می‌کند و باعث هماهنگی دستگاه‌های متصل به ‏‏‌شبکه در انجام‌دادن امور محوله است. شکل ۶ محل قرار گرفتن ‏GRAM‏ را نشان می‌دهد. ‏ ‎ ‎شکل ۶- بخش مدیریت منابع در ‏Grid‏ ‏ Grid‏ از دید برنامه نویسان ‏ ‎ ‎از دید برنامه‌نویسان، ‏Grid‏ از سازمان‌های مجازی‌ای تشکیل شده است که از پروتکل‌های مخصوصی ‏برای ارتباط با هم استفاده می‌کنند. این پروتکل‌ها به ‌استفاده‌کنندگان ‏Grid‏ و برنامه‌ها اجازه می‌دهند سرویس‌های ‏خود را در محیطی کنترل شده و امن اجرا کنند. این سازمان‌های مجازی می‌توانند یک کامپیوتر شخصی، ‏سروری قدرتمند یا کامپیوترهای متصل به‌ شبکه باشند که از آن جا که پروتکل یکسانی دارند، می‌توانند با هم ‏متصل باشند و از منابع یکدیگر استفاده نمایند. ‏ گروه جهانی ‏Grid‏ با ارائه معماری باز سرویس‌های ‏Grid‏ یا ‏Open Grid Services Architecture) ‎OGSA‏) و جمعآوری استانداردهای باز، مانند زبان تعریف سرویس‌های وب یا ‏Web Services ‎Description Language) WSDL‏) توانسته است استانداردی آسان و در عین حال دقیق برای سیستم‌های ‏Grid‏ تعریف کند. از آن گذشته، ‏OGSA‏ از تجربیات به‌ دست آمده از پروژه‌های بزرگی مانند ‏Globus‏ نیز ‏بهره‌مند است. شکل ۷ ساختار معماری این استاندارد را نشان می‌دهد.‏ ‎ ‎شکل ۷- ساختار معماری باز سرویس های ‏Grid استانداردهای باز و پروتکل‌های این معماری راه تولید سرویس‌ها را نشان می‌دهند. این سرویس‌ها قلب ‏Grid‏ ‏هستند و در واقع به ‌استفاده‌کننده اجازه می‌دهند با ‏Grid‏ کار کند. این سرویس‌ها عبارتند از:‏ ‏- سرویس درخواست‌های پردازنده مرکزی ‏ ‏- سرویس مدیریت کنترل کار سیستم و ‏sessionها ‏ ‏- سرویس جست‌وجوی اطلاعات‏ ‎‎ ‏- سرویس تعیین پهنای باند شبکه‌‏ ‏- سرویس مدیریت اطلاعات‌‏ وقتی متخصصان ‏Grid‏ درباره شروع شدن یک سرویس صحبت می‌کنند، مثلاً شروع شدن سرویس ‏جست‌وجوی اطلاعات، منظور یک نمونه یا ‏Instance‏ سرویس است که می‌تواند تکالیف بلند مدت یا موقتی ‏داشته باشد. این سرویس‌ها می‌توانند به‌صورت فعال یا غیر فعال باشند و زمان فعالیت را می‌توان با زمانبند یا ‏به‌صورت اختیاری تعیین نمود. ‌سرویسی خوب است که بتواند به‌راحتی امکانات خود را در اختیار استفاده کننده ‏قرار دهد. مثلاً وقتی یک وسیله الکترونیکی را به ‌پریز برق متصل می‌کنید، برای شما هیچ اهمیتی ندارد که ‏برق مورد نیازتان از کجا می‌آید؛ فقط می‌خواهید از برق استفاده کنید. ‏ سرویس خوب ‏Grid‏ نیز سرویسی است که بتواند سرویس موردنظر ‌استفاده‌کننده را به‌راحتی دراختیار او قرار ‏دهد و استفاده‌کننده بتواند به ‌سادگی از آن استفاده کند. مثلا سرویس بانک‌اطلاعاتی در ‏Grid‏ باید به‌صورتی عمل ‏کند که استفاده کننده فقط یک جست‌وجو وارد کند و جواب جست‌وجوی خود را بگیرد؛ بدون این‌که از جایگاه و ‏عملیات بانک‌اطلاعاتی خبر داشته باشد. ‏ پیچیدگی‌ها اگر تصور می‌کنید سیستم‌های ‏Grid‏ پیچیده‌اند و ممکن است کار با آن‌ها مشکل باشد، کاملاً درست فکر می‌کنید. ‏مثلاً سیستم‌های ‏Grid‏ باید به‌سرعت قادر باشند منابع سیستم‌های متصل به‌آن‌ها را شناسایی کنند و در عین حال ‏نباید از سرعت و کارایی این سیستم‌ها بکاهند. نکته بسیار مهم دیگری که مشخصاً ارتباطی به ‏Grid‏ ندارد ولی ‏در این سیستم‌ها تأثیر‌گذار است، ساختن نرم‌افزارهایی است که بتوانند با سیستم‌های ‏Gird‏ کار کنند. ‏ امروزه بیشتر نرم‌افزارها می‌توانند روی کامپیوتر‌های شخصی یا حتی سرور‌ها کار کنند. یعنی در واقع این ‏نرم‌افزارها از یک پردازنده مرکزی استفاده می‌کنند، اما در سیستم‌های ‏Gird، ممکن است چند پردازنده این کار ‏را به‌عهده بگیرند و چند سیستم با هم کار کنند. البته هر سیستم یک کار را انجام می‌دهد. سپس نتایج محاسبات ‏جمع می‌شود و به ‌درخواست کننده سرویس برگشت داده می‌شود. ‏ وقتی یک نرم‌افزار یا مجموعه‌ای از نرم‌افزارها بخواهند از ‏Grid‏ استفاده کنند، مسئله به‌اشتراک گذاشتن ‏اطلاعات، تکه تکه کردن این اطلاعات، ‌انتقال آن با امنیت کامل و مدیریت این اطلاعات کار دشواری است و ‏کاربر ‏Grid‏ فقط اطلاعاتی را وارد می‌کند و نمی‌داند در داخل سیستم چه می‌گذرد. در نتیجه این سیستم‌ها باید ‏طوری این کار را انجام دهند که کاربران ‏Grid‏ بدون نگرانی از انتشار اطلاعات سری خود یا بروز اشتباه در ‏محاسبات، به ‏Grid‏ اطمینان کنند.‏ امنیت سیستم‌های ‏Grid‏ نیز بسیار حائز اهمیت است. کاربران این سیستم‌ها باید از دسترسی به‌منابع ایشان در ‏سیستم اطلاع حاصل کنند و بدانند کدام کاربر به‌اطلاعات آن‌ها دسترسی دارد. اضافه بر این، قابلیت اطمینان و ‏سرعت این سیستم‌ها بسیار اهمیت دارد. اگر سیستم‌های ‏Grid‏ از سرعت کافی برخوردار نباشد، کاربران ‏Grid‏ ‏از استفاده از این سیستم‌ها دلسرد می‌شوند. ‏ چگونه ‏Grid‏ بسازیم ؟‏ ‎ ‎ممکن است پس از خواندن مطالبی که تا اینجا گفته شد، به‌ این فکر افتاده باشید که آیا می‌توانید خودتان یک ‏Grid‏ بسازید؟ البته که می‌توانید! می‌توانید از نرم‌افزارهای منبع آزاد یا اپن‌سورس استفاده کنید و یک محیط ‏Grid‏ بسازید. اولین قدم برای شروع، دانلود کردن ابزار ‏Globus‏ است. ‏Globus‏ همان‌طور که قبلاً نیز بحث ‏شد، ابزاری است قدرتمند برای ایجاد و مدیریت محیط ‏Grid‏. همچنین، به‌ سرویس‌هایی برای ساختن ‏Grid‏ نیاز ‏دارید که شامل سرویس مدیریت اطلاعات، سرویس پرس‌و‌جوی اطلاعات، درخواست‌کننده نیروی پردازشگر، ‏زمانبند و سرویس تقسیم‌کننده پهنای‌باند ‌باشند. این سرویس‌ها به‌سرویس‌های ‏Grid‏ معروفند و در واقع همان ‏سرویس‌های وب هستند؛ البته با قابلیت‌های بیشتر و مرتبط با ‏Grid‏. برخی از کامپیوترهای شما که به ‌شبکه ‏Gird‏ متصلند، میزبان سرویس‌های ‏Grid‏ خواهند بود و کامپیوترهای دیگر از این سرویس‌ها استفاده می‌کنند. ‏ به علا‌وه، برای ساختن یک ‏Grid‏ به‌ابزارهایی نیز نیاز خواهید داشت: ابزارهای زیربنایی مثل زمانبندها، ‏ابزارهای مدیریت منابع، مدیریت امنیتی و ابزارهای انتقال فایل مانند ‏GridFTP‏ که قبلاً توضیح داده شد. ابزار ‏دیگری که حتما به‌آن نیاز خواهید داشت، ‏Grid Directory Services) GDS‏) است که فهرست سرویس‌های ‏آماده را در اختیار دارد. به‌علا‌وه، به ‏API‎هایی نیز نیاز دارید که برنامه‌های شما را با ‏Grid‏ هماهنگ سازند و ‏به‌برنامه‌های شما امکان دهند در محیط ‏Grid‏ کار کنند. خواندن منابع زیر نیز شما را در یادگیری بیشتر ‏Grid ‎Computing‏ یاری می‌نماید: ‏ http://www.gridcomputing.com/ingplanet.com http://www.gridcomputingplanet.com/feat ... ticle.php/‎‏۳۳۹۶۷۴۱‏ www.ibm.com/developerworks/grid/library/grfuture.html
کلمات کلیدی: فناوری