Hello!
Recently set up two server with the following configuration:
HP ProLiant DL360 G7, 16 GB RAM, 2x Quad Core X5675 @ 3.07GHz
Linux Kernel 2.6.39.4, ixgbe 3.7.14-NAPI
Network interfaces
Eth0 - 09:00.0 Ethernet controller: Intel Corporation 82599EB 10-Gigabit
SFI/SFP+ Network Connection (rev 01)
Eth1 - 09:00.1 Ethernet controller: Intel Corporation 82599EB 10-Gigabit
SFI/SFP+ Network Connection (rev 01)
Eth2 - 03:00.0 Ethernet controller: Broadcom Corporation NetXtreme II
BCM5709 Gigabit Ethernet (rev 20)
Eth3 - 03:00.1 Ethernet controller: Broadcom Corporation NetXtreme II
BCM5709 Gigabit Ethernet (rev 20)
Eth4 - 04:00.0 Ethernet controller: Broadcom Corporation NetXtreme II
BCM5709 Gigabit Ethernet (rev 20)
Eth5 - 04:00.1 Ethernet controller: Broadcom Corporation NetXtreme II
BCM5709 Gigabit Ethernet (rev 20)
Servers are directly connected through eth5 NICs for sessions
synchronization.
eth0 and eth1 interfaces aggregated into a single 20G bond0 (802.3ad)
interface connected to Cisco 3750X switch stack
Network topology is one-armed router or router on a stick.
During testing with default iperf settings traffic reached 19,5 Gbit/s IN
without Discards and CPU usage was 60%.
Both servers are used as Load Balancers for LVS Tunnel (routing). So servers
handle only inbound traffic. GSO, GRO and LRO are disabled.
Currently we have approx. 3,5 Gbit/s inbound traffic, 1,2 M inbound
packets/sec and CPU Utilization 55-60% per single core.
With Six-Core CPUs and HT we got 24 TxRx queues and only 16 of them are
loaded.
Try to set bonding.tx_queues=24 and ixgbe.RSS=24,24 but got:
ixgbe: Invalid Receive-Side Scaling (RSS) specified (24), using default.
According to the documentation 82599-based network connections support up to
64 queues.
Is it possible to use more than TxRx 16 queues for routing?
Or maybe there are some other technologies useful for equally distributing
routing traffic to all 24 queues? Considering that clients can come from
various ip addresses.
Are there any advantages of disabling Flow Control while routing?
Ethtool output
# ethtool -i eth0
driver: ixgbe
version: 3.7.14-NAPI
firmware-version: 0x18bf0001
bus-info: 0000:09:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
# ethtool -c eth0
Coalesce parameters for eth0:
Adaptive RX: off TX: off
stats-block-usecs: 0
sample-interval: 0
pkt-rate-low: 0
pkt-rate-high: 0
rx-usecs: 1
rx-frames: 0
rx-usecs-irq: 0
rx-frames-irq: 0
tx-usecs: 0
tx-frames: 0
tx-usecs-irq: 0
tx-frames-irq: 256
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
# ethtool -g eth0
Ring parameters for eth0:
Pre-set maximums:
RX: 4096
RX Mini: 0
RX Jumbo: 0
TX: 4096
Current hardware settings:
RX: 4096
RX Mini: 0
RX Jumbo: 0
TX: 4096
# ethtool -k eth0
Offload parameters for eth0:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp-segmentation-offload: on
udp-fragmentation-offload: off
generic-segmentation-offload: off
generic-receive-offload: off
large-receive-offload: off
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
# ethtool -S eth0
NIC statistics:
rx_packets: 8830720773
tx_packets: 8831192772
rx_bytes: 2772419463465
tx_bytes: 2916337716501
rx_errors: 0
tx_errors: 0
rx_dropped: 0
tx_dropped: 0
multicast: 1729
collisions: 0
rx_over_errors: 0
rx_crc_errors: 0
rx_frame_errors: 0
rx_fifo_errors: 0
rx_missed_errors: 115405
tx_aborted_errors: 0
tx_carrier_errors: 0
tx_fifo_errors: 0
tx_heartbeat_errors: 0
rx_pkts_nic: 8830720806
tx_pkts_nic: 8831192792
rx_bytes_nic: 2807789549695
tx_bytes_nic: 2951760095381
lsc_int: 4
tx_busy: 0
non_eop_descs: 0
broadcast: 26209
rx_no_buffer_count: 0
tx_timeout_count: 0
tx_restart_queue: 19
rx_long_length_errors: 0
rx_short_length_errors: 0
tx_flow_control_xon: 19
rx_flow_control_xon: 0
tx_flow_control_xoff: 1203
rx_flow_control_xoff: 0
rx_csum_offload_errors: 131605
alloc_rx_page_failed: 0
alloc_rx_buff_failed: 0
lro_aggregated: 0
lro_flushed: 0
lro_recycled: 0
rx_no_dma_resources: 0
hw_rsc_aggregated: 0
hw_rsc_flushed: 0
fdir_match: 7944521
fdir_miss: 9050543560
fdir_overflow: 878
os2bmc_rx_by_bmc: 0
os2bmc_tx_by_bmc: 0
os2bmc_tx_by_host: 0
os2bmc_rx_by_host: 0
Best regards,
Aleksey
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel® Ethernet, visit
http://communities.intel.com/community/wired