بانک شبکه

بانک شبکه

بانک شبکه ، اطلاعات در مورد نحوه راه اندازی شبکه
بانک شبکه

بانک شبکه

بانک شبکه ، اطلاعات در مورد نحوه راه اندازی شبکه

تفاوت بین معماری شبکه های Client-server و Peer to Peer در چیست ؟

اگر در شبکه تازه کار هستید و یا کمی درگیر واژه ها در حوزه شبکه شده اید ، حتما به این نکته برخورد کرده اید که برخی اوقات از یک سیستم به عنوان سرور و برخی اوقات از سیستمی دیگر به عنوان کلاینت و بعضا از یک سیستم به عنوان سیستم کلاینت و سرور در شبکه نام برده می شود. برای دوستانی که تفاوت بین سیستم های کلاینت و سرور را نمی دانند امروز می خواهیم تفاوت بین این دو واژه یعنی کلاینت یا Client و سرور یا Server را در انجمن تخصصی فناوری اطلاعات ایران تشریح کنیم. قبل از اینکه هر چیزی بگوییم توجه کنید که خواسته یا ناخواسته یک شرکت ، یک سازمان یا هر چیز دیگری طبیعتا می تواند ابعاد مختلفی داشته باشد ، از شرکت های بسیار بسیار کوچک در نظر بگیرید تا سازمان های بسیار بسیار بزرگ که در همگی آنها شبکه و سرویس دهی شبکه وجود دارد. در شبکه های بسیار بزرگ سازمانی از سیستم های کامپیوتری بزرگی بعضا با ابعاد به نسبت بزرگتر از یک سیستم خانگی استفاده می شود. در چنین سازمان هایی که تعداد کاربران یا استفاده کنندگان از خدمات بسیار زیاد است معمولا معماری شبکه بصورت Client Server یا کلاینت سرور ( ترجمش میشه مشتری ، سرویس دهنده : ترجمه نکنید به خدا ) طراحی و پیاده سازی می شود. مهمترین هدف از طراحی معماری کلاینت و سرور جدا کردن کار کاربران عادی از فرآیند های سازمانی است که در یک سازمان بزرگ امری ضروری است. حالا با واژه یا معماری Client Server آشنا شدید و می خواهیم هر کدام از این واژه ها را در این معماری برای شما تشریح کنیم.
تفاوت کلاینت و سرور در چیست ؟

Server یا سرور چیست ؟
در یک محیط کلاینت سروری ، کامپیوتر سرور به عنوان مغز و مرکز فرماندهی یک سازمان در نظر گرفته می شود. طبیعتا زمانیکه صحبت از مغز و مرکز فرماندهی می شود کامپیوتری که قرار است این نقش را بر عهده بگیرد باید از نظر سخت افزاری و قدرت پردازشی و بعضا ظرفیت ذخیره سازی اطلاعات از سایر کامپیوترهایی که در شبکه وجود دارند بزرگتر و قدرتمند تر باشد. این کامپیوترهای قدرتمند در زمان قدیم هم استفاده می شدند و ما آنها را به عنوان Mainframe می شناختیم که تقریبا کلیه داده ها و عملیات هایی که در یک شبکه انجام می شود را در خودش انجام می داد. معمولا نرم افزارهای کاربردی که در یک سازمان استفاده می شوند به همراه داده هایی که مورد نیاز نرم افزار است در سرورها ذخیره می شوند و کارکنان با استفاده از کامپیوترهای خودشان که ما آنها را به عنوان Workstation یا ایستگاه کاری ( این تن بمیره ترجمه نکنین خواستم بگم چقدر افتضاح میشه ترجمش ) می شناسیم به سرورها متصل و در شبکه از خدمات آن استفاده می کنند. ترجمه واژه سرور به شکل سرویس دهنده است که واژه سرویس هم باز فارسی نیست و اگر بخواهیم ترجمه فارسی از سرور داشته باشیم باید بگوییم خدمات دهنده که این دقیقا کاری است که کامپیوتر سرور در شبکه انجام می دهد. 
Related image
برای مثال یک کارمند می تواند با استفاده از بستر شبکه و به کمک کامپیوتری که در اختیار دارد به فایل های موجود بر روی سرور دسترسی پیدا کند و از آنها استفاده کند ، یا اینکه همین کاربر می تواند به نرم افزار اتوماسیون اداری که بر روی یک سرور نصب شده است از طریق شبکه دسترسی پیدا کند و به نرم افزار اتوماسیون اداری متصل و از آن استفاده کند یا بهتر بگوییم از خدمات اتوماسیون اداری که توسط سرور ارائه می شود استفاده کند. در بسیاری اوقات سرورها خدمات مختلفی را بر روی خودشان ارائه می دهند که از آن جمله می توانیم به سرور فایل ، سرور نرم افزارهای تحت وب ، سرور احراز هویت ، سرور ویدیو کنفرانس ، سرور پرینتر و ... اشاره کنیم اما بصورت کلی فراموش نکنید که در مدل یا معماری کلاینت سرور ، همیشه یک کامپیوتر سرویس دهنده یا سرور است و همیشه یک کامپیوتر دیگر استفاده کننده از این سرویس یا سرویس گیرنده است که ما آن را به عنوان کلاینت ( ترجمه : مشتری D: ) می شناسیم. 
Image result for ‫سرور کلاینت‬‎

در چنین محیط های سازمانی بزرگی معماری Client و Server بهترین گزینه برای دسترسی کارکنان به سرویس های نرم افزاری است ، کاربران مجبور هستند ابتدا به سیستم های خود Login کنند و سپس توسط ارتباطات شبکه به سرور متصل و از خدمات آن استفاده کنند. در معماری کلاینت سروری ، سیستم کامپیوتری که برای کامپیوتر کلاینت در نظر گرفته می شود دارای حداقل قدرت پردازشی و عملیاتی است و طبیعتا نیازی هم به قدرت زیاد ندارد زیرا همه فرآیند های پردازشی توسط سرور انجام می شود و در این میان سیستم کلاینت یا سرویس گیرنده هیچگونه بار کاری بر روی خودش ندارد و فقط به عنوان یک رابط کاربری برای اتصال به سرور مورد استفاده قرار می گیرد. در معماری کلاینت سروری ، سرور دارای حداکثر قدرت پردازشی و کلاینت دارای حداقل قدرت پردازشی است. کلاینت ها بعضا حتی سیستم های بسیار ضعیفی هستند که در نقش رابط سخت افزاری صرفا عمل می کنند ، برای مثال شما برای اتصال به سرورها و استفاده از خدما آنها کافیست فقط یک دستگاه Thin Client یا Zero Client که سیستم های کامپیوتری بسیار سبک و ارزان قیمتی هستند تهیه کنید و نیازی نیست که یک سیستم چند میلیون تومانی برای کاربر تهیه کنید. استفاده از معماری کلاینت و سرور هزینه های سازمانی شما را بسیار کاهش می دهد. تصور کنید سازمانی به جای اینکه هزار دستگاه PC با قیمت 2 میلیون تومان تهیه کند که هزینه ای بالغ بر 2 میلیارد تومان در بر دارد ، می تواند 1000 عدد Thin Client با قیمت 200 هزار تومان یا هزار عدد Zero Client با قیمت 100 هزار تومان تهیه کند و هزینه های خودش را به شدت کاهش دهد در عین حال در روند کاری سازمان نیز اختلالی به وجود نخواهد آمد. 
Thin Client چیست ، تفاوت سرور و کلاینت در چیست ؟
Client یا کلاینت چیست ؟
Client یه کلاینت که ترجمه آن به فارسی مشتری D: می شود به کامپیوتری گفته می شود که در معماری کلاینت سروری فقط نقش سرویس گیرنده و استفاده کننده از خدمات را بر عهده دارد. این کامپیوتر یک دستگاه کامپیوتری به نسبت ضعیف است که کارمندان شما می تواند با استفاده از آن در سازمان کارهای روزمره خود را به همراه خدماتی که از سرورها نیاز دارند انجام دهند. کاربران با استفاده از سیستم کلاینت به سرور متصل می شوند و از خدماتی که سرور در انواع و اقسامی که عنوان کردیم استفاده می کنند. توجه کنید که وظیفه یک کلاینت فقط سرویس گرفتن از سرورهای شبکه است و خودش در شبکه در نقش یک سرور قاعدتا نباید کار کند ، در مواردی ممکن است در شبکه های کامپیوتری از دستگاه های PC قویتری استفاده شود که بر حسب طراحی نامناسب شبکه ضمن اینکه سرور سازمانی در چنین شبکه ای وجود دارد ، کامپیوتر کلاینت نیز بر روی خودش پرینتر ، فایل و ... را به اشتراک گذاشته است تا دیگران نیز بتوانند از ان استفاده کنند. این معماری در واقع یک شبکه Peer To Peer را نمایش می دهد که یک کامپیوتر هم سرور و هم کلاینت است و در معماری کلاینت و سرور ، هر کامپیوتر یا می تواند سرور باشد و یا می تواند در نقش کلاینت عمل کند. اگر می خواهید درک درستی از مفهوم کلاینت داشته باشید کافیست هر روز که به وب سایت گوگل با استفاده از گوشی ، تبلت ، لپ تاپ و ... متصل می شوید متوجه این موضوع باشید که بار کاری سرورهای گوگل بر روی کامپیوتر شما وجود نخواهد داشت و شما فقط سرویس گیرنده هستید و کلاینت محسوب می شود و همین امر به معنی معماری کلاینت سرور است .

تفاوت بین معماری شبکه های Client-server و Peer to Peer در چیست ؟
Image result for تفاوت معماری بین server based peer to peer

Client-server (کلاینت-سرور) و Peer to Peer (نظیر به نظیر) دو معماری شبکه های کامپیوتری هستند.در معماری client server وظایف و بارکاری یا همان Workload بر عهده ی سرورها و سرویس هایی میباشد که توسط کلاینت ها درخواست داده شده اند.به طور معمول کلاینت و سرور در بستر شبکه ی کامپیوتری با هم ارتباط برقرار میکنند.چنانچه که مستحضر هستید آنها میتوانند در یک سیستم فیزیکی نیز باشند.در معماری Peer to Peer وظایف و بارکاری بر عهده هر کدام از سیستم هایی است که در حال تعامل و اشتراک گذاری منابع بین یکدیگر هستند و میتوان ادعا کرد که هیچ سرویس دهی متمرکزی در این بین وجود ندارد.در معماری Peer to Peer هیچ یک از سیستم ها از لحاظ به اشتراک گذاری منابع بر دیگری برتری ندارد.

معماری Client-Sever چیست ؟

همانطور که پیش تر نیز ذکر شد ، معماری client server شامل سرور هایی است که به سرویس دهی میپردازند و کلاینت ها از آن سرویس ها استفاده میکنند.یک سرور در حقیقت یک کامپیوتر Host یا میزبان میباشد که توسط برنامه هایی که در آن نصب شده میتواند در خودش انواع سرویس ها را به اجرا در آورد و در قالب اطلاعات به اشتراک گذاشته شده در شبکه برای کلاینت ها سرویس دهی کند.کلاینت برای استفاده از سرویس های تحت شبکه ابتدا یک نشست یا session ارتباطی را با سروری که سرویس مربوطه را میزبانی میکند آغاز میکند.سرور ها همیشه منتظر درخواست های ورودی از طرف کلاینت ها هستند.امروز انواع مختلفی سیستم های مبتنی بر کلاینت-سرور وجود دارد.اما آنها همچنین دارای قابلیت های رایجی مثل پایگاه داده امنیتی متمرکز هستند که دسترسی به منابع اشتراکی در سرور را کنترل میکند.سرور ها شامل لیستی از username ها و password ها میباشند که کاربر تنها با همان اطلاعات معتبر میتوانند به منابع اشتراکی سرور دست پیدا کنند.کاربر بعد از لاگین به شبکه تنها به منابعی که اختیار استفاده از آنها از سوی مدیر شبکه بر عهده ی آن گذاشته شده میتواند دسترسی یابد.از سیستم های تحت معماری client-server میتوان به email exchange ، web access و database access اشاره کرد.

معماری Peer to Peer چیست ؟

در معماری Peer to Peer منابع اشتراکی بین Peer ها یا همان سیستم های نظیر به نظیر در شبکه بدون هیچ هماهنگی مرکزی توسط سرور به اشتراک گذارده میشود.در این معماری هر کامپیوتری که به شبکه متصل است هم یک client محسوب میشود و هم یک server.ایده ای که پشت سیستم های Peer to peer هست این است که منابع اشتراکی تا حد ممکن به صورت ارزان در شبکه به اشتراک گذاشته شود.در این گونه معماری هیچ طرح امنیتی برای کنترل دسترسی کاربران نهایی یا end user ها برای دسترسی به منابع اشتراکی وجود ندارد که این خود یک نقطه ضعف بسیار بسیار بزرگ در اینگونه معماری به شمار میرود.در این نوع معماری در حقیقت کاربران هر نقطه اشتراکی را میتوانند تنها با یک پسورد برای دسترسی به آن منبع اشتراکی بین اعضای موجود در شبکه به اشتراک بگذارند.ساختار شبکه های Peer to Peer توسط سیستم های File sharing محبوب نظیر Napster مورد استفاده قرار میگرفت.

تفاوت بین معماری شبکه های Client-server و Peer to Peer در چیست ؟

تفاوت اصلی بین سیستم های Client-server و Peer to Peer این است که در معماری client-server کلاینت ها درخواست کنندگان سرویس از سرویس دهندگانی که سرویس ها را میزبانی میکنند میباشند اما در سیستم های peer to peer کامپیوتر های عضو شبکه ی peer to peer هم service providers یا فراهم کننده سرویس یا سرور هستند و هم service consumers یا مصرف کنندگان سرویس یا کلاینت نیز میباشند.علاوه بر این سیستم های client-server نیازمند یک فایل سرور مرکزی میباشند که بر خلاف سیستم های Peer to Peer پیاده سازی آن از لحاظ هزینه گران تر میباشد.از طرف دیگر در سیستم های client-server فایل سرور اختصاصی سطوح دسترسی برای کاربران فراهم میکند و به دنبال آن سطوح امنیتی بالاتری را نسبت به سیستم های Peer to Peer به ارمغان می آورد.از همه مهمتر اینکه در معماری Peer to Peer با افزایش node ها عملکرد کلی شبکه کاهش میکند اما سیستم های client-server اعطاف پذیری و پایداری خیلی خیلی بیشتری نسبت به سیستم های Peer to Peer دارند.در آخر انتخاب یکی از این دو معماری کاملا به محیط و شرایطی که نیاز به پیاده سازی آن دارید بستگی دارد.