#yggdrasil #rust #go
Автор yggdrasil-ng закинулся парой таблеток упарина (хотя сказа, что они ему толко для запаха, так-то дури и своей хватает) и выкатил улучшенную версию
iperf3 -i40 -t120 -c 200:7913:f8ca:f36b:3f10:1f3:e775:e4be
Connecting to host 200:7913:f8ca:f36b:3f10:1f3:e775:e4be, port 5201
[ 5] local 200:2bfb:d54e:222:4c66:f96b:5926:24c9 port 38178 connected to 200:7913:f8ca:f36b:3f10:1f3:e775:e4be port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.04 sec 9.82 GBytes 2.11 Gbits/sec 4180 384 KBytes
[ 5] 40.04-80.04 sec 9.83 GBytes 2.11 Gbits/sec 3952 511 KBytes
[ 5] 80.04-120.03 sec 9.37 GBytes 2.01 Gbits/sec 3715 511 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.03 sec 29.0 GBytes 2.08 Gbits/sec 11847 sender
[ 5] 0.00-120.03 sec 29.0 GBytes 2.08 Gbits/sec receiver
iperf Done.
Круто, что. Минус только один - такое происходит только на специально обученных процессорах (нужна поддержкаSSE2 или AVX2, т.е. виртуалки с x86-64-v2-AES - мало). А на процах без этого - ванильная версия всё равно быстрее. Но тем не менее - яркий пример. Если упарываться - то получается.
ufm
ufm@ufm.lol
npub1w7n7...x26t
#yggdrasil #rust #go
тут на результаты тестов fips возник вопрос - "как-же так, раст-же должен быть быстрее!" вот вам сравнение на одном и том-же физическом стенде:
Ванильный yggdrasil (go):
perf3 -i40 -t120 -c 204:84c1:1c59:e250:d04b:6175:6147:d4f8
Connecting to host 204:84c1:1c59:e250:d04b:6175:6147:d4f8, port 5201
[ 5] local 202:7d3c:5d59:1b52:48e2:5810:37bf:c310 port 49482 connected to 204:84c1:1c59:e250:d04b:6175:6147:d4f8 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.01 sec 4.68 GBytes 1.01 Gbits/sec 4747 192 KBytes
[ 5] 40.01-80.00 sec 4.71 GBytes 1.01 Gbits/sec 4682 192 KBytes
[ 5] 80.00-120.00 sec 4.71 GBytes 1.01 Gbits/sec 4701 128 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.00 sec 14.1 GBytes 1.01 Gbits/sec 14130 sender
[ 5] 0.00-120.01 sec 14.1 GBytes 1.01 Gbits/sec receiver
iperf Done.
yggdrasil-ng (rust):
iperf3 -i40 -t120 -c 204:a8fa:cb09:778f:882d:679a:50b1:7650
Connecting to host 204:a8fa:cb09:778f:882d:679a:50b1:7650, port 5201
[ 5] local 202:fa1d:2f1c:e479:a6a4:dd97:38ca:9875 port 60596 connected to 204:a8fa:cb09:778f:882d:679a:50b1:7650 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.04 sec 3.83 GBytes 822 Mbits/sec 1367 511 KBytes
[ 5] 40.04-80.04 sec 3.84 GBytes 826 Mbits/sec 1293 448 KBytes
[ 5] 80.04-120.04 sec 3.73 GBytes 802 Mbits/sec 1374 384 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.04 sec 11.4 GBytes 817 Mbits/sec 4034 sender
[ 5] 0.00-120.04 sec 11.4 GBytes 816 Mbits/sec receiver
iperf Done.
Тест на "голом железе":
iperf3 -i40 -t120 -c fe80::be24:11ff:fe52:a148%ens19
Connecting to host fe80::be24:11ff:fe52:a148%ens19, port 5201
[ 5] local fe80::be24:11ff:fefc:1cd7 port 54668 connected to fe80::be24:11ff:fe52:a148 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.04 sec 19.6 GBytes 4.21 Gbits/sec 10031 789 KBytes
[ 5] 40.04-80.04 sec 22.4 GBytes 4.81 Gbits/sec 7561 810 KBytes
[ 5] 80.04-120.04 sec 18.4 GBytes 3.95 Gbits/sec 9643 47.1 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.04 sec 60.4 GBytes 4.32 Gbits/sec 27235 sender
[ 5] 0.00-120.04 sec 60.4 GBytes 4.32 Gbits/sec receiver
iperf Done.
Во всех случаях yggdrasil-ы запускались в режиме autoconf. Собирались последние доступные на гитхабе версии последними версиями компиляторов.
Повторюсь, у гошечки - очень хороший компилятор, очень вылизанные библиотеки и сам ванильный yggdrasil - очень хорошо оптимизирован. Я не думаю, что @npub138c4...v2ra не в состоянии дотянуть свою версию по скорости до ванильного yggdrasil (другой вопрос - готов-ли он настолько упороться в эту проблему). Но расчитывать на то, что если rust использовать "не думая", можно получить какие-то особые приемущества в скорости - однозначно нет.
#fips
Ну на чём-же тестировать? Ну конечно на Радио!
http://npub1jyd9wngeajasmgdvglp59c9pg7nd6z4qc6wn8t7tvh2f6m9z4e4qe28wzv.fips/
И, кстати, о погоде.
Вот сегодня, тащемто, обещают +34
завтра - +33
И так до конца недели.
А вот в воскресенье - +17
Ну и дождики, конечно. И как сын метеорологов я вангую - это будут не просто "дождики". Это будет пц и нас или сдует или смоет.
Вынесу из комментов:
ну по поводу фасада здания - это мне и в моркве знакомо было. Переехала, как-то, наша контора в неепически пафосное место. У которого было три минуса - один явный и два скрытых до поры.
Явный: здание было расположено напротив морга. Т.е. особо эзотерически одарённые коллеги, начитавшись про приметы "встретить похоронную процессию", как только не извращались, что-бы не встретить.
Два неявных:
1. Помещение, в котором сидели брокеры, было в виде большого аквариума. Со стеклянным потолком. Очень высоким (в два этажа).
2.кондиционеры было запрещено ставить, что-бы не портить фасад здания. Общего кондиционирования, естественно - мным.
Короче, когда наступило лето - начался пц. Ладно брокеры - их не жалко. У меня в серверной каморке, с открытой дверью и шарашущим на полную вентилятором, стояли стабильные "за 50".
В какой-то момент я пришёл к начальству и сказал - "мне пофигу как вы там будете уговаривать брокеров работать в таких условиях, но сервера вы точно будете уговаривать работать сами".
Я в душе не знаю, пришли ли наши директора тогда к хозяевам здания с паяльником, утюгом или с пачкой денег, но нам разрешили поставить один внешний блок, на балконе, так что-бы его было не видно. Как матерились установщики, которым пришлось тянуть трассу от внешнего блока до внутреннего метров 20 - не передать. Сколько стоил тот кондей, который позволил так над собой издеваться - я не знаю. Но в результате - я был единственным, кто ходил в офис в костюме. И народ ходил ко мне всё лето "остужаться".
P.S. Отдельная веселуха была с женской частью коллектива. Медаль в конкурсе "что-бы еще с себя снять, что-бы не нарушать дресскод и не шокировать иногда приходящих клиентов" переходил от одной к другой. Я думаю мужская часть весь этот пиздец терпела только из-за этого. :)

#fips
iperf3 -t120 -i40 -c fd2e:6917:241c:6d7f:5151:34ec:b3:4626
Connecting to host fd2e:6917:241c:6d7f:5151:34ec:b3:4626, port 5201
[ 5] local fdb8:9bfc:e678:4068:d7ea:91cd:2d0d:5b97 port 44350 connected to fd2e:6917:241c:6d7f:5151:34ec:b3:4626 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.04 sec 3.61 GBytes 776 Mbits/sec 698 263 KBytes
[ 5] 40.04-80.03 sec 3.60 GBytes 773 Mbits/sec 613 141 KBytes
[ 5] 80.03-120.04 sec 3.46 GBytes 743 Mbits/sec 896 305 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.04 sec 10.7 GBytes 764 Mbits/sec 2207 sender
[ 5] 0.00-120.04 sec 10.7 GBytes 764 Mbits/sec receiver
iperf Done.
#mycelium
iperf3 -t120 -i40 -c 43a:558:9cd2:adb6:e259:fed2:9bf5:95a8
Connecting to host 43a:558:9cd2:adb6:e259:fed2:9bf5:95a8, port 5201
[ 5] local 41e:42ca:c76c:d3e2:9103:af85:c0e3:dada port 33398 connected to 43a:558:9cd2:adb6:e259:fed2:9bf5:95a8 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.03 sec 4.90 GBytes 1.05 Gbits/sec 0 4.15 MBytes
[ 5] 40.03-80.02 sec 4.88 GBytes 1.05 Gbits/sec 0 4.15 MBytes
[ 5] 80.02-120.03 sec 4.94 GBytes 1.06 Gbits/sec 0 4.15 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.03 sec 14.7 GBytes 1.05 Gbits/sec 0 sender
[ 5] 0.00-120.05 sec 14.7 GBytes 1.05 Gbits/sec receiver
iperf Done.
Т.е. fips пока, конечно, посасывает...
p.s. впрочем, по сравнению с обычным, гошечным (а и mycelium и fips написаны на модном-молодёжном rust) yggdrasil оба выглядят не оч.
iperf3 -t120 -i40 -c 22d:d3dd:3afe:9599:3da9:d89f:6ae:8401
Connecting to host 22d:d3dd:3afe:9599:3da9:d89f:6ae:8401, port 5201
[ 5] local 200:dada:feda:f443:52ec:d2e4:b853:60bc port 46374 connected to 22d:d3dd:3afe:9599:3da9:d89f:6ae:8401 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-40.00 sec 7.93 GBytes 1.70 Gbits/sec 3406 634 KBytes
[ 5] 40.00-80.00 sec 7.88 GBytes 1.69 Gbits/sec 3250 244 KBytes
[ 5] 80.00-120.00 sec 8.07 GBytes 1.73 Gbits/sec 3273 390 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-120.00 sec 23.9 GBytes 1.71 Gbits/sec 9929 sender
[ 5] 0.00-120.00 sec 23.9 GBytes 1.71 Gbits/sec receiver
iperf Done.
#fips #mesh #психи
Аааа, бля. Я разобрался почему у меня одна нода другую пинговать не могла-не могла, а потом - как смогла.
Ноды, напоминаю, идентифицируются публичным ключом от ностра.
Есть алгоритм, по которому из этого ключа генерируется ipv6 адрес.
Способа получить из ipv6 адреса обратно npub ключ - НЕТ (что, как-бы, не удивительно, 256 бит в 128 не запихиваются).
Т.е. на свежезапущенной ноде нельзя сразу пинговать другую ноду по ipv6 адресу (ну за исключением случая, когда между ними есть пиринг, кстати именно по этому нормально пинговался пир с обеих нод). Для того, что-бы нода пинговалась - надо хотя-бы раз отрезолвить доменно имя npubxxxxx.fips через встроенный DNS, тогда в недрах внутреннего кеша осядет соответствие ipv6 и ключа.
Замысловатое решение, хотя понятное. Но с другой стороны - yggdrasil/mycelium/cjdns ведь вывернулись. Правда за счёт устойчивости к подбору.
#fips #mesh
офигеть, оно даже работает.
root@ufm:~# ping @npub19y52...550x.fips
PING @npub19y52...550x.fips (fd2e:6917:241c:6d7f:5151:34ec:b3:4626) 56 data bytes
64 bytes from fd2e:6917:241c:6d7f:5151:34ec:b3:4626: icmp_seq=1 ttl=64 time=71.1 ms
64 bytes from fd2e:6917:241c:6d7f:5151:34ec:b3:4626: icmp_seq=2 ttl=64 time=70.9 ms
64 bytes from fd2e:6917:241c:6d7f:5151:34ec:b3:4626: icmp_seq=3 ttl=64 time=70.7 ms
64 bytes from fd2e:6917:241c:6d7f:5151:34ec:b3:4626: icmp_seq=4 ttl=64 time=71.5 ms
64 bytes from fd2e:6917:241c:6d7f:5151:34ec:b3:4626: icmp_seq=5 ttl=64 time=71.0 ms
^C
--- @npub19y52...550x.fips ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 70.714/71.045/71.475/0.250 ms
root@ufm:~#
Правда как-то не сразу. Долгое время публичный пир обе ноды пинговали, а друг-друга - не могли. Потом рассосалось. Что это было - непонятно. Я пока делаю скидку на то, что вот прям несколько часов назад вышло обновление до 0.4.0
Кстати, сразу виден плюс от использования #nostr в качестве хранителя информации об узлах. Стоило вывесить наружу свой узел с белыми адресами - набежали какие-то клиенты. Не надо вести никаких списков публичных пиров.
Пошёл дальше ковыряться. :)

Пойду палочкой потыкаю. Интересно-же. :)
View article →
Помнится я писал, что #nostr - очень удобная, распределённая (и в результате - отказоустойчивая) хранилка данных. Например для каких-то конфигов. Или как база для какого-то софта. И удивлялся, почему никто не пользуется.
Не. Оказалось - я ни разу не самый умный. Пользуются. Как пример - #FIPS. Это еще одна, очередная, бурно развивающаяся #mesh сеть. И каждая нода (как я понимаю - по желанию) хранит инфу про себя в ностре.
nak req -k 37195 wss://relay.damus.io wss://nos.lol wss://offchain.pub wss://temp.iris.to|wc -l
connecting to relay.damus.io... ok.
connecting to nos.lol... ok.
connecting to offchain.pub... ok.
connecting to temp.iris.to... ok.
619
И 619 узлов для буквально недавно радившеся сети, я-бы сказал - не мало. Кто все эти люди?
p.s. а еще они не стали заморачиваться, и работают прям с ключами nostr. Т.е. например @npub15kx9...delq - это прямо адрес ноды. И из него получается ip адрес. Прикольно...
Я не то чтобы за этим слежу, но краем уха слышал, что рыночек собирается порешать вопрос с #ИИ . Причём ровно по тем причинам, что я недавно озвучивал - клиенты, внезапно, обнаружили, что кожанные обходятся дешевле а инвесторы начали задавать неудобные вопросы в стиле "гдебаблонах"? Вобщем ждёт нас вариация пузыря доткомов.
Впрочем, как и с доткомами, будет и постепенное возвращение ИИ. Только уже без хайпа, с бОльшим пониманием как этим пользоваться и как на этом зарабатывать. Но поколбасить рыночек перед этим должно...
#ТеорияЗаговора
Довольно часто отмечается такой факт, что чем дальше развивается #ИИ - там хуже он работает. Особенно в режиме "отдаём все рычаги, ставим задачу - дальше пусть он сам". На самом деле всё очень просто: до разработчиков ИИ, которые водят своими руками а не чужими, начало доходить - если ничего не поменять, то и их скоро на мороз выкинут. Поэтому мы наблюдаем чётко спланированный саботаж - принудительное постепенное ухудшение способностей ИИ с каждой новой версией.
а я думаю, чего мордорских пропагандонов прям на части рвёт из-за роликов прилётов в капотню, которые москали повыкладывали в интернет...
--------
Одна из украинских компаний-производителей беспилотников представила на международной оборонной выставке Eurosatory 2026 в Париже рекламный ролик, привлёкший большое внимание. Для демонстрации возможностей своей продукции компания использовала кадры атак беспилотников на Москву. Ролик вызвал широкий интерес у участников и гостей выставки. Многие назвали его одной из самых эффектных демонстраций возможностей продукции в реальных условиях.
unbeschulbar - какое хорошее слово, полностью описывающее граждан роисси
---------
Слово «unbeschulbar» (немецкий) переводится как «необучаемый». В педагогике и психологии этот термин описывает ребенка, который в силу тяжелых поведенческих или эмоциональных расстройств (например, агрессия, тяжелые формы СДВГ, расстройства аутистического спектра) не может успешно обучаться в условиях обычной школы.