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

با گستردهشدن، شهر میتواند قابلیتهای جدیدی به دست بیاورد و همچنین بار جمعیت را کاهش دهد. این مورد را میتوان مثلاً با افزودن یک بخش جدید به شهر برای اختصاص آن به دانشگاهها و خوابگاههای دانشجویی نشان داد که هدف آن ایجاد منطقهای برای دانشجویان برای فعالیت و زندگی بدون افزایش ترافیک اصلی شهر و تراکم اسکان است.
به همین شکل، بلاک چینها نیز تمایل دارند چیزی را در کنار معماری اصلی خود به شکل یک لایه اضافه شده به لایه اصلی قرار دهند یا با افزودن یک لایه اضافی به آن، رشد تصاعدی تراکنشهای کاربران را پاسخگو باشند یا قابلیتهای جدیدی به آن اضافه کنند. به عنوان مثال میتوان به سازگاری EVM با دنیای بیت کوین اشاره کرد که به شبکههای مبتنی بر بیت کوین اجازه میدهد از قراردادهای هوشمند Solidity استفاده کنند.
و این زمانی است که مشابه شهر ما، بلاک چینهای ما نیز گستردهتر میشوند. که به معنای استفاده از یک زنجیره (چین) جانبی است که توانایی زنجیره اصلی را تقویت میکند و برخی از بارهای throughput دادههای آن را میگیرد، در حالی که همان لایه وابسته به مرکز را به اشتراک میگذارد، یعنی لایه 1.
ارتقای ساختار لایه های بلاک چین

یک زنجیره اصلی و یک زنجیره جانبی توسط یک پل cross-chain به هم متصل میشوند. و در حالی که همان لایه تکنولوژیکال را شیر میکنند، یک رویکرد مقیاسپذیری است که باید ظرفیت بلاک چین را افزایش دهد. این رویکرد تنها کاری نیست که میتوان برای کمک به عملکرد بهتر بلاک چین انجام داد. راه دیگر افزودن node های بلاک چین بیشتر برای افزایش اثربخشی بلاک چین، مانند مقیاسپذیری یا throughput است. هنگامی که برای افزایش قابلیتهای سیستم، واحدهای بیشتری از یک معنی را به آن اضافه میکنیم، در مورد مفهوم مقیاسپذیری افقی صحبت میکنیم.
یکی از معناهای مهم «گسترش» ممکن است مربوط به تغییر قوانین شهر باشد. شهروندان بیشتر یک شهر همسنگ کاربران peer-to-peer بیشتر یک بلاک چین است. کاربران بیشتر تقاضای بیشتری برای ترافیک شهری ایجاد میکنند که میتواند به عنوان امکان تراکنشهای بلاک چین قیاس شود. تقاضای بیشتر برای دادههای پخش شده از نقطه A به نقطه B میتواند منجر به ایجاد نیاز به بلوکهای بزرگتر بلاک چین شود. در حالی که بلوکهای بزرگتر، میتوانند به بزرگراههای عریضتر با لاینهای بیشتر تشبیه شوند، میتوانند به پردازش بار گرافیکی بیشتر نیز کمک کنند. در یک بلاک چین، این موضوع به تعداد بلوکهای استخراجشده مربوط میشود که دست به دست با توانایی کلی throughput تراکنشی بلاک چین جلو میروند.
بلندتر شدن یا گسترش عمودی به سادگی به معنای استفاده بهتر از منابع هوایی شهر است. چیزی که به عنوان استفاده از «ارتقای ساختار»، ساختمانهای شهرهای بزرگ را در ابعاد Empire State میسازد و با استفاده از گسترش عمودی، قابلیت اقامتی آن منطقه از شهر را افزایش میدهد.
تفاوت گسترش عمودی و افقی
سپس سختافزار بلاک چین، node ها و container هایی که بلاک چین را قادر به اجرا میکنند، میتوانند به روشی مشابه ارتقا داده شوند. در اینجا ما کامپیوترهای بیشتری اضافه نمیکنیم تا به گسترش افقی دست یافته باشیم، بلکه لایه سخت افزار فعلی را برای افزایش قابلیتهای سیستم ارتقا میدهیم. هنگامی که ما در حال ارتقاء الزامات سختافزاری برای افزایش قابلیتهای سیستم هستیم، صحبت از مقیاسبندی و گسترش عمودی به میان میآید.

هر دوی این مفاهیم، که از ناحیه توسعه دیتابیس آمدهاند، جوانب مثبت و منفی خود ر دارند، اما کاربرد آنها در زمینه شبکههای غیر متمرکز، بده بستانهای بیشتری را به همراه دارد.
در ادامه، بده بستانهای مقیاسپذیری و توضیحاتی کلی درباره آن گفته خواهد شد.
برای توضیح مفهوم فوق مصاحبهای از آقای جاناتان آر.برانت، برای یک مطلب در Cointelegraph که در مورد مقیاسبندی عمودی و افقی بلاک چین است، توضیحاتی را نقل کنم:
«در مبارزه با جرم و جنایت، هالک به صورت عمودی scale میشود (گسترش مییابد) و Justice League به صورت افقی. در بیت کوین، یک سرور ماینینگ را میتوان با افزایش مموری یا ارتقاء کارت گرافیک آن به صورت عمودی گسترش داد و با اتصال سرورها به یکدیگر، این گسترش افقی خواهد بود».
تشبیه عناصر شهر به لایه های بلاک چین
اگرچه تشابه عناصر شهر با لایه های بلاک چین بینقص نیست، اما همچنان به طرز شگفتآوری قابل اجرا است. زیرا بلاک چین و ساختار یک شهر، در واقع اشتراکات زیادی دارند:
- هر دو سیستمهایی هستند که به صورت ارگانیک رشد و تکامل مییابند.
- خیابانهای شهر، مناطق و ترافیک میتوانند طبقات خود را داشته باشند که بخشی از همان لایه هستند. همانطور که ماشینها، اتوبوسها و قطارها بخشی از ترافیک شهری هستند.
- هر دو از مجموعهای از قوانین مرکزی ساده پیروی میکنند که نحوه تصویرسازی، ساخت و نحوه عملکرد آنها را تعیین میکند.
- هر دو نیاز به زیرساختی دارند که روی آن بنا شوند.
آنها شباهتهای دیگری هم دارند که میتوانیم از آنها تشبیهات خود را بسازیم:
ترافیک شهری به عنوان یک پروژه بلاک چین
- زنجیره اصلی (L1) به عنوان شبکه خطوط زمینی اصلی و زنجیره جانبی به عنوان جریانی از بزرگراههای شهری و برونشهری (L1)
- میزان ترافیک شهری با تعداد بلوکهای استخراجشده و تعداد مردمی که با تراکنشهای بلاک چین جابجا شدهاند.
برنامهریزی، معماری و فراتر از آن
نقشه شهری اولیه در ابتدا فقط برای سالهای اولیه تأسیس شهر برنامهریزی و طراحی میشود. که با برخی احتمالات backdoor برای گسترش یا توسعه بیشتر شهر، در صورت افزایش تصاعدی جمعیت در یک دوره کوتاه همراه است. پس از آن، نحوه تکامل یک شهر عمدتاً بر اساس شرایط اضطراری مشخص میشود. مانند مهاجرت مردم یا فرصتهای شغلی. هر برنامهریزی دقیقی در درجه اول، در واکنش به این شرایط اتفاق میافتد.
همین امر در مورد پروژههای بلاک چین نیز صدق میکند. هر یک از آنها برای خدمت به هدف خاصی طراحی شدهاند. مشکلی را حل میکنند و تا حد امکان کاربران را راضی میکنند. با این حال، هر چیزی محدودیتهایی دارد، و محدودیتهایی که برای آن برنامهریزی میکنید، ممکن است ناگهان از بین ببرند. مثلاً به دلیل موفقیت در کاربرد گسترده. هنگامی که چنین محدودیتهایی به وجود میآیند یا از آن فراتر میروند، باید ساختار فعلی ارتقا یا گسترش یابد تا از تراکم تراکنش یا خرابی سیستم جلوگیری شود.
و این همان چیزی است که راه حلهای مقیاسپذیری بلاک چینی که در لایه های بلاک چین 0 تا 3 هستند، ارائه میکنند.
دو رویکرد برای لایه های بلاک چین
وقتی به لایه های بلاک چین فکر میکنیم، دو دیدگاه وجود دارد که باید آنها را بدانیم.
اولین دیدگاه، یک دیدگاه ساختارگرایانهتر از لایه های بلاک چین است. در حالی که دیدگاه دوم، راه حلهای ممکن برای مقیاسپذیری یک بلاک چین ایجاد شده را از دیدگاه سلسله مراتب Ontological توصیف میکند.
دیدگاه 1 : معماری بلاک چین
اولین دیدگاه، تمام بلوکهای سازنده بلاک چین را که معماری لایه ای بلاک چین را ایجاد میکنند، در پنج لایه طبقهبندی میکند. توضیحات کوتاه زیر این لایه ها را به اختصار و از از بالا به پایین تعریف میکند:
لایه اپلیکیشن و پرزنتیشن (Application and Presentation Layer)
لایهای است که قراردادها و اپلیکیشنهای هوشمند روی آن اجرا میشوند و امکان ارتباط دستگاههای کاربران از front-end به back-end بلاک چین را فراهم میکند.
لایه اجماع (Consensus Layer)
این لایه پروتکلی را اجرا میکند که برای تأیید یک تراکنش، به تعداد معینی node یا گره احتیاج دارد. بنابراین، هر تراکنش توسط چندین گره پردازش میشود که در نهایت باید به یک نتیجه برسند و در مورد اعتبار آن توافق کنند. این چارچوب ماهیت غیر متمرکز بلاک چین را حفظ میکند، زیرا هیچ گرهای بر دادههای تراکنش کنترل انحصاری ندارد. و این نقش که توزیع شده است، اتفاق آرای گرههای درگیر را به دست میآورد، مجموعه توافقنامه واضحی را بین گرهها در شبکه P2P ایجاد میکند و تضمین میکند که به لطف تمرکز زدایی، هیچ جناح واحدی کنترل کامل شبکه بلاک چین را در دست نداشته باشد. و اینجا جایی است که تنها سنگینترین یا طولانیترین زنجیره دنبال میشود.
لایه شبکه (Network Layer)
این لایه همچنین لایه انتشار (Propagation layer) نامیده میشود و پلتفرمی برای ارتباطات بین گرهای است که در آن هر گره باید بتواند گرههای دیگر را کشف کند. این یک چارچوب P2P است که برای این موارد طراحی شده است: امکان اعتبارسنجی دادههای تراکنش در اجماع سیستم، ایجاد بلوک، افزودن و کشف کردن.
لایه داده (Data Layer)
اطلاعات تراکنشها در قالب بلوکهای امضا شده و تأیید شده دستهبندی و ذخیره میشوند. هر بلوک بعدی به بلوکهای قبلی مرتبط است، که به اولین بلوکی که در کل فرآیند ماین شده است، یعنی بلوک Genesis متصل است. این فرآیند هر بار که یک بلوک جدید اضافه میشود، تکرار میشود. هر تراکنش به صورت دیجیتالی با کلید خصوصی کیف پول فرستنده امضا میشود. فقط فرستنده به این کلید دسترسی دارد. بنابراین اطمینان حاصل میشود که دادهها نه قابل دسترسی هستند و نه توسط دیگران دستکاری میشوند.
لایه سخت افزار
تجهیزات و سیستمهایی که آن را در حال اجرا نگه میدارند، ستون فقرات تکنولوژیای را فراهم میکنند که امکان اتصال peer-to-peer هزاران کامپیوتر را به هم فراهم میکنند که دادهها را از یکدیگر درخواست میکنند.که قطعهای از سختافزاری است که نرم افزار client را اجرا و به طور تصادفی دادههای تراکنش را تأیید میکند.
بصری سازی (Visualization)

معماری بلاک چین از لایه سخت افزار / زیرساخت شروع میشود که روی آن، لایه های بلاک چین بعدی ایجاد میشوند. این لایه های بلاک چین وقتی با هم ترکیب شوند، یک ستون فقرات بلاک چین ایجاد میکنند.
هر یک از این لایه های بلاک چین معنای خود، و دلیلی برای جدا شدن از بقیه دارند.
سه لایه پایینی معماری لایهای، یک لایه مجزا از منظر سلسله مراتب Ontological ایجاد میکنند. این لایه ترکیبی، لایه 0 (L0) نام دارد.
L0 یک چارچوب شبکه است که تحت بلاک چین اجرا میشود. و از پروتکلها، اتصالات، سخت افزار، ماینرها، گرهها و موارد دیگری تشکیل شده است که زیربنای اکوسیستم بلاک چین را تشکیل میدهند. این مؤلفهها به شکلگیری واقعی بلاک چین کمک میکنند و تکنولوژی آنها به بیت کوین، اتریوم و سایر شبکههای بلاک چین اجازه عملکرد میدهد.
L1 مفاهیم شبکه پایه و زیرساختهای زیربنایی آن را دربر میگیرد. در اینجا میتوانیم یک اجماع، پروتکلهای L1 و خود زنجیره اصلی و زنجیره جانبی (در صورت استفاده) را پیدا کنیم.
دیدگاه 2 : سلسله مراتب Ontological بلاک چین
این رویکرد بر راه حلهای ممکن برای مقیاسپذیری یک بلاک چین از قبل ایجاد شده تمرکز دارد.

تا کنون، پنج لایه معماری بلاک چین را توضیح دادیم. این لایه ها اصول راهاندازی یک بلاک چین را تشکیل میدهند. این به ما اجازه میدهد تا برای مشاهده عملکرد آن یک قدم جلوتر برویم. دو تصویر زیر، یک رویکرد عملکرد کلی را خلاصه میکنند و عناصر اضافی از هر یک از بلوکهای زیر را فراهم میکنند:


آخرین قدمی که برای پژوهش در بلاک چین باید برداریم این است که بدانیم بلاک چین با تمام لایه های بلاک چین که قبلاً توضیح دادیم، روی شانههای اینترنت قرار دارد. مطابق با موضوع این مقاله، بلاک چین اساساً یک لایه اضافی از اینترنت است.

همانطور که در بالا میبینیم، وب کاربردی بدون اینترنت وجود نخواهد داشت. اپلیکیشنهای بلاک چین نیز به اینترنت نیاز دارند، اما میتوانند وب را دور بززند و علاوه بر بسیاری از چیزهای دیگر، نسخه دیگری از وب را به ما ارائه دهند که غیرمتمرکزتر و منحصربهفردتر است. این نسخه از وب، Web3 نام دارد و یکی از بزرگترین پیشرفتهای فناوری بلاک چین است.
به بیان سادهتر، بلاک چین بر روی شانههای اینترنت ایستاده است و به دلیل وجود لایه های اینترنت است که بلاک چین توانایی اتصال به گرهها و ارتباط با ماینرها، گرهها و peer ها را دارد.
پایانبندی
اما به هر حال پرسشی که وجود دارد این است که این لایه ها چه هستند؟ به بیان دقیقتر، یک «لایه» در زبان کامپیوتر چیزی است که بر اساس خدمات ارائه شده توسط پروتکل دیگری که بیسیکتر است، ساخته و اجرا میشود. از این گذشته، پروتکل IP – یکی از سنگبناهای اینترنت- در ابتدا اینگونه طراحی شد.
به عنوان مثال، رابط شبکه که اساس ارتباطات فیزیکی اینترنت است، لایهای است که از خدمات لایه IP پشتیبانی میکند. لایه IP پایهی لایه TCP و لایه TCP پایهی لایه HTTP است. بنابراین، به لطف تمام زیرلایههای دیگر، دو ماشین میتوانند با پروتکل HTTP با هم ارتباط برقرار کنند.
به عنوان نکته پایانی، یکی از عناصر ضروری بلاک چین، مجموعه پروتکل اینترنت است که معمولاً به عنوان TCP/IP شناخته میشود. به لطف TCP/IP ، بلاک چین میتواند در اینترنت کار کند. تک تک کارهایی که بلاک چین انجام میدهد بر اساس TCP/IP است. این قابلیت به عنوان یکی از بخشهای لایه 0 بلاک چین شناسایی میشود.
تعامل بلاک چین با TCP/IP مانند تنفس است. سرویسی که TCP/IP به یک بلاک چین ارائه میدهد، مانند اکسیژنی است که سیاره زمین به ما میدهد. به لطف این موهبت طبیعی، ما میتوانیم زنده بمانیم و از تواناییهایمان استفاده کنیم.
بسیاری از بلاک چینها میتوانند خارج از TCP/IP هم قابل اجرا باشند. با این حال، مشابه جمعیت کوچکی از انسانها که در آیندهای نزدیک به کره مریخ مهاجرت میکنند، این کار از نظر منابع بسیار پرهزینه و در حال حاضر بیاثر خواهد بود. به همین ترتیب، انسانهایی که سعی میکنند با اکسیژن کمیابی که روی مریخ وجود دارد زندگی کنند، سبک زندگی سختتری نسبت به روی زمین با اکسیژن فراوانش خواهند داشت. بلاک چینی که بدون TCP/IP کار میکند، کارایی بسیار کمتری خواهد داشت.
سخن پایانی
اگر اتصال جهانی را به عنوان چرخی در نظر بگیریم که تمدن مدرن را پیش میبرد، TCP/IP مانند تایر پنوماتیکی است که به چرخ اضافه شده و ما را از عصر تلگراف به عصر اینترنت میرساند.
در حال حاضر بلاک چین وعده داده است که لایه دیگری بالای این تایر اضافه کند و عملکرد چرخ را بیش از پیش بهبود ببخشد. شاید اگر همه چیز خوب پیش برود، این تایر یک تایر ضد جاذبه باشد که به ما فرصت پرواز کردن به سمت آسمانها را بدهد.
پایان
منبع: hackernoon نویسنده: میکی مالر
Leave feedback about this