IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2024/10/27
~AreEnn
~R4SAS
~orignal
~villain
&N00B
+Xeha
+relaybot
DUHOVKIN
Guest8889
HackerMan
Most2
Nausicaa
Ruskoye_911
Vort
`
acetone_
ananas
anon3
b3t4f4c3
fidoid_
guest
nemiga
not_bob_afk
plap
poriori
profetikla
soos
teeth
un
weko_
whothefuckami
orignal onon в стримах надо менять SEND_INTERVAL?
onon const int SSU2_MIN_HOLE_PUNCH_EXPIRATION = 45; // in seconds
onon const int SSU2_MAX_HOLE_PUNCH_EXPIRATION = 181; // in seconds
onon Это чем отличается от:
onon const int SSU2_KEEP_ALIVE_INTERVAL = 15; // in seconds
onon Для чего менять?
orignal чтобы уменьшить загрузку проца
orignal KEEP_ALIVE_INTERVAL это как часто шлем пустой пакет
orignal HOLE_PUNCH первое это в течении какого времени считаем дыру открытой чтобы соединяться напрмямую
orignal второе для пир теста
onon У тебя NAT unbinding уже через 15 сек будет
onon С вероятностью ~5%
onon А через 30 сек ~10%
orignal возможно
orignal цифры может надо поменять
orignal я примерно их поставил
onon Ну ты попробуй SEND_INTERVAL = 10000; сделать
onon Какое значение не будет нагружать проц?
orignal 10 не будет
orignal 10 + 2 variance пойдет?
onon Сейчас попробую потестировать
orignal 10 миллисекунд это пороговое значение
orignal так что с дырой то ставить?
onon Так а можно ли чаще?
onon Какие проблемы это может создать?
onon Я ж не в теме
onon Протокол наизусть не знаю
onon 90% натов держат дырку меньше минуты
onon Обычно от 15 до 30 ставят все
onon секунд
orignal хорошо 30 секунд min
orignal а max сколько?
orignal Vort сказал впдлоть до 3 минут может быть
onon 300
orignal многовато
orignal я и 180 считаю много
onon Через 3 минуты 100%
orignal ну вот 180 нормально значит
onon 150 сек - 80%
orignal ладно изменю min на 30
onon А чем тебе 300 не нравится?
orignal память засирать
onon А если не угадал - то пиртест будет неправильным, да?
onon Если ещё не закрылась дырка
orignal может быть ложно полотельным
orignal но у меня никогда этого не случалось даже со 120
onon Не, на 120 у тебя ещё вероятность была 50%
onon Многовато
onon 160 можно ставить там такая же вероятность 80%, что дырка закрыта уже
onon От 160 до 280 там на графике полочка
orignal то есть max 160 сделать,
onon Ну, вероятность останется ой же что и сейчас
onon Со 180
orignal зато вычишаться будет быстрее
orignal там же на мощных узлах несколько пир тестов в секунду идет
onon А ты можешь с SEND_INTERVAL = 10000; на локалхосте потестить? На больших RTT вроде нормально работает, а на малых я сейчас не могу проверить.
onon Я боюсь чтоб там не вылазил постоянно RTO
onon Тогда нужно костыль приделать в виде m_ResendTimer.expires_from_now (boost::posix_time::milliseconds(m_RTO+10));
orignal у меня нету локалхоста
onon Можно наверное на милисекундный таймер переделать если такая точность не нужна
orignal это без разницы
onon Прописать SEND_INTERVAL = 10; // in miliseconds
orignal важны сами значения
onon И потом в коде где RTO расчитывается добать ещё + SEND_INTERVAL
onon Добавить*
orignal понял
orignal там еще надо у тебя переделать деление с остатком на div
onon m_RTO = std::max (MIN_RTO, (int)(m_RTT * 1.3 + m_Jitter)) + SEND_INTERVAL;
onon Наверное так как-то
onon Ну ты там ещё хоте все float поменять
orignal а если у меня этот интервал переменный?
onon Максимальное значение тогда
orignal SEND_INTERVAL + SEND_INTERVAL_VARIANCE короче
onon Угу
orignal счас
onon Погоди, чего я туплю. Там же MIN_RTO = 20; // in milliseconds
onon Этого должно хватать
onon Ворт уже всё предусмотрел
orignal ну и что мне делать?
orignal не прибавлять?
onon Да, он и так меньше 20 не будет
onon Там проблема если RTO меньше чем SEND_INTERVAL
orignal счас уберу
onon Сори, плохо соображаю, головняки одолевают.
orignal смотри код
orignal чего я наменял
orignal пока что отойду
onon Мне кажется ты начал понимать как это работает
onon Я долго разбирался что такое std::lldiv и как оно работает, вроде всё правильно. Но ничего не понятно.
orignal просто деление с отстаком
orignal целая часть и остаток
onon Нужно такую же штуку как с истекающим лизом сделать для истекающего исходящего туннеля
onon Чтобы слать пакет заранее, перед переключением
orignal нужно да
orignal дальше я хочу этот таймер сделать общем для всего деситнейшина
onon Да, и ещё проверку добавить, если новый выбранный лиз - это тот же роутер, чтобы не сбрасывать окно
onon И с туннелями исходящими так же
orignal проверю
orignal это можно
orignal у меня вроде так раньше и было
onon Мне кажется там нужно для начала ResendTimer упразднить
onon Но это подумать нужно
onon Всё перекинуть на SendTimer
onon А потом уже делать общим
onon Ты же вроде говорил, что таймеры дескрипторы жрут
onon А на тыщу стримов по два таймера...
orignal ну они жрут нет всегда
orignal а только когда запущенфы
orignal потому я давно хочу их вынести в дестинешин
weko_ Можно ещё сделать что если стримов нет, то лиссет какое то время обновляется, предполагаю что ещё понадобится
weko_ Предполагая
weko_ Ну чтоб это настроить можно было конечно
orignal где обновляется?
weko_ На http прокси 15 минут а остальное дефолтно минуту
weko_ orignal: ну лиссет другой стороны
weko_ Запрашивать
orignal а если нету
weko_ orignal: ну если стрим один был то точно есть
orignal обычно лизсет другой стороны приходит вместе с пактами стримов
weko_ orignal: а отдельно нельзя?
orignal если его приходится перезадпрашивать то что то пошло не так
orignal клиентский ты никак не запросишь
weko_ Ну в моей идеи так задумано что мв запрашиваем в зависимости от настройки
orignal так не всякий лизсет можно запросить
orignal и парамтер для этого есть
weko_ orignal: так клиентский и не надо. Сервера же стримы не иницируют.
weko_ А вот с UDP хз, там отдельная история
orignal keepaliveinterval
weko_ orignal: ну это для туннеля
orignal если его поставить то с этим интревалом шлет пинги
weko_ А для прокси ?
orignal и запрашивает лизсеты попутно
weko_ Или SAM например
orignal парамтером можно
weko_ orignal: это то ясно
weko_ В проксях нету
orignal для прокси не помню
orignal ну можно добавить
weko_ например зашёл на сайт, читаю статью 15 минут, к лиссет сдох уже
orignal только у прокси что запрашивать то?
weko_ Снова его с фф грузить
weko_ orignal: лиссет сервера обновлять
orignal подумать не надо
orignal и как часто?
orignal точнее как долго
weko_ Ну как настроить
weko_ Я предлагаю дефолт минут 15 сделать
weko_ Для 4444
weko_ А остальные как настроят
weko_ Ну просто как идея на будущее понятно что не приоритетная задача
orignal угу
orignal ты лучше собери транк
orignal и посмотри улучишлась ли ситуация с потреблением проца
weko_ Если не забуду
Most2 06.<mittwerk> у вас тут вся переписка такая)
Most2 06.<mittwerk> https://xmpp.trus.i2p:5343/upload/ddfcb39b202e808b0f51a951a5bd5e4a256b5c46/OFCOmOzM5IdnUlgsAksHeRAGnAHhDV0E7SgVPyrP/c1d2eca4-8936-4f01-8ef5-07709d0c2494.png
mittwerk и тут в деве 30 чел в ирке, а в ру только я один
mittwerk как так?
orignal может ты в какой не тот ру зашел?
orignal потому что там полно народу
Vort хм. странный тикет на гитхабе один чел открыл
orignal какой?
Vort 2113
Vort выглядит как чья-то курсовая работа
orignal закрыть нахуй
Vort но при чём тут i2pd - не пойму
Vort я уж думал начать ему рассказывать про Yggdrasil
orignal я закрыл
Vort но сомневаюсь что есть смысл
orignal кстати че там с инродьюсерами?
orignal я ничего не поломал?
orignal думаю что тот тикет это высер ИИ
Vort возможно
Vort последение коммиты я не заметил, сейчас обновлю узел
orignal я перепосылку обратно включил для новых версий
orignal <orignal> я перепосылку обратно включил для новых версий
Vort удалось вычислить, с какой версии она была поломана?
Vort не припоминаю такого обсуждения просто
Vort то, что где-то поломано - помню, а когда было починено - не помню
orignal поломали перед релизом
orignal я тогда убрал перепосылку а счас вернул
orignal суть проблемы была что сессии сразу дохли
orignal с интродьюсером
Vort так убирал же потому, что узлы не отвечали
Vort то есть, какие-то отвечали, а какие-то нет
Vort по коммиту выходит, что с последним релизом должны отвечать нормально
Vort но когда именно ответ был поломан?
Vort то, когда была отключена перепосылка, это я помню
orignal в i2pd всегда
orignal в смысле никогда не отвечал до прошлого релиза
Vort окей
orignal а дед клянется что джава всегда отвечала и это чисто моя бага
orignal вот поверил ему на слово
orignal я у себя смотрел вроде нормально
Vort ну самое простое - это поставить опять логирование смены интродьюсеров
Vort и посмотреть, будут дохнуть или нет
Vort хех, я у себя это логирование даже не отключил ещё
Vort просто пересобрать надо
orignal у меня меняются по одниму минут через 20
orignal просто если проблема осталась то где то баг
orignal вот что интересно похоже атака закончилась
orignal и на молдаван тоже
onon А я у себя на стриме до илитной ирки увидел RTT = 0 и сижу думаю, как такое может быть.
onon Там же от такого может и деление на 0 вылезти
orignal думай
orignal так всегда надо проверять
Vort не повреждение ли памяти от тыкания F5? маловероятно, но я когда-то подобные странности видел
Vort по поводу интродьюсеров: вот такой результат за час аптайма: paste.i2pd.xyz/?2ec4e2a5ec5a2b90#EXQ3GQs5eV8nF7iDmYScLuBaoSGNchBh3Ki1kQmoHdNV
Vort явных глюков нету, и это хорошо
Vort а по поводу атаки - это надо ещё подождать. уже было снижение активности, но потом опять часто волны пошли
orignal да вроде ноормально
orignal c NTCP2 что то придется делать
orignal даже в меня отжирает половину ядра
onon Первое правило оптимизации - не оптимизируй...
onon Второе правило оптимизации - всё равно не оптимизируй...
onon Третье правило оптимизации - ну если очень нужно, и без этого никак... То можно попробовать.
orignal предлагаю вынести установку соединений в отдельный тред
onon Гоняют трафик всё равно.
orignal гоняют но у меня счас нигде в лимиты не упирается
orignal и E не становится