Jump to content
Калькуляторы

FreeBSD 6.4 x64+router+mpd+ipfw

Сервер: 2xCORE2QUAD 2Ghz, 8Gb RAM , HDD 2x250Gb в рейде(зеркало)

OS: FreeBSD 6.4 x64

Задачи: роутера, VPN сервера, DNS, DHCP, шейпинг трафика пользователей(ipfw dummynet).

интерфейс em0(LAN), em1(WAN)

В процессе эксплуатации столкнулся со следующими проблемами:

1. Зависание сети(полностью)

Периодически зависает сеть, на машину не зайти, пинг тоже не идёт, нагрузка на одно из ядер CPU 100% процесс dummynet

при перезагрузке shutdown -r now машина зависает(через раз)

Проблема решилась следующим образом:

sysctl -w net.inet.ip.intr_queue_maxlen=150

sysctl -w kern.ipc.somaxconn=512

sysctl -w net.inet.ip.fw.dyn_max=4096

sysctl -w net.inet.ip.dummynet.io_fast=1

2. Зависание сети

Периодически зависает сеть, на машину не зайти, пинг идёт, нагрузка на одно из ядер CPU 100% процесс swi1: net

Проблема решилась следующим образом:

sysctl -w net.isr.direct=1

 

 

PID USERNAME    THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   15 root          1 171   52     0K    16K CPU2   2 147:29 98.00% idle: cpu2
   10 root          1 171   52     0K    16K CPU7   7 146:46 97.90% idle: cpu7
   11 root          1 171   52     0K    16K RUN    6 146:31 97.75% idle: cpu6
   12 root          1 171   52     0K    16K CPU5   5 146:56 97.71% idle: cpu5
   17 root          1 171   52     0K    16K CPU0   0 129:39 97.51% idle: cpu0
   16 root          1 171   52     0K    16K CPU1   1 146:20 96.97% idle: cpu1
   13 root          1 171   52     0K    16K CPU4   4 136:27 85.40% idle: cpu4
   14 root          1 171   52     0K    16K CPU3   3 116:02 51.76% idle: cpu3
   28 root          1 -68 -187     0K    16K WAIT   3  21:00 27.73% irq256: em0
   20 root          1 -44 -163     0K    16K WAIT   5  27:39 18.80% swi1: net
   29 root          1 -68 -187     0K    16K WAIT   4   6:50  7.32% irq257: em1
   44 root          1 -68    0     0K    16K -      0  13:42  4.88% dummynet
  916 root         11  20    0 28260K 10384K kserel 0   5:50  0.00% mpd5

 

 

---

 

Появилась проблема №3

 

Сегодня в 3 часа ночи перестал работать интернет, расследование по горячим следам выявило следующее:

 

DHCP, DNS, ssh, роутинг в LAN работает. Не работает mpd5, хотя процесс запущен, также при пинге любого WAN IP пишет host is down

 

top -S показал полную загрузку одного ядра сетевой картой внешнего интерфейса

 

PID USERNAME    THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   29 root          1 -68 -187     0K    16K CPU4   4  70:22 99.02% irq257: em1

 

Это при том что нагрузка на WAN интерфейс em1 в 00:15 не превышала 12% при загрузке канала 30-34 мегабита(канал - 35 мегабит)

 

Нагрузка на em1 в момент падения была 24мегабита

 

VPN подключений - 250

 

Притом что вчера в период с 20 до 23:30

 

Нагрузка на em1 была 30 мегабит

 

VPN подключений - 357

 

Сервер пришлось перезагрузить

 

Текущее состояние:

 

VPN

 

310 подключений

 

Нагрузка на em1 - 27мегабит

 

systat -vmstat

 

    2 users    Load  0.83  0.61  0.58                  Feb 23 13:01

Mem:KB    REAL            VIRTUAL                       VN PAGER   SWAP PAGER
        Tot   Share      Tot    Share    Free           in   out     in   out
Act   99028    7044   121584     8256 7882832  count
All  156632    8020  4557392     9904          pages
Proc:                                                            Interrupts
  r   p   d   s   w   Csw  Trp  Sys  Int  Sof  Flt    453 cow   25029 total
  2          39       33k 1156 3046  27k   13 1071    343 zfod        atkbd0 1
                                                      336 ozfod       fdc0 irq6
1.8%Sys   7.2%Intr  0.2%User  0.0%Nice 90.8%Idle      98%ozfod       ata0 irq14
|    |    |    |    |    |    |    |    |    |    |       daefr     9 uhci1+ 19
=++++                                                 589 prcfr  2000 cpu0: time
                                        26 dtbuf     1019 totfr  5300 em0 irq256
Namei     Name-cache   Dir-cache    100000 desvn          react  3720 em1 irq257
   Calls    hits   %    hits   %       719 numvn          pdwak  2000 cpu3: time
    1683    1635  97                   111 frevn          pdpgs  2000 cpu1: time
                                                          intrn  2000 cpu2: time
Disks   ad4   ad6                                   88780 wire   2000 cpu5: time
KB/t  16.00  0.00                                   90236 act    2000 cpu7: time
tps       4     0                                   12308 inact  2000 cpu4: time
MB/s   0.07  0.00                                      20 cache  2000 cpu6: time
%busy     0     0                                 7882812 free

 

top -S

 

 

last pid: 57856;  load averages:  0.66,  0.59,  0.58    up 0+02:51:54  13:01:39
97 processes:  9 running, 69 sleeping, 19 waiting
CPU:  0.1% user,  0.0% nice,  1.8% system,  6.6% interrupt, 91.5% idle
Mem: 88M Active, 12M Inact, 87M Wired, 20K Cache, 33M Buf, 7698M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME    THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   17 root          1 171   52     0K    16K RUN    0 147:00 98.05% idle: cpu0
   11 root          1 171   52     0K    16K CPU6   6 167:33 97.71% idle: cpu6
   10 root          1 171   52     0K    16K CPU7   7 167:56 97.22% idle: cpu7
   15 root          1 171   52     0K    16K CPU2   2 168:45 97.07% idle: cpu2
   12 root          1 171   52     0K    16K CPU5   5 168:07 96.97% idle: cpu5
   16 root          1 171   52     0K    16K CPU1   1 167:00 96.68% idle: cpu1
   13 root          1 171   52     0K    16K CPU4   4 154:33 85.01% idle: cpu4
   14 root          1 171   52     0K    16K RUN    3 129:13 54.20% idle: cpu3
   28 root          1 -68 -187     0K    16K WAIT   3  27:34 27.05% irq256: em0
   20 root          1 -44 -163     0K    16K WAIT   4  34:35 17.43% swi1: net
   29 root          1 -68 -187     0K    16K WAIT   4   8:46  7.91% irq257: em1
   44 root          1 -68    0     0K    16K -      4  17:26  4.93% dummynet
  916 root         12  20    0 28460K 10600K kserel 5   7:10  0.00% mpd5
   18 root          1 -32 -151     0K    16K WAIT   3   2:02  0.00% swi4: clock
  652 bind          1  96    0 30900K 27596K select 5   0:47  0.00% named
   21 root          1 -16    0     0K    16K -      7   0:19  0.00% yarrow
  581 root          1  96    0  3684K  1304K select 7   0:09  0.00% syslogd

 

top -S -P

last pid: 58237;  load averages:  0.62,  0.58,  0.57    up 0+02:53:00  13:02:45
96 processes:  9 running, 68 sleeping, 19 waiting
CPU 0:  0.0% user,  0.0% nice,  2.3% system,  0.8% interrupt, 97.0% idle
CPU 1:  0.0% user,  0.0% nice,  0.8% system,  0.4% interrupt, 98.9% idle
CPU 2:  0.0% user,  0.0% nice,  1.5% system,  0.4% interrupt, 98.1% idle
CPU 3:  0.0% user,  0.0% nice,  6.8% system, 40.6% interrupt, 52.6% idle
CPU 4:  0.4% user,  0.0% nice,  0.8% system, 13.2% interrupt, 85.7% idle
CPU 5:  0.0% user,  0.0% nice,  1.1% system,  0.8% interrupt, 98.1% idle
CPU 6:  0.4% user,  0.0% nice,  1.1% system,  0.4% interrupt, 98.1% idle
CPU 7:  0.0% user,  0.0% nice,  0.4% system,  0.8% interrupt, 98.9% idle
Mem: 89M Active, 12M Inact, 87M Wired, 20K Cache, 33M Buf, 7697M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME    THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   16 root          1 171   52     0K    16K CPU1   1 168:02 97.51% idle: cpu1
   17 root          1 171   52     0K    16K CPU0   0 147:52 97.51% idle: cpu0
   12 root          1 171   52     0K    16K CPU5   5 169:11 97.46% idle: cpu5
   10 root          1 171   52     0K    16K CPU7   7 169:00 97.46% idle: cpu7
   11 root          1 171   52     0K    16K CPU6   6 168:37 97.46% idle: cpu6
   15 root          1 171   52     0K    16K RUN    2 169:49 97.12% idle: cpu2
   13 root          1 171   52     0K    16K CPU4   4 155:27 84.18% idle: cpu4
   14 root          1 171   52     0K    16K CPU3   3 129:53 51.42% idle: cpu3
   28 root          1 -68 -187     0K    16K WAIT   3  27:53 29.54% irq256: em0
   20 root          1 -44 -163     0K    16K WAIT   3  34:55 17.09% swi1: net
   29 root          1 -68 -187     0K    16K WAIT   4   8:52  8.25% irq257: em1
   44 root          1 -68    0     0K    16K -      0  17:37  5.08% dummynet
  916 root         11  20    0 28520K 10644K kserel 4   7:14  0.00% mpd5
   18 root          1 -32 -151     0K    16K WAIT   3   2:03  0.00% swi4: clock
  652 bind          1  96    0 31096K 27792K select 5   0:48  0.00% named
   21 root          1 -16    0     0K    16K -      1   0:19  0.00% yarrow
  581 root          1  96    0  3684K  1304K select 7   0:10  0.00% syslogd
   47 root          1 171   52     0K    16K pgzero 0   0:05  0.00% pagezero
20706 root          1  96    0  6932K  2124K select 7   0:04  0.00% top
  826 root          1  96    0 48872K 47540K select 2   0:02  0.00% dhcpd

 

---

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

Share this post


Link to post
Share on other sites

:)

 

интересует решение данной проблемы, или мануал в котором про подобные случаи можно прочитать.

Share this post


Link to post
Share on other sites

зачем ipfw dummynet если в mpd есть пришлепка к ng_car?

по поводу 100% dummynet у вас buckets-ов хватает?

Share this post


Link to post
Share on other sites

как я понял это оно net.inet.ip.fw.dyn_buckets: 256

т.е если я его загоню в например в 16384 должно помочь?

 

 

Share this post


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
Sign in to follow this