Веб-версияОткрыть в Telegram

Ветка🔥 Что же случилось с сетью? Повысим прозрачность.

8 сообщений · –
T
🔥 Что же случилось с сетью? Повысим прозрачность. Недавно выживших в TON взбудоражило замедление сети, отложенное после этого обновление валидаторов, и отсутствие комментариев на этот счет. TON Core отказалось отвечать на наш вопрос, поэтому представим свою версию событий — и надеемся, что нас поправят там, где мы ошиблись. Совсем недавно в кулуарных девелоперских чатах TON обсуждали этот пост. Судя по всему, с отправкой сообщений было всё нормально, но, видимо, разработчиков из TON Core насторожило другое. В блокчейне есть механизм защиты от спама сообщениями — так называемый "action fine". Если в результате обработки action фазы после нескольких успешно обработанных сообщений пришёл один неуспешный action, с аккаунта должен взиматься fine за ячейки (cells) исходящих сообщений, которые были обработаны, ведь валидатор совершил некоторые действия — должен получить награду. Однако баг был в том, что эта комиссия взималась только за последний, неуспешный action. Получается, что валидатор совершал бесплатную работу — это и могло привести к DoS всей сети. Было исправлено в коммите 5f454cd. Кроме фикса TON Core создали токен PUB5 (его метадата была опубликована работником TON Core), и зачем то с его помощью заспамили сеть сообщениями, из-за чего блокчейн и замедлился. Судя по всему, это не связано с конкретным багом. Интересно, что у токена нет холдеров, потому что все jetton wallet-ы стали nonexist, то есть фактически были удалены из блокчейна (mode 128 + 32, ничего криминального). Также был обнаружен коммит, вводящий ограничение на общий размер всех сообщений в action фазе (раньше было ограничение только на каждое конкретное сообщение). Кроме того, в последнем обновлении валидаторов был введён запрет на публикацию library cells в мастерчейн. По словам Анатолия Тонкоровича Макосова, это было сделано, чтобы "снизить количество векторов атак". Действительно ли была возможна атака, или это просто снижение рисков, нашей редакции неизвестно. Повысили. @TheOpenDevBlog
26 · 3.2K ·
  1. G
    Кто нибудь тоже заметил, что testnet tonviewer (aka tonapi) был outdated на протяжении долгого времени и только недавно ожил? Жутко бесит, что этот чел по кд отваливается. Другие варианты не очень: tonscan не так подробно показывает транзы (точнее скрывает некоторые), дёргать руками toncenter api не очень удобно А ещё жиза, когда отправляешь тяжёлую транзу, она появляется в мемпуле и потом исчезает. А новую не отправить, потому что транза застряла и надо ждать освобождения seqno Ну вы поняли? Транза не выкидывает ошибку, но занимает текущий seqno Ещё был еденичный случай, что метод tonapi /{wallet}/get_seqno возвращал старое значение и через кош нельзя было отправить транзу Круто, что основной блокчейн обозреватель это собственность tonkeeper team Нет возможности отключить кэширование метаданных/фото у предметов, неизвестные фильтры для отметки nft items как scam (рандомно)
      1. D
        Уже давно пошло по пабликам из за открытого гитхаба
        1. D
          Дань, я твой фанат, каждый день смотрю комиты
  2. F
    С отправкой сообщений как раз было не все нормально. После инцидента TON Core смержили PR #2470 с W7 фиксом. Дорогие проверки внешних сообщений вынесли из одного обработчика, распараллелили и ограничили очередь при перегрузке. Этот фикс прямо направлен на схлопывание приема сообщений под высокой нагрузкой. Action fine относится к другому уровню. Это экономический штраф внутри action phase, а не механизм защиты очередей валидатора. Коммит 5f454cd исправляет его расчет в Global Version 15, а 9c073 ограничивает общий объем исходящих сообщений одной транзакции. Оба изменения снижают стоимость потенциальной атаки для сети, но не исправляют формирование блока кандидата, дедлайны или зависание переполненных очередей. Поэтому PUB5 объясняет, откуда взялась нагрузка, но не почему сеть перестала ее переваривать. Моя нода в этот момент фиксировала почти пустые блоки при растущей очереди и задержках сообщений до десятков минут. Это совпадает с описанием Bug 4b в бенчмарке разработчика TON Core DanShaders, который позднее перенесли в тестнет ветку через PR #2489. Полный репорт я опубликовал еще вечером 13 июля, в день инцидента https://telegra.ph/TON-mainnet-shard-processing-incident-empty-blocks-over-pending-work-07-13

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем