Novell(クラウドコンピューティングのセキュリティ・仮想化ソリューションを実現)

 

BNX2ドライバがパケットを破棄する - UDPベースのアプリケーションの誤動作とTCP遅延

This document (7002506) is provided subject to the disclaimer at the end of this document.

環境

SUSE Linux Enterprise Server 10サポートパック1
SUSE Linux Enterprise Server 10サポートパック2
BNX2カーネルモジュール


問題の状況

パケット損失率が高いため、次の問題が発生しています。


  • UDPベースの通信が不安定、または誤動作する
  • OCFS2クラスタが不安定、誤動作、クラスタエラー
  • LinuxHAクラスタが不安定、誤動作、クラスタエラー
  • NFSの遅延、低信頼度またはエラー
  • Xen DomUベースのアプリケーションが遅い
  • ランダムにTCPが遅くなる

ifconfignetstat -i コマンドに、多数の破棄されたパケット数が表示されます。パケット損失は40%にも上ります。


解決策

SLES 10に付属のBNX2カーネルモジュールには大きなバグがあり、パケットの破棄率が高いことがわかっています。OCF32やクラスタリングソフトウェアなど、UDPベースのアプリケーションでは、破棄されたパケットによりアプリケーションでエラーを発生させることがあります。TCPアプリケーションには影響はありませんが、動作が遅くなる期間があります。

この問題はカーネル2.6.16.60-0.37へのメンテナンスアップデートと以降のメンテナンスカーネルで修正されています。これによりモジュールバージョンは1.7.6bになります。

上記のような現象が起きるシステムは、最新のメンテナンスカーネルにアップデートする必要があります。



追加情報

ifconfiの場合、次の内容が表示されます。

eth0 Link encap:Ethernet HWaddr 00:1C:C4:96:DE:EA
inet addr:192.168.39.170 Bcast:192.168.39.255 Mask:255.255.255.0
inet6 addr: fe80::21c:c4ff:fe96:deea/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5307978 errors:0 dropped:3841189 overruns:0 frame:0
TX packets:1522673 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1775345955 (1693.1 Mb) TX bytes:967976568 (923.1 Mb)
Interrupt:169 Memory:dc000000-dc012100

モジュールバージョンを確認するには、"modinfo bnx2"など、modinfoコマンドを使用します。次は、パッチの適用が必要なBNX2ドライバの例です。

filename: /lib/modules/2.6.16.60-0.33-xenpae/kernel/drivers/net/bnx2.ko
version: 1.6.7c
license: GPL
description: Broadcom NetXtreme II BCM5706/5708 Driver
author: Michael Chan <mchan@broadcom.com>
srcversion: D41ADC8BC49443A4DAE505E
alias: pci:v000014E4d0000163Asv*sd*bc*sc*i*
alias: pci:v000014E4d00001639sv*sd*bc*sc*i*
alias: pci:v000014E4d000016ACsv*sd*bc*sc*i*
alias: pci:v000014E4d000016AAsv*sd*bc*sc*i*
alias: pci:v000014E4d000016AAsv0000103Csd00003102bc*sc*i*
alias: pci:v000014E4d0000164Csv*sd*bc*sc*i*
alias: pci:v000014E4d0000164Asv*sd*bc*sc*i*
alias: pci:v000014E4d0000164Asv0000103Csd00003106bc*sc*i*
alias: pci:v000014E4d0000164Asv0000103Csd00003101bc*sc*i*
depends:
supported: yes
vermagic: 2.6.16.60-0.33-xenpae SMP Xen 686 REGPARM gcc-4.1
parm: disable_msi:Disable Message Signaled Interrupt (MSI) (int)



Disclaimer

この情報は、米国Novell, Inc.およびノベル株式会社の内外から発生したものです。本文書の内容または本文書を使用した結果について、いかなる保証、表明または約束も行っていません。また、本文書の商品性、および特定目的への適合性について、いかなる黙示の保証も否認し、排除します。

本文書に記載されている会社名、製品名はそれぞれ各社の商品、商標または登録商標です。

  • ドキュメントID: 7002506
  • 作成年月日: 30-JAN-2009
  • 修正年月日: 02-JUN-2009
  • ドキュメントリビジョン:
  • 分類:
  • 対象NOVELL製品およびバージョン: SUSE Linux Enterprise Server
  • カテゴリ: