TON має основну технологічну логіку, зосереджену навколо високошвидкісних додатків: TON походить від Telegram із транзакціями, які записуються безпосередньо в ланцюжку на основі повідомлень, підтримуючи одноранговий зв’язок.
Динамічна мультишардова архітектура TON полегшує масштабованість додатків: TON підвищує швидкість за допомогою паралельних запитів, покращує точність запитів за допомогою динамічного шардингу та підвищує розширюваність за допомогою структури клітинок.
TON продовжуватиме оптимізувати свою технічну структуру в майбутньому: завдяки паралельному розширенню, запровадженню інструментів сегментування ланцюгів і посиленню перевірок вузлів TON прагне зберегти свої переваги у швидкості та масштабованості.
Масштабованість блокчейну є важливою технічною проблемою та ключовим рушієм для розвитку технології блокчейну: у міру зростання додатків блокчейну та збільшення кількості користувачів існуючі мережі блокчейну часто стикаються з проблемами недостатньої пропускної здатності та тривалого часу підтвердження транзакцій. Традиційні конструкції блокчейнів обмежують їх здатність обробляти великомасштабні транзакції та вимоги користувачів, що призводить до перевантаження мережі, високих транзакційних витрат і неефективності.
Проблеми масштабованості блокчейну в першу чергу виникають через розподілену архітектуру та механізми консенсусу: механізм консенсусу та розподілена природа блокчейну вимагають, щоб кожен вузол у мережі перевіряв і записував усі транзакції, що обмежує пропускну здатність мережі. Крім того, безпека та децентралізовані функції блокчейну вимагають, щоб усі вузли підтримували повні копії блокчейну, що збільшує навантаження на зберігання та передачу.
Щоб вирішити проблему масштабованості блокчейну, дослідники запропонували різні рішення для масштабування, такі як шардинг, бічні ланцюжки та рішення рівня 2: ці підходи спрямовані на підвищення пропускної здатності та продуктивності мережі шляхом поділу мережі на менші сегменти, впровадження незалежних блокчейнів або створення додаткових структур. на головному ланцюзі. Однак ці рішення створюють нові технічні проблеми та проблеми безпеки, такі як міжшардовий зв’язок, міжшардові передачі активів і конструкція механізму консенсусу.
TON blockchain, що походить від Telegram, був задуманий з ідеєю обслуговування величезної бази користувачів: Telegram є однією з найпопулярніших соціальних платформ у світі, яка може похвалитися понад 800 мільйонами активних користувачів щомісяця та щодня передає мільярди повідомлень через програмне забезпечення. TON, як набіг Telegram на web3, був розроблений із самого початку, щоб обслуговувати мільярди користувачів, а не лише невелику базу користувачів.
Шардинг у TON є «знизу вгору». У той час як у звичайних схемах шардингу блокчейнів зазвичай використовується підхід «зверху вниз», спочатку встановлюючи єдиний блокчейн, а потім розбиваючи його на інтерактивні блокчейни для підвищення продуктивності, шардинг у TON використовує підхід «знизу вгору». Він організовує ці ланцюжки облікових записів у шардчейни, утворюючи Shardchain, де робочі ланцюжки існують виключно у віртуальній або логічній формі. TON забезпечує паралельну обробку транзакцій у кількох ланцюгах, що називають «блокчейном блокчейнів». Такий підхід ефективно підвищує продуктивність системи.
TON має динамічну архітектуру шардингу, яка складається з головного ланцюга, робочого ланцюга та сегментного ланцюга: головний ланцюг координує, тоді як фактична обробка транзакцій відбувається в різних робочих ланцюгах і сегментних ланцюгах. Крім того, сегментування TON є динамічним, коли кожен обліковий запис функціонує як шардчейн. Вони можуть адаптивно об’єднуватися у більші шардчейни на основі взаємодії між обліковими записами для задоволення потреб у динамічному розширенні.
Якщо шардинг досягає ліміту, кожен шардчейн зберігатиме лише один обліковий запис або смарт-контракт. Це призводить до появи численних «ланцюжків облікових записів», які описують стан і переходи окремих облікових записів, причому ці ланцюжки взаємно передають інформацію, утворюючи робочий ланцюжок через Shardchains.
Повідомлення: оскільки TON використовує функцію send_raw_message FunC для розробки своєї мови, повідомлення, що передаються вузлами TON, називаються «повідомленнями». Транзакція в TON складається з вхідного повідомлення, яке спочатку запускає її, і набору вихідних повідомлень, які надсилаються іншим контрактам;
Маршрутизація Hypercube: тривимірний структурований механізм обміну повідомленнями, який дозволяє повідомленням, створеним в одному блоці сегментованого ланцюга, швидко доставлятися та оброблятися до наступного блоку цільового сегментованого ланцюга.
Асинхронні виклики створюють проблеми синхронізації: у синхронних блокчейнах транзакції можуть включати кілька викликів смарт-контракту. В асинхронних системах користувачі не можуть миттєво отримувати відповіді від цільового смарт-контракту в одній транзакції. Ця затримка пов’язана з тим, що для обробки контрактних викликів може знадобитися кілька блоків, а на цей процес впливає відстань маршрутизації між блоками джерела та призначення.
Щоб досягти нескінченного шардингу, важливо забезпечити повне розпаралелювання повідомлень, що призводить до введення концепції логічного часу: у TON кожна транзакція виконується виключно на одному смарт-контракті та обмінюється інформацією між контрактами за допомогою повідомлень. Це вводить концепцію логічного часу в асинхронних ланцюжках, уможливлюючи синхронізацію повідомлень між ланцюжками. Кожне повідомлення має свій логічний час або час Лампорта (надалі lt). Цей час використовується для відстеження зв’язків між подіями та визначення того, які події валідатори мають обробити першими.
Логіка виконання гарантується суворим дотриманням порядку виконання повідомлення lt: повідомлення, надіслані з облікового запису, і транзакції, що відбуваються в обліковому записі, строго впорядковані, причому lt згенерованих транзакцій перевищує lt повідомлень. Крім того, lt повідомлень, надісланих у транзакції, строго перевищує lt транзакції, яка ініціює повідомлення. У разі кількох повідомлень ті з нижчим значенням lt обробляються раніше.
TON використовує паралельне виконання з швидкою маршрутизацією + повільною маршрутизацією:
Повільна маршрутизація: більш стабільний і традиційний метод обробки інформації між ланцюжками, де інформація упаковується в блок у вихідному ланцюжку, а потім передається з одного ланцюжка фрагментів до іншого через ретранслятор. Кілька проміжних ланцюжків фрагментів також можуть використовуватися для передачі. Усі ланцюжки сегментів утворюють граф «гіперкуб», і повідомлення поширюються по краях цього гіперкуба. Після перевірки валідаторами інформація упаковується в інший блок.
Перевага повільної маршрутизації полягає у вищій безпеці та децентралізації, оскільки вся інформація має пройти повний процес підтвердження блоку. Для мережі гіперкубів із ланцюгів фрагментів із масштабом N кількість переходів маршрутів = log16(N). Таким чином, лише 4 вузли маршрутизації необхідні для підтримки мільйона сегментів.
Швидка маршрутизація: у повільній маршрутизації повідомлення поширюються по краях гіперкуба. Щоб пришвидшити швидкість, Fast Routing дозволяє валідаторам цільового шардового ланцюжка заздалегідь обробити повідомлення, надати підтвердження Merkle та надіслати квитанцію, щоб знищити повідомлення, що передається.
Швидка маршрутизація є швидшою (вузли можуть знайти оптимальний шлях) і запобігає подвійній доставці. Однак він не може замінити повільну маршрутизацію, оскільки валідатори не караються за втрату квитанцій, що становить певний ризик для безпеки.
«Пакет комірок»: набір комірок, оновлених у спосіб, подібний до спрямованого ациклічного графа (DAG). Це передбачає представлення нового стану як іншого «мішка клітин» із власним коренем, а потім об’єднання нових і старих наборів клітин з одночасним видаленням старого кореня.
Вертикальний ремонт блоків: у ланцюжках сегментів TON кожен блок — це не просто один блок, а ланцюжок. Коли необхідно виправити блок в помилковому ланцюжку шардів, новий блок буде подано в «вертикальний ланцюг блоків» для заміни блоку.
POS-мережа складається з трьох ролей:
BFT (Візантійська відмовостійкість): TON після зважування варіантів вибирає BFT замість DPOS через вищий рівень довіри та швидкість, незважаючи на те, що DPOS є швидшим.
TON досягає високої швидкості та завершеності транзакцій завдяки динамічній мультишардовій архітектурі: кожен гаманець користувача в TON може мати власний ланцюжок, а теоретична основа для високого TPS включає паралельне обчислення сегментів, підтримку миттєвого міжшардового зв’язку та підтримку TVM асинхронне обчислення.
TON забезпечує більшу масштабованість завдяки механізму передачі інформації: у блокчейні TON виклики між смарт-контрактами є асинхронними, а не атомарними. Це означає, що коли один смарт-контракт викликає інший, виклик не виконується негайно, а обробляється в майбутньому блоці після завершення транзакції. Ця конструкція забезпечує більшу масштабованість, оскільки не вимагає завершення обробки всіх транзакцій в одному блоці.
Технічна дорожня карта TON постійно покращуватиме швидкість і переваги масштабованості TON:
TON має основну технологічну логіку, зосереджену навколо високошвидкісних додатків: TON походить від Telegram із транзакціями, які записуються безпосередньо в ланцюжку на основі повідомлень, підтримуючи одноранговий зв’язок.
Динамічна мультишардова архітектура TON полегшує масштабованість додатків: TON підвищує швидкість за допомогою паралельних запитів, покращує точність запитів за допомогою динамічного шардингу та підвищує розширюваність за допомогою структури клітинок.
TON продовжуватиме оптимізувати свою технічну структуру в майбутньому: завдяки паралельному розширенню, запровадженню інструментів сегментування ланцюгів і посиленню перевірок вузлів TON прагне зберегти свої переваги у швидкості та масштабованості.
Масштабованість блокчейну є важливою технічною проблемою та ключовим рушієм для розвитку технології блокчейну: у міру зростання додатків блокчейну та збільшення кількості користувачів існуючі мережі блокчейну часто стикаються з проблемами недостатньої пропускної здатності та тривалого часу підтвердження транзакцій. Традиційні конструкції блокчейнів обмежують їх здатність обробляти великомасштабні транзакції та вимоги користувачів, що призводить до перевантаження мережі, високих транзакційних витрат і неефективності.
Проблеми масштабованості блокчейну в першу чергу виникають через розподілену архітектуру та механізми консенсусу: механізм консенсусу та розподілена природа блокчейну вимагають, щоб кожен вузол у мережі перевіряв і записував усі транзакції, що обмежує пропускну здатність мережі. Крім того, безпека та децентралізовані функції блокчейну вимагають, щоб усі вузли підтримували повні копії блокчейну, що збільшує навантаження на зберігання та передачу.
Щоб вирішити проблему масштабованості блокчейну, дослідники запропонували різні рішення для масштабування, такі як шардинг, бічні ланцюжки та рішення рівня 2: ці підходи спрямовані на підвищення пропускної здатності та продуктивності мережі шляхом поділу мережі на менші сегменти, впровадження незалежних блокчейнів або створення додаткових структур. на головному ланцюзі. Однак ці рішення створюють нові технічні проблеми та проблеми безпеки, такі як міжшардовий зв’язок, міжшардові передачі активів і конструкція механізму консенсусу.
TON blockchain, що походить від Telegram, був задуманий з ідеєю обслуговування величезної бази користувачів: Telegram є однією з найпопулярніших соціальних платформ у світі, яка може похвалитися понад 800 мільйонами активних користувачів щомісяця та щодня передає мільярди повідомлень через програмне забезпечення. TON, як набіг Telegram на web3, був розроблений із самого початку, щоб обслуговувати мільярди користувачів, а не лише невелику базу користувачів.
Шардинг у TON є «знизу вгору». У той час як у звичайних схемах шардингу блокчейнів зазвичай використовується підхід «зверху вниз», спочатку встановлюючи єдиний блокчейн, а потім розбиваючи його на інтерактивні блокчейни для підвищення продуктивності, шардинг у TON використовує підхід «знизу вгору». Він організовує ці ланцюжки облікових записів у шардчейни, утворюючи Shardchain, де робочі ланцюжки існують виключно у віртуальній або логічній формі. TON забезпечує паралельну обробку транзакцій у кількох ланцюгах, що називають «блокчейном блокчейнів». Такий підхід ефективно підвищує продуктивність системи.
TON має динамічну архітектуру шардингу, яка складається з головного ланцюга, робочого ланцюга та сегментного ланцюга: головний ланцюг координує, тоді як фактична обробка транзакцій відбувається в різних робочих ланцюгах і сегментних ланцюгах. Крім того, сегментування TON є динамічним, коли кожен обліковий запис функціонує як шардчейн. Вони можуть адаптивно об’єднуватися у більші шардчейни на основі взаємодії між обліковими записами для задоволення потреб у динамічному розширенні.
Якщо шардинг досягає ліміту, кожен шардчейн зберігатиме лише один обліковий запис або смарт-контракт. Це призводить до появи численних «ланцюжків облікових записів», які описують стан і переходи окремих облікових записів, причому ці ланцюжки взаємно передають інформацію, утворюючи робочий ланцюжок через Shardchains.
Повідомлення: оскільки TON використовує функцію send_raw_message FunC для розробки своєї мови, повідомлення, що передаються вузлами TON, називаються «повідомленнями». Транзакція в TON складається з вхідного повідомлення, яке спочатку запускає її, і набору вихідних повідомлень, які надсилаються іншим контрактам;
Маршрутизація Hypercube: тривимірний структурований механізм обміну повідомленнями, який дозволяє повідомленням, створеним в одному блоці сегментованого ланцюга, швидко доставлятися та оброблятися до наступного блоку цільового сегментованого ланцюга.
Асинхронні виклики створюють проблеми синхронізації: у синхронних блокчейнах транзакції можуть включати кілька викликів смарт-контракту. В асинхронних системах користувачі не можуть миттєво отримувати відповіді від цільового смарт-контракту в одній транзакції. Ця затримка пов’язана з тим, що для обробки контрактних викликів може знадобитися кілька блоків, а на цей процес впливає відстань маршрутизації між блоками джерела та призначення.
Щоб досягти нескінченного шардингу, важливо забезпечити повне розпаралелювання повідомлень, що призводить до введення концепції логічного часу: у TON кожна транзакція виконується виключно на одному смарт-контракті та обмінюється інформацією між контрактами за допомогою повідомлень. Це вводить концепцію логічного часу в асинхронних ланцюжках, уможливлюючи синхронізацію повідомлень між ланцюжками. Кожне повідомлення має свій логічний час або час Лампорта (надалі lt). Цей час використовується для відстеження зв’язків між подіями та визначення того, які події валідатори мають обробити першими.
Логіка виконання гарантується суворим дотриманням порядку виконання повідомлення lt: повідомлення, надіслані з облікового запису, і транзакції, що відбуваються в обліковому записі, строго впорядковані, причому lt згенерованих транзакцій перевищує lt повідомлень. Крім того, lt повідомлень, надісланих у транзакції, строго перевищує lt транзакції, яка ініціює повідомлення. У разі кількох повідомлень ті з нижчим значенням lt обробляються раніше.
TON використовує паралельне виконання з швидкою маршрутизацією + повільною маршрутизацією:
Повільна маршрутизація: більш стабільний і традиційний метод обробки інформації між ланцюжками, де інформація упаковується в блок у вихідному ланцюжку, а потім передається з одного ланцюжка фрагментів до іншого через ретранслятор. Кілька проміжних ланцюжків фрагментів також можуть використовуватися для передачі. Усі ланцюжки сегментів утворюють граф «гіперкуб», і повідомлення поширюються по краях цього гіперкуба. Після перевірки валідаторами інформація упаковується в інший блок.
Перевага повільної маршрутизації полягає у вищій безпеці та децентралізації, оскільки вся інформація має пройти повний процес підтвердження блоку. Для мережі гіперкубів із ланцюгів фрагментів із масштабом N кількість переходів маршрутів = log16(N). Таким чином, лише 4 вузли маршрутизації необхідні для підтримки мільйона сегментів.
Швидка маршрутизація: у повільній маршрутизації повідомлення поширюються по краях гіперкуба. Щоб пришвидшити швидкість, Fast Routing дозволяє валідаторам цільового шардового ланцюжка заздалегідь обробити повідомлення, надати підтвердження Merkle та надіслати квитанцію, щоб знищити повідомлення, що передається.
Швидка маршрутизація є швидшою (вузли можуть знайти оптимальний шлях) і запобігає подвійній доставці. Однак він не може замінити повільну маршрутизацію, оскільки валідатори не караються за втрату квитанцій, що становить певний ризик для безпеки.
«Пакет комірок»: набір комірок, оновлених у спосіб, подібний до спрямованого ациклічного графа (DAG). Це передбачає представлення нового стану як іншого «мішка клітин» із власним коренем, а потім об’єднання нових і старих наборів клітин з одночасним видаленням старого кореня.
Вертикальний ремонт блоків: у ланцюжках сегментів TON кожен блок — це не просто один блок, а ланцюжок. Коли необхідно виправити блок в помилковому ланцюжку шардів, новий блок буде подано в «вертикальний ланцюг блоків» для заміни блоку.
POS-мережа складається з трьох ролей:
BFT (Візантійська відмовостійкість): TON після зважування варіантів вибирає BFT замість DPOS через вищий рівень довіри та швидкість, незважаючи на те, що DPOS є швидшим.
TON досягає високої швидкості та завершеності транзакцій завдяки динамічній мультишардовій архітектурі: кожен гаманець користувача в TON може мати власний ланцюжок, а теоретична основа для високого TPS включає паралельне обчислення сегментів, підтримку миттєвого міжшардового зв’язку та підтримку TVM асинхронне обчислення.
TON забезпечує більшу масштабованість завдяки механізму передачі інформації: у блокчейні TON виклики між смарт-контрактами є асинхронними, а не атомарними. Це означає, що коли один смарт-контракт викликає інший, виклик не виконується негайно, а обробляється в майбутньому блоці після завершення транзакції. Ця конструкція забезпечує більшу масштабованість, оскільки не вимагає завершення обробки всіх транзакцій в одному блоці.
Технічна дорожня карта TON постійно покращуватиме швидкість і переваги масштабованості TON: