Jump to content

Recommended Posts

Posted

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

У нас стоит сервер на 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

Posted

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

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

Posted

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

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

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

Posted

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

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

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

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

Posted (edited)

Систему до 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

Edited by Makariy
Posted

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

 

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

 

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

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

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

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

 

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

Posted

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

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

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.