スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


スポンサー広告 | --:--:--
GS116Ev2の802.3ad動作

Netgear の「アンマネージプラス」スイッチ GS116Ev2 を購入して、安定動作させるところまでいったのでそのレポートです。 8ポートのL2スイッチではポートが足りなくなったのと、高負荷なネットワークをリンクアグリゲーションで負荷分散させたかったので購入してみました。

購入時の評価ポイント

このスイッチは一般的な L2 スイッチと比較すると、比較的低価格であるにもかかわらず、以下のようなアドバンテージがあります。

  • ポートミラーリングが使える(解析に便利)
  • taged VLAN, port VLAN が使える
  • QoS 対応
  • ループ検出対応
  • リンクアグリゲーション (802.3ad) 対応

この「アンマネージプラス」スイッチは専用の管理ツール(Windows専用)で設定するようになっているのですが、IPアドレス設定後はWebベースでも設定変更できるようになっています。(旧世代?ではWebベースの設定がなかった)

本当に 802.3ad が動作するのか情報がありませんでしたが、これは買って調べてみるしかないと・・・。

802.3adの動作

リンクアグリゲーションの設定は System / LAG / Membership のページでグループを構成するポートを指定し、

LAG / Configuration のページで、パラメータを指定するようになっています。

以下の3台のマシンとの接続で 802.3ad によるリンクアグリゲーションの接続を試みました
  • Linuxサーバ (Debian 7.8 / openvswitch)
  • Linuxデスクトップ (Fedora 21 による bonding / mode=4)
  • Windows 8.1 デスクトップ (Intel ProSet による Teaming)

(試行錯誤の詳細ははしょって・・・)結論としては、802.3ad はきちんと動作しません。

理由はパケットキャプチャをしていて判明したのですが、このスイッチは LACP のパケットを自分では処理せずに、なぜか他のポートにブロードキャストさせてしまいます、結果としてスイッチとマシンの間での LACP ネゴシエーションではなく、スイッチに接続したマシン間での LACP ネゴシエーションをさせてしまい、LACPのパケットが流れる度に疎通が混乱していきます。 (LACP が Link Aggregation Conflict Protocol として動作している!)

設定の "Admin Mode" について説明が見当たららないのですが、これを"Disable"に設定すると LACP のパケット疎通が抑止される動作になるようです。

原因は想定する構成/使い方が違うのか?スイッチのバグなのか?設定の組み合わせによるものなのか?は不明ですが、802.3adは使えないと判断してよさそうです。

ということで、通常のbonding構成で動作させています。

open-vswitch の bonding 設定はこんな感じ

# ovs-vsctl add-bond ovsbr0 bond0 eth0 eth1
# ovs-vsctl set port bond0 other_config:bond-detect-mode=miimon
# ovs-vsctl set port bond0 other_config:bond-miimon-interval=200
# ovs-vsctl show  
(中略)
    Bridge "ovsbr0"
        Port "bond0"
            Interface "eth1"
            Interface "eth0"
        Port "ovsbr0"
            Interface "ovsbr0"
                type: internal
    ovs_version: "1.4.2"
# ovs-appctl bond/show bond0
bond_mode: balance-slb
bond-hash-algorithm: balance-slb
bond-hash-basis: 0
updelay: 0 ms
downdelay: 0 ms
next rebalance: 2240 ms
lacp_negotiated: false

slave eth1: enabled
	may_enable: true

slave eth0: enabled
	active slave
	may_enable: true
	hash 217: 4 kB load

Linuxの bonding 設定はひとまず tlb を利用

$ cat /etc/modprobe.d/bonding.conf
alias bond0 bonding
options bond0 miimon=200 mode=5 xmit_hash_policy=layer3+4

Windows マシン (Intel ProSet) の Teaming のモードは ALB (Adaptive Load Balance) を利用



スポンサーサイト
Network | 19:22:41 | トラックバック(0) | コメント(7)

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。