ne-vlezay80 Опубликовано 24 июля, 2021 (изменено) · Жалоба ethtool -K $ext tso off gso off gro off можешь попробывать Изменено 24 июля, 2021 пользователем ne-vlezay80 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
1boris Опубликовано 25 июля, 2021 (изменено) · Жалоба 11 часов назад, ne-vlezay80 сказал: ethtool -K $ext tso off gso off gro off можешь попробывать Не помогло Может быть у вас всё работает, потому что вы делаете тест на одном физическом сервере? Я делаю тест между двумя хостами, которые подключаются к роутеру: A --> Router <-- B И ещё я похоже соврал с результатами тестов. Трафик упирается в 90к p/s Повесил шейпер на абонентские vlan`ы, всё отлично работает, но шейпится и внешка и локалка ifb мне нужен для того, чтобы шейпить только внешку Не поднимать же ради шейпера отдельный сервер... Изменено 25 июля, 2021 пользователем zervu1boris Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ne-vlezay80 Опубликовано 25 июля, 2021 · Жалоба 6 минут назад, zervu1boris сказал: Не помогло Может быть у вас всё работает, потому что вы делаете тест на одном физическом сервере? Я делаю тест между двумя хостами, которые подключаются к роутеру: A --> Router <-- B И ещё я похоже соврал с результатами тестов. Трафик упирается в 90к p/s Повесил шейпер на абонентские vlan`ы, всё отлично работает, но шейпится и внешка и локалка ifb мне нужен для того, чтобы шейпить только внешку Не поднимать же ради шейпера отдельный сервер... Можно интерфейс сделать отдельный для внешки Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
1boris Опубликовано 25 июля, 2021 (изменено) · Жалоба 24 минуты назад, ne-vlezay80 сказал: Можно интерфейс сделать отдельный для внешки У меня внешка приходит с разных vlan`ов Мне нужно шейпить трафик, который идёт к абонентам Даже если я повешу внешку на отдельный интерфейс на сетевой, то смогу шейпить только трафик, который идёт от абонентов Или есть ещё способы? Есть такая идея: Прокинуть vlan`ы с внешкой в netns, сделать маршрут до initial netns, и на интерфейсе между созданным netns и initial netns шейпить Но тогда у меня много вопросов: 1)Можно ли шейпить в netns? 2)Можно ли поднять bgp в netns ? 3)Не будет ли потери производительности? Или сделать наоборот, прокинуть абонентские vlan`ы в netns? Смысл идеи в том, чтобы создать виртуальный роутер, на котором будет крутиться или локалка или внешка Изменено 25 июля, 2021 пользователем zervu1boris Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ne-vlezay80 Опубликовано 25 июля, 2021 · Жалоба 21 минуту назад, zervu1boris сказал: 1)Можно ли шейпить в netns? 2)Можно ли поднять bgp в netns ? 3)Не будет ли потери производительности? 1) Да 2) Да (Можно для этого использовать bird) 3) Не должно Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 25 июля, 2021 · Жалоба 11 hours ago, zervu1boris said: У меня внешка приходит с разных vlan`ов Мне нужно шейпить трафик, который идёт к абонентам Даже если я повешу внешку на отдельный интерфейс на сетевой, то смогу шейпить только трафик, который идёт от абонентов Или есть ещё способы? Совсем не понял, а что мешает шейпить трафик на абонентов? Что мешает проклассифицировать его, напимер, тем же ipset? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
1boris Опубликовано 26 июля, 2021 (изменено) · Жалоба На роутере задействован один физический интерфейс eth0 eth0.100 и eth0.200 - аплинки eth0.500 - eth0.600 - абоненты Если шейпить на абонентских интерфейсах (на абонентских vlan`ах), то одновременно будет шейпиться и внешка и локалка. Если задействовать два физических интерфейса: на eth0 повесить аплиннки, а на eth1 повесить абонентов, то на eth0 можно будет шейпить только трафик, который идёт от абонентов, а на eth1 только трафик, который идёт к абонентам. Опять же локалка будет попадать под шейпер. Как можно проклассифицировать трафик, чтоб можно было шейпить только внешку? Мне удалось поднять бордер на netns: 1)Пробросил vlan`ы аплинков в netns 2)Поднял 2 veth (один в глобальном netns, второй в виртуальном) 3)Настроил маршруты 4)Поднял bgp на виртуальном netns Получилось так: внешка <---> бордер на netns <---> глобальный netns с абонентскими вланами <---> абоненты Теперь можно шейпить трафик в бордере netns на veth интерфейсе Через ifb проходил максимум 1 гбит/сек Через netns проходит 6гбит/сек @ne-vlezay80 У вас тест iperf показывает 12 гбит/сек, у меня показывает 6 гбит/сек С чем это может быть связано? Дело в железе? Изменено 26 июля, 2021 пользователем zervu1boris Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ne-vlezay80 Опубликовано 26 июля, 2021 (изменено) · Жалоба 2 часа назад, zervu1boris сказал: У вас тест iperf показывает 12 гбит/сек, у меня показывает 6 гбит/сек Это уже плохо... Где мерял? 2 часа назад, zervu1boris сказал: С чем это может быть связано? Дело в железе? Похоже. А ты замерь скорость на localhost так: iperf3 -s iperf3 -c 127.0.0.1 У меня процессор AMD FX 6300 Изменено 26 июля, 2021 пользователем ne-vlezay80 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
1boris Опубликовано 26 июля, 2021 (изменено) · Жалоба 1 час назад, ne-vlezay80 сказал: Это уже плохо... Где мерял? Похоже. А ты замерь скорость на localhost так: iperf3 -s iperf3 -c 127.0.0.1 У меня процессор AMD FX 6300 На localhost тоже 6гбит/сек У меня два процессора AMD Opteron 6172 Сделал такой же тест на древнем Core 2 Duo CPU E8400, он показал 20гбит/сек Сделал тест на сервере с 4мя процессорами Xeon X7560, показывает 27гбит/сек Почему же на AMD так мало показывает Изменено 26 июля, 2021 пользователем zervu1boris Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ne-vlezay80 Опубликовано 26 июля, 2021 · Жалоба 27 минут назад, zervu1boris сказал: AMD Opteron 6172 Тагда надо разганять... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
1boris Опубликовано 26 июля, 2021 (изменено) · Жалоба 16 минут назад, ne-vlezay80 сказал: Тагда надо разганять... На всех ядрах установлена максимальная частота 2.1ггц Есть у меня второй такой же сервер с Opteron 6172, на нём поднят веб Сделал такой же тест, 8гбит/сек показывает Есть статья из 2010 года, где на таком же железе 10Г гоняютhttps://nag.ru/material/18697 Изменено 26 июля, 2021 пользователем zervu1boris Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 26 июля, 2021 · Жалоба 5 часов назад, zervu1boris сказал: Есть статья из 2010 года, где на таком же железе 10Г гоняют Так в статье тупая маршрутизация, БРАС функционал это мусорное железо легко до 1 гига и провалит. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
1boris Опубликовано 28 июля, 2021 (изменено) · Жалоба Поменял сервер, теперь 28 гбит/сек между netns Проблема с ifb так и не решилась, но так как я перешёл на netns, то ifb теперь не нужен Всем спасибо за помощь [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 3.27 GBytes 28.1 Gbits/sec 0 1.31 MBytes [ 4] 1.00-2.00 sec 3.29 GBytes 28.3 Gbits/sec 0 1.31 MBytes [ 4] 2.00-3.00 sec 3.28 GBytes 28.2 Gbits/sec 0 1.31 MBytes [ 4] 3.00-4.00 sec 3.28 GBytes 28.2 Gbits/sec 0 1.31 MBytes [ 4] 4.00-5.00 sec 3.29 GBytes 28.2 Gbits/sec 0 1.31 MBytes [ 4] 5.00-6.00 sec 3.27 GBytes 28.1 Gbits/sec 0 1.31 MBytes [ 4] 6.00-7.00 sec 3.28 GBytes 28.2 Gbits/sec 0 1.31 MBytes [ 4] 7.00-8.00 sec 3.29 GBytes 28.2 Gbits/sec 0 1.31 MBytes [ 4] 8.00-9.00 sec 3.28 GBytes 28.2 Gbits/sec 0 1.31 MBytes [ 4] 9.00-10.00 sec 3.28 GBytes 28.2 Gbits/sec 0 1.31 MBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-10.00 sec 32.8 GBytes 28.2 Gbits/sec 0 sender [ 4] 0.00-10.00 sec 32.8 GBytes 28.2 Gbits/sec receiver На всякий случай оставлю инструкцию как я настроил netns, может кому-то пригодится... Схема прохождения трафика следующая: аплинки <---> netns bras <---> глобальный netns <---> абоненты 1)Создал netns под названием bras ip netns add bras 2)Создал два виртуальных интерфейса virt0 и virt1 ip link add dev virt0 type veth peer name virt1 3)Перенёс интерфейс virt1 в netns bras, присвоил ему ip-адрес и поднял его ip link set virt1 netns bras ip -n bras addr add 10.0.0.1/30 dev virt1 ip -n bras link set dev virt1 up 4)Присвоил ip-адрес интерфейсу virt0 в глобальном netns и поднял его ip addr add 10.0.0.2/30 dev virt0 ip link set virt0 up 5)Перенёс в netns bras интерфейсы аплинков ip link set dev eth0.100 netns bras ip link set dev eth0.200 netns bras 6)Присвоил интерфейсам аплинков ip-адреса и поднял их ip -n bras addr add 1.1.1.1/30 dev eth0.100 ip -n bras addr add 2.2.2.1/30 dev eth0.200 ip -n bras link set dev eth0.100 up ip -n bras link set dev eth0.200 up Предполагается, что абоненты находятся в подсети 10.10.10.0/24 7)Добавил статический маршрут в глобальный netns ip route add default via 10.0.0.1 8)Добавил статический маршрут в netns bras ip netns exec bras ip route add 10.10.10.0/24 via 10.0.0.2 Теперь в netns bras можно поднять bgp и nat. В моём случае все ip-адреса белые, в netns bras поднят bgp, nat не используется. Шейпить трафик нужно на интерфейсах virt0 и virt1. Изменено 28 июля, 2021 пользователем zervu1boris Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vop Опубликовано 28 июля, 2021 · Жалоба Ну вот сделал по людски, и все встало на свои места. :) Теперь все это засунуть в ifup hook script, и можно жить спокойно :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...