पैकेट नेम नेवर के साथ प्रदर्शन में गड़बड़ी


11

पृष्ठभूमि:

मुझे एक उच्च मात्रा कैशिंग नामवर वातावरण (Redhat Enterprise Linux 5.8, IBM System x3550) विरासत में मिला है जिसमें असंगत रिंग बफर सेटिंग्स हैं: eth0 के लिए eth0 के लिए 1020 और 255। eth0 अपने स्थानीय डेटासेटर के स्विच 1 से जुड़ा है, eth1 उसी के स्विच 2 से जुड़ा है। क्लस्टर के प्रत्येक सर्वर में यह विकल्प होता है कि eth0 या eth1 सक्रिय इंटरफ़ेस है, और प्रत्येक क्लस्टर एक अलग क्षेत्र में स्थित है। रिंग बफ़र्स को स्पष्ट रूप से सुसंगत बनाने की आवश्यकता है।

यहां ऐसी चीजें हैं जो मुश्किल हो जाती हैं: मैंने ऊपर की समस्या का पता लगाते हुए शोध किया कि क्यों कई नेमवेर्स अक्सर लॉग इन कर रहे हैं "प्रतिक्रिया भेजने में त्रुटि: परेशान" त्रुटियां, जो आईएससी नॉलेजबेस का सुझाव है कि आउटबाउंड भीड़ से संबंधित है । उच्च रिंग बफ़र सेटिंग (1020) वाले सर्वर ifconfig पर कम पैकेट छोड़ते हैं (जैसा कि कोई उम्मीद करेगा), लेकिन मेरे उच्चतम लोड समूहों में से एक में ~ 20k बार एक दिन में, बड़ी आवृत्ति के साथ उपरोक्त त्रुटि लॉग करें। हम इसे '' समूह 1 '' कहेंगे। निचले रिंग बफर (255) सेटिंग वाले सर्वर प्रति दिन (फिर, अपेक्षित) में अधिक इनबाउंड पैकेट छोड़ते हैं, लेकिन बंड त्रुटि के बहुत कम उदाहरण हैं, आमतौर पर उसी लोड समूह में 0-150।

यहां बहुत बड़ा रहस्य नहीं है। कैशिंग डीएनएस एक पुनरावर्ती सेवा है: यदि कोई चीज कैश नहीं की जाती है, तो सर्वर को उस एक प्रश्न की ओर से कई प्रश्न करने होते हैं जब तक कि वह अंत में एक उत्तर नहीं दे सकता। यह (एक में) -> (कई बाहर) क्वेरी संबंध है। आरएक्स रिंग बफ़र्स को ठीक करने से यह संख्या पूरे बोर्ड में एक नए मूल्य के बराबर हो सकती है, और वहां से संभवतः कर्नेल के आउटबाउंड नेटवर्क कतार को खरीद (wmem_max / wmem_default) में ट्यून करना एक अच्छा विचार होगा।


मुझे प्रदर्शन की समस्या पर कॉन्फ़िगरेशन परिवर्तनों के प्रभाव का पता लगाने में सक्षम होना पसंद है, इसलिए मैंने उत्पादन परिवर्तन शुरू करने से पहले कुछ डेटा एकत्र करने के लिए एक रिपोर्ट लिखी। यहाँ समूह 1 में पहले दो सर्वरों के लिए आउटपुट का एक उदाहरण दिया गया है:

group1-01
    RX: 7166.27/sec av.
    TX: 7432.57/sec av.
    RXDROP: 7.43/sec av.
    unset_err: 27633
group1-02
    RX: 7137.37/sec av.
    TX: 7398.50/sec av.
    RXDROP: 9.94/sec av.
    unset_err: 107

ये सूत्र हैं। ध्यान दें कि यह एक स्थानीय स्क्रिप्ट है, और शेल स्क्रिप्ट पर कोई निर्भरता नहीं है जो प्रति-सर्वर को बनाए रखना है।

    RXPACK=$(ssh $server "sar -n DEV -f /var/log/sa/sa$(date --date=yesterday '+%d') | grep \"Average: .*\$(awk '{if (\$2 == "00000000") { print \$1 }}' /proc/net/route)\" | awk '{print \$3}'" 2>/dev/null)
    TXPACK=$(ssh $server "sar -n DEV -f /var/log/sa/sa$(date --date=yesterday '+%d') | grep \"Average: .*\$(awk '{if (\$2 == "00000000") { print \$1 }}' /proc/net/route)\" | awk '{print \$4}'" 2>/dev/null)
    RXDROP=$(ssh $server "sar -n EDEV -f /var/log/sa/sa$(date --date=yesterday '+%d') | grep \"Average: .*\$(awk '{if (\$2 == "00000000") { print \$1 }}' /proc/net/route)\" | awk '{print \$6}'" 2>/dev/null)
    TXDROP=$(ssh $server "sudo grep 'error sending response: unset' /var/log/dns_named.1" 2>/dev/null | wc -l)

एक बार जब मैं अपने सभी कैशिंग DNS वातावरणों में इस रिपोर्ट को चलाना शुरू कर देता हूं, तो मैं ध्यान देता हूं कि समरूप पैकेट लोड वाले एक अन्य समूह, जिसे हम समूह 2 कहेंगे, को कोई समस्या नहीं है :

group2-01
    RX: 7066.44/sec av.
    TX: 7345.95/sec av.
    RXDROP: 0.00/sec av.
    unset_err: 0
group2-02
    RX: 7019.18/sec av.
    TX: 7312.47/sec av.
    RXDROP: 0.00/sec av.
    unset_err: 0

प्रश्न:

RX2 बफ़र्स या net.core.wmem_default/ के आगे ट्यूनिंग की आवश्यकता के बिना Group2 इस तरह से व्यवहार क्यों करता है net.core.wmem_max? मुझे रिंग बफ़र्स को सामान्य करने की आवश्यकता है, चाहे जो भी हो, लेकिन मैं यह समझना चाहूंगा कि इससे पहले कि मैं क्या कर रहा हूं / wmem मानों के साथ खेलना शुरू करता / खरीदता हूं।

केवल एक चीज जो मैं सोच सकता हूं, वह यह है कि कतार को एप्लिकेशन द्वारा तेजी से खाली किया जा रहा है, लेकिन नेटवर्क स्टैक ट्यूनिंग कुछ ऐसा नहीं है जिसके साथ मेरे हाथ अनुभव का एक बड़ा सौदा है और मैं दूसरी राय लेना चाहता हूं। (मेरी आंखें कुछ एथलेटिक काउंटर नामों पर चमकती हैं, मैं इसे अस्वीकार नहीं करूंगा)

मैंने संभावनाओं के रूप में निम्नलिखित को समाप्त कर दिया है। विभक्त के बाद सबूत।

  • रिंग बफर लेआउट समान है। (group1 और group2 का पहला सर्वर एक ही कॉन्फ़िगर किया गया, group1 और group2 का दूसरा सर्वर एक ही कॉन्फ़िगर किया गया)
  • डिफ़ॉल्ट गेटवे लेआउट समान है।
  • नेटवर्क कार्ड समान हैं। (ब्रॉडकॉम बीसीएम ५8०))
  • Ethtool द्वारा रिपोर्ट किया गया फर्मवेयर संस्करण समान है। (ई.पू. २१.१ आईपीएस १.६.०)
  • sysctl -aआउटपुट दोनों समूहों के पहले सर्वर और दोनों समूहों के दूसरे सर्वर के बीच मेल खाता है। (कर्नेल और एफएस वर्गों को छोड़कर)
  • समूह 1 और समूह 2 में सर्वरों की कुल संख्या समान है। (10)

गोपनीयता कारणों से मैं कच्चे name.conf नहीं दिखा सकता, या grep फ़िल्टर मैं जानकारी को बाहर करने के लिए उपयोग कर रहा हूं। आपको इसके लिए मेरा शब्द लेना होगा कि निम्नलिखित कॉन्फ़िगरेशन पैरामीटर सभी चार सर्वरों के बीच स्थिर हैं:

    notify no;
    allow-transfer { none; };
    allow-recursion { any; };
    allow-query { any; };
    allow-query-cache { any; };
    recursive-clients 100000;
    max-cache-size 2G;
    max-ncache-ttl 900;

नीचे सिस्टम जानकारी का एक बड़ा सौदा है। "होस्टशश" बस यह प्रदर्शित करने के लिए है कि लूप का प्रत्येक पुनरावृत्ति वास्तव में वास्तविक होस्टनाम को प्रकट किए बिना एक अलग सर्वर को मार रहा है।

मेजबान हैश:

group1-1: dc78abcb154b74c87feecb3f35222263d40c028c
group1-2: 9fe491d58fd1e7d4e21e5bf10c164e4cf66e884b
group2-1: fc76bb3ee1ff580c6aba0d685713bb4145bd5fe3
group2-2: b7550c65d37622a131b1e47f066773defbb4d817

for server in $group1_1 $group1_2 $group2_1 $group2_2
do
    echo ____________________
    ssh $server "echo -en hosthash: \$(echo \$HOSTNAME | sha1sum)\\\n\\\n &&
         SARFILE=/var/log/sa/sa\$(date --date=yesterday '+%d') &&
         uname -srvmpio &&
         sudo /usr/sbin/dmidecode -s system-product-name
         dmesg | grep Broadcom &&
         head /proc/cpuinfo &&
         GWIF=\$(awk '{if (\$2 == 00000000) { print \$1 }}' /proc/net/route) &&
         sar -n DEV -f \$SARFILE | egrep '(IFACE|Average)' &&
         sar -n EDEV -f \$SARFILE | egrep '(IFACE|Average)' &&
         sudo /sbin/ethtool \$GWIF &&
         sudo /sbin/ethtool -i \$GWIF &&
         sudo /sbin/ethtool -g \$GWIF &&
         sudo /sbin/ethtool -c \$GWIF &&
         sudo /sbin/ethtool -S \$GWIF &&
         echo sysctl linecount: \$(sudo /sbin/sysctl -a | egrep -v '^(fs|kernel)' | wc -l) &&
         echo sysctl hash: \$(sudo /sbin/sysctl -a | egrep -v '^(fs|kernel)' | sha1sum)"
done

आउटपुट:

____________________
hosthash: dc78abcb154b74c87feecb3f35222263d40c028c -

Linux 2.6.18-308.16.1.el5 #1 SMP Tue Sep 18 07:21:07 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
IBM System x3550 -[7978AC1]-
bnx2: Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.1.11 (July 20, 2011)
eth0: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem c8000000, IRQ 90, node addr 001a649db00e
eth1: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem ce000000, IRQ 177, node addr 001a649db010
cnic: Broadcom NetXtreme II CNIC Driver cnic v2.5.7 (July 20, 2011)
Broadcom NetXtreme II iSCSI Driver bnx2i v2.7.0.3 (Aug 04, 2011)
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 23
model name  : Intel(R) Xeon(R) CPU           E5420  @ 2.50GHz
stepping    : 6
cpu MHz     : 2493.750
cache size  : 6144 KB
physical id : 0
siblings    : 4
12:00:01 AM     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo   1269.15   1269.15 206600.39 206600.39      0.00      0.00      0.00
Average:         eth0   7166.27   7432.57 704051.80 2419779.42      0.00      0.00      0.94
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:01 AM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      7.43      0.00      0.00      0.00      0.00      0.00
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
driver: bnx2
version: 2.1.11
firmware-version: bc 4.0.3 ipms 1.6.0
bus-info: 0000:04:00.0
Ring parameters for eth0:
Pre-set maximums:
RX:     2040
RX Mini:    0
RX Jumbo:   8160
TX:     255
Current hardware settings:
RX:     1020
RX Mini:    0
RX Jumbo:   0
TX:     255

Coalesce parameters for eth0:
Adaptive RX: off  TX: off
stats-block-usecs: 999936
sample-interval: 0
pkt-rate-low: 0
pkt-rate-high: 0

rx-usecs: 18
rx-frames: 12
rx-usecs-irq: 18
rx-frames-irq: 2

tx-usecs: 80
tx-frames: 20
tx-usecs-irq: 18
tx-frames-irq: 2

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

NIC statistics:
     rx_bytes: 1505439501410
     rx_error_bytes: 0
     tx_bytes: 4672574845104
     tx_error_bytes: 0
     rx_ucast_packets: 15315548049
     rx_mcast_packets: 2035415
     rx_bcast_packets: 1101989
     tx_ucast_packets: 15505474251
     tx_mcast_packets: 40018
     tx_bcast_packets: 36019
     tx_mac_errors: 0
     tx_carrier_errors: 0
     rx_crc_errors: 0
     rx_align_errors: 0
     tx_single_collisions: 0
     tx_multi_collisions: 0
     tx_deferred: 0
     tx_excess_collisions: 0
     tx_late_collisions: 0
     tx_total_collisions: 0
     rx_fragments: 0
     rx_jabbers: 0
     rx_undersize_packets: 0
     rx_oversize_packets: 0
     rx_64_byte_packets: 92309552
     rx_65_to_127_byte_packets: 1243637891
     rx_128_to_255_byte_packets: 790117566
     rx_256_to_511_byte_packets: 127197337
     rx_512_to_1023_byte_packets: 168929387
     rx_1024_to_1522_byte_packets: 11591832
     rx_1523_to_9022_byte_packets: 0
     tx_64_byte_packets: 60586118
     tx_65_to_127_byte_packets: 1976738758
     tx_128_to_255_byte_packets: 2830395753
     tx_256_to_511_byte_packets: 157607989
     tx_512_to_1023_byte_packets: 1483716940
     tx_1024_to_1522_byte_packets: 406821340
     tx_1523_to_9022_byte_packets: 0
     rx_xon_frames: 0
     rx_xoff_frames: 0
     tx_xon_frames: 116422
     tx_xoff_frames: 134780
     rx_mac_ctrl_frames: 0
     rx_filtered_packets: 0
     rx_ftq_discards: 0
     rx_discards: 0
     rx_fw_discards: 14015105
sysctl linecount: 504
sysctl hash: dd6aab90d0fd9ae90742c5f812a78734e2f2ff1c -
____________________
hosthash: 9fe491d58fd1e7d4e21e5bf10c164e4cf66e884b -

Linux 2.6.18-308.16.1.el5 #1 SMP Tue Sep 18 07:21:07 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
IBM System x3550 -[7978EHU]-
bnx2: Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.1.11 (July 20, 2011)
eth0: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem c8000000, IRQ 90, node addr 001a6479655c
eth1: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem ce000000, IRQ 177, node addr 001a6479655e
cnic: Broadcom NetXtreme II CNIC Driver cnic v2.5.7 (July 20, 2011)
Broadcom NetXtreme II iSCSI Driver bnx2i v2.7.0.3 (Aug 04, 2011)
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 23
model name  : Intel(R) Xeon(R) CPU           E5420  @ 2.50GHz
stepping    : 6
cpu MHz     : 2493.746
cache size  : 6144 KB
physical id : 0
siblings    : 4
12:00:01 AM     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo   1261.04   1261.04 205548.08 205548.08      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth1   7137.37   7398.50 702340.35 2409580.71      0.00      0.00      0.97
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:01 AM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth1      0.00      0.00      0.00      9.94      0.00      0.00      0.00      0.00      0.00
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
driver: bnx2
version: 2.1.11
firmware-version: bc 4.0.3 ipms 1.6.0
bus-info: 0000:06:00.0
Ring parameters for eth1:
Pre-set maximums:
RX:     2040
RX Mini:    0
RX Jumbo:   8160
TX:     255
Current hardware settings:
RX:     255
RX Mini:    0
RX Jumbo:   0
TX:     255

Coalesce parameters for eth1:
Adaptive RX: off  TX: off
stats-block-usecs: 999936
sample-interval: 0
pkt-rate-low: 0
pkt-rate-high: 0

rx-usecs: 18
rx-frames: 12
rx-usecs-irq: 18
rx-frames-irq: 2

tx-usecs: 80
tx-frames: 20
tx-usecs-irq: 18
tx-frames-irq: 2

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

NIC statistics:
     rx_bytes: 1501719289640
     rx_error_bytes: 0
     tx_bytes: 4654179094291
     tx_error_bytes: 0
     rx_ucast_packets: 15253610508
     rx_mcast_packets: 2108112
     rx_bcast_packets: 1136240
     tx_ucast_packets: 15438361249
     tx_mcast_packets: 40135
     tx_bcast_packets: 1721
     tx_mac_errors: 0
     tx_carrier_errors: 0
     rx_crc_errors: 0
     rx_align_errors: 0
     tx_single_collisions: 0
     tx_multi_collisions: 0
     tx_deferred: 0
     tx_excess_collisions: 0
     tx_late_collisions: 0
     tx_total_collisions: 0
     rx_fragments: 0
     rx_jabbers: 0
     rx_undersize_packets: 0
     rx_oversize_packets: 0
     rx_64_byte_packets: 92376678
     rx_65_to_127_byte_packets: 1183040190
     rx_128_to_255_byte_packets: 788176623
     rx_256_to_511_byte_packets: 126838328
     rx_512_to_1023_byte_packets: 168170816
     rx_1024_to_1522_byte_packets: 13350337
     rx_1523_to_9022_byte_packets: 0
     tx_64_byte_packets: 60806588
     tx_65_to_127_byte_packets: 1955234150
     tx_128_to_255_byte_packets: 2806601346
     tx_256_to_511_byte_packets: 154015585
     tx_512_to_1023_byte_packets: 1466206531
     tx_1024_to_1522_byte_packets: 405928513
     tx_1523_to_9022_byte_packets: 0
     rx_xon_frames: 0
     rx_xoff_frames: 0
     tx_xon_frames: 150648
     tx_xoff_frames: 173552
     rx_mac_ctrl_frames: 0
     rx_filtered_packets: 1
     rx_ftq_discards: 0
     rx_discards: 0
     rx_fw_discards: 19605427
sysctl linecount: 504
sysctl hash: 4626e3788c72e091487afe1e3a7cfd32278ab07d -
____________________
hosthash: fc76bb3ee1ff580c6aba0d685713bb4145bd5fe3 -

Linux 2.6.18-308.16.1.el5 #1 SMP Tue Sep 18 07:21:07 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
IBM System x3550 -[7978AC1]-
bnx2: Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.1.11 (July 20, 2011)
eth0: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem c8000000, IRQ 90, node addr 001a649dc68a
eth1: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem ce000000, IRQ 177, node addr 001a649dc68c
cnic: Broadcom NetXtreme II CNIC Driver cnic v2.5.7 (July 20, 2011)
Broadcom NetXtreme II iSCSI Driver bnx2i v2.7.0.3 (Aug 04, 2011)
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 23
model name  : Intel(R) Xeon(R) CPU           E5420  @ 2.50GHz
stepping    : 6
cpu MHz     : 2493.750
cache size  : 6144 KB
physical id : 0
siblings    : 4
12:00:01 AM     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo   1891.67   1891.67 266593.77 266593.77      0.00      0.00      0.00
Average:         eth0   7066.44   7345.95 730519.41 2215508.99      0.00      0.00      4.37
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:01 AM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
driver: bnx2
version: 2.1.11
firmware-version: bc 4.0.3 ipms 1.6.0
bus-info: 0000:04:00.0
Ring parameters for eth0:
Pre-set maximums:
RX:     2040
RX Mini:    0
RX Jumbo:   8160
TX:     255
Current hardware settings:
RX:     1020
RX Mini:    0
RX Jumbo:   0
TX:     255

Coalesce parameters for eth0:
Adaptive RX: off  TX: off
stats-block-usecs: 999936
sample-interval: 0
pkt-rate-low: 0
pkt-rate-high: 0

rx-usecs: 18
rx-frames: 12
rx-usecs-irq: 18
rx-frames-irq: 2

tx-usecs: 80
tx-frames: 20
tx-usecs-irq: 18
tx-frames-irq: 2

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

NIC statistics:
     rx_bytes: 4640887074833
     rx_error_bytes: 0
     tx_bytes: 12640942400790
     tx_error_bytes: 0
     rx_ucast_packets: 46405845860
     rx_mcast_packets: 14487857
     rx_bcast_packets: 3476467
     tx_ucast_packets: 47159091638
     tx_mcast_packets: 118147
     tx_bcast_packets: 5504
     tx_mac_errors: 0
     tx_carrier_errors: 0
     rx_crc_errors: 0
     rx_align_errors: 0
     tx_single_collisions: 0
     tx_multi_collisions: 0
     tx_deferred: 0
     tx_excess_collisions: 0
     tx_late_collisions: 0
     tx_total_collisions: 0
     rx_fragments: 0
     rx_jabbers: 0
     rx_undersize_packets: 0
     rx_oversize_packets: 0
     rx_64_byte_packets: 136463411
     rx_65_to_127_byte_packets: 4245502343
     rx_128_to_255_byte_packets: 2357984838
     rx_256_to_511_byte_packets: 355610202
     rx_512_to_1023_byte_packets: 608223572
     rx_1024_to_1522_byte_packets: 65320154
     rx_1523_to_9022_byte_packets: 0
     tx_64_byte_packets: 112166114
     tx_65_to_127_byte_packets: 3010346100
     tx_128_to_255_byte_packets: 4087240164
     tx_256_to_511_byte_packets: 1625596725
     tx_512_to_1023_byte_packets: 3037109096
     tx_1024_to_1522_byte_packets: 927187571
     tx_1523_to_9022_byte_packets: 0
     rx_xon_frames: 0
     rx_xoff_frames: 0
     tx_xon_frames: 79164
     tx_xoff_frames: 89685
     rx_mac_ctrl_frames: 0
     rx_filtered_packets: 1
     rx_ftq_discards: 0
     rx_discards: 0
     rx_fw_discards: 6857729
sysctl linecount: 504
sysctl hash: dd6aab90d0fd9ae90742c5f812a78734e2f2ff1c -
____________________
hosthash: b7550c65d37622a131b1e47f066773defbb4d817 -

Linux 2.6.18-308.16.1.el5 #1 SMP Tue Sep 18 07:21:07 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
IBM System x3550 -[7978EHU]-
bnx2: Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.1.11 (July 20, 2011)
eth0: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem c8000000, IRQ 90, node addr 00215e3f1ec4
eth1: Broadcom NetXtreme II BCM5708 1000Base-T (B2) PCI-X 64-bit 133MHz found at mem ce000000, IRQ 177, node addr 00215e3f1ec6
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 23
model name  : Intel(R) Xeon(R) CPU           E5420  @ 2.50GHz
stepping    : 6
cpu MHz     : 2493.753
cache size  : 6144 KB
physical id : 1
siblings    : 4
12:00:01 AM     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo   1883.04   1883.04 263726.79 263726.79      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth1   7019.18   7312.47 720911.92 2214861.10      0.00      0.00      1.02
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
12:00:01 AM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         sit0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
driver: bnx2
version: 2.1.11
firmware-version: bc 4.0.3 ipms 1.6.0
bus-info: 0000:06:00.0
Ring parameters for eth1:
Pre-set maximums:
RX:     2040
RX Mini:    0
RX Jumbo:   8160
TX:     255
Current hardware settings:
RX:     255
RX Mini:    0
RX Jumbo:   0
TX:     255

Coalesce parameters for eth1:
Adaptive RX: off  TX: off
stats-block-usecs: 999936
sample-interval: 0
pkt-rate-low: 0
pkt-rate-high: 0

rx-usecs: 18
rx-frames: 12
rx-usecs-irq: 18
rx-frames-irq: 2

tx-usecs: 80
tx-frames: 20
tx-usecs-irq: 18
tx-frames-irq: 2

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

NIC statistics:
     rx_bytes: 4621548539323
     rx_error_bytes: 0
     tx_bytes: 12598031299743
     tx_error_bytes: 0
     rx_ucast_packets: 46260356368
     rx_mcast_packets: 5352446
     rx_bcast_packets: 3474589
     tx_ucast_packets: 47008853953
     tx_mcast_packets: 118164
     tx_bcast_packets: 5471
     tx_mac_errors: 0
     tx_carrier_errors: 0
     rx_crc_errors: 0
     rx_align_errors: 0
     tx_single_collisions: 0
     tx_multi_collisions: 0
     tx_deferred: 0
     tx_excess_collisions: 0
     tx_late_collisions: 0
     tx_total_collisions: 0
     rx_fragments: 0
     rx_jabbers: 0
     rx_undersize_packets: 0
     rx_oversize_packets: 0
     rx_64_byte_packets: 126851062
     rx_65_to_127_byte_packets: 4117708205
     rx_128_to_255_byte_packets: 2346047550
     rx_256_to_511_byte_packets: 356266112
     rx_512_to_1023_byte_packets: 604666332
     rx_1024_to_1522_byte_packets: 62938478
     rx_1523_to_9022_byte_packets: 0
     tx_64_byte_packets: 111216848
     tx_65_to_127_byte_packets: 2984505931
     tx_128_to_255_byte_packets: 4027485330
     tx_256_to_511_byte_packets: 1577669672
     tx_512_to_1023_byte_packets: 3015060448
     tx_1024_to_1522_byte_packets: 933575954
     tx_1523_to_9022_byte_packets: 0
     rx_xon_frames: 0
     rx_xoff_frames: 0
     tx_xon_frames: 129873
     tx_xoff_frames: 145090
     rx_mac_ctrl_frames: 0
     rx_filtered_packets: 1
     rx_ftq_discards: 0
     rx_discards: 0
     rx_fw_discards: 6752713
sysctl linecount: 504
sysctl hash: 4626e3788c72e091487afe1e3a7cfd32278ab07d -

1
ब्रॉडकॉम एनआईसी और आरएचईएल 5 के बीच एक लंबे समय से स्थायी संबंध है। उनमें से ज्यादातर आरएचईएल 5.5 पर जाने के लिए तय किए गए थे। मैं देखूंगा कि क्या कर्नेल-2.6.18-308 श्रृंखला पर कोई बग हैं। Btw, मुझे लगता है कि यह एक एनआईसी मुद्दा है क्योंकि पैकेट फर्मवेयर स्तर में खो जाते हैं। फर्मवेयर की संख्या को न देखें।
सोहम चक्रवर्ती

1
मैं सिर्फ इतना कहना चाहता हूं कि मैंने महीनों में एसएफ पर लिखा सबसे अच्छा प्रश्न है। बहुत ही उत्तम कार्य।

जवाबों:


3

आश्चर्य है कि क्या बॉक्स एक डेल है? डेल द्वारा शिप किए गए bnx2i ड्राइवर और चिपसेट के साथ एक प्रसिद्ध मुद्दा है। परिणाम भारी नेटवर्क लोड के तहत बेतरतीब ढंग से गिरा पैकेट है। यह तर्कसंगत लगेगा कि ट्यून-अप रिंग बफ़र्स इसे ट्रिगर कर सकते हैं, अगर यह मामला है।

मेरा मानना ​​है कि डेल चालक के अपने संस्करण को एक फिक्स के रूप में पेश करता है। अन्य सुधार modprobe.conf में कुछ इस तरह से करना है:

विकल्प bnx2i disable_msi = 1

किसी भी तरह की कोशिश करने के लिए चोट नहीं कर सकते। और x2 क्या kce ने कहा। सबसे अच्छे लिखित प्रश्नों में से एक जो मैंने कभी यहाँ देखा है।


ओह! आपके पास एक अच्छी आंख है, मैंने हार्डवेयर चेसिस या modprobe.confविवरण का उल्लेख नहीं किया है । ये सभी आईबीएम सिस्टम x3550 सर्वर हैं और मैंने इस प्रश्न को प्रतिबिंबित करने के लिए अपडेट किया है। मैं उम्मीद कर रहा था कि मुझे optionsआपके सुझाव के आधार पर modprobe में अंतर मिलेगा , लेकिन वहां कोई भाग्य नहीं था। कोई भी नहीं, बस eth0 और eth1 से bnx2 के लिए उपनाम। मैंने भी चेक /etc/modules.d/किया।
एंड्रयू बी

मैं bnx2 / Dell मुद्दे (सबसे दर्दनाक अनुभव से) से अधिक परिचित हूं लेकिन जैसा कि किसी ने ऊपर सुझाव दिया है, यह मुद्दा डेल के लिए विशिष्ट नहीं हो सकता है। यह अभी भी ड्राइवर के लिए msi बंद करने की कोशिश करने के लिए आपके समय के लायक हो सकता है। तथ्य यह है कि गिराए गए पैकेट बड़े बफ़र्स के साथ इंटरफेस पर हैं, जो मुझे वर्णित बग की तरह बहुत लगता है, यह सम्मोहक है।
जे एडम्स

एक सहकर्मी के साथ परामर्श में यह शानदार लग रहा है, मैं आपको बता दूंगा।
एंड्रयू बी

msi को अक्षम करें, मॉड्यूल को अनलोड करें और पुनः लोड करें, और फिर से चलाएँ, modinfo bnx2 को दिखाना चाहिए: parm: disable_msi: संदेश संकेतन बाधित (MSI) (int)
dmourati

एक त्वरित Google बताता है कि bnx2 समस्या डेल तक सीमित नहीं थी, और मैं देखता हूं कि आईबीएम निर्माता को डाउनलोड के लिए ड्राइवर भी प्रदान करता है। चालक के समस्या के स्रोत के रूप में खत्म करने के लिए dmourati के निर्देशों का पालन एक त्वरित तरीका होगा।
जे एडम्स

1

यहां तक ​​कि अगर आपको यकीन है कि आपके पास अपने सर्वर के लिए लोड बैलेंसर वीआईपी की पूरी सूची है, तो वैसे भी एक पैकेट कैप्चर चलाएं। सिर्फ इसलिए कि आपकी मशीन एआरपी को आईपी पते के लिए जवाब नहीं देगी, इसका मतलब यह नहीं है कि फर्जी पैकेटों को इसमें नहीं भेजा जा सकता है। सुनिश्चित करें कि आपके मैक पते पर भेजे जा रहे ट्रैफ़िक कॉन्फ़िगर किए गए IP पतों से मेल खा रहे हैं।

मैं उस समय की सराहना करता हूं जो लोग इस सवाल में डालते हैं, लेकिन मेरे अपने परिश्रम की यहां कमी थी। दृष्टिहीनता में, मुझे इस तरह एक PCAP फ़िल्टर बनाने की आवश्यकता थी:

tcpdump -i eth0 -n 'ether dst aa:bb:cc:dd:ee:ff and not (dst host 1.2.3.4 or dst host 5.6.7.8 or...)'

कहाँ पे:

aa:bb:cc:dd:ee:ff = HW addr of eth0
1.2.3.4, 5.6.7.8  = list of destination addresses that traffic is expected on

कई लोड बैलेंसर वीआईपी थे जो मुझे नहीं दिए गए थे (मैं एलबी को नियंत्रित नहीं करता), और वे टीसीपी पोर्ट 53 पर उन तरीकों से ट्रैफ़िक पास कर रहे थे जिनके परिणामस्वरूप आरएक्स डिस्क्स का परिणाम होगा। इन विरासत आईपी पर ट्रैफ़िक की मात्रा इतनी कम थी कि यह वायर पर किसी ट्रैफ़िक के व्यवस्थापक द्वारा देखे जाने की संभावना नहीं थी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.