IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2024/12/20
~AreEnn
~R4SAS
~acetone
~orignal
~villain
@onon
&N00B
+relaybot
DUHOVKIN_
Guest7184
Most2
Nausicaa
Nikat
Ruskoye_911
Vort
Xeha
`
ananas
anon3
b3t4f4c3
fidoid
karamba_i2p
nemiga
not_bob_afk
plap
poriori
profetikla
qend
segfault
soos
teeth
tetrimer_
uis
un
unlike
user
weko
whothefuckami
orignal if (IsEstablished ())
orignal SendQueue ();
orignal if (m_SendQueue.size () > 0) // windows is full
orignal Resend (i2p::util::GetMillisecondsSinceEpoch ());
orignal ой блять какая дичь тут
Vort до этого я скидывал сортировку по exclusive. вот inclusive:
orignal и что сие означает?
Vort exclusive - потребление CPU чисто кодом непосредственно функции
Vort inclusive - вместе со всеми дочерними вызовами
orignal вот это SendQueue опять здесь
Vort но приём там жрёт в 3 раза больше отправки
Vort HandleReceivedPacketsQueue
Vort хотя не уверен
orignal подозерваю он тоже SendQueue вызывает
Vort там Ack`ов дофига...
orignal ну вот Ack пришел место в окне освободилось снова send
Vort на Ack`и раза в 3 больше времени тратится, чем на Queue
orignal в смысле на отправку или обработку?
Vort идут две цепочки вызовов: SendQuickAck -> SendData и SendQueue -> SendData
Vort и вот SendData вызываемый Ack`ами жрёт больше
Vort ну это не точно
Vort надо тщательнее данные собирать
Vort это я приблизительно говорю. нагрузка на сеть ведь колеблется
orignal это странно
orignal но счас гляну
orignal CreateAckBlock
orignal там если промежутки между сообщениями
orignal тормозить будет
orignal потому что построение диапазонов
orignal короче маораль все это истории
orignal нада давать приоритет NTCP2 ))
Vort тестовая система нужна. которой можно задать набор тестов, указать коммит, подождать пока тестовая сеть запустится, отработает, измерится, завершится и получить результаты измерений
Vort с реальной сетью такую проблему сложно загнать в угол, нужны контроллируемые условия
Vort чтобы можно было менять характер нагрузки и делать регрессионное тестирование
un orignal, < un> у exit stormycloud если его в socks out proxy поставить как порт понять ?
orignal un у него нет порта
orignal только дефолтный http
orignal Vort но разница между SSU2 и NTCP2 сейчас заметна везде
un я хочу сделать outproxy через stormy с локальным socks интерйейсом
orignal у него нет сокса
un а тоесть это фича server-side ?
orignal естественно
orignal если для аутпрокси
un а http proxy поддерживает CONNECT ?
orignal есественно
un а ну заебись
orignal https без проблем пойдет
un да мне тупо tcp туннель надо
un спасибо
orignal почему товраищ майор не выдает сокс аутпрокси я не знаю
un java там умеет?
un у них там врядли i2pd
orignal а че не уметь то? это же просто серверные тоннели
un а у httpput proxy нет порта
un я думал что какая тореализация такаяя. не смотрел код.
orignal какой то все равно есть
orignal просто он дефолтный
un 80?
orignal да какой угодно
orignal прокси ведь это внешнее приложение
orignal на какой повесишь его на таком реально и будет
orignal у товарища майора явно не технические соображения
Vort "<~orignal> Vort но разница между SSU2 и NTCP2 сейчас заметна везде" да я понимаю, что, скорее всего, различия в активности сети так сильно влиять не могут. но одно дело догадки, а другое - доказательства. то же самое по поводу коммита. или чётко по
Vort сле него изменение началось или "наверное"
un тогде почему это есть socksproxy.outproxyport в этого нет httpproxy.outproxyport ?
Vort ну и конечно же важен вопрос "NTCP2 стал быстрее или SSU2 медленнее", желательно с какими-то хоть доказательствами
orignal un потому что в sockporxy аутрпрокси локальный
orignal а в http удаленный
un а типа httpotproxy может выполнять сам процесс i2pd?
un типа делать коннект наружу?
un или java процесс?
orignal Vort очевидно что это нагружзка на NTCP2 сталаа меньше
orignal потому что этот тред стал потреблять меньше чем Tunnels
Vort нагрузка стала меньше или код стал эффективнее?
orignal явно и-за изменений в коде
Vort в таком случае пропорции SSU2 / NTCP2 тредов не являются "возникшей проблемой", которую надо как-то решать
Vort то есть, я так понимаю, SSU2 остался на том же уровне, а NTCP2 стал быстрее. ну и ладно
orignal на есть вариант что просто данные теряются
orignal транзитные
orignal но вряд ли
un <~orignal> un потому что в sockporxy аутрпрокси локальны <<< кароче я не понял
orignal но если все правильно то встает вопрос как чинить SSU2
un в http прокси как?
orignal в http прокси ты указываешь i2p адрес
orignal а в socks прокси ты указываешь или 127.0.0.1 или локальный сокет
Vort "<~orignal> на есть вариант что просто данные теряются" _стали_ теряться из-за оптимизации NTCP2 что ли? я не уловил мысли
orignal ну например я в коде OBEP что то накосячил
orignal но тогда бы и на SSU2 влияло
un в http прокси ты указываешь i2p адрес <<< куда тогда идет пакет на стороне сервера?
Vort так делай мини-тестовую сеть. как я ~полгода назад. два-три локальных узла и гнать стримы через них пока в CPU не упрётся. если какие-то новые потери появились - будет чётко видно
orignal un туда куда перенаправить пакет в клирнет
orignal а с ним уже будет разбираться та сторона
Vort заодно так и производительность измерить можно. тупо по скоростям в iperf3
Vort только в узлах транспорты соответствующие поставить
un какой процесс перенаправляет пакет в clear? a) в случае с i2pd b) в случае с java
orignal un это не зависит от того джава или i2pd
orignal у меня 3proxy стоит там
orignal у майора вроде бы tinyproxy
un тоесть тип = socks в туннелях - это просто как тип client? только поддерживате на локальной стороне socks протокол?
un или даже не поддерживает ?
orignal нет конечно
orignal clinet всегда ведет только на один i2p адрес
orignal а socks идет на любой адрес который указан при становки соединения
un если для socks out proxy надо указывать порт и на другой стороне ставить socks прокси, то чем это отличается от client тунеля простого
un чем отличается irc от сервер типов?
un этоэто по сути одно и тоже
un поставил на хосте процесс который слушает на порту 1234
un сделал туннель тип server generic
un на клиента поднял type client казал dest i2pd addr и dest port который равен на сервере port
un и все
orignal * [un] is connecting from *@34rpxrqkcdl7buha2ufnjjwprgtxp6rwcohiiwfgjd2jwmlqafua.b32.i2p 127.223.34.251
orignal вот этим
un гоняй там хоть irc хоть socks
orignal то есть тоннель IRC делает b32 адреса
un а в irc получается как irс прокси или типа
orignal а иначе да можно просто server
un type = irc поддерживает irc протокол?
orignal технически как webirc
un если будет type = server то все ip - loopback
un ну понятно
orignal он его парсит и заменяет запросы
un в http также? remote ip в заголовке проставляется?
orignal там добавляются поля
orignal и некоторые лишние вырезаются в ответе
un а когда в http proxy указывает outproxy то как то на другую сторону говориться что надо коннект наружу
orignal если адрес не .i2p значит наружу
un если адрес не i2p то i2pd шел запрос на outproxy
un он как-то говорит что это out коннекция?
un другой стороне
un или там просто сервис такой поднял что все коннеции на него есть на out?
orignal так если та сторона прокси она сама знает что ей пришло
un [alt-socks]
un type = socks
un address = 127.0.0.1
un port = 14447
un keys = socks-keys.dat.
un outproxy = i2pb32
un outproxyport = номер на той стороне?
un так ?
orignal нет
orignal для скос только локальный
orignal outproxy=127.0.0.1
orignal outproxyport=9050
orignal грубо говоря
un а-а-а-а я понял
orignal либо outproxy=/tmp/outproxy.socks
orignal outproxyport=0
orignal если хочет сокс пперенапрвить на удаленный то поднимай клиентский тоннель до него
un нельзя у себя поднять socks интерфейс чтобы к нему по сокс идет приложение и в clear уходит на outproxy
orignal и в конфиге указывай его
orignal можно конечно
orignal я только что написал
un на outproxу на другой стороне я имел ввиду
orignal так я тебе и сказал как
orignal поднимаешь клиенский тоннель до него
orignal и в outrorixyport указываешь порт клиенского тоннеля
orignal но там на другом конеце должен быть сокс прокси
orignal с майором так не выйдет
orignal только если поднять какой то локальный прокси преобразующий http в socks
un а httpproxy типе тунеля в tunnels.conf можно указать outproxy = ?
orignal он точно такой же
orignal Vort я вот что думаю по поводу SSU2
orignal там когда акк надо генерить с дипаонами то надо него сохранять с предыдщего
orignal и если пришел новый пакет по порядку то менять только ackTrough
orignal а диапазоны копировать из сихраненного
Vort не настолько разбираюсь в подробностях, чтобы что-то по этому поводу прокомментировать. разве что считаю важным не терять контроль над ситуацией - чтобы код не развалился от оптимизаций
Vort с такой скоростью, как сейчас юзеры обновляются, внесенная ошибка может болтаться годами
orignal так ты сам на эту функци. указал
orignal что она жрет много
tetrimer orignal: Последние изменения - всё так же приводят к корке на FreeBsd. Но теперь в gdb почему то сплошные знаки вопроса. Собирал с дебагом.
orignal значит уже другое падение
orignal там их морре
tetrimer_ Единственно разумное в последней корке:
tetrimer_ Program terminated with signal SIGSEGV, Segmentation fault.
tetrimer_ Address not mapped to object.
tetrimer_ #0 0x0000000822027498 in ?? () from /usr/local/lib/libcrypto.so.12
tetrimer_ И gdb вылетает после команды bt
orignal ну это ни о чем не говорит
Vort orignal: так а ты то пробовал эти креши ловить или чинил "по логике"?
Vort (ловить = воспроизводить у себя)
orignal у меня они не случаются
Vort без graceful выключать пробовал?
orignal если бы случались я бы починил
orignal не пробовал а зачем?
Vort обычно достаточно минуту подержать флудфил онлайн и сделать быстрый выход
Vort чтобы креши починить. так быстрее воспроизводится
Vort на основном узле такое делать, конечно, не стоит
orignal какой то vdBr засирает тразиты
Vort отдельный узел можно поднять и дёргать его туда-сюда пока все креши не вытрусишь )
orignal можно но не приоритетно
Vort у меня 4 штуки vdBr всего
orignal а у меня вот штук 20 причем тразитны тоннелей всего где то 50
Vort без воспроизводения крешей там сложно понять, в чём дело. довольно путаная процедура завершения работы узла
orignal знаб