امیر هستم :) سفیر جهانی پروژه InvArch و سفیر Phala Network
آیا واقعا چیستی محاسبات ابری مبتنی بر بلاکچین را درک می کنید؟
در چند سال گذشته در توسعه شبکه های کریپتو کارنسی، پروژه های زیادی برای بهبود مقیاس پذیری به وجود آمده است، اما هیچ کدام به سطح راه حل های استاندارد صنعت نرسیده است. نمونه هایی از این راه حل ها برای مقیاس پذیری شامل شاردینگ همگن اتریوم 2.0، شاردینگ ناهمگن ساخته شده توسط پولکادات، زنجیره های جانبی پلاسما، zkSync، یا رول آپ هایی مانند Optimistic، ساختار زنجیره ای (کراس چین) کازماس (با گسترش ظرفیت زنجیره ای متقابل) و راه حل های لایه 2 مانند استارک وار، اسکیل و ... است.
این پروژه ها دائماً به دنبال بهترین راه حل مقیاس بندی بر اساس ساختار بلاکچین اتریوم و بیت کوین هستند. از بین این پروژه ها، اتریوم 2 بیشترین توجه را برای ساخت برنامه ها و خدمات مالی به خود جلب کرده است. راه حل مقیاس پذیری اتریوم 2.0 بر انتقال از اثبات کار (PoW) به اثبات سهام (PoS)، تجمع معاملات (رول آپ) و شکل دهی ساختار شارد (شاردینگ بلاک چین) متمرکز است. پیاده سازی این روش برای بهبود مقیاس پذیری بسیار زمان بر است. با این حال، نمی توان انکار کرد که این امر ضروری است
به زبان ساده، مزایای ساختار بلاکچین آشکار است، اما سقف تحمیل شده آن نیز بسیار آشکار است. بنابراین برای صنعت دشوار است که بدون شکستن سقف عملکرد اعمال شده توسط ساختار بلاکچین، به نوآوری ادامه دهد. در نتیجه، من معتقدم که نوآوری در صنعت بلاکچین باید به ایده های دیگر صنایع بالغ و سیستم های فناوری بالغ ارجاع یابد.
ما می توانیم از طراحی سیستم عامل های رایانش ابری به عنوان راهی برای شکستن سقف عملکرد استفاده کنیم.
تنگنا برای بلاکچین واضح است
تنگنای بلاکچین از بزرگترین مزیت آن ناشی می شود: اجماع.
اجماع فرایندی است که طی آن چندین طرف (نود) در صف قرار می گیرند و تراکنش ها را اجرا می کنند و سپس بر روی نتایج اجرا توافق می کنند. برای مثال فرایند اجماع بیت کوین را در نظر بگیرید: یک نود پس از تأیید تمام تراکنش های موجود در آن، یک بلاک تولید می کند و آن را با همه همکاران خود پخش می کند تا در شبکه غیر متمرکز باقی بماند، و همه آن همتایان نیز تمام این تراکنش ها و بلاک را تأیید می کنند.
حتی پس از انتقال اتریوم 1 به 2، جایی که مکانیسم اجماع از PoW به PoS تغییر می کند، تنها پیشرفت در روند اجماع آن کاهش زمان تکمیل یک دور اجماع است، به طوری که ظرفیت محاسبه را در داخل افزایش می دهد. واحد زمان در مواجهه با نیازهای محاسباتی عظیم، سقف (محدودیت های پردازش) اجماع بر روی PoS هنوز بسیار واضح است. ما به خاطر انعطاف پذیری کارایی را کنار می گذاریم.
مدل شکل بالا تحت نیازهای محاسباتی بالا ظاهر می شود. اگر تنها پیشرفت مقیاس پذیری، کاهش زمان تکمیل یک دور اجماع در هر بلاک از زنجیره باشد، در شرایط محاسبات زیاد، کارهای محاسباتی همچنان بر منابع محاسباتی یک نود محاسباتی غلبه می کند. بنابراین، چندین وظیفه در تنگنا قرار می گیرند و معاملات را عقب می اندازند. (در بیت کوین و اتریوم، این به عنوان یک ممپول بزرگ نشان داده می شود.)
اگر پردازش بسیار سریع برای برخی از برنامه ها حیاتی نباشد (مانند برنامه های بدون منابع زیاد مانند دیفای) ، می توانید با بهبود میانگین قدرت محاسباتی نود ها، تغییر الگوریتم اجماع سریعتر و زمان بندی، کل فرایند تأیید را تسریع بخشید. دستور اجرا و زمان بندی برای کارهایی که باید برای استفاده فوری از منابع پیش نیاز داشته باشند.
متأسفانه، برای بسیاری از سناریوهای با همزمانی بالا، قطعاً هنوز انتقال با تاخیر، کاهش سرعت، انسداد کامل یا سایر مسائل ناشی از ازدحام (مانند مسائل امنیتی) وجود خواهد داشت. توسعه بلاکچین نمی تواند تنها در کاربرد دیفای و برنامه هایی که می توانند با همزمانی پایین اجرا شوند متوقف شود. ما می خواهیم بتوانیم از سناریوهای با همزمانی بالا مانند تجزیه و تحلیل وب ۳ (مشابه تجزیه و تحلیل گوگل) پشتیبانی کنیم، جایی که برای تعداد زیادی از کاربران جهانی برای داشتن یک تجربه با کیفیت بالا، توان بسیار بالا لازم است.
برای حل این مشکل، ما باید محاسبات را تا حد توان در شبکه افزایش دهیم که با سرعت بخشیدن به این فرایند نمی توان آن را بدست آورد. ما باید سطح همزمانی را در محاسبات بالا ببریم تا بتوانیم محاسبه کافی را در یک زمان معین انجام دهیم.
اگر ایده هایی را از رایانش ابری قرض بگیریم، چگونه می توان مقیاس پذیری و محاسبات موازی را در شبکه بلاکچین تحقق بخشید؟
در محاسبات ابری سنتی، عملکرد شبکه برابر با مجموع سرورهای متصل است. افزودن سرورهای بیشتر عملکرد شبکه محاسبات ابری را افزایش می دهد. با این حال، در زمینه بلاکچین، هر نود تمام محاسبات را تکرار می کند، که به جای افزایش عملکرد محاسباتی (کارایی) افزونگی ایجاد می کند، بنابراین در بلاک چین سنتی، افزودن نود های بیشتر (مانند افزودن سرور) به سادگی عملکرد محاسبات را افزایش نمی دهد. اما ما فقط افزونگی و اعتماد را افزایش می دهیم در حالی که عملکرد بدون تغییر باقی می ماند.
با این حال، افزایش عملکرد دقیقاً همان چیزی است که بلاکچین به آن نیاز دارد. شبکه های سنتی بلاکچین کارایی را به خاطر افزونگی قربانی کرده اند، اما ما همچنان می توانیم ایده هایی را از محاسبات ابری برای افزایش کارایی و در عین حال از افزونگی مورد نیاز برای امنیت استفاده کنیم.
بیایید به برخی از نوآوری های توسعه یافته در محاسبات ابری بپردازیم. مقیاس پذیری (مقیاس پذیری افقی و مقیاس پذیری عمودی) که در بسترهای محاسبات ابری وجود دارد. مقیاس پذیری افقی محاسبه موازی است که وظایف را با تقسیم آنها به خطوط و پارتیشن هایی که می توانند به طور مستقل پردازش شوند، پردازش می کند. در مقابل، مقیاس پذیری عمودی ظرفیت پردازش یک دستگاه را افزایش می دهد، که مشابه تلاش برای افزایش اندازه بلاک برای حل مشکل مقیاس پذیری است.
با این حال، ساختار شبکه های بلاکچین به راحتی قابل تغییر نیست، بنابراین ایده پیاده سازی محاسبات موازی به دو رویکرد کلی تبدیل شده است.
در این مقاله، شش پروژه بلاک چین، رز (Oasis)، فالا، پلت آن، دیفینیتی، آیوتا و فایل کوین را به عنوان مثال برای نشان دادن دو مکتب فکری اصلی برای اجرای مقیاس پذیری موازی در نظر خواهیم گرفت. ابتدا موازی سازی سخت افزاری ایمن را در نظر می گیریم و سپس بهبودهایی را در موازی سازی الگوریتم ها در نظر می گیریم.
در آینده، شبکههای بلاکچینی مانند اینها به طور بالقوه قادر خواهند بود بسیاری از مشکلات باقی مانده در اینترنت را پس از دستیابی به توانایی انجام پردازش موازی حل کنند.
تجزیه دو ایده اصلی محاسبات موازی
برای حل مشکل مقیاس پذیری با استفاده از محاسبات موازی، پروژه های فوق را می توان به دو گروه تفکیک کرد.
یک مکتب فکری توسط رز (Oasis)، فالا و پلت آن ارائه می شود. این 3 پروژه سعی می کنند مسئله مقیاس پذیری را با استفاده از فناوری محاسبات قابل اعتماد مبتنی بر سخت افزار برای ارائه منابع محاسباتی اضافی حل کنند. این سخت افزار معمولاً امنیت را بدون آسیب رساندن به عملکرد ارائه می دهد و به ما امکان می دهد تا بلاکچین را در محاسبه و ذخیره سازی مقیاس پذیر کنیم. علاوه بر این، از آنجا که این امنیت بر الگوریتم اجماع متکی نیست (که باید هماهنگ شود)، این دستگاه ها می توانند محاسبه را به طور مستقل انجام دهند، به طوری که محاسبات موازی می تواند به طور ایمن در خارج از لایه اجماع پیاده سازی شود. ما می توانیم این را به عنوان محاسبات مورد اعتماد موازی خلاصه کنیم.
مکتب فکری دوم توسط دفینیتی، آیوتا و فایل کوین ارائه می شود. از طریق توسعه الگوریتمهای جدید برای لایه های اجماع، فرآیند تأیید تراکنش بلاک برای رسیدن به اجرای موازی بهبود مییابد، که بنابراین میتواند ظرفیت اجرای تراکنش ها در زنجیره را ارتقاء بخشد. سپس، از طریق سطح بالاتر همزمانی فعال شده توسط الگوریتمهای اجماع پیشرفته، تواناییهای محاسباتی هر دستگاه محاسباتی منفرد را میتوان به حداکثر رساند، که عملاً مقیاس عمودی برای محاسبات ابری است.
برخی از جزئیات این 2 رویکرد مختلف در زیر آمده است.
|. طراحی شبکه بر اساس رویکرد سخت افزاری برای دستیابی به همزمانی.
1. ایجاد یک لایه اجماع با کیفیت در ابتدا
هر ارز دیجیتال به یک دفتر کل نیاز دارد که در لایه اجماع وجود داشته باشد. رز (Oasis)، فالا و پلت آن همگی لایه اجماع و لایه محاسباتی را از هم جدا می کنند. یک لایه اجماع مستقل در بالای دستگاه های محاسباتی وجود دارد، یعنی یک شبکه بلاکچین الگوریتم اجماع با سرعت بالا که در بالای نود های محاسباتی (یا ابر) ساخته شده است.
با این حال، شایان ذکر است که رز (Oasis) و پلت آن مفاهیم لایهبندی واضحی دارند، مفهوم لایهبندی فالا واضح نیست. جزئیات طراحی آن در قوانین مستقل برای محاسبه دستگاه های زیر زنجیره نهفته است.
به منظور اطمینان از ثبات لایه اجماع، رز (Oasis) تصمیم گرفت نود هایی را از طریق سازمان ها و شرکت هایی با اعتماد بالا در صنعت ایجاد کند و نود ها از طریق الگوریتم تندرمینت با یکدیگر ارتباط برقرار کنند تا دفتر کل را به سرعت تشکیل دهند.
نود های پلت آن نیز توسط یک فدراسیون ساخته شده اند و از الگوریتم BFT مانند و الگوریتم شبه CBFT برای بهینه سازی کارایی نسبت به الگوریتم BFT معمولی استفاده می کند.
در فالا، شبکهای از نود های کارکن با محیطهای اجرایی قابل اطمینان (TEE) به شبکه بلاکچین متصل میشوند. در میان کارکنان TEE، گروهی از نود های ویژه (به نام دروازه بان ها) مسئول سازماندهی منابع محاسباتی و نگهداری دفتر کل هستند. آنها از روش توافقی به نام اثبات سهام نامزد شده (NPoS) استفاده می کنند، همان روشی که توسط پولکادات استفاده می شود، که می تواند به سرعت بلاک های جدید تولید کند.
در زیر لایه اجماع، آنها محاسبات و ذخیرهسازی را از زنجیره خارج میکنند (که برخی افراد ممکن است آن را لایه ۲ بنامند) و اینجاست که محاسبات موازی اتفاق میافتد.
2. تحقق بخشیدن محاسبات موازی در یک لایه محاسبات جداگانه.
بیایید به Oasis نگاه کنیم. لایه محاسباتی آن از چندین لایه Paratime تشکیل شده است که هر یک به عنوان یک زنجیره مستقل یا یک خوشه زمان اجرا دیده می شود که توافق نهایی توسط یک لایه اجماع ارائه می شود. Oasis برخی از ParaTime های محرمانه را پیش بینی می کند که توسط امنیت TEE فعال می شوند، اما در این مرحله اولیه در استقرار شبکه رز، Paratime عمدتاً نود های کاملا معمولی است که در ابر مستقر شده اند و بسیاری از دستگاه های مجهز به TEE را مستقر نکرده اند. با گذشت زمان، شاید تعداد زیادی از نود های Paratime دارای قابلیت TEE برای کمک به تضمین امنیت برخی از لایه های ParaTime محرمانه باشند.
در همین حال، در فالا، تمام محاسبات در نود های ماینر TEE تکمیل میشود. اجرای runtime, pRuntime فالا در هر TEE مستقر خواهد شد. ارتباط بین هر pRuntime و لایه اجماع مستقل است، بنابراین تراکنش های پردازش شده در pRuntime دچار اختلاف نمی شوند. این محاسبات موازی از همان ابتدا محقق می شود، زیرا هر pRuntime به عنوان یک قطعه عمل می کند. هرچه تعداد این نود های ماینر بیشتر باشد، عملکرد شبکه بهتر است.
در نهایت، پلت آن - جایی که محاسبات در لایه 2 تکمیل می شود. لایه 2 پلت آن دارای تعداد زیادی دستگاه محاسباتی، از جمله دستگاه های محاسباتی قابل اعتماد سفارشی، مانند مدارهای قابل برنامه ریزی برای محاسبات چند جانبه است. علاوه بر این، محاسبات حریم خصوصی نیز از طریق رمزنگاری، اثبات دانش صفر و سایر فناوریها تکمیل میشود. پلت آن همچنین می تواند محاسبات حریم خصوصی را تحقق بخشد، اما از اثبات دانش صفر، رمزگذاری همومورفیک، یا محاسبات چند جانبه و غیره به عنوان فناوری زیربنایی خود استفاده می کند.
طراحی لایه محاسباتی به عنوان شبکه ای از سخت افزار محاسباتی قابل اعتماد راهی برای استفاده از محاسبات موازی برای افزایش ظرفیت و دستیابی به مقیاس پذیری است. برخی از افراد ممکن است استدلال کنند که انتقال محاسبات به خارج از لایه اجماع، تحقق واقعی محاسبات بلاکچین موازی نیست، زیرا فرض امنیتی مدل تهدید بلاک چین را تغییر میدهد. با این حال، در این مدل، دستگاهها با لایههای اجماع یکپارچه در نظر گرفته میشوند، زیرا تضمینهای امنیتی بیشتری را از طریق فناوری محاسباتی قابل اعتماد به ارمغان میآورند.
در تئوری، برای محاسبات ایمن، به یک مفهوم دفتر کل یا راههای دیگری برای کنترل امنیت محاسبات خارج از زنجیره نیاز داریم. اما با کمک سخت افزار محاسباتی قابل اعتماد، ما به این دفتر کل برای ارائه امنیت خارج از زنجیره نیاز نداریم.
ما می توانیم این را با اتریوم 2.0 مقایسه کنیم. در آن، زنجیره بیکن دفتر کل است. اگر سیستم شاردینگ مستقر شده باشد، هر شارد می تواند وظایف را مستقل از دیگران پردازش کند. در رُز (Oasis)، فالا و پلت آن محاسبه انجام شده توسط شارد با سخت افزار قابل اعتماد جایگزین می شود - هر واحد سخت افزار تست شده به طور موثر یک شارد دیگر است.
اکنون که نمونههایی از موازیسازی را از طریق لایههای محاسباتی تجزیه کردیم، بیایید ببینیم که چگونه میتوان موازیسازی را با تغییر الگوریتمها تحقق بخشید.
||. طراحی شبکه بر اساس استفاده از الگوریتم ها برای دستیابی به پردازش موازی
1. توسعه یک الگوریتم جدید
دفینیتی، آیوتا و فایل کوین نمایندگان خوبی برای این رویکرد هستند. پس از توسعه الگوریتمی که امکان آن را فراهم میکند، تراکنشها را میتوان به صورت موازی بدون تأثیر بر فرآیند تأیید بلاک، که منجر به افزایش توان عملیاتی کلی میشود، اجرا کرد.
این مهم است که به یاد داشته باشید که اگر موازی کاری در سطح الگوریتم اجرا شود، قوانین الگوریتم اجماع تغییر می کند، که این امر عملکرد اساسی بلاک چین را نیز تغییر می دهد. به عنوان مثال، اگر الگوریتم PoW تغییر کند، منطق تولید اعداد تصادفی، نوشتن بلاک و پخش در بلاکچین را نیز تغییر خواهد داد.
بهینه سازی در دفینیتی بر روی الگوریتم اجماع نهفته است. دفینیتی مکانیزم اجماع سنتی را تغییر میدهد که در آن همه نودهایی که شرکت میکنند باید همه محاسبات جمعآوری را انجام دهند، به مکانیزمی که اعداد تصادفی برای انتخاب نود اتفاق میافتد، محاسبه میشود که میتواند تولید کند، که تراکنش را سرعت میبخشد. آنچه در اینجا مهم است این است که نود جماعه انتخاب شده تراکنش را از طریق یک الگوری غیرتعاملی BSL ممکن است کند (نود خطر می کند که بازخورد امضای مستقل است، ترکیبی)، به این معنی که فرآیندها مجدداً بین نود هستند. با BFT را تجربه کرد. اجماع ، بنابراین به اثر شتاب "موازی" دست می بینم.
رویکرد آیوتا کاملاً متفاوت است. برخلاف سایر بلاکچین ها، آیوتا از ساختار داده تنگل (نوعی DAG) برای تشکیل یک دفتر کل استفاده می کند. تنگل مستلزم آن است که هر تراکنش توسط دو تراکنش قبلی پشتیبانی شود. در اصطلاح علوم کامپیوتر، از آنجایی که فقط سفارش بخشی از تراکنش ها وجود دارد، نه سفارش کامل، باید وابستگی به مهر زمانی موجود در دیگر معماری های بلاک چین را کاملاً از بین ببرد. تنگل در نهایت یک ساختار تایید همبستگی نامتناهی از تراکنش را تشکیل می دهد که می تواند به موازی سازی دست یابد.
فایل کوین موازی سازی را برای وظایف ذخیره سازی اعمال می کند. به دلیل جنبه ذخیره سازی فایل کوین، فایل کوین تأیید و هضم کامل داده های ذخیره شده را انجام می دهد، که از نظر محاسباتی یک فرایند فشرده است (به طور نسبی). این بدان معناست که موازی کاری و افزایش سرعت برای عملکرد کلی بسیار مهم است. در حال حاضر، از الگوریتم NSE به روز شده استفاده می کند.
از الگوریتم NSE میتوان دریافت که هنگام پردازش دادهها، دادهها به پنجرهها (به عنوان واحدها) و لایه ها تقسیم میشوند. پس از پردازش برخی از بخش های داده، ذخیره سازی داده ها و تولید انجام می شود. با NSE، وابستگی های زیادی بین لایه ها وجود ندارد، بنابراین می توان موارد زیادی را به صورت موازی پردازش کرد، که می تواند به عنوان شتاب موازی خلاصه شود.
2. سایر قسمت ها را بر اساس نیاز الگوریتم پیکربندی مجدد کنید.
برخی از توابع کمکی پس از اینکه موازی سازی به صورت الگوریتمی به دست آمد، مورد نیاز است.
ما خاطرنشان کردیم که تنگل آیوتا مانند بلاکچین های معمولی دارای هیچ زمان بندی یا ترتیب مشخصی نیست. بنابراین، برای رسیدن به اجماع، ما به کمک یک تأیید کننده تراکنش نیاز داریم تا تأیید کند که کدام تراکنش ها بخشی از اجماع هستند.
الگوریتم های استفاده شده توسط دفینیتی با زیر شبکه ها، مراکز داده و کانیسترها جفت می شوند. یک زیر شبکه در دفینیتی شبیه به "شارد" در یک بلاک چین شارد شده است. زیر شبکه ها توسط ماشینهای فیزیکی واقع در مراکز داده میزبانی می شوند. این بدان معنی است که قدرت پردازش ذاتی شبکه قابل توجه است. در یک زیر شبکه، کانیستر یک واحد استقرار مستقل است که می تواند با قرارداد هوشمند بلاک چین مقایسه شود. فعل و انفعالات ترکیبی کانیستر می تواند از کاربردهای پیچیده ای پشتیبانی کند.
در فایل کوین، پس از پردازش موازی داده ها توسط الگوریتم NSE، فایل کوین تکرار ذخیره سازی و بسته بندی الگوریتم اثبات ظرفیت را انجام می دهد. این قطعات ضروری از ثبات دفتر کل فایل کوین اطمینان می دهد. سایر بخش های توسعه به ابزارهای ارائه شده توسط تیم رسمی و اکوسیستم فایل کوین متکی هستند.
بعد از محاسبات موازی با فناوری های ابری چه چیزی در انتظار است؟
شش پروژه بلاکچینی فوق از لحاظ نظری با استفاده از محاسبات موازی بر محدودیت های عملکرد ذاتی در بلاکچین سنتی غلبه کرده اند. بنابراین، گام بعدی در توسعه آنها چیست؟
به عقیده من، قدم بعدی این است که بفهمیم چگونه می توان این ویژگی ها را از طریق ابزارهای توسعه دهنده در اختیار توسعه دهندگان قرار داد. به هر حال، مهمترین هدف شبکه بلاکچین توسعه DAPP ها و خدمات غیرمتمرکز تعمیم یافته است.
زیرساخت به تنهایی بی فایده است اگر هیچ توسعه دهنده ای برای ایجاد برنامه های کاربردی روی آن وجود نداشته باشد، حتی اگر عملکرد زیرساخت به اندازه کافی بالا باشد. توسعه دهندگان تعداد برنامه های کاربردی موجود در زنجیره را تعیین می کنند. تعداد برنامه های کاربردی در زنجیره، ارزش ایجاد شده و نگهداری شده توسط آن زنجیره را تعیین می کند.
توسعه دهندگان اینترنتی سنتی که وارد عصر رایانش ابری می شدند در توسعه بومی با مشکلاتی مواجه بودند، اما در نهایت پلتفرم های رایانش ابری ابزارهای بسیار با کیفیتی را در اختیار توسعه دهندگان جدید قرار دادند. در نتیجه کار سخت آنها، توسعه دهندگان بعدی از نگرانی در مورد مقیاس پذیری که توسعه دهندگان قبلی را درگیر کرده بود، رها شدند.
آیا شبکه های بلاک چین امروزی می توانند «معماری سرویس گرا» پلتفرم های رایانش ابری را به عنوان هدفی برای نوآوری در نظر بگیرند؟ با همزمانی، می بینیم که بلاک چین ها می توانند از سقف عملکرد خود عبور کنند. آنها چقدر می توانند پیش بروند؟
مطلبی دیگر از این انتشارات
خلاصه عملکرد خالا در مزایده اسلات کوزاما
مطلبی دیگر از این انتشارات
درک چیستی فالا نتورک، پاراچین ها و معرفی استراتژی فالا برای مزایده های پاراچین پولکادات!
مطلبی دیگر از این انتشارات
آیا ما باید سخت افزار را از بلاک چین بیرون کنیم؟