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

тест шейперов на FREEBSD 7.1

Тема является логическим продолжением http://forum.nag.ru/forum/index.php?showtopic=47174

Провел всетаки ряд тестов, вот выкладываю

На стенде свич DES-3100-24, 6 генераторов трафа и тестовый сервер. Весь тестовый траф бегает в тегированном виде, 6 генераторов трафика в 3х вланах по 2 на 1 порт тестируемого сервера, траф роутится тестовым сервером и отправляется в порт с которого пришел, далее дропается свичем.

netstat -w 1 показывает двойной траф, таккак считает и физические интерфейсы и вланы.

 

генераторы потоков

ifconfig vlan201 create vlan 201 vlandev em0
ifconfig vlan201 10.188.1.3/24
ifconfig em0 up
route add 10.189.0.0/16 10.188.1.1

ifconfig vlan202 create vlan 202 vlandev em0
ifconfig vlan202 10.188.2.3/24
ifconfig em0 up
route add 10.189.0.0/16 10.188.2.1

ifconfig vlan203 create vlan 203 vlandev em0
ifconfig vlan203 10.188.3.3/24
ifconfig em0 up
route add 10.189.0.0/16 10.188.3.1

ifconfig vlan201 create vlan 201 vlandev em0
ifconfig vlan201 10.188.1.2/24
ifconfig em0 up
route add 10.189.1.0/24 10.188.1.1

ifconfig vlan202 create vlan 202 vlandev em1
ifconfig vlan202 10.188.2.2/24
ifconfig em1 up
route add 10.189.2.0/24 10.188.2.1

ifconfig vlan203 create vlan 203 vlandev em0
ifconfig vlan203 10.188.3.2/24
ifconfig em0 up
route add 10.189.3.0/24 10.188.3.1

потоки на вход

iperf -u -c 10.189.1.10 -i 10 -l 550 -t 300 -b 500M
0.0-85.7 sec  5.38 GBytes    539 Mbits/sec
iperf -u -c 10.189.2.10 -i 10 -l 550 -t 300 -b 500M
0.0-85.7 sec  5.36 GBytes    537 Mbits/sec
iperf -u -c 10.189.3.10 -i 10 -l 550 -t 300 -b 500M
0.0-85.4 sec  5.45 GBytes    548 Mbits/sec
iperf -u -c 10.189.1.10 -i 10 -l 550 -t 300 -b 300M
0.0-86.0 sec  2.99 GBytes    299 Mbits/sec
iperf -u -c 10.189.2.10 -i 10 -l 550 -t 300 -b 300M
0.0-87.0 sec  3.18 GBytes    314 Mbits/sec
iperf -u -c 10.189.3.10 -i 10 -l 550 -t 300 -b 300M
0.0-83.4 sec  2.88 GBytes    296 Mbits/sec

настройка тестового роутера

hw.em.rxd=1024
hw.em.txd=1024

ifconfig vlan201 create vlan 201 vlandev em0
ifconfig vlan211 create vlan 211 vlandev em0
ifconfig vlan201 10.188.1.1/24
ifconfig vlan211 10.189.1.1/24
arp -s 10.189.1.10 00:00:00:12:24:41
ifconfig em0 up

ifconfig vlan202 create vlan 202 vlandev em1
ifconfig vlan212 create vlan 212 vlandev em1
ifconfig vlan202 10.188.2.1/24
ifconfig vlan212 10.189.2.1/24
arp -s 10.189.2.10 00:00:00:12:24:42
ifconfig em1 up

ifconfig vlan203 create vlan 203 vlandev em2
ifconfig vlan213 create vlan 213 vlandev em2
ifconfig vlan203 10.188.3.1/24
ifconfig vlan213 10.189.3.1/24
arp -s 10.189.3.10 00:00:00:12:24:43
ifconfig em2 up


sysctl net.inet.ip.forwarding=1
sysctl net.inet.ip.fastforwarding=1
sysctl dev.em.0.rx_int_delay=250
sysctl dev.em.1.rx_int_delay=250
sysctl dev.em.2.rx_int_delay=250
sysctl dev.em.3.rx_int_delay=250
sysctl dev.em.0.tx_int_delay=250
sysctl dev.em.1.tx_int_delay=250
sysctl dev.em.2.tx_int_delay=250
sysctl dev.em.3.tx_int_delay=250
sysctl dev.em.0.rx_abs_int_delay=250
sysctl dev.em.1.rx_abs_int_delay=250
sysctl dev.em.2.rx_abs_int_delay=250
sysctl dev.em.3.rx_abs_int_delay=250
sysctl dev.em.0.tx_abs_int_delay=250
sysctl dev.em.1.tx_abs_int_delay=250
sysctl dev.em.2.tx_abs_int_delay=250
sysctl dev.em.3.tx_abs_int_delay=250
sysctl dev.em.0.rx_processing_limit=400
sysctl dev.em.1.rx_processing_limit=400
sysctl dev.em.2.rx_processing_limit=400
sysctl dev.em.3.rx_processing_limit=400

 

 

свич

create access_profile profile_id 1 ethernet destination_mac ff:ff:ff:ff:ff:00            
config access_profile profile_id 1 add access_id 1 ethernet destination_mac 00:00:00:12:24:00 ports 1:(1-24) deny            
            
create vlan 201 tag 201            
create vlan 202 tag 202            
create vlan 203 tag 203            
create vlan 204 tag 204            
create vlan 211 tag 211            
create vlan 212 tag 212            
create vlan 213 tag 213            
create vlan 214 tag 214            
            
config vlan 201 add tagged 1:(1-24)            
config vlan 202 add tagged 1:(1-24)            
config vlan 203 add tagged 1:(1-24)            
config vlan 204 add tagged 1:(1-24)            
config vlan 211 add tagged 1:(1-24)            
config vlan 212 add tagged 1:(1-24)            
config vlan 213 add tagged 1:(1-24)            
config vlan 214 add tagged 1:(1-24)

тест с 1 разрешающим все правилом в IPFW

last pid: 26222;  load averages:  0.72,  0.20,  0.07              up 7+11:09:16  01:06:26
86 processes:  7 running, 67 sleeping, 12 waiting
CPU 0:  0.0% user,  0.0% nice, 56.4% system,  0.0% interrupt, 43.6% idle
CPU 1:  0.0% user,  0.0% nice,  0.4% system,  0.0% interrupt, 99.6% idle
CPU 2:  0.0% user,  0.0% nice, 49.2% system,  0.0% interrupt, 50.8% idle
CPU 3:  0.0% user,  0.0% nice, 53.0% system,  0.0% interrupt, 47.0% idle
Mem: 20M Active, 155M Inact, 173M Wired, 208K Cache, 199M Buf, 1654M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   13 root        1 171 ki31     0K     8K RUN    1 178.4H 100.00% idle: cpu1
   12 root        1 171 ki31     0K     8K RUN    2 178.3H 59.86% idle: cpu2
   14 root        1 171 ki31     0K     8K RUN    0 178.2H 56.98% idle: cpu0
   11 root        1 171 ki31     0K     8K CPU3   3 178.3H 56.88% idle: cpu3
   24 root        1 -68    -     0K     8K -      3  40:42 47.85% em1 taskq
   25 root        1 -68    -     0K     8K CPU0   0  35:44 44.87% em2 taskq
   23 root        1 -68    -     0K     8K CPU2   2  45:39 43.26% em0 taskq
   33 root        1 -68    -     0K     8K -      1  22:25  0.00% dummynet
   15 root        1 -32    -     0K     8K WAIT   1  16:26  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:35  0.00% syncer
   17 root        1 -44    -     0K     8K WAIT   3   6:09  0.00% swi1: net
   18 root        1 -16    -     0K     8K -      1   1:27  0.00% yarrow
24619 root        1   5    0  3516K  1672K ttyin  1   0:28  0.00% systat
    4 root        1  -8    -     0K     8K -      2   0:11  0.00% g_down
    3 root        1  -8    -     0K     8K -      0   0:11  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 1   0:11  0.00% sshd
    2 root        1  -8    -     0K     8K -      0   0:08  0.00% g_event
25394 root        1  44    0  3496K  1836K CPU1   1   0:05  0.00% top
   28 root        1 -64    -     0K     8K WAIT   1   0:03  0.00% irq19: atapci1
  837 root        1  44    0  5876K  3344K select 3   0:03  0.00% sendmail
14654 root        1  44    0  6276K  2916K select 1   0:03  0.00% mc

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1122994     0  664703049    1123033     0  664690106     0
   1111578     0  657804194    1110911     0  657771698     0
   1114420     0  659680303    1114523     0  659674592     0
   1101816     0  652219078    1101570     0  652208992     0
   1121299     0  663751629    1121142     0  663742410     0
   1108574     0  655893470    1107858     0  655849792     0
   1102118     0  652395582    1102168     0  652388074     0
   1110142     0  657155617    1110015     0  657148048     0
   1115742     0  660426933    1115320     0  660414000     0
   1125577     0  666032964    1124942     0  665996672     0
   1105738     0  654538331    1106010     0  654530674     0

настройка шейперов

ipfw -f flush
ipfw -f pipe flush
ipfw pipe 1 config bw 500Mbit/s
ipfw pipe 2 config bw 500Mbit/s
ipfw pipe 3 config bw 500Mbit/s
ipfw pipe 4 config bw 500Mbit/s
ipfw pipe 5 config bw 500Mbit/s
ipfw pipe 6 config bw 500Mbit/s
ipfw pipe 7 config bw 500Mbit/s
ipfw pipe 8 config bw 500Mbit/s

ipfw -f flush
ipfw add 140 allow all from any to any out

ipfw add 160 pipe 1 all from 10.188.1.2 to any
ipfw add 170 pipe 2 all from 10.188.2.2 to any
ipfw add 180 pipe 3 all from 10.188.3.2 to any
#ipfw add 190 pipe 4 all from 10.188.4.2 to any
ipfw add 200 pipe 5 all from 10.188.1.3 to any
ipfw add 210 pipe 6 all from 10.188.2.3 to any
ipfw add 220 pipe 7 all from 10.188.3.3 to any
#ipfw add 230 pipe 8 all from 10.188.4.3 to any

тест с шейперами

глюки , потери консолей, даже когда поток превышал 1,2 гигабит на порт ему небыло так плохо.
повторный запуск с темиже параметрами и вроде работает

sysctl net.inet.ip.dummynet.io_fast=0


last pid: 24780;  load averages:  0.30,  0.07,  0.04              up 7+01:40:50  15:38:00
86 processes:  5 running, 69 sleeping, 12 waiting
CPU 0:  0.0% user,  0.0% nice, 60.5% system,  0.0% interrupt, 39.5% idle
CPU 1:  0.0% user,  0.0% nice, 67.3% system,  0.0% interrupt, 32.7% idle
CPU 2:  0.0% user,  0.0% nice, 65.4% system,  0.0% interrupt, 34.6% idle
CPU 3:  0.0% user,  0.0% nice, 68.0% system,  0.0% interrupt, 32.0% idle
Mem: 20M Active, 153M Inact, 172M Wired, 184K Cache, 199M Buf, 1658M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   24 root        1 -68    -     0K     8K -      3  32:20 92.09% em1 taskq
   23 root        1 -68    -     0K     8K -      2  34:17 69.87% em0 taskq
   14 root        1 171 ki31     0K     8K CPU0   0 168.9H 67.19% idle: cpu0
   33 root        1 -68    -     0K     8K -      1  17:41 55.86% dummynet
   13 root        1 171 ki31     0K     8K RUN    1 169.1H 51.66% idle: cpu1
   25 root        1 -68    -     0K     8K -      0  27:39 37.26% em2 taskq
   12 root        1 171 ki31     0K     8K RUN    2 169.0H 34.18% idle: cpu2
   11 root        1 171 ki31     0K     8K CPU3   3 169.0H 14.45% idle: cpu3
   15 root        1 -32    -     0K     8K WAIT   0  15:35  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 3   7:07  0.00% syncer
   18 root        1 -16    -     0K     8K -      2   1:17  0.00% yarrow
    4 root        1  -8    -     0K     8K -      0   0:10  0.00% g_down
    3 root        1  -8    -     0K     8K -      3   0:10  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 0   0:09  0.00% sshd
    2 root        1  -8    -     0K     8K -      3   0:07  0.00% g_event
   28 root        1 -64    -     0K     8K WAIT   1   0:03  0.00% irq19: atapci1
  837 root        1  44    0  5876K  3344K select 3   0:03  0.00% sendmail
14654 root        1  44    0  6276K  2916K select 0   0:02  0.00% mc
24619 root        1   5    0  3516K  1672K ttyin  1   0:02  0.00% systat
   40 root        1 -16    -     0K     8K sdflus 0   0:01  0.00% softdepflush


            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1135023     0  671806851     906483     0  537215952     0
   1137516     0  673361343     909357     0  537711642     0
   1146635     0  678749591     908461     0  537888208     0
   1134437     0  671543514     902404     0  534149466     0
   1149683     0  680463557     902414     0  534212736     0
   1141550     0  675739265     907858     0  537449690     0
   1131726     0  669944362     909431     0  538398822     0
   1142818     0  676504193     901747     0  533821764     0
   1137922     0  673566343     902511     0  534294678     0
  
sysctl net.inet.ip.dummynet.io_fast=1

   1144148     0  677298955    1058397     0  626546438     0
   1144724     0  677628124    1058826     0  626974938     0
   1143796     0  677027029    1058545     0  626553318     0
   1140495     0  675137070    1056985     0  625690394     0
   1146679     0  678789622    1061292     0  628280998     0
   1142401     0  676250723    1056911     0  625698250     0
   1142800     0  676459778    1057387     0  625997600     0
   1144061     0  677247264    1058589     0  626650842     0
   1141403     0  675680516    1057710     0  626168150     0
   1148342     0  679777231    1062177     0  628805306     0

last pid: 24784;  load averages:  0.69,  0.31,  0.14              up 7+01:44:02  15:41:12
86 processes:  6 running, 68 sleeping, 12 waiting
CPU 0:  0.0% user,  0.0% nice, 61.7% system,  0.0% interrupt, 38.3% idle
CPU 1:  0.0% user,  0.0% nice, 57.9% system,  0.0% interrupt, 42.1% idle
CPU 2:  0.0% user,  0.0% nice, 61.3% system,  0.0% interrupt, 38.7% idle
CPU 3:  0.0% user,  0.0% nice, 65.0% system,  0.0% interrupt, 35.0% idle
Mem: 20M Active, 153M Inact, 172M Wired, 184K Cache, 199M Buf, 1658M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   24 root        1 -68    -     0K     8K -      3  34:19 98.58% em1 taskq
   13 root        1 171 ki31     0K     8K RUN    1 169.1H 81.79% idle: cpu1
   14 root        1 171 ki31     0K     8K RUN    0 168.9H 70.17% idle: cpu0
   23 root        1 -68    -     0K     8K CPU2   2  36:10 64.70% em0 taskq
   12 root        1 171 ki31     0K     8K RUN    2 169.0H 36.08% idle: cpu2
   25 root        1 -68    -     0K     8K -      0  29:33 35.89% em2 taskq
   33 root        1 -68    -     0K     8K -      1  19:14 21.68% dummynet
   11 root        1 171 ki31     0K     8K CPU3   3 169.1H  0.29% idle: cpu3
   15 root        1 -32    -     0K     8K WAIT   0  15:36  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:07  0.00% syncer
   18 root        1 -16    -     0K     8K -      1   1:17  0.00% yarrow
    4 root        1  -8    -     0K     8K -      3   0:10  0.00% g_down
    3 root        1  -8    -     0K     8K -      0   0:10  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 1   0:10  0.00% sshd
    2 root        1  -8    -     0K     8K -      2   0:07  0.00% g_event
   28 root        1 -64    -     0K     8K WAIT   1   0:03  0.00% irq19: atapci1
  837 root        1  44    0  5876K  3344K select 0   0:03  0.00% sendmail

настройка шейперов с укороченной очередью

ipfw -f flush
ipfw -f pipe flush
ipfw pipe 1 config bw 500Mbit/s queue 122KBytes
ipfw pipe 2 config bw 500Mbit/s queue 122KBytes
ipfw pipe 3 config bw 500Mbit/s queue 122KBytes
ipfw pipe 4 config bw 500Mbit/s queue 122KBytes
ipfw pipe 5 config bw 500Mbit/s queue 122KBytes
ipfw pipe 6 config bw 500Mbit/s queue 122KBytes
ipfw pipe 7 config bw 500Mbit/s queue 122KBytes
ipfw pipe 8 config bw 500Mbit/s queue 122KBytes


ipfw -f flush
ipfw add 750 allow all from any to any out

ipfw add 770 pipe 1 all from 10.188.1.2 to any
ipfw add 780 pipe 2 all from 10.188.2.2 to any
ipfw add 790 pipe 3 all from 10.188.3.2 to any
ipfw add 800 pipe 4 all from 10.188.4.2 to any
ipfw add 810 pipe 5 all from 10.188.1.3 to any
ipfw add 820 pipe 6 all from 10.188.2.3 to any
ipfw add 830 pipe 7 all from 10.188.3.3 to any
ipfw add 840 pipe 8 all from 10.188.4.3 to any

тест с модифицированными шейперами

sysctl net.inet.ip.dummynet.io_fast=0

last pid: 25064;  load averages:  1.41,  0.41,  0.15              up 7+03:07:49  17:04:59
86 processes:  7 running, 67 sleeping, 12 waiting
CPU 0:  0.0% user,  0.0% nice, 59.9% system,  0.0% interrupt, 40.1% idle
CPU 1:  0.0% user,  0.0% nice, 86.9% system,  0.0% interrupt, 13.1% idle
CPU 2:  0.0% user,  0.0% nice, 61.4% system,  0.0% interrupt, 38.6% idle
CPU 3:  0.0% user,  0.0% nice, 67.8% system,  0.0% interrupt, 32.2% idle
Mem: 20M Active, 154M Inact, 173M Wired, 184K Cache, 199M Buf, 1655M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   33 root        1 -68    -     0K     8K -      1  21:00 88.96% dummynet
   24 root        1 -68    -     0K     8K CPU3   3  36:25 80.08% em1 taskq
   23 root        1 -68    -     0K     8K -      2  38:05 68.26% em0 taskq
   25 root        1 -68    -     0K     8K CPU0   0  31:32 55.08% em2 taskq
   14 root        1 171 ki31     0K     8K RUN    0 170.3H 50.39% idle: cpu0
   12 root        1 171 ki31     0K     8K CPU2   2 170.4H 38.96% idle: cpu2
   11 root        1 171 ki31     0K     8K CPU3   3 170.4H 23.58% idle: cpu3
   13 root        1 171 ki31     0K     8K RUN    1 170.5H 17.48% idle: cpu1
   15 root        1 -32    -     0K     8K WAIT   2  15:43  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:12  0.00% syncer
   18 root        1 -16    -     0K     8K -      0   1:19  0.00% yarrow
    4 root        1  -8    -     0K     8K -      0   0:11  0.00% g_down
    3 root        1  -8    -     0K     8K -      0   0:10  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 0   0:10  0.00% sshd
    2 root        1  -8    -     0K     8K -      2   0:07  0.00% g_event
24619 root        1   5    0  3516K  1672K ttyin  1   0:06  0.00% systat
   28 root        1 -64    -     0K     8K WAIT   2   0:03  0.00% irq19: atapci1

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1101161     0  651546158     996483     0  589676698     0
   1124416     0  665555347    1011763     0  599352384     0
   1100415     0  651355325     993185     0  587629546     0
   1103635     0  653259269    1001747     0  593091914     0
   1099420     0  650422698     991770     0  587149072     0
   1092784     0  646343291     992482     0  587631264     0
   1083879     0  641518260     987677     0  584733376     0
   1082753     0  640878601     984487     0  582673264     0
   1087440     0  643633588     990121     0  586199744     0
   1092442     0  646513325     990555     0  586374272     0
    975957     0  577130168     883886     0  523366890     0
   1052499     0  622509328     954523     0  565235904     0
   1087880     0  643912154     988878     0  585382346     0
   1093508     0  647212356     989103     0  585706080     0
   1117973     0  661724790    1012697     0  599520192     0
   1085620     0  642576247     988080     0  584418480     0
   1114699     0  659255928    1016358     0  601681258     0
   1099657     0  650765899     996885     0  590611984     0

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

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1115580     0  659772488    1003663     0  594459392     0
   1114768     0  659619329    1011200     0  598542512     0
   1099335     0  650708418     992399     0  587503984     0
   1109706     0  656854471    1006748     0  595979904     0
   1107146     0  655328593     998398     0  591144192     0
   1103077     0  652545049    1001987     0  592851002     0
   1111752     0  657962910     998604     0  591561834     0
   1117262     0  661316129    1011523     0  598523078     0
   1106954     0  655214558    1002731     0  593731610     0
   1086087     0  642867219     993914     0  588215598     0
   1114336     0  658979506    1029835     0  610119568     0
   1111277     0  657723115    1027162     0  607856864     0
   1102122     0  652346542    1015155     0  601029408     0
   1098380     0  650159708    1014936     0  600627152     0
   1100950     0  651591501    1016905     0  601906160     0
   1088875     0  643851106    1008405     0  596915098     0
   1089244     0  644532745    1009794     0  597914304     0
   1064744     0  630217762     981652     0  581095504     0
   1071490     0  634237438     988639     0  585180144     0
   1018363     0  602770068     936493     0  554584234     0
   1105469     0  653763346    1020732     0  604413872     0


last pid: 25068;  load averages:  1.72,  0.67,  0.26              up 7+03:08:47  17:05:57
86 processes:  7 running, 67 sleeping, 12 waiting
CPU 0:  0.0% user,  0.0% nice, 61.8% system,  0.0% interrupt, 38.2% idle
CPU 1:  0.0% user,  0.0% nice, 87.3% system,  0.0% interrupt, 12.7% idle
CPU 2:  0.0% user,  0.0% nice, 66.3% system,  0.0% interrupt, 33.7% idle
CPU 3:  0.0% user,  0.0% nice, 69.7% system,  0.0% interrupt, 30.3% idle
Mem: 20M Active, 154M Inact, 173M Wired, 184K Cache, 199M Buf, 1655M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   33 root        1 -68    -     0K     8K CPU1   1  21:49 87.26% dummynet
   24 root        1 -68    -     0K     8K -      3  37:07 82.96% em1 taskq
   23 root        1 -68    -     0K     8K CPU2   2  38:43 72.56% em0 taskq
   25 root        1 -68    -     0K     8K -      0  32:07 56.30% em2 taskq
   14 root        1 171 ki31     0K     8K RUN    0 170.3H 48.68% idle: cpu0
   12 root        1 171 ki31     0K     8K RUN    2 170.4H 34.38% idle: cpu2
   11 root        1 171 ki31     0K     8K CPU3   3 170.4H 20.56% idle: cpu3
   13 root        1 171 ki31     0K     8K RUN    1 170.5H 20.36% idle: cpu1
   15 root        1 -32    -     0K     8K WAIT   2  15:43  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:12  0.00% syncer
   18 root        1 -16    -     0K     8K -      3   1:19  0.00% yarrow
    4 root        1  -8    -     0K     8K -      0   0:11  0.00% g_down
    3 root        1  -8    -     0K     8K -      0   0:10  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 2   0:10  0.00% sshd
    2 root        1  -8    -     0K     8K -      0   0:07  0.00% g_event
24619 root        1   5    0  3516K  1672K ttyin  2   0:06  0.00% systat
   28 root        1 -64    -     0K     8K WAIT   2   0:03  0.00% irq19: atapci1

настройки шейпера NG_CAR

ngctl mkpeer ipfw: car 1 upper
ngctl name ipfw:1 car_1
ngctl connect car_1: ipfw: lower 2

ngctl mkpeer ipfw: car 3 upper
ngctl name ipfw:3 car_3
ngctl connect car_3: ipfw: lower 4

ngctl mkpeer ipfw: car 5 upper
ngctl name ipfw:5 car_5
ngctl connect car_5: ipfw: lower 6

ngctl mkpeer ipfw: car 7 upper
ngctl name ipfw:7 car_7
ngctl connect car_7: ipfw: lower 8

ngctl msg car_1: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_3: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_5: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_7: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }

ipfw -f flush
ipfw add 500 allow all from any to any out

ipfw add 520 netgraph 1 all from 10.188.1.2 to any
ipfw add 530 netgraph 2 all from 10.188.2.2 to any
ipfw add 540 netgraph 3 all from 10.188.3.2 to any
ipfw add 550 netgraph 4 all from 10.188.4.2 to any
ipfw add 560 netgraph 5 all from 10.188.1.3 to any
ipfw add 570 netgraph 6 all from 10.188.2.3 to any
ipfw add 580 netgraph 7 all from 10.188.3.3 to any
ipfw add 590 netgraph 8 all from 10.188.4.3 to any

тест с шейпером NG_CAR

last pid: 25202;  load averages:  1.50,  0.64,  0.30              up 7+03:29:11  17:26:21
85 processes:  9 running, 65 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice, 64.7% system,  0.0% interrupt, 35.3% idle
CPU 1:  0.0% user,  0.0% nice,  0.0% system,  100% interrupt,  0.0% idle
CPU 2:  0.0% user,  0.0% nice, 77.5% system,  0.0% interrupt, 22.5% idle
CPU 3:  0.0% user,  0.0% nice, 85.0% system,  0.0% interrupt, 15.0% idle
Mem: 20M Active, 154M Inact, 173M Wired, 184K Cache, 199M Buf, 1655M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   17 root        1 -44    -     0K     8K CPU2   2   2:41 100.00% swi1: net
   24 root        1 -68    -     0K     8K CPU3   3  38:54 84.86% em1 taskq
   23 root        1 -68    -     0K     8K CPU2   2  40:21 80.86% em0 taskq
   25 root        1 -68    -     0K     8K CPU0   0  33:40 72.46% em2 taskq
   14 root        1 171 ki31     0K     8K RUN    0 170.6H 33.50% idle: cpu0
   12 root        1 171 ki31     0K     8K RUN    2 170.7H 23.88% idle: cpu2
   11 root        1 171 ki31     0K     8K RUN    3 170.7H 17.77% idle: cpu3
   13 root        1 171 ki31     0K     8K RUN    1 170.8H  0.68% idle: cpu1
   33 root        1 -68    -     0K     8K -      1  21:58  0.00% dummynet
   15 root        1 -32    -     0K     8K WAIT   2  15:45  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:13  0.00% syncer
   18 root        1 -16    -     0K     8K -      0   1:19  0.00% yarrow
    4 root        1  -8    -     0K     8K -      0   0:11  0.00% g_down

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1089748     0  644462329    1088424     0  644384062     0
   1099586     0  650838436    1099316     0  650822528     0
   1103635     0  653275455    1103510     0  653266532     0
момент загрузки правил
   1073028     0  634818883     722926     0  427935192     0
   1103003     0  652320465     448286     0  265348358     0
   1052725     0  623091537     474947     0  281227296     0
   1100522     0  651448510     453589     0  268461162     0
   1098036     0  649968439     452525     0  267893302     0
   1111249     0  657739100     439208     0  260003904     0
   1088704     0  643851595     457904     0  271108400     0
   1089799     0  644655611     456033     0  270047664     0
   1100098     0  651158351     451499     0  267168640     0

тест с шейпером NG_CAR и увеличенными cbs ebs

ngctl msg car_1: setconf { upstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_3: setconf { upstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_5: setconf { upstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_7: setconf { upstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=937500 ebs=625000 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }

last pid: 25313;  load averages:  1.31,  0.40,  0.19              up 7+03:59:13  17:56:23
85 processes:  7 running, 67 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice, 70.8% system,  0.0% interrupt, 29.2% idle
CPU 1:  0.0% user,  0.0% nice,  0.0% system,  100% interrupt,  0.0% idle
CPU 2:  0.0% user,  0.0% nice, 84.6% system,  0.0% interrupt, 15.4% idle
CPU 3:  0.0% user,  0.0% nice, 82.6% system,  0.0% interrupt, 17.4% idle
Mem: 20M Active, 154M Inact, 173M Wired, 184K Cache, 199M Buf, 1655M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   17 root        1 -44    -     0K     8K CPU1   1   3:29 97.46% swi1: net
   24 root        1 -68    -     0K     8K CPU2   3  40:13 90.97% em1 taskq
   23 root        1 -68    -     0K     8K -      3  41:43 87.50% em0 taskq
   25 root        1 -68    -     0K     8K -      0  35:08 73.78% em2 taskq
   14 root        1 171 ki31     0K     8K RUN    0 171.1H 28.86% idle: cpu0
   12 root        1 171 ki31     0K     8K RUN    2 171.2H 16.99% idle: cpu2
   11 root        1 171 ki31     0K     8K CPU3   3 171.2H 14.79% idle: cpu3
   13 root        1 171 ki31     0K     8K RUN    1 171.3H  6.05% idle: cpu1
   33 root        1 -68    -     0K     8K -      3  22:00  0.00% dummynet
   15 root        1 -32    -     0K     8K WAIT   3  15:48  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:14  0.00% syncer
   18 root        1 -16    -     0K     8K -      0   1:20  0.00% yarrow
    4 root        1  -8    -     0K     8K -      0   0:11  0.00% g_down
    3 root        1  -8    -     0K     8K -      0   0:10  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 0   0:10  0.00% sshd
24619 root        1   5    0  3516K  1672K ttyin  0   0:09  0.00% systat
    2 root        1  -8    -     0K     8K -      0   0:07  0.00% g_event
   28 root        1 -64    -     0K     8K WAIT   1   0:03  0.00% irq19: atapci1



            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1145445     0  677683393    1144592     0  677636122     0
   1130159     0  668679722    1129592     0  668636080     0
   1145838     0  678247754    1145281     0  678233866     0
   1070984     0  633938347    1071195     0  633930400     0
   1050356     0  621725827    1050257     0  621735882     0
   1057508     0  625572021    1056574     0  625494992     0
   1071017     0  633601566    1070185     0  633551578     0
   1138610     0  673979434    1138510     0  673968352     0
момент загрузки правил
   1145663     0  678076530     448317     0  265365902     0
   1139461     0  674429885     427133     0  252932870     0
   1139946     0  674455935     425945     0  252130218     0
   1120043     0  662653197     434209     0  257023590     0
   1141566     0  675708887     421163     0  249330122     0
   1149010     0  680086495     417566     0  247234224     0
   1150736     0  681148629     415935     0  246199514     0
   1133589     0  670637950     427577     0  253170262     0
   1143056     0  676258529     421803     0  249742612     0
   1149678     0  680515576     416375     0  246472758     0
   1148545     0  679806669     419881     0  248458362     0
   1121019     0  663517617     429245     0  254232902     0
   1142557     0  676051926     417822     0  247269744     0

Варианты с NG_CAR както полохенько работает, наверно надо крутить sysctl переменные, но это буду делать завтра

Share this post


Link to post
Share on other sites

А если попробовать вот так:

cbs=65536000
ebs=98304000
cir=529536000

 

И еще вопрос: Netgraph - модулями или в ядре?

Edited by Dm1try

Share this post


Link to post
Share on other sites

 

"А в попугаях я гораздо длиннее" (с) Удав

 

 

Share this post


Link to post
Share on other sites

ключевым моментов при использовании netgraph является рост 97.46% swi1: net. и после этого наблюдаются различные варианты от падения производительности до повисона машины

Share this post


Link to post
Share on other sites

Конфиг ядра

cpu             I686_CPU
ident           gw1

# 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        SCHED_4BSD              # 4BSD 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_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         _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_HOOKS           # Kernel DTrace hooks


options         KVA_PAGES=512
options         IPFIREWALL_DEFAULT_TO_ACCEPT
options         IPFIREWALL
options         DUMMYNET
#options                DEVICE_POLLING

options         IPDIVERT #     (NATD)

options         LIBALIAS
options         NETGRAPH
options         NETGRAPH_IPFW
options         NETGRAPH_NAT
options         NETGRAPH_NETFLOW
options         NETGRAPH_SPLIT
options         NETGRAPH_ETHER
options         NETGRAPH_KSOCKET
options         NETGRAPH_SOCKET
options         NETGRAPH_BPF
options         NETGRAPH_IFACE
options         NETGRAPH_MPPC_ENCRYPTION
options         NETGRAPH_PPP
options         NETGRAPH_PPTPGRE
options         NETGRAPH_TCPMSS
options         NETGRAPH_VJC

дальше все лишнее убито.

 

увеличение

cbs=93750 ebs=62500

до

cbs=937500 ebs=625000

только увеличивает нагрузку на проц.

 

 

Share this post


Link to post
Share on other sites

А если подключать ng_car напрямую к интерфейсу в обход ipfw?

Share this post


Link to post
Share on other sites
А если подключать ng_car напрямую к интерфейсу в обход ipfw?

Тогда Вы ограничите скорость для всего интерфейса в целом, но не для нужных сетей.

Share this post


Link to post
Share on other sites
А если подключать ng_car напрямую к интерфейсу в обход ipfw?

Тогда Вы ограничите скорость для всего интерфейса в целом, но не для нужных сетей.

Я не о том :)

Я о производительности. Нет ли потерь в производительности на divert'е из ipfw в netgraph?

 

Share this post


Link to post
Share on other sites

Еще чуть чуть тестов

 

amd64 ядро

тест с 1 разрешающим все правилом в IPFW

 

last pid:  1241;  load averages:  0.61,  0.18,  0.06               up 0+00:25:11  17:18:33
84 processes:  6 running, 67 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
CPU 1:  0.0% user,  0.0% nice, 36.5% system,  0.0% interrupt, 63.5% idle
CPU 2:  0.0% user,  0.0% nice, 36.5% system,  0.0% interrupt, 63.5% idle
CPU 3:  0.0% user,  0.0% nice, 39.5% system,  0.0% interrupt, 60.5% idle
Mem: 22M Active, 9008K Inact, 45M Wired, 96K Cache, 9392K Buf, 1903M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   14 root        1 171 ki31     0K    16K RUN    0  24:37 100.00% idle: cpu0
   11 root        1 171 ki31     0K    16K CPU3   3  24:22 62.70% idle: cpu3
   12 root        1 171 ki31     0K    16K CPU2   2  24:19 60.69% idle: cpu2
   13 root        1 171 ki31     0K    16K CPU1   1  24:11 59.38% idle: cpu1
   23 root        1 -68    -     0K    16K -      1   0:26 42.87% em0 taskq
   24 root        1 -68    -     0K    16K -      2   0:20 41.16% em1 taskq
   25 root        1 -68    -     0K    16K CPU3   3   0:18 38.67% em2 taskq
   16 root        1 -32    -     0K    16K WAIT   0   0:02  0.00% swi4: clock
   32 root        1 -68    -     0K    16K -      0   0:02  0.00% dummynet
   18 root        1 -16    -     0K    16K -      1   0:00  0.00% yarrow
1220 root        1  44    0  8112K  2208K CPU0   0   0:00  0.00% top
   26 root        1 -68    -     0K    16K -      0   0:00  0.00% em3 taskq
    4 root        1  -8    -     0K    16K -      0   0:00  0.00% g_down
  973 ivan        1  44    0 33768K  4732K select 0   0:00  0.00% sshd
1221 root        1  20    0  9888K  1272K pause  0   0:00  0.00% netstat
    3 root        1  -8    -     0K    16K -      0   0:00  0.00% g_up
   28 root        1 -64    -     0K    16K WAIT   0   0:00  0.00% irq19: atapci1+
  954 ivan        1  44    0 33768K  4732K select 0   0:00  0.00% sshd
    2 root        1  -8    -     0K    16K -      0   0:00  0.00% g_event
  926 root        1   5    0  9076K  2628K ttyin  3   0:00  0.00% csh

             input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1148066     0  679215087    1147277     0  679163344     0
   1137811     0  673506899    1137719     0  673494820     0
   1149378     0  680341509    1149190     0  680329584     0
   1135454     0  672100904    1135166     0  672086608     0
   1144203     0  677008091    1143620     0  676967024     0
   1142921     0  676523452    1142754     0  676511146     0
   1141862     0  675896970    1141739     0  675884256     0
   1133146     0  670724270    1132925     0  670711370     0
   1126967     0  666931437    1126550     0  666903024     0
   1140553     0  674852262    1139874     0  674809616     0
   1151860     0  681829464    1151570     0  681815504     0

 

тест с шейперами думинет из 1 поста

 

last pid:  1266;  load averages:  0.30,  0.20,  0.10               up 0+00:28:35  17:21:57
84 processes:  7 running, 66 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice, 42.9% system,  0.0% interrupt, 57.1% idle
CPU 1:  0.0% user,  0.0% nice, 60.5% system,  0.0% interrupt, 39.5% idle
CPU 2:  0.0% user,  0.0% nice, 66.9% system,  0.0% interrupt, 33.1% idle
CPU 3:  0.0% user,  0.0% nice, 60.5% system,  0.0% interrupt, 39.5% idle
Mem: 22M Active, 9068K Inact, 47M Wired, 88K Cache, 9392K Buf, 1901M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   14 root        1 171 ki31     0K    16K CPU0   0  27:23 89.36% idle: cpu0
   24 root        1 -68    -     0K    16K CPU2   2   1:08 57.18% em1 taskq
   11 root        1 171 ki31     0K    16K RUN    3  27:00 54.69% idle: cpu3
   23 root        1 -68    -     0K    16K CPU1   1   1:12 52.10% em0 taskq
   25 root        1 -68    -     0K    16K -      3   1:03 48.19% em2 taskq
   13 root        1 171 ki31     0K    16K RUN    1  26:50 48.10% idle: cpu1
   12 root        1 171 ki31     0K    16K RUN    2  26:55 44.29% idle: cpu2
   32 root        1 -68    -     0K    16K -      0   0:40 11.67% dummynet
   16 root        1 -32    -     0K    16K WAIT   1   0:03  0.00% swi4: clock
   18 root        1 -16    -     0K    16K -      3   0:00  0.00% yarrow
1220 root        1  44    0  8112K  2208K CPU3   3   0:00  0.00% top
   26 root        1 -68    -     0K    16K -      0   0:00  0.00% em3 taskq
  973 ivan        1  44    0 33768K  4732K select 1   0:00  0.00% sshd

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
   1152370     0  682154932     936845     0  554633776     0
   1146528     0  678672835     946616     0  560346810     0
   1139046     0  674263006     948053     0  561495648     0
   1142228     0  675875169     947872     0  560925610     0
   1145320     0  677795594     933210     0  552585456     0
   1144808     0  677663782     937504     0  554825178     0
   1134141     0  671283383     942929     0  558188736     0
   1138687     0  674033917     954482     0  565092656     0
   1140169     0  674598363     948058     0  561250560     0
sysctl net.inet.ip.dummynet.io_fast=1
   1127012     0  666973556    1035327     0  612931540     0
   1133413     0  670927142    1049893     0  621782186     0
   1106628     0  655055419    1025786     0  606997360     0
   1109633     0  656842517    1029159     0  609396816     0
   1107954     0  655511706    1026914     0  607803664     0
   1115116     0  660023441    1036199     0  613405216     0
   1119811     0  662833532    1039566     0  615710416     0
   1116185     0  660714636    1035155     0  612507914     0
   1130381     0  669020213    1046979     0  619835472     0
   1115548     0  660130841    1036039     0  613305898     0

last pid:  1371;  load averages:  0.35,  0.28,  0.17               up 0+01:06:31  17:59:53
84 processes:  7 running, 66 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice, 19.9% system,  0.0% interrupt, 80.1% idle
CPU 1:  0.0% user,  0.0% nice, 63.5% system,  0.0% interrupt, 36.5% idle
CPU 2:  0.0% user,  0.0% nice, 69.5% system,  0.0% interrupt, 30.5% idle
CPU 3:  0.0% user,  0.0% nice, 59.8% system,  0.0% interrupt, 40.2% idle
Mem: 22M Active, 9600K Inact, 48M Wired, 88K Cache, 9600K Buf, 1900M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   14 root        1 171 ki31     0K    16K CPU0   0  61:08 99.56% idle: cpu0
   23 root        1 -68    -     0K    16K -      1   6:28 71.88% em0 taskq
   24 root        1 -68    -     0K    16K CPU2   2   5:19 65.48% em1 taskq
   11 root        1 171 ki31     0K    16K RUN    3  60:41 52.39% idle: cpu3
   25 root        1 -68    -     0K    16K CPU0   3   4:50 50.39% em2 taskq
   12 root        1 171 ki31     0K    16K CPU2   2  60:16 41.26% idle: cpu2
   13 root        1 171 ki31     0K    16K CPU1   1  59:24 30.86% idle: cpu1
   32 root        1 -68    -     0K    16K -      3   5:33  0.00% dummynet
   16 root        1 -32    -     0K    16K WAIT   3   0:07  0.00% swi4: clock
   18 root        1 -16    -     0K    16K -      1   0:02  0.00% yarrow
  935 ivan        1  44    0 33768K  4732K select 1   0:01  0.00% sshd
  943 root        1  44    0 11952K  3248K select 1   0:00  0.00% mc
1220 root        1  44    0  8112K  2208K CPU1   1   0:00  0.00% top
  973 ivan        1  44    0 33768K  4732K select 0   0:00  0.00% sshd
   26 root        1 -68    -     0K    16K -      0   0:00  0.00% em3 taskq
1221 root        1  20    0  9888K  1272K pause  2   0:00  0.00% netstat
  954 ivan        1  44    0 33768K  4732K select 2   0:00  0.00% sshd
    4 root        1  -8    -     0K    16K -      1   0:00  0.00% g_down

почемуто увеличивается полоса и нагруз на проц

 

сравнение NG_CAR 32 VS 62 бит

 

шейпер

ngctl mkpeer ipfw: car 1 upper
ngctl name ipfw:1 car_1
ngctl connect car_1: ipfw: lower 2

ngctl mkpeer ipfw: car 3 upper
ngctl name ipfw:3 car_3
ngctl connect car_3: ipfw: lower 4

ngctl mkpeer ipfw: car 5 upper
ngctl name ipfw:5 car_5
ngctl connect car_5: ipfw: lower 6

ngctl mkpeer ipfw: car 7 upper
ngctl name ipfw:7 car_7
ngctl connect car_7: ipfw: lower 8

ngctl msg car_1: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_3: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_5: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }
ngctl msg car_7: setconf { upstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } downstream= { cbs=93750 ebs=62500 cir=500000000 greenAction=1 yellowAction=1 redAction=2 mode=2 } }

ipfw -f flush
ipfw add 500 allow all from any to any out

ipfw add 520 netgraph 1 all from 10.188.1.2 to any
ipfw add 530 netgraph 2 all from 10.188.2.2 to any
ipfw add 540 netgraph 3 all from 10.188.3.2 to any
ipfw add 550 netgraph 4 all from 10.188.4.2 to any
ipfw add 560 netgraph 5 all from 10.188.1.3 to any
ipfw add 570 netgraph 6 all from 10.188.2.3 to any
ipfw add 580 netgraph 7 all from 10.188.3.3 to any
ipfw add 590 netgraph 8 all from 10.188.4.3 to any

 

32 бит 7.1

1 поток
0.0-90.9 sec  5.77 GBytes    545 Mbits/sec

last pid: 26281;  load averages:  0.17,  0.14,  0.07              up 7+11:35:45  01:32:55
85 processes:  6 running, 68 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
CPU 1:  0.0% user,  0.0% nice,  0.0% system, 44.4% interrupt, 55.6% idle
CPU 2:  0.0% user,  0.0% nice, 31.6% system,  0.0% interrupt, 68.4% idle
CPU 3:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 20M Active, 155M Inact, 173M Wired, 208K Cache, 199M Buf, 1654M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   11 root        1 171 ki31     0K     8K CPU3   3 178.8H 100.00% idle: cpu3
   14 root        1 171 ki31     0K     8K RUN    0 178.6H 100.00% idle: cpu0
   12 root        1 171 ki31     0K     8K CPU2   2 178.7H 73.49% idle: cpu2
   13 root        1 171 ki31     0K     8K RUN    1 178.8H 67.19% idle: cpu1
   17 root        1 -44    -     0K     8K CPU1   1   8:08 36.08% swi1: net
   23 root        1 -68    -     0K     8K -      2  47:01 30.18% em0 taskq
   24 root        1 -68    -     0K     8K -      3  41:13  0.00% em1 taskq
   25 root        1 -68    -     0K     8K -      0  35:47  0.00% em2 taskq
   33 root        1 -68    -     0K     8K -      0  22:27  0.00% dummynet
   15 root        1 -32    -     0K     8K WAIT   0  16:29  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:36  0.00% syncer
   18 root        1 -16    -     0K     8K -      2   1:28  0.00% yarrow
24619 root        1   5    0  3516K  1672K ttyin  3   0:29  0.00% systat
    4 root        1  -8    -     0K     8K -      2   0:11  0.00% g_down
    3 root        1  -8    -     0K     8K -      1   0:11  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 0   0:11  0.00% sshd
    2 root        1  -8    -     0K     8K -      0   0:08  0.00% g_event
   28 root        1 -64    -     0K     8K WAIT   1   0:03  0.00% irq19: atapci1
  837 root        1  44    0  5876K  3344K select 0   0:03  0.00% sendmail
14654 root        1  44    0  6276K  2916K select 3   0:03  0.00% mc
   40 root        1 -16    -     0K     8K sdflus 3   0:01  0.00% softdepflush



            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
    249772     0  147793111     216112     0  127952198     0
    249666     0  147745220     216192     0  127968340     0
    249873     0  147789485     216150     0  127959894     0
    249725     0  147775342     216172     0  127969658     0
    249566     0  147691585     216109     0  127945686     0
второй поток
0.0-87.2 sec  5.50 GBytes    542 Mbits/sec
    494526     0  292627966     432357     0  255946438     0
    494608     0  292763390     432228     0  255904506     0
    494311     0  292584100     432370     0  255937270     0
    494487     0  292694775     432315     0  255921450     0
    494621     0  292667186     432333     0  255936624     0
    494427     0  292649052     432335     0  255936410     0
    494425     0  292654012     432262     0  255919456     0
    494325     0  292592669     432270     0  255918682     0
    494386     0  292530617     432377     0  255934310     0
    494549     0  292726838     432325     0  255931706     0
    494539     0  292710688     432311     0  255935750     0



last pid: 26277;  load averages:  0.46,  0.19,  0.07              up 7+11:33:08  01:30:18
85 processes:  7 running, 67 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
CPU 1:  0.0% user,  0.0% nice,  0.0% system, 76.7% interrupt, 23.3% idle
CPU 2:  0.0% user,  0.0% nice, 31.6% system,  0.0% interrupt, 68.4% idle
CPU 3:  0.0% user,  0.0% nice, 27.1% system,  0.0% interrupt, 72.9% idle
Mem: 20M Active, 155M Inact, 173M Wired, 208K Cache, 199M Buf, 1654M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   14 root        1 171 ki31     0K     8K RUN    0 178.6H 100.00% idle: cpu0
   17 root        1 -44    -     0K     8K CPU1   1   7:56 79.39% swi1: net
   11 root        1 171 ki31     0K     8K CPU3   3 178.7H 77.29% idle: cpu3
   12 root        1 171 ki31     0K     8K CPU2   2 178.6H 73.19% idle: cpu2
   23 root        1 -68    -     0K     8K -      2  46:53 31.98% em0 taskq
   24 root        1 -68    -     0K     8K CPU3   3  41:12 28.66% em1 taskq
   13 root        1 171 ki31     0K     8K RUN    1 178.8H 28.47% idle: cpu1
   25 root        1 -68    -     0K     8K -      0  35:47  0.00% em2 taskq
   33 root        1 -68    -     0K     8K -      0  22:26  0.00% dummynet
   15 root        1 -32    -     0K     8K WAIT   0  16:28  0.00% swi4: clock
   26 root        1 -68    -     0K     8K -      1  15:27  0.00% em3 taskq
   38 root        1  20    -     0K     8K syncer 0   7:36  0.00% syncer
   18 root        1 -16    -     0K     8K -      0   1:28  0.00% yarrow
24619 root        1   5    0  3516K  1672K ttyin  0   0:29  0.00% systat
    4 root        1  -8    -     0K     8K -      1   0:11  0.00% g_down
    3 root        1  -8    -     0K     8K -      0   0:11  0.00% g_up
14644 ivan        1  44    0  8428K  3944K select 0   0:11  0.00% sshd
    2 root        1  -8    -     0K     8K -      0   0:08  0.00% g_event

 

7.1 64 бит

1 поток
0.0-164.5 sec  10.4 GBytes    542 Mbits/sec

last pid:  1427;  load averages:  0.20,  0.19,  0.15               up 0+01:09:53  18:03:15
84 processes:  7 running, 67 sleeping, 10 waiting
CPU 0:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
CPU 1:  0.0% user,  0.0% nice, 24.1% system,  0.0% interrupt, 75.9% idle
CPU 2:  0.0% user,  0.0% nice,  0.0% system, 33.5% interrupt, 66.5% idle
CPU 3:  0.0% user,  0.0% nice,  0.0% system,  0.0% interrupt,  100% idle
Mem: 22M Active, 9628K Inact, 48M Wired, 88K Cache, 9664K Buf, 1900M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   11 root        1 171 ki31     0K    16K CPU3   3  63:58 100.00% idle: cpu3
   14 root        1 171 ki31     0K    16K RUN    0  64:25 98.58% idle: cpu0
   13 root        1 171 ki31     0K    16K RUN    1  62:32 75.78% idle: cpu1
   12 root        1 171 ki31     0K    16K RUN    2  63:21 74.85% idle: cpu2
   15 root        1 -44    -     0K    16K CPU2   2   0:12 31.69% swi1: net
   23 root        1 -68    -     0K    16K CPU1   1   6:43 27.88% em0 taskq
   32 root        1 -68    -     0K    16K -      3   5:37  0.00% dummynet
   24 root        1 -68    -     0K    16K -      2   5:25  0.00% em1 taskq
   25 root        1 -68    -     0K    16K -      3   4:55  0.00% em2 taskq
   16 root        1 -32    -     0K    16K WAIT   0   0:07  0.00% swi4: clock
   18 root        1 -16    -     0K    16K -      0   0:02  0.00% yarrow
  935 ivan        1  44    0 33768K  4732K select 1   0:01  0.00% sshd
1220 root        1  44    0  8112K  2208K CPU0   0   0:00  0.00% top
  943 root        1  44    0 11952K  3248K select 1   0:00  0.00% mc
  973 ivan        1  44    0 33768K  4732K select 0   0:00  0.00% sshd
   26 root        1 -68    -     0K    16K -      0   0:00  0.00% em3 taskq
1221 root        1  20    0  9888K  1272K pause  0   0:00  0.00% netstat
  954 ivan        1  44    0 33768K  4732K select 0   0:00  0.00% sshd


            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
    249673     0  147750807     216168     0  127968608     0
    249830     0  147689751     216120     0  127944666     0
    249628     0  147703192     216144     0  127956784     0
второй поток
0.0-123.0 sec  7.69 GBytes    537 Mbits/sec
    349999     0  207131717     306907     0  181695680     0
    490125     0  290098337     432413     0  255984624     0
    490369     0  290069558     432249     0  255899328     0
    490578     0  290245407     432373     0  255966394     0
    489616     0  289784095     432305     0  255910576     0
    489944     0  289948985     432303     0  255925968     0
    490007     0  290023674     432365     0  255951424     0
    490410     0  289953099     432227     0  255897616     0
    489834     0  289894116     432406     0  255966816     0


last pid:  1427;  load averages:  0.39,  0.24,  0.17               up 0+01:10:59  18:04:21
84 processes:  5 running, 68 sleeping, 11 waiting
CPU 0:  0.0% user,  0.0% nice,  0.4% system, 13.2% interrupt, 86.5% idle
CPU 1:  0.0% user,  0.0% nice, 29.7% system,  0.8% interrupt, 69.5% idle
CPU 2:  0.0% user,  0.0% nice, 30.1% system,  0.0% interrupt, 69.9% idle
CPU 3:  0.0% user,  0.0% nice,  0.0% system, 43.2% interrupt, 56.8% idle
Mem: 22M Active, 9628K Inact, 48M Wired, 88K Cache, 9664K Buf, 1900M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   14 root        1 171 ki31     0K    16K CPU0   0  65:21 88.28% idle: cpu0
   12 root        1 171 ki31     0K    16K CPU2   2  64:11 80.76% idle: cpu2
   13 root        1 171 ki31     0K    16K RUN    1  63:19 71.88% idle: cpu1
   11 root        1 171 ki31     0K    16K CPU3   3  64:41 62.26% idle: cpu3
   15 root        1 -44    -     0K    16K WAIT   3   0:47 56.30% swi1: net
   23 root        1 -68    -     0K    16K -      1   7:01 29.30% em0 taskq
   24 root        1 -68    -     0K    16K -      2   5:39 25.29% em1 taskq
   32 root        1 -68    -     0K    16K -      0   5:37  0.00% dummynet
   25 root        1 -68    -     0K    16K -      3   4:55  0.00% em2 taskq
   16 root        1 -32    -     0K    16K WAIT   0   0:08  0.00% swi4: clock
   18 root        1 -16    -     0K    16K -      0   0:02  0.00% yarrow
  935 ivan        1  44    0 33768K  4732K select 1   0:01  0.00% sshd
1220 root        1  44    0  8112K  2208K CPU1   1   0:01  0.00% top



    490184     0  290086941     432278     0  255918864     0
    489369     0  289622111     432312     0  255931808     0
    489687     0  289804311     432361     0  255934848     0
    490712     0  289703114     432334     0  255937930     0
    489495     0  289668224     432358     0  255950832     0
третий поток
0.0-50.4 sec  3.22 GBytes    548 Mbits/sec
    564916     0  334319107     497878     0  294761290     0
    737853     0  436718784     648463     0  383901568     0
    738627     0  436718580     648597     0  383948506     0
    738462     0  436861600     648517     0  383918736     0
    738511     0  437067445     648527     0  383928288     0
    739670     0  437810783     648512     0  383937680     0
    738029     0  436834685     648453     0  383902362     0
    740905     0  437867055     648596     0  383923472     0
            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
    739750     0  437859372     648490     0  383928474     0
    739689     0  437831541     648549     0  383924176     0
    739639     0  437774176     648500     0  383914576     0
    739872     0  437554824     648544     0  383933536     0
    738245     0  436946340     648492     0  383906416     0


last pid:  1430;  load averages:  0.45,  0.29,  0.19               up 0+01:11:53  18:05:15
84 processes:  7 running, 67 sleeping, 10 waiting
CPU 0:  0.0% user,  0.0% nice,  0.0% system, 68.4% interrupt, 31.6% idle
CPU 1:  0.0% user,  0.0% nice, 29.3% system,  7.9% interrupt, 62.8% idle
CPU 2:  0.0% user,  0.0% nice, 32.0% system,  1.5% interrupt, 66.5% idle
CPU 3:  0.0% user,  0.0% nice, 31.2% system,  6.4% interrupt, 62.4% idle
Mem: 22M Active, 9632K Inact, 48M Wired, 88K Cache, 9664K Buf, 1900M Free
Swap: 4096M Total, 4096M Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
   15 root        1 -44    -     0K    16K CPU1   1   1:29 80.57% swi1: net
   11 root        1 171 ki31     0K    16K CPU3   3  65:16 71.78% idle: cpu3
   13 root        1 171 ki31     0K    16K RUN    1  63:56 71.78% idle: cpu1
   12 root        1 171 ki31     0K    16K RUN    2  64:47 70.65% idle: cpu2
   14 root        1 171 ki31     0K    16K RUN    0  65:44 32.96% idle: cpu0
   24 root        1 -68    -     0K    16K CPU2   2   5:55 31.59% em1 taskq
   25 root        1 -68    -     0K    16K -      3   5:06 30.37% em2 taskq
   23 root        1 -68    -     0K    16K -      1   7:16 25.29% em0 taskq
   32 root        1 -68    -     0K    16K -      1   5:37  0.00% dummynet
   16 root        1 -32    -     0K    16K WAIT   1   0:08  0.00% swi4: clock
   18 root        1 -16    -     0K    16K -      1   0:02  0.00% yarrow
  935 ivan        1  44    0 33768K  4732K select 1   0:01  0.00% sshd
1220 root        1  44    0  8112K  2208K CPU0   0   0:01  0.00% top
  943 root        1  44    0 11952K  3248K select 1   0:00  0.00% mc
  973 ivan        1  44    0 33768K  4732K select 0   0:00  0.00% sshd
   26 root        1 -68    -     0K    16K -      0   0:00  0.00% em3 taskq
1221 root        1  20    0  9888K  1272K pause  0   0:00  0.00% netstat
  954 ivan        1  44    0 33768K  4732K select 3   0:00  0.00% sshd
    4 root        1  -8    -     0K    16K -      0   0:00  0.00% g_down
    3 root        1  -8    -     0K    16K -      3   0:00  0.00% g_up
    2 root        1  -8    -     0K    16K -      0   0:00  0.00% g_event
  981 root        1  44    0 11952K  3248K select 0   0:00  0.00% mc

 

почти в полтора раза шустрее 32 битки

 

 

 

 

 

Share this post


Link to post
Share on other sites

интересно почему при укороченной очереди его таки сильннее нагрузило.

если это закономерность то по идее если очередь увеличить нагрузка должна еще упасть, ну или наоборот еще сильнее укоротить то возрастет, или может быть просто число подобрано как то неверно и с длиной очереди не связано?

Edited by [GP]Villi

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