web-dev-qa-db-ja.com

4X10GBボンディングNIC-4〜5GBのスループットのみを生成

私は2つ持っています HPBL685c G6ブレードサーバー Ubuntu15.04を実行しています

4つの10GB NICを個別に構成すると、iperfを使用してテストでき、NICごとにサーバー間で最大10Gbit /秒の帯域幅を受信します。これは期待どおりに機能します。

現在、ボンドモード「balance-rr」を使用して、各サーバーで10GB NICのすべてをボンディングしようとしています。これらの結果は異なりますが、2.5ギガビット/秒から5ギガビット/秒の間のどこかに到達します。

同じ構成を使用して2X1GB NICをこれらの同じサーバーに結合し、2X1GB NIC結合すると、iperfでテストしたときに最大2Gbit /秒の帯域幅になります。これら2 NICはVirtualConnectドメインに接続されておらず、代わりにそれぞれが異なる Cisco Catalyst Blade Switch 312 に接続されています。

だから、私の質問は次のとおりです:なぜ4X10GB NIC balance-rrを使用すると、単一のNICを使用するよりもパフォーマンスが低下するのですか?これは、2X1GBをボンディングし、テスト時に最大2GBを取得したときの私の結果と一致します。

さまざまなボンディングモードでこれを試しましたが、他のモードでは、ボンディング時に約10Gbit /秒の帯域幅が得られます。それでも理想的ではありませんが、balance-rrの結果よりも優れています。

6
Nicholas Curtis

仮想接続モジュールは、Linux展開でボンドモード0(balance-rr)をサポートしていないようです。

HPサポートから: http://h20564.www2.hp.com/hpsc/doc/public/display?docId=emr_na-c0295787

情報HP Virtual Connect環境でサポートされていないボンディングモードは、パケット損失やパフォーマンスの問題を引き起こす可能性があります。

詳細HP Virtual Connectはボンディングモード1、5、または6をサポートしますVCはモード0(ラウンドロビン)をサポートしません)または7(スイッチ支援ロードバランシング)。

モード1:アクティブ/バックアップ。アクティブバックアップポリシー:ボンド内の1つのスレーブのみがアクティブです。アクティブなスレーブに障害が発生した場合にのみ、別のスレーブがアクティブになります。ボンドのMACアドレスは、スイッチの混乱を避けるために、1つのポート(ネットワークアダプター)でのみ外部に表示されます。

モード5:適応型送信ロードバランシング:特別なスイッチサポートを必要としないチャネルボンディング。発信トラフィックは、各スレーブの現在の負荷(速度に対して計算された)に従って分散されます。着信トラフィックは現在のスレーブによって受信されます。受信スレーブに障害が発生した場合、障害が発生した受信スレーブのMACアドレスを別のスレーブが引き継ぎます。

モード6:適応型負荷分散:IPV4トラフィック用のbalance-tlbと受信負荷分散(rlb)が含まれ、特別なスイッチサポートは必要ありません。受信ロードバランシングは、ARPネゴシエーションによって実現されます。

6
Nicholas Curtis