Jump to content

Распределение прерываний сетевой карты


Recommended Posts

Помогите решить проблему. Есть сервер: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz,  Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01). 

На нём вращается биллинг, шейпер. За ним около 1к клиентов (pptp). В моменты пик (а то и ранее), очень высокий уровень system interrupts и не равномерно по ядрам. Оптимизации по типу smp_afinity, ethtool -K -G и так далее выполнены, но эффекта особого не дают. На сетевой карте, наблюдаются RX mcast потери. Сетевуха одна, на ней вращается порядка 20 вланов. 

Edited by Sashok1985
Link to post
Share on other sites

82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01).



На нём вращается биллинг, шейпер. За ним около 1к клиентов (pptp). В моменты пик (а то и ранее), очень высокий уровень system interrupts и не равномерно по ядрам. Оптимизации по типу smp_afinity, ethtool -K -G и так далее выполнены, но эффекта особого не дают. На сетевой карте, наблюдаются RX mcast потери. Сетевуха одна, на ней вращается порядка 20 вланов.

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

Link to post
Share on other sites
45 минут назад, KaYot сказал:

В конце концов окажется что под pptp имелось в виду pppoe.

да лучше PPPoE чем PPTP, который уже умер

Link to post
Share on other sites
2 часа назад, KaYot сказал:

В конце концов окажется что под pptp имелось в виду pppoe.

))) опечатался. pppoe

 

3 часа назад, masters сказал:

Что за ОС? 

Irqbalance попробуйте, если не фря.

Дрова интела последние поставьте. 

Centos 7. Irqbalance в пики не справляется. Одно ядро всеравно сваливается в полку.

Edited by Sashok1985
Link to post
Share on other sites
6 минут назад, Sashok1985 сказал:

))) опечатался. pppoe

 

Centos 7. Irqbalance в пики не справляется. Одно ядро всеравно сваливается в полку.

PPPoE не раскидывается по ядрам, так и должно быть. Странно что не загуглили, таких тем сотни на каждом форуме..

RPS поможет вам.

Link to post
Share on other sites
6 минут назад, Sashok1985 сказал:

))) опечатался. pppoe

 

Centos 7. Irqbalance в пики не справляется. Одно ядро всеравно сваливается в полку.

 

Не удивительно, раз PPPoE. Очереди у Вас нормально по ядрам раскидываются. Проблема в том, что интеловские драйвера насыпают все PPPoE пакеты в одну очередь, т.к. не видят в них IP. Вам надо раскидать их по очередям для начала.

Link to post
Share on other sites
В 16.03.2018 в 23:08, KaYot сказал:

PPPoE не раскидывается по ядрам, так и должно быть. Странно что не загуглили, таких тем сотни на каждом форуме..

RPS поможет вам.

Оптимизации по типу smp_afinity, ethtool -K -G и так далее выполнены, но эффекта особого не дают. В том числе "/sys/class/net/eth0/queues/rx-0/rps_cpus"  также не дают ничего толкового. Как бы не распределял, одно ядро всегда почти в полку.

В 16.03.2018 в 23:11, masters сказал:

 

Не удивительно, раз PPPoE. Очереди у Вас нормально по ядрам раскидываются. Проблема в том, что интеловские драйвера насыпают все PPPoE пакеты в одну очередь, т.к. не видят в них IP. Вам надо раскидать их по очередям для начала.

Уточните пожалуйста, что вы имеете в виду? Раскидать по очередям. smp_afinity и rps_cpus или что-то ещё?

Link to post
Share on other sites

Проверьте собран ли pppoe с поддержкой кернел моде? И выведите нат на отдельную машинку от pppoe, удивитесь на сколько много у вас появится свободных ресурсов на обеих.

Link to post
Share on other sites

i7-3770 - это 4 процессора ( без ГипперТрединга ), 10г на ней шуршать будет, вот только я не знаю, выжмите ли вы с неё все.

желательно 8

 

 

21 минуту назад, graysilver сказал:

Проверьте собран ли pppoe с поддержкой кернел моде? И выведите нат на отдельную машинку от pppoe, удивитесь на сколько много у вас появится свободных ресурсов на обеих.

 

это на какой ОС?

 

 

 

83d3a530-d708-49a8-8712-c72214b18dca.png

Edited by pashaumka
Link to post
Share on other sites
В 16.03.2018 в 23:11, masters сказал:

 

Не удивительно, раз PPPoE. Очереди у Вас нормально по ядрам раскидываются. Проблема в том, что интеловские драйвера насыпают все PPPoE пакеты в одну очередь, т.к. не видят в них IP. Вам надо раскидать их по очередям для начала.

подскажи, как... сам хочу перепроверить

Link to post
Share on other sites
3 hours ago, pashaumka said:

это на какой ОС?

Linux

Если включено, то у скорее всего у вас проблема через частое переключение между задачами. Вынос ната отдельно от браса в нашем случаи освободил 70% ресурсов.

Link to post
Share on other sites
8 минут назад, graysilver сказал:

Linux

Если включено, то у скорее всего у вас проблема через частое переключение между задачами. Вынос ната отдельно от браса в нашем случаи освободил 70% ресурсов.

 

так как разнести прерывания для PPPoE по очередям?

Link to post
Share on other sites
В 16.03.2018 в 23:08, KaYot сказал:

RPS поможет вам.

 

1 минуту назад, pashaumka сказал:

так как разнести прерывания для PPPoE по очередям?

 

Link to post
Share on other sites
16 минут назад, pashaumka сказал:

 

так как разнести прерывания для PPPoE по очередям?

сами прерывания - никак.

а вот вынести оработку из контекста прерывания в воркеры - RPS.
 

echo 0f >/sys/class/net/eth1/queues/rx-0/rps_cpus
echo 0f >/sys/class/net/eth1/queues/rx-1/rps_cpus
echo 0f >/sys/class/net/eth1/queues/rx-2/rps_cpus
echo 0f >/sys/class/net/eth1/queues/rx-3/rps_cpus

ессно, отключить HT (от него в роутинге только вред - кеш вымывает) и задать 4 очереди.

Link to post
Share on other sites
4 минуты назад, NiTr0 сказал:

сами прерывания - никак.

а вот вынести оработку из контекста прерывания в воркеры - RPS.
 


echo 0f >/sys/class/net/eth1/queues/rx-0/rps_cpus
echo 0f >/sys/class/net/eth1/queues/rx-1/rps_cpus
echo 0f >/sys/class/net/eth1/queues/rx-2/rps_cpus
echo 0f >/sys/class/net/eth1/queues/rx-3/rps_cpus

ессно, отключить HT (от него в роутинге только вред - кеш вымывает) и задать 4 очереди.

 

ну у меня так и есть

 

#Enable Receive Packet Steering (RPS)
/bin/echo ff > /sys/class/net/eth2/queues/rx-0/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-1/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-2/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-3/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-4/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-5/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-6/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-7/rps_cpus

Link to post
Share on other sites

ну то да, все пакеты будут падать в одну очередь прерывания, но по ядрам нагрузка будет размазываться равномерно.

Link to post
Share on other sites
2 часа назад, pashaumka сказал:

 

ну у меня так и есть

 

#Enable Receive Packet Steering (RPS)
/bin/echo ff > /sys/class/net/eth2/queues/rx-0/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-1/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-2/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-3/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-4/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-5/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-6/rps_cpus
/bin/echo ff > /sys/class/net/eth2/queues/rx-7/rps_cpus

А почему Вы указываете маску процессора (ff) на все ядра? Какой тогда смысл от такого разброса? 

Link to post
Share on other sites
19 минут назад, Sashok1985 сказал:

А почему Вы указываете маску процессора (ff) на все ядра? Какой тогда смысл от такого разброса? 

никогда не задумывался...   чесслово

быть кто-то подскажет, как правильнее?

01

02

04

08

10

20

40

80

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By hardware_all
      Продам CPU Intel XEON для серверів
       
      Intel XEON E5620 2.4GHz Quad Core 12M Socket 1366 LGA1366  (Step Code: SLBV4)    
      250грн 
      [4]
       
      Intel XEON E5520 Quad Core 2.26Ghz 8Mb CPU Processor H505J (Step Code: SLBFD)    
      250грн 
      [1]
       
      Intel XEON X5660 2.8GHz 6-Core 12MB Cache 6.4GT/s LGA1366  (Step Code: SLBV6)
      300грн      
      [6]
       
      Intel XEON  X5550 2.66 GHz Quad-Core 4C 8MB CPU Processor (Step Code: SLBF5) 
      250грн 
      [1]
      Intel XEON X5570 2.93 GHz Quad-Core 8MB 6.4 GT/s Socket LGA1366 (Step Code: SLBF3) 
      250грн 
      [1]
      Intel XEON 3.067GHz/0.512/533MHz Socket 604 (Step Code: SL6VP)    
      200грн 
      [2]

      Intel Pentium 4 (Northwood)   2.66GHz   533MHz   512KB    Socket 478 (Step Code: SL7PE)
      100грн     
      [12]
       
      Intel  XEON E5-2670  2.6 GHz  8 Core 20MB 8GT/s 115W (Step Code: SR0KX) 
      300грн  
      [4]
          
      Intel  XEON E5-2680 V2  2.80GHZ 10-CORE 25MB 115W (Step Code: SR1A6)
      400грн  
       [1]
    • By hardware_all
      Продам  Ethernet Network Adapter  Intel X520-SR2 10GB 2ports  (E10G42BFSR)
      PCI Express x 8
      2 Ports x 10Gbps
      Product Code  E10G42BFSR
      Low Profile
      Без SFP's
       
      600грн
       




    • By fikuronima
      Intel® Xeon® Processor X5450
      12M Cache, 3.00 GHz, 1333 MHz FSB
       
      Сокет -771.
      Готовый для установки в сокет 775. Переходник наклеен, пропилы сделаны. 
      Цена - 499 грн.
       


    • By kolomiets
      Продано
       
      Сервер Intel (SR2600URBRP)
      Процесор: Intel Quad-Core Xeon E5520. 2.26 ГГц
      Привод: DVD RW samsung SN-S083C
      Оперативная память: DIMM DDR3 4 GB 1333 MHz x 3 = 12Gb
      Цена 1500$, торг
      тел. 063930###2 Константин
    • By Гриша
      Продам SFP:
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 20km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 10G 1310 10km HUAWEI - 1шт
      SFP+ 1G 1310 WDM 10km 6COM - 1шт
      SFP 1G 850nm 300m CISCO - 1шт
      SFP 1G 850nm 300m CISCO - 1шт
      SFP+ 10G 850nm 300m INTEL - 1шт
      SFP+ 10G 850nm 300m INTEL - 1шт
      SFP+ 10G 850nm 300m INTEL - 1шт
       
      Ціна, фото по посиланню: 
      https://docs.google.com/spreadsheets/d/1qgYDF0iqjyv2IG6wO5O0O4fYSllWILm1Pj4khu_WCBo/edit#gid=0
      Торг доречний
×
×
  • Create New...