شبکه غیر متمرکز چیست و چگونه کار میکند؟ ساختار این شبکه به چه صورت است؟ از این شبکه در کدام بخشهای فناوری میتوان استفاده کرد؟ تکنولوژی بلاک چین همواره تلاش میکند تا با ارائه فناوریهای جدید، مسیر ساخت دنیایی غیر متمرکز را هموار کند. یکی از مهمترین فناوریهای اصلی در بلاک چین، شبکه غیر متمرکز یا شبکه همتا به همتا است. این نوع شبکهها یک مدل ارتباطی غیر متمرکز بین گرهها یا نودها برقرار میکند که در آن کاربران میتوانند بدون دخالت سرور مرکزی، اطلاعات خود را بین سایر کاربران جابجا کنند. ساختار و الگوهای شبکه همتا به همتا در اکثر بلاک چینها اجرا میشود. در این مقاله قصد داریم این نوع شبکه را به صورت کامل بررسی کنیم.
شبکه متمرکز (centralized network) چیست؟
قبل از ورود به بحث شبکههای غیر متمرکز، بهتر است ابتدا با شبکه متمرکز آشنا شویم. یک شبکه متمرکز شبکهای است که یک بخش مرکزی، عملکرد شبکه را به دست دارد و کنترل میکند. بخش مرکزی ممکن است شامل یک نفر، گروه یا یک شرکت باشد که معمولا وظیفه نگهداری شبکه، کنترل و مدیریت کاربران و اجرای قوانین و چارچوب لازم در شبکه را اجرا میکند.
ساختار کلی شبکه متمرکز بدین صورت است که تمامی فرآیندهای مهم توسط یک سرور واحد اجرا میشود. این سرور وظیفه ذخیره تمامی اطلاعات و اجرای تمامی فرآیندهای شبکه را بر عهده دارد. سیستم فیزیکی یک سرور مرکزی ممکن است در یک مکان یا در چند مکان قرار بگیرد. سرورهای مرکزی معمولا قدرت پردازشی قوی و میزان ظرفیت ذخیره سازی بالایی دارند و میتوانند با سرعت بسیار بالایی به شبکه وصل شوند. اگر سرور واحد در شبکه متمرکز از کار بیفتد، شبکه نمیتواند به کار خود ادامه دهد و قطع میشود. پلتفرمهای دیجیتالی زیادی همچون فیسبوک، واتس آپ و غیره دارای شبکه متمرکز هستند.

شبکه غیر متمرکز (decentralized network) چیست؟
به صورت خلاصه، شبکه غیر متمرکز یا همتا به همتا از چندین دستگاه (سرور) تشکیل شده است که این دستگاهها به وسیله اتصالات همتا به همتا، دادهها و اطلاعات مختلف را با هم به اشتراک میگذارند. در واقع شبکه غیر متمرکز یک بستری است که در آن سایر کاربران بدون دخالت سرور مرکزی، میتوانند با سایر دستگاهها ارتباط داشته باشند؛ بنابراین شبکه همتا به همتا یک زیر ساخت مناسب برای اتصال چندین دستگاه در بستر محیطی آفلاین است.
شبکههای غیر متمرکز از مدل همتا به همتا یا peer to peer استفاده میکنند. این مدل ارتباطی بدین صورت است که کابران میتوانند اطلاعات و دادههای خود را به صورت غیر متمرکز به دیگران منتقل کنند و برخلاف مدل متمرکز، که کاربران تنها تقاضای یک دستور را صادر میکرد و سرور آن را اجرا میکرد، در این مدل کاربر میتواند علاوه بر ارسال دستور خود در شبکه، خود نیز به عنوان یک سرور در شبکه عمل کند. در این حالت کاربر هم میتواند از شبکه استفاده کرده و اطلاعات خود را رد و بدل کند و هم از طریق نقش سرور، در شبکه کسب درآمد کند.

تفاوتهای مهم بین شبکه های غیر متمرکز و متمرکز
همان طور که اشاره شد یک شبکه متمرکز بیشتر برای ایجاد ثبات و کنترل ایجاد میشود اما یک شبکه غیر متمرکز برای ایجاد آزادی و همکاری بین کاربران طراحی میشود. به غیر از اهداف و ماهیت این دو شبکه، مهمترین تفاوت بین شبکههای متمرکز و غیر متمرکز شامل موارد زیر است:
1. نهاد یا شخص ثالث
در شبکههای متمرکز، یک نهاد یا گروه یا شرکت ثالث برای ایجاد تسهیل در ارتباط بین کاربران و دریافت دادهها و اطلاعات آنها وجود دارد. این موضوع در شبکههای غیر متمرکز کاملا متفاوت است. در شبکههای غیر متمرکز دیگر نهاد ثالث حذف میشود و هرکدام از کاربران میتوانند به صورت مستقیم در نقش سرور شبکه ظاهر شده و به توسعه آن کمک کنند.
2. شفافیت
یکی از مهمترین تفاوتهای شبکه متمرکز و غیر متمرکز، بحث شفافیت است. در یک شبکه متمرکز، به دلیل آن که تمامی اطلاعات تحت نظارت یک نهاد ثالث بوده و همگی در یک سرور مرکزی ذخیره میشوند؛ میزان شفافیت بسیار پایین میباشد. اما در شبکههای غیر متمرکز، به دلیل تمرکززدایی و استفاده از فناوریهایی همچون دفتر کل توزیع شده (DLT) میزان شفافیت اطلاعات و دادههای شبکه برای کاربران افزایش پیدا میکند.
3. مقیاس پذیری
در بحث مقیاس پذیری، شبکههای متمرکز به دلیل داشتن چندین سرور متمرکز و قدرتمند، مقیاس پذیری بالاتری نسبت به شبکههای غیر متمرکز دارند. در واقع در شبکههای غیر متمرکز، به دلیل نبود سرورهای مرکزی قدرتمند، توانایی مدیریت دادهها و اطلاعات دشوار است.
4. امنیت
در شبکههای متمرکز، هکرها و اسپمها تنها باید به یک یا چند نقطه محدود از سرور مرکزی حمله کنند تا بتوانند به کل شبکه دسترسی داشته باشند. اما در شبکههای غیر متمرکز، به دلیل پراکندگی بیشتر سرورها و وابسته نبودن نودها به یکدیگر، هکرها نمیتوانند امنیت این شبکه را به خطر بیندازند. همچنین به دلیل وجود فناوریهایی نظیر قرارداد هوشمند (smart contract) و حذف خطاهای انسانی در شبکههای غیر متمرکز، میزان امنیت بیشتر میشود. لذا امنیت شبکه غیر متمرکز بسیار بالاتر از یک شبکه متمرکز است.
5. هزینه کارمزد تراکنشها
در شبکههای متمرکز، به دلیل آن که تعداد واسطههای زیادی درگیر فرآیند تراکنش هستند، میزان کارمزدهای معاملاتی بالاتر میباشد. اما در شبکههای غیر متمرکز تمامی این واسطهها حذف میشوند و میزان کارمزد شبکهها کاهش پیدا میکند.

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

برای درک بهتر عملکرد شبکه غیر متمرکز به این مثال توجه کنید: فرض کنید که قصد دارید یک فایل موسیقی را از اینترنت دانلود کنید. برای انجام این کار به سراغ یک مرورگر رفته و وب سایت مورد نظر خود را برای دانلود فایل موسیقی انتخاب میکنید. هنگامی که وارد وب سایت شوید، خود وب سایت نقش سرور و سیستم شما نقش کلاینت را ایفا میکند.
در واقع در شبکههای متمرکز، همانند این وب سایت، انتقال اطلاعات به صورت یک طرفه انجام میشود و کاربران تنها با نقش کلاینت میتوانند از سرورهای وب سایت موسیقی مورد نظر خود را دانلود کنند اما در شبکههای غیر متمرکز شرایط فرق میکند. در این حالت زمانی که شما در اینترنت به دنبال فایل موسیقی خود هستید، فرآیند دانلود متفاوت میشود. اگر بخواهید موسیقی مورد نظر خود را از یک شبکه همتا به همتا دریافت کنید، ابتدا باید نرم افزار مربوط به آن شبکه را برای اتصال به بقیه نودها یا دستگاههای فعال در شبکه، نصب کنید. بعد از فعال سازی نرم افزار، باید محتوای مورد نظر خود را در قالب نرم افزار، در شبکه غیر متمرکز جستجو کنید.
پس از پیدا کردن موسیقی، دانلود از نودهایی که موسیقی مورد نظر شما را دارند، آغاز میشود. در واقع شما جستجو میکنید که کدام کاربران یا نودها موسیقی شما را در دستگاه خود دارند و بعد از پیدا کردن، موسیقی را از سرور دستگاه آنها دانلود میکنید. پس از اتمام دانلود، شما میتوانید فایل موسیقی را در سیستم خود ذخیره نگه دارید تا سایر کاربران در هنگام جستجوی این آهنگ، بتوانند آن را از سرور دستگاه شما دانلود کنند. بدین ترتیب شما هم در نقش کلاینت و هم در نقش سرور در شبکه فعالیت میکنید.
انواع شبکه های غیر متمرکز یا همتا به همتا
شبکههای p2p یا غیر متمرکز بسته به قابلیتها و اهداف خود، دارای معماریهای مختلفی هستند. در واقع این نوع شبکه برحسب شیوه ارتباط گیری با کاربران، به 3 دسته زیر تقسیم میشوند:
1. شبکههای ساختار بندی نشده (unstructured networks)
شبکههای همتا به همتای ساختار بندی نشده یا بدون ساختار، شبکههایی هستند که در آن نودها یا کاربران میتوانند به صورت تصادفی یا رندوم با سایر نودها در ارتباط باشند و اطلاعات خود را رد و بدل کنند. شبکههای ساختار بندی نشده برای انجام فعالیتهایی که به سرعت بالا نیاز دارند، بسیار مناسب است. در واقع چون نودها میتوانند به راحتی به شبکه وصل شده و از آن خارج شوند، سرعت تبادلات اطلاعات بالا میباشد.
از طرفی ایجاد شبکههای unstructured networks بسیار آسان است؛ زیرا هر کدام از کاربران یا نودها که قصد فعالیت به صورت سرور را در شبکه دارند، میتوانند با کپیکردن لینکهای موجود در شبکه و قرار دادن آنها در سرور خود، کار شبکه را سادهتر کنند. البته علاوه بر مزایای گفته شده، این نوع شبکهها مشکلاتی نیز دارند. کاربران برای فعالیت در این نوع شبکهها باید سیستمهای قدرتمندی داشته باشند. در این سیستمها جستجوی کاربران یا نودها به کل شبکه ارسال میشود و درخواست باید در تمامی سیستمهای نودها جستجو شود.
بنابراین کاربران باید سیستمهای مناسبی داشته باشند تا بتوانند جستجوی سایر کاربران را در سیستم خود پردازش کنند. علاوه بر این، این احتمال بسیار قوی وجود دارد که اطلاعات مورد نیاز یک کاربر در سیستم سایر کاربران وجود نداشته باشد. در واقع موفقیت این گونه شبکهها منوط به افزایش تعداد نودها یا کاربران است و با تعداد محدودی از کاربران، شبکه نمیتواند به خوبی پیشرفت کند. شبکههایی مانند napster، gnutalla از جمله شبکههای غیر متمرکز ساختار بندی نشده میباشند.
2. شبکههای ساختار بندی شده (structured networks)
شبکههای ساختار بندی شده دارای سیستم منظم و ساختار یافتهای هستند. در این شبکهها هر کدام از نودهای شبکه اجازه دارد تا بخش مشخصی از محتوای موجود در شبکه را جستجو کند. در واقع در این نوع شبکه، هرکدام از نودها وظایف مشخصی دارند. وظایف بین نودها توسط یک پروتکل غیر متمرکز در شبکه تقسیم میشود.
بنابراین زمانی که یک کاربری در شبکه محتوای خاصی را جستجو میکند، شبکه به وسیله پروتکل مشترک، که وظیفه انتقال دادهها را بر عهده دارد، درخواست کاربر را به نود مسئول آن بخش از محتوا ارسال میکند. هزینه راه اندازی این شبکهها نسبت به شبکههای ساختار بندی نشده بیشتر است. همچنین این شبکه متمرکزتر از شبکههای بدون ساختار است و میتوان این مورد را عیب اصلی این شبکهها دانست.
3. شبکههای ترکیبی
در شبکههای ترکیبی، هر دو روش سرور/کلاینت و شبکه همتا به همتا اجرا میشود. در واقع در شبکههای ترکیبی، اطلاعات مربوط به شبکه در یک سرور ذخیره میشود و کاربران برای جستجوی فایل خود، میتوانند از آن سرور استفاده کنند. در مقابل کاربران میتوانند نقش سرور را نیز در شبکه ایفا کنند و با بارگزاری فایلها و محتواهای مختلف، به توسعه شبکه کمک کنند. شبکههای ترکیبی عملکرد بهتری نسبت به سایر شبکههای p2p دارند؛ زیرا در این نوع شبکهها جستجو توسط سرور مرکزی کنترل میشود و سرعت پردازش افزایش پیدا میکند.

کاربردهای شبکههای P2P
شبکههای همتا به همتا به دلیل ماهیت منحصر به فرد خود، در تمامی پروژههایی که قصد حذف واسطهها را داشته باشند، کاربرد دارد. در حال حاضر این شبکهها با سرعت زیادی در حال توسعه و رشد هستند و در بیشتر زمینهها ورود پیدا کردهاند. برخی از کاربردهای مهم شبکههای p2p موارد زیر است:
1. اشتراک گذاری محتوا
یکی از کاربردهای اصلی شبکههای همتا به همتا، اشتراک گذاری بدون محدودیت محتوا است. شبکههای peer to peer به کاربران اجازه میدهند تا انواع فایلها را بدون محدودیت در اختیار شبکه و سایر کاربران قرار دهند. برخی از پلتفرمهایی نظیر UTorrent و BitComet جزو پلتفرمهایی است که با استفاده از تکنولوژی شبکههای p2p، امکان اشتراک فایلهایی نظیر عکس، ویدیو، موزیک و غیره را بدون محدودیت برای کاربران فراهم کرده است.
2. بلاک چین
در معماری شبکههای بلاک چین از مدل شبکههای p2p برای انتقال توکنها در سراسر جهان بدون نیاز به واسطهای استفاده شده است. در واقع تکنولوژی بلاک چین با استفاده از معماری p2p برای ایجاد دفتر کل توزیع شده، تمامی تراکنشهای خود را به صورت غیر متمرکز انجام میدهد. بنابراین شبکههای مبتنی بر بلاک چین مانند بیت کوین، اتریوم و غیره که از دفتر کل توزیع شده استفاده میکنند؛ نوعی شبکه همتا به همتا محسوب میشوند.

3. صرافیهای غیر متمرکز
معماری شبکههای همتا ب همتا به صرافیهای ارزهای دیجیتال نیز ورود پیدا کرده است. صرافی های غیر متمرکز یا Decentralized exchange با استفاده از معماری شبکههای همتا به همتا، این امکان را برای خود فراهم میکند که بدون حضور نهاد یا شخص ثالث، بتوانند داراییهای خود را با کاربران دیگر معامله کنند. صرافیهایی مانند یونی سواپ (uniswap) و سوشی سواپ (sushiswap) از شبکههای همتا به همتا استفاده میکنند.
سخن پایانی
شبکههای غیر متمرکز یا همتا به همتا یکی از تکنولوژیهای پیچیده دنیای فناوری اطلاعات است که سعی دارد واسطههای موجود در تبادلات اطلاعات کاربران را حذف کند. این فناوری در بیشتر شبکههای مبتنی بر بلاک چین استفاده میشود. شبکههای p2p بستر لازم برای دسترسی گسترده و بدون واسطه به انوع محتوا، فایل و سایر اطلاعات موجود بین کاربران را فراهم میکند. کاربران در این شبکه علاوه بر نقش کلاینت، میتوانند به عنوان یک سرور در ذخیره اطلاعات و توسعه شبکه مشارکت داشته باشند. در این مقاله تلاش کردیم تا ساز و کار شبکههای همتا به همتا و کاربرد آنها را شرح دهیم.
بسیار مقاله مفیدی بود. مرسی از بروکر باسابقه پی سی ام
سپاس از همراهی شما