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

FreeBSD периодически виснет discard frame w/o packet header

Здравствуйте!

У нас стоит сервер на Freebsd 7.4 STABLE, железо: Dell 710 (2x Xeon E5540 2.53 Ghz), 8 гиг. оперативки.

Сетевые - встроенная на 4 порта bce (Broadcom NetXtreme II BCM5709), дополнительно вставлена 2-х портовая Intel igb.

 

Изначально схема подключения сетевых была такая:

1. igb0 - внешний линк

2. bce1 - линк в городскую сеть

3. bce2 - линк между сервером и биллингом

 

На сервере был поднят IPFW NAT, MPD 5.

Клиенты подключались по pptp. Онлайн около 3х тысяч, трафик - 400 мбит/с. В качестве биллинга был UTM5.

НАС сервер работал нормально, никаких проблем не было.

 

Несколько дней назад перешли на BGbilling. Так же получили пул внешних адресов, и решили отказаться от НАТа.

На НАС сервере убрали правила файрвола отвечающие за NAT. Абонентам адреса начали выдавать из пула. Всё заработало, но с разной периодичностью сервер НАС стал отваливаться. Причем не обязательно в часы пик. Сервер мог зависнуть ночью, когда онлайн маленький и трафика тоже мало. В логах последняя запись была: bce1: discard frame w/o packet header.

 

Никаких изменений на сервере больше не делали. Только убрали НАТ (сервер наоборот должен был разгрузиться), и начали абонентам выдавать адреса динамически из пула (ранее в УТМ каждому абоненту прописывали локальный адрес для НАТа).

 

Вчера попробовали линк в городскую сеть перенести с bce1 на igb1. Но сервер всё равно завис, правда в логах уже писало: bce2: discard frame w/o packet header.

Трафик на bce2 - минимальный, там только обмен между НАС и биллингом.

 

Кто нибудь сталкивался с подобным?

Подскажите что ещё можно предпринять?

 

cat /boot/loader.conf

### intel driver
if_igb_load="YES"
hw.igb.rxd=4096
hw.igb.txd=4096
hw.igb.enable_aim=0
hw.igb.low_latency=1000
hw.igb.ave_latency=2000
hw.igb.bulk_latency=4000
hw.igb.rx_process_limit=100
hw.igb.fc_setting=0
hw.igb.num_queues=0
hw.igb.lro=0

# mem for kernel
vm.kmem_size=3G
kern.hz=4000

### network
kern.ipc.nmbclusters="524288"
kern.ipc.maxsockets="524288"
net.graph.maxalloc="327680"
net.graph.maxdata="327680"
net.graph.recvspace="128000"
net.inet.tcp.tcbhashsize=32000
kern.ipc.maxpipekva="32000000"
kern.ipc.maxsockbuf=1048576
net.inet.tcp.tcbhashsize="4096"
kern.ipc.somaxconn=300000

#onther
kern.maxfiles="409600"
kern.maxfilesperproc="400000"
kern.maxusers="2048"
kern.maxvnodes=300000

 

cat /etc/sysctl.conf

## ipfw
net.inet.ip.fw.verbose=0
net.inet.ip.fw.debug=0
net.inet.ip.fw.enable=1
net.inet.ip.fw.dyn_max=65535
net.inet.ip.fw.dyn_buckets=4096
### /// otvet na zakriti port
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
#### 
net.inet.ip.fw.one_pass=0
net.isr.direct=1
net.inet.ip.fastforwarding=1
####
net.inet.tcp.syncookies=0
net.inet.tcp.nolocaltimewait=1
net.inet.tcp.recvbuf_auto=1
kern.ipc.maxsockbuf=26214400
net.inet.tcp.maxtcptw=40960
net.inet.icmp.icmplim=0
net.local.stream.recvspace=65535
net.local.stream.sendspace=65535
net.inet.ip.dummynet.io_fast=1
net.inet.ip.dummynet.hash_size=10240
net.inet.tcp.sendspace=655360
net.inet.tcp.recvspace=655360
net.inet.tcp.sendbuf_max=26777216
net.inet.tcp.recvbuf_max=26777216
net.inet.tcp.slowstart_flightsize=54
net.inet.ip.intr_queue_maxlen=512
net.route.netisr_maxqlen=512
#### igb
dev.igb.0.enable_aim=0
dev.igb.0.flow_control=0
dev.igb.0.rx_processing_limit=2048
dev.igb.1.enable_aim=0
dev.igb.1.flow_control=0
dev.igb.1.rx_processing_limit=2048

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


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

выкинь ты нах этот брудком и поставь интел.....

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


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

Есть в запасе карта em, завтра поменяю на неё.

Но поможет ли? Смущает то что при такой же нагрузке, да еще плюс НАТ, броадкомы отрабатывали нормально, а теперь сервак виснет.

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


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

если трафик - 400 мбит/с. можно разрулить сеть виланами и на одной сетевухе.....

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

ЗЫ: как говорил жаб есть 2 типа сетевых: от интела и другое прочее гавно

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


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

Убрали карты bce.

Теперь система уходит в kernel panic вообще без сообщения в логе :(

Может попробовать собрать ядро без НАТа, файрвола?

Какие параметры оставить в ядре если нужен только mpd+шейпинг? Клиенты используют шифрование.

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


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

Систему до stable обновили?

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


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

Систему до stable обновили?

он в первом посту написал....

 

mpd 5.3+pf+pf-nat+ng_car

 

вот таких два тазика собрал я себе на коленке....особо ничего не тюнил некогда было....

Как то живут они себе в автономке...по 400 мегабит ната и не ната прожовывают только в путь....

 

vpn# dmesg | grep Intel

CPU: Intel(R) Core(TM) i7 CPU         930  @ 2.80GHz (2800.01-MHz K8-class CPU)
 Origin = "GenuineIntel"  Id = 0x106a5  Family = 6  Model = 1a  Stepping = 5
em0: <Intel(R) PRO/1000 Network Connection 7.0.5> port 0xdc00-0xdc1f mem 0xfbce0000-0xfbcfffff,0xfbcdc000-0xfbcdffff irq 16 at device 0.0 on pci6
em1: <Intel(R) PRO/1000 Network Connection 7.0.5> port 0xec00-0xec1f mem 0xfbde0000-0xfbdfffff,0xfbddc000-0xfbddffff irq 17 at device 0.0 on pci7
atapci0: <Intel ICH10 SATA300 controller> port 0xcc00-0xcc07,0xc880-0xc883,0xc800-0xc807,0xc480-0xc483,0xc400-0xc40f,0xc080-0xc08f irq 19 at device 31.2 on pci0
atapci1: <Intel ICH10 SATA300 controller> port 0xbc00-0xbc07,0xb880-0xb883,0xb800-0xb807,0xb480-0xb483,0xb400-0xb40f,0xb080-0xb08f irq 19 at device 31.5 on pci0

 

uname -a
FreeBSD vpn1.xzxz.ru 7.3-STABLE-201010 FreeBSD 7.3-STABLE-201010 #0: Mon Mar 21 16:53:20 MSK 2011     odmin@vpn1.xzxz.ru:/usr/src/sys/amd64/compile/VPNi7new  amd64

 

cpu             HAMMER
ident           VPNi7new

# To statically compile in device wiring instead of /boot/device.hints
#hints          "GENERIC.hints"         # Default places to look for devices.

makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols

options         SCHED_ULE               # ULE scheduler
options         PREEMPTION              # Enable kernel thread preemption
options         INET                    # InterNETworking
#options        INET6                   # IPv6 communications protocols
options         SCTP                    # Stream Control Transmission Protocol 
options         FFS                     # Berkeley Fast Filesystem
options         SOFTUPDATES             # Enable FFS soft updates support
#options        UFS_ACL                 # Support for access control lists
options         UFS_DIRHASH             # Improve performance on big directories
options         UFS_GJOURNAL            # Enable gjournal-based UFS journaling
options         MD_ROOT                 # MD is a potential root device
#options        NFSCLIENT               # Network Filesystem Client
#options        NFSSERVER               # Network Filesystem Server
#options        NFSLOCKD                # Network Lock Manager
#options        NFS_ROOT                # NFS usable as /, requires NFSCLIENT
options         MSDOSFS                 # MSDOS Filesystem
options         CD9660                  # ISO 9660 Filesystem
options         PROCFS                  # Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                # Pseudo-filesystem framework
options         GEOM_PART_GPT           # GUID Partition Tables.
options         GEOM_LABEL              # Provides labelization
options         COMPAT_43TTY            # BSD 4.3 TTY compat [KEEP THIS!]
options         COMPAT_IA32             # Compatible with i386 binaries
options         COMPAT_FREEBSD4         # Compatible with FreeBSD4
options         COMPAT_FREEBSD5         # Compatible with FreeBSD5
options         COMPAT_FREEBSD6         # Compatible with FreeBSD6
options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
options         KTRACE                  # ktrace(1) support
options         STACK                   # stack(9) support
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         P1003_1B_SEMAPHORES     # POSIX-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         ADAPTIVE_GIANT          # Giant mutex is adaptive.
options         STOP_NMI                # Stop CPUS using NMI instead of IPI
options         AUDIT                   # Security event auditing
#options        KDTRACE_FRAME           # Ensure frames are compiled in
#options        KDTRACE_HOOKS           # Kernel DTrace hooks
options         INCLUDE_CONFIG_FILE     # Include this file in kernel


options         SMP                     # Symmetric MultiProcessor Kernel

options NETGRAPH
options NETGRAPH_ETHER
options NETGRAPH_IFACE
options NETGRAPH_TEE
options NETGRAPH_UI
options NETGRAPH_VJC
options NETGRAPH_TCPMSS
#options NETGRAPH_MPPC_ENCRYPTION
options NETGRAPH_BPF
options NETGRAPH_PPTPGRE
options NETGRAPH_PPP
options NETGRAPH_SOCKET
options NETGRAPH_NAT
options NETGRAPH_NETFLOW
options NETGRAPH_SPLIT
options NETGRAPH_KSOCKET
options NETGRAPH_CISCO
options NETGRAPH_ECHO
options NETGRAPH_FRAME_RELAY
options NETGRAPH_HOLE
options NETGRAPH_LMI
options NETGRAPH_RFC1490
options NETGRAPH_TTY
options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_PRIQ
options ALTQ_NOPCC
#options KVA_PAGES=512
device pf
device pflog
device pfsync

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

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


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

ЗЫ: как говорил жаб есть 2 типа сетевых: от интела и другое прочее гавно

 

Пычему это "говорил" ? Я жив и продолжаю так говорить. ;-)

 

Убрали карты bce.

Теперь система уходит в kernel panic вообще без сообщения в логе :(

Может попробовать собрать ядро без НАТа, файрвола?

Какие параметры оставить в ядре если нужен только mpd+шейпинг? Клиенты используют шифрование.

 

Что выводит при панике ? Какой backtrace ?

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


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

Пычему это "говорил" ? Я жив и продолжаю так говорить. ;-)

дык долгих лет тебе о великий и ужасный =) как сам то? как жизь на татуине налаживается? =)

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


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

Join the conversation

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

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

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

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

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

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

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