Перейти к содержимому
Калькуляторы

NNV

Пользователи
  • Публикации

    1
  • Зарегистрирован

  • Посещение

О NNV

  • Звание
    Абитуриент
  1. Linux softrouter

    Добрый день! Кто что посоветуе по сборке ядра? HZ=1000? tickless или нет? какой clocksource выбрать? tsc? Какие еще опции надо добавить/убрать? Так же интересует мнение по распределению TX/RX очередей по процам. Сейчас 4 RX + 4 TX, каждая очередь на свой проц. Как лутьше по процам распределить? rx,tx,rx,tx,rx,tx,rx,tx или rx,rx,rx,rx,tx,tx,tx,tx c точки зрения процессорного кеша? Есть ли смысл делать 8 RX/TX очередей? Что есть в наличие: Shaper + NAT + snmpd + sshd Задействована пока токо 1 сетевуха приходу/уход по vlan-ам. В пиках 700Мбит/c 130кpps in + 130kpps out iptables на FORWAD пустой, на INPUT 2 правила TC: filter parent 1: protocol ip pref 2 flow filter parent 1: protocol ip pref 2 flow handle 0x1 map keys dst and 0x003ffffc rshift 2 baseclass 1:1 filter parent 1: protocol ip pref 2 flow filter parent 1: protocol ip pref 2 flow handle 0x1 map keys nfct-src and 0x003ffffc rshift 2 baseclass 1:1 Около 7к class/qdisc uname -a Linux darkstar 2.6.32 #2 SMP Fri Dec 11 06:02:03 MSK 2009 x86_64 Intel(R) Xeon(R) CPU E5520 @ 2.27GHz GenuineIntel GNU/Linux ethtool -i eth1 driver: igb version: 2.1.1 firmware-version: 1.2-3 bus-info: 0000:01:00.1 ethtool -g eth1 Ring parameters for eth1: Pre-set maximums: RX: 4096 RX Mini: 0 RX Jumbo: 0 TX: 4096 Current hardware settings: RX: 2048 RX Mini: 0 RX Jumbo: 0 TX: 2048 ethtool -c eth1 ## ## InterruptThrottleRate=20000 ## Coalesce parameters for eth1: Adaptive RX: off TX: off stats-block-usecs: 0 sample-interval: 0 pkt-rate-low: 0 pkt-rate-high: 0 rx-usecs: 48 rx-frames: 0 rx-usecs-irq: 0 rx-frames-irq: 0 tx-usecs: 48 tx-frames: 0 tx-usecs-irq: 0 tx-frames-irq: 0 rx-usecs-low: 0 rx-frame-low: 0 tx-usecs-low: 0 tx-frame-low: 0 rx-usecs-high: 0 rx-frame-high: 0 tx-usecs-high: 0 tx-frame-high: 0 cat /proc/ interrupts CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7 0: 124 0 0 313546690 0 0 0 0 IO-APIC-edge timer 1: 0 0 0 2 0 0 0 0 IO-APIC-edge i8042 8: 0 0 0 4 0 0 0 0 IO-APIC-edge rtc0 9: 0 0 0 0 0 0 0 0 IO-APIC-fasteoi acpi 12: 0 0 0 4 0 0 0 0 IO-APIC-edge i8042 16: 0 0 0 0 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb3 18: 0 0 0 0 0 0 0 24 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb8 19: 0 0 0 0 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb5, uhci_hcd:usb7 21: 33943 0 0 0 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb4 23: 0 0 0 0 0 0 0 3196 IO-APIC-fasteoi ehci_hcd:usb2, uhci_hcd:usb6 27: 0 0 0 0 0 0 436048 0 PCI-MSI-edge ahci 28: 0 0 0 0 0 0 0 0 PCI-MSI-edge eth0 29: 0 0 0 466705 0 0 0 0 PCI-MSI-edge eth0-rx-0 30: 0 0 0 234159 0 0 0 0 PCI-MSI-edge eth0-rx-1 31: 0 0 0 0 129879 0 0 0 PCI-MSI-edge eth0-rx-2 32: 0 0 0 0 186575 0 0 0 PCI-MSI-edge eth0-rx-3 33: 0 0 0 0 0 130164 0 0 PCI-MSI-edge eth0-tx-0 34: 0 0 0 0 0 170501 0 0 PCI-MSI-edge eth0-tx-1 35: 0 0 0 0 0 0 227838 0 PCI-MSI-edge eth0-tx-2 36: 0 0 0 0 139228 0 0 0 PCI-MSI-edge eth0-tx-3 37: 0 0 0 0 0 2 0 0 PCI-MSI-edge eth1 38: 1991696636 0 0 0 0 2 0 0 PCI-MSI-edge eth1-rx-0 39: 0 1992216206 0 0 0 0 2 0 PCI-MSI-edge eth1-rx-1 40: 0 0 2006830556 0 0 0 2 0 PCI-MSI-edge eth1-rx-2 41: 0 0 0 2010020287 0 0 0 2 PCI-MSI-edge eth1-rx-3 42: 0 0 0 0 2192739614 0 0 2 PCI-MSI-edge eth1-tx-0 43: 2 0 0 0 0 2191854153 0 0 PCI-MSI-edge eth1-tx-1 44: 0 2 0 0 0 0 2451150897 0 PCI-MSI-edge eth1-tx-2 45: 0 2 0 0 0 0 0 2226860811 PCI-MSI-edge eth1-tx-3 NMI: 0 0 0 0 0 0 0 0 Non-maskable interrupts LOC: 463610509 457491640 458713319 444378741 1526528751 1523301685 612322504 140383577 Local timer interrupts SPU: 0 0 0 0 0 0 0 0 Spurious interrupts PMI: 0 0 0 0 0 0 0 0 Performance monitoring interrupts PND: 0 0 0 0 0 0 0 0 Performance pending work RES: 450508 57503 48826 88610 307383 276301 153284 132668 Rescheduling interrupts CAL: 39 64 68 66 62 67 54 63 Function call interrupts TLB: 1470 1328 1025 1212 23708 23714 21621 21112 TLB shootdowns TRM: 0 0 0 0 0 0 0 0 Thermal event interrupts THR: 0 0 0 0 0 0 0 0 Threshold APIC interrupts MCE: 0 0 0 0 0 0 0 0 Machine check exceptions MCP: 2864 2864 2864 2864 2864 2864 2864 2864 Machine check polls root@darkstar:~/stat# mpstat -P ALL 1 Linux 2.6.32 (darkstar) 12/27/2009 11:48:58 AM CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s 11:48:59 AM all 0.00 0.00 0.13 0.00 0.75 15.41 0.00 83.71 157811.00 11:48:59 AM 0 0.00 0.00 0.00 0.00 2.00 28.00 0.00 70.00 13753.00 11:48:59 AM 1 0.00 0.00 1.00 0.00 1.00 31.00 0.00 68.00 13825.00 11:48:59 AM 2 0.00 0.00 0.00 0.00 1.00 28.00 0.00 71.00 13968.00 11:48:59 AM 3 0.00 0.00 0.00 0.00 1.00 26.00 0.00 72.00 15016.00 11:48:59 AM 4 0.00 0.00 0.00 0.00 0.00 5.00 0.00 100.00 14626.00 11:48:59 AM 5 0.00 0.00 0.00 0.00 2.00 5.00 0.00 94.00 15001.00 11:48:59 AM 6 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 16389.00 11:48:59 AM 7 0.00 0.00 0.00 0.00 0.00 0.00 0.00 93.00 15048.00 sar -n DEV 10 Linux 2.6.32 (darkstar) 12/27/2009 12:14:47 PM IFACE rxpck/s txpck/s rxbyt/s txbyt/s rxcmp/s txcmp/s rxmcst/s 12:14:57 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12:14:57 PM eth0 3.90 1.60 360.36 116.92 0.00 0.00 0.00 12:14:57 PM eth1 93361.36 91317.32 56513828.53 54880451.15 0.00 0.00 0.50 12:14:57 PM eth1.x 45833.53 49095.90 28561510.61 26838485.09 0.00 0.00 0.20 Собчно что во всем этом смушает, это то что процы что на TX грузятся а те что на RX нет. И еще странность есть, на VLAN-е (eth1.x) понемногу (0.5-1 drop/s) прибывают TX drop, на самом eth1 нет ошибок, и потерь видимых тоже нет. PS. Знаю что NAT надо выносить на отдельную машину, и что надо 2-ю сетевуху задействовать.