alibek Posted September 19, 2017 · Report post Есть у меня большое файлохранилище под Debian Linux. С этого хранилища я периодически забираю разные файлы и ничего лучше http не нашел - максимально универсально. Качаю многопоточным download-менеджером, в 10-15 потоков. Скорость загрузки обычно ограничена в 5-6 Мбит/с, хотя если загрузки остановить, а затем стартануть, она иногда доходит до 70 Мбит/с. На сервере стоит апач (модель prefork) и его наверняка можно подкрутить до нормальной работы, но я думаю для раздачи использовать nginx. Есть ли рекомендации, что подкрутить в настройках для быстрой раздачи статики? Или можно с дефолтными параметрами запускать? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
snvoronkov Posted September 19, 2017 · Report post Это шютка такая, да? 70 мегабит на статике... У нас в серверной пень3 750 таскается. Он без тюнинга (кроме буферов и сомакс ядру) свою сотню в индейце даёт... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted September 19, 2017 · Report post 70 Мбит/с это со стороны клиента ограничение. Так то сервер и больше может отдавать. При загрузке торрентов я 700 Мбит/с видел, больше не успел (торрент скачался). Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
rm_ Posted September 19, 2017 · Report post 25 минут назад, alibek сказал: что подкрутить в настройках для быстрой раздачи статики? Или можно с дефолтными параметрами запускать? Для целого одного пользователя -- думаю можно. :) 25 минут назад, alibek сказал: Скорость загрузки обычно ограничена в 5-6 Мбит/с, хотя если загрузки остановить, а затем стартануть, она иногда доходит до 70 Мбит/с. А вот покрутите-ка TCP Congestion Control. В sysctl.conf, net.ipv4.tcp_congestion_control=illinois это для начала. Если ядро достаточно свежее, то net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr для применения первой из этих строчек необходима перезагрузка. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
snvoronkov Posted September 19, 2017 · Report post Вопрос-то тогда в чем? Что лучше для статики - apache или nginx? Второе. И Сысоева почитать про то, что ему крутить. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted September 19, 2017 · Report post 16 минут назад, snvoronkov сказал: Вопрос-то тогда в чем? Что лучше для статики - apache или nginx? Скорее — можно использовать nginx «из коробки» или нужно тюнить? 17 минут назад, rm_ сказал: А вот покрутите-ка TCP Congestion Control. Попробую, спасибо. Если в download-менеджере качать файлы по одному (даже в 20 потоков), то скорость загрузки ограничена клиентом, примерно 70 Мбит/с. Если же качать, например, три файла одновременно по 5 потоков в каждом, то скорость загрузки получается маленькая (сотни килобит на каждом файле). То есть дело не в самом сервере, а в его конфигурации. При этом в конфигурации указано: <IfModule prefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 </IfModule> Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
MMM Posted September 19, 2017 · Report post nginx в дефолтной конфигурации может хорошо отдавать, с апачем в prefork не сравнить. вообще, это уже больше 10 лет везде пишут :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
andryas Posted September 19, 2017 · Report post ИМХО, разницы особой нет, может единицы %%. У меня какой-то атом апачем легко отдаёт гигабит, правда, сетевая интел, хоть и десктопная. Надо смотреть, где затык у ТС, может в винте, может сетевая... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
snvoronkov Posted September 20, 2017 · Report post 9 часов назад, alibek сказал: Если же качать, например, три файла одновременно по 5 потоков в каждом, то скорость загрузки получается маленькая (сотни килобит на каждом файле). То есть дело не в самом сервере, а в его конфигурации. Неочевидный вывод. Памяти под кэш файлухи точно достаточно? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
megahertz0 Posted September 20, 2017 · Report post Может быть стоит сначала iperf погонять в режиме TCP? Есть мнение, что виноват congestion control на стороне сервера и апач тут не при чем. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted September 20, 2017 · Report post 13 часов назад, rm_ сказал: net.ipv4.tcp_congestion_control=illinois Кусок хрени. 13 часов назад, rm_ сказал: net.ipv4.tcp_congestion_control=bbr Не пробовал. htcp, hybla - оба давно есть и весьма годно пашут, при прочих тюнингах. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
rm_ Posted September 20, 2017 (edited) · Report post 19 минут назад, Ivan_83 сказал: Кусок хрени. Сравнивал их все на живом интернете с пингом до клиента около сотни и занятым ДЦшным аплоадом, иллиноис оказался заметно лучше остальных. А ббр заметно лучше иллиноиса, главное отличие что фигачить на полный канал начинает почти сразу, а иллиноис запрягает подольше. Edited September 20, 2017 by rm_ Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Tosha Posted September 20, 2017 · Report post Имхо процесс nginx как-то полегче. Но вот в данном случае это может быть и не почувствуется. С другой стороны зачем все же запускать монстра Апача, заточенного на динамические страницы "со свистелками... ", для статики? А еще есть легкий и быстрые http сервер kHTTPd - но я его не щупал. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alibek Posted September 20, 2017 · Report post Ну апач на этом сервере и так есть, не для массовой публики, для внутренних сервисов. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted September 20, 2017 · Report post 2 часа назад, rm_ сказал: Сравнивал их все на живом интернете с пингом до клиента около сотни и занятым ДЦшным аплоадом, иллиноис оказался заметно лучше остальных. А я сравнивал тем что находясь в мск смотрел иптв HD. hybla была единственным кто давал смотреть стабильно. В локалках htcp лучше, ибо при низком RTT он малость шустрее. Илиноис и прочее старьё всегда приводило к лагам, вествуд вообще только садистам-мазахистам. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ilya Evseev Posted December 4, 2017 · Report post Здесь было подробное объяснение сравнительных преимуществ для разных алгоритмов управления TCP congestion и дисциплин управления очередями (qdicsc) на каналах с разной пропускной способностью, но злобные манагеры cdnnow.ru заставили его стереть. Скоро здесь должна появиться ссылка на статью с подробными выводами и методикой расчёта. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted December 4, 2017 · Report post Да не печалься ты. Один фиг hybla, htcp и bbr (может быть) остальное нафик. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
rm_ Posted December 4, 2017 (edited) · Report post Дахоспаде, всё вы со своей хюблой. # sysctl net.ipv4.tcp_congestion_control=hybla net.ipv4.tcp_congestion_control = hybla # iperf3 -c XXXX Connecting to host XXXX, port 5201 [ 4] local 2001:41d0:1:8055::1 port 48640 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 835 KBytes 6.84 Mbits/sec 1 79.0 KBytes [ 4] 1.00-2.00 sec 1.71 MBytes 14.3 Mbits/sec 0 147 KBytes [ 4] 2.00-3.00 sec 1.28 MBytes 10.7 Mbits/sec 2 90.1 KBytes [ 4] 3.00-4.00 sec 1.28 MBytes 10.7 Mbits/sec 3 77.7 KBytes [ 4] 4.00-5.00 sec 936 KBytes 7.67 Mbits/sec 2 26.3 KBytes [ 4] 5.00-6.00 sec 624 KBytes 5.11 Mbits/sec 1 70.7 KBytes [ 4] 6.00-7.00 sec 936 KBytes 7.67 Mbits/sec 1 92.9 KBytes [ 4] 7.00-8.00 sec 1.34 MBytes 11.2 Mbits/sec 1 84.6 KBytes [ 4] 8.00-9.00 sec 998 KBytes 8.18 Mbits/sec 3 30.5 KBytes [ 4] 9.00-10.00 sec 312 KBytes 2.55 Mbits/sec 1 67.9 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 10.1 MBytes 8.50 Mbits/sec 15 sender [ 4] 0.00-10.00 sec 9.63 MBytes 8.07 Mbits/sec receiver iperf Done. # iperf3 -c XXXX Connecting to host XXXX, port 5201 [ 4] local 2001:41d0:1:8055::1 port 48646 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 6.60 MBytes 55.4 Mbits/sec 3 363 KBytes [ 4] 1.00-2.00 sec 5.00 MBytes 41.9 Mbits/sec 1 331 KBytes [ 4] 2.00-3.00 sec 1.25 MBytes 10.5 Mbits/sec 3 87.4 KBytes [ 4] 3.00-4.00 sec 1.25 MBytes 10.5 Mbits/sec 3 43.0 KBytes [ 4] 4.00-5.00 sec 1.25 MBytes 10.5 Mbits/sec 0 112 KBytes [ 4] 5.00-6.00 sec 1.25 MBytes 10.5 Mbits/sec 3 45.8 KBytes [ 4] 6.00-7.00 sec 0.00 Bytes 0.00 bits/sec 1 66.6 KBytes [ 4] 7.00-8.00 sec 1.25 MBytes 10.5 Mbits/sec 0 133 KBytes [ 4] 8.00-9.00 sec 2.50 MBytes 21.0 Mbits/sec 1 111 KBytes [ 4] 9.00-10.00 sec 1.25 MBytes 10.5 Mbits/sec 0 178 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 21.6 MBytes 18.1 Mbits/sec 15 sender [ 4] 0.00-10.00 sec 19.1 MBytes 16.0 Mbits/sec receiver # sysctl net.ipv4.tcp_congestion_control=illinois net.ipv4.tcp_congestion_control = illinois # iperf3 -c XXXX Connecting to host XXXX, port 5201 [ 4] local 2001:41d0:1:8055::1 port 48652 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 13.2 MBytes 111 Mbits/sec 2 1.21 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 17 1.09 MBytes [ 4] 2.00-3.00 sec 10.0 MBytes 83.9 Mbits/sec 4 709 KBytes [ 4] 3.00-4.00 sec 8.75 MBytes 73.4 Mbits/sec 1 671 KBytes [ 4] 4.00-5.00 sec 8.75 MBytes 73.4 Mbits/sec 0 728 KBytes [ 4] 5.00-6.00 sec 10.0 MBytes 83.9 Mbits/sec 1 685 KBytes [ 4] 6.00-7.00 sec 8.75 MBytes 73.4 Mbits/sec 2 657 KBytes [ 4] 7.00-8.00 sec 7.50 MBytes 62.9 Mbits/sec 3 560 KBytes [ 4] 8.00-9.00 sec 6.25 MBytes 52.4 Mbits/sec 5 491 KBytes [ 4] 9.00-10.00 sec 6.25 MBytes 52.4 Mbits/sec 1 492 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 90.7 MBytes 76.1 Mbits/sec 36 sender [ 4] 0.00-10.00 sec 83.3 MBytes 69.9 Mbits/sec receiver iperf Done. # iperf3 -c XXXX Connecting to host XXXX, port 5201 [ 4] local 2001:41d0:1:8055::1 port 48656 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 14.4 MBytes 121 Mbits/sec 0 2.22 MBytes [ 4] 1.00-2.00 sec 13.8 MBytes 115 Mbits/sec 0 2.71 MBytes [ 4] 2.00-3.00 sec 10.0 MBytes 83.9 Mbits/sec 48 1.08 MBytes [ 4] 3.00-4.00 sec 10.0 MBytes 83.9 Mbits/sec 6 557 KBytes [ 4] 4.00-5.00 sec 8.75 MBytes 73.4 Mbits/sec 0 652 KBytes [ 4] 5.00-6.00 sec 8.75 MBytes 73.4 Mbits/sec 0 739 KBytes [ 4] 6.00-7.00 sec 8.75 MBytes 73.4 Mbits/sec 4 580 KBytes [ 4] 7.00-8.00 sec 7.50 MBytes 62.9 Mbits/sec 2 564 KBytes [ 4] 8.00-9.00 sec 7.50 MBytes 62.9 Mbits/sec 4 491 KBytes [ 4] 9.00-10.00 sec 7.50 MBytes 62.9 Mbits/sec 0 588 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 96.9 MBytes 81.3 Mbits/sec 64 sender [ 4] 0.00-10.00 sec 86.0 MBytes 72.2 Mbits/sec receiver iperf Done. # sysctl net.ipv4.tcp_congestion_control=bbr net.ipv4.tcp_congestion_control = bbr # iperf3 -c XXXX Connecting to host XXXX, port 5201 [ 4] local 2001:41d0:1:8055::1 port 48660 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 16.4 MBytes 137 Mbits/sec 0 1.60 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.61 MBytes [ 4] 2.00-3.00 sec 11.2 MBytes 94.4 Mbits/sec 48 1.61 MBytes [ 4] 3.00-4.00 sec 10.0 MBytes 83.9 Mbits/sec 0 1.63 MBytes [ 4] 4.00-5.00 sec 11.2 MBytes 94.4 Mbits/sec 7 1.61 MBytes [ 4] 5.00-6.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.61 MBytes [ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 35 1.61 MBytes [ 4] 7.00-8.00 sec 11.2 MBytes 94.4 Mbits/sec 1 1.61 MBytes [ 4] 8.00-9.00 sec 10.0 MBytes 83.9 Mbits/sec 0 1.61 MBytes [ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 48 5.55 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 115 MBytes 96.6 Mbits/sec 139 sender [ 4] 0.00-10.00 sec 105 MBytes 88.1 Mbits/sec receiver iperf Done. # iperf3 -c XXXX Connecting to host XXXX, port 5201 [ 4] local 2001:41d0:1:8055::1 port 48670 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 16.4 MBytes 137 Mbits/sec 0 1.64 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 1 1.64 MBytes [ 4] 2.00-3.00 sec 10.0 MBytes 83.9 Mbits/sec 3 1.65 MBytes [ 4] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec 6 1.65 MBytes [ 4] 4.00-5.00 sec 11.2 MBytes 94.4 Mbits/sec 1 1.65 MBytes [ 4] 5.00-6.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.67 MBytes [ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 48 1.65 MBytes [ 4] 7.00-8.00 sec 10.0 MBytes 83.9 Mbits/sec 1 1.64 MBytes [ 4] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 7 1.65 MBytes [ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 2 5.55 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 115 MBytes 96.6 Mbits/sec 69 sender [ 4] 0.00-10.00 sec 105 MBytes 88.0 Mbits/sec receiver iperf Done. 72 мс пинг, 100 мбит сервер в OVH => 100 мбит домашний интернет в России. Edited December 4, 2017 by rm_ Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
GHhost Posted December 4, 2017 · Report post я тут тоже как на 4.14 дома пересел заюзал bbr и fq и торенты сразу начали раздаваца намного шустрее после этого. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted December 4, 2017 · Report post А где тесты htcp и cubic? Кроме того, мне hybla давала стабильные 10-15 мегабит при потерях, когда всё остальное приводило к лагам иптв. bbr тогда и в планах не было :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
rm_ Posted December 5, 2017 (edited) · Report post 8 часов назад, Ivan_83 сказал: А где тесты htcp и cubic? Держите. bbr тестировал в начале и в конце, чтоб подтвердить что сетевые условия не изменились. # sysctl net.ipv4.tcp_congestion_control=bbr net.ipv4.tcp_congestion_control = bbr # iperf3 -c XXXX Connecting to host h, port 5201 [ 4] local 2001:41d0:1:8055::1 port 35044 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 16.4 MBytes 137 Mbits/sec 0 1.69 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.69 MBytes [ 4] 2.00-3.00 sec 10.0 MBytes 83.9 Mbits/sec 48 1.68 MBytes [ 4] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.69 MBytes [ 4] 4.00-5.00 sec 10.0 MBytes 83.9 Mbits/sec 47 882 KBytes [ 4] 5.00-6.00 sec 12.5 MBytes 105 Mbits/sec 0 1.68 MBytes [ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.69 MBytes [ 4] 7.00-8.00 sec 10.0 MBytes 83.9 Mbits/sec 48 1.69 MBytes [ 4] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.69 MBytes [ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 48 5.55 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 115 MBytes 96.6 Mbits/sec 191 sender [ 4] 0.00-10.00 sec 105 MBytes 87.9 Mbits/sec receiver iperf Done. # sysctl net.ipv4.tcp_congestion_control=htcp net.ipv4.tcp_congestion_control = htcp # iperf3 -c XXXX Connecting to host h, port 5201 [ 4] local 2001:41d0:1:8055::1 port 35050 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 13.2 MBytes 111 Mbits/sec 0 1.83 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.90 MBytes [ 4] 2.00-3.00 sec 11.2 MBytes 94.4 Mbits/sec 48 990 KBytes [ 4] 3.00-4.00 sec 10.0 MBytes 83.9 Mbits/sec 48 567 KBytes [ 4] 4.00-5.00 sec 7.50 MBytes 62.9 Mbits/sec 0 513 KBytes [ 4] 5.00-6.00 sec 7.50 MBytes 62.9 Mbits/sec 0 575 KBytes [ 4] 6.00-7.00 sec 8.75 MBytes 73.4 Mbits/sec 0 768 KBytes [ 4] 7.00-8.00 sec 11.2 MBytes 94.4 Mbits/sec 0 881 KBytes [ 4] 8.00-9.00 sec 10.0 MBytes 83.9 Mbits/sec 48 742 KBytes [ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 0 747 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 102 MBytes 85.5 Mbits/sec 144 sender [ 4] 0.00-10.00 sec 94.1 MBytes 78.9 Mbits/sec receiver iperf Done. # iperf3 -c XXXX Connecting to host h, port 5201 [ 4] local 2001:41d0:1:8055::1 port 35056 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 13.2 MBytes 111 Mbits/sec 0 1.82 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.90 MBytes [ 4] 2.00-3.00 sec 11.2 MBytes 94.4 Mbits/sec 48 990 KBytes [ 4] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec 0 990 KBytes [ 4] 4.00-5.00 sec 7.50 MBytes 62.9 Mbits/sec 48 509 KBytes [ 4] 5.00-6.00 sec 7.50 MBytes 62.9 Mbits/sec 0 553 KBytes [ 4] 6.00-7.00 sec 7.50 MBytes 62.9 Mbits/sec 0 721 KBytes [ 4] 7.00-8.00 sec 11.2 MBytes 94.4 Mbits/sec 0 872 KBytes [ 4] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 0 919 KBytes [ 4] 9.00-10.00 sec 10.0 MBytes 83.9 Mbits/sec 48 739 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 102 MBytes 85.5 Mbits/sec 144 sender [ 4] 0.00-10.00 sec 94.2 MBytes 79.0 Mbits/sec receiver iperf Done. # sysctl net.ipv4.tcp_congestion_control=cubic net.ipv4.tcp_congestion_control = cubic # iperf3 -c XXXX Connecting to host h, port 5201 [ 4] local 2001:41d0:1:8055::1 port 35060 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 2.94 MBytes 24.7 Mbits/sec 0 268 KBytes [ 4] 1.00-2.00 sec 6.09 MBytes 51.1 Mbits/sec 0 527 KBytes [ 4] 2.00-3.00 sec 11.0 MBytes 92.3 Mbits/sec 0 896 KBytes [ 4] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec 0 900 KBytes [ 4] 4.00-5.00 sec 10.0 MBytes 83.9 Mbits/sec 48 685 KBytes [ 4] 5.00-6.00 sec 10.0 MBytes 83.9 Mbits/sec 0 768 KBytes [ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 0 828 KBytes [ 4] 7.00-8.00 sec 10.0 MBytes 83.9 Mbits/sec 0 871 KBytes [ 4] 8.00-9.00 sec 11.2 MBytes 94.4 Mbits/sec 48 637 KBytes [ 4] 9.00-10.00 sec 8.75 MBytes 73.4 Mbits/sec 0 688 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 92.5 MBytes 77.6 Mbits/sec 96 sender [ 4] 0.00-10.00 sec 89.0 MBytes 74.6 Mbits/sec receiver iperf Done. # iperf3 -c XXXX Connecting to host h, port 5201 [ 4] local 2001:41d0:1:8055::1 port 35064 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 2.94 MBytes 24.7 Mbits/sec 0 268 KBytes [ 4] 1.00-2.00 sec 6.09 MBytes 51.1 Mbits/sec 0 526 KBytes [ 4] 2.00-3.00 sec 11.0 MBytes 92.3 Mbits/sec 0 865 KBytes [ 4] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec 0 906 KBytes [ 4] 4.00-5.00 sec 10.0 MBytes 83.9 Mbits/sec 48 707 KBytes [ 4] 5.00-6.00 sec 10.0 MBytes 83.9 Mbits/sec 0 786 KBytes [ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 0 843 KBytes [ 4] 7.00-8.00 sec 11.2 MBytes 94.4 Mbits/sec 0 883 KBytes [ 4] 8.00-9.00 sec 8.75 MBytes 73.4 Mbits/sec 48 661 KBytes [ 4] 9.00-10.00 sec 10.0 MBytes 83.9 Mbits/sec 0 704 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 92.5 MBytes 77.6 Mbits/sec 96 sender [ 4] 0.00-10.00 sec 88.4 MBytes 74.2 Mbits/sec receiver iperf Done. # sysctl net.ipv4.tcp_congestion_control=bbr net.ipv4.tcp_congestion_control = bbr # iperf3 -c XXXX Connecting to host h, port 5201 [ 4] local 2001:41d0:1:8055::1 port 35074 connected to XXXX port 5201 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 16.4 MBytes 137 Mbits/sec 0 1.61 MBytes [ 4] 1.00-2.00 sec 11.2 MBytes 94.4 Mbits/sec 47 843 KBytes [ 4] 2.00-3.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.61 MBytes [ 4] 3.00-4.00 sec 10.0 MBytes 83.9 Mbits/sec 48 845 KBytes [ 4] 4.00-5.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.61 MBytes [ 4] 5.00-6.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.62 MBytes [ 4] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec 48 1.61 MBytes [ 4] 7.00-8.00 sec 11.2 MBytes 94.4 Mbits/sec 0 1.62 MBytes [ 4] 8.00-9.00 sec 10.0 MBytes 83.9 Mbits/sec 48 1.62 MBytes [ 4] 9.00-10.00 sec 11.2 MBytes 94.4 Mbits/sec 0 5.55 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 115 MBytes 96.6 Mbits/sec 191 sender [ 4] 0.00-10.00 sec 105 MBytes 88.1 Mbits/sec receiver iperf Done. Они в целом не так и плохи. У htcp имеется сваливание куда-то к 62 мегабитам, у cubic основной недостаток - медленный старт, ну и тоже некоторые падения в процессе. Вот ещё нашёл мои старые заметки по тестам в другом ДЦ пару лет назад (bbr тогда тоже ещё не было), с гораздо более загруженным аплоадом. Наблюдаемая скорость при аплоаде большого файла, в мегабайтах в секунду: /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_bic.ko -- 6..5..4 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_highspeed.ko -- 2 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_htcp.ko -- 1.5...3...2 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_hybla.ko -- 3...2...1 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_illinois.ko -- 6..7..10 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_lp.ko -- 2..1 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_scalable.ko -- 5..4..3 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_vegas.ko -- 2.5 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_veno.ko -- 2.5 /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_westwood.ko -- <1mb /lib/modules/3.14.17-rm1+/kernel/net/ipv4/tcp_yeah.ko -- 2..5..6 Edited December 5, 2017 by rm_ Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted December 5, 2017 · Report post Кубик отстой, хз как его в дефолты протащили. У htcp есть две крутилки, которые вроде его разгоняют. вествуд для диверсий и врагов, у меня он тоже хромал на все конечности :) По твоим же тестам htcp порвал илиноиса. А hybla порвала бы всех при RTT >70 и потерях, а так да, у неё медленный старт. Может соберусь силами, соберу обратно стенд и проверю как будет bbr в моих херовых условиях против хублы. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
rm_ Posted December 5, 2017 · Report post 3 минуты назад, Ivan_83 сказал: По твоим же тестам htcp порвал илиноиса. По нынешним получается так, но в более сложных условиях (результаты в конце) иллиноис был на голову лучше. Да всё равно bbr лучше их всех. Жаль сейчас уже нет возможности проверить в том же окружении ещё и bbr. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...