Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

8.4. ネットワークチーミングデーモンおよび「ランナー」について

チームデーモンの teamd は、libteam を使ってチームドライバーのインスタンス 1 つを制御します。このチームドライバーのインスタンスは、ハードウェアドライバーのインスタンスを追加してネットワークリンクのチームを形成します。チームドライバーがネットワークインターフェースを提示します。team0 たとえば、カーネルの他の部分まで。チームドライバーのインスタンスによって作成されたインターフェースの名前は、以下のようになります。 team0,team1ドキュメントに記載されているため、同様。これは分かりやすくするためのもので、他の名前を使っても構いません。チーミング方法のすべてに共通な論理は、teamd が実行します。ラウンドロビンなど異なるロード共有とバックアップメソッドに一意の機能は、runners として参照されるコードの別のユニットで実装されます。ランナーという用語がこれらのコードユニットの呼称に選ばれたのは、モジュールモードといった言葉がカーネルとの関係ですでに特別な意味を持っているためです。ユーザーは JSON 形式の設定ファイルでランナーを指定し、インスタンスの作成時にコードが teamd インスタンスにコンパイルされます。ランナーのコードはその作成時に teamd のインスタンスにコンパイルされるので、ランナーはプラグインではありません。必要な際には、teamd 用のプラグインとしてコードを作成することは可能です。
本ガイド執筆時点では、以下のランナーが利用可能です。
  • broadcast (データは全ポートで送信されます)
  • round-robin (データは全ポートで順番に送信されます)
  • active-backup (1 つのポートまたはリンクが使用され、他はバックアップとして維持されます)
  • loadbalance (アクティブ Tx 負荷分散と BPF ベースの Tx ポートセレクターを使用)
  • lacp (802.3ad リンクアグリゲーション制御プロトコルを実装)
さらに、以下のリンク監視が利用可能です。
  • ethtool (Libteam lib は ethtool を使用してリンク状態の変更を監視)。設定ファイルで他のリンク監視が指定されていなければ、これがデフォルトになります。
  • arp_ping (arp_ping ユーティリティーは、ARP パケットを使用して先方のハードウェアアドレスの存在を監視します。)
  • nsna_ping (IPv6 近隣検索プロトコルからの近隣アドバタイズと近隣要請を使って近隣のインターフェースの存在を監視します。)
コードには、特定のリンク監視が特定のランナーで使用されることに関する制限はありません。ただし、lacp ランナー使用時に推奨されるリンク監視は、ethtool のみです。