lololololo: ну так это я описала придуманный на ходу способ как эвристически и с высокой долей вероятности спрогнозировать это значение не имея никаких дополнительных механизмов, не запуская при этом трейсроут и т. д. :) Как конкретно это в торренте реализовано не разбиралась, но это работает, что хорошо видно и по списку и сидов и пиров на толстых раздачах, а ещё, косвенно, по тому как клиент набирает скорость после старта закачки.
lololololo: P.S. под Linux имеется ввиду именно ядро, т.е. туда же относится и Android и всё оборудование в виде роутеров с торрент клиентами и прочие коробки по типу NAS.
lololololo: гораздо точнее чем просто степень двойки, а на практике, даже я могу легко назвать значения по умолчанию для Windows (TTL=128) и Linux (TTl=64), что заведомо покрывает практически все клиенты. При этом есть ещё и спецификации IP протокола www.iana.org/assignments/ip-parameters/ip-paramete... :
IP TIME TO LIVE PARAMETER Note The current recommended default time to live (TTL) for the Internet
Protocol (IP) is 64 [RFC791], [RFC1122].
Ну а дальше просто статистика, из которой следует, что 95-97% пользователей не меняют настройки по умолчанию даже у прикладного софта, которым пользуются каждый день, не говоря уже о столь глубинных настройках системы.
Michle: благо сайт открыт, да и настройки, впрочем как и версию, я, очевидно, буду в последствии обновлять. Собственно ссылки выше битые поскольку содержат устаревшие настройки, которые, как оказалось, вызывают проблемы на определённых конфигурациях. В общем пока в торренте просто не вижу особого смысла. Хотя в будущем не исключаю, что может и выложу всё это поделие на какой либо трекер, дабы не потерялось.
Michle: последовательная загрузка файлов есть и в мюторрент, у меня она даже включена ( bt.sequential_download и bt.sequential_files ), а так - да, самая натуральная запрещённая магия :)
Странно, что проявляется проблема 1 ибо это очень похоже на перегрузку дискового кэша или же она проявляется во время когда нет закачек?
Beholder: ... а столь сложные комбинации данных (скорее всего это dev/random) наверняка использованы для надёжной идентификации копипасты без цитирования оригинала (т.е. не перепоста, а копирования) и перезаливов фото по ссылке.
asdz: да не за что. Единственное замечание тут, что если ставите кому-то другому или неопытному, то лучше ставьте 36044 ибо она действительно несколько месяцев у меня гонялась и проблем, кроме нескольких косметических, не вылезло. В то же время про 38397 я не могу честно сказать «поставить и забыть» что там вылезти может точно никто не знает. Она явно лучше более новых версий, которые точно криво работают с сетью, но что в ней конкретно изменено не известно ибо в логе между ней и 36044 есть жуткая надпись «backend... fixes». Жуткая она поскольку после второй такой надписи клиент даже при остановленных передачах и выключенном DHT при старте стал надёжно класть сеть и оборудование созданием за пару секунд нескольких десятков тысяч соединений (это на моих конфигурациях так с 641 и 1129 раздачами).
С# для других целей обычно используют нежели C++, это действительно очень хороший и проработанный язык. Но вот D я бы не стал рассматривать серьёзно как основной язык, он очень хилый в плане поддержки, а с учётом наличия сейчас C++14 и уже допиливаемого C++17, ну и конечно Boost многие склоняются к мысли, что D вообще не взлетит ибо непонятно зачем он нужен, особенно при том, что его STL не работает с выключенным сборщиком мусора. Ну а про Go вы вообще зря в контексте сравнения C++ это уже совсем из другой области.
dorbaefff: прошу прощения. Нашла проблемы с последними билдами, они напрочь кладут сеть при старте даже при остановленных раздачах и выключенном DHT, у себя не заметила лишь потому, что в качестве роутера работает очень мощная машина.
Перевыложила две адекватные и полностью работающие версии с более оптимизированными и универсальными настройками, это 3.4.2.36044 ( rghost.ru/6cm8v77pJ ) и 3.4.2.38397 ( rghost.ru/7YQ5GMpmQ ).
Обновила сборку до версии 3.4.2.38913 ибо в ней поправили некоторые ошибки во внутренней логике программы. В сборке так же были обновлены настройки на более оптимальные и универсальные (тестирование проводилось на 12 физических машинах с Windows 7, Windows 8.1 и абсолютно разными конфигурациями), изменено следующее:
Безопасность:
Добавила довольно большой список портов в исключение
bt.no_connect_to_services_list=1,20,21,22,23,24,25,43,53,69,80,81,82,110,123,135,137,138,139,143,161,162,179,194,264,411,412,443,445,465,587,593,989,990,992,993,995,1027,1080,1194,1200,1293,1721,1723,3128,3724,3389,3544,3899,4080,4081,4090,4500,4899,5004,5005,5800,5900,5938,6665,6666,6667,6668,6669,6679,6697,8008,8080,8090,8118,8123,9030,9050,9051,9150
тем самым запретив подключение к портам, используемым по умолчанию для большинства распространённых интернет сервисов. Это обезопасит клиент от участия в неконтролируемой со стороны пользователя DDoS атаке на сторонние ресурсы.
Оптимизация работы с кэшем клиента:
принудительно включила:
cache.writeimm=1
cache.writeout=1
это опции "Записывать нетронутые блоки каждые 2 минуты" и "Записывать завершённые части немедленно", без их включения клиент на больших раздачах и при большом количестве низкоскоростных пиров клиент иногда начинал задерживать мелкие куски частей в кэше записи, что приводило к ошибке "Disk cache overload" при нулевой нагрузке на физический диск.
Помимо этого так же принудительно включена:
diskio.no_zero=1
Повышение удобства использования и надёжность работы:
принудительно включила:
gui.auto_restart=1
и добавила:
gui.bundles_tab_user_clicked=1
Производительность и побочные нагрузки:
Уменьшила максимальное количество полуоткрытых соединений до 50
net.max_halfopen=50
Прошу обратить внимание, что в настройках для снижения потребления ресурсов клиентом включена опция :
net.disable_incoming_ipv6=1
Если вы редкий счастливый обладатель интернета с реальным IPv6 то стоит отключить эту опцию.
Помимо этого максимальный размер кэша клиента установлен вручную на 512 МБ:
cache.override=1
cache.override_size=512
Если ваша машина имеет достаточно малый объём памяти (1 ГБ или менее) то советую отключить эту опцию. Эта опция есть в виде галки в настройках "Вместо автовыбора использовать указанный размер кэша (МБ)"
Дѣаволъ: добавлять в торрент файлы ссылку на обновление это всё же к администрации трекеров. Ну а до тех пор можно делать почти тоже самое через RSS подписки, ну т. е. именно автообновление работает, а вот удалять старые данные приходится вручную. Для трекеров, которые не поддерживают RSS из коробки, есть чудесный сервис litr.cc .
Riez: таксь, после повторного тестирования обнаружила одну проблему с теми настройками, которые залила на хостинг, там в дополнительных опциях надо выставить diskio.all_writes_sync = false, т.е. вернуть значение этой опции в значение по умолчанию иначе на больших закачках клиент начинает очень сильно жрать процессор. Помимо этого я удостоверилась в нормальной работе 3.4.2.38429 и пересела на более новую версию 3.4.2.38758 в момент когда она вышла, в которой исправлены мелкие косметические недочёты. В принципе пока всё хорошо.
Вот ссылка на версию 3.4.2.38758 с исправленной опцией diskio.all_writes_sync = false и увеличенным значением максимального объёма кэша с 256 до 512 МБ rghost.ru/8VzwqxXZn