Производительность TCP/IP стека в FreeBSD

Аватара пользователя
Igor_I

Re: Производительность TCP/IP стека в FreeBSD

Сообщение Igor_I »

systat -vmstat 1

Загрузка процессора =100%?

Какая область наиболее загруженна?

Пример вывода под нагрузкой

vmstat 1
Аватара пользователя
brag

Re: Производительность TCP/IP стека в FreeBSD

Сообщение brag »

Вот:



Код:

Код: Выделить всё

      users    Load  0.70  0.26  0.09                  Jun  1 10:36
Mem:KB    REAL            VIRTUAL                     VN PAGER  SWAP PAGER
        Tot   Share      Tot    Share    Free         in  out     in  out
Act   91736   16244   131504    24508  335548 count
All  168896   18832 53112420    28436         pages
                                                          zfod   Interrupts
Proc:r  p  d  s  w    Csw  Trp  Sys  Int  Sof  Flt        cow     275 total
     2     3 60     31037   42 358k12076  969       70876 wire      7 1: atkb
                                                    62872 act         6: fdc0
76.9%Sys  15.4%Intr  7.7%User  0.0%Nice  0.0%Idl    35376 inact    52 12: psm
|    |    |    |    |    |    |    |    |    |        652 cache       14: ata
======================================++++++++>>   334896 free        15: ata
                                                          daefr    14 16: uhc
Namei         Name-cache    Dir-cache                     prcfr       22: rl0
    Calls     hits    %     hits    %                     react       23: ehc
                                                          pdwak   202 cpu0: time
                                                          pdpgs
Disks   ad0   da0   cd0 pass0 pass1                       intrn
KB/t   0.00  0.00  0.00  0.00  0.00                 61392 buf
tps       0     0     0     0     0                    18 dirtybuf
MB/s   0.00  0.00  0.00  0.00  0.00                 33650 desiredvnodes
% busy    0     0     0     0     0                  3542 numvnodes
                                                      282 freevnodes

В основном system...



Код:

Код: Выделить всё

# vmstat 1
 procs      memory      page                    disks     faults      cpu
 r b w     avm    fre  flt  re  pi  po  fr  sr ad0 da0   in   sy  cs us sy id
 0 2 0  129436 336228    0   0   0   0   0   0   2   0  256 1717 734  0  0 100
 1 2 0  130064 336072   69   0   0   0  14   0   0   0  202 1974 625  0  0 100
 2 2 0  130064 336072    4   0   0   0   2   0   0   0  210 1994 685  0  0 100
 5 3 0  131248 335640  193   0   0   0  62   0   0   0 10151 301413 26161 14 71 14
 2 3 0  131248 335640    0   0   0   0   0   0   0   0 11911 352504 30646 15 85  0
 3 3 0  131248 335640    0   0   0   0   0   0   0   0 11937 351552 30683  8 92  0
 4 3 0  131248 335640    0   0   0   0   0   0   0   0 12017 358754 30825  0 100  0
 4 3 0  131248 335640    0   0   0   0   0   0   0   0 11963 354571 30727 15 85  0

Первых 3 - без нагрузки

Последних 5 - под нагерузкой
Аватара пользователя
Igor_I

Re: Производительность TCP/IP стека в FreeBSD

Сообщение Igor_I »

Попробуй в конфиге ядра

option HZ=1000

vmstat - первый столбик r

Получается, что 3-4 процесса не могут получить доступ к процессору.

Второй столбик - количество процессов, заблокированных в ожидании ввода или вывода.

Система какая?
Аватара пользователя
brag

Re: Производительность TCP/IP стека в FreeBSD

Сообщение brag »

спасибо

HZ=1000 стоит

система - свежак, 6.2-STABLE.сейчас уже вчерашней давности

к стати,как она в сравнении с 5.5? по стабильности и производительности?
Аватара пользователя
Igor_I

Re: Производительность TCP/IP стека в FreeBSD

Сообщение Igor_I »

brag


Цитата:



HZ=1000 стоит



В смысле - уже стояло? Или поставил и ничего не изменилось?



Меня также смущает различия в столбце Interrupts

У тебя нет clk rtc, а у меня нет cpu0. Неужели это из-за различия в процессорах?



Код:

Код: Выделить всё

   2 users    Load  0.27  0.06  0.02                   6 июн 22:35
Mem:KB    REAL            VIRTUAL                     VN PAGER  SWAP PAGER
        Tot   Share      Tot    Share    Free         in  out     in  out
Act   72980   11528   167260    24156   61124 count
All  468016   14768481385652    31192         pages
                                                          zfod   Interrupts
Proc:r  p  d  s  w    Csw  Trp  Sys  Int  Sof  Flt        cow    1208 total
             49  1   2298    6  750 2253    3      107520 wire   1001 0: clk
                                                    78088 act         1: atkb
 1.6%Sys   4.7%Intr  0.0%User  0.0%Nice 93.8%Idl   258728 inact    39 5: skc0
|    |    |    |    |    |    |    |    |    |      24896 cache       7: ppc0
=++                                                 36228 free    128 8: rtc
                                                          daefr       10: nve
Namei         Name-cache    Dir-cache                     prcfr    40 11: rl0
    Calls     hits    %     hits    %                     react       14: ata
                                                          pdwak       15: ata
                                                          pdpgs
Disks   ad0   ad2   ad3   ad4   ad5                       intrn
KB/t   0.00  0.00  0.00  0.00  0.00                 61472 buf
tps       0     0     0     0     0                    79 dirtybuf
MB/s   0.00  0.00  0.00  0.00  0.00                 35661 desiredvnodes
% busy    0     0     0     0     0                 13906 numvnodes
                                                     8914 freevnodes
Аватара пользователя
brag

Re: Производительность TCP/IP стека в FreeBSD

Сообщение brag »

Нет,стояло с самого начала.

привожу конфиг ядра и sysctl.conf

ядро:



Код:

Код: Выделить всё

machine         i386
ident           BRAG
makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols
options         SCHED_4BSD              # 4BSD scheduler
#options        PREEMPTION              # Enable kernel thread preemption
options         INET                    # InterNETworking
options         INET6                   # IPv6 communications protocols
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         MD_ROOT                 # MD is a potential root device
options         NFSCLIENT               # Network Filesystem Client
options         NFSSERVER               # Network Filesystem Server
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_GPT                # GUID Partition Tables.
options         COMPAT_43               # Compatible with BSD 4.3 [KEEP THIS!]
#options        COMPAT_FREEBSD4         # Compatible with FreeBSD4
#options        COMPAT_FREEBSD5         # Compatible with FreeBSD5
options         SCSI_DELAY=5000         # Delay (in ms) before probing SCSI
options         KTRACE                  # ktrace(1) support
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extension
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         ADAPTIVE_GIANT          # Giant mutex is adaptive.
#########################################
# MY Config
options         DEVICE_POLLING
options         HZ=1000                 #set the timer granularity
options         TCP_DROP_SYNFIN         #drop TCP packets with SYN+FIN
options         ZERO_COPY_SOCKETS
options         MCLSHIFT=12
options         ALTQ
options         ALTQ_CBQ
options         ALTQ_RED
options         ALTQ_RIO
options         ALTQ_HFSC
options         ALTQ_CDNR
options         ALTQ_PRIQ
options         QUOTA                   #enable disk quotas
options         SC_DISABLE_REBOOT       # disable reboot key sequence
options         SC_HISTORY_SIZE=4000
maxusers        128
device          apic                    # I/O APIC
#options         SMP
#########################################
# Bus support.
#device         eisa
device          pci
# Дальше девайсы....
#

sysctl.conf:



Код:

Код: Выделить всё

security.bsd.see_other_uids=0
net.inet.icmp.icmplim=2
security.jail.set_hostname_allowed=0
security.jail.chflags_allowed=0
kern.ipc.maxsockbuf=2097152
net.inet.tcp.rfc1323=1
net.inet.tcp.sendspace=524288
net.inet.tcp.recvspace=524288
net.inet.udp.recvspace=65535
net.inet.udp.maxdgram=7344

да, rtc и cpu0 отличались на 2х разных тачках и одном ядре. на одной тачке duron,на другой celeron s775

А это из за apic

Вот apic отключен:



Код:

Код: Выделить всё

# uname -a
FreeBSD nxux.net 6.2-STABLE FreeBSD 6.2-STABLE #0: Fri Jun  1 19:03:38 EEST 2007     root@nxux.net:/usr/src/sys/i386/compile/BRAG  i386
# vmstat -i
interrupt                          total       rate
irq0: clk                        2344282        999
irq1: atkbd0                       11886          5
irq5: rl0 uhci2                      313          0
irq6: fdc0                             4          0
irq8: rtc                         300026        127
irq10: uhci0 uhci3                 52933         22
irq11: ehci0                         141          0
irq12: psm0                        98074         41
irq14: ata0                        85527         36
irq15: ata1                       633218        270
Total                            3526404       1503

и с APIC:



Код:

Код: Выделить всё

# vmstat -i
interrupt                          total       rate
irq1: atkbd0                        4442          4
irq12: psm0                        11991         12
irq14: ata0                         8668          8
irq15: ata1                           20          0
irq16: uhci0 uhci3                  2158          2
irq22: rl0                           161          0
irq23: ehci0                         137          0
cpu0: timer                      1986599       1996
Total                            2014176       2024

По IPv6 удалось выжать с такими настройками 920Mbit/s По lo0..

А по сетке в раене 200мбит/с так и осталосьИзображение
Аватара пользователя
Igor_I

Re: Производительность TCP/IP стека в FreeBSD

Сообщение Igor_I »

Цитата:



А по сетке в раене 200мбит/с так и осталось



То есть, сейчас стало лучше?

А в винты не упирается?
Аватара пользователя
brag

Re: Производительность TCP/IP стека в FreeBSD

Сообщение brag »

Не,сейчас 200мнит/с вместо 1000 или хотябы 700(как в инете пишут)

По lo0 где-то около 800 по IPv6, и около 500 По IPv4

По сетке один фиг. мож линк фиговый?

Надо затестить какой-то досовской тулой
Аватара пользователя
Igor_I

Re: Производительность TCP/IP стека в FreeBSD

Сообщение Igor_I »

Цитата:



Сделал дома гигабитную сеть и скорости желаемой не получил..начал копать.

Оказалось,даже через lo0 больше 32мбайт/сек получить не удается(netcat+dd if=/dev/zero),не говоря уже о всяких там ftp.



Было 32, стало 500 Изображение
Ответить

Вернуться в «Общий по FreeBSD»