IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2024/02/13
~R4SAS
~acetone
~orignal
~villain
&N00B
+relaybot
DUHOVKIN_
Guest7184
Most2
Nausicaa
Nikat
Ruskoye_911
Vort
Xeha
anon3
b3t4f4c3
fidoid
karamba_i2p
nemiga
not_bob_afk
onon
plap
poriori
profetikla
qend
segfault
soos
teeth
tetrimer_
uis
un
unlike
user
vade
weko
whothefuckami
onon1 Там где-то баг. Он опять убрал из пула рабочую пару туннелей вместо failed.
orignal может она стала failed и сразу убрал
onon Я тут пытаюсь увеличить интервал между тестами туннеля, чтобы "дать ему второй шанс" но все бесполезно, потому что он всё равно через ~30 сек убирает их из пула. Как увеличить этот интервал. Такой переменной я не нашёл.
orignal такой и нету
orignal в TunnelPool.h смотри
orignal но там не в тестах причина
onon1 Ну, иногда это срабатывает. Если поставить TUNNEL_POOL_MANAGE_INTERVAL = 15, некоторые туннели удается вернуть с "того света"
orignal так попробуй вооще тесты отключить
orignal код в той функции закммоентируй
onon1 Что-то оно упало всё
onon1 Вроде ничего криминального не делал. Закомментировал функцию, которая дропает туннель, if test msg dropped locally
orignal не знаю
orignal мне некогда разбираться
onon1 Ну я пока экспериментирую, если будет что интересное, буду сообщать.
onon1 Ещё было бы неплохо как-нибудь реализовать приоритеты для пулов туннелей. Не редки ситуации, когда важный сервис висит без туннелей, а строитель туннелей достраивает пятый exploratory.
Vort onon1: так exploratory, небось, короче
Vort и кажется мне, что построения идут параллельно
orignal тоннели строятся независимо
onon1 А когда мы делаем запрос на построение туннеля, он тоже становится в очередь? Или как это работает?
orignal в какую очередь?
orignal там же у каждого линка своя очередь
onon1 Может у нас сетевой буфер какой-нибудь переполняется...
orignal малореятно
orignal естественно канал может забиваться
orignal так надо ставить транзит адекватный
onon У нас в строителе туннелей есть переменная const int HIGH_LATENCY_PER_HOP = 250; // in milliseconds. Может под нагрузкой тест задержки тормозится где-нибудь в обработке и не укладывается в лимит, поэтому не может построить туннель. Как вам такой вариант?
orignal это не про это
orignal это если превышает то такой тоннель не используется
orignal да что не может построить тоннель как мне резонно говорил дрозд надо если пытался строить через какой то пир то не строить несколько минут через него
orignal меня больше интересует вопрос внезапного слыхания
onon Насчет внезапного сдыхания есть кое-какие наблюдения. Я выпилил код, который дропает туннели сразу и поставил тест вне очереди. Так вот обычно поведение такое: failed туннели либо сразу через пару секунд возвращаются в established, либо так
onon ка не дропнутся.
onon Что примечательно, я не поймал ни одного случая, чтобы один из это пары вернулся в состояние established. Либо парой возвращаются, либо парой дропаются. Код для второго теста, я ч.х. не трогал.
orignal ладно разберемся
onon И ещё, фича, чтобы не дропать входящий туннель, если в него продолжают поступать данные - мастхэв. По моим наблюдениям, это довольно частая ситуация.
onon1 Важное замечание: с вышеописанными изменениями роутер довольно-таки неплохо работает с 5хоп туннелями. Строит их долго, но нагрузку держат. Большинство даже доживают до старости.
orignal огласите весь список изменений пжалуста
onon Удалил превентивный дроп туннеля при тесте, и поставил тест в начало очереди.
orignal что такое превинитвный дроп?
onon // if test msg dropped locally it's outbound tunnel to blame
onon msg->onDrop
orignal вот это странно
orignal у тебя что там очереди на линках огромные?
onon Ну я хз
orignal так посмотри на веб морже
onon Может из-за транзита
orignal там же пишел queue
orignal если она есть
onon page=tunnels здесь?
orignal transports
onon Ничего похожего там не вижу
orignal поиск по слову queue
onon NTCP2 ( 1312 ) SSU2 ( 1623 )
orignal нет там будет у каждого справа если есть
onon Нету нигде
onon [slow] Такое есть
orignal это понятно
orignal тогда знаешь что?
orignal вот где OnDrop ставится
orignal внутри него вместо удаления пили в лог что типа вызван Drop
orignal в твоей ситуации он вообще вызываться не должен
orignal посколько нет очередей
` Так у негож ффчера (или позаффчера) был queue дикий
` жвести с хвостиком
onon Это на домашней слабенькой машинке, на которой в это время собиралась новая весия.
onon И это другая очередь была
orignal тут надо разобраться почему вообще дропается
orignal я вижу вариаент что не может соединиться
onon1 Я тут на досуге придумал способ наиболее точно рассчитать задержку каждого туннеля в пуле. Понятно, что эти задержки несут чисто информативную функцию, но всё же можно было бы попробовать реализовать.
onon1 Сам я такое не осилю, но если кто возьмётся, могу описать алгоритм.
orignal я тут был оффлайн
orignal чего ты ниасилишь?
onon1 Я тут на досуге придумал способ наиболее точно рассчитать задержку каждого туннеля в пуле. Понятно, что эти задержки несут чисто информативную функцию, но всё же можно было бы попробовать реализовать.