# مباحث متفرقه برنامه نویسی > تالار های مرتبط با شبکه و امنیت > شبکه و Networking‌ > مقاله: شبکه گرید

## abed_se2007

دوستان در رابطه با شبکه گرید اطلاعاتی دارید؟ لطف کنید اطلاعات خود را در رابطه با این نوع شبکه در این تایپیک قرار دهید .

----------


## abed_se2007

فناوري‌ Grid - انقلابي در فناوري اطلاعات كه به ‌وعده‌هاي اينترنت عمل مي‌كند! 
[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/1002516_b.jpg[/IMG] امين صفايي 
ماهنامه شبکه - خرداد ۱۳۸۵ شماره 65 
*
اشاره :* 
Grid Computing يا شبكه‌هاي متصل كامپيوتري مدل شبكه‌اي جديدي است كه با استفاده از پردازشگرهاي متصل به هم امكان انجام‌دادن عمليات‌ حجيم محاسباتي را ميسر مي‌سازد. Gridها در واقع از منابع كامپيوترهاي متصل به‌شبكه استفاده مي‌كنند و مي‌توانند با استفاده از برآيند نيروي اين منابع، محاسبات بسيار پيچيده را به‌راحتي انجام دهند. آن‌ها اين كار را با قطعه قطعه كردن اين عمليات و سپردن هر قطعه به‌كامپيوتري در شبكه انجام مي‌دهند. به عنوان مثال وقتي شما از كامپيوترتان براي مدتي استفاده نمي‌كنيد و كامپيوتر شما به‌ اصطلاح به‌وضعيت محافظ نمايشگر يا Screensaver مي‌رود، از پردازشگر كامپيوتر شما هيچ استفاده‌اي نمي‌شود. اما با استفاده از شبكه‌هاي Grid مي‌توان از حداكثر توانايي‌هاي پردازشگر‌ها استفاده نمود و برنامه‌اي را در كامپيوتر قرار داد كه وقتي از سيستم استفاده‌اي نمي‌شود، اين برنامه بتواند از نيروي بلااستفاده دستگاه بهره بگيرد و قسمتي از محاسبات بزرگ عملياتي را انجام دهد. در اين مقاله اين پديده در فناوري اطلاعات مورد بحث قرار مي‌گيرد و اهميت استفاده از اين فناوري، پيچيدگي‌ها، اجزاي تشكيل دهنده و استانداردهاي اين مدل بررسي مي‌شود و نشان داده خواهد شد كه با استفاده از اين مدل چگونه در وقت و زمان شما صرفه‌جويي مي‌شود. گفتني است در حال حاضر بزرگ‌ترين شبكه Grid جهان در خدمت پروژه SETI@home براي يافتن حيات هوشمند فرازميني قرار دارد. در شماره 55 ماهنامه شبكه مصاحبه‌اي اختصاصي با دكتر دان ورتيمر، دانشمند ارشد اين پروژه توسط سردبير ماهنامه انجام شده‌بود. 

امروزه فناوري جديدي به‌ نام Grid به ‌عرصه ارتباطات الكترونيك قدم نهاده است كه براساسآن  با دانلود كردن يك محافظ نمايشگر مخصوص مي‌توانيم به‌كامپيوترهاي شخصي خود اجازه دهيم كه وقتي از آن استفاده نمي‌كنيم، به ‌شبكه جهاني متصل شوند و به ‌سيستم‌هاي بزرگ تحقيقاتي اجازه دهند از منابع آزاد و بلااستفاده سيستم ما  استفاده نمايند.  

*Grid computing چيست ؟*
حدود 33 سال از به ‌وجود آمدن اينترنت مي‌گذرد و از سال 1989 كه وب پديد آمد، بيشتر مردم از آن استفاده مي‌كنند و به‌صورت بخشي از زندگي ايشان در آمده است. شايد علت اين استفاده زياد از اينترنت، استاندارد باز آن بوده است كه امكان ارتباط كامپيوترهاي مختلف را با يكديگر مهيا مي‌سازد. با استفاده از اينترنت مي‌توانيد از هر كامپيوتري كه به‌آن متصل است، ايميل بفرستيد و شخصي در آن طرف دنيا با كامپيوتري كاملاً متفاوت با كامپيوتر شما، آن ايميل را به ‌راحتي بخواند و به ‌شما ايميل ديگري بفرستد. امروزه تقريباً تمامي ‌شركت‌ها و سازمان‌هاي بزرگ، براي تبادل اطلاعات و فرستادن ايميل به‌مشتريان خود از اينترنت استفاده مي‌كنند. پرسش اين است كه آيا به‌راستي امكاناتي كه اينترنت در اختيار ما قرار مي‌دهد، فقط در فرستادن ايميل و داشتن وب‌سايت خلاصه مي‌شود؟ آيا اينترنت امكان استفاده از منابع سخت‌افزاري سيستم‌هاي ديگر را نيز به‌ ما مي‌دهد؟ پس از اينترنت چه ابزار يا بستري خواهد آمد؟  

امروزه فناوري جديدي به‌ نام 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* 
تقريبا در همه سازمان‌ها و شركت‌هاي بزرگ تعدادي كامپيوتر بدون استفاده وجود دارد. مثلاً سرورهاي يونيكس از تقريباً ده تا بيست درصد از ظرفيت حقيقي خود استفاده مي‌كنند و كامپيوترهاي شخصي حدوداً از 95 درصد از ظرفيت خود اصلاً استفاده نمي‌كنند.  با استفاده از Grid Computing در يك سازمان يا شركت بزرگ مي‌توان از منابع بلا‌استفاده كامپيوترهاي سازمان  كمال استفاده را برد و سرعت پردازش اطلاعات در سيستم‌هايي كه با كمبود حافظه مواجهند را جبران نمود. از طرف ديگر، سرعت نرم‌افزارهايي كه از اين منبع بزرگ سخت‌افزاري استفاده مي‌كنند، بسيار بالاتر خواهد بود و در نتيجه مي‌توانيم به ‌فكر درست كردن نرم‌افزارهايي با قابليت‌هاي بالاتر باشيم و منابع بيشتري را در اختيار استفاده‌كنندگان قرار دهيم. 

Grid Computing مي‌تواند مزاياي زيادي براي مديران و برنامه‌نويسان داشته باشد. مثلاً با آن مي‌توان  برنامه‌هايي كه نياز به‌حافظه زيادي دارند را اجرا نمود و به ‌اطلاعات، دسترسي آسان‌تري پيدا كرد. اصولا ًGrid Computingمي‌تواند به‌سازمان‌ها و شركت‌هاي بزرگي كه سرمايه هنگفتي را در IT هزينه كرده‌اند، كمك كند از سيستم‌هاي خود حداكثر استفاده را ببرند. 

فناوري‌هاي Grid در واقع مي‌توانند از منابع و سيستم‌هاي غيرمتمركز پشتيباني كنند و امكان ارتباط سيستم‌ها را با هم فراهم ‌سازند. وقتي براي اولين بار فناوري Grid ابداع شد، هدف آن تنها  به‌اشتراك گذاشتن منابع سيستم و در اختيارداشتن سيستمي‌قدرتمند بود و به‌طور كلي بيشتر در اختيار مؤسسات تحقيقاتي قرار داشت. اما امروزه از Grid توقع بيش‌تري مي‌رود و اهميت بيشتري پيدا كرده است؛ به‌ويژه در تجارت الكترونيك و سيستم‌هاي تجاري غيرمتمركز و توزيع‌يافته. به‌ عنوان نمونه، مدل تجارت الكترونيك B2B را در نظر بگيريد كه دو مؤسسه تجاري اطلاعات خود را از طريق اينترنت با هم مبادله مي‌كنند. Grid نيز مي‌تواند كاري مشابه ‌را انجام دهد و دو يا چند سيستم تجاري را به‌هم مرتبط سازد. به‌طوري كه  بتوانند اطلاعات خود را به‌اشتراك بگذارند. فناوري Grid همچنين مي‌تواند راه‌حل مناسبي براي افزايش دسترسي، قابليت اطمينان و امنيت سيستم‌هاي غيرمتمركز نيز باشد.     
*ابزار قدرتمند Globus* 
يكي از قدرتمند‌ترين ابزارهاي ايجاد، كنترل و مديريت سيستم‌هاي Grid، ابزار Globus است. پروژه Globus حدود سال 2003 به‌صورت عملي درآمد. اين پروژه حاصل تلاش مشترك محققان و برنامه‌نويسان Grid در سرتاسر دنياست كه بر حول چهار محور بنا شده است: تحقيق، ابزارهاي نرم‌افزاري، آزمون و نرم‌افزار‌ها. اين ابزار در نسخه 2.2 خود خدمات بسياري به‌مديران سيستم‌هاي Grid ارائه مي‌كند كه   مي‌توان به امنيت، مديريت منابع و مديريت دقيق  اطلاعات اشاره كرد. Globus با در اختيار گذاشتن APIها و فايل‌هاي Header زبان C براي ساختن و كامپايل برنامه‌ها به ‌برنامه‌نويسان اجازه مي‌دهد سيستم‌هاي خود را به Grid متصل نمايند و به ‌مديران امكان مي‌دهد منابع متصل به Grid را به‌راحتي مديريت كنند. 

اضافه براين، Globus با در اختيار گذاشتن Componentهايي مخصوص، كار مديران Grid را آسان‌تر مي‌كند. مثلاًGlobus يك ابزار بسيار كارا به‌نام Commodity Grid) COG) كه زبان‌هاي برنامه‌نويسي مانند Python، جاوا و فناوري‌هاي روز مانند سرويس‌هاي وب، كوربا و RMI را مي‌شناسد و مي‌تواند در دو بخش تهيه نرم‌افزارهاي سازگار با Grid و مديريت سيستم‌هاي Grid به ‌ما كمك كند. البته نسخه 2.2 ابزار Globus در برخي موارد ضعف‌هايي نيز دارد. اين نسخه از سرويس‌هايي مثل مديريت Life-Cycle يا چرخه زندگي نرم‌افزار و سيستم‌هاي ذخيره و بازيابي پشتيباني نمي‌كند. البته نسخه جديد Globus يعني نسخه 3 از آن جا كه سعي داشته است با معماري باز سرويس‌هاي Grid يا همان the Open Grid Services Architecture) OGSA) هم‌خواني داشته باشد، توانسته‌است بسياري از نقاط ضعف نسخه قبلي را رفع كند. 
*نگاهي به‌اجزاي Grid* 
اجزاي تشكيل دهنده grid عبارتند از:

- رابط كاربر 

- اجزاي امنيت‌

- مديريت كنترل كار سيستم (Workload management)

 - زمانبند (Scheduler)

 - مديريت اطلاعات (Data Management)

 - مديريت منابع (Resource management)

در اين قسمت به‌صورت مختصر در مورد هر يك از اين اجزا توضيح داده مي‌شود. دسترسي به ‌اطلاعات در Grid   اهميت شاياني دارد و رابط كاربر يا User Interface اين مسئوليت مهم را عهده‌دار است. رابط كاربر مي‌تواند يا در برنامه‌اي كه كاربر از آن مستقيما استفاده مي‌كند يا در ابزارهاي  مديريتي Grid كه مورد استفاده مدير سيستم است، نقش ايفا كند. همانطور كه شما براي استفاده از برق فقط وسيله برقي خود را به ‌پريز برق متصل مي‌كنيد و لازم نيست از مكان منبع يا منابع اصلي اين قدرت اطلاعي داشته باشيد، استفاده كننده سيستم Grid نيز الزاماً نبايد از پيچيدگي‌هاي داخل اين سيستم‌ها مطلع باشد.  مثال ديگر اين‌كه، شما از مرورگر وب جهت استفاده از اينترنت استفاده مي‌كنيد؛ بدون اين‌كه از مكان سرور وب سايت اطلاعي داشته باشيد و تنها با وارد كردن آدرس سايت موردنظر، وب سايت آن در مرورگر نمايش داده مي‌شود. اينترفيس Grid نيز بايد مانند مرورگر باشد. يعني استفاده‌كننده Grid نيز از پيچيدگي‌هاي اين سيستم اطلاعاتي ندارد و فقط با ورود يك پارامتر ورودي، يك خروجي دريافت مي‌كند.  (شكل 1) 

*[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_8_s.jpg[/IMG]شکل1- سيستم‌هاي Gird از ديد استفاده کنندگان
*
كامپيوترها در Grid به ‌شبكه متصلند. اين سيستم‌ها همچنين مي‌توانند حاوي اطلاعات بسيار مهم و حساسي باشند. در نتيجه امنيت را مي‌توان يكي از مهم‌ترين اجزايي اين سيستم‌ها دانست كه خود حاوي اجزاي فرعي مانند احراز هويت (authentication)، اختيارات (authorization) و رمزدهي (encryption) است. 

مثلاً ابزار Globus حاوي يك Component به‌ نام Grid Security Infrastructure) GSI) يا ساختار زير بنايي امنيت Grid است كه مسئوليت امنيت در محيط را برعهده دارد. GSI حاوي يك SSL باز است. در نتيجه وقتي يك استفاده كننده يك بار به‌صورت مجاز به‌ سيستم راه پيدا كرد، يك Proxy Certificate براي كاربر به‌ وجود مي‌آيد و براي آن كاربر در نظر گرفته مي‌شود. GSI در درگاه Grid قرار دارد. (شكل 2) 
*[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_6_s.jpg[/IMG]شكل2-  GSI در Gird 
*
استفاده كننده از يك سيستم Grid بايد از منابع موجود و قابل دسترس  در سيستم اطلاع داشته باشد. مديريت كنترل كار سيستم يا Workload Management مي‌تواند اين كار را به‌ راحتي انجام دهد. درخواست‌كننده سرويس مي‌تواند با ارتباط با اين قسمت از منابع آزاد سيستم، ظرفيت هر منبع و موقعيت آن‌ها اطلاع حاصل نمايد.  در سيستم‌هاي Grid كه توسط Globus هدايت مي‌شوند، زماني كه يك استفاده كننده شناسايي شد و برنامه موردنظر آن كاربر اجرا گرديد، با توجه به ‌نوع نرم‌افزار و پارامترهاي ورودي كاربر، سيستم Grid به‌دنبال منابع آزاد موجود در شبكه مي‌گردد.

اين وظيفه اغلب  به‌ عهده Broker ها است. Globus به‌صورت عادي، ‌Broker ندارند، اما از سرويس‌هايي مانند
Grid Information Service) GIS) و Monitoring and Discovery Service) MDS) را پشتيباني مي‌كنند كه به‌سيستم اطلاع مي‌دهند كدام منبع يا منابع قادرند منابع خود را در اختيار بگذارند. شكل 3 موقعيت اين سرويس‌ها را نمايش مي‌دهد. 
*[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_5_s.jpg[/IMG]شكل 3-  موقعيت سرويس‌هاي MDS در Gird 
*
يكي ديگر از اجزايي كه در سيستم‌هاي Grid بسيار اهميت دارد، زمانبند يا Scheduler است. در اين سيستم‌ها از آن جايي كه بايد هر كاري را كامپيوتر مشخصي به‌عهده بگيرد و هر كامپيوتر بايد مدت زماني را در اختيار Grid قرار دهد، سيستم نياز به‌ يك زمانبند دارد. اين زمانبند مي‌تواند بسيار ساده باشد، اما اكثر زمانبند‌ها بايد بتوانند كارها را اولويت‌بندي كنند و سيستم را كنترل نمايند. در ابزار Globus زمانبند‌هايي با قابليت بالا  وجود ندارند، اما تعدادي سازوكار زمانبند وجود دارد كه كار زمانبندهاي دقيق را تا حدي انجام مي‌دهد. شكل 4 موقعيت زمانبند‌ها را در Grid  نشان مي‌دهد. 
*[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_4_s.jpg[/IMG]شكل 4-  موقعيت زمانبند‌ها در Grid* 
جزء ديگر Grid‌ها، مديريت اطلاعات اين سيستم‌ها است كه وظيفه ذخيره‌سازي اطلاعات را در سيستم  به عهده‌ دارد.  اين بخش وظيفه محافظت از اطلاعات و جابه‌جايي اين اطلاعات در تمامي‌دستگاه‌هاي متصل به ‌Grid را عهده‌دار است. جابه‌جايي و انتقال اطلاعات كار بسيار مشكلي است و اطلاعات بايد از كانالي مطمئن منتقل شود. 

با استفاده از ابزار Globus و بخش مديريت اطلاعات اين ابزار، مي‌توان محيطي امن براي انتقال اين اطلاعات به ‌وجود آورد. اين قسمت از Globus به Grid Access to Secondary Storage) GASS) معروف است كه امكاناتي مانندGridFTP را دربردارد كه مانند FTP است، اما امكانات امنيتي مانند GSI را نيز دربرمي‌گيرد. در نتيجه وقتي يك كاربرProxy Certificate را داشته‌باشد، مي‌تواند از GridFTP جهت انتقال فايل‌ها استفاده كند؛ بدون آن كه نياز داشته باشد دوباره به‌ سيستم وارد شود. شكل 5 موقعيت GASS را در Grid نشان مي‌دهد. 
[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_3_s.jpg[/IMG]*شكل5- GASS در Gird* 

از ديگر بخش‌هاي مهم Grid، بخش مديريت منابع است كه به‌ Grid Resource Allocation Manager) GRAM) شهرت دارد. اين بخش وظايف هر دستگاه را مشخص مي‌كند و باعث هماهنگي دستگاه‌هاي متصل به ‌شبكه در انجام‌دادن امور محوله است. شكل 6 محل قرار گرفتن GRAM را نشان مي‌دهد. 

[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_2_s.jpg[/IMG]*شكل 6- بخش مديريت منابع در Grid* 
*
Grid از ديد برنامه نويسان* 
از ديد برنامه‌نويسان، Grid از سازمان‌هاي مجازي‌اي تشكيل شده است كه از پروتكل‌هاي مخصوصي براي ارتباط با هم استفاده مي‌كنند. اين پروتكل‌ها به ‌استفاده‌كنندگان Grid و برنامه‌ها اجازه مي‌دهند سرويس‌هاي خود را در محيطي كنترل شده و امن اجرا كنند. اين سازمان‌هاي مجازي مي‌توانند يك كامپيوتر شخصي، سروري قدرتمند يا كامپيوترهاي متصل به‌ شبكه باشند كه از آن جا كه پروتكل يكساني دارند، مي‌توانند با هم متصل باشند و از منابع يكديگر استفاده نمايند. 

گروه جهاني Grid با ارائه معماري باز سرويس‌هاي Grid يا Open Grid Services Architecture) OGSA) و جمعآوري استانداردهاي باز، مانند زبان تعريف سرويس‌هاي وب يا Web Services Description Language) WSDL) توانسته است استانداردي آسان و در عين حال دقيق براي سيستم‌هاي Grid تعريف كند. از آن گذشته، OGSA از تجربيات به‌ دست آمده از پروژه‌هاي بزرگي مانند Globus نيز بهره‌مند است. شكل 7 ساختار معماري اين استاندارد را نشان مي‌دهد.


[IMG]file:///C:/Documents%20and%20Settings/morteza/Desktop/شبکه%20گرید/Shabakeh%20Magazine%20-%20ماهنامه%20شبکه%20-%20فناوري‌%20Grid%20-%20انقلابي%20در%20فناوري%20اطلا  عات%20كه%20به%20‌وعده‌هاي%20اي  نترنت%20عمل%20مي‌كند!_files/s65_grid_1_s.jpg[/IMG]
*شکل 7- ساختار معماري باز سرويس هاي 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 ياري مي‌نمايد: 
www.gridcomputing.com/ingplanet.com

<A href="http://shabakeh-mag.com/links.aspx?l=http://www.gridcomputingplanet.com/features/article" target=_blank>http://shabakeh-mag.com/links.aspx?l...le.php/3396741

www-128.ibm.com/developerworks/grid/library/grfuture.html

----------


## arashmidos2020

اگر در مورد hadoop اطلاعی دارید لطفا به ما هم بدید

----------


## arashmidos2020

با عرض سلام اول باید بگم که دست شما درد نکنه که برای ما اینقدر وقت می گذارید و توضیح می دهید.
اما من نمی دونم چرا هر جا به فارسی سرچ می کنم متاسفانه همیشه یک چیز کلی در مورد گرید می گن.من درخواست می کنم از اساتید که بیان واسه اینکه این رشته هم که الان تاپ ترین رشته کامپیوتر هست تلاش کنند.
باور کنید بجز گلوباس که اینقدر هم قدیمی شده چیزهای جدیدتری اومده که ما میتونیم از اونا واسه توسعه استفاده کنیم.
اگر کسی طالب این بحث ها باشه همنجا بگه تا بحث کنیم و سطح علمی این قسمت رو بالا بکشیم.

----------


## arashmidos2020

http://gridcafe.blogfa.com/
اینجا یک سری کتاب هست

----------


## mohammad.oud

سلام دوستان
من تازه به این موضوع علاقه مند شدم
چند تا سوال اساسی دارم
ممنون میشم یکی جواب بده

اول : که برای برنامه نویسی در پردازش گرید ، چه سیستم عاملی نیازه ، میشه توی ویندوز هم نوشت یا نه؟

دوم: چه زبان برنامه نویسی لازمه ؟ تخصص من سی شارپه ، آیا با سی شارپ هم میشه ؟ یا این که باید جاوا یا... یاد بگیرم؟

سوم:به غیر از لوازم معمول شبکه آیا به سخت افزار دیگه ای نیازه؟

چهارم: از کجا باید شروع کنم؟


ممنون میشم یه نفر سریع جوایم رو بده/

----------


## arashmidos2020

سلام.
1. از ویژگی های شبکه گرید مستقل از سکو بودن آن است پس گرید روی سیستم هامل های شبکه قابل پیاده سازی می باشد.
2. منظور از برنامه نویسی برای گرید را مشخص کنید گرید کامپیوتینگ خود چندین شاخه متعدد دارد!
3. مثلا برای پردازش موازی بایدCilk,OpenMP رو یاد بگیری که روی C++‎ هستند
4. سخت افزار خاصی نیاز نیست اما باید یک infrastructure مناسب پیاده سازی کرد یا از قبل داشته باشید.
5. برای شروع باید مقالات معروف گرید را مطالعخ کنید. بعد از مطالعه و فهم مفهوم محاسبات گرید خودتان راه خود را مشخص می سازید
همه چیز از تحقیق و پشتکار حاصل می شود.
موفق باشید.

----------


## mohammad.oud

> سلام.
> 1. از ویژگی های شبکه گرید مستقل از سکو بودن آن است پس گرید روی سیستم هامل های شبکه قابل پیاده سازی می باشد.
> 2. منظور از برنامه نویسی برای گرید را مشخص کنید گرید کامپیوتینگ خود چندین شاخه متعدد دارد!
> 3. مثلا برای پردازش موازی بایدCilk,OpenMP رو یاد بگیری که روی C++‎‎ هستند
> 4. سخت افزار خاصی نیاز نیست اما باید یک infrastructure مناسب پیاده سازی کرد یا از قبل داشته باشید.
> 5. برای شروع باید مقالات معروف گرید را مطالعخ کنید. بعد از مطالعه و فهم مفهوم محاسبات گرید خودتان راه خود را مشخص می سازید
> همه چیز از تحقیق و پشتکار حاصل می شود.
> موفق باشید.



سلام مجدد ، من میخام اگه بشه در ضمینه ی ، جستجوی منابع آزاد ، یه نرم افزار پیاده سازی کنم ، که کامپیوتر های یه شبکه بتونن به مسئله رو حل کنن مثل پیدا کردن عدد اول یا عدد پی و....
یه کمی از کتاب های red book از IBM رو خوندم ، ولی اون توی لینوکس redhat و با جاوا ، توضیح داده بود.
از طرفی سرچ کردم ، و اینجوری که متوجه شدم دیدم فریم ورک برای دات نت هم داره.
و همینطور فهمیدم که *Globus* فقط برای لینوکسه و برای ویندوز ارائه نشده.


من رشته IT هستم. یه درس داشتیم به نام آشفتگی اطلاعات ، درمورد اینه که وقتی اطلاعات تو اینترنت خیلی زیاد میشه ، تشخیص این که کدوم اطلاعات درسته ، کدوم بهتره ، و جواب مورد نظر شما چیه ، خیلی سخت میشه.

الان هم دچار آشفتگی اطلاعاتی شدم ، کلی کتاب دانلود کردم ، و نمیدونم چی به چیه ، از کجا شروع کنم.  :لبخند گشاده!:

----------


## arashmidos2020

فکر می کنم شما باید باید بیشتر از هر چیز باید جستجو و تحقیق رو ادامه بدید تا بتونید معنای این موضوع رو بهتر درک کنید و بعد به سراغ مسائل جزیی تر برید.

----------


## arashmidos2020

ضمنا مباحث برنامه نویسی شبکه مهمترین چیزی هست که اول از همه از نظر برنامه نویسی باید یاد بگیرید

----------


## persiankeo

سلام به همه ی دوستان من داکیومن های خوبی رو دارم . (FA and EN)
ولی به دلیل حجم بالاشون الان نمیتونم براتون ارسال کن . (مشکل اینجاست که دیگه لینکای دانلودش رو هم ندارم !)
از فایلهای خوب زبان فارسیم میتونم به مقالات " وزارت علوم و تحقیقات و فناوری موسسه ی آموزش عالی سلمان " اشاره کنم . اگر تونستید لینک دقیق رو پیدا کنید اینجا برای دوستان قرار بدید . (من هم در اولین فرصت سعی میکنم مقالات رو براتون قرار بدم .)

----------

