Safe Network новини 🇧🇬 9.2.2023

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

Поздравления за @josh за неговото Gooey приложение, приятелски GUI, който помага да се преодолее FCL (страхът от командния ред). С помощта на Gooey можете да ПОСТАВЯТЕ и ПОЛУЧАВАТЕ файлове до насита, без да се чувствате сякаш влизате в Матрицата. Инициативи като тази, приложението за наблюдение Vdash на @happybeing и скриптовете на @southside са това, което прави тази общност толкова страхотна. :clap: :clap: :clap:

Общ напредък

Първо някои добри новини относно легалната страна на нещата: Safe Network Фондацията е надлежно регистрирана в Женевския търговски регистър. @JimCollinson и @andrew.james работеха върху това в продължение на много месеци и това представлява важен крайъгълен камък. Изпратихме също така писмо до FINMA за отказ от действие. То излага правното становище, че SNT е полезен токен за закупуване на място за съхранение, а не финансов инструмент тип ценни книжа, което означава, че можем да се справим със стартирането. :tada:

Все още се задълбочаваме в идеята за стабилен набор - използване на Старейшините и най-старите Възрастни възли като основно хранилище на данни, докато възлите, които преминават през процеса на стареене на възела, получават по-малко важни вторични задачи за съхранение, които трябва да изпълнят. @davidrusu провежда експерименти върху това, докато @anselme работи върху възможните последици за сигурността.

Идеята за стабилен комплект носи няколко интересни промени:

  • Без DKG (тъй като най-старите възли незабавно стават Старейшини). Това премахва значително натоварване на мрежата при промяна на Старейшините.
  • Никакви възли в стабилен набор не се преместват, така че това е набор само за добавяне
  • Възлите в стабилен набор нямат възрастов маркер, тяхната възраст е относителното им местоположение в набора (въз основа на първото виждане)
  • Нови Старейшини подписват стари Старейшини в SAP (Section Authority Provider), това ни позволява да се възстановим от загубени консенсусни възли (обработка на масово оттегляне)
  • Вероятно можем да се справим с дяловете доста лесно с тези промени, въпреки че все още нямаме механизъм, който да позволи на разделените мрежи да се свързват отново.

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

@anselme продължава да преработва DBC. Вчера той замени bls_bulletproofs с upstream bulletproofs в sn_dbc . Това не само прави кода по-безопасен, тъй като използваме одитиран код, но и значително подобрява производителността!

2096 ms → 234 ms : Разделяне на повторното издаване на бенчмаркинг от 1 до 100
160s → 40s : изпълнение на всички тестове

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

@Chriso успя да получи екземпляри на EC2, които участват в тестова мрежа, конфигурирана за услуги за събиране на телеметрия и подготовка на данни, което е необходимо за разпределение на натоварването и други задачи. Той също така има тестова мрежа, работеща на AWS, която изпраща данни към OpenSearch. Скоро трябва да има входящ PR за това.

@Roland пише обяснение за телеметрията, защо е необходима и как я използваме, което трябва да можем да споделим скоро.

@qi_ma отстранява грешки при свързване на възли и преместване, а @bochacho работи по съобщенията и qp2p.

И @bzee премахва излишния код от процеса на присъединяване на възел.

Присъединяване на възел

Което ни води до възлите от домашни условия. Последната тестова мрежа беше първият път от известно време, когато активирахме присъединяване на възли от дома (или облачна виртуална машина), а също и първият „официален“ тест с по-малки възли (след като тестовата мрежа на общността видя успехи там). Като цяло бяхме доволни, че много хора успяха да се присъединят, въпреки че PUT привършиха доста бързо. Идентифицирахме какво се случва тук, като преместванията на възли бяха по-редки, отколкото очаквахме, първоначалната ни мрежа не беше достатъчно „остаряла“, за да осигури стабилна фаза на стартиране.

В идеалния случай искаме всеки да може да се присъедини от всяко място от всяко устройство, когато мрежата се нуждае от повече място за съхранение. Имаше някои проблеми с изчакване, когато възел поиска да се присъедини и след това загуби връзка със Старейшина, които в повечето случаи коригирахме сега (възлите ще получат отговор, че гласуването е в ход, за разлика от липса на отговор; възлите също сега просто продължават да опитват със същото име, за разлика от превключването на имена, което е обърквало процеса на присъединяване преди).

Някои грешки могат да възникнат, когато възел се присъедини точно след като членството (съставът на секцията) е споделено между Старейшините след DKG сесия. Когато това се случи, новият възел не се отчита и има разделен изглед. Това е нещо, което @qi_ma коригира сега.

Флаговете за safe node join на --skip-auto-port-forwarding и --public-addr вече са отхвърлени, тъй като премахнахме UPnP/IGD пренасочването на портове, което никога не е било надеждно. Засега това е изчистено, за да се опрости qp2p. Може да го върнем обратно на линията, но това не е приоритет в момента. Сега трябва да можете да се присъедините с safe node join --network-name, въпреки че NAT без съмнение ще бъде проблем за някои домашни възли.

Това е така, защото за да могат възлите в P2P мрежа да говорят, те трябва да могат да се намират един друг, но с NAT точният им адрес е скрит от рутера, който показва само публичния IP. NAT беше въведен като хак за заобикаляне на изчерпването на адресите на IPv4, но за съжаление се задържа. Различните рутери и интернет доставчици имат различни начини за прилагане на пренасочване на портове, които не всеки би желал да опита. IPv6 решава проблема, но за съжаление разпространението все още е доста ниско. Това е проблем за всички децентрализирани мрежи и ние продължаваме да търсим решения.

Планираме постепенно да премахнем командата safe node в полза на директното използване на двоичния файл sn_node, както @Chriso предлага в тази публикация. Командата node по същество е тънка обвивка около двоичния файл sn_node и не предлага много предимства пред простото използване на двоичния файл на възела директно. Освен това води до проблеми с поддръжката по отношение на поддържаните аргументи синхронизирани между двете. Възелът най-вероятно ще получи свой собствен инсталационен скрипт. Командата safe node run-baby-fleming ще бъде запазена, но вероятно ще стане safe run-baby-fleming.


Преводи:

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

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