Dell Unity:LACPトランクまたはボンド ロード バランシング アルゴリズムを変更する方法(Dell修正可能)

Summary: Link Aggregation Control Protocol (LACP)トラフィックは、LACPトランクまたはボンドを介したUnity SPへの書き込みではバランスされますが、読み取り要求に対して応答が送信される場合は均等に分散されません。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

特定のネットワーク条件および環境では、デフォルトのアルゴリズムがデフォルトで単一のインターフェイスを使用する場合があります

例:

送信元MACアドレスが同じ場合(ルーターを使用する場合)、MACは常に同じになり、送信に使用されるポートは常に同じになります

また、特殊な状況下では、異なるMACも同じ値になる場合があります。  
たとえば、MACが常に偶数(0、2、4、6、8、A、C、E)で終了し、LACPトランクまたはボンドに2つのポートがある場合、ハッシュの計算により、トラフィックは毎回同じポートを介して転送されます

LACPトランクまたはボンディングは、すべてのインターフェイスではなく単一のインターフェイスを均等に使用して、トラフィックのバランスが取れていないことを示しています
これは、本番ネットワーク上で(ネットワーク スイッチSysAdminsが)確認するか、Unisphereの [SYSTEM >Performance]にあるグラフィカル ネットワーク表示で確認できます。


Ethernetポート帯域幅
 
メモ: これは「netstat -i' サービス シェルでの出力。  

Cause

Unity上のLACPは、デフォルトの「xmit_hash_policy」としてlayer2を使用します

レイヤ 2+3 を「xmit_hash_policy」として使用することは、特にほとんどの宛先に到達するためにレイヤ 3 ゲートウェイ デバイスが必要な環境において、レイヤ 2 のみの場合よりもトラフィックのバランスのとれた分散を提供することを目的としています

参考:https://www.kernel.org/doc/Documentation/networking/bonding.txtこのハイパーリンクをクリックすると、デル・テクノロジーズ以外のWebサイトにアクセスします。

レイヤ2は、ハードウェアMACアドレスとパケットタイプIDフィールドのXORを使用してハッシュを生成します
計算式は次のとおりです。

hash = source MAC XOR destination MAC XOR packet type ID
slave number = hash modulo slave count.


Layer2+3 は、layer2 プロトコル情報と layer3 プロトコル情報の組み合わせを使用してハッシュを生成します
ハッシュは、ハードウェアMACアドレスとIPアドレスのXORの組み合わせを使用して生成されます。
計算式は次のとおりです。

hash = source MAC XOR destination MAC XOR packet type ID
hash = hash XOR source IP XOR destination IP
hash = hash XOR (hash RSHIFT 16)
hash = hash XOR (hash RSHIFT 8)
And then hash is reduced modulo slave count.


レイヤ 2 とレイヤ 2+3 はどちらも 802.3ad に準拠しています。

Resolution

Unity OEコード4.3以降の場合:

[Change]を xmit_hash_policy svc_network_bond command.
Dell Unity™ファミリー バージョン4.3: サービス コマンド テクニカル ノート - 74.
ページ使い:

 svc_network_bond [-h|--help] -d <device> {-s -o <option> -v <value>} {-g [-o <option>]}


構文は次の例のようになります。

service@(none) spb:~> svc_network_bond -s -d bond23 -o xmit_hash_policy -v 2


の許容値は次のとおりです。 xmit_hash_policy アール:


0またはレイヤー2デフォルト 設定
このパラメーターは、ハードウェアMACアドレスのXORを使用してハッシュを生成します。

1 または layer3+4 上位レイヤー プロトコル情報(使用可能な場合)を使用してハッシュを生成します。
これにより、特定のネットワークピアへのトラフィックが複数のスレーブにまたがることができますが、単一の接続が複数のスレーブにまたがることはありません

2 または layer2+3 layer2 プロトコル情報と layer3 プロトコル情報の組み合わせを使用してハッシュを生成します。モード 2 または Layer2+3 アルゴリズムは 802.3ad に準拠しています。



Unity OEコード4.2.3.9670635以前の場合:

Dellカスタマー サービスに連絡し、このKBA番号を伝えてください。

Unity OEコード5.3.x以降の場合
変更を行う際にサービス シェルは必要なく、再起動も必要ありません
以下は、実習のxmit_hash_policy.
でUnityアレイを設定する例です。このUnityアレイは、bond22.
と呼ばれるLACPトランクで構成されています。サービス アカウントを使用してUnityアレイにSSHで接続します。

まず、そのxmit_hash_policyが何に設定されているかを確認します。

# svc_network_bond --get --device bond22 -o xmit_hash_policy
INFO: Selected device: bond22
INFO: Option to show: xmit_hash_policy
INFO: Execution code: 0
xmit_hash_policy=0
#

次に、xmit_hash_policyを2に設定します
# svc_network_bond --set --device bond22 -o xmit_hash_policy -v 2
INFO: Selected device: bond22
INFO: Option to modify: xmit_hash_policy
INFO: Requested value: 2
WARNING: Do you want to proceed? [yes/no]: yes   <<<<<< sometimes y works and sometimes it fails on the first attempts. Retry then.
INFO: Execution code: 0
INFO: Option 'xmit_hash_policy' has been successfully changed.
#
xmit_hash_policyが2に構成されているかどうかを確認します
# svc_network_bond --get --device bond22 -o xmit_hash_policy
INFO: Selected device: bond22
INFO: Option to show: xmit_hash_policy
INFO: Execution code: 0
xmit_hash_policy=2
#

Additional Information

メモ: コマンドラインユーティリティ netstat arp サービス シェルを有効にする必要があります。


'netstat -i' 出力。これはボンディングのメンバーを示し、トラフィックがハッシュされているかどうかを判断するために使用できます。  
この例では、「bond20」(LACPボンド)はインターフェイス「eth20」と「eth21」で構成されています。  
Unityからのアウトバウンド トラフィックを表す[TX-OK]列の違いに注目してください。
 

21:12:03 service@(none) spb:~> netstat -i
Kernel Interface table
Iface   MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
bond20     9000   0 101724658      0     11      0 126087418      0      0      0 BMmRU
cmin0      9000   0 14341258      0      0      0 11301712      0      0      0 BMRU
eth2       1500   0        0      0      0      0        0      0      0      0 BMU
eth3       1500   0        0      0      0      0        0      0      0      0 BMU
eth10      1500   0        0      0      0      0        0      0      0      0 BMU
eth11      1500   0        0      0      0      0        0      0      0      0 BMU
eth12      1500   0        0      0      0      0        0      0      0      0 BMU
eth13      1500   0        0      0      0      0        0      0      0      0 BMU
eth20      9000   0 52249885      0      1      0    38317      0      0      0 BMsRU
eth21      9000   0 49474773      0     10      0 126049101      0      0      0 BMsRU
eth22      1500   0        0      0      0      0        0      0      0      0 BMU
eth23      1500   0        0      0      0      0        0      0      0      0 BMU
eth_int    9000   0 14341055      0      0      0 11301598      0      0      0 BMRU
eve_br0    1500   0       16      0      0      0     3656      0      0      0 BMRU
lo        65536   0 963282566      0      0      0 963282566      0      0      0 LRU
mgmt       1500   0  1405994      0     64      0   360538      0      0      0 BMRU
mgmt_vdev  1500   0   356150      0     64      0   326216      0      0      0 BMRU
srm        1500   0   135650      0     64      0        5      0      0      0 BMRU
vetheve1   1500   0       16      0      0      0     3647      0      0      0 BMRU

各IPアドレスのMACアドレス(HWaddress)を示すサービス シェルの「arp」の出力例。
これらは、LACPが複数の物理ポート間でトラフィックを正確にロード バランシングするためには異なる必要があります。  
使用しているインターフェイスでフィルタリングする必要があるインターフェイスがいくつかあります。  
リアルタイム イベントを監視するには、 'ip addr' 「」を見つけるにはIface」は、調査するIPアドレスに割り当てられています。
 
19:23:33 service@(none) spa:~> arp
Address                  HWtype  HWaddress           Flags Mask            Iface
10.98.25.61              ether   00:25:b5:02:01:fc   C                     bond20
10.98.25.60              ether   00:25:b5:02:00:1c   C                     bond20
10.98.25.70              ether   00:25:b5:02:00:dc   C                     bond20
10.98.25.63              ether   00:25:b5:02:01:8c   C                     bond20
10.98.25.65              ether   00:25:b5:02:01:6c   C                     bond20
10.98.25.62              ether   00:25:b5:02:01:dc   C                     bond20
10.98.25.64              ether   00:25:b5:02:01:9c   C                     bond20
10.98.25.67              ether   00:25:b5:02:01:0c   C                     bond20
10.98.25.66              ether   00:25:b5:02:01:7c   C                     bond20
10.98.25.59              ether   00:25:b5:02:00:0c   C                     bond20
peer                     ether   8e:92:80:4d:2d:02   C                     eth_int
10.98.25.69              ether   00:25:b5:02:00:fc   C                     bond20
10.98.25.1               ether   00:08:e3:ff:fd:90   C                     bond20
10.98.25.68              ether   00:25:b5:02:01:1c   C                     bond20

Affected Products

Dell EMC Unity Family

Products

Dell EMC Unity Family, VNXe2 Series
Article Properties
Article Number: 000034481
Article Type: Solution
Last Modified: 04 Jul 2025
Version:  6
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.