1 (22.12.2010 09:07:50 отредактировано Cruiser78)

Коллеги, помогите разобраться.

Есть файловый сервер (RFRemix 2.6.34.7-63.fc13.x86_64) в почти кластерной конфигурации. Почти - это то, что раздаются по "локальной", не кластерной, самбе кластерные файловые системы (glusterfs и drbd). Для репликации кластерных ФС выделена отдельная гигабитная физическая сеть.
И вот эта сеть забита пакетами вида (вывод с интерфейса подозреваемого сервера):

 Консоль:
>tcpdump -i eth1
11:27:15.585476 MPCP, Opcode Pause, length 46
11:27:15.585525 MPCP, Opcode Pause, length 46
11:27:15.585574 MPCP, Opcode Pause, length 46
11:27:15.585675 MPCP, Opcode Pause, length 46
11:27:15.585725 MPCP, Opcode Pause, length 46

То есть какойто процесс постоянно шлет эти пакеты в эту сетку. В результате имеем существенные тормоза при работе локальной сети - раздача файловых ресурсов идет еле-еле (видимо из-за проблем с синхронизацией кластров). Ну и выход в Инет (он тоже через эту физическую сеть реализован) тормозить начал. Не менее чам на порядок скорость упала.

Помогите локализовать собаку бешенную.
Перечень самых активных процессов на сервере ниже:

 Консоль:
# top

top - 10:22:29 up 1 day,  4:40,  1 user,  load average: 0.27, 0.29, 0.29
Tasks: 256 total,   1 running, 255 sleeping,   0 stopped,   0 zombie
Cpu(s):  2.1%us,  6.1%sy,  0.0%ni, 65.4%id, 20.7%wa,  0.6%hi,  5.0%si,  0.0%st
Mem:   2053668k total,  2037196k used,    16472k free,   171612k buffers
Swap:  5119996k total,    74084k used,  5045912k free,  1321072k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND           
27578 expedito  20   0  211m 6588 5024 D  7.0  0.3   0:00.73 smbd               
2544 root      20   0 1082m  11m 1112 S  2.6  0.6  36:26.51 glusterfsd         
3855 root      20   0 56292 4844  904 S  2.6  0.2  15:58.39 dhcpd             
2789 root      20   0  246m  48m 1376 S  2.0  2.4  13:13.58 glusterfs         
  455 root      20   0 15148 1296  888 R  1.0  0.1   0:02.16 top               
2953 root      -2   0 52056 7064 5388 S  1.0  0.3   5:51.64 heartbeat         
11593 shults    20   0  211m 7036 5048 D  1.0  0.3   0:42.40 smbd               
31598 root      20   0     0    0    0 S  0.7  0.0   0:03.51 flush-253:7       
32045 acronis   20   0  211m 4512 3332 S  0.7  0.2   0:12.49 smbd               
   33 root      20   0     0    0    0 S  0.3  0.0   2:00.04 kswapd0           
1841 nobody    20   0 1397m 2344 1296 S  0.3  0.1   0:42.51 ns-slapd           
2126 root      39  19     0    0    0 S  0.3  0.0   7:53.89 kipmi0             
2309 root      20   0     0    0    0 S  0.3  0.0   0:42.39 drbd0_worker       
31651 acronis   20   0  211m 7268 5260 S  0.3  0.4   0:30.54 smbd               
    1 root      20   0 19272  844  644 S  0.0  0.0   0:01.71 init               
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.16 kthreadd           
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.13 migration/0   

Ну а все процессы - здесь:

 Консоль:
# ps ax
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:01 /sbin/init
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00 [migration/0]
    4 ?        S      1:05 [ksoftirqd/0]
    5 ?        S      0:00 [watchdog/0]
    6 ?        S      0:00 [migration/1]
    7 ?        S      0:31 [ksoftirqd/1]
    8 ?        S      0:00 [watchdog/1]
    9 ?        S      0:03 [events/0]
   10 ?        S      0:04 [events/1]
   11 ?        S      0:00 [cpuset]
   12 ?        S      0:00 [khelper]
   13 ?        S      0:00 [netns]
   14 ?        S      0:00 [async/mgr]
   15 ?        S      0:00 [pm]
   16 ?        S      0:00 [sync_supers]
   17 ?        S      0:00 [bdi-default]
   18 ?        S      0:00 [kintegrityd/0]
   19 ?        S      0:00 [kintegrityd/1]
   20 ?        S      0:17 [kblockd/0]
   21 ?        S      0:01 [kblockd/1]
   22 ?        S      0:00 [kacpid]
   23 ?        S      0:00 [kacpi_notify]
   24 ?        S      0:00 [kacpi_hotplug]
   25 ?        S      0:00 [ata/0]
   26 ?        S      0:00 [ata/1]
   27 ?        S      0:00 [ata_aux]
   28 ?        S      0:00 [khubd]
   29 ?        S      0:00 [kseriod]
   32 ?        S      0:00 [khungtaskd]
   33 ?        S      2:00 [kswapd0]
   34 ?        SN     0:00 [ksmd]
   35 ?        S      0:00 [aio/0]
   36 ?        S      0:00 [aio/1]
   37 ?        S      0:00 [crypto/0]
   38 ?        S      0:00 [crypto/1]
   44 ?        S      0:00 [scsi_eh_0]
   45 ?        S      0:00 [scsi_eh_1]
   46 ?        S      0:04 [scsi_eh_2]
   47 ?        S      0:00 [scsi_eh_3]
   48 ?        S      0:00 [scsi_eh_4]
   49 ?        S      0:00 [scsi_eh_5]
   55 ?        S      0:00 [kpsmoused]
   56 ?        S      0:00 [kstriped]
   57 ?        S      0:00 [ksnapd]
   58 ?        S      0:00 [usbhid_resumer]
  425 ?        S      0:02 [kdmflush]
  426 ?        S      2:17 [kmirrord]
  427 ?        S      0:00 [kcopyd]
  446 ?        S      0:00 [kdmflush]
  447 ?        S      0:03 [kdmflush]
  452 ?        S      0:00 [kdmflush]
  454 ?        S      0:00 [kdmflush]
  456 ?        S      0:00 [kdmflush]
  520 ?        S      0:04 [kdmflush]
  530 ?        S      0:06 [jbd2/dm-6-8]
  531 ?        S      0:00 [ext4-dio-unwrit]
  532 ?        S      0:00 [ext4-dio-unwrit]
  595 ?        S      0:00 [flush-0:19]
  619 ?        S<s    0:00 /sbin/udevd -d
  683 ?        S      0:00 sleep 60
  687 pts/1    R+     0:00 ps ax
  886 ?        S      0:00 [edac-poller]
  994 ?        S      0:00 [kdmflush]
1056 ?        S      0:00 [jbd2/dm-1-8]
1057 ?        S      0:00 [ext4-dio-unwrit]
1058 ?        S      0:00 [ext4-dio-unwrit]
1059 ?        S      1:24 [kjournald]
1139 ?        S      0:00 [kauditd]
1141 ?        Ss     0:00 /usr/bin/system-setup-keyboard
1228 ?        S      0:19 [flush-253:6]
1557 ?        S<sl   0:00 auditd
1582 ?        Sl     0:20 /sbin/rsyslogd -c 4
1603 ?        S      0:48 [kondemand/0]
1604 ?        S      0:44 [kondemand/1]
1626 ?        S<     0:00 [kslowd000]
1627 ?        S<     0:00 [kslowd001]
1656 ?        Ssl    0:00 /usr/sbin/named -u named -4
1671 ?        Ss     0:00 rpcbind
1688 ?        Ss     0:00 rpc.statd -p 10002 -o 10003
1701 ?        Ss     0:00 mdadm --monitor --scan -f --pid-file=/var/run/mdadm/m
1726 ?        S      0:00 [rpciod/0]
1727 ?        S      0:00 [rpciod/1]
1734 ?        Ss     0:00 rpc.idmapd
1767 ?        Sl     0:41 /usr/sbin/ns-slapd -D /etc/dirsrv/slapd-ALMA -i /var/
1841 ?        Sl     0:42 /usr/sbin/ns-slapd -D /etc/dirsrv/slapd-config-instan
1939 ?        Ss     0:02 /usr/sbin/httpd.worker -k start -f /etc/dirsrv/admin-
1942 ?        S      0:00 /usr/sbin/httpd.worker -k start -f /etc/dirsrv/admin-
1943 ?        Sl     0:00 /usr/sbin/httpd.worker -k start -f /etc/dirsrv/admin-
2020 ?        Ssl    0:01 dbus-daemon --system
2031 ?        S      0:00 avahi-daemon: running [smallServer.local]
2032 ?        Ss     0:00 avahi-daemon: chroot helper
2042 ?        Ss     0:00 cupsd -C /etc/cups/cupsd.conf
2062 ?        S      0:00 [nfsiod]
2063 ?        S      0:00 [nfsv4.0-svc]
2077 ?        Ssl    0:00 hald
2078 ?        S      0:00 hald-runner
2107 ?        S      0:00 hald-addon-input: Listening on /dev/input/event3 /dev
2118 ?        S      0:00 /usr/libexec/hald-addon-acpi
2126 ?        SN     7:55 [kipmi0]
2143 ?        Ss     0:29 /sbin/apcsmart -a ups
2146 ?        Ss     0:07 /usr/sbin/upsd
2149 ?        Ss     0:00 /usr/sbin/upsmon
2151 ?        S      0:01 /usr/sbin/upsmon
2164 ?        Ssl    0:01 automount --pid-file /var/run/autofs.pid
2211 ?        Ss     0:00 rpc.rquotad -p 10005
2214 ?        S      0:00 [lockd]
2215 ?        S      0:00 [nfsd4]
2216 ?        S      1:12 [nfsd]
2217 ?        S      1:11 [nfsd]
2218 ?        S      1:10 [nfsd]
2219 ?        S      1:10 [nfsd]
2220 ?        S      1:12 [nfsd]
2221 ?        S      1:10 [nfsd]
2222 ?        S      1:10 [nfsd]
2223 ?        S      1:10 [nfsd]
2226 ?        Ss     0:00 rpc.mountd -p 10004
2251 ?        Ss     0:00 /usr/sbin/sshd
2259 ?        Ss     0:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
2278 ?        Ss     0:00 ntpd -u ntp:ntp -p /var/run/ntpd.pid -g
2292 ?        S      0:00 /usr/sbin/xrdp
2296 ?        S      0:00 /usr/sbin/xrdp-sesman
2307 ?        S      0:00 [cqueue]
2309 ?        S      0:42 [drbd0_worker]
2320 ?        S      1:43 [drbd0_receiver]
2361 ?        Ss     0:01 sendmail: accepting connections
2370 ?        Ss     0:00 sendmail: Queue runner@01:00:00 for /var/spool/client
2384 ?        Ss     8:33 /usr/sbin/abrtd
2402 ?        Ss     0:01 /usr/sbin/gpm -m /dev/input/mice -t exps2
2412 ?        S      0:02 /bin/bash /usr/sbin/ksmtuned
2421 ?        Ss     0:01 crond
2427 ?        S      0:00 /usr/libexec/notification-daemon
2454 ?        S      0:03 /usr/bin/Xvnc :1 -desktop smallServer:1 (alex) -auth
2459 ?        S      0:00 /usr/bin/ck-xinit-session /usr/bin/ssh-agent /etc/X11
2460 ?        S      0:00 vncconfig -iconic
2476 ?        S      0:00 dbus-launch --sh-syntax --exit-with-session
2480 ?        Ss     0:00 /usr/sbin/atd
2516 ?        Ssl    0:00 /bin/dbus-daemon --fork --print-pid 5 --print-address
2544 ?        Ssl   36:38 /usr/local/sbin/glusterfsd -f /etc/glusterfs/glusterf
2663 ?        Sl     0:00 /usr/sbin/console-kit-daemon --no-daemon
2731 ?        Sl     0:00 /usr/bin/gnome-session
2732 ?        Ss     0:00 /usr/bin/ssh-agent /etc/X11/xinit/Xclients
2737 ?        S      0:00 /usr/libexec/upowerd
2757 ?        S      0:01 /usr/libexec/gconfd-2
2777 ?        Sl     0:00 /usr/bin/gnome-keyring-daemon --start --components=se
2781 ?        Ss     0:13 /usr/libexec/gnome-settings-daemon
2789 ?        Ssl   13:20 /usr/local/sbin/glusterfs -f /etc/glusterfs/glusterfs
2867 ?        S      0:00 /usr/libexec/gvfsd
2868 ?        SLs    1:11 heartbeat: master control process
2877 ?        Ssl    0:00 /usr/sbin/gdm-binary -nodaemon
2881 tty2     Ss+    0:00 /sbin/mingetty /dev/tty2
2884 tty3     Ss+    0:00 /sbin/mingetty /dev/tty3
2886 tty4     Ss+    0:00 /sbin/mingetty /dev/tty4
2888 tty5     Ss+    0:00 /sbin/mingetty /dev/tty5
2890 tty6     Ss+    0:00 /sbin/mingetty /dev/tty6
2897 ?        S<     0:00 /sbin/udevd -d
2898 ?        S<     0:00 /sbin/udevd -d
2920 ?        Sl     0:00 /usr/libexec/gdm-simple-slave --display-id /org/gnome
2921 ?        Ssl    0:00 /usr/libexec//gvfs-fuse-daemon /home/alex/.gvfs
2926 ?        S      0:00 metacity
2931 tty1     Ss+    0:07 /usr/bin/Xorg :0 -nr -verbose -auth /var/run/gdm/auth
2940 ?        S<sl   0:00 /usr/bin/pulseaudio --start --log-target=syslog
2942 ?        SNl    0:00 /usr/libexec/rtkit-daemon
2946 ?        S      0:00 /usr/libexec/polkit-1/polkitd
2947 ?        S      0:04 gnome-panel
2949 ?        SL     0:03 heartbeat: FIFO reader       
2950 ?        SL     0:05 heartbeat: write: bcast eth1 
2951 ?        SL     0:05 heartbeat: read: bcast eth1   
2952 ?        SL     0:08 heartbeat: write: ping 192.168.41.1
2953 ?        SL     5:55 heartbeat: read: ping 192.168.41.1
2956 ?        S      0:00 nautilus
2994 ?        S      0:00 /usr/libexec/pulse/gconf-helper
2995 ?        S      0:00 /usr/sbin/restorecond -u
2997 ?        Sl     0:00 gpk-update-icon
3000 ?        S      0:00 gnome-power-manager
3003 ?        S      0:01 /usr/libexec/gvfs-gdu-volume-monitor
3007 ?        Sl     0:10 /usr/libexec/udisks-daemon
3008 ?        S      0:06 udisks-daemon: polling /dev/sr0
3010 ?        S      0:00 /usr/libexec/gdu-notification-daemon
3013 ?        S      0:00 bluetooth-applet
3014 ?        S      0:00 deja-dup-monitor
3015 ?        S      0:00 /usr/libexec/evolution/2.30/evolution-alarm-notify
3017 ?        Sl     0:02 /usr/libexec/gvfs-afc-volume-monitor
3051 ?        S      0:00 /usr/libexec/gvfs-gphoto2-volume-monitor
3072 ?        S      0:00 abrt-applet
3146 ?        S      0:00 /usr/libexec/polkit-gnome-authentication-agent-1
3151 ?        S      0:00 gnome-volume-control-applet
3179 ?        Ss     0:00 python /usr/bin/hp-systray
3187 ?        S      0:00 /usr/bin/python /usr/share/system-config-printer/appl
3189 ?        S      0:00 /usr/libexec/im-settings-daemon
3198 ?        Ss     0:03 gnome-screensaver
3200 ?        Ssl    0:00 /usr/libexec/bonobo-activation-server --ac-activate -
3330 ?        S      0:00 /usr/libexec/wnck-applet --oaf-activate-iid=OAFIID:GN
3331 ?        S      0:00 /usr/libexec/trashapplet --oaf-activate-iid=OAFIID:GN
3355 ?        S      0:00 /usr/bin/gnote --panel-applet --oaf-activate-iid=OAFI
3356 ?        S      0:02 /usr/libexec/clock-applet --oaf-activate-iid=OAFIID:G
3357 ?        S      0:00 /usr/libexec/gdm-user-switch-applet --oaf-activate-ii
3360 ?        S      0:00 /usr/libexec/notification-area-applet --oaf-activate-
3480 ?        S      0:00 /usr/libexec/gconf-im-settings-daemon
3484 ?        S      0:00 /usr/libexec/gvfsd-trash --spawner :1.10 /org/gtk/gvf
3495 ?        S      0:00 python /usr/bin/hp-systray
3496 ?        S      0:04 python /usr/bin/hp-systray
3505 ?        S      0:00 /usr/bin/dbus-launch --exit-with-session
3506 ?        Ssl    0:00 /bin/dbus-daemon --fork --print-pid 5 --print-address
3508 ?        Ssl    0:00 /usr/bin/gnome-session --autostart=/usr/share/gdm/aut
3511 ?        S      0:00 /usr/libexec/gconfd-2
3512 ?        S      0:00 /usr/libexec/at-spi-registryd
3515 ?        Ss     0:02 /usr/libexec/gnome-settings-daemon --gconf-prefix=/ap
3517 ?        S      0:00 /usr/libexec/gvfsd
3523 ?        Ssl    0:00 /usr/libexec/bonobo-activation-server --ac-activate -
3527 ?        S      0:00 metacity
3528 ?        S      0:03 /usr/libexec/gdm-simple-greeter
3529 ?        S      0:00 /usr/libexec/polkit-gnome-authentication-agent-1
3530 ?        S      0:01 gnome-power-manager
3532 ?        S      0:00 plymouth-log-viewer --icon
3534 ?        S      0:00 /usr/libexec/gvfsd-burn --spawner :1.10 /org/gtk/gvfs
3542 ?        S<sl   0:00 /usr/bin/pulseaudio --start --log-target=syslog
3546 ?        S      0:00 /usr/libexec/gvfsd-metadata
3553 ?        S      0:00 pam: gdm-password
3554 ?        S      0:00 pam: gdm-fingerprint
3557 ?        S      0:10 [jbd2/drbd0-8]
3558 ?        S      0:00 [ext4-dio-unwrit]
3559 ?        S      0:00 [ext4-dio-unwrit]
3839 ?        Ss     0:00 smbd -D
3851 ?        Ss     0:11 nmbd -D
3852 ?        S      0:00 nmbd -D
3854 ?        S      0:00 smbd -D
3855 ?        Ss    16:07 /usr/sbin/dhcpd
11016 ?        S      0:12 smbd -D
11064 ?        S      0:17 smbd -D
11177 ?        S      0:08 smbd -D
11259 ?        S      0:15 smbd -D
11577 ?        S      0:56 smbd -D
11589 ?        S      0:08 [flush-147:0]
11593 ?        S      0:49 smbd -D
27578 ?        S      0:04 smbd -D
29122 ?        S      0:30 [drbd0_asender]
31178 ?        S      0:11 smbd -D
31301 ?        Ss     0:00 sshd: alex [priv]
31307 ?        S      0:00 sshd: alex@pts/0
31308 pts/0    Ss     0:00 -bash
31340 pts/0    S      0:00 su
31349 pts/0    S      0:00 bash
31376 pts/0    S+     0:29 /usr/bin/mc -P /tmp/mc-root/mc.pwd.31349
31378 pts/1    Ss     0:00 bash -rcfile .bashrc
31582 ?        S      0:27 smbd -D
31598 ?        S      0:03 [flush-253:7]
31601 ?        S      0:14 smbd -D
31651 ?        S      0:33 smbd -D
31683 ?        S      0:00 smbd -D
31697 ?        S      0:13 smbd -D
31739 ?        S      0:11 smbd -D
32045 ?        S      0:13 smbd -D
32429 ?        S      0:01 smbd -D
32431 ?        S      0:02 smbd -D
32510 ?        S      0:00 smbd -D

Как этот Oopcode Pause к процессу привязать? Кто гадит? Это всё второго дня началось...

2

tcpdump вам в помощь.

It is good day to die ...
MS Windows 10
Заметки о главном...

3 (21.12.2010 10:55:35 отредактировано Cruiser78)

i2ks пишет:

tcpdump вам в помощь.

Очень содержательно. А первый вывод чем был получен? Божьим помышением или тем же tcpdump'ом?

Вот только скажи, как из этого tcpdump'a вычепить процесс, который эти пакеты шлет? Более того, на эти пакеты он даже ни источника, ни отправителя не определяет. В отличие от остальных пакетов... Наведи, как этим tcpdump'ом воспользоваться правильно. Pls...

------------------------

Да, кстати, эти Oopcode Pause лезут но не так сильно и в локалку. Лезуть и забивают трафик...

4 (21.12.2010 11:15:37 отредактировано i2ks)

Cruiser78 пишет:

MPCP, Opcode Pause, length 46

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

It is good day to die ...
MS Windows 10
Заметки о главном...

5 (21.12.2010 11:46:46 отредактировано Cruiser78)

i2ks пишет:

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

Да, у нас именно гигабитка. Но вот какая зараза в ней гадить начала, и как её поймать - ума не приложу. В реале эта гигабитка по скорости съехала (из за этого флуда), хорошо если, до 10Мб-сети...

Да, если важно - коммутатор у нас DLINK DGS-3100-24.

6

http://opennet.ru/openforum/vsluhforumID1/90561.html

7

Cruiser78, а если вывод подробный сделать?

tcpdump -i eth1 -vv
It is good day to die ...
MS Windows 10
Заметки о главном...

8

Это я мгновенно нагуглил. Вот только нет у меня счетчика трафика. Так что не в нем у меня собака зарыта...

9 (21.12.2010 15:15:00 отредактировано Cruiser78)

i2ks пишет:

Cruiser78, а если вывод подробный сделать?

tcpdump -i eth1 -vv

Не помогает. На выходе то же самое. Однако покопался немного в настройках коммутатора. Очень похоже, что собака пробегала мимо параметра FlowControl на порту коммутатора (или сетевой платы). Если этот параметр на коммутаторе установить в Enabled, то исходных пакетов - тыщи на соответствующий интерфейс хоста валятся. Если - disabled - то, вроде, молчок...
------------------------------
Еще больше похоже, что собака зарылась вообще в роутере DLINK-824 (он из той сети выход в Инет обеспечивает). Пинги до него ходили по 10 ms, а зайти веб-мордой вообще было нереально. Отключил полностью, принёс на свой стол, подключил к своему компу напрямую - роутер ожил. Поставил его взад - заработал как надо. С нужными (ожидаемыми) задержками. И Инет через него тормозить перестал. Ну, потестируем...
-----------------------------------------------------------------
БЛИННН...

 Консоль:
15:04:07.104536 IP 192.168.41.1 > 192.168.41.4: ICMP redirect 192.168.41.6 to host 192.168.41.1, length 36
15:04:07.108067 IP 192.168.41.1 > 192.168.41.4: ICMP redirect 192.168.41.6 to host 192.168.41.1, length 36
15:04:07.109103 IP 192.168.41.1 > 192.168.41.4: ICMP redirect 192.168.41.6 to host 192.168.41.1, length 36
15:04:07.110155 IP 192.168.41.1 > 192.168.41.4: ICMP redirect 192.168.41.6 to host 192.168.41.1, length 36
15:04:07.111084 IP 192.168.41.1 > 192.168.41.4: ICMP redirect 192.168.41.6 to host 192.168.41.1, length 36
15:04:07.111614 IP 192.168.41.1 > 192.168.41.4: ICMP redirect 192.168.41.6 to host 192.168.41.1, length 36

Итак - 192.168.41.1 - это внутренний адрес роутера DLINK 824. И эта сволочь шлет на один из серверов (тому, конечно это фиолетово) - 192.168.41.4 ICMP Redirect... На себя, любимого... Вот теперь и думай - как из этого вывернуться - DLINK - коробка замкнутая, насколько я понимаю, а тут - такое подвалило... Как с этим бороться??