日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
NG_ONE2MANY(4) FreeBSD カーネルインタフェースマニュアル NG_ONE2MANY(4) 名称 ng_one2many -- パケットマルチプレクシング netgraph ノードタイプ 書式 #include <sys/types.h> #include <netgraph/ng_one2many.h> 解説 one2many は、一対多数 (one-to-many) (と反対の方向の多対一 (many-to-one)) の方法でいくつかのリンク上のルーティングパケットのための簡単なメカニズム を提供します。one と名前が付けられた 1 つのフックと many0, many1, 等に名 前が付けられた複数のフックがあります。many フックのいずれで受信されたパ ケットは、one フックへ転送されます。one フックで受信されたパケットは、 many フックの 1 つ以上へ転送されます。そのフックは、ノードの設定された送 信アルゴリズムによって決定されます。パケットは、どんな方法でも変更されま せん。 接続された多くのリンクのそれぞれは、アップしているかまたはダウンしている と考えられます。パケットは、ダウンしている many フックには、決して配信さ れません。リンクがアップしているかまたはダウンしているかを決定する方法 は、ノードの設定されたリンク失敗検出アルゴリズムによって決まります。 インタフェースまたはリンクがグループに plumb (垂直) (注:訳不明) であるこ とができる前に、状態は、``アップ'' であることを示されなければなりません。 通常これは、rc.conf(5) によって初期ブート段階の間にセットアップされます。 また、ifconfig(8) ユーティリティを使用することによってインタフェースの状 態を ``アップ'' に変更することも可能です。 送信アルゴリズム NG_ONE2MANY_XMIT_ROUNDROBIN パケットは、シーケンシャル順で多くのフックで配信されます。各パケット は、異なった many フックで出て行きます。 NG_ONE2MANY_XMIT_ALL パケットは、すべての many フックで配信されます。各パケットは、それぞ れの many フックで出て行きます。 NG_ONE2MANY_XMIT_FAILOVER パケットは、最初のアクティブな many フックで配信されます。 将来、他のアルゴリズムもまた加えられるかもしれません。 リンク失敗検出 ノードは、アクティブであるかリンクに失敗したかを区別します。データは、ア クティブなリンクだけに送信されます。次のリンク失敗検出アルゴリズムが利用 可能です: NG_ONE2MANY_FAIL_MANUAL ノードは、リンクのどれが NGM_ONE2MANY_SET_CONFIG コントロールメッ セージ (下記参照) でアップされているか明らかに伝えられます。新たに接 続されたリンクは、別の方法で設定されるまでダウンしています。 NG_ONE2MANY_FAIL_NOTIFY ノードは、many (多くの) フックからフロー制御メッセージを listen (接 続を受け付け) して、NGM_LINK_IS_DOWN が受信されたなら、リンクが失敗 したと見なします。NGM_LINK_IS_UP メッセージが受信されたなら、ノード は、リンクがアクティブであると見なします。 将来、他のアルゴリズムもまた加えられるかもしれません。 すべてのリンクが失敗していると見なされるとき、ノードは、NGM_LINK_IS_DOWN メッセージを one (1 つの) フックに向けて送信します。少なくとも 1 つのリン クがアップしているとき、ノードは、NGM_LINK_IS_UP メッセージを one (1 つ の) フックに向けて送信します。 フック このノードタイプは、many0, many1, 等に名前が付けられた NG_ONE2MANY_MAX_LINKS フックと one と名前が付けられた 1 つのフックをサ ポートします。 コントロールメッセージ このノードタイプは、次を加えて、一般的なコントロールメッセージをサポート します: NGM_ONE2MANY_SET_CONFIG (setconfig) コントロールメッセージ引数として struct ng_one2many_link_config を使 用するノード設定を設定します: /* ノード設定構造体 */ struct ng_one2many_config { uint32_t xmitAlg; /* パケットをどのように配信するか */ uint32_t failAlg; /* リンク失敗をどのように検出するか */ u_char enabledLinks[NG_ONE2MANY_MAX_LINKS]; }; 現在、xmitAlg フィールドのための有効な設定は、 NG_ONE2MANY_XMIT_ROUNDROBIN (デフォルト) または NG_ONE2MANY_XMIT_ALL です。failAlg のための有効な設定は、NG_ONE2MANY_FAIL_MANUAL (デフォ ルト) または NG_ONE2MANY_FAIL_NOTIFY です。 NGM_ONE2MANY_GET_CONFIG (getconfig) struct ng_one2many_link_config における現在のノード設定を返します。 NGM_ONE2MANY_GET_STATS (getstats) このコマンドは、引数として 32 ビットのリンク番号をとり、現在接続され ているかもしれない対応する many リンクのために統計を含む struct ng_one2many_link_stats を返します /* 統計構造体 (各リンクあたり 1 つ) */ struct ng_one2many_link_stats { uint64_t recvOctets; /* リンクで受信した合計オクテット */ uint64_t recvPackets; /* リンクで受信した合計パケット */ uint64_t xmitOctets; /* リンクで送信した合計オクテット */ uint64_t xmitPackets; /* リンクで送信した合計パケット */ uint64_t memoryFailures; /* mem または mbuf を取得できなかった 時間 */ }; one リンクのための統計にアクセスするには、リンク番号 -1 を使用しま す。 NGM_ONE2MANY_CLR_STATS (clrstats) このコマンドは、引数として 32 ビットのリンク番号をとり、そのリンクの ための統計をクリアします。 NGM_ONE2MANY_GETCLR_STATS (getclrstats) NGM_ONE2MANY_GET_STATS と同様ですが、その上、不可分に統計をクリアし ます。 シャットダウン このノードは、NGM_SHUTDOWN コントロールメッセージを受け取るか、すべての フックが切断されている時、シャットダウンします。 使用例 次のコマンドは、イーサネットインタフェース fxp0 をネットワークインタ フェース fxp0 から fxp3 に対応する物理的なインタフェース上にパケットを交 互に配信するように設定します。 # Plumb nodes together ngctl mkpeer fxp0: one2many upper one ngctl connect fxp0: fxp0:upper lower many0 ngctl connect fxp1: fxp0:upper lower many1 ngctl connect fxp2: fxp0:upper lower many2 ngctl connect fxp3: fxp0:upper lower many3 # Allow fxp1 through fxp3 to xmit/recv fxp0 frames ngctl msg fxp1: setpromisc 1 ngctl msg fxp2: setpromisc 1 ngctl msg fxp3: setpromisc 1 ngctl msg fxp1: setautosrc 0 ngctl msg fxp2: setautosrc 0 ngctl msg fxp3: setautosrc 0 # Configure all four links as up ngctl msg fxp0:upper \ setconfig "{ xmitAlg=1 failAlg=1 enabledLinks=[ 1 1 1 1 ] }" # Bring up interface ifconfig fxp0 192.168.1.1 netmask 0xfffffffc (アドレス 192.168.1.2 を使用する) ピアマシンでの同様な設定を使って、4 回 の通常の帯域幅でポイントツーポイント (二地点間) のイーサネット接続は、達 成されます。 関連項目 netgraph(4), ng_bridge(4), ng_ether(4), ng_hub(4), ifconfig(8), ngctl(8) 歴史 ng_one2many ノードタイプは、FreeBSD 4.2 で実装されました。 作者 (ラウンドロビンアルゴリズムの) one2many netgraph ノードは、Archie Cobbs <archie@FreeBSD.org> によって書かれました。すべてのアルゴリズムは、Rogier R. Mulhuijzen <drwilco@drwilco.net> によって追加されました。 バグ 追加の送信とリンク失敗アルゴリズムは、サポートされるべきです。良い候補 は、Cisco の Etherchannel です。 FreeBSD 11.2 November 13, 2012 FreeBSD 11.2