Forum Index > BitTorrent > Большой гайд по сидингу на гигабите (сидбокс)

#0 by megaseeder (Uploader) (0 mesaje) at 2015-04-19 01:57:29 (183 săptămâni în urmă) - [Link]Top
Большой гайд по сидингу на гигабите (сидбокс)



Гигабит для торрентов это быстро, даже слишком быстро. Если вы думаете, что апгрейд интернета со 100 мегабит до гигабита позволит Вам моментально начать раздавать на скоростях в 10 раз быстрее, то Вы очень сильно заблуждаетесь. Это руководство расскажет о некоторых проблемах с которыми мне пришлось столкнуться и успешно решить.

Полное описание

Все описанное ниже актуально только для:
  • 1. Гигабитный канал, для 100 мегабит тут все сильно избыточно.
        [У меня StarBox 1000 от Starnet в Кишиневе, в обычном многоэтажном доме, а также сервер у LeaseWeb (Нидерланды). Все скриншоты и настройки, что указаны ниже - это все домашний сервер + StarBox 1000, не сочтите за рекламу, но MTC гигабит проводить отказался.]
  • 2. Торрент клиент rTorrent-PS (Rakshasa).
  • 3. Этот гайд не для начинающих, ниже описаны только основные/большие проблемы и пути их решения, но без информации по установке простейшего софта.
  • 4. Linux ОС Ubuntu (rTorrent доступен только для Linux систем)
        [У меня система Ubuntu 14.04 LTS с ядром 3.18.9]
        Не стоит бояться Linux'а. Когда я начинал разбираться с rTorrent'ом, то впервые нормально пощупал Linux и могу точно сказать, ничего страшного в этом нет, но придется изучить немало нового и потратить время на знакомство с системой после Windows/MacOS.
  • 5. Раздача от закачки разительно отличается, качать можно на высоких скоростях (50-60 мегабайт в секунду) даже на среднем компьютере, абсолютно другое дело на таких же скоростях раздавать торренты, где очень мало последовательных операций чтения, не говоря уже о полном насыщении канала в ~110 мегабайт в секунду, и поверьте Starnet это позволяет.
Перед собой в первую очередь поставил задачу раздавать как можно больше на максимальной скорости, чтобы канал был утилизирован на 100% (для чего еще нужен гигабит?). А т.к. много лет подряд использовал TMD только как личер, практически ничего не раздавая, появился стимул отдать должное. При этом, сидинг не должен отнимать свыше 3-5 минут рабочего времени в день, т.е. все должно быть максимально автоматизировано.

Есть 2 варианта быстрой раздачи:
  • 1 - краткосрочная, т.е. сидить 2-3 торрента на максимальной скорости.
  • 2 - получить максимальный трафик за сутки.

  • 1я задача решается довольно просто: торрент раздается с SSD или даже RAM-диска без каких-либо серьезных настроек клиента и упрется довольно быстро в гигабитный канал, но раздавать 2-3 торрента быстро и постоянно невозможно. Обычно популярный торрент большинство личеров быстро выкачивают за 30 мин - час и начинают взаимный обмен данными, деля канал между собой, поэтому буквально через час-два-три скорость раздачи падает кардинально и больше никогда не будет высокой, т.к. на популярном торренте вы уже не единственный сидер, пусть и самый быстрый, канал личера в любом случае будет резаться между всеми. К примеру, крайне популярный торрент (GTA 5 PC), размером в 55 гигов, раздавался быстро буквально 12 часов, после чего свалился к средней скорости в 6-10 мег/сек.


  • 2я задача куда сложнее и требует комплексного подхода, т.к. она включает в себя и первую задачу - раздачу текущих и быстрых торрентов на максимальной скорости, а также поддерживание высокой скорости весь день. Сейчас мне удается заливать от 4 до 7 ТБ в день на нашем, далеко не самом крупном трекере, используя 2 сервера. А по средней скорости раздачи быть быстрее, чем весь (суммарно) ТОП 20 самых быстрых сидеров.
***

Коммерческие сидбоксы

Даже при использовании домашнего сервера, я параллельно опробовал несколько топовых сидбоксов и могу сказать одно точно: дешевле и эффективнее заказать выделенный сервер с гигабитным каналом и большим трафиком (у LeaseWeb есть пакеты гигабит/100 ТБ за вполне адекватную цену). Коммерческий сидбокс либо реально быстрый и дорогой, но трафик ограничен (30 ТБ уходит буквально за 2 недели), либо адекватный по цене, но скорость оставляет желать лучшего. Либо быстрый, дорогой и без ограничения по трафику, но размер диска слишком мелкий (SSD сидбоксы), что не годится для получения максимального трафика за сутки.
Также стоит учитывать, что трафик считаемый сидбоксом выше, чем учитывает TMD (разница примерно 10-20%).

***

Оборудование

После получения быстрого интернет подключения - оборудование потребует серьезных вложений.

В самую первую очередь нужна максимально быстрая дисковая подсистема.

1 - необходим хотя бы 1 SSD диск, желательно на текущий момент брать серверный вроде Samsung 845DC Pro/Evo, цены на них сейчас вполне вменяемые, что позволит писать кучу данных без боязни убить SSD.
[У меня Samsung 845DC Pro 400GB + Crucial M500 480GB].

2 - понадобятся как минимум 2-3 HDD.
[В моем случае это 3 шт. Seagate NAS HDD ST4000VN000 4TB].
Не самые лучшие HDD для сидинга, максимальная скорость при большом кол-ве торрентов около 20 мег/сек на диск, зато емкие, надежные и недорогие.

3 - необходима хорошая сетевая карта.
[У меня на сидбоксе Winyao WYI350-T4 RJ45 (это полный аналог Intel I350-T4), имея на руках обе сетевые карты от Winyao и Intel могу точно сказать реально разницы в них нет абсолютно, чип одинаковый, собраны обе хорошо, только разница в цене 3 раза).

Сетевая карта очень важна, т.к. она значительно разгружает процессор (имеет возможность распределять прерывания по нескольким ядрам процессора, подсчитывать контрольную сумму прямо на сетевой карте [TCP offloading] и тд и тп) и позволяет максимально загрузить интернет канал.

4 - желательно выделить отдельный компьютер под сидбокс.
[У меня это MB Supermicro MBD-X10SLQ-O, CPU Intel i7-4790, 24GB RAM, 2 SSD, 3 HDD, Intel I350-T4/Winyao]

5 - крайне желательно отказаться от старнетовского дефолтного роутера Huawei HG8245H, его можно самостоятельно перевести в режим моста (bridge), т.е. Huawei станет простым преобразователем оптика->витая пара, при этом использовать свой роутер. Дело в том, что HG8245H даже по спецификациям NATтит в лучшем случае на скоростях 900 мегабит и это без проброса портов, Wi-Fi, и тд. А в режиме моста способен вполне переварить full duplex gigabit.

Но даже используя альтернативу придется сильно напрячься с выбором, т.к. почти никакие потребительские (и довольно дорогие) роутеры вроде ASUS RT-AC68U не могут прокачать гигабит на WAN порту. (обзор - всего лишь 750 мегабит и это практический максимум).

[В моем случае роутинг реализован на обычном компьютере с MikroTik RouterOS x86 + сетевая карта Intel I350-T4.
Чтобы не выделять для этого полноценный отдельный компьютер - используется виртуальная система под VMware ESXi.
Тут есть тоже важный момент: ESXi и виртуальные ОС очень криво (медленно) работают с потребительскими виртуализированными сетевыми картами, т.е. необходимо найти карту, которая позволяет ESXi напрямую пробросить сетевуху в нашу виртуальную машину с RouterOS. Это позволяет технология SR-IOV на Intel I350-T2/T4 (крайне рекомендую)].



Настройки сервера
*****************

Настройки драйвера сетевой карты Intel I350-T4:

Настройки прописываются в файле: /etc/modprobe.d/local.conf

/etc/modprobe.d/local.conf
options igb IntMode=2,2,2,2 RSS=8,8,8,8 InterruptThrottleRate=3000,3000,3000,3000 EEE=0 MDD=0
ÎnchideЗакрыть

Данные настройки создают максимально возможное количество потоков для равномерного распределения
прерываний между ядрами процессора. Жесткую настройку по троттлингу прерываний (нам не важен
чуть возросший пинг, главное, как можно большая пропускная способность + разгрузка процессора).
Отключены энергосберегающий режим и режим определения завирусованного драйвера, что актуально только
для виртуальной машины.

Вот как должны выглядеть прерывания при правильных настройках (стоит обратить внимание на 8 очередей eth0-TxRx):

[email protected]:/etc/modprobe.d# cat /proc/interrupts
[email protected]:/etc/modprobe.d# cat /proc/interrupts
          CPU0      CPU1      CPU2      CPU3      CPU4      CPU5      CPU6      CPU7
  0:        19          0          0          0          0          0          0          0  IR-IO-APIC-edge      timer
  1:          3          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
  7:          9          0          0          0          0          0          0          0  IR-IO-APIC-edge
  8:          1          0          0          0          0          0          0          0  IR-IO-APIC-edge      rtc0
  9:          0          0          0          0          0          0          0          0  IR-IO-APIC-fasteoi  acpi
12:          4          0          0          0          0          0          0          0  IR-IO-APIC-edge      i8042
16:        30          0          0          0          0          0          0          0  IR-IO-APIC  16-fasteoi  ehci_hcd:usb3
23:        34          0          0          0          0          0          0          0  IR-IO-APIC  23-fasteoi  ehci_hcd:usb4
24:          0          0          0          0          0          0          0          0  DMAR_MSI-edge      dmar0
25:          0          0          0          0          0          0          0          0  DMAR_MSI-edge      dmar1
29:    326262    900455    1121248    411879          0          0          0          0  IR-PCI-MSI-edge      xhci_hcd
30:  35138436  20268512  30311567  14087896          0          0          0          0  IR-PCI-MSI-edge      0000:00:1f.2
31:          1          0          0          0          0          0          0          0  IR-PCI-MSI-edge      eth0
32:    1552078  175838864    2797844  110643130  29070563  89823727  167692496  97043907  IR-PCI-MSI-edge      eth0-TxRx-0
33:    3518051  217415959    5704365  176048731  41778491  57705020  47951724  102576355  IR-PCI-MSI-edge      eth0-TxRx-1
34:    6854380  18311548  10122642  31791828  210666240  177551323  71900096  104701458  IR-PCI-MSI-edge      eth0-TxRx-2
35:  16189409  37695548  18382144  139996737  113968547  109539906  142232674  91552057  IR-PCI-MSI-edge      eth0-TxRx-3
36:  41716035  27531701  36292499  73002608  138181708  82669613  66162173  203799714  IR-PCI-MSI-edge      eth0-TxRx-4
37:  65504645  92351237  66619594  63376595  88671132  105382121  112237142  59060756  IR-PCI-MSI-edge      eth0-TxRx-5
38:  123961011  48812676  113514622  48943031  87627298  80122589  84763636  58892923  IR-PCI-MSI-edge      eth0-TxRx-6
39:  137780100  51427526  140737362  46228148  70328892  58439575  78063266  60242218  IR-PCI-MSI-edge      eth0-TxRx-7
73:        22          0          0          0          0          0          0          0  IR-PCI-MSI-edge      mei_me
NMI:      25131      25131      25131      25131      25131      25131      25131      25131  Non-maskable interrupts
LOC:  11582192  13193245  12221846  13124045    9064603    8850550    8960452    8923491  Local timer interrupts
SPU:          0          0          0          0          0          0          0          0  Spurious interrupts
PMI:      25131      25131      25131      25131      25131      25131      25131      25131  Performance monitoring interrupts
IWI:        239        341        248        259        394        452        286        501  IRQ work interrupts
RTR:          7          0          0          0          0          0          0          0  APIC ICR read retries
RES:  25809626  20279746  22559634  18621837  10495308  10536118  11015374  10829654  Rescheduling interrupts
CAL:    275695    291553    274504    291529    232573    226131    232432    229182  Function call interrupts
TLB:    5841029    5323296    5508889    5649412    4257286    4315927    4636979    4572730  TLB shootdowns
TRM:          0          0          0          0          0          0          0          0  Thermal event interrupts
THR:          0          0          0          0          0          0          0          0  Threshold APIC interrupts
MCE:          0          0          0          0          0          0          0          0  Machine check exceptions
MCP:        795        795        795        795        795        795        795        795  Machine check polls
HYP:          0          0          0          0          0          0          0          0  Hypervisor callback interrupts
ERR:          9
MIS:          0
ÎnchideЗакрыть

Настройки файловой системы:

Я пробовал несколько файловых систем, включая XFS, ReiserFS и другие, в итоге остановился на стандартной ext4, как самой оптимальной.

У меня настроено все на максимальную производительность, т.е. отключено журналирование, включен кеш записи и пр. Данные настройки следует включать только при наличии ИБП (источника бесперебойного питания) и абсолютно стабильной системы. Мой seedbox за все время эксплуатации ни разу не завис. А при наличии ИБП и даже возможности потери данных (это всего лишь торренты), настройки вполне себя оправдывают.

Для максимальной производительности следует отключить журналирование: "tune2fs -O ^has_journal /dev/sda1",
включить кэш записи, отключить запись о последнем доступе к файлам и папкам.

Пример записи в /etc/fstab:

/etc/fstab
/dev/sda1 /data/hd1 auto noatime,nofail,data=writeback,barrier=0,nobh,errors=remount-ro 0 0
ÎnchideЗакрыть


У меня 2 SSD и они собраны для удобства в группу, используя LVM, никаких RAID массивов, т.к. скорости SSD хватает с излишком, а RAID только съедает часть ресурса записи и мешает полноценной работе TRIM.

Для потребительских SSD стоит также учесть, что они крайне не любят заполнение объема свыше 75-90%, скорость работы при записи на переполненные диски падает катастрофически: буквально до 10-15 мегабайт/сек, при этом чтение с диска также сильно тормозит (только во время записи на диск).

Серверные SSD просаживаются далеко не так значительно, но тоже заметно. Если TRIM работает некорректно возникнут большие проблемы при непрерывных закачках на SSD. Иногда бывает, что скорость скачивания торрентов не опускаетя ниже 100 мегабит/сек несколько дней подряд, сборка мусора (при отсутствии TRIM) при этом у многих потребительских SSD просто не включается.

По ресурсу SSD: Crucial M500 480GB после 180 дней работы показывает износ всего в 3%. Samsung 845DC Pro 400GB вообще практически не убиваем (позволяет писать в день 4TB в течение 5 лет).

Настройки /etc/sysctl.conf:

В данном файле тюнингуются сетевые и системные настройки.

При достижении раздачи свыше 650 мегабит я заметил, что мгновенно вырастает нагрузка на CPU с 5-10% до близкой к 50%, при этом скорость раздачи практически не увеличивается, оказалось, что проблема в слишком мелких буферах.

Т.к. Ubuntu установлен на SSD диск, то для этого изменено также несколько настроек (vm.*), эти настройки стоит включать только для систем с большим количеством памяти: 8 GB+.

Проблем с памятью быть не должно, при данных настройках даже с 4 GB памяти все работает стабильно неделями и не свопится.

/etc/sysctl.conf
kernel.pid_max = 2000000
fs.file-max = 2000000
net.ipv4.ip_local_port_range = 1000 65000
net.core.netdev_max_backlog=65535
net.ipv4.tcp_sack=0
net.core.rmem_max = 167772160
net.core.wmem_max = 167772160
net.core.somaxconn = 65535
net.ipv4.tcp_rmem = 10240 262144 134217728
net.ipv4.tcp_wmem = 10240 262144 134217728
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syncookies = 1
net.core.wmem_default = 16777216
net.core.rmem_default = 16777216
net.ipv4.tcp_mem= 819200 2097152 79446016
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_forward = 0
net.ipv4.tcp_congestion_control=cubic
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 0
net.ipv4.tcp_orphan_retries = 1
net.ipv4.tcp_fin_timeout = 25
net.ipv4.tcp_max_orphans = 8192
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_no_metrics_save = 1

vm.swappiness = 0
vm.dirty_writeback_centisecs = 15000
ÎnchideЗакрыть

Про rTorrent
************

На мой взгляд это лучший Torrent-клиент на данный момент для раздачи большого кол-ва торрентов при огромном количестве пиров. Главное качество - очень эффективная и стабильная работа, используется
минимальное количество памяти и ресурсов CPU. Этот клиент не настолько агрессивен, как например uTorrent или Deluge, т.е. при закачке/раздаче скорость до максимальной будет расти медленнее, но в итоге будет держаться на максимуме гораздо стабильнее. Почти на всех коммерческих сидбоксах установлен rTorrent.

Я использую rTorrent-PS (rTorrent Extended), готовые пакеты можно скачать отсюда: https://bintray.com/pyroscope/rtorrent-ps/rtorrent-ps

Это модифицированная сборка с кучей патчей, улучшающих стабильность и функциональность.
rTorrent-PS требует для работы консоль с поддержкой 256 цветов, поэтому необходимо добавить строки:
export TERM="xterm-256color" в .bashrc, а также term screen-256color в .screenrc для пользователя, под которым будет запускаться rTorrent-PS.

Теперь интересная и почти никем не акцентируемая проблема:

rTorrent (кстати как и все остальные популярные клиенты, включая uTorrent) использует только 1 поток для чтения файлов.
Это означает, что при использовании одновременно HDD и SSD или нескольких HDD, во время медленного чтения данных с одного HDD, второй HDD или SSD диск будут простаивать, дожидаясь окончания операции чтения с первого диска. Поэтому необходимо для каждого диска HDD и SSD запускать собственную копию rTorrent'а.

Если SSD несколько, то их можно объединить в пул с помощью LVM или JBOD RAID, на скорость это не влияет, она избыточна при сидинге.

Если у Вас 3 HDD и 2 SSD, то будет необходимо настроить и запустить 4 копии rTorrent (3 для каждого HDD, и 1 или 2 для SSD).


Немного комментариев по настройкам.
max_memory_usage - каждый должен выставить индивидуально, исходя из доступного объема памяти, но даже при раздаче нескольких тысяч торрентов, редко используется свыше 2 GB.
port_range - не забываем о необходимости пробросить/открыть эти порты на роутере/firewall.
encryption - при моей настройке старается не использовать (но поддерживает) шифрование, чтобы лишний раз не нагружать процессор.
pieces.preload.type.set = 0 - отключить упреждающее чтение с диска, самая важная настройка из всех, при быстрой раздаче preload равный 1 (madvise), что советуют почти все гайды, слишком сильно перегружает диск (даже SSD), т.е. при раздаче в 20 мег/сек с диска может читаться свыше 100 мег/сек, не давая реализовать полную скорость.

Настройки:
rtorrent.rc

min_peers = 20
max_peers = 60
min_peers_seed = 15
max_peers_seed = 80
max_uploads = 40
download_rate = 0
upload_rate = 0
directory = /data/ssd
session = /data/session
schedule = low_diskspace,5,60,close_low_diskspace=10000M
port_range = 4050-4050
port_random = no
check_hash = no
use_udp_trackers = no
encryption = allow_incoming,enable_retry,prefer_plaintext
dht = disable
dht_port = 4051
peer_exchange = no
scgi_port = 127.0.0.1:5000
max_memory_usage = 7500M

network.http.max_open.set = 32
network.send_buffer.size.set = 4M
network.receive_buffer.size.set = 4M
pieces.preload.type.set = 0
pieces.memory.max.set = 7500M

throttle.global_down.max_rate.set_kb = 0
throttle.global_up.max_rate.set_kb = 0
xmlrpc_size_limit = 5M

max_uploads_global = 0
max_downloads_global = 0

network.max_open_sockets.set = 2048

system.file_allocate.set = yes

system.method.insert = pyro.extended, value|const, 1
ÎnchideЗакрыть


Для запуска в режиме демона можно использовать похожий скрипт (следует установить предварительно пакет screen):
rtorrent_hdd0

#!/bin/bash
### BEGIN INIT INFO
# Provides:          rtorrent_hdd0
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:    $local_fs $remote_fs $network $syslog
# Default-Start:    2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start/stop rtorrent_hdd0 daemon
### END INIT INFO

## Username to run rtorrent under, make sure you have a .rtorrent.rc in the
## home directory of this user!
USER="seed_hdd0"

## Absolute path to the rtorrent binary.
RTORRENT="/home/!!!!YOURUSERNAME!!!/lib/rtorrent-0.9.4/bin/rtorrent-extended"

## Absolute path to the screen binary.
SCREEN="/usr/bin/screen"

## Name of the screen session, you can then "screen -r rtorrent" to get it back
## to the forground and work with it on your shell.
SCREEN_NAME="rtorrent_hdd0"

## Absolute path to rtorrent's PID file.
PIDFILE="/var/run/rtorrent_hdd0.pid"

## Absolute path to rtorrent's XMLRPC socket.
SOCKET="/var/run/rtorrent/rpc_hdd0.socket"
LOCK="/data/session_hdd0/rtorrent_hdd0.lock"

## Check if the socket exists and if it exists delete it.
delete_socket() {
    if [[ -e $SOCKET ]]; then
        rm -f $SOCKET
    fi
    if [[ -e $LOCK ]]; then
        rm -f $LOCK
    fi
}


case "$1" in
    ## Start rtorrent in the background.
    start)
        echo "Starting rtorrent."
        delete_socket

        start-stop-daemon --start --background --oknodo \
            --pidfile "$PIDFILE" --make-pidfile \
            --chuid $USER \
            --exec $SCREEN -- -DmUS $SCREEN_NAME $RTORRENT
        if [[ $? -ne 0 ]]; then
            echo "Error: rtorrent failed to start."
            exit 1
        fi
        echo "rtorrent started successfully."
        ;;


    ## Stop rtorrent.
    stop)
        echo "Stopping rtorrent."
        start-stop-daemon --stop --oknodo --pidfile "$PIDFILE"
        if [[ $? -ne 0 ]]; then
            echo "Error: failed to stop rtorrent process."
            exit 1
        fi
        delete_socket
        echo "rtorrent stopped successfully."
        ;;


    ## Restart rtorrent.
    restart)
        "$0" stop
        sleep 1
        "$0" start || exit 1
        ;;



    ## Print usage information if the user gives an invalid option.
    *)
        echo "Usage: $0 [start|stop|restart]"
        exit 1
        ;;
esac
ÎnchideЗакрыть
В этом скрипте rTorrent запускается под юзером rtorrent_hdd0.
Для автозапуска записать данный скрипт в /etc/init.d/rtorrent_hdd0, добавить командой:
"sudo update-rc.d rtorrent_hdd0 defaults 99".

Для надежности используется монитор monit, при падении rTorrent, он его автоматически перезапускает.

Сам по себе rTorrent не удобен в использовании удаленно, поэтому используется Web front-end ruTorrent, в интернете есть куча гайдов на настройке и установке, в том числе и на русском. Каких либо специфических настроек и модификаций для ruTorrent я не использую, все стандартно.

Организация закачки и раздачи
*****************************

Типичная картина:


В ruTorrent у меня сейчас настроена автоматическая скачка абсолютно всех торрентов через RSS.
Торренты качаются исключительно на SSD диски и, примерно, раз в день я переношу неактивные торренты (для которых нет ни одного личера) на один из HDD дисков, это пока единственное, что приходится делать руками, но много времени не отнимает.

В среднем с TMD выкачивается от 200 до 300 GB в день.

Данный метод позволяет не мониторить постоянно TMD на предмет новых торрентов. Нет нужды добавлять вручную популярные и перспективные торренты, Вы гарантированно будете в числе первых, кто раздает торрент и не пропустите ни одного популярного. Максимум, что от Вас потребуется это 3-5 минут активного времени для переноса данных.

Перенос происходит в 3 шага:

  • 1. в ruTorrent я устанавливаю отдельную метку для торрентов, что будут переноситься [обычно просто выбираю весь список неактивных], затем все торренты с данной меткой переносятся командой "Сохранить в" в нужную папку на HDD, пусть для примера это будет "/data/hd0". Время переноса зависит от кол-ва данных, обычно 20-30 минут для 75-100 торрентов, при этом скорость раздачи с SSD практически не падает. Пока переносятся данные, браузер можно закрыть.
  • 2. Запускаю скрипт, который переносит сессии и метаданные (но не файлы самих торрентов, они ведь были перенесены в 1м шаге) с rTorrent для SSD в rTorrent запущенном для HDD.
move_torrents.sh

#!/bin/bash

for f in session/*.* ; do

if grep -q ':/data/hd0' $f; then
    filename="${f%.*.*}"
    mv $filename.* ./session_hdd0/
fi

done
ÎnchideЗакрыть

  • 3. В SSD ruTorrent отмеченные торренты удаляются командой "Удалить", НО НЕ "Удалить и удалить данные". После чего делается рестарт rTorrent для HDD, т.к. файлы торрентов вместе метаданными были перенесены для rTorrent HDD, после рестарта он начнет их автоматически раздавать без лишних проверок.
Шаги 2-3 и рестарт rTorrent HDD выполняются мгновенно.

Немного скриншотов для типичного дня:

Статистика с роутера (MikroTik) за 21 день (за это время обработано свыше 100 млрд пакетов):


Еще с MikroTik (тут отчетливо видны провалы по ночам и пики в прайм тайм):


Несколько скриптов собирают статистику напрямую с TMD (из профилей пользователей), кстати реально залитый трафик примерно на 10-20% выше учтеного TMD (есть разные причины). В таблице - средняя скорость с периодом 2ч [стоит отметить, что SanduMD также на гигабит канале в Кишиневе, но использует обычный компьютер под Windows с 1-м HDD]:


Статистика непосредственно с seedbox'а (Zabbix):


Как все выглядит на Ubuntu сидбоксе (glances), немного устаревший скриншот, но суть ясна:


Оценка мегабит -> реальная скорость для торрентов.

Для rTorrent (а, он не использует всякий шлак вроде uTP), после исключения overhead довольно точная - это мегабит/9, т.е. 900 мегабит дают примерно 100 мегабайт в секунду реальной скорости раздачи. Для Starnet на моем оборудовании я не видел скорости раздачи выше 930 мегабит и скорости загрузки свыше 980 мегабит, при этом iperf выдает около 950 мегабит внутри локальной сети.

Максимальная скорость (даже не верится, что такое возможно у себя дома):


ÎnchideЗакрыть


P.S. Одно время у меня раздавали торренты сразу 5 серверов (тесты сидбоксов), так вот ночью все-равно нередко суммарная скорость была ниже 25 мег/сек. Это я к обвинениям пользователя Saphena, у которого магическим образом средняя скорость была круглый год ровно 37 мег/сек [см. мои темы на форуме] и которого я считаю на 100% читером.

P.S.S. Теперь, надеюсь, отпадут любые нападки на Starnet по поводу честности выделяемого канала [не качаются торренты, нет скорости и тд], особенно актуально для гигабита, т.к. некоторые пользователи удивляются почему не могут быстро раздавать. Для домашнего провайдера это очень и очень круто. Да были у Starnet'а одно время проблемы с внешкой, но сейчас все стабилизировалось и работает идеально.

P.S.S.S. Отвечу на любые вопросы касаемо данного гайда.

Editat de către ToXyK la 2015-04-21 21:50:17




Mesaj util ?   Da / Nu   39 / 0   39 puncte

1 2 3
<< Precedenta      Următoarea >>

#51 by miklipaq Warned (ХУЛИGAN) (0 mesaje) at 2015-04-21 21:37:02 (182 săptămâni în urmă) - [Link]Top
Acest mesaj nu respecta eticheta de comunicare și a fost ascuns. Click dacă oricum dorești să-l vezi.
#52 by PumaMD (Uploader) (0 mesaje) at 2015-04-21 22:06:29 (182 săptămâni în urmă) - [Link]Top
Acest mesaj nu respecta eticheta de comunicare și a fost ascuns. Click dacă oricum dorești să-l vezi.
#53 by YgenTMD (Cha|0S) (0 mesaje) at 2018-10-02 22:52:45 (2 săptămâni în urmă) - [Link]Top
Multumesc :)


Mesaj util ?   Da / Nu   0 / 0   0 puncte

1 2 3
<< Precedenta      Următoarea >>

Forum Index > BitTorrent > Большой гайд по сидингу на гигабите (сидбокс)


Navigare rapidă:


Schimbul de informație este realizat de către utilizatorii siteului. Acest site este bazat pe voluntariat, de la utilizatori pentru utilizatori. Întregul text privind regulile şi condiţiile de utilizare a TORRENTS.MD poate fi găsit aici.
Sharing is caring.