図1 ボンディングの概念図。複数のネットワーク・インタフェース・カード(NIC)を搭載し,それらのNICを一つの仮想的なNICとして扱います。
図1 ボンディングの概念図。複数のネットワーク・インタフェース・カード(NIC)を搭載し,それらのNICを一つの仮想的なNICとして扱います。
[画像のクリックで拡大表示]

 1台のマシンに複数のネットワーク・インタフェース・カード(NIC)を搭載し,それらのNICを一つの仮想的なNICとして扱うための技術です(図1)。「チーミング」(Teaming)とも呼ばれます。

 ボンディングは,ネットワークの負荷を分散させたり,スループットや信頼性を向上させたりする場合に用いられます。例えば,ボンディングにより2つのNICで通信すれば,1つのNICで通信するよりも理論上2倍のデータを送受信できます。また,複数のNICで多重化すれば,そのうちの1つのNICに障害が発生した場合でも正常なNICにより通信を継続できます。

 このボンディングを実現する機能は,Linuxカーネルの標準ドライバ(ボンディング・ドライバ)として実装されています。そのため,NICを複数枚搭載したLinuxマシンを用意して,カーネルにボンディング・ドライバを組み込み,簡単な設定を施すだけでボンディングが利用できます。

 Linuxのボンディングには,7つの異なる動作モードが用意されています。負荷分散なのか,スループット向上なのか,信頼性向上なのかで使い分けができます。動作モードは,カーネルにドライバを組み込む際,パラメータで指定します。