Перейти к содержимому
Калькуляторы

lagg em странное распределение пакетов

Добрый день коллеги,

 

Имеется NAS FreeBSD 8.2-RELEASE amd64, 2шт em lagg0 и 2шт igb lagg1, драйвера стандартные, все воткнуто в 1 свич.

Наблюдаю странное распределение пакетов на сетевых картах em

 

netstat -w1 -I em0
           input          (em0)           output
  packets  errs idrops      bytes    packets  errs      bytes colls
     5948     0     0    4265616         26     0      39156     0
     8349     0     0    8049113         37     0      47270     0
     7320     0     0    6670766         28     0      40989     0
     7330     0     0    6226815         30     0      41665     0
     6709     0     0    5063275         28     0      42168     0
     8023     0     0    7242285         31     0      39550     0

netstat -w1 -I em3
           input          (em3)           output
  packets  errs idrops      bytes    packets  errs      bytes colls
       95     0     0     125853      11858     0    9475684     0
      170     0     0     238940      10548     0    6714388     0
      214     0     0     295657      10994     0    7317887     0
      307     0     0     440880      12093     0    8041850     0
      297     0     0     424298       9592     0    6329843     0
      357     0     0     498102       9870     0    5920070     0

 

в тоже время на igb картах

 

netstat -w1 -I igb0
           input         (igb0)           output
  packets  errs idrops      bytes    packets  errs      bytes colls
     4277     0     0     519062       6749     0    9399101     0
     4774     0     0     597904       7568     0   10649567     0
     4530     0     0     575183       7095     0   10149349     0
     2990     0     0     436238       4440     0    5752714     0

netstat -w1 -I igb1
           input         (igb1)           output
  packets  errs idrops      bytes    packets  errs      bytes colls
    10017     0     0   12822283       4866     0    2606041     0
     6740     0     0    7829829       4493     0    2705508     0
     9196     0     0   11487842       4664     0    2659089     0
     6683     0     0    7880690       3880     0    2491005     0
     8273     0     0   10056845       4160     0    2653204     0

 

vmstat -i

 

interrupt                          total       rate
irq1: atkbd0                           6          0
irq16: ehci0                       13148          1
irq19: atapci0                     33046          3
irq23: ehci1                       13143          1
cpu0: timer                     17407936       1999
irq256: igb0:que 0              16042787       1843
irq257: igb0:que 1                    54          0
irq258: igb0:que 2                    10          0
irq259: igb0:que 3                     7          0
irq260: igb0:link                      2          0
irq261: igb1:que 0              31038066       3565
irq262: igb1:que 1                 26509          3
irq263: igb1:que 2                 22948          2
irq264: igb1:que 3                105848         12
irq265: igb1:link                      3          0
irq276: em0:rx 0                21058538       2419
irq277: em0:tx 0                  145159         16
irq278: em0:link                       1          0
irq285: em3:rx 0                  851528         97
irq286: em3:tx 0                24393074       2802
irq287: em3:link                       1          0
cpu1: timer                     17407615       1999
cpu3: timer                     17407728       1999
cpu2: timer                     17407688       1999
Total                          163374845      18770

 

Тюнинг

 

cat /boot/loader.conf 
hw.em.rxd=4096
hw.em.txd=4096
hw.igb.rxd=4096
hw.igb.txd=4096
hw.igb.max_interrupt_rate=32000
hw.em.max_interrupt_rate=32000

net.link.ifqmaxlen=10240
net.isr.defaultqlimit=4096
net.isr.maxthreads=4

cat /etc/sysctl.conf 
dev.em.0.rx_int_delay=200
dev.em.0.tx_int_delay=200
dev.em.0.rx_abs_int_delay=4000
dev.em.0.tx_abs_int_delay=4000
dev.em.0.rx_processing_limit=4096

dev.em.1.rx_int_delay=200
dev.em.1.tx_int_delay=200
dev.em.1.rx_abs_int_delay=4000
dev.em.1.tx_abs_int_delay=4000
dev.em.1.rx_processing_limit=4096

dev.em.2.rx_int_delay=200
dev.em.2.tx_int_delay=200
dev.em.2.rx_abs_int_delay=4000
dev.em.2.tx_abs_int_delay=4000
dev.em.2.rx_processing_limit=4096

dev.em.3.rx_int_delay=200
dev.em.3.tx_int_delay=200
dev.em.3.rx_abs_int_delay=4000
dev.em.3.tx_abs_int_delay=4000
dev.em.3.rx_processing_limit=4096

dev.igb.0.rx_processing_limit=4096
dev.igb.1.rx_processing_limit=4096
dev.igb.2.rx_processing_limit=4096
dev.igb.3.rx_processing_limit=4096

net.graph.maxdgram=8388608
net.graph.recvspace=8388608
net.route.netisr_maxqlen=4096
net.inet.ip.intr_queue_maxlen=4096
kern.ipc.nmbclusters=400000
kern.ipc.maxsockbuf=83886080
kern.maxfiles=204800
kern.maxfilesperproc=200000
kern.ipc.maxsockets=204800

 

Как понимать такое поведение на карточках em? По идее пакеты должны распередятся равномерно между картами 50/50 исходящие/входящие.

Изменено пользователем ip0203

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Могу предположить, что по ем у Вас ходит PPPoE? Тогда картина предельно ясна...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

наоборот PPPоЕ приходит на lagg1, lagg0 аплинк - на нем нет ни вланов ни PPPoE

Изменено пользователем ip0203

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

НАТ?

Дело в том, что обычно разделение происходит на основе пар, в т.ч. IP и/или МАС адресов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.