avb1987 Posted September 28, 2015 (edited) · Report post Здравствуйте. В материнке Tyan S7010 установлены 2 адаптера E1G42ETBLK. Система - CentOS 7. Карточки включены в PCI Express 2.0 8x разъемы. Драйвер - последняя версия igb с сайта интела. Offloading выключен, Interrupt Throttle Rate выключен (без ограничений), RSS включен и распараллеливается. Сервер выступает в качестве NAS для PPPoE. Судя по описанию на сайте Intel, карточки используют 4x PCI-Express 2.0 (2.5 GT/s), т.е. суммарная пропускная способность шины на один адаптер должна быть в районе 1 гигабайт/сек (4x * 250 МБ/сек). На практике получается что одна карта не пропускает более чем 250 МБ/сек, что примерно равно 750 мбит прием и 250 мбит отдача через один порт и 750 мбит отдача и 250 прием через другой порт. Таким образом если ставить две карты (одна на вход, вторая на выход) с бондингом, то удается протолкнуть не более 1,6 гбит на прием и 0.4 гбит на отдачу при ~110k pps (через каждый адаптер), хотя по идее каждый адаптер должен иметь возможность обработать 1 гбит на прием и 1 гбит на отдачу одновременно на каждом порту (т.е. комп должен 2 гигабита пропускать без проблем одновременно в обоих направлениях). CPU практически не загружен и при максимальной загрузке показывает 1-3%. Кто-нибудь сталкивался с подобной проблемой? Edited September 28, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Умник Posted September 28, 2015 · Report post Что говорит при максимальной загрузке: mpstat -P ALL 1 10 ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexaaa Posted September 29, 2015 · Report post Здравствуйте. В материнке Tyan S7010 установлены 2 адаптера E1G42ETBLK. Система - CentOS 7. Карточки включены в PCI Express 2.0 8x разъемы. Драйвер - последняя версия igb с сайта интела. Offloading выключен, Interrupt Throttle Rate выключен (без ограничений), RSS включен и распараллеливается. Сервер выступает в качестве NAS для PPPoE. Судя по описанию на сайте Intel, карточки используют 4x PCI-Express 2.0 (2.5 GT/s), т.е. суммарная пропускная способность шины на один адаптер должна быть в районе 1 гигабайт/сек (4x * 250 МБ/сек). На практике получается что одна карта не пропускает более чем 250 МБ/сек, что примерно равно 750 мбит прием и 250 мбит отдача через один порт и 750 мбит отдача и 250 прием через другой порт. Таким образом если ставить две карты (одна на вход, вторая на выход) с бондингом, то удается протолкнуть не более 1,6 гбит на прием и 0.4 гбит на отдачу при ~110k pps (через каждый адаптер), хотя по идее каждый адаптер должен иметь возможность обработать 1 гбит на прием и 1 гбит на отдачу одновременно на каждом порту (т.е. комп должен 2 гигабита пропускать без проблем одновременно в обоих направлениях). CPU практически не загружен и при максимальной загрузке показывает 1-3%. Кто-нибудь сталкивался с подобной проблемой? что вы хотели от программно-аппаратной обработки, вообщу-то у неё порт 1Гб/с (750 приём + 250 отдача) вот вам и пропускная способность Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vlad11 Posted September 29, 2015 · Report post что вы хотели от программно-аппаратной обработки, вообщу-то у неё порт 1Гб/с (750 приём + 250 отдача) вот вам и пропускная способность Полу-дуплекс, да? :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
avb1987 Posted September 29, 2015 (edited) · Report post Здравствуйте. Вывод "mpstat -P ALL 1 10" в момент максимальной загрузки: Linux 3.10.0-229.14.1.dsip.x86_64 (...) 09/28/2015 _x86_64_ (8 CPU) 09:23:27 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:28 PM all 0.64 0.00 1.27 0.00 0.00 3.50 0.00 0.00 0.00 94.59 09:23:28 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:28 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:28 PM 2 4.76 0.00 12.70 0.00 0.00 30.16 0.00 0.00 0.00 52.38 09:23:28 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:28 PM 4 0.00 0.00 0.00 0.00 0.00 1.08 0.00 0.00 0.00 98.92 09:23:28 PM 5 0.00 0.00 1.05 0.00 0.00 2.11 0.00 0.00 0.00 96.84 09:23:28 PM 6 0.00 0.00 0.00 0.00 0.00 1.45 0.00 0.00 0.00 98.55 09:23:28 PM 7 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:28 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:29 PM all 0.49 0.00 1.62 0.00 0.00 2.43 0.00 0.00 0.00 95.47 09:23:29 PM 0 0.00 0.00 3.85 0.00 0.00 2.56 0.00 0.00 0.00 93.59 09:23:29 PM 1 2.56 0.00 5.13 0.00 0.00 2.56 0.00 0.00 0.00 89.74 09:23:29 PM 2 1.85 0.00 5.56 0.00 0.00 14.81 0.00 0.00 0.00 77.78 09:23:29 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:29 PM 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:29 PM 5 0.00 0.00 0.00 0.00 0.00 1.10 0.00 0.00 0.00 98.90 09:23:29 PM 6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:29 PM 7 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:29 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:30 PM all 1.13 0.00 1.29 0.00 0.00 1.62 0.00 0.00 0.00 95.95 09:23:30 PM 0 6.02 0.00 0.00 0.00 0.00 1.20 0.00 0.00 0.00 92.77 09:23:30 PM 1 1.30 0.00 1.30 0.00 0.00 1.30 0.00 0.00 0.00 96.10 09:23:30 PM 2 1.92 0.00 1.92 0.00 0.00 3.85 0.00 0.00 0.00 92.31 09:23:30 PM 3 1.20 0.00 4.82 0.00 0.00 3.61 0.00 0.00 0.00 90.36 09:23:30 PM 4 0.00 0.00 1.06 0.00 0.00 3.19 0.00 0.00 0.00 95.74 09:23:30 PM 5 0.00 0.00 0.00 0.00 0.00 1.10 0.00 0.00 0.00 98.90 09:23:30 PM 6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:30 PM 7 0.00 0.00 0.00 0.00 0.00 1.43 0.00 0.00 0.00 98.57 09:23:30 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:31 PM all 0.49 0.00 1.63 0.00 0.00 2.61 0.00 0.00 0.00 95.27 09:23:31 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:31 PM 1 1.32 0.00 3.95 0.00 0.00 3.95 0.00 0.00 0.00 90.79 09:23:31 PM 2 2.00 0.00 6.00 0.00 0.00 16.00 0.00 0.00 0.00 76.00 09:23:31 PM 3 1.22 0.00 4.88 0.00 1.22 2.44 0.00 0.00 0.00 90.24 09:23:31 PM 4 1.09 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 98.91 09:23:31 PM 5 0.00 0.00 0.00 0.00 0.00 1.08 0.00 0.00 0.00 98.92 09:23:31 PM 6 0.00 0.00 0.00 0.00 0.00 1.43 0.00 0.00 0.00 98.57 09:23:31 PM 7 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:31 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:32 PM all 0.64 0.00 1.77 0.00 0.16 2.09 0.00 0.00 0.00 95.33 09:23:32 PM 0 1.18 0.00 5.88 0.00 0.00 2.35 0.00 0.00 0.00 90.59 09:23:32 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:32 PM 2 0.00 0.00 1.69 0.00 0.00 8.47 0.00 0.00 0.00 89.83 09:23:32 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:32 PM 4 0.00 0.00 2.17 0.00 0.00 1.09 0.00 0.00 0.00 96.74 09:23:32 PM 5 0.00 0.00 1.06 0.00 0.00 1.06 0.00 0.00 0.00 97.87 09:23:32 PM 6 1.56 0.00 4.69 0.00 0.00 6.25 0.00 0.00 0.00 87.50 09:23:32 PM 7 0.00 0.00 0.00 0.00 0.00 1.45 0.00 0.00 0.00 98.55 09:23:32 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:33 PM all 0.16 0.00 0.80 0.00 0.00 1.44 0.00 0.00 0.00 97.59 09:23:33 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:33 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:33 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:33 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:33 PM 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:33 PM 5 1.09 0.00 0.00 0.00 0.00 1.09 0.00 0.00 0.00 97.83 09:23:33 PM 6 0.00 0.00 4.69 0.00 0.00 9.38 0.00 0.00 0.00 85.94 09:23:33 PM 7 0.00 0.00 0.00 0.00 0.00 3.08 0.00 0.00 0.00 96.92 09:23:33 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:34 PM all 0.32 0.00 0.64 0.00 0.00 1.77 0.00 0.00 0.00 97.27 09:23:34 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:34 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:34 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:34 PM 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:34 PM 4 1.09 0.00 1.09 0.00 0.00 1.09 0.00 0.00 0.00 96.74 09:23:34 PM 5 0.00 0.00 1.08 0.00 0.00 1.08 0.00 0.00 0.00 97.85 09:23:34 PM 6 1.61 0.00 3.23 0.00 0.00 9.68 0.00 0.00 0.00 85.48 09:23:34 PM 7 0.00 0.00 1.54 0.00 0.00 1.54 0.00 0.00 0.00 96.92 09:23:34 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:35 PM all 0.64 0.00 0.48 0.00 0.00 1.61 0.00 0.00 0.00 97.27 09:23:35 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:35 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:35 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:35 PM 3 3.95 0.00 0.00 0.00 0.00 3.95 0.00 0.00 0.00 92.11 09:23:35 PM 4 0.00 0.00 1.09 0.00 0.00 1.09 0.00 0.00 0.00 97.83 09:23:35 PM 5 0.00 0.00 0.00 0.00 0.00 2.15 0.00 0.00 0.00 97.85 09:23:35 PM 6 1.52 0.00 3.03 0.00 0.00 7.58 0.00 0.00 0.00 87.88 09:23:35 PM 7 1.49 0.00 0.00 0.00 0.00 2.99 0.00 0.00 0.00 95.52 09:23:35 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:36 PM all 0.16 0.00 1.61 0.00 0.00 2.42 0.00 0.00 0.00 95.81 09:23:36 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:36 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:36 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:36 PM 3 0.00 0.00 1.32 0.00 0.00 0.00 0.00 0.00 0.00 98.68 09:23:36 PM 4 0.00 0.00 1.09 0.00 0.00 0.00 0.00 0.00 0.00 98.91 09:23:36 PM 5 0.00 0.00 0.00 0.00 0.00 1.08 0.00 0.00 0.00 98.92 09:23:36 PM 6 1.75 0.00 12.28 0.00 0.00 19.30 0.00 0.00 0.00 66.67 09:23:36 PM 7 0.00 0.00 1.49 0.00 0.00 1.49 0.00 0.00 0.00 97.01 09:23:36 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 09:23:37 PM all 0.32 0.00 0.81 0.00 0.00 1.77 0.00 0.00 0.00 97.10 09:23:37 PM 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:37 PM 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:37 PM 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:37 PM 3 1.39 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 98.61 09:23:37 PM 4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 09:23:37 PM 5 0.00 0.00 1.06 0.00 0.00 3.19 0.00 0.00 0.00 95.74 09:23:37 PM 6 0.00 0.00 4.76 0.00 0.00 11.11 0.00 0.00 0.00 84.13 09:23:37 PM 7 0.00 0.00 0.00 0.00 0.00 1.54 0.00 0.00 0.00 98.46 Average: CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle Average: all 0.50 0.00 1.19 0.00 0.02 2.13 0.00 0.00 0.00 96.17 Average: 0 0.72 0.00 0.96 0.00 0.00 0.60 0.00 0.00 0.00 97.72 Average: 1 0.51 0.00 1.02 0.00 0.00 0.77 0.00 0.00 0.00 97.70 Average: 2 0.96 0.00 2.55 0.00 0.00 6.69 0.00 0.00 0.00 89.81 Average: 3 0.77 0.00 1.15 0.00 0.13 1.03 0.00 0.00 0.00 96.92 Average: 4 0.22 0.00 0.65 0.00 0.00 0.76 0.00 0.00 0.00 98.37 Average: 5 0.11 0.00 0.43 0.00 0.00 1.51 0.00 0.00 0.00 97.95 Average: 6 0.61 0.00 3.06 0.00 0.00 6.27 0.00 0.00 0.00 90.06 Average: 7 0.15 0.00 0.29 0.00 0.00 1.32 0.00 0.00 0.00 98.24 Вывод ethtool -S XXX http://pastebin.com/9kkUWWvT enp8s0f* - из интернета к насу enp10s0f* - от наса к абонентам Как тестировал и мерял скорость: По поводу того как определил: Сначала в сервере стоял один адаптер (а часть абонентов была подключена через другой NAS). Один порт был uplink, второй - downlink. Пик нагрузки составлял около 700/300 через каждый порт. Я попробовал с наса запустить скачивание с локального сервера который включен в тот же коммутатор и мне не удалось выжать более чем 800-850 мбит/с на uplink порту. При этом если в момент скачки запустить ping -f шлюза - начинались небольшие потери. После того как в сервер добавили второй адаптер и подключили вторую половину абонентов, я попробовал воспроизвести тест и на этот раз при общей загрузке 1,1 гбит мне дополнительно удалось выжать +30-45 мегабайт в сек при скачивании. При этом нагрузка на обоих портах адаптера enp8 была перед скачиванием примерно 450/150 мбит. Поскольку там бондинг то понятное дело что это скорость через один из портов, но если просто умножить на два, как раз и получается около 1600 мбит. Еще пробовал с помощью iperf делать тесты и получил примерно такие же значения. При этом на сервере с которого делал скачивание загрузки нет. И в случае отсутствия загрузки на насе идет скачивание четко 110 мегабайт/сек. По поводу того как меряю мегабиты - смотрю в вывод nload или на графики cacti. Возможно я немного преувеличил насчет 700, получается примерно 700-880, но это же не 950, и не 1000 как по идее должно быть. Во время пиковых нагрузок пинги через сервер не скачут и идут равномерно. Еще мне подсказал Умник насчет количества времени для усреднений в nload, я использовал значение по-умолчанию, которое равно 300 секунд. Если поставить 3 секунды и провести те же тесты то скорость download в пике достигает 900 мегабит через каждый адаптер, что опять таки не 1000. что вы хотели от программно-аппаратной обработки, вообщу-то у неё порт 1Гб/с (750 приём + 250 отдача) вот вам и пропускная способность Как заметили выше, все работает в полном дуплексе, так что должно быть 2 гигабита (1 гигабит туда и обратно) через каждый порт. Edited September 29, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
kayot Posted September 29, 2015 · Report post Стесняюсь спросить, а шейпера выключать пробовали? Можно попробовать RSS выключить, и с очередями карты поиграться(на PPPoE толку от них никакого, можно поставить по 1 очереди на порт). Это явно не проблема карт(ET выдают свои 1+1гбит всегда и везде, на гараздо более слабом железе), а где-то в софте грабли. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
avb1987 Posted September 29, 2015 (edited) · Report post Шейперы отключать не пробовал. Используются автоматически создаваемые accel-ppp с настройками: [shaper] attr=Filter-Id up-limiter=police down-limiter=tbf verbose=1 [root@nas1 ppp]# tc qdisc | grep -v "ppp" qdisc mq 0: dev enp10s0f0 root qdisc mq 0: dev enp10s0f1 root qdisc mq 0: dev enp8s0f0 root qdisc mq 0: dev enp8s0f1 root Насколько я понимаю для самого наса не должно быть каких-либо ограничений в скорости. Насчет RSS - попробую. UPD: Отключил RSS, теперь при отсутствии нагрузки, с помощью iperf получается протолкнуть около 1000 мбит/с одним TCP-соединением через один из адаптеров. Посмотрим какие результаты будут вечером с нагрузкой. Edited September 30, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
tartila Posted September 30, 2015 · Report post Шейперы отключать не пробовал. Используются автоматически создаваемые accel-ppp с настройками: down-limiter=tbf Насколько я понимаю для самого наса не должно быть каких-либо ограничений в скорости. Вы заблуждаетесь. Используя дисциплину с глобал-локом (tbf) и старым ядром - вы можете получить просадку глобально. В новых ядрах будет просаживаться скорость только на шейпируемых интерфейсах. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
NiTr0 Posted September 30, 2015 · Report post Еще вариант - pci-e работает в режиме х1... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
avb1987 Posted September 30, 2015 (edited) · Report post Судя по выводу lspci карточки работают в режиме 4x: LnkCap: Port #2, Speed 2.5GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <4us, L1 <64us LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- LnkCap: Port #0, Speed 2.5GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <4us, L1 <64us LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- Отключение RSS не помогло - при наличии нагрузки, больше чем 800-850 мбит/с выжать с одного порта на прием так и не выходит. Отключение шейперов не помогло, отключил шейперы в accel-ppp, перезагрузил сервер, сейчас стоят значения по-умолчанию вроде таких: qdisc pfifo_fast 0: dev ppp1284 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 Пробовал также отключать один из процессоров через /sys/... (это двухпроцессорная система), - не помогло. Вот еще настройки sysctl: net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.default.forwarding = 1 net.ipv4.conf.all.forwarding = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.all.disable_ipv6 = 1 net.core.netdev_max_backlog = 10000 kernel.hung_task_panic = 1 И настройки ethtool: /usr/sbin/ethtool -K enp8s0f0 tso off gso off gro off rx off tx off rxvlan off txvlan off /usr/sbin/ethtool -K enp8s0f1 tso off gso off gro off rx off tx off rxvlan off txvlan off /usr/sbin/ethtool -K enp10s0f0 tso off gso off gro off rx off tx off rxvlan off txvlan off /usr/sbin/ethtool -K enp10s0f1 tso off gso off gro off rx off tx off rxvlan off txvlan off /usr/sbin/ethtool -G enp8s0f0 rx 4096 tx 4096 /usr/sbin/ethtool -G enp8s0f1 rx 4096 tx 4096 /usr/sbin/ethtool -G enp10s0f0 rx 4096 tx 4096 /usr/sbin/ethtool -G enp10s0f1 rx 4096 tx 4096 В iptables только 3 правила, два делают NOTRACK для всего в raw/PREROUTING и raw/OUTPUT, и третее - в mangle/FORWARD: -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu На коммутаторе при тестировании показывает утилизацию порта на уровне 50%, т.е. как будто соединение реально работает в half-duplex, хотя если тестировать в обоих направлениях одновременно, то получается загрузить до 70%. К сожалению уже не знаю что и думать... Может ли влиять тип кабеля (Straight либо Crossover)? используется кросс. Edited September 30, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
avb1987 Posted September 30, 2015 (edited) · Report post Видимо я не единственный с этой проблемой, вот похожая тема, так же без решения: http://forum.nag.ru/forum/index.php?showtopic=61560. Наверное это особенность этих карточек. В таком случае, если вдруг кто-нибудь использует accel-ppp в linux с 10G интерфейсами. Можете рассказать, сколько вам удается пропустить трафика через такой сервер доступа? В частности сейчас хотим попробовать взять Intel EXPX9502CX4, а чуть позже X520-DA2. Edited September 30, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted October 1, 2015 · Report post Проверьте в другой ОС / другом железе. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
tartila Posted October 1, 2015 · Report post Видимо я не единственный с этой проблемой, вот похожая тема, так же без решения: http://forum.nag.ru/forum/index.php?showtopic=61560. Наверное это особенность этих карточек. В таком случае, если вдруг кто-нибудь использует accel-ppp в linux с 10G интерфейсами. Можете рассказать, сколько вам удается пропустить трафика через такой сервер доступа? В частности сейчас хотим попробовать взять Intel EXPX9502CX4, а чуть позже X520-DA2. Мне тоже кажется, что вы рано сложили ручки... Проверить энергосбережение не забыли в BIOS? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
kosmich7 Posted October 2, 2015 · Report post Видимо я не единственный с этой проблемой, вот похожая тема, так же без решения: http://forum.nag.ru/...howtopic=61560. Наверное это особенность этих карточек. Проблема вероятней всего не в картах, а в софте/железе. скорость download в пике достигает 900 мегабит через каждый адаптер, что опять таки не 1000. В какой/ие коммутатор/ы подключены оба линка ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
avb1987 Posted October 2, 2015 (edited) · Report post Проверить энергосбережение не забыли в BIOS? Intel SpeedStep отключил с самого начала, остальные настройки оставил по-умолчанию. Думал еще отключить C-State но не уверен что он как то может влиять на производительность в данном случае. В какой/ие коммутатор/ы подключены оба линка ? Все 4 порта включены в D-Link DGS-3627. Те что uplink - объединены в бондинг (LACP), те что downlink - работают как отдельные порты, на каждом порту своя часть клиентов. При этом uplink порты в одном влане с главным маршрутизатором и другими серверами, а downlink настроены как vlan trunk (т.е. находятся во всех вланах одновременно). Edited October 2, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
tartila Posted October 2, 2015 (edited) · Report post Думал еще отключить C-State но не уверен что он как то может влиять на производительность в данном случае. Обязательно отключить, перевести все в состояние perfomance. Даже самый паршивый realtek вытянет 980 MBit/s, а тут речь про Intel Pro. Edited October 2, 2015 by tartila Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
kosmich7 Posted October 2, 2015 · Report post Все 4 порта включены в D-Link DGS-3627. Ошибки, дропы на портах есть ? Покажите в момент теста когда "скорость download в пике достигает 900 мегабит через каждый адаптер" на длинке show utilization ports Графики с распределением трафика на портах Длинка покажите. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
nuclearcat Posted October 2, 2015 · Report post Если я не ошибаюсь, E1G42ETBLK - 82576 чипсет, который работает отлично. Тут почти однозначно дело не в карте. У меня на этом чипсете карта молола траффик "в полку". Только именно таких карт возможно сейчас и нет на максимальной нагрузке. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
avb1987 Posted October 4, 2015 (edited) · Report post В общем, в итоге получилось следующее: 1) Были отключены SpeedStep, C-States, C1E, PCI Express ASPM, различные странные оптимизации, VT, VT-d, SR-IOV. Оказалось, что Linux использует C-States не смотря на настройки BIOS при помощи драйвера intel_idle, так что отключить удалось только добавив параметр idle=halt к параметрам ядра. Это все позволило немного увеличить отзывчивость системы, и теперь порог в 880-900 мегабит достигается на каждом адаптере без особых проблем. 2) Судя по показаниям коммутатора (TX Load из show ports XX details), он отдает свой гигабит, т.к. в моменты тестирования tx load достигает 97-100%, но при этом nload показывает трафик в районе 880-900 мбит. Похоже что коммутатор считает 1 гбит это 1 000 000 000 бит а не 1 073 741 824. По поводу дропов в статистике, они есть но их немного (от единиц до десятков), они все в RX (т.е. в трафике получаемом коммутатором от сервера) и ростут не во время тестов и не постоянно. Вот например один из uplink портов (показываю именно его, т.к. на втором ошибок нет) Port number : 19 RX Frames TX Frames --------- --------- CRC Error 0 Excessive Deferral 0 Undersize 0 CRC Error 0 Oversize 0 Late Collision 0 Fragment 0 Excessive Collision 0 Jabber 0 Single Collision 0 Drop Pkts 1 Collision 0 Symbol Error 0 Buffer Full Drop 0 ACL Drop 0 Multicast Drop 0 VLAN Ingress Drop 0 CTRL+C ESC q Quit SPACE n Next Page p Previous Page r Refresh Это данные за 20 часов. Вот данные по загрузке из details во время теста DGS-3627:admin#show ports 20 details Command: show ports 20 details Port : 20 -------------------- Port Status : Link Up Description : nas1 uplink Hardware Type : Gigabits Ethernet MAC Address : 00-1E-58-D4-58-FF Bandwidth : 1000000Kbit Auto-Negotiation : Enabled Duplex Mode : Full Duplex Flow Control : Disabled MDI : Cross Address Learning : Enabled Loopback Mode : Disabled Last clear of Counter : 20 hours 38 mins ago BPDU Hardware Filtering Mode: Disabled Queuing Strategy : TX Load : 97/100, 954257224bits/sec, 89668packets/sec RX Load : 18/100, 176145456bits/sec, 36929packets/sec CTRL+C ESC q Quit SPACE n Next Page p Previous Page r Refresh Вот из utilization DGS-3627:admin#show utilization ports Command: show utilization ports Port TX/sec RX/sec Util Port TX/sec RX/sec Util ----- ---------- ---------- ---- ----- ---------- ---------- ---- 1 25900 55300 16 22 34300 43800 26 2 23067 27133 17 23 9133 4967 3 3 22833 32933 20 24 3700 1733 2 4 54067 29433 19 25 0 0 0 5 16000 12667 10 26 61800 61333 4 6 8233 11867 7 27 45133 37233 3 7 11467 13300 7 8 15000 15667 8 9 27933 54433 34 10 0 0 0 11 267 267 1 12 2667 2767 1 13 0 0 0 14 0 0 0 15 0 0 0 16 0 0 0 17 33 33 1 18 100 100 1 19 43133 69400 32 20 97200 31600 57 21 47133 43533 30 Таким образом проблема была в неправильных измерениях и энергосбережении. Всем огромное спасибо за комментарии, думаю на этом можно считать проблему решенной. Edited October 4, 2015 by avb1987 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
pppoetest Posted October 4, 2015 · Report post Похоже что коммутатор считает 1 гбит это 1 000 000 000 бит а не 1 073 741 824. Дык 1гигабит aka 1Gb и есть лярд бит, а то что ты хочешь называется гибибит ака 1Gib Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...