~AreEnn
~R4SAS
~orignal
~villain
&N00B
+Xeha
+relaybot
DUHOVKIN
Guest18377
HackerMan
KabaOS
Most2
Nausicaa
Ruskoye_911
Trusishka
Vort
`
acetone_
anon3
b3t4f4c3
flumental
mittwerk
nemiga
not_bob_afk
plap
poriori_
profetikla
segfault
soos
teeth
tensor
un
weko_
whothefuckami
onon
Jrandom передавал всем привет.
orignal
привет
orignal
с возвращением
onon
Спасибо
orignal
тебя все благодарят за быстрый i2p
orignal
ну и с твоими скоростями повылазили баги в других местах
orignal
как шилья из мешка )
onon
Да, там похоже с шифрованием проблемы
onon
Поэтому зависают
orignal
ты видел сегодня разговор с дедом?
orignal
там много где и много чего починено
onon
Потому что я в лог выводил какие конкретно лизы выбирает из лизсета
onon
И он выбирал реальные
onon
И на клиенте в туннелях счетчик байт увеличивался
onon
При отправке пакета
orignal
если кратко он пытался слушать радио на 320 кбс
onon
Но в самом стриме количество принятых не росло
orignal
и через примерно 20 минут у него зависло
orignal
вот выясняем
onon
И он нашел причину?
onon
Там два варианта зависаний было, либо с сервера пакет уходит а на клиенте не получается, либо с сервера уходит, на клиенте получается, но ACK не доходит
orignal
нет вот мы сидим счас думаем
orignal
он видит что все тагсеты корректно переключаются с обеих сторон
orignal
а потом внезапно перестает работать
onon
Я пробовал ставить crypto.tagsToSend больше - не помогает
onon
Я пока лежал, на потолке увидел что ещё нужно исправить в стримах.
onon
В ближайшее время сделаю
orignal
только возьми последний код
onon
)
orignal
там серьезный баг обнаружился
onon
Да я уже посмотрел
orignal
tagToSend это вроде про эль-гамаль
orignal
а надо crypto.ratchet.inboundTags=500
orignal
например
onon
Вот как работает ваше шифрование - не знаю, поэтому и причину не нашёлю
orignal
там сложно
orignal
я это счас копаю
orignal
ты причины не ищи а записывай ошибки расшифроки
orignal
зато я теперь сделал что на уровне сессии определяется живая она или нет
onon
Да, ещё важная деталь. Когда вот так стрим зависает (а я намеренно сделал количество попыток 100), если в это время создать новый стрим к тому же дестинейшену, зависший отвисает.
orignal
а новый вообще создается или висит?
onon
Новый нормально создаётся
orignal
да это важная деталь
orignal
это значит ответ протолкнул какие то данные
onon
И это скорее всего не лизсет
onon
Хотя нужно ещё несколько раз перепроверить
onon
Может завтра этим займусь
orignal
не думаю что лизсет
orignal
там явно какие то ошибки с тагами
onon
Насчет дублирующихся пакетов, действительно сейчас при зависании сервер шлёт один и тот же пакет
onon
Один раз в 8 сек
onon
Может это как-то влияет
orignal
они придут с разными тагами
onon
Ну, значит тут всё норм
orignal
это именно дело в тагах и ключах
orignal
причем эта проблема с самого начала была
orignal
я поизучаю
onon
crypto.ratchet.inboundTags=500
onon
Это дефолт 500
onon
?
orignal
нет дефолт 350
onon
Ок
orignal
точне он плавающий
orignal
от 25 до 350
orignal
а тут сразу 500 всегда
orignal
это для UDP тонеля было
onon
2000 норм будет?
orignal
вполне
orignal
просто будет много памяти жрать
orignal
и проца
onon
Похоже, что это помогает. Скачал пока 540мб без зависания
orignal
ага таки таги
orignal
я примерно это и полагал
orignal
причем давно
orignal
давай радио пробую которое с дедом
orignal
320 кбс
orignal
если с 2000 тагов получать
onon
Ну прикинь, на 548мб завис
orignal
тут может и другое
orignal
причин там несколько
onon
А не отвис
orignal
никто никогда столько через i2p не гонял раньше
onon
С туннелями было
onon
Качает дальше
onon
Так на сервере нужно тоже тагов побольше ставить
orignal
зачем?
orignal
там же принимаются толькот ответы
orignal
которых сильно меньше должно быть
orignal
кстати последнее изменением в SSU2 имеет явно положительный эффект
onon
Что-то я выключаюсь. Продолжим завтра.
orignal
угу
Vort
пришлось выключить Yggdrasil пока кто-нибудь не починит CVE-2024-38063 в Windows 7
R4SAS
ни кто не починит
Vort
я уже нашёл официальные патчи для Windows Server 2008 R2. скорее всего, для win 7 тоже подойдут
onon
Много тагов помогает, но не на 100%.
onon
Я запустил одновременно два стрима к двум разным дестинейшнам, на одном увеличил количество тагов, на втором - стандартное.
onon
Так вот эти два стрима зависли одновременно.
onon
Предполагаю проблему на клиенте
orignal
на киенте что стояло?
orignal
по карйней мере одну проблему выясвили
onon
Пока второй раз запустил, пока качает оба стрима
onon
Уже почти 2 часа
onon
на клиенте crypto.ratchet.inboundTags=2000
orignal
ты понял в чем проблема то?
onon
Неочень
orignal
я у деда спросил
orignal
moreTags = ECIESX25519_MIN_NUM_GENERATED_TAGS + (index >> 2); // N/4
onon
многобуков
orignal
где ECIESX25519_MIN_NUM_GENERATED_TAGS = 24
orignal
а индике это номер тага а тагсете
orignal
ну смотри качае у нас на полную скорость
orignal
геренерит про 320 тагов
orignal
а тут просиходит переключение тагсета и генерит всего 24
orignal
которые раз и потерялись
orignal
и все встает
onon
Т.е. потеря 24 пакетов ломает стрим?
orignal
ломает все сримиы на этой сессии
orignal
потому что нове таги не сгенериились
orignal
и приходящие сообщения не расшифровать
onon
Есть идеи как лечить?
orignal
самое просто проверять если номер тагсета не 0 о сразу максиммум
orignal
но я спросшу деда сначала как он делает
onon
Надеюсь, поможет. Я тогда стримами займусь
orignal
в когда задано в конфиге
orignal
то вседа гереится это число
onon
Кстати, а есть возможность такое для встроенного прокси сделать?
onon
А то пришлость кастом запускать
orignal
могу добавить
orignal
прочто не было надобности
onon
Уже наверное много раз предлагали вынести прокси в tunnels.conf
onon
Кастом, вроде, заголовки не режет?
onon
Или чем он отличается?
orignal
ничем
orignal
просто прокси был раньше чем соответсующие тонели
onon
Тогда норм
onon
Он всё-таки завис. Через 2,5 часа, скачав 410мб. На клиент пакеты приходят, аки отправляются, но не доходят.
onon
Возможно с лизсетами что-то
orignal
возможно
orignal
дед делать то что я и думал
onon
Убираем всплески трафика от клиента
orignal
хедера нету?
onon
Ничего там не меняется
onon
Просто не нужно слать акк на каждый пришедший пакет
onon
Достаточно двух
orignal
а ты счас шлешь?
orignal
надо вообще то с интревалом
onon
Там сделано сейчас в ветке, что если потеряли пакет int ackTimeout = MIN_SEND_ACK_TIMEOUT*m_SavedPackets.size ();
onon
Т.е. через 2; // in milliseconds
onon
Понятно, что там инкремент на количество, но всё равно всплеск получается огромный
onon
Когда шлёшь 1МБ/с
onon
И случается потеря пакета
onon
Клиент начинает слать аки что дурной
onon
И забивает обратный туннелт
orignal
проверю
orignal
я закоммитил
Vort
R4SAS: нормально встаёт kb5041823 (вместе с kb5039339) на семёрку. пришлось разве что BypassESU-v9-AIO вкорячить
orignal
а параметр i2p.streaming.initialAckDelay использовать не хочешь?
orignal
поставь уже десятку и не мучайся))
onon
Там же вроде проверка if (ackTimeout > m_AckDelay) ackTimeout = m_AckDelay;
onon
Или про что ты
Vort
orignal: на десятке постоянно сюрпризы. а тут первый такой за 4-6 лет
orignal
onon вот про это
orignal
что мы должны отсылать не сразу а через ackdelay
onon
Ну так там был int ackTimeout = MIN_SEND_ACK_TIMEOUT*m_SavedPackets.size ();
onon
т.е. 2 мс
onon
А сейчас отошлёт один сразу, и ещё через 1/10 ртт
orignal
я уже не помню ))
orignal
ты смотрел дропы на SSU2 с последними изменениями?
onon
Нет еще
orignal
как твой коммит назвать?
onon
Хз, что-нибуть про всплески трафика
orignal
ладно напишу
onon
skmem:(r0,rb131072,t0,tb16384,f0,w0,o0,bl0,d14272)
onon
Всё равно дропов дохрена.
orignal
закоммитил
orignal
так без них никак
onon
Надо сравнивать до/после
orignal
я просто вижу счас все быстрее уходит
orignal
я не понял
orignal
зачем ты посылаешь QuickAck а потом Schedule?
orignal
типа для следующего что ли?
onon
Если мы потеряли пакет, шлём сразу, чтобы сервер среагировал
onon
И делаем задержку 1/10 rtt чтобы не слать на каждый полученный пакет
orignal
а сдедующие по туймеру
orignal
понял
onon
Сделал ограничение входящей скорости, по аналогии с исходящей
onon
Потестируйте
orignal
а что тестировать то?
onon
Как собирается, запускается, работает ли, ограничивает ли входящую скорость
onon
Я то проверил, но неплохо бы ещё кто
orignal
и каким образом это делается.
onon
Там нетривиальный код, может вылезет что
onon
Задерживает акки
onon
Конечно, держит скорость не точно, но примерно в этом районе
orignal
понял
orignal
закммочу чуть позже
orignal
закоммитил
`
А вот был бы гит-овер-ш2з...
`
говношаре не хватает этой киллерфичи, имхо
orignal
а в чем проблема? он же умеет черз прокси
onon
Можешь ещё 789 строку поменять на
onon
if (int(seqn) > lastReceivedSeqn) lastReceivedSeqn = seqn;
onon
А то сборщик ругается что инты разные. А я как-то пропустил.
orignal
счас
orignal
сделал
onon
thx