pavel-pimenov / flylinkdc-r5xx

flylinkdc-r5xx
GNU General Public License v2.0
55 stars 26 forks source link

[zzxy] Обход позорных заморочек стандартов NMDC/ADC #1490

Open pavel-pimenov opened 9 years ago

pavel-pimenov commented 9 years ago

From zzzxzzzy...@gmail.com on April 07, 2014 22:32:41

Я вообще в шоке c NMDC/ADC: "Usually DC clients don't send more than 10 $SR messages for one $Search message to avoid flooding. DC++ will send a maximum of 5 search results to a passive user and 10 results to an active user". ( http://wiki.gusari.org/index.php?title=$SR )

Так что возник вопрос: 1) насколько реально это число увеличить(так как часто выводится вовсе не те файлы что нужны и что ещё хуже - будучи в разных директория запросто можно не увидеть существующих даже закачав на всякий случай файл-список) 2) в т.ч.и для PASV: если увеличит и ему(давно пора) - не будет ли резать число ответов [вообще все] сервак хаба

Original issue: http://code.google.com/p/flylinkdc/issues/detail?id=1453

pavel-pimenov commented 9 years ago

From Pavel.Pimenov@gmail.com on April 07, 2014 17:36:21

Вообще это число жестко зашито в код клиентов. 10 для активного 5 для пассивного.

Я для отладки увеличивал это значения т.к. у меня в виртуально машине всего один юзер - не прикольно когда он вертает всего 10 файлов по маске mp3 :)

Константы зашиты тут void ClientManager::on(NmdcSearch, Client* aClient, const string& aSeeker, Search::SizeModes aSizeMode, int64_t aSize, Search::TypeModes aFileType, const string& aString, bool isPassive) noexcept {

ClientManagerListener::SearchReply l_re = ClientManagerListener::SEARCH_MISS; // !SMT!-S
SearchResultList l;

ifdef PPA_USE_HIGH_LOAD_FOR_SEARCH_ENGINE_IN_DEBUG

ShareManager::getInstance()->search(l, aString, aSizeMode, aSize, aFileType, aClient, isPassive ? 100 : 200);

else

ShareManager::getInstance()->search(l, aString, aSizeMode, aSize, aFileType, aClient, isPassive ? 5 : 10);

endif

Их увеличение в продуктиве повысит нагрузку на клиентов в активе а также на хабы в пассиве. в последнем случае админ вас возможно забанит :)

Status: Accepted

pavel-pimenov commented 9 years ago

From zzzxzzzy...@gmail.com on April 08, 2014 00:01:53

Это всё очевидно... Вот поэтому я и интересуюсь собственно возможностями этого и готовностью двигать аж прогресс, в DC++ сети. Ведь идея архиполезная, иначе весь DC++ ищется слишком уж куцым. Я бы предложил повысить хотя бы с 10 до 100, а с 5 до тоже 100(уверен владельцы хаб современных ПК с серваками потянут и не такие значения, по крайней мере на оптимизированных серверах иначе же не ясно с чего пользователи с PASV должны быть ущемляемы в сравнении с активными, ведь такие раздавать то могут не меньше - если не больше). PS: Также можно добавить настройку и затем расширить команду например $Search.

pavel-pimenov commented 9 years ago

From zzzxzzzy...@gmail.com on April 08, 2014 00:27:06

ЗЫЖ С другой стороны конечно - как тогда заставить учится пробрасывать порты?... С третьей, бывает необходимость именно в PASV - и тут весьма неприятны эти ограничения... ЗЫЖ Может какойнибудь другой "бублик" придумать, для принуждения к "самосовершенствованию" с firewall'ами, например ограничить кол-во слотов закачки или ещё чего, всётаки поисковые результаты это совсем уж критичный пользователю момент.

pavel-pimenov commented 9 years ago

From zzzxzzzy...@gmail.com on April 08, 2014 03:55:06

ЗЫЖ а, на то что хабам тяжелее будет можно ответить - уж если Вы такие нищеброды как я - удаляйте свои 90+% фиктивных пользователей и сразу полегчает...