Safe Network новини 🇧🇬 8.9.2022

Настройвате тестова мрежа, качвате някои данни, нещо се обърва. Какво се случи и къде точно се случи? Проследяването къде възникват проблеми в мрежите е трудно предизвикателство, особено в децентрализираните мрежи, където всеки възел е отделен. Тази седмица @davidrusu ни превежда през statemaps, инструмент за диагностика, който ни показва точно в кое състояние е всеки възел във всеки един момент. Това е поглед с орлово око върху мрежата, който несъмнено ще направи премахването на грешки много по-лесно.

Благодарим както винаги на всички, които експериментират с локални и тестови мрежи на общността. С основание сме убедени, че някои от проблемите с качването на големи файлове са в API слоя и сега разглеждаме това.

Общ напредък

@bochaco продължава да усъвършенства процеса на докладване на грешки, за да предостави по-смислени съобщения на клиентите.

@anselme разглежда AE и клюките и как едното може да бъде резервно решение за другото в случай на неуспешна комуникация.

Що се отнася до документацията, @jimcollinson финализира основната бяла книга, изисквана от швейцарския орган FINMA. Това е по-скоро общ преглед, отколкото задълбочено техническо гмуркане, така че вероятно няма нищо ново за повечето хора тук, но въпреки това отмятането на тази задача ни подготвя за стартирането.

@Chriso и @bochaco подреждат какво се случва, когато DBC се изпрати за повторно издаване, и при проверката на този процес беше установено, че някои изразходвани доказателства са подписани с ключ на секция, за който Секцията, обработваща заявката за повторно издаване, не е запозната.

Карти на състоянието (Statemaps)

В силно конкурентна система може да бъде много трудно да се види какво се случва. Възлите се движат през състояния невероятно бързо и опитът да се съпоставят съответващите съобщения между възлите може да ви изглежда, като да се опитвате да възстановите нарязан документ.

Statemaps ни позволяват да пресъздадем частична картина на случилото се в мрежата в конкретен момент. Те са много полезен инструмент за разбиране къде възлите прекарват времето си.

Инструментирахме sn_node кодовата база да регистрира, когато влезе в състояние и отново, когато напусне състояние. След това можем да обработим тези регистрационни файлове, за да генерираме карта на състоянието като тази по-долу:

Всеки ред съответства на възел с време по оста x. Правоъгълниците на всеки ред съответстват на състоянието, в което възелът е бил през този интервал от време.

На всяко състояние е присвоен цвят:

Като анализирате тази карта на състоянието, можете да започнете да разбирате какво се е случило тук, нека обозначим различните фази и да ги обсъдим.

  1. Виждаме, че картата започва с 6 Старейшини, гласуващи за членство (цвят сьомга)
  2. След приключване на членството те незабавно стартират DKG (оранжево). Това трябва да е намек, че ще има смяна на Старейшините.
  3. Междувременно виждаме, че 7-ми възел идва онлайн. Той получава актуализация от АнтиЕнтропията (светло синьо), което го уведомява, че е приет в мрежата, и след това се присъединява към DKG (оранжево). Това би означавало, че този нов възел, който току-що се присъедини, е повишен в статут на Старейшина и че това е причината оригиналните 6 Старейшини да започнат DKG.
  4. Сега виждаме, че DKG е спрял, това е така, защото DKG изисква пълно участие, за да завърши, съществуващите 6 възела са допринесли със своите части, но се нуждаят от 7-ия възел, който да вложи своя дял, за да завърши ключа на Секцията.
  5. В крайна сметка 7-мият възел наваксва и DKG завършва. Следващата стъпка е старите 6 Старейшини да потвърдят, че новият ключ на секция е валиден и да предадат (тъмносиньо) управление на новите 7 Старейшини.
  6. След като предаването завърши, виждаме изблик на анти-ентропия, който се изпраща, вероятно с новия SAP, което показва, че новите Старейшини са поели контрола над Секцията.

Разработихме малко инструменти около тези карти на състоянието, Safe Network README има инструкции за генериране на ваши собствени.

За да улесним разработката, ние също конфигурирахме CI за автоматично генериране и качване на карти на състоянието, както и за всеки PR.

Надяваме се, че намирате тези карти за просветляващи, честито разследване!


Преводи:

:uk: English :ru: Russian ; :de: German ; :es: Spanish ; :fr: French

  • Подробна информация може да намерите както винаги във форума на международната общност: Safe Network Forum
  • Ако имате въпроси може да ги зададете във Facebook групата на българската Safe общност: Redirecting...
  • Ако искате да следите последните новини заповядайте във Facebook страницата на Safe Network България: Safe Network България