NICチーミング
1台のコンピュータに付けた複数のNIC(ネットワークインタフェースカード)を束ね、1つのIPアドレスを持つ1つの仮想的なインタフェースとして使う技術。負荷分散、帯域の有効活用、耐障害性の向上を図る。
イマシルちゃんの解説
サーバの、ネットワークにつながる「口」が1つだけだと、
その口が壊れたら、もうだれともお話しできなくなっちゃうよね。
そこで、口をいくつか用意して、チームにまとめるんだ。
外から見ると1つの口に見えるけど、実は何人かで力を合わせて働いていて、
1人がお休みしても、ほかのメンバーががんばってくれるんだよ。
より深い解説
定義
NICチーミング(Linuxではボンディングとも呼ぶ)は、OSやドライバの機能で、複数の物理NICを1つの論理的なインタフェースにまとめる技術である。まとめたインタフェースに1つのIPアドレスを割り当て、上位のアプリケーションからは1つのNICとして見える。
主な目的
| 目的 | 内容 |
|---|---|
| 耐障害性 | 1枚のNICやケーブル、接続先のスイッチのポートが故障しても、残りのNICで通信を続ける |
| 負荷分散・帯域の拡大 | 複数のNICに通信を振り分け、全体の帯域を広げる |
主な動作モード
| モード | 内容 | スイッチ側の設定 |
|---|---|---|
| アクティブ/スタンバイ(フォールトトレランス) | 通常は1枚だけで通信し、故障したら予備のNICに切り替える | 不要 |
| 送信の負荷分散 | 送信を複数のNICに振り分け、受信は1枚で行う | 不要 |
| リンクアグリゲーション(静的、LACP) | 送受信とも複数のNICに振り分ける | 必要(スイッチのポートも束ねる) |
似た用語との区別
| 用語 | 内容 |
|---|---|
| NICチーミング | 複数のNICを束ね、1つのIPアドレスで使う |
| フロー制御(PAUSEフレーム) | 受信バッファがあふれそうなとき、相手に一時的に送信の停止を求める |
| オートネゴシエーション | 接続相手と、通信速度や全二重・半二重を自動で合わせる |
| 仮想NIC | ソフトウェアでNICを模倣し、物理NICの数より多くのインタフェースを使えるようにする(仮想マシンなど) |