Top#スイッチに戻る
複数の物理線があっても、機器同士は基本的に1本の線で通信します。
どの物理線を使うかの分散方法を指定することができます。
高負荷を考慮してLAGを組む場合、アルゴリズムも考慮する必要がります。
1G 4本でLAGを組むのではだめで、10G 1本にした方がよい場合もあります。
同じことでも呼び方は色々あります。
呼び方 | 備考 |
---|---|
リンクアグリゲーション | 一般的な呼び方 |
イーサチャネル | シスコ用語 |
トランク | HPE、F5の用語 |
リンクアグリゲーションの方法には、「静的」「LACP」「PAgP」の3種類の方法があります。
静的 | LACPに対応していない場合に使われる | ||
---|---|---|---|
LACP | Link Aggregation Control Protocol IEEE802.3ad | Active | 自分でLACPを送信して、積極的に論理リンクを作ろうとする 一般的にはPassiveではなく、Activeにする |
Passive | 自分でPAgPを送信せず、受け取ったら論理リンクを作る | ||
PAgP | Port Aggregation Protocol シスコ独自のプロトコル シスコ間でも使われない | Desirable | 自分でPAgPを送信して、積極的に論理リンクを作ろうとする 一般的にはAutoではなく、Desirableにする |
Auto | 自分でPAgPを送信せず、受け取ったら論理リンクを作る |
LACPだと、リンクダウンを伴わない障害を正しく検知してくれます。
例えば、スイッチがメディアコンバータ(メディコン)を介してつながっている時に、
メディコンの先が障害になっている場合、静的だとパケットを投げ、破棄されますが、
LACPだと、通信できないことを把握して、経路を使わないようにしてくれます。
参考:【図解】リンクアグリゲーションの仕組み〜負荷分散、LACPとStaticの違いやメリットデメリット、条件等〜 | SEの道標
LACPデータユニットの交換間隔には、SLOW(30秒ごと)とFAST(1秒ごと)の2種類があります
SLOWが一般的です。
Switch(config)# lacp rate fast
dst-ip | 宛先IPアドレスで負荷分散 |
---|---|
dst-mac | 宛先Macアドレスで負荷分散 |
src-dst-mac | 送信元、宛先両方のMacアドレスの組み合わせで負荷分散 |
src-ip | 送信元IPアドレスで負荷分散 |
src-mac | 送信元Macアドレスで負荷分散 ボックス型のデフォルト |
Switch(config)# port-channel load-balance src-dst-ip
no port-channel load-balance
一般的に使われているのはmode=1, mode=2, mode=4だけ
Mode No. | Mode Name | 説明 | スイッチ設定 |
---|---|---|---|
0 | balance-rr load balancing (round-robin) | 高速通信 使用できるスレーブデバイスから順にデータの送受信を行い、負荷分散と冗長化に対応します。 デフォルトで、modeを設定しないとこれになる。 | LAG(静的) |
1 | active-backup fault-tolerance | ・よく利用される設定 ・1つのスレーブインタフェースのみをActiveとし、送信 ・受信はActiveポートからのみARP応答することで誘導 | Access Port |
2 | Balance-XOR load balancing (xor) | 同じ送信先のMACアドレス対して同じスレーブを使用し、負荷分散と冗長化に対応 | LAG(静的) |
3 | Broadcast fault-tolerance | LAG(静的) | |
4 | 802.3ad IEEE 802.3ad Dynamic link aggregation | IEEE 802.3ad 動的リンクアグリゲーションのポリシーを設定します。 | LAG(LACP) |
5 | Balance-tlb transmit load balancing | 送信時のみ負荷分散を行い受信時は冗長化(MACアドレスを引き継ぐ) | |
6 | Balance-alb adaptive load balancing | 送受信共に負荷分散を行う |
スタッキングやMC-LAGを組んでいる場合には、mode=0ではなくmode=2を使わなければならない。
ここでmode=0を使ってラウンドロビンでパケットを送信してしまうと、ネットワーク内ではどこをとおっているかわからなくなります。一見、効率良さそうに見えますがTCP/IPの世界で順番が入れ替わってしまうと、通信をやり直す必要があります。そのためイーサネットスイッチでは基本的にフローベースの通信を行うことで順番が入れ替わることを防ぎながら、宛先に到達できるようにしています。そのフローベースの通信をさせる設定というのがmode=2: balance-xorであり、スイッチ側の設定はStatic LAGと呼ばれる設定になります。
Linux Bonding mode=0の恐怖 - テックセンター - Blog - テックセンター - Dell コミュニティ
イーサチャネルの確認 | switch# show etherchannel summary |
Switch# configure terminal Switch(config) # interface range gigabitethernet 1/0/1 , gigabitethernet2/0/1 Switch(config-if-range) # switchport trunk encapsulation dot1q Switch(config-if-range) # switchport mode trunk Switch(config-if-range) # channel-group 1 mode on
Switch# configure terminal Switch(config) # interface range gigabitethernet 1/0/1 , gigabitethernet2/0/1 Switch(config-if-range) # switchport trunk encapsulation dot1q Switch(config-if-range) # switchport mode trunk Switch(config-if-range) # channel-group 1 mode active
Switch# configure terminal Switch(config) # interface range gigabitethernet 1/0/1 , gigabitethernet2/0/1 Switch(config-if-range) # switchport trunk encapsulation dot1q Switch(config-if-range) # switchport mode trunk Switch(config-if-range) # channel-group 1 mode desirable non-silent
VLANを追加する時は、必ずポートチャネルに対してのみ行います。
ポートチャネルに設定すると、メンバーポートにも反映されます。
Switch(config)#int po 1 Switch(config-if)# switchport trunk allowed vlan add 15,16
メンバーポートに設定してしまうと、ポートチャネルとメンバーポートに相違が発生してしまい、 物理インタフェースとポートチャネルがダウンしてしまいます。
GigabitEthernet1/0/1 is up, line protocol is down (suspended) Port-channel1 is down, line protocol is down (notconnect)
vmnic0とvmnic1で、NICチーミングにします。
ロードバランシングを「IPハッシュに基づいたルート」にします。
そうすると、発信元と宛先IPアドレスのハッシュによりアップリンクがActive/Activeで使われるようになります。
発信元仮想ポートIDに基づいたルート | デフォルトの設定 Active-Active 物理NICの割り当ては仮想マシン単位 |
IPハッシュに基づいたルート | Active-Active 1台の仮想マシンでも、送信先のIPが異なれば、別のNICを使う |
発信元MACハッシュに基づいたルート | Active-Active 結果的に、物理NICの割り当ては仮想マシン単位になる |
明示的なフェイルオーバー順序を使用 | Active-Standby |
vmnic0とvmnic1が同一ポートとみなせるようport-chanelを設定します。
ネゴシエーションは使えないようなので「channel-group mode on」で静的にしましょう。
interface Port-channel1 switchport trunk encapsulation dot1q switchport trunk allowed vlan 1,10,11 switchport mode trunk ! interface GigabitEthernet1/0/1 switchport trunk encapsulation dot1q switchport trunk allowed vlan 1,10,11 switchport mode trunk channel-group 1 mode on spanning-tree portfast ! interface GigabitEthernet2/0/1 switchport trunk encapsulation dot1q switchport trunk allowed vlan 1,10,11 switchport mode trunk channel-group 1 mode on spanning-tree portfast !
Top#スイッチに戻る