شبکه همتا به همتا (peer to peer) چیست؟

مفهوم شبکه همتا به همتا (P2P) اولین بار در اواخر دهه 1970 ابداع شد. شبکه همتا به همتا شبکهای ساده از کامپیوترها است. در این شبکه هر رایانه به عنوان یک گره شناخته میشود که اطلاعات را پردازش کرده و به اشتراک میگذارد. در این مقاله از فکت کونیز قصد داریم به بررسی کامل این نوع از شبکهها و برتریهای آن نسبت به دیگر معماریهای شبکه بپردازیم، پس با ما همراه باشید.
قبل از شروع مبحث شبکه همتا به همتا، بهتر است در ابتدا به تعریف چند اصطلاح در دنیای شبکه بپردازیم:
- شبکه: به اتصال دو یا چند سیستم (مانند کامپیوتر، لپتاپ، و…) با هدف اشتراک گذاری منابع و یا ایجاد ارتباط بین کاربران از طریق قوانینی که پروتکل ارتباطی نام دارد، شبکه می گوییم. انتقال دادهها میتواند با کابل چند رسانهای، کابل نوری یا بیسیم انجام شود.
- گره یا نود (Node) در شبکه: هر دستگاه فیزیکی که در شبکه حضور دارد و توانایی ارسال و دریافت اطلاعات را دارد. لپ تاپ و کامپیوتر شخصی شما ، پرینتر ،مودم و …هم نودهای شبکه هستند.
- کلاینت (Client): کاربر یا کامپیوتر و یا نودی که درخواستی دارد.
- سرور (Server): نود یا کامپیوتری که خدمات و درخواست ها را انجام می دهد.
- معماری یا توپولوژی شبکه: به نحوه قرارگرفتن اجزای شبکه کنار همدیگر توپولوژی شبکه گفته می شود.
شبکه همتا به همتا (P2P) چیست؟
همانطور که گفتیم، شبکه همتا به همتا (P2P)، شبکه ای از رایانهها است که به منظور پردازش اطلاعات به یکدیگر متصل شدهاند و هر کدام بخشی از کار را به عهده میگیرند و وظایف یکسانی دارند. بر خلاف شبکههای سنتی (کلاینت-سرور)، هیچ دستگاهی در یک شبکه P2P به تنهایی سرویسدهی نمیکند.
در شبکه همتا به همتا هر گره به عنوان یک سرور عمل میکند و بنابراین هیچ سرور مرکزی در شبکه وجود ندارد. این امر امکان به اشتراکگذاری حجم عظیمی از دادهها را فراهم میکند. همچنین وظایف به طور مساوی بین گرهها تقسیم می شود.
شبکه P2P یکی از معماریهای شبکه است که در آن هیچ نود یا گره مرکزی وجود ندارد (نود در اینجا همان رایانه ها هستند)، هیچ نودی بر دیگری ارجحیت ندارد و نودها میتوانند منابع خود را به اشتراک بگذارند. در واقع در این نوع شبکه همه نودها با هم ارتباط مستقیم دارند.
هر گره وظیفه مشابهی را در شبکه انجام می دهد و همزمان به عنوان کلاینت و سرور عمل می کند. اگر یکی از نودها آفلاین شود ، شما به دیگری متصل می شوید. اگر گره ای برای مدتی آفلاین شد ، باید دوباره به شبکه وصل شود تا توسط همتایان خود ، به روز شود تا دوباره کاملاً فعال شود.
بیشتر بخوانید: شبکههای متمرکز (Centralized)، غیرمتمرکز (Decentralized) و توزیعشده (Distributed)!
شبکه همتا به همتا ویژگیهای جالبی دارد:
- برای از کار انداختن شبکه، باید فعالیت همه نودها متوقف شود. از این رو این شبکه پایداری بالا و به عبارتی تحمل خطای بالایی دارد.
- اضافه کردن نودهای جدید به شبکه آسان است. زیرا نیازی به انجام تنظیمات بر روی سرور مرکزی (واسطه) نیست و مقیاس پذیری بالایی دارد.
- برای اشتراک فایل، هرچه شبکه همتا به همتا بزرگتر باشد، سرعت آن بیشتر است .
- ارتباط بین نودها مستقیم است.
- امنیت بالایی دارد چون سرور مرکزی وجود ندارد که در معرض هک کردن قرار بگیرد.
شبکه توزیع شده (Distributed network)
شبکههای توزیع شده با هدف موازیسازی عملیات و افزایش سرعت ایجاد شدند و از یک لایه میانی (middleware) جهت توزیع کارها بین اعضا استفاده میشود. معماری شبکه توزیع شده دارای چندین مزیت است که میتواند به طور چشمگیری سرعت و کارایی شبکه را افزایش دهد.
با این معماری میتوان یک سیستم کنترل مرکزی واحد را حفظ کرد ، اما بار(درخواستها) را می توان در بین چندین سایت محلی توزیع کرد. این سایت ها می توانند از نظر فیزیکی از یکدیگر فاصله داشته باشند اما از طریق اینترنت به یکدیگر متصل شوند.
اگر یک سیستم از کار بیفتد، سیستمهای دیگر میتوانند بدون اینکه تحت تأثیر قرار بگیرند به کار خود ادامه دهند. اگر سرور مرکزی دچار مشکل شود عملکرد شبکه مختل نمی شود چون اطلاعات در بین سیستم های مختلف توزیع شده است.
بیشتر بخوانید: راهنمای جامع لایههای شبکه بلاکچین
بلاک چین بر بستر شبکه توزیع شدهی همتا به همتا
در یک شبکه توزیع شده همتا به همتا، کاربران برای دسترسی به سرویس به سرور مرکزی متصل نمی شوند. در شبکه توزیع شده کاربران به نودهای دیگر متصل می شوند همه نودها خدمات را به یکدیگر ارائه می دهند. شبکه های P2P بسیار انعطاف پذیر هستند.
بلاک چینها از این مفهوم استفاده می کنند و این یکی از دلایل قوی بودن آن است. در این شبکه نودها برای برقراری ارتباط و تبادل داده از مکانیسم پخش (broadcasting mechanism) یا انتشار پیام (message propagation) استفاده می کنند.
در مکانیسم پخش یا انتشار پیام ، هر نودی که پیامی دریافت می کند آن را به نودهای مجاور خودش ارسال می کند. آنها نیز به نوبه خود پیام را برای همه همسالان خود پخش می کنند. طی چند دور انتشار، کل شبکه پیام را به در بین گره ها گسترش می دهد.
پروتکل ارتباطی باید مجموعه ای از خصوصیات مطلوب را تحقق بخشد. این خصوصیات عبارتند از تأخیر کم ، انصاف (تمام گره ها تقریباً تاخیر یکسانی را تجربه می کنند) و ناشناس بودن. شناسایی مالک پیام یا فهمیدن منشا پیام برای نودی که آن را دریافت می کند بسیار سخت است. چون انتشار پیام به صورت تصادفی انجام می شود.
بیشتر بخوانید: دستاورد دیگری برای شبکه لایتنینگ؛ گنجایش شبکه به 5000 بیت کوین رسید
قابلیتهای شبکههای همتا به همتا P2P
هر کامپیوتر در یک شبکه P2P منابعی را در اختیار شبکه قرار میدهد و منابعی که شبکه فراهم میکند را مصرف میکند. منابعی مانند فایلها، پرینترها، فضای ذخیره سازی، پهنای باند و قدرت پردازشی را میتوان بین رایانههای مختلف در چنین شبکههایی به اشتراک گذاشت.
یک شبکه P2P به راحتی قابل پیکربندی است. پس از راه اندازی شبکه، سطح دسترسی کامپیوترها با تنظیم مجوزهای اشتراکگذاری در هر رایانه کنترل میشود. با اختصاص رمزعبور به منابع خاص میتوان دسترسیها را دقیقتر کنترل کرد.
برخی از شبکههای P2P با همپوشانی یک شبکه مجازی با یک شبکه فیزیکی شکل میگیرند. شبکه از اتصال فیزیکی برای انتقال دادهها استفاده میکند در حالی که پوشش مجازی به رایانههای موجود در شبکه اجازه میدهد تا با یکدیگر ارتباط برقرار کنند.
مزایای کلیدی شبکههای P2P
یک شبکه P2P به دلیل معماری خود میتواند مزایای زیادی را برای کاربران خود ارائه دهد، از جمله:
- اشتراکگذاری آسان فایل: یک شبکه پیشرفته P2P میتواند فایلها را به سرعت در فواصل زیاد به اشتراک بگذارد. فایلها در هر زمان قابل دسترسی هستند.
- کاهش هزینهها: در هنگام راه اندازی شبکه P2P نیازی به سرمایه گذاری روی یک کامپیوتر جداگانه برای سرور نیست. به سیستم عامل یا ادمین تمام وقت برای سیستم نیز نیاز نیست.
- سازگاری: شبکه P2P گسترش مییابد تا کلاینتهای (گرهها) جدید را به راحتی در بر بگیرد. این انعطاف پذیری مزیت این شبکهها نسبت به شبکههای کلاینت-سرور است.
- قابلیت اطمینان: بر خلاف یک شبکه کلاینت -سرور، که در صورت از کار افتادن سرور مرکزی ممکن است از کار بیفتد، یک شبکه P2P حتی در صورت از کار افتادن سرور مرکزی، فعال باقی میماند. اگر یک کامپیوتر از کار بیفتد، بقیه به حالت عادی خود ادامه میدهند. این همچنین از ایجاد گلوگاه در سیستم جلوگیری میکند زیرا ترافیک در چندین رایانه توزیع میشود.
- عملکرد مناسب: در حالی که کارایی یک شبکه کلاینت-سرور زمانی که مشتریان بیشتری به شبکه میپیوندند پایین میآید، عملکرد یک شبکه P2P میتواند با پیوستن مشتریان بیشتر به آن بهبود پیدا کند. این به این دلیل است که هر کلاینت در یک شبکه P2P سروری است که منابع خود را در اختیار شبکه قرار میدهد.
- کارایی: شبکههای نوظهور P2P ، همکاری بین دستگاههایی را که منابع متفاوتی دارند را امکانپذیر میسازد، که این امر میتواند برای کل شبکه مفید باشد.
بیشتر بخوانید: بلاک چین آپتوس (Aptos) ؛ مقیاس پذیرترین و سریعترین بلاک چین لایه 1
انواع شبکه همتا به همتا (P2P)
سه سطح اساسی در شبکه P2P وجود دارد، در سطح پایه از یک درگاه USB برای ایجاد شبکه اصلی P2P بین دو سیستم کامپیوتری استفاده میشود. سطح متوسط نیاز به استفاده از سیمهای مسی برای اتصال تعداد زیادی کامپیوتر به یکدیگر دارد. در سطح پیشرفته P2P، نرم افزار پروتکل هایی را ایجاد میکند که ارتباطات مستقیم بین چندین دستگاه را از طریق اینترنت ممکن میسازد.
میتوانید از این سطوح برای ساخت انواع شبکههای زیر استفاده کنید:
شبکههای P2P بدون ساختار
- ساخت شبکههای P2P بدون ساختار آسان است زیرا دستگاهها میتوانند به طور تصادفی به شبکه متصل شوند.
- هر دستگاه میتواند سهمی برابر داشته باشد.
- نبودن ساختار میتواند یافتن محتوای کمیاب را برای کاربران چالش برانگیز کند.
- آنها در برابر چرن (Churn) بالا مقاوم هستند. Churn به تعداد کاربرانی که به شبکه میپیوندند و از آن خارج میشوند اشاره دارد.
شبکههای P2P ساختار یافته
- نرم افزار اجرای یک شبکه P2P ساختار یافته، لایه مجازی شبکه را در یک ساختار خاص سازماندهی میکند.
- در حالی که ساخت شبکههای P2P ساختاریافته به آسانی شبکههای بدون ساختار نیست، اما در مقایسه با شبکههای P2P بدون ساختار، دسترسی بهتری به محتوای کمیاب را به کاربران ارائه میدهند.
- شبکههای ساختاریافته در مقایسه با شبکههای غیرساختیافته نسبت به نرخهای انقباض بالا مقاومت کمتری دارند.
شبکههای ترکیبی
- شبکههای ترکیبی ویژگی های یک شبکه P2P را با ویژگی های شبکه کلاینت-سرور ترکیب میکنند. انواع مختلفی از شبکههای ترکیبی وجود دارد. نمونهای از شبکههای ترکیبی محبوب، شبکهای است که به کاربران در یافتن یکدیگر از طریق یک سرور مرکزی کمک میکند.
کلام آخر
به زبان ساده، شبکه همتا به همتا در نتیجه اتصال دو یا تعدادی رایانه به یکدیگر ساخته میشود. این کامپیوترها بدون اینکه به یک کامپیوتر سرور جداگانه وصل باشند اطلاعات را با یکدیگر به اشتراک میگذارند. یک شبکه همتا به همتا میتواند یک اتصال ad hoc باشد. منظور از ad hoc تعدادی کامپیوتر است که برای انتقال داده به یک Universal Serial Bus اتصال دارد. این شبکه می تواند یک زیر ساخت دائمی برای اتصال چندین کامپیوتر در دفتر کار هم باشد.
شبکه همتا به همتا یک شبکه ساده از کامپیوترها است که به یکدیگر متصل هستند و دادهها را به اشتراک میگذارند و هر کدام به طور مساوی مسئول پردازش اطلاعات هستند.
هر دستگاه فیزیکی که در شبکه قرار دارد و توانایی ارسال و دریافت و به اشتراک گذاری اطلاعات را دارد نود نامیده میشود. لپ تاپ و کامپیوتر شخصی شما، پرینتر ،مودم و… نودهای شبکه هستند.
فکت کوینز مرجع خبر،تحلیل،آموزش رمز ارز
برای دیدن آموزش های رایگان بیشتر،عضو شوید