(57)【要約】  所定の装置間で行われる生存通知や死活監視パケットの授受により、ネットワークや関連の無い装置が受ける影響を軽減する。制御装置は、スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別する通信識別部と、前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するスイッチ制御部と、を備える。
2014175335.tif 000002
【特許請求の範囲】
【請求項１】
スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別する通信識別部と、
前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するスイッチ制御部と、
を備える制御装置。
【請求項２】
前記パターンは、前記所定の装置間で周期的にブロードキャスト又はマルチキャストされる状態確認のためのパケットを特定するためのパターンである請求項１の制御装置。
【請求項３】
前記パターンと、転送先とを対応付けたテーブルを保持し、
前記スイッチ制御部は、前記テーブルを参照して、前記パターンに適合するパケットの前記転送先への転送を指示する制御情報を作成し、前記スイッチに設定する請求項１又は２の制御装置。
【請求項４】
前記テーブルの前記転送先として、転送先の装置が属するグループを指定可能であり、
前記スイッチ制御部は、前記グループに属する装置を格納した第２のテーブルを参照して、前記マッチ条件に適合するパケットを転送すべき装置を決定する請求項３の制御装置。
【請求項５】
前記テーブルを更新する制御対象通信通知装置と接続されている請求項３又は４の制御装置。
【請求項６】
前記制御対象通信通知装置による前記テーブルのエントリの削除又は転送先の変更に応じて、前記スイッチに設定した制御情報を更新する請求項５の制御装置。
【請求項７】
予め定められた手順で所定の通信を行う複数の装置と、
制御装置から設定された制御情報を参照して受信パケットを処理するスイッチと、
前記スイッチを介して受信したパケットと予め設定されたパターンとを照合して、前記複数の装置間の所定の通信を識別する通信識別部と、前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するスイッチ制御部と、を備えた制御装置と、
を含む計算機システム。
【請求項８】
さらに、前記パターンと、転送先とを対応付けたテーブルを、前記制御装置に送信する制御対象通信通知装置を含み、
前記制御装置は、前記テーブルを参照して、前記パターンに適合するパケットの前記転送先への転送を指示する制御情報を作成し、前記スイッチに設定する請求項７の計算機システム。
【請求項９】
制御装置から設定された制御情報を参照して受信パケットを処理するスイッチを制御する制御装置が、
前記スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別するステップと、
前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するステップと、
を含む通信制御方法。
【請求項１０】
制御装置から設定された制御情報を参照して受信パケットを処理するスイッチを制御するコンピュータに、
前記スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別する処理と、
前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１３−０９１４６９号（２０１３年４月２４日出願）に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、制御装置、計算機システム、通信制御方法及びプログラムに関し、特に、外部から設定された制御情報に基づいて受信パケットを処理するスイッチを制御する制御装置、計算機システム、通信制御方法及びプログラムに関する。
【背景技術】
【０００２】
計算機システムにおいて、ある装置が、他の装置や監視装置に対し生存通知や死活監視パケットを送信する構成が知られており、これら生存通知、死活監視パケットは、ブロードキャストやマルチキャストを用いて授受される。例えば、ＩＰＭＩ（Ｉｎｔｅｌｌｉｇｅｎｔ  Ｐｌａｔｆｏｒｍ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｔｅｒｆａｃｅ）では、ＢＭＣ（Ｂａｓｅｂｏａｒｄ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｎｔｒｏｌｌｅｒ）と呼ばれる制御ユニットが、ウォッチドッグタイマによりｇｒａｔｕｉｔｏｕｓ  ＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）パケットをブロードキャストする方法を用いている。また、Ｌｉｎｕｘ（登録商標）  ＨＡ（Ｈｉｇｈ−Ａｖａｉｌａｂｉｌｉｔｙ  Ｌｉｎｕｘ）のＨｅａｒｔｂｅａｔというソフトウェアにおいても、ブロードキャストを用いて死活監視が行われている。【０００３】
非特許文献１、２には、本発明の実施形態において言及するオープンフローという技術が開示されている。【０００４】
特許文献１〜３は、本願出願人によるオープンフロー関連発明の例である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１６０３６３号公報
【特許文献２】特開２０１１−０８１５８８号公報
【特許文献３】特開２０１２−１６５３３５号公報
【非特許文献】
【０００６】
【非特許文献１】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２５（２０１３）年４月１０日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献２】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．３．１  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０４）、［ｏｎｌｉｎｅ］、［平成２５（２０１３）年４月１０日検索］、インターネット〈URL:https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.3.1.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００７】
以下の分析は、本発明によって与えられたものである。上記計算機システムにおいては、ブロードキャストやマルチキャストを用いて生存通知や死活監視パケットを送信することで、これらパケットの送信先の特定や管理が不要となったり、複数の装置にパケットを転送することが可能となっている。【０００８】
その一方で、このようにブロードキャストやマルチキャストで生存通知や死活監視パケットを送信する装置が接続されていると、これらのパケットがネットワーク全体に転送されてしまうという問題点がある。これらのパケットは、総じて、送信側が意図する装置以外には無用のパケットであり、これらのパケットを送信する装置の数次第では、ネットワークやその他装置に与える負荷も軽視できない。【０００９】
本発明は、上記のように所定の装置間で行われる生存通知や死活監視パケットの授受がネットワークや関連の無い装置に与える影響を軽減できる制御装置、計算機システム、通信制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
第１の視点によれば、スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別する通信識別部と、前記装置間の通信を特定するためのマッチ条件と、前記所定の装置間の所定の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するスイッチ制御部と、を備える制御装置が提供される。【００１１】
第２の視点によれば、予め定められた手順で所定の通信を行う複数の装置と、制御装置から設定された制御情報を参照して受信パケットを処理するスイッチと、前記スイッチを介して受信したパケットと予め設定されたパターンとを照合して、前記複数の装置間の所定の通信を識別する通信識別部と、前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するスイッチ制御部と、を備えた制御装置と、を含む計算機システムが提供される。【００１２】
第３の視点によれば、制御装置から設定された制御情報を参照して受信パケットを処理するスイッチを制御する制御装置が、前記スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別するステップと、前記装置間の通信を特定するためのマッチ条件と、前記所定の装置間の所定の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定するステップと、を含む通信制御方法が提供される。本方法は、上記したスイッチを制御する制御装置という、特定の機械に結びつけられている。【００１３】
第４の視点によれば、制御装置から設定された制御情報を参照して受信パケットを処理するスイッチを制御するコンピュータに、前記スイッチを介して受信したパケットと予め設定されたパターンとを照合して、所定の装置間の所定の通信を識別する処理と、前記装置間の通信を特定するためのマッチ条件と、前記所定の装置間の所定の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１４】
本発明によれば、所定の装置間で行われる生存通知や死活監視パケットの授受により、ネットワークや関連の無い装置が受ける影響を軽減することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態の構成を示す図である。
【図２】本発明の第１の実施形態の計算機システムの構成を示す図である。
【図３】本発明の第１の実施形態のサーバ間通知構成データベース（サーバ間通知構成ＤＢ）に保持されるエントリの一例を示す図である。
【図４】本発明の第１の実施形態のオープンフロースイッチ（ＯＦＳ）の構成を示す図である。
【図５】本発明の第１の実施形態のオープンフロースイッチ（ＯＦＳ）のフローテーブルに保持されるエントリの一例を示す図である。
【図６】図５のエントリのインストラクションフィールドに設定可能な処理内容の一例を示す図である。
【図７】本発明の第１の実施形態のオープンフローコントローラ（ＯＦＣ）の構成を示す図である。
【図８】本発明の第１の実施形態のオープンフローコントローラ（ＯＦＣ）のトポロジーデータベース（トポロジーＤＢ）に保持されるエントリの一例を示す図である。
【図９】本発明の第１の実施形態のオープンフローコントローラ（ＯＦＣ）の通知転送テーブルに保持されるエントリの一例を示す図である。
【図１０】本発明の第１の実施形態のオープンフローコントローラ（ＯＦＣ）のグループ管理テーブルに保持されるエントリの一例を示す図である。
【図１１】本発明の第１の実施形態の制御対象通信通知装置の構成を示す図である。
【図１２】本発明の第１の実施形態の制御対象通信通知装置のパターンデータベース（パターンＤＢ）に保持されるエントリの一例を示す図である。
【図１３】本発明の第１の実施形態の動作を説明するためのネットワーク構成を示す図である。
【図１４】本発明の第１の実施形態のＯＦＳの基本動作を示す流れ図である。
【図１５】本発明の第１の実施形態のＯＦＣの動作を示す流れ図である。
【図１６】本発明の第１の実施形態の計算機システムの動作（ユニキャスト通信発生時）を表したシーケンス図である。
【図１７】本発明の第１の実施形態の計算機システムの動作（未通知ブロードキャスト通信発生時）を表したシーケンス図である。
【図１８】本発明の第１の実施形態の計算機システムの動作（通知済みブロードキャスト通信発生時）を表したシーケンス図である。
【図１９】本発明の第１の実施形態の計算機システムの動作（通知済みブロードキャスト通信発生時）を表したシーケンス図である。
【図２０】本発明の第２の実施形態の計算機システムの構成を示す図である。
【図２１】本発明の第２の実施形態のオープンフローコントローラ（ＯＦＣ）の構成を示す図である。
【図２２】本発明の第２の実施形態の動作を説明するためのネットワーク構成を示す図である。
【図２３】本発明の第２の実施形態のＯＦＣの動作を示す流れ図である。
【図２４】本発明の第２の実施形態の計算機システムの動作（エントリ追加時）を表したシーケンス図である。
【図２５】本発明の第２の実施形態の計算機システムの動作（エントリ変更時）を表したシーケンス図である。
【図２６】本発明の第２の実施形態の計算機システムの動作（エントリ削除時）を表したシーケンス図である。
【発明を実施するための形態】
【００１６】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１７】
本発明は、その一実施形態において、図１に示すように、通信識別部３０２と、スイッチ制御部３０３と、を備えた制御装置３００にて実現できる。より具体的には、通信識別部３０２は、スイッチを介して受信したパケットと予め設定されたパターン３０１Ａとを照合して、所定の装置間の所定の通信を識別する。
【００１８】
そして、スイッチ制御部３０３は、前記所定の装置間の所定の通信を特定するためのマッチ条件と、前記装置間の通信に適用する処理内容とを対応付けた制御情報を、前記スイッチに設定する。
【００１９】
上記構成によれば、特定の装置（例えば、図１の装置Ａと装置Ｂ）間でブロードキャストやマルチキャストで授受される生存通知や死活監視パケットの特徴を制御対象とすることができる。これにより、これらパケットの流れを制御し、ネットワークやその他装置（例えば、図１の装置Ｃ）がこれらパケットから受ける影響を軽減することが可能となる。
【００２０】
［第１の実施形態］
続いて、本発明の第１の実施形態について図面を参照して詳細に説明する。図２は、本発明の第１の実施形態の計算機システムの構成を示す図である。図２を参照すると、２つ以上のサーバ１ａ〜１ｎと、オープンフロースイッチ（以下、「ＯＦＳ」と記す。）２と、オープンフローコントローラ（以下、「ＯＦＣ」と記す。）３と、制御対象通信通知装置４と、サーバ間通知構成データベース（サーバ間通知構成ＤＢ）５と、を接続した構成が示されている。
【００２１】
サーバ１ａ〜１ｎは、さまざまな計算を行う計算機であり、他のサーバに対して、動作状況や処理を継続していることを示す生存通知、死活監視パケット（以下、「特定パケット」と記す。）をブロードキャストにより通知する。
【００２２】
ＯＦＳ２は、受信パケットのヘッダ等と照合するマッチ条件（ルール）と、このマッチ条件（ルール）に適合するパケットに適用する処理内容とを対応付けたエントリを保持し、受信パケットを処理する非特許文献１、２に示すオープンフロースイッチにて構成される。制御装置から設定された制御情報に従い、受信パケットを識別して処理可能な機器であれば、ＯＦＳに代えて、その他のスイッチを用いてもよい。
【００２３】
ＯＦＣ３は、ＯＦＳ２を制御する非特許文献１、２に示すオープンフローコントローラにて構成される。また、本実施形態のＯＦＣ３は、ＯＦＳ２から、サーバ１ａ〜１ｎから発信されるパケットを受信すると、通知転送テーブル（後述）を参照し、その転送先を決定する。そして、ＯＦＣ３は、前記パケットの転送経路上のＯＦＳ２に前記転送先へパケットを転送させる処理を定めた制御情報としてフローエントリを設定する。
【００２４】
サーバ間通知構成ＤＢ５は、サーバ１ａ〜１ｎ間の転送先を記録したデータベースである。図３は、サーバ間通知構成ＤＢ５に保持されるエントリの一例を示す図である。図３の例では、制御対象となるパケットの特徴を示す“パターン情報”と、“パターン情報”によって特定される通信が属するグループを示す “グループＩＤ”と、転送先を示す“転送先情報”と対応付けたエントリが示されている。
【００２５】
パターン情報は、パターンの識別子であるパターンＩＤと、各パターンに対応した付随情報である０個以上のパターン属性群により構成される。パターン属性としては、受信パケットと照合するヘッダフィールドとその値が設定される。
【００２６】
また、グループＩＤは、サブネット、テナント、パーティション、ＶＬＡＮ等のネットワークあるいはリソースの貸し出し単位等の分割単位として使用する単位で付与されるＩＤである。
【００２７】
転送先情報は、転送先となるグループを示すグループＩＤと、サーバ情報とが含まれる。なお、特定のグループＩＤに、すべてのグループが転送対象であることを示す値を割り当ててもよい。転送先情報フィールドには、０個以上の転送先を指定することができる。転送先が０個である場合、該当する通信パケットは破棄対象であることを示す。なお、サーバ情報には、各転送先のサーバのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス（Ｅｔｈｅｒアドレス）が指定される。
【００２８】
以上のようなサーバ間通知構成ＤＢ５のエントリは、ネットワーク管理者等によって登録される。
【００２９】
続いて、上記した各装置の具体的な構成について説明する。
［ＯＦＳ］
図４は、本発明の第１の実施形態のＯＦＳ２の構成を示す図である。図４を参照すると、パケットの処理を行うパケット処理部２０と、フローテーブル２１とを備えた構成が示されている。
【００３０】
パケット処理部２０は、フローテーブル２１を参照してＯＦＳ２に届いたパケットの処理を行う。また、パケット処理部２０は、受信パケットに適合するエントリがフローテーブル２１にない場合や受信パケットに適合するエントリにて指定されていた場合、ＯＦＣ３に対して受信パケットを転送する動作を行う。
【００３１】
フローテーブル２１は、制御対象のパケットを特定するルール（マッチ条件）と、このルール（マッチ条件）に適合するパケットに対して適用する処理を記述したエントリ（フローエントリ）を格納するテーブルである。
【００３２】
図５は、フローテーブル２１に格納されるにエントリの一例を示す図である。図５を参照すると、受信パケットのパケットヘッダ等と照合するルール（マッチ条件）を格納するフィールドと、ルール（マッチ条件）に適合するパケット等の統計情報を格納するフロー統計情報フィールド（Ｃｏｕｎｔｅｒｓ）と、ルール（マッチ条件）に適合するパケットに適用する処理内容（Ａｃｔｉｏｎ）を格納するインストラクションフィールド（Ｉｎｓｔｒｕｃｔｉｏｎｓ）と、を対応付けたエントリが示されている。なお、ルール（マッチ条件）として、ワイルドカードを設定することも可能である。
【００３３】
図６は、インストラクションフィールド（Ｉｎｓｔｒｕｃｔｉｏｎｓ）に設定可能な処理内容（Ａｃｔｉｏｎ）とその内容の一例の図である。ＯＵＴＰＵＴは、受信パケットを指定ポート（インタフェース）に出力するアクションである。ＳＥＴ＿ＶＬＡＮ＿ＶＩＤからＳＥＴ＿ＴＰ＿ＤＳＴは、パケットヘッダのフィールドを修正するアクションである。これらを組み合わせて、例えば、ある送信元から宛先に当てられたパケットについて、例えば、ＶＬＡＮ  ＩＤを書き換えた上で、指定ポートから出力することが可能となる。
【００３４】
なお、上記したフローテーブル２１を、ＣＡＭ（Ｃｏｎｔｅｎｔ‐Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）等を用いて構成することができる。また、パケット処理部２０は、ＣＡＭからエントリを検索し処理を実行するＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）にて構成することで、その処理を高速化することができる。
【００３５】
［ＯＦＣ］
図７は、ＯＦＣ３の構成を示す図である。図７を参照すると、経路計算部３１と、トポロジーデータベース（トポロジーＤＢ）３２と、フローエントリ設定部３３と、通知転送テーブル３４と、グループ管理テーブル３５とを備えた構成が示されている。
【００３６】
経路計算部３１は、ＯＦＳ２から送られてきたパケットの処理を行う処理手段であり、上述した通信識別部に相当する。
【００３７】
トポロジーＤＢ３２は、サーバ１（以下、サーバ１ａ〜１ｎを特に区別しない場合、「サーバ１」と記す。）と、ＯＦＣ２との接続関係を示すトポロジー情報を管理するデータベースである。図８は、トポロジーＤＢ３２に保持されるエントリの一例を示す図である。上段の（ａ）は、ＯＦＳ２同士の接続関係を示すエントリであり、ＯＦＳの識別子であるＤＰＩＤ（ＤａｔａＰａｔｈ  ＩＤ）と接続するポートの組で表現している。下段の（ｂ）は、ＯＦＳ２とサーバ１間の接続関係を示すエントリであり、ＯＦＳ側は、ＤＰＩＤとポートで表現され、サーバ側は、サーバのＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）のＭＡＣアドレスで表現されている。
【００３８】
フローエントリ設定部３３は、ＯＦＳ２のフローテーブル２１にフローエントリを設定するための通信を行う処理手段であり、上述したスイッチ制御部に相当する。
【００３９】
通知転送テーブル３４は、制御対象通信通知装置４から通知されたサーバ１間の特定パケットの特徴とその転送先とを対応付けたエントリを格納するテーブルである。図９は、通知転送テーブル３４に格納されるエントリの一例を示す図である。図９の例では、各エントリは“ルール（マッチ条件）”と、０個以上の“転送先”とから構成される。転送先が０個の場合、ＯＦＣ３は、 “ルール”に適合するパケットを破棄させるフローエントリを作成し、ＯＦＳ２に設定する。
【００４０】
ルールフィールドには、該当する通信の送信元となるサーバ１が属するグループを示すグループＩＤ、該当する通信パケットが入力されるＯＦＳ２のＤＰＩＤとその入力ポート情報（Ｉｎ  ｐｏｒｔと、そのパケットヘッダの送信元ＭＡＣアドレス（Ｅｔｈｅｒ  ＳＡ）、宛先ＭＡＣアドレス（Ｅｔｈｅｒ  ＤＡ）、Ｅｔｈｅｒ  Ｔｙｐｅ、送信元ＩＰアドレス（ＩＰ  ｓｒｃ）、宛先ＩＰアドレス（ＩＰ  ｄｓｔ）、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）プロトコル／ＡＲＰ番号（ＩＰ  ｐｒｏｔｏ／ＡＲＰ  ｏｐｃｏｄｅ）、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｃｏｌ）／ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）／ＳＣＴＰ（Ｓｔｒｅａｍ  Ｃｏｎｔｒｏｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｐｒｏｔｏｃｏｌ）の送信元ポート番号又はＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）コード（ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｓｒｃ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ、ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｄｓｔ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ）などを指定可能となっている。また、各フィールドには、どの値でもよいことを示す値（ｗｉｌｄｃａｒｄ）や、値の一部のみが有効であることを示すｍａｓｋを指定することもできる。
【００４１】
転送先フィールドには、転送先のサーバに接続された出口側のＯＦＳ２のＤＰＩＤと、その出力ポート情報（Ｏｕｔ  ｐｏｒｔ）にて特定される転送先が指定される。
【００４２】
グループ管理テーブル３５は、サーバ１がどのグループに属するかを管理するテーブルである。図１０は、グループ管理テーブル３５に保持されるエントリの一例を示す図である。図１０の例では、各エントリは、グループを示す“グループＩＤ”と、そのグループに属するサーバのＮＩＣの“ＭＡＣアドレス”とを対応付けたエントリが示されている。
【００４３】
［制御対象通信通知装置］
図１１は、本発明の第１の実施形態の制御対象通信通知装置４の構成を示す図である。図１１を参照すると、通信ルール生成部４１と、パターンデータベース（パターンＤＢ）４２とを備えた構成が示されている。
【００４４】
通信ルール生成部４１は、パターンＤＢ４２を参照して、サーバ間通知構成ＤＢ５から取得したエントリを変換して、ＯＦＣ３の通知転送テーブル３４に登録するエントリを生成する。
【００４５】
図１２は、パターンＤＢ４２に保持されるエントリの一例を示す図である。図１２を参照すると、パターンＤＢ４２のエントリは、パターンを識別する“パターンＩＤ”、“グループＩＤ”、“サーバ情報”、“Ｅｔｈｅｒ  ＳＡ”、“Ｅｔｈｅｒ  ＤＡ”、“Ｅｔｈｅｒ  Ｔｙｐｅ”、“ＩＰ  ｓｒｃ”、“ＩＰ  ｄｓｔ”、“ＩＰ  ｐｒｏｔｏ／ＡＲＰ  ｏｐｃｏｄｅ”、“ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｓｒｃ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ”、“ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｄｓｔ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ”および、０個以上の転送先情報とを対応付けて構成される。また、各フィールドには、どの値でもよいことを示す値（ｗｉｌｄｃａｒｄ）や、値の一部のみが有効であることを示すｍａｓｋを指定することもできる。
【００４６】
転送先フィールドには、転送先となるグループＩＤと、サーバ情報とを設定可能となっている。転送先が０個である場合、該当する通信パケットは破棄対象であることを示す。また、転送先に、発信元のサーバが属するグループとは別のグループを指定することも可能となっている。この場合、該当する通信パケットは、前記グループＩＤにて指定された別のグループにも転送されることになる。このようなエントリを用いることで、複数のグループへ同報するパケットを集中管理することが可能となっている。その他パターンＤＢ４２のエントリの各フィールドの内容は、通知転送テーブル３４と同様であるので説明を省略する。
【００４７】
なお、上記した各装置の各部（処理手段）は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００４８】
続いて、本実施形態の動作について図面を参照して詳細に説明する。以下の説明では、サーバ１、ＯＦＳ２及びＯＦＣ３が図１３に示すとおりに接続されているものとして説明する。
【００４９】
はじめに、ＯＦＳ２とＯＦＣ３の基本動作について説明する。図１４は、本発明の第１の実施形態のＯＦＳの基本動作を示す流れ図である。図１４を参照すると、ＯＦＳ２のパケット処理部２０は、パケットを受信すると、フローテーブル２１から、受信パケットに適合するルール（マッチ条件）を持つエントリを検索する（ステップＳ５０１）。
【００５０】
前記検索の結果、受信パケットに適合するルール（マッチ条件）を持つエントリが見つかった場合（ステップＳ５０１のＹｅｓ）、ＯＦＳ２は当該エントリのインストラクションフィールドに設定された処理内容（アクション）を実行する（ステップＳ５０２）。
【００５１】
一方、受信パケットに適合するルール（マッチ条件）を持つエントリが見つからなかった場合（ステップＳ５０１のＮｏ）、ＯＦＳ２は受信パケットをＯＦＣ３に転送する（ステップＳ５０３）。
【００５２】
図１５は、本発明の第１の実施形態のＯＦＣ３の動作を示す流れ図である。図１５を参照すると、ＯＦＣ３は、ＯＦＣ２からパケットが届くと、まず、当該パケットの送信先として、パケットヘッダの送信先を記憶する。次いで、ＯＦＣ３は、当該パケットの送信元のＯＦＳ２、パケットヘッダ内容及びグループ管理テーブル３５の情報をもとに、通知転送テーブル３４から、これらに一致する“ルール”を持つエントリを検索する（ステップＳ６０１）。
【００５３】
前記検索の結果、該当するエントリが見つかった場合（ステップＳ６０２のＹｅｓ）、ＯＦＣ３は、一致したエントリに定められた送信先を当該パケットの送信先に設定する（ステップＳ６０３；転送先変更）。
【００５４】
一方、該当するエントリが見つからなかった場合（ステップＳ６０２のＮｏ）、ＯＦＣ３は、受信パケットがブロードキャストパケットであるか否かを確認する（ステップＳ６０４）。受信パケットがブロードキャストパケットである場合、ＯＦＣ３は、グループ管理テーブル３５を参照して、該当パケットの発信元のサーバが属するグループの他のサーバを特定し、当該パケットの送信先に設定する（ステップＳ６０５）。
【００５５】
通知転送テーブル３４に受信パケットに適合するエントリが存在せず、かつ、受信パケットがブロードキャストパケットでもない場合（ステップＳ６０４のＮｏ）、受信パケットはユニキャストパケット等であることになる。この場合、ステップＳ６０１で記憶したパケットヘッダの送信先が当該パケットの送信先に設定される。
【００５６】
その後、ＯＦＣ３は、トポロジーＤＢ３２を参照して、パケットの送信元のＯＦＳ２から前記設定したパケットの送信先に至るパケット転送経路を計算する（ステップＳ６０６）。なお、転送先が複数である場合、ステップＳ６０６の経路計算において、これら複数の転送先への経路計算を行う。また、経路計算にはダイクストラ法を用いることができる。
【００５７】
次いで、ＯＦＣ３は、前記パケット転送経路上のＯＦＳ２に設定するフローエントリを算出し（ステップＳ６０７）、対応するＯＦＳ２に、設定する（ステップＳ６０８）。ここで算出するフローエントリのルール（マッチ条件）は、通知転送テーブル３４のエントリとｗｉｌｄｃａｒｄ以外で一致したパケットヘッダのフィールドと、Ｅｔｈｅｒ  ｓｒｃおよびＥｔｈｅｒ  ｄｓｔを使用し、それ以外はｗｉｌｄ  ｃａｒｄにして作成することができる。また、Ｉｎ  ｐｏｒｔのみ、ｗｉｌｄ  ｃａｒｄとし、他の部分は、元のパケットヘッダの内容をそのまま使用して、フローエントリのルール（マッチ条件）としてもよい。
【００５８】
次いで、ＯＦＣ３は、受信したパケットの送信をＯＦＳ２に指示する（ステップＳ６０９）。ここで、送信先が一つの場合、ＯＦＣ３は、送信先に接続されたＯＦＳ２に対して送信先へ向けてパケットを送信するよう指示する。一方、送信先が複数ある場合、ＯＦＣ３は、パケットを送ってきたＯＦＳ２に対し、前記設定した経路でパケットを送信するよう指示する。
【００５９】
続いて、本実施形態の計算機システムの全体の動作について図面を参照して説明する。以下の説明では、サーバ１ａ、１ｂ、１ｃがグループＩＤ＝１のグループに属し、サーバ１ｄがグループＩＤ＝２のグループに属すものとする。
【００６０】
図１６は、サーバ１ａから、サーバ１ｃ宛てのユニキャストの通信が発生した際のシーケンスを示す。サーバ１ａからサーバ１ｃ宛てのユニキャストパケット（メッセージＡ）を受信したＯＦＳ２ａは、ＯＦＣ３に、ユニキャストパケット（メッセージＡ）を転送する（図１６のＳ００１、Ｓ００２）。ＯＦＣ３は、通知転送テーブル３４に、受信パケットに適合するエントリがなく、ブロードキャストパケットでもないことから（図１５のステップＳ６０２のＮｏかつステップＳ６０４のＮｏ）、受信パケットの宛先までの経路を計算し、フローエントリを設定する（図１６のＳ００３、ＦＬＯＷ  ＭＯＤ（ＡＤＤ））。また、ＯＦＣ３は、ＯＦＳ２ａに対し、受信したユニキャストパケット（メッセージＡ）の送信を指示する（図１６のＳ００４）。ＯＦＳ２ａは、ＯＦＣ３からの指示に従い、サーバ１ｃに対し、受信したユニキャストパケット（メッセージＡ）を送信する（図１６のＳ００５）。以降、後続するパケット（メッセージＢ）は、図１６のＳ００３にて設定されたフローエントリにて、ＯＦＳ２ａからサーバ１ｃに直接転送される（図１６のステップＳ００６、Ｓ００７）。
【００６１】
図１７は、サーバ１ａから、制御対象通信通知装置４から通知されていないブロードキャストの通信が発生した際のシーケンスを示す。サーバ１ａからブロードキャストパケット（ブロードキャストＡ）を受信したＯＦＳ２ａは、ＯＦＣ３に、ブロードキャストパケット（ブロードキャストＡ）を転送する（図１７のＳ１０１、Ｓ１０２）。ＯＦＣ３は、通知転送テーブル３４に、受信パケットに適合するエントリがない、ブロードキャストパケットであることから（図１５のステップＳ６０４のＹｅｓ）、ブロードキャストパケットの宛先を同一グループのサーバに設定する（図１５のステップＳ６０５）。そしてＯＦＣ３は、各宛先までの経路を計算し、フローエントリを設定する（図１７のＳ１０３、ＦＬＯＷ  ＭＯＤ（ＡＤＤ））。また、ＯＦＣ３は、ＯＦＳ２ａに対し、受信したブロードキャストパケット（ブロードキャストＡ）の送信を指示する（図１７のＳ１０４）。ＯＦＳ２ａは、ＯＦＣ３からの指示に従い、サーバ１ｂ、１ｃに対し、受信したブロードキャストパケット（ブロードキャストＡ）を送信する（図１７のＳ１０５、Ｓ１０６）。以降、後続するパケット（ブロードキャストＢ）は、図１７のＳ１０３にて設定されたフローエントリにて、ＯＦＳ２ａからサーバ１ｂ、１ｃに直接転送される（図１７のステップＳ１０７〜Ｓ１０９）。
【００６２】
図１８は、サーバ１ａから、制御対象通信通知装置４から通知転送テーブル３４へのエントリ追加により、サーバ１ｂへの通知が指示されているブロードキャストの通信が発生した際のシーケンスを示す。サーバ１ａからブロードキャストパケット（ブロードキャストＡ）を受信したＯＦＳ２ａは、ＯＦＣ３に、ブロードキャストパケット（ブロードキャストＡ）を転送する（図１８のＳ２０１、Ｓ２０２）。ＯＦＣ３は、通知転送テーブル３４に、受信パケットに適合するエントリがあることから（図１５のステップＳ６０２のＹｅｓ）、通知転送テーブル３４の該当エントリに指定されたサーバ１ｂまでの経路を計算し、フローエントリを設定する（図１８のＳ２０３、ＦＬＯＷ  ＭＯＤ（ＡＤＤ））。また、ＯＦＣ３は、ＯＦＳ２ａに対し、受信したブロードキャストパケット（ブロードキャストＡ）の送信を指示する（図１８のＳ２０４）。ＯＦＳ２ａは、ＯＦＣ３からの指示に従い、サーバ１ｂに対し、受信したブロードキャストパケット（ブロードキャストＡ）を送信する（図１８のＳ２０５）。以降、後続するパケット（ブロードキャストＢ）は、図１８のＳ２０３にて設定されたフローエントリにて、ＯＦＳ２ａからサーバ１ｂに直接転送される（図１８のステップＳ２０６、Ｓ２０７）。このように、ブロードキャストパケットであっても、通知転送テーブル３４へのエントリ追加により送信先が指示されている場合、同一グループであっても、当該送信先に設定されていないサーバ（ここでは、サーバ１ｃ）へのパケットの転送は抑止される。
【００６３】
図１９は、サーバ１ａから、制御対象通信通知装置４から通知転送テーブル３４へのエントリ追加により、サーバ１ｄへの通知が指示されているブロードキャストの通信が発生した際のシーケンスを示す。サーバ１ａからブロードキャストパケット（ブロードキャストＡ）を受信したＯＦＳ２ａは、ＯＦＣ３に、ブロードキャストパケット（ブロードキャストＡ）を転送する（図１９のＳ３０１、Ｓ３０２）。ＯＦＣ３は、通知転送テーブル３４に、受信パケットに適合するエントリがあることから（図１５のステップＳ６０２のＹｅｓ）、通知転送テーブル３４の該当エントリに指定されたサーバ１ｄまでの経路を計算し、フローエントリを設定する（図１８のＳ３０３、ＦＬＯＷ  ＭＯＤ（ＡＤＤ））。また、ＯＦＣ３は、転送先が１つであることから、ＯＦＳ２ｂに対し、受信したブロードキャストパケット（ブロードキャストＡ）の送信を指示する（図１９のＳ３０４）。ＯＦＳ２ｂは、ＯＦＣ３からの指示に従い、サーバ１ｄに対し、受信したブロードキャストパケット（ブロードキャストＡ）を送信する（図１９のＳ３０５）。以降、後続するパケット（ブロードキャストＢ）は、図１９のＳ３０３にて設定されたフローエントリにて、ＯＦＳ２ａ、ＯＦＳ２ｂを経由してサーバ１ｄに転送される（図１９のステップＳ３０６〜Ｓ３０８）。このように、ブロードキャストパケットであっても、通知転送テーブル３４へのエントリ追加により別のグループの送信先が指示されている場合、送信元のサーバと同一グループであっても当該送信先に設定されていないサーバ（ここでは、サーバ１ｂ、１ｃ）へのパケットの転送は抑止される。
【００６４】
以上のように、本実施形態によれば、サーバ１間でブロードキャストされる生存通知や死活監視パケットを特定するエントリを通知転送テーブル３４に登録することで、その転送先を細かく指定することができる。このため、ネットワークや関連の無い装置が受ける影響を軽減することが可能となる。
【００６５】
［第２の実施形態］
続いて、サーバ間の制御対象通信の変更や削除に対応できるようＯＦＣに機能を追加した第２の実施形態について説明する。
【００６６】
図２０は、本発明の第２の実施形態の計算機システムの構成を示す図である。図２を参照すると、２つ以上のサーバ１ａ〜１ｎと、ＯＦＳ２と、ＯＦＣ３Ｂと、制御対象通信通知装置４と、サーバ間通知構成ＤＢ５と、を接続した構成が示されている。サーバ１ａ〜１ｎ、ＯＦＳ２及び制御対象通信通知装置４の構成及び動作は、第１の実施形態と同様である。以下、第１の実施形態との相違点を中心に説明する。
【００６７】
図２１は、第２の実施形態のＯＦＣ３Ｂの構成を示す図である。図６に示した第１の実施形態のＯＦＣ３との相違点は、制御対象通信通知装置４から通知を受け取る通知構成変更受信部３６が追加されている点である。その他、図６のＯＦＣと同一の符号を付した構成要素は、第１の実施形態のＯＦＣ３と同様であるため、説明を省略する。
【００６８】
通知構成変更受信部３６は、制御対象通信通知装置４からの通知に基づいて、通知転送テーブル３４の変更と、ＯＦＳ２のフローテーブル２１に関連するフローエントリが設定されている場合に備え、フローエントリ設定部３３に対して、関係するフローエントリが設定されたＯＦＳに対し、該当するフローエントリの削除を依頼する。
【００６９】
続いて、本実施形態の動作について図面を参照して詳細に説明する。以下の説明では、サーバ１、ＯＦＳ２及びＯＦＣ３Ｂが図２２に示すとおりに接続されているものとして説明する。
【００７０】
続いて、制御対象通信通知装置４から通知を受け取ったＯＦＣ３Ｂの動作について説明する。図２３は、本発明の第２の実施形態のＯＦＣ３Ｂの動作を示す流れ図である。図２３を参照すると、まず、ＯＦＣ３Ｂは、通知転送テーブル３４に、制御対象通信通知装置４から通知された異動があったエントリのルール（マッチ条件）と一致するものがあるかを検索する（ステップＳ７０１）。
【００７１】
前記検索の結果、通知転送テーブル３４に、制御対象通信通知装置４から通知された異動があったエントリのルール（マッチ条件）と一致するエントリが存在した場合（ステップＳ７０２のＹｅｓ）、ＯＦＣ３Ｂは、通知転送テーブル３４から該当エントリを削除する（ステップＳ７０３）。
【００７２】
次に、ＯＦＣ３Ｂは、制御対象通信通知装置４から通知された異動内容に基づいて、ＯＦＳ２に設定済みのフローエントリに対する変更内容を決定する（ステップＳ７０４）。例えば、制御対象通信通知装置４からエントリの削除を指示された場合、フローエントリ設定部３３に指示する削除対象のフローエントリを特定する。削除対象のフローエントリは、通知転送テーブル３４の該当エントリのルール（マッチ条件）から、ｗｉｌｄｃａｒｄ以外の部分をフローエントリのルールにコピーし、残りをｗｉｌｄｃａｒｄとしたフローエントリを検索することで特定できる。また例えば、制御対象通信通知装置４からエントリの転送先の変更を指示された場合、フローエントリ設定部３３に指示する変更対象のフローエントリと、そのインストラクションフィールドの変更内容を決定する。
【００７３】
次に、ＯＦＣ３Ｂは、制御対象通信通知装置４から通知された異動内容が、通知転送テーブル３４への新規エントリの登録通知であるか否かを確認する（ステップＳ７０５）。
【００７４】
前記確認の結果、制御対象通信通知装置４から通知された異動内容が、通知転送テーブル３４への新規エントリの登録通知であった場合、ＯＦＣ３Ｂは、通知転送テーブル３４への新規エントリを登録する（ステップＳ７０６）。
【００７５】
最後に、ＯＦＣ３Ｂは、フローエントリ設定部３３に対し、フローエントリを変更、削除を依頼する（ステップＳ７０７）。
【００７６】
なお、ＯＦＣ３Ｂが、すでに設定済みの経路と対応するフローエントリを記録するテーブルを持つ場合、ステップＳ７０４のフローエントリの特定処理は、このテーブルを参照して行うことができる。
【００７７】
続いて、本実施形態の計算機システムの全体の動作について図面を参照して説明する。以下の説明では、サーバ１ａ、１ｂ、１ｃがグループＩＤ＝１のグループに属し、サーバ１ｄがグループＩＤ＝２のグループに属すものとする。
【００７８】
図２４は、サーバ１ａから、制御対象通信通知装置４から通知されていないブロードキャストの通信が発生し、フローエントリを設定した後に、制御対象通信通知装置４から当該ブロードキャストパケットの転送先をサーバ１ｃに指定したエントリの登録指示を受け取った場合のシーケンスを示す。この場合、ＯＦＣ３Ｂは、通知転送テーブル３４に該当エントリが無いことから、通知転送テーブル３４の操作は行わない（図２３のステップＳ７０２のＮｏ）。ＯＦＣ３Ｂは、ＯＦＳ２ａに設定済みのフローエントリで、登録指示を受けた通知転送テーブルのエントリと重複するフローエントリが存在することから、これらのフローエントリの削除を依頼する（図２４のＳ８０５；ＦＬＯＷ  ＭＯＤ（ＤＥＬ））。これにより、ステップＳ８０１〜Ｓ８０３に示すサーバ１ａからのブロードキャストパケットをサーバ１ｂ、１ｃに転送するフローエントリが削除される。
【００７９】
その後は、図１８に示した第１の実施形態の動作と同様に、ＯＦＳ２ａからブロードキャストパケット（ブロードキャストＢ）を受信したＯＦＣ３Ｂは、サーバ１ｃまでの経路を計算し、ＯＦＳ２ａにフローエントリを設定する（図２４のＳ８１０、ＦＬＯＷ  ＭＯＤ（ＡＤＤ））。また、ＯＦＣ３Ｂは、ＯＦＳ２ａに対し、受信したブロードキャストパケット（ブロードキャストＢ）の送信を指示する（図２４のＳ８１１）。ＯＦＳ２ａは、ＯＦＣ３からの指示に従い、サーバ１ｃに対し、受信したブロードキャストパケット（ブロードキャストＢ）を送信する（図２４のＳ８１２）。以降、後続するパケット（ブロードキャストＣ）は、図２４のＳ８１０にて設定されたフローエントリにて、ＯＦＳ２ａからサーバ１ｃに転送される（図１７のステップＳ８１３〜Ｓ８１４）。
【００８０】
図２５は、図２４の後、制御対象通信通知装置４から当該ブロードキャストパケットの転送先をサーバ１ｃから１ｂに変更するエントリの登録指示を受け取った場合のシーケンスを示す。この場合、ＯＦＣ３Ｂは、通知転送テーブル３４に該当エントリがあることから、通知転送テーブル３４から該当エントリを削除する（図２３のステップＳ７０３）。ＯＦＣ３Ｂは、ＯＦＳ２ａに設定済みのフローエントリに、転送先の変更指示を受けた通知転送テーブルのエントリと重複するフローエントリが存在することから、これらのフローエントリのインストラクションフィールドの変更を依頼する（図２５のＳ９０４；ＦＬＯＷ  ＭＯＤ（ＡＤＤ  ｏｖｅｒｌａｐ））。これにより、サーバ１ａからのブロードキャストパケットをサーバ１ｂに転送するフローエントリが設定される。以降、後続するパケット（ブロードキャストＢ）は、図２５のＳ９０４にて変更されたフローエントリにて、ＯＦＳ２ａからサーバ１ｂに転送される（図２５のステップＳ９０６〜Ｓ９０７）。
【００８１】
図２６は、図２５の後、制御対象通信通知装置４から当該ブロードキャストパケットの転送先を指示するエントリの削除指示を受け取った場合のシーケンスを示す。この場合、ＯＦＣ３Ｂは、通知転送テーブル３４に該当エントリがあることから、通知転送テーブル３４から該当エントリを削除する（図２３のステップＳ７０３）。ＯＦＣ３Ｂは、ＯＦＳ２ａに設定済みのフローエントリに、転送先の変更指示を受けた通知転送テーブルのエントリと重複するフローエントリが存在することから、これらのフローエントリの削除を依頼する（図２６のＳ１００４；ＦＬＯＷ  ＭＯＤ（ＤＥＬ））。これにより、ステップＳ１００１〜Ｓ１００３に示すサーバ１ａからのブロードキャストパケットをサーバ１ｂに転送するフローエントリが削除される。
【００８２】
その後は、図１７に示した第１の実施形態の動作と同様に、ＯＦＳ２ａからブロードキャストパケット（ブロードキャストＢ）を受信したＯＦＣ３Ｂは、サーバ１ｂ、１ｃまでの経路を計算し、ＯＦＳ２ａにフローエントリを設定する（図２６のＳ１００８、ＦＬＯＷ  ＭＯＤ（ＡＤＤ））。また、ＯＦＣ３Ｂは、ＯＦＳ２ａに対し、受信したブロードキャストパケット（ブロードキャストＢ）の送信を指示する（図２６のＳ１００９）。ＯＦＳ２ａは、ＯＦＣ３からの指示に従い、サーバ１ｂ、１ｃに対し、受信したブロードキャストパケット（ブロードキャストＢ）を送信する（図２６のＳ１０１０、Ｓ１０１１）。以降、後続するパケット（ブロードキャストＣ）は、図２６のＳ１００８にて設定されたフローエントリにて、ＯＦＳ２ａからサーバ１ｂ、１ｃに転送される（図２６のステップＳ１０１２〜Ｓ１０１４）。
【００８３】
以上のように、第２の実施形態によれば、制御対象通信通知装置４からの通知転送テーブル３４の操作内容に追従してフローエントリの操作が行われる。このため、変更先等の変更頻度が高い通信についても通知転送テーブル３４の登録対象とすることができる。
【００８４】
最後に、制御対象パケットの具体例と、その場合のパターンＤＢ４２、サーバ間通知構成ＤＢ５及び通知転送テーブル３４の各エントリの例を示す。
【００８５】
（１）ＩＰＭＩのＢＭＣウォッチドックタイマでのｇｒａｔｕｉｔｏｕｓ  ＡＲＰ
ｇｒａｔｕｉｔｏｕｓ  ＡＲＰをブロードキャストで送信することにより、生存を通知する方式において、グループ内のすべてのｇｒａｔｕｉｔｏｕｓ  ＡＲＰを他のグループの特定のサーバに転送する例を示す。
【００８６】
この場合、パターンＤＢ４２のエントリは下記のようになる。なお、以下の“ＶＡＬ”は、属性値を入れることを示す値であり、“ＷＩＬＤＣＡＲＤ”はｗｉｌｄｃａｒｄであることを示す値である。
パターンＤＢ４２のエントリ（
パターンＩＤ：  ｉ、
グループＩＤ：  ＶＡＬ、
ＤＰＩＤ：  ＷＩＬＤＣＡＲＤ、
Ｉｎ  ｐｏｒｔ：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＳＡ：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＤＡ：  ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ、
Ｅｔｈｅｒ  Ｔｙｐｅ：  ０ｘ０８０６、
ＩＰ  ｓｒｃ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｄｓｔ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｐｒｏｔｏ／ＡＲＰ  ｏｐｃｏｄｅ：  ０ｘ０００１、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｓｒｃ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＷＩＬＤＣＡＲＤ、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｄｓｔ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＷＩＬＤＣＡＲＤ、
転送先１｛グループＩＤ：  ＶＡＬ，  サーバ情報［ＭＡＣアドレス］：  ＶＡＬ｝
）
【００８７】
次に、グループＩＤ＝Ｇ１のすべてのサーバからグループＩＤ＝Ｇ２のＭＡＣアドレス  Ｍｄへ転送する場合の、サーバ間通知構成ＤＢ５のエントリを示す。
通知構成ＤＢ  ５のエントリ（
パターンＩＤ：  ｉ、
パターン属性１：  Ｇ１、
転送先情報１｛グループＩＤ：  Ｇ２、サーバ情報［ＭＡＣアドレス］：Ｍｄ｝
）
【００８８】
制御対象通信通知装置４は、上記パターンＤＢ４２のエントリと、サーバ間通知構成ＤＢ５のエントリとから、以下のような通知転送テーブル３４のエントリを作成する。なお、以下、出力先のＯＦＳのＤＰＩＤをｄｐ１、出力ポート情報（Ｏｕｔ  ｐｏｒｔ）をｍとする。
【００８９】
通知転送テーブル３４のエントリ（
ルール｛
グループＩＤ：  Ｇ１、
サーバ情報［ＭＡＣアドレス］：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＳＡ：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＤＡ：  ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ、
Ｅｔｈｅｒ  Ｔｙｐｅ：  ０ｘ０８０６、
ＩＰ  ｓｒｃ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｄｓｔ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｐｒｏｔｏ／ＡＲＰ  ｏｐｃｏｄｅ：  ０ｘ０００１、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｓｒｃ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＷＩＬＤＣＡＲＤ、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｄｓｔ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＷＩＬＤＣＡＲＤ
｝、
転送先１｛ＤＰＩＤ：  ｄｐ１，  Ｏｕｔ  ｐｏｒｔ：  ｍ｝
）
【００９０】
（２）Ｌｉｎｕｘ  ＨＡ（ｈｅａｒｔ  ｂｅａｔ）
ＵＤＰの特定ポート宛てにブロードキャストで定期的に生存通知を送る状況で、特定サーバにパケットを集約する場合の例を示す。
【００９１】
この場合、パターンＤＢ４２のエントリは下記のようになる。なお、以下の“ＶＡＬ”は、属性値を入れることを示す値であり、“ＷＩＬＤＣＡＲＤ”はｗｉｌｄｃａｒｄであることを示す値である。
パターンＤＢ４２のエントリ  （
パターンＩＤ：  ｊ、
グループＩＤ：  ＶＡＬ、
ＤＰＩＤ：  ＷＩＬＤＣＡＲＤ、
Ｉｎ  ｐｏｒｔ：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＳＡ：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＤＡ：  ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ、
Ｅｔｈｅｒ  Ｔｙｐｅ：  ０ｘ０８００、
ＩＰ  ｓｒｃ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｄｓｔ：  ＶＡＬ、
ＩＰ  ｐｒｏｔｏ／ＡＲＰ  ｏｐｃｏｄｅ：  １７、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｓｒｃ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＷＩＬＤＣＡＲＤ、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｄｓｔ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＶＡＬ、
転送先１｛グループＩＤ：  ＶＡＬ，  サーバ情報［ＭＡＣアドレス］：  ＶＡＬ｝
）
【００９２】
次に、グループＩＤ＝Ｇ１のすべてのサーバのＵＤＰ  ５５０００ポートの通信を同じグループのＭＡＣアドレス  Ｍａへ転送する場合の、サーバ間通知構成ＤＢ５のエントリを示す。
サーバ間通知構成ＤＢ５のエントリ（
パターンＩＤ：ｊ、
パターン属性１：  Ｇ１、
パターン属性２：  ＷＩＬＤＣＡＲＤ、
パターン属性３：  ５５０００、
転送先情報１｛グループＩＤ：  Ｇ１、サーバ情報［ＭＡＣアドレス］：Ｍａ｝
）
【００９３】
制御対象通信通知装置４は、上記パターンＤＢ４２のエントリと、サーバ間通知構成ＤＢ５のエントリとから、以下のような通知転送テーブル３４のエントリを作成する。なお、以下、出力先のＯＦＳのＤＰＩＤをｄｐ２、出力ポート情報（Ｏｕｔ  ｐｏｒｔ）をｋとする。
通知転送テーブル３４のエントリ  （
ルール｛
グループＩＤ：  Ｇ１、
サーバ情報［ＭＡＣアドレス］：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＳＡ：  ＷＩＬＤＣＡＲＤ、
Ｅｔｈｅｒ  ＤＡ：  ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ、
Ｅｔｈｅｒ  Ｔｙｐｅ：  ０ｘ０８００、
ＩＰ  ｓｒｃ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｄｓｔ：  ＷＩＬＤＣＡＲＤ、
ＩＰ  ｐｒｏｔｏ／ＡＲＰ  ｏｐｃｏｄｅ：  ０ｘ０８００、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｓｒｃ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ＷＩＬＤＣＡＲＤ、
ＴＣＰ／ＵＤＰ／ＳＣＴＰ  ｄｓｔ  ｐｏｒｔ  ＩＣＭＰ  Ｃｏｄｅ：  ５５０００
｝、
転送先１｛ＤＰＩＤ：  ｄｐ２，  Ｏｕｔ  ｐｏｒｔ：  ｋ｝
）
【００９４】
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成や要素の構成は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
【００９５】
例えば、上記した各実施形態では、ＯＦＳ２からのパケットの転送を契機にＯＦＣ３、３Ｂが、フローエントリを設定するものとして説明したが、ＯＦＣ３、３Ｂが、ＯＦＳ２のフローテーブルに事前にフローエントリを設定してもよい。このようにすることで、ＯＦＣ３、３Ｂの処理負荷の軽減し、また、最初のパケットの転送遅延を短縮することが可能である。
【００９６】
また、上記した各実施形態では、サーバ間で授受される生存通知や死活監視パケットを、制御対象の通信としたが、その他の各種の装置で授受されるパケットをその制御対象とすることも可能である。例えば、Ｍ２Ｍ（Ｍａｃｈｉｎｅ  ｔｏ  Ｍａｃｈｉｎｅ）と呼ばれる装置間でやり取りされるブロードキャスト／マルチキャストされるパケットを制御対象とすることも可能である。
【００９７】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点による制御装置参照）
［第２の形態］
第１の形態の制御装置において、
前記パターンは、前記所定の装置間で周期的にブロードキャスト又はマルチキャストされる状態確認のためのパケットを特定するためのパターンである制御装置。
［第３の形態］
第１又は第２の形態の制御装置において、
前記パターンと、転送先とを対応付けたテーブルを保持し、
前記スイッチ制御部は、前記テーブルを参照して、前記パターンに適合するパケットの前記転送先への転送を指示する制御情報を作成し、前記スイッチに設定する制御装置。
［第４の形態］
第３の形態の制御装置において、
前記テーブルの前記転送先として、転送先の装置が属するグループを指定可能であり、
前記スイッチ制御部は、前記グループに属する装置を格納した第２のテーブルを参照して、前記マッチ条件に適合するパケットを転送すべき装置を決定する制御装置。
［第５の形態］
第３又は第４の形態の制御装置において、
前記テーブルを更新する制御対象通信通知装置と接続されている制御装置。
［第６の形態］
第５の形態の制御装置において、
前記制御対象通信通知装置による前記テーブルのエントリの削除又は転送先の変更に応じて、前記スイッチに設定した制御情報を更新する制御装置。
［第７の形態］
（上記第２の視点による計算機システム参照）
［第８の形態］
（上記第３の視点による通信制御方法参照）
［第９の形態］
（上記第４の視点によるプログラム参照）
なお、上記第７〜第９の形態は、第１の形態と同様に、第２〜第６の形態に展開することが可能である。
【００９８】
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００９９】
１、１ａ〜１ｎ  サーバ
２、２ａ、２ｂ  オープンフロースイッチ（ＯＦＳ）
３、３Ｂ  オープンフローコントローラ（ＯＦＣ）
４  制御対象通信通知装置
５  サーバ間通知構成データベース（サーバ間通知構成ＤＢ）
２０  パケット処理部
２１  フローテーブル
３１  経路計算部
３２  トポロジーデータベース（トポロジーＤＢ）
３３  フローエントリ設定部
３４  通知転送テーブル
３５  グループ管理テーブル
３６  通知構成変更受信部
４１  通信ルール生成部
４２  パターンデータベース（パターンＤＢ）
３００  制御装置
３０１Ａ  パターン
３０２  通信識別部
３０３  スイッチ制御部
【図１】
2014175335.tif 000003
【図２】
2014175335.tif 000004
【図３】
2014175335.tif 000005
【図４】
2014175335.tif 000006
【図５】
2014175335.tif 000007
【図６】
2014175335.tif 000008
【図７】
2014175335.tif 000009
【図８】
2014175335.tif 000010
【図９】
2014175335.tif 000011
【図１０】
2014175335.tif 000012
【図１１】
2014175335.tif 000013
【図１２】
2014175335.tif 000014
【図１３】
2014175335.tif 000015
【図１４】
2014175335.tif 000016
【図１５】
2014175335.tif 000017
【図１６】
2014175335.tif 000018
【図１７】
2014175335.tif 000019
【図１８】
2014175335.tif 000020
【図１９】
2014175335.tif 000021
【図２０】
2014175335.tif 000022
【図２１】
2014175335.tif 000023
【図２２】
2014175335.tif 000024
【図２３】
2014175335.tif 000025
【図２４】
2014175335.tif 000026
【図２５】
2014175335.tif 000027
【図２６】
2014175335.tif 000028
【国際調査報告】
2014175335.tif 000029
2014175335.tif 000030
2014175335.tif 000031
2014175335.tif 000032