Від епохи Byron до епохи Shelley: частина перша, тестові мережі

Переклад статті https://iohk.io/en/blog/posts/2020/04/29/from-byron-to-shelley-part-one-the-testnets/

Еволюція до децентралізації складається з серії трьох тестових мереж Haskell Shelley

29 квітня 2020 року Кевін Хаммонд

Після успішного запуску Byron reboot ми почали наш поетапний перехід до Shelley mainnet (Шеллі в основній мережі). Це означає перехід від статичної федеративної системи до динамічної децентралізованої блокчейн-системи Cardano.

Цей процес розпочався серією тестових мереж Haskell Shelley, а його кульмінацією є оновлення гібридної фази Shelley.

Тестові мережі Haskell Shelley будуть виглядати інакше в порівнянні з попередньою Incentivized Testnet (стимульована тестова мережа) або ITN як для операторів стейк пулів, так і для звичайних користувачів/власників токенів ada. Це пояснюється тим, що тестові мережі ITN і Haskell спочатку були створені для реалізації різних цілей.

ITN була розроблена, щоб надати операторам стейк пулів досвід у створенні необхідної робочої інфраструктури, в той же час дозволяючи інженерам IOHK протестувати нові механізми стимулювання з реальними токенами, делегованими реальними користувачами. Тестова мережа Haskell Shelley, в свою чергу, призначена для тонкої попередньої настройки мережі, що дозволить основній мережі стати кращою в своєму класі з першого дня її запуску. На відміну від ITN, тестова мережа Haskell Shelley не включатиме “звичайних” власників токенів: тестова мережа не стимулюватиметься. Кожна фаза розрахована на набагато коротший період - тижні, а не місяці. Ми, звичайно, будемо тестувати роботу гаманця, Експлорера і так далі, але будемо робити це роздаючи виключно тестові токени ada, які не мають на увазі винагороди. Тобто користувачі зможуть протестувати гаманець Daedalus і Експлорер в публічній тестовій мережі і надати зворотний зв’язок, але без використання реальних токенів ada.

Розгортання Shelley відбувається в рамках чітко визначених етапів. Перші три етапи включають вивчення і тестування нових можливостей Shelley і перехід до фази, коли ми будемо повністю готові до повномасштабного розгортання основної мережі Shelley.

Фаза 1: Піонери та фаза "Друзі та сім’я”

Розгортання почалося з тестової мережі “Friends & Family” (друзі та сім’я), потрапити в яку було можна тільки на запрошення. На цьому етапі IOHK спочатку розгорнула і запустила тестову мережу Shelley всередині компанії. Потім ми запросили близько 20 довірених операторів пулів – ми назвали їх “піонерами” - приєднатися до цієї (спочатку закритої) мережі. Ці оператори являють собою невелику групу, яка продемонструвала високий рівень технічної майстерності та внеску спільноти протягом усього періоду ITN.

Ці піонери прокладають шлях для інших, надаючи їм можливість слідувати за нами, коли ми приступимо до повного розгортання Shelley в основній мережі Cardano. На цьому важливому першому етапі вивчення можливостей Платформи Haskell Shelley ми попросили їх виконати спеціальні функціональні тести, необхідні для отримання цінного зворотного зв’язку. Ми очікуємо, що до нас приєднається ще більше піонерів у міру того, як ми будемо розширювати функціонал і доводити надійність тестової мережі.

На цьому етапі тестування, який носить назву “закрита альфа”, IOHK зосередилася на налаштуванні параметрів системи, таких як: поріг насичення, стійкість мережі і децентралізація. Крім того, інженери IOHK змогли побачити дію механізму консенсусу Ouroboros Praos в реальності. Перший етап дав інженерам IOHK можливість вирішувати будь-які питання в контрольованому середовищі, зі зворотним зв’язком і підтримкою з боку операторів стейк пулів, перш ніж відбувся перехід до наступного етапу. Отримані результати були доведені до відома спільноти Cardano, а також використані для вивчення і вдосконалення системи Shelley.

Цей етап також був присвячений підготовці високоякісної технічної документації та підтримці. Піонери (підтримувані спільнотою в цілому) допомогли нам створити документацію, яка дозволить легко налаштувати і запустити стейк пули, а також допомагають нашій команді технічної підтримки розібратися в проблемах, з якими зіткнуться наші користувачі.

Фаза 2: Відкриття тестової мережі - публічна фаза

Реакція спільноти на ITN була неймовірною, і нам дуже пощастило, що у нас є велика кількість кваліфікованих операторів пулів в спільноті. Ми тримали і будемо продовжувати тримати всіх в курсі на кожному етапі цього процесу, і, як завжди, наші репозиторії будуть повністю відкриті. Але з чисто практичних міркувань спочатку ми працювали тільки з невеликою групою, приблизно з 20 операторів. Зрозуміло наша мета полягала в тому, щоб якомога швидше досягти наступного етапу, на якому все повинно було стати загальнодоступним.

Це дозволило всім операторам пулів, які брали участь в ITN, повторно розгорнути свою раніше збудовану інфраструктуру і налаштувати свій стейк пул з урахуванням нових налаштувань Haskell. Ця тестова мережа на даний момент є найбільш наближеною до умов основної мережі, включаючи змішування блоків обох епох - як Byron, так і Shelley.

Під час кожного етапу еволюції в процесі переходу до Shelley IOHK приділяє особливу увагу навчанню і співпраці зі спільнотою. Децентралізація знань так само важлива, як і децентралізація платформи. Піонери-учасники тестової альфа-мережі надали підтримку в консультуванні новоприбулих операторів пулів з питань конфігурації та використання мережі Shelley. А після того, як оператори акліматизуються, ми також попросимо їх підтримки в залученні нових операторів на борт.

Фаза 3: Перевірка балансу

Третя і заключна фаза перед розгортанням основної мережі - це перевірка балансу. Це зведе воєдино історію транзакцій Byron і ITN і підготує основну мережу до епохи Shelley. На цьому етапі будуть консолідовані винагороди ITN і баланси основної мережі. Після цього етапу більше не буде можливості отримувати винагороду на ITN. Однак, користувачі зможуть перевірити свої нагороди і підтвердити їх в гаманцях основної мережі. Трохи пізніше, ближче до того часу, ми поділимося повною інформацією про те, що власники токенів ada повинні зробити, щоб отримати свої нагороди ITN. Фаза перевірки балансу триватиме всього пару тижнів, перш ніж ми почнемо переходити до децентралізованих стейк пулів і епохи Shelley.

Як ми відбираємо першопрохідців

Ми вибирали групу піонерів на основі ряду критеріїв, розроблених у співпраці з командою Фонду Cardano. Оператори пулів повинні були володіти глибокими знаннями про роботу пулів ставок в ITN, а також компетентністю в роботі з Linux, а також бути вихідцями з різних верств суспільства і географічних регіонів. Деякі з них працювали з постачальниками хмарних рішень для запуску свого пулу, інші - зі своїм власним обладнанням. Відбираючи піонерів з різних географічних регіонів, ми змогли забезпечити глобальне охоплення і протестувати нашу нову мережеву реалізацію.

Піонери приділяють певну кількість годин на тиждень підтримці програми розгортання, дають зворотний зв’язок і поради спільноті, а також будуть наставниками для інших операторів на наступних етапах. Важливим в їх ролі є залучення нових операторів на борт і підтримка їх на цьому шляху. Всі наші репозиторії, як завжди, відкриті, тому ми будемо підтримувати кожного, хто буде залучений в цей процес. Звичайно, розробники IOHK цінують внесок кожного члена спільноти Cardano. Кожен бажаючий може отримати підтримку в розкручуванні своїх власних пулів. Якщо піонери є досвідченими розробниками, вони також можуть рекомендувати поліпшення в кодовій базі Shelley Haskell, оскільки вся інформація буде опублікована на GitHub.

Як тільки ця сама рання фаза тестування принесе бажані результати, ми якомога швидше розширятимемо мережу шляхом збільшення кількості пулів.

Забезпечення легкого старту для всіх

Кодова база Haskell Shelley була розроблена з використанням формальних методів і високонадійної мови програмування Haskell. Тому ми припускаємо, що хоч деякі незначні речі, можливо, і потребуватимуть коригування, але початкове рішення повинно бути позбавлене будь-яких серйозних проблем. Цей підхід ми вже успішно використовували у фазі Byron reboot, і ми збираємося продовжити допрацьовувати кодову базу, розроблену тоді. І це принесе ще більшу користь мережі Shelley і не тільки, оскільки дозволить нам впроваджувати нове програмне забезпечення набагато швидше, ніж до цього, а нові функції будуть піддаватися суворій і ретельній перевірці ще до завершення роботи над кодом.

Наша мета полягає в тому, щоб за допомогою використання plug-and-play (підключи і працюй) рішень дозволити операторам пулів працювати і просуватися вперед. Це означає, що вони повинні будуть мати можливість вибрати, наприклад, заздалегідь підготовлений образ docker або екземпляр AWS, і їх стейк пул буде запущений. Ми, звичайно, також надамо автономні двійкові файли і вихідний код для тих, у кого більше досвіду, або тих, хто має специфічні вимоги до конфігурації.

Зараз ми знаходимося на завершальній стадії підготовки, і обстановка загострюється (можливо, ви недавно бачили твіт про те, що новий пул справив свій перший блок). Коли цей перший крок буде успішно завершений, ми відразу ж поділимося датами і більш докладною інформацією. Ми також будемо публікувати додаткові статті, що описують інші ключові кроки та етапи цього процесу. Слідкуйте за ними і одночасно за соціальними каналами IOHK. Ми обов’язково дамо вам знати, коли почнеться розгортання.