Страница 1 из 1
Freebsd 9 падения скорости
Добавлено: 2013-11-18 20:35:16
warzoni
Здравствуйте, не могу определить падения скорости.
Максимально выжимаем 800 мегабит, а должно быть 1.5 гигабита, реально lagg может филонить ?
Канал собран на lagg0 c двумя гигабитными интерфейсами.
Код: Выделить всё
lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=401bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
ether a0:36:9f:14:f2:26
media: Ethernet autoselect
status: active
laggproto lacp lagghash l2,l3,l4
laggport: igb3 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
laggport: igb2 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
Может быть из за высокого количества пакетов ? система не выжимает ?
Код: Выделить всё
input (Total) output
packets errs idrops bytes packets errs bytes colls
227325 0 0 168633880 223282 0 151230108 0
226764 0 0 168987711 221343 0 150338353 0
225223 0 0 166795469 221480 0 152404757 0
222980 0 0 164421312 217130 0 149916691 0
228052 0 0 172087088 222292 0 151399941 0
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 12:19:54
skeletor
А вы тюнили сетевой стек? Попробуйте включить jumbo frames, отключить TSO4, прибить жёстко дуплекс, возможно поможет.
Но скажу из опыта: когда-то давно сталкивался с похожей проблемой: lagg работал хреново, зато arrg на Solaris - просто отлично, на том же сервере. В итоге тогда в проблеме не разобрался, так как время поджимало и просто перешёл на Solaris.
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 14:53:32
warzoni
skeletor писал(а):А вы тюнили сетевой стек? Попробуйте включить jumbo frames, отключить TSO4, прибить жёстко дуплекс, возможно поможет.
Но скажу из опыта: когда-то давно сталкивался с похожей проблемой: lagg работал хреново, зато arrg на Solaris - просто отлично, на том же сервере. В итоге тогда в проблеме не разобрался, так как время поджимало и просто перешёл на Solaris.
А вы тюнили сетевой стек?
Да тюнил.
kern.hz="1000" - что включаю, что выключаю, разницы сильно нету.
Сейчас без поллинга карты работают.
Попробуйте включить jumbo frames
Это хорошо было-бы если бы его на другой стороне поддерживали.
Код: Выделить всё
interface: lagg0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
Но как видно там 1500.
отключить TSO4, прибить жёстко дуплекс
tso -
выключил проверю но не думаю что в нем трабла.
-
по поводу дуплекса не совсем понял.
ifconfig igb2
Код: Выделить всё
igb2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO>
ether a0:36:9f:14:f2:26
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
Код: Выделить всё
ifconfig igb3
igb3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO>
ether a0:36:9f:14:f2:26
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
тут и так full duplex ..
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:01:16
warzoni
Вот atop нагрузки по igb - когда убираю шейпер упираюсь в скорость и выше не в какую, а должно быть выше гигабита 1.5, с выключенным tso
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:08:42
warzoni
А вы тюнили сетевой стек?
Не все добавилось вот продолжения.
net.inet.ip.fw.dyn_buckets=59152
net.inet.ip.fw.dyn_max=500000
net.inet.icmp.icmplim=10
net.graph.maxdgram=5000000
net.graph.recvspace=5000000
kern.ipc.maxsockbuf=15500000
net.link.ether.inet.proxyall=1
net.inet.ip.redirect=0
kern.ipc.maxsockets=5000000
kern.ipc.nmbclusters=5000000
kern.maxfiles=204800
kern.maxfilesperproc=500000
kern.ipc.somaxconn=2024
#net.inet.tcp.reass.maxsegments=50000
kern.ipc.maxsockets=5000000
net.inet.tcp.sendbuf_max=5000000
net.inet.ip.dummynet.hash_size=60000
net.inet.tcp.tcbhashsize=5000
net.inet.ip.fw.curr_dyn_buckets=5000
net.inet.ip.dummynet.io_fast=1
net.inet.ip.dummynet.pipe_slot_limit=1000
net.inet.ip.dummynet.pipe_byte_limit=3048576
#net.link.lagg.default_use_flowid=0
net.inet.tcp.icmp_may_rst=0
net.inet.tcp.drop_synfin=1
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:30:50
skeletor
warzoni писал(а):
Это хорошо было-бы если бы его на другой стороне поддерживали.
Код: Выделить всё
interface: lagg0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
Но как видно там 1500.
На какой другой стороне? Куда кабель подключен? в свитч или прямо в другой хост? Жёстко прибить - это значит не autoselect, а вручную на сетевых выставить.
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:34:08
warzoni
skeletor писал(а):warzoni писал(а):
Это хорошо было-бы если бы его на другой стороне поддерживали.
Код: Выделить всё
interface: lagg0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
Но как видно там 1500.
На какой другой стороне? Куда кабель подключен? в свитч или прямо в другой хост? Жёстко прибить - это значит не autoselect, а вручную на сетевых выставить.
root@amt:~ # route get 'ip my default GW'
route to: xxx
destination: xxxx
mask: 255.255.255.248
interface: lagg0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
на другой стороне маршрутизатор отдаёт 1500. на 9000 mtu, разве можно мне поднимать ?
autoselect - окей зделаю.
Может ихнее оборудования не справляется, и не могут отдать 1.5 G ? вот только как их уличить в этом проверку делаю только с одной стороны...
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:38:47
skeletor
Возможно вы упираетесь во что-то другое. А вообще - попробуйте протестировать максимальную скорость между хостами через iperf/ttcp.
Можно ещё поиграться с lagg и сделать не lacp, а roundrobin что бы понять, что-то меняется или нет по скорости.
Уличить их можно только меряя скорость с обеих сторон.
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:41:01
warzoni
Выставил .
Код: Выделить всё
ifconfig igb2
igb2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO>
ether a0:36:9f:14:f2:26
media: Ethernet 1000baseT (1000baseT <full-duplex>)
status: active
ifconfig igb3
igb3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO>
ether a0:36:9f:14:f2:26
media: Ethernet 1000baseT (1000baseT <full-duplex>)
status: active
Можно ещё поиграться с lagg и сделать не lacp, а roundrobin
lacp думаю тут больше актуальнее чем roundrobin - тем более lacp работает с обоих сторон.
Вторая сторона говорит все ок у них, и в тупую морозятся тесты не могут дать тпа нету у них оборудования в нашей местности для тестов

Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 15:53:41
warzoni
Ситуация не меняется, единственное cpu немного разгрузил, зато поднялось на irq нагрузка
Даже чисто логически, 2 гигабита в агрегации , и 1 гигабит не выжать с агригации, бред какойто видать режут других причин не вижу.
максимальную скорость между хостами через iperf/ttcp
Да у меня клиенты это тест, убрал шейпер и вижу , так как их ну очень много

- а локальная сетевая - 10G - поэтому они могут грузить по самые не хочу...
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 16:20:08
skeletor
warzoni писал(а):
root@amt:~ # route get 'ip my default GW'
route to: xxx
destination: xxxx
mask: 255.255.255.248
interface: lagg0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
на другой стороне маршрутизатор отдаёт 1500. на 9000 mtu, разве можно мне поднимать ?
А с чего вы взяли, что на той стороне mtu 1500? route get показывает локальный mtu, а не удалённый. Попросите провайдера увеличить mtu, если возможно.
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 16:26:29
warzoni
skeletor писал(а):warzoni писал(а):
root@amt:~ # route get 'ip my default GW'
route to: xxx
destination: xxxx
mask: 255.255.255.248
interface: lagg0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
на другой стороне маршрутизатор отдаёт 1500. на 9000 mtu, разве можно мне поднимать ?
А с чего вы взяли, что на той стороне mtu 1500? route get показывает локальный mtu, а не удалённый. Попросите провайдера увеличить mtu, если возможно.
Я делаю get удалённого маршрутизатора по его ip получаю mtu его
Код: Выделить всё
To confirm the MTU used between two specific devices, use:
route get <destination_IP_address>
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 16:43:18
skeletor
Если хотите определить mtu, то вот примитивный вариант
http://gregalbrecht.com/2008/06/10/detecting-mtu/
А вот пример для команды get route, который показывает, что это не так:
сервер 1
Код: Выделить всё
# ifconfig em0
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9000
options=209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC>
ether 00:07:e9:3f:cf:9d
inet 10.1.5.5 netmask 0xffffff00 broadcast 10.1.5.255
inet6 fe80::207:e9ff:fe3f:cf9d%em0 prefixlen 64 scopeid 0x5
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
# route get 10.1.5.1
route to: 10.1.5.1
destination: 10.1.5.0
mask: 255.255.255.0
fib: 0
interface: em0
flags: <UP,DONE,PINNED>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 9000 1 0
сервер 2
Код: Выделить всё
$ ifconfig em0
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=4019b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
ether 00:22:64:89:9e:cf
inet 10.1.5.1 netmask 0xffff0000 broadcast 10.1.255.255
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
$ route get 10.1.5.5
route to: 10.1.5.5
destination: 10.1.0.0
mask: 255.255.0.0
interface: em0
flags: <UP,DONE>
recvpipe sendpipe ssthresh rtt,msec mtu weight expire
0 0 0 0 1500 1 0
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 16:48:11
warzoni
Окей, вы правда думаете поможет ? я думаю Jumbo Frames - актуальны на 10G а не на на таких как у меня скоростях..
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-19 17:08:07
skeletor
Советую проверить. Jumbo frames можно использовать и на Гигабите. А вот использование их на 100 мбит не сильно даст выиграть в скорости.
Если бы я знал, что это 100% поможет, я бы так и сказал. В вашем же случае нужно пробовать и пробовать и пробовать... разные советы.
Re: Freebsd 9 падения скорости
Добавлено: 2013-11-30 18:18:52
warzoni
Проблему решил.
Суть заключалось в том что igb не определяли автоматичиски
que - по CPU ( должно но не делало, причины кроются в
двух процессорных системах
, либо
ALTQ
как было замечено в списке рассылок. )
Код: Выделить всё
/*
** This will autoconfigure based on
** the number of CPUs if left at 0.
*/
static int igb_num_queues = 0;
TUNABLE_INT("hw.igb.num_queues", &igb_num_queues);
Поэтому надо было установить в ручную значения hw.igb.num_queues.
Re: Freebsd 9 падения скорости
Добавлено: 2013-12-04 17:18:58
skeletor
И какое значение вы выставили?
Re: Freebsd 9 падения скорости
Добавлено: 2013-12-05 12:33:37
skeletor
В сети рекомендуют ставить значение не больше 4: hw.igb.num_queues=4, и то, даже пишут, что лучше ставить 3.
Re: Freebsd 9 падения скорости
Добавлено: 2013-12-05 16:44:31
warzoni
Да все равно результата нету,позже отпишусь, от Lagg уходим, на 10G должны перейти. Думаю все стабилизируется сразу..
Re: Freebsd 9 падения скорости
Добавлено: 2014-11-19 18:01:13
loki636
Извините за некропостерство, но ifconfig lagg0 promisc решит проблему.
Re: Freebsd 9 падения скорости
Добавлено: 2014-11-19 18:33:36
Neus
Какую проблему?