(57)【要約】【課題】  本発明が解決しようとする課題は、余剰帯域の観測のために余計な通信を発生させず、物理帯域の利用率を向上させつつ、データセンタ内に構築したシステムのデータ転送時間を最小化することである。【解決手段】  テナントの情報処理システム構成するサーバの通信フローと、各通信フローが経由する物理的な通信経路を管理する。さらに、物理的な通信経路の各インタフェースの帯域利用率と、各通信フローの帯域利用率とを監視し、各利用率に応じて通信フローに適用する制御方法を変更することで、データ転送時間を最小化する。【選択図】  図１
2012182605.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置と、ネットワークを介して該複数の通信装置を管理する管理サーバとから構成されるネットワーク制御システムにおいて、
前記複数の通信装置は、
前記ネットワークに接続されるインタフェースと、
該インタフェースを介して送受信されるデータのトラフィック情報を取得するトラフィック情報取得部と、を各々有し、
前記管理サーバは、
前記ネットワークに接続されるインタフェースと、
リンクと該リンクを経由する通信フローとの対応関係を保持する格納部と、
前記通信装置から該インタフェースを介して受信したトラフィック情報に基づいて前記リンクの帯域利用率又は廃棄率を算出する算出部と、
該帯域利用率又は該廃棄率が所定の条件を満たすリンクを特定するリンク特定部と、
前記特定されたリンクを経由する第一の通信フローを前記対応関係に基づいて特定する通信フロー特定部と、を有することを特徴とするネットワーク制御システム。
【請求項２】
複数の通信装置と、ネットワークを介して該複数の通信装置を管理する管理サーバとから構成されるネットワーク制御システムにおいて、
前記複数の通信装置は、
前記ネットワークに接続されるインタフェースと、
該インタフェースを介して送受信されるデータのトラフィック情報を取得する制御部と、を各々有し、
前記管理サーバは、
前記ネットワークに接続されるインタフェースと、
リンクと該リンクを経由する通信フローとの対応関係を保持する格納部と、
前記通信装置から該インタフェースを介して受信したトラフィック情報に基づいて前記リンクの帯域利用率又は廃棄率を算出し、該帯域利用率又は該廃棄率が所定の条件を満たすリンクを特定し、該特定されたリンクを経由する通信フローを前記対応関係に基づいて特定する制御部と、を有することを特徴とするネットワーク制御システム。
【請求項３】
請求項１に記載のネットワーク制御システムであって、
前記複数の通信装置のうちの少なくとも一つは、通信フロー毎にネットワーク制御を行うネットワーク制御部を有し、
前記管理サーバは、前記第一の通信フローが経由し前記ネットワーク制御部を有する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行又は実行の解除を指示するネットワーク制御指示部と、を有することを特徴とするネットワーク制御システム。
【請求項４】
請求項３に記載のネットワーク制御システムであって、
前記所定の条件を満たすリンクとは、前記帯域利用率が所定の閾値以上であるリンクであり、
前記ネットワーク制御指示部は、前記第一の通信フローが経由し前記ネットワーク制御部を有する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行を指示することを特徴とするネットワーク制御システム。
【請求項５】
請求項３に記載のネットワーク制御システムであって、
前記所定の条件を満たすリンクとは、前記帯域利用率が所定の閾値未満であるリンクであり、
前記ネットワーク制御指示部は、前記第一の通信フローが経由し前記ネットワーク制御部を有する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行の解除を指示することを特徴とするネットワーク制御システム。
【請求項６】
請求項３乃至５に記載のネットワーク制御システムであって、
前記ネットワーク制御はシェーピング処理であることを特徴とするネットワーク制御システム。
【請求項７】
請求項１に記載のネットワーク制御システムであって、
前記通信フロー特定部は、前記第一の通信フローから各々の通信フローに割り当てられた帯域の利用率が所定の閾値を超える第二の通信フローを特定することを特徴とするネットワーク制御システム。
【請求項８】
請求項７に記載のネットワーク制御システムであって、
前記複数の通信装置のうちの少なくとも一つは、通信フロー毎にネットワーク制御を行うネットワーク制御部を有し、
前記管理サーバは、前記第二の通信フローが経由し前記ネットワーク制御部を有する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第二の通信フローに対するネットワーク制御の実行を指示するネットワーク制御指示部と、を有することを特徴とするネットワーク制御システム。  
【請求項９】
請求項８に記載のネットワーク制御システムであって、
前記ネットワーク制御はシェーピング処理であることを特徴とするネットワーク制御システム。
【請求項１０】
請求項７に記載のネットワーク制御システムであって、
ネットワークを介して前記複数の通信装置及び前記管理サーバと接続される少なくとも２以上のサーバを更に有し、
通信フローは前記サーバ間で発生し、
前記サーバは、該サーバが送受信するトラフィックの情報を通信フローごとに取得するトラフィック情報取得部を有し、
前記管理サーバは、前記サーバから受信したトラフィック情報に基づいて前記通信フローの利用率を算出する通信フロー利用率算出部を有することを特徴とするネットワーク制御システム。
【請求項１１】
複数の通信装置とネットワークを介して接続される管理サーバにおいて、
前記ネットワークに接続されるインタフェースと、
リンクと該リンクを経由する通信フローとの対応関係を保持する格納部と、
前記通信装置から該インタフェースを介して受信するトラフィック情報に基づいて前記リンクの帯域利用率又は廃棄率を算出する算出部と、
該帯域利用率又は該廃棄率が所定の条件を満たすリンクを特定するリンク特定部と、
前記特定されたリンクを経由する第一の通信フローを前記対応関係に基づいて特定する通信フロー特定部と、を有することを特徴とする管理サーバ。
【請求項１２】
複数の通信装置とネットワークを介して接続される管理サーバにおいて、
前記ネットワークに接続されるインタフェースと、
リンクと該リンクを経由する通信フローとの対応関係を保持する格納部と、
前記通信装置から該インタフェースを介して受信したトラフィック情報に基づいて前記リンクの帯域利用率又は廃棄率を算出し、該帯域利用率又は廃棄率が所定の条件を満たすリンクを特定し、該特定されたリンクを経由する通信フローを前記対応関係に基づいて特定する制御部と、を有することを特徴とする管理サーバ。
【請求項１３】
請求項１１に記載の管理サーバであって、
前記管理サーバは、前記第一の通信フローが経由する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行又は実行の解除を指示するネットワーク制御指示部と、を有することを特徴とする管理サーバ。
【請求項１４】
請求項１３に記載の管理サーバであって、
前記所定の条件を満たすリンクとは、前記帯域利用率が所定の閾値以上であるリンクであり、
前記ネットワーク制御指示部は、前記第一の通信フローが経由する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行を指示することを特徴とする管理サーバ。
【請求項１５】
請求項１３に記載の管理サーバであって、
前記所定の条件を満たすリンクとは、前記帯域利用率が所定の閾値未満であるリンクであり、
前記ネットワーク制御指示部は、前記第一の通信フローが経由する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行の解除を指示することを特徴とする管理サーバ。
【請求項１６】
請求項１３乃至１５に記載のネットワーク制御システムであって、
前記ネットワーク制御はシェーピング処理であることを特徴とする管理サーバ。
【請求項１７】
請求項１１に記載の管理サーバであって、
前記通信フロー特定部は、前記第一の通信フローから各々の通信フローに割り当てられた帯域の利用率が所定の閾値を超える第二の通信フローを特定することを特徴とする管理サーバ。
【請求項１８】
請求項１７に記載の管理サーバであって、
前記第二の通信フローが経由する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第二の通信フローに対するネットワーク制御の実行を指示するネットワーク制御指示部を有することを特徴とする管理サーバ。  
【請求項１９】
請求項１８に記載の管理サーバであって、
前記ネットワーク制御はシェーピング処理であることを特徴とする管理サーバ。
【請求項２０】
請求項１７に記載の管理サーバであって、
ネットワークを介して２以上のサーバと接続され、
通信フローは前記サーバ間で発生し、
前記サーバから受信するトラフィック情報に基づいて前記通信フローの利用率を算出する通信フロー利用率算出部を有することを特徴とするネットワーク制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）ネットワークにおけるネットワークリソースの性能保証及び制御方法に関する。
【背景技術】
【０００２】
サーバ、ストレージ、ネットワーク等のＩＴリソースをデータセンタに集約し、テナントの要求に応じたリソースを仮想的に割り当てるクラウドサービスが普及しつつある。現状のクラウドサービスでは、サーバのＣＰＵコア数、ストレージの容量は指定可能であるが、ネットワークの帯域の指定はできない。
【０００３】
現状のデータセンタのネットワーク設計では、ネットワークが混雑しないように物理帯域に対して余剰帯域を多くとり、物理帯域の利用率が低くなるように設計するため、設備コストが高くなっている。設備コストを削減すると、物理帯域の利用率が高くなり、ネットワークが混雑しやすくなる。その結果、遅延やパケットロスが発生し、データセンタ内に構築したシステムのデータ転送時間が長くなる。
【０００４】
ＩＰネットワークにおいて、ネットワークの帯域保証を行うためのネットワーク制御技術として、ＤｉｆｆｆＳｅｒｖやシェーパ（シェーピング）が知られている。このようなネットワーク制御技術は広域ネットワークへの出口や、通信事業者が提供する広域ネットワークで使用されており、広域ネットワークを利用するテナントの拠点ネットワークや、データセンタ内のネットワークではネットワーク制御はほとんど行われていない。
【０００５】
ＤｉｆｆＳｅｒｖＡＦ（Ａｓｓｕｒｅｄ  Ｆｏｒｗａｒｄｉｎｇ）は、最低帯域を保証するネットワークへのエッジノードで帯域の監視及びＩＰパケットのマーキングを行い、コアノードではＩＰパケットにマーキングされた優先度に従い、優先制御を行う。エッジノードで監視帯域を超えるＩＰパケットを検出した場合、エッジノードではＩＰパケットの廃棄は行わず、優先度を低くまたは非優先にマーキングを行う。コアノードでは、ＩＰパケットにマーキングされた優先度に従い優先制御を行うため、ネットワークが混雑している場合は、非優先または優先度の低いＩＰパケットから廃棄され、優先度の高いＩＰパケットを優先的に転送することができる（非特許文献１）。
【０００６】
トラフィックシェーピングでは、スイッチやルータ等の通信装置にバッファを持たせ、入力帯域が設定した出力帯域を超える場合は、バッファで送信タイミングを遅らせ、出力帯域を一定に制限する。シェーパに設定した出力帯域に対して入力帯域が大きく、通信装置のバッファ量を超える場合は、シェーパでパケットが廃棄される。
【０００７】
特開２００４−３４３２２７公報（特許文献１）には、ベストエフォート型のネットワークにおいて、使用可能な帯域をｐｉｎｇの応答パケットにより測定し、測定した帯域に合わせてシェーパの出力帯域を自動的に制御する技術が記載されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−３４３２２７公報
【非特許文献】
【０００９】
【非特許文献１】S.Blake, D. L. Black, M.A.Carlson, E. Davies, Z. Wang, and W.Weiss, “An architecture for differentiated services,”  RFC2475, IETF, Dec. 1998.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ＤｉｆｆＳｅｒｖＡＦサービスでは、ネットワークが空いているときには、利用されていない余剰帯域を利用できるため、ネットワークにおけるデータ転送時間を短くすることができる。一方、ネットワーク混雑時は、エッジノードで優先度を低くマーキングしたＩＰパケットまたは非優先にマーキングしたＩＰパケットから廃棄される。ＴＣＰ（Ｔｒａｎｓｐｏｒｔ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）は、送信したＩＰパケットの損失を検出し、再送を行うため、データ転送時間が長くなる。ＷＥＢシステムのように、１回の通信量が少ない場合でも、短時間に複数のセッションが発生することにより、同様の問題が発生し、平均的なデータ転送時間が長くなる。
【００１１】
ＤｉｆｆＳｅｒｖＡＦサービスにおいて、帯域監視を行うよりも前にシェーピングを行うことで、エッジノードで優先度が低くマーキングされる、または非優先にマーキングされることを防止し、コアノードでのＩＰパケットの廃棄を削減することができる。しかし、シェーパを併用した場合、ネットワークがすいており余剰帯域を利用可能な状況でも、シェーパに設定した出力帯域までしか通信に利用できないため、データ転送時間を短くすることができない。
【００１２】
特開２００４−３４３２２７公報に記載の技術では、利用可能な帯域をＰｉｎｇによる応答パケットで計測した場合、使用可能な帯域を観測するためのＰｉｎｇによる応答パケットによって帯域が消費されるため、データセンタに構築した情報処理システムのネットワークにおけるデータ転送に利用可能な帯域が減少する。
【課題を解決するための手段】
【００１３】
本発明におけるネットワーク制御システムは、複数の通信装置と、ネットワークを介して該複数の通信装置を管理する管理サーバとから構成され、前記複数の通信装置は、前記ネットワークに接続されるインタフェースと、該インタフェースを介して送受信されるデータのトラフィック情報を取得するトラフィック情報取得部と、を各々有し、前記管理サーバは、前記ネットワークに接続されるインタフェースと、リンクと該リンクを経由する通信フローとの対応関係を保持する格納部と、前記通信装置から該インタフェースを介して受信したトラフィック情報に基づいて前記リンクの帯域利用率を算出する帯域利用率算出部と、該帯域利用率が所定の条件を満たすリンクを特定するリンク特定部と、前記特定されたリンクを経由する第一の通信フローを前記対応関係に基づいて特定する通信フロー特定部と、を有する。
【００１４】
また、上記本発明において、前記複数の通信装置のうちの少なくとも一つは、通信フロー毎にネットワーク制御（シェーピング処理、優先制御、マーキング処理等）を行うネットワーク制御部を更に有し、前記管理サーバは、前記第一の通信フローが経由し前記ネットワーク制御部を有する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第一の通信フローに対するネットワーク制御の実行又は実行の解除を指示するネットワーク制御指示部と、を有する。
【００１５】
また、上記本発明において、前記通信フロー特定部は、前記第一の通信フローから各々の通信フローに割り当てられた帯域の利用率が所定の閾値を超える第二の通信フローを特定する。更に、前記複数の通信装置のうちの少なくとも一つは、通信フロー毎にネットワーク制御を行うネットワーク制御部を有し、前記管理サーバは、前記第二の通信フローが経由し前記ネットワーク制御部を有する通信装置から特定の通信装置を選択し、該選択した通信装置に前記第二の通信フローに対するネットワーク制御の実行を指示するネットワーク制御指示部と、を有する。
【発明の効果】
【００１６】
本発明では、余剰帯域の観測のためにｐｉｎｇの応答パケット等による余計な通信を発生させず、ネットワークの帯域の利用率を向上させることができる。
【図面の簡単な説明】
【００１７】
【図１】第１の実施の形態のデータセンタネットワークの構成図
【図２】第１の実施の形態のネットワーク管理サーバの構成を示すブロック図
【図３】第１の実施の形態のスイッチの構成を示すブロック図である
【図４】第１の実施の形態のサーバの構成を示すブロック図である
【図５】第１の実施の形態のネットワーク制御システムにおけるシーケンス図
【図６】第１の実施の形態のノード管理テーブルの構成例
【図７】第１の実施の形態のインタフェース管理テーブルの構成例
【図８】第１の実施の形態のリンク管理テーブルの構成例
【図９】第１の実施の形態のノードの物理的な接続関係を表す図
【図１０】第１の実施の形態の物理帯域利用率管理テーブルの構成例
【図１１】第１の実施の形態のオペレータの管理画面例（物理リンクの閾値入力時）
【図１２】第１の実施の形態の閾値管理テーブルの構成例。
【図１３】第１の実施の形態のテナントの情報処理システムの論理構成図
【図１４】第１の実施の形態のシステム構成管理テーブルの構成例
【図１５】第１の実施の形態のテナントフロー管理テーブルの構成例
【図１６】第１の実施の形態のフロー利用率管理テーブルの構成例
【図１７】第１の実施の形態の物理リンク管理処理のフローチャート
【図１８】第１の実施の形態の物理リンク管理テーブルの構成例
【図１９】第１の実施の形態のマーカーの制御設定管理テーブルの構成例
【図２０】第１の実施の形態のシェーパの制御設定管理テーブルの構成例
【図２１】第１の実施の形態のオペレータの管理画面例（フローの閾値入力時）
【図２２】第１の実施の形態のフロー利用率管理処理のフローチャート
【図２３】第１の実施の形態の物理帯域利用率監視処理のローチャート
【図２４】第１の実施の形態の制御方式選択処理のフローチャート（制御開始時）
【図２５】第１の実施の形態の制御方式選択処理のフローチャート（制御解除時）
【図２６】本発明の効果を示すグラフ図
【図２７】第２の実施の形態のネットワーク制御システムにおけるシーケンス図
【図２８】第２の実施の形態のオペレータの管理画面例（最大利用率入力時）
【図２９】第３の実施の形態のネットワーク制御システムにおけるシーケンス図
【図３０】第３の実施の形態のフロー利用率管理処理のフローチャート
【図３１】第４の実施の形態のネットワーク制御システムにおけるシーケンス図
【図３２】第５の実施の形態のネットワーク制御システムの構成図
【図３３】第５の実施の形態のネットワーク制御システムにおけるシーケンス図
【図３４】第５の実施の形態の物理帯域利用率監視処理のフローチャート
【図３５】第６の実施の形態のネットワーク制御システムの構成図
【図３６】第６の実施の形態のネットワーク制御システムにおけるシーケンス図
【図３７】第６の実施の形態のアグリゲーション管理テーブルの構成例
【図３８】第６の実施の形態のアグリゲーションリンク処理のフローチャート
【図３９】第６の実施の形態の物理リンク管理テーブルの構成例
【発明を実施するための形態】
【実施例１】
【００１８】
図１は、本発明の第１の実施の形態が実施されるデータセンタネットワークの構成図である。第１の実施の形態のネットワーク制御システムは、ネットワーク管理サーバ１、複数のスイッチ２〜９、複数のサーバ３１〜３７を備える。
【００１９】
ネットワーク管理サーバ１は、データセンタネットワークの物理構成、データセンタネットワーク内に構築したテナントの情報処理システムの通信フローを管理するサーバである。サーバ３１〜３７は、データセンタネットワーク内に構築したテナントの情報処理システムを構成するサーバである。スイッチ２〜９は、テナントの情報処理システムのサーバ３１〜３７が送受信するイーサフレームを転送する中継装置である。各スイッチ間は物理インタフェースで接続される。各スイッチの接続関係をリンクＡ１〜Ｏ２で示す。各リンクには通信方向があり、Ａ１リンクはスイッチ３からスイッチ２への通信経路を示し、Ａ２リンクはスイッチ２からスイッチ３への通信経路を示す。
＜ネットワーク管理サーバ＞
図２は、ネットワーク管理サーバ１の構成を示している。ネットワーク管理サーバ１は、ＣＰＵ１１、メモリ１２、インタフェース１３を備え、それぞれはバス１４で接続される。メモリ１２は、ＣＰＵ１１によって実行される処理プログラムである物理帯域利用率監視処理１５、フロー利用率管理処理１６、物理リンク管理処理１７、制御方式選択処理１８、テーブル初期化処理１９を格納する。さらに、各処理プログラム実行時に必要とするデータとして物理利用率管理テーブル２０、フロー利用率管理テーブル２１、物理リンク管理テーブル２２、閾値管理テーブル２３、物理構成管理テーブル群２４、テナントシステム構成管理テーブル群２５を格納する。
【００２０】
物理帯域利用率監視処理１５は、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）等を利用してスイッチ２〜９から各インタフェースのトラフィック情報を収集し、物理帯域利用率管理テーブル２０を更新する。
【００２１】
フロー利用率管理処理１６は、各テナントの情報処理システムを構成する各サーバから各通信フローのトラフィック情報を収集し、フロー利用率管理テーブル２１を更新する。
【００２２】
物理リンク管理処理１７は、物理構成管理テーブル群２４とテナントシステム構成管理テーブル２５から、物理リンク管理テーブル２２を生成する。
【００２３】
制御方式選択処理１８は、物理帯域利用率管理テーブル２０、物理リンク管理テーブル２２、閾値管理テーブル２３を用いて、通信フローに適用するネットワーク制御方式を選択する。
【００２４】
初期化処理１９は、各テーブル２０〜２５の初期化設定を行う。
＜スイッチ＞
図３は、スイッチ７の構成を示している。スイッチ７は、ＣＰＵ７１、メモリ７２、ネットワーク制御部７３、複数のインタフェース７５を備え、それぞれはバス７４で接続される。メモリ７２は、ＣＰＵ７２によって実行される処理プログラムであるインタフェース監視処理７８を格納する。さらに、ネットワーク制御部７３で使用する設定情報を制御設定管理テーブル７７に格納する。
【００２５】
ネットワーク制御部７３は、優先制御機能７９、帯域監視機能８０、マーカー機能８１、シェーパ機能８２を有する。各ネットワーク制御機能はメモリ上でソフトウェアとして提供されても、ハードウェアとして提供されてもよい。
【００２６】
優先制御機能７９は、ＩＰパケットやイーサフレームにマーキングされた優先度に従って、転送順を制御する機能である。
【００２７】
帯域監視機能８０は、制御設定管理テーブル７７に設定されたフロー検出条件に基づいて検出したフローの転送量が、設定された監視帯域を超えるか否かを判定する機能である。
【００２８】
マーカー機能８１は、帯域監視機能８０が判定した帯域監視結果に基づいて、ＩＰパケットまたはイーサフレームに優先度をマーキングする機能である。ＩＰパケットのマーキングは、ＴＯＳ（Ｔｙｐｅ  ｏｆ  Ｓｅｒｖｉｃｅｓ）フィールドを利用する。イーサフレームのマーキングは、ＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）タグ内のプライオリティフィールドを利用する。
【００２９】
シェーパ機能８２は、帯域監視機能８０が判定した帯域監視結果に基づいて、ＩＰパケットまたはイーサフレームの出力タイミングを遅らせて、出力帯域が監視帯域を超えないように制限する機能である。
【００３０】
他のスイッチ２〜９もスイッチ７と同様の構成である。各スイッチは物理的な装置であってもよいし、仮想スイッチのようなサーバ装置内で実行されるソフトウェアプログラムであってもよい。
【００３１】
各スイッチはネットワーク制御部７３の全機能を有する必要はない。本実施例において、スイッチ２は少なくとも優先制御機能７９を有する。スイッチ３〜５は少なくとも帯域監視機能８０及びマーカー機能を有する。スイッチ６〜９は少なくとも帯域監視機能８０及びシェーパ機能を有する。
＜サーバ＞
図４は、サーバ３１の構成を示している。サーバ３１は、ＣＰＵ３１１、メモリ３１２、インタフェース３１３を備え、それぞれはバス３１４で接続される。メモリ３１２は、ＣＰＵ３１１によって実行される処理プログラムであるシステムアプリケーション３１５、トラフィック監視エージェント３１６を格納する。
【００３２】
システムアプリケーション３１５は、テナントの情報処理システムを構成するアプリケーションプログラムである。アプリケーションプログラムはサーバやテナントごとに異なるプログラムである。例えば、ロードバランサプログラムであったり、アプリケーションサーバプログラムであったり、データベースサーバプログラムであったりする。
【００３３】
トラフィック監視エージェント３１６は、サーバ３１が送受信する通信フローのトラフィック量を監視するプログラムである。
【００３４】
他のサーバ３１〜３７もサーバ３１と同様の構成である。サーバはＶＭ（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）のような仮想サーバであっても、物理サーバであってもよい。
＜ネットワーク制御シーケンス＞
図５は、本発明の第１の実施の形態のネットワーク制御システムにおける処理シーケンスである。
【００３５】
まず、データセンタ内のインフラを管理するオペレータが、スイッチやサーバの物理的な位置を示すネットワークの物理構成情報をネットワーク管理サーバ１に登録する（ステップ５０１）。
【００３６】
ネットワーク管理サーバ１は、テーブル初期化処理１９を起動し、オペレータが登録したネットワーク物理構成情報を基に、物理構成管理テーブル群２４を生成する（ステップ５０２）。物理構成管理テーブル群２４は、ネットワークのトポロジを管理するテーブルで、ノード管理テーブル２６、インタフェース管理テーブル２７、リンク管理テーブル２８で構成される。
【００３７】
ノード管理テーブル２６は、データセンタネットワーク内のノードの情報を管理する。図６にノード管理テーブル２６の構成例を示す。ノードとはスイッチやサーバ等、通信にかかわるすべての装置を示す。ノード管理テーブル２６は、ノードＩＤ、ノード名、ノードタイプ、提供機能、状態を構成要素として持つ。ノードＩＤは、データセンタネットワークを構成する全ノードでユニークなＩＤである。ノード名は、各ノードの名前を管理する。ノードタイプはノードの種類を管理し、該当ノードがスイッチであるか、サーバであるかを示す。提供機能は、該当ノードがどのような機能提供をするかを示す。ノードタイプがスイッチの場合、提供機能は、優先制御、帯域監視及びマーカー、帯域監視及びシェーパの中から選択する。状態は、ノードが使用中であるか否かを管理する。スイッチの場合、冗長構成等で使用されていないスイッチの状態は未使用となる。サーバの場合、装置としてデータセンタ内に存在するが、テナントの情報処理システムが割り当てられていないサーバは未使用となる。
【００３８】
インタフェース管理テーブル２７は、スイッチ、サーバを含む全装置のインタフェースの状態を管理する。図７にインタフェース管理テーブル２７の構成例を示す。インタフェースＩＤは、データセンタ内の全インタフェースでユニークなＩＤである。インタフェース名は、各インタフェースの名前を管理する。ノードＩＤは、該当するインタフェースが属するノードのノードＩＤである。状態はインタフェースが使用中であるか未使用であるかの状態を管理する。
【００３９】
リンク管理テーブル２８は、ノード間の接続関係と通信方向を管理する。リンクは、各インタフェース間の物理的な接続関係と通信方向を表したものである。図８にリンク管理テーブル２８の構成例を示す。物理リンクＩＤは、データセンタ内の全物理リンクでユニークなＩＤである。送信インタフェースＩＤは、該当リンクの送信元となるインタフェースのインタフェースＩＤである。宛先インタフェースＩＤは、該当リンクの宛先となるインタフェースのインタフェースＩＤである。
【００４０】
図９はノード管理テーブル２６、インタフェース管理テーブル２７、リンク管理テーブル２８の物理構成管理テーブル群２４によって管理されるノードと、ノード間の物理的な接続関係を示す図である。
【００４１】
続けて、テーブル初期化処理１９は、登録された各物理リンクの物理帯域利用率管理テーブル２０を生成する（ステップ５０３）。物理帯域利用率管理テーブル２０の構成例を図１０に示す。物理リンクＩＤは、リンク管理テーブル２８の物理リンクＩＤと同じ値である。物理リンクＩＤごとに、帯域利用率と廃棄率とを管理する。帯域利用率や廃棄率のトラフィック情報は、送信側、受信側双方のインタフェースから取得可能のため、送信側、受信側に分けて管理する。送信側ＳＷ、ＩＦは、該当物理リンクの送信元となるスイッチ名と、インタフェースＩＤである。受信側ＳＷ、ＩＦは、該当物理リンクの宛先となるスイッチ名と、インタフェースＩＤである。物理帯域利用率管理テーブル２０の更新方法は、物理帯域利用率監視処理１５で詳しく説明する。
【００４２】
ステップ５０１〜５０３の処理は、データセンタ内ネットワークの物理構成が変更されたとき、すなわち、スイッチやサーバが追加または削除された場合に行われる。
【００４３】
その後、オペレータは物理リンクの帯域利用率の閾値を管理画面から登録する(ステップ５０４)。図１１にオペレータの管理画面の構成例を示す。オペレータは物理リンクごとに、シェーパ制御を開始する帯域利用率の閾値と、シェーパ制御を解除する帯域利用率の閾値を入力する。全物理リンクで共通の帯域利用率の閾値を使用する場合は、一括設定から設定する。また，物理リンクにおける帯域利用率の閾値の他に，物理リンクにおけるごとにシェーパを制御を開始する廃棄率の閾値と，シェーパを解除する廃棄率の閾値を合わせて設定してもよい。
【００４４】
オペレータによる物理帯域利用率又は通信フローの閾値入力を受け付けると、ネットワーク管理サーバ１は、入力された閾値を閾値管理テーブル２３に記録する（ステップ５０５）。閾値管理テーブル２３は、シェーパ制御を開始する閾値と解除する閾値とを管理するテーブルで、物理帯域利用率と、通信フローの閾値とに分けて管理する。図１２（ａ）に閾値管理テーブルの構成例を示す。図１２（ａ）は、全物理リンクで共通の閾値を用い、全フローで共通の閾値を用いる場合である。物理リンクごとに異なる閾値を設定する場合は、図１２（ｂ）のように、物理リンクごとに閾値を管理する。同様に、通信フローごとに異なる閾値を設定する場合は、図１２（ｃ）のように、通信フローごとに閾値を管理する。また、全物理リンクでは共通の閾値を用い、通信フローごとに異なる閾値を管理したり、全物理リンクでは異なる閾値を用い、全通信フローで共通の閾値を用いたりしてもよい。帯域利用率の閾値と同様に，廃棄率に対して閾値も設定してもよい。
【００４５】
図５に戻り、処理シーケンスを説明する。次に、オペレータはネットワーク管理サーバ１にテナントの情報処理システムに関する情報を登録する（ステップ５０６）。登録する情報は、テナントの情報処理システムを構成するサーバ情報、サーバがどのサーバと通信するかを示す通信フロー情報、通信フローに割り当てる帯域情報である。
【００４６】
本実施例で登録するテナントの情報処理システムの論理構成を図１３に示す。登録する情報処理システムは、ロードバランサ１台（ＬＢ１―１）、アプリケーションサーバ２台（ＡＰ１―１と１―２）、データベースサーバ１台（ＤＢ１―１）で構成するＷＥＢシステムである。オペレータは、サーバ３１にロードバランサ１―１、サーバ３２にＡＰ１―１、サーバ３２にＡＰ１―２、サーバ３４にＤＢ１―１を割り当てる。また、ＬＢ１―１はデータセンタの外部と、ＡＰ１―１及びＡＰ１―２と通信を行う。ＡＰ１―１はＬＢ１−１及びＤＢ１―１と通信を行う。ＡＰ１―２はＬＢ１−１及びＤＢ１―１と通信を行う。
【００４７】
ネットワーク管理サーバ１は、テナントの情報処理システムの構成をテナントシステム構成管理テーブル群２５で管理する。オペレータが登録した情報処理システムの論理構成を基に、ネットワーク管理サーバ１は、テーブル初期化処理１９を起動し、テナントシステム構成管理テーブル群２５を生成する（ステップ５０７）。
【００４８】
テナントシステム構成管理テーブル群２５は、システム構成管理テーブル２９及びテナントフロー管理テーブル３０から構成される。
【００４９】
システム構成管理テーブル２９はテナントの情報処理システムを構成するサーバを管理する。システム構成管理テーブル２９の構成例を図１４に示す。サーバ名は、テナントの情報処理システムの各サーバの名前である。サーバＩＤは、テナントの情報処理システムに割り当てたサーバのノードＩＤである。インタフェースＩＤは、サーバに属するインタフェースのインタフェースＩＤである。
【００５０】
テナントフロー管理テーブル３０は、テナントの情報処理システムを構成するサーバの通信フローの送信元サーバと宛先サーバとを管理する。テナントフロー管理テーブル３０の構成例を図１５に示す。フローＩＤは、テナントの情報処理システムのフローを特定するＩＤである。データセンタ全体でユニークな値を割り当てる。送信元サーバ名は、通信フローの送信元となるサーバの名前である。宛先サーバ名は、通信フローの宛先となるサーバの名前である。帯域は、通信フローに割り当てられた帯域である。送信元インタフェースＩＤは、フローの送信元となるサーバが保持するインタフェースのインタフェースＩＤである。宛先インタフェースＩＤは、フローの宛先となるサーバが保持するインタフェースのインタフェースＩＤである。
【００５１】
続けて、テーブル初期化処理１９は、登録されたテナントの情報処理システムごとにフロー利用率管理テーブル２１を生成する（ステップ５０８）。フロー利用率管理テーブル２１の構成例を図１６に示す。フローＩＤはテナントの情報処理システムのフローのＩＤである。フロー検出条件は、通信フローをスイッチで検出するための条件である。図１６では、送信元ＩＰアドレスと宛先ＩＰアドレスを基に通信フローを検出しているが、イーサフレームのＭＡＣアドレスやＴＣＰ／ＵＤＰのポート番号等、ＴＣＰフラグ等、他の検出条件でフローを検出してもよい。割り当て帯域は、通信フローに割り当てる帯域である。利用率は、フローに割り当てられた帯域に対して、実際にどの程度の帯域を利用しているかを示す値である。利用率はフロー利用率管理処理１６によって更新される。フロー利用率管理処理１６については後に説明する。
【００５２】
システム構成管理テーブル２９およびテナントフロー管理テーブル３０が登録されると、ネットワーク管理サーバ１は、物理リンク管理処理１７を起動し、物理リンク管理テーブル２２を生成するする。物理リンク管理処理１７は、物理構成管理テーブル群２４と、登録されたテナントシステム構成管理テーブル群２５から、通信フローと通信フローが経由するスイッチとの対応関係を示す物理リンク管理テーブル２２を生成する。物理リンク管理処理１７の処理フローを図１７に示す。
【００５３】
物理リンク管理処理１７は、テナントの情報処理システムが登録されると、追加されたテナントシステムのテナントフロー管理テーブルを取得する（ステップ１７０１）。テナントフロー管理テーブル３０から、経路を探索するフローのフローＩＤを選択し、該当フローの送信元インタフェースＩＤ及び宛先インタフェースＩＤを取得する（ステップ１７０２）。ここでは、ｂ２フローを例にして説明する。ｂ２フローの送信元インタフェースＩＤは１０２３、宛先インタフェースＩＤは１０２２である。
【００５４】
検索インタフェースとしてステップ１６０２で取得した送信元インタフェースを指定する（ステップ１７０３）。ｂ２フローでは送信元インタフェースＩＤは１０２３であるので、検索インタフェースとしてインタフェースＩＤ１０２３を指定する。
【００５５】
次に、検索インタフェースをもとに、リンク管理テーブル２８の送信元インタフェースを検索し、対応するリンクＩＤ及び宛先インタフェースＩＤを取得する（ステップ１７０４）。ｂ２フローの場合、送信元インタフェースＩＤ１０２３に対応するリンクＩＤはＪ１、宛先インタフェースＩＤは１０１４である。
【００５６】
次に、リンク管理テーブル２８から取得した宛先インタフェースＩＤと、ステップ１７０２で選択したフローの宛先インタフェースＩＤが一致するかを比較する（ステップ１７０５）。ｂ２フローの場合、リンク管理テーブル２８から取得した宛先インタフェースＩＤは１０１４であり、テナントフロー管理テーブルにおけるｂ２フローの宛先インタフェースＩＤは１０２２で一致しないため、ステップ１７０５の後ステップ１７０６を実行する。
【００５７】
リンク管理テーブル２８から取得した宛先インタフェースＩＤと、ステップ１７０２で選択したフローの宛先インタフェースＩＤが一致しない（ステップ１７０５でＮｏ）場合は、リンク管理テーブル２８から取得した宛先インタフェースＩＤを基に、インタフェース管理テーブル２７を検索し、該当インタフェースＩＤに対応するノードＩＤを取得する（ステップ１７０６）。ｂ２フローの場合、リンク管理テーブル２８で取得した宛先インタフェースＩＤである１０１４を基に、インタフェース管理テーブル２７を検索し、インタフェースＩＤ１０１４に該当するノードＩＤ７を取得する。
【００５８】
次に、ステップ１７０６で取得したノードＩＤを基に、ノード管理テーブル２６を検索し、該当するノードのタイプ及び機能を取得する（ステップ１６０７）。ノードＩＤ７のスイッチが提供する機能は、帯域監視及びシェーパである。
【００５９】
次に、ステップ１７０７で取得したノードＩＤを基に、インタフェース管理テーブル２７を検索し、ノードが備える他のインタフェースＩＤを取得する（ステップ１６０８）。ノードＩＤ７のスイッチがインタフェース１０１４以外に備えるインタフェースのＩＤは１０１３である。
【００６０】
次に、検索インタフェースをステップ１７０８で取得したノードが備える他のインタフェースＩＤに設定する。ノード７の場合、他のインタフェースＩＤは１０１３のみなのでインタフェースＩＤ１０１３を設定し、ステップ１７０４から１７０９の処理を繰り返す。ステップ１７０８で、ノードが備える他のインタフェースが複数ある場合は、すべてのインタフェースを検索インタフェースに設定し、経路検索を行う。
【００６１】
ステップ１７０５で物理リンク管理テーブルから取得した宛先インタフェースＩＤと、テナントフロー管理テーブルの宛先インタフェースＩＤが一致したら、選択したフローに対する経路探索は終了となる。ステップ１７０５でＹｅｓの場合は、探索した通信フローが経由する物理リンク及び、シェーパ、マーカー等の制御機能を提供するスイッチを物理リンク管理テーブル２２に記録する。
【００６２】
次に、テナントシステムの追加に伴い追加された全フローの物理リンクが探索終了かを判定する（ステップ１７１１）。全フローの物理リンクの探索が終了した場合（ステップ１７１１でＹｅｓの場合）は処理を終了する。全フローの物理リンクの探索が終了していない場合は、ステップ１７０２に戻り、他のフローを選択し物理リンクの探索を継続する。
【００６３】
図１８に物理リンク管理テーブル２２の構成例を示す。物理リンク管理テーブル２２は構成要素として、フローＩＤ、物理リンク、マーカー機能の状態、マーカー機能を提供するスイッチ名、スイッチに設定された制御設定テーブルのシーケンス番号、シェーパ機能の状態、シェーパ機能を提供するスイッチ、スイッチに設定された制御設定テーブルのシーケンス番号を持つ。これらの情報をテナントシステムごとに管理する。
【００６４】
ｂ２フローの場合、物理リンクは、ＡＰ１−１、Ｊ１、Ｅ１、Ｂ１、Ａ２、Ｄ２、Ｈ２、ＬＢ１−１である。矢印は通信の方向を示す。マーカー機能はスイッチ４で提供されており、スイッチ４に設定された制御設定テーブルのシーケンス番号は３００１である。マーカー機能の状態がＯＮの場合、該当フローに対して該当スイッチでマーカー機能が提供されていることを示す。また、シェーパ機能はスイッチ７で提供されており、スイッチ７に設定された制御設定テーブルは２００１である。シェーパ機能の状態がＯＮの場合、該当フローに対して該当スイッチでシェーパ機能が提供されていることを示す。シーケンス番号は、ネットワーク管理サーバ１が指定する番号を設定してもよいし、スイッチに設定する際に、未使用のシーケンス番号を使用してもよい。スイッチ設定時にシーケンス番号が決まる場合は、スイッチを設定した際に、物理リンク管理テーブル２２のシーケンス番号も更新する。
【００６５】
図５に戻り、処理シーケンスを説明する。物理リンク管理テーブル２２生成後、ネットワーク管理サーバ１は、追加したテナントの情報処理システムの各フローに、マーカー機能を提供するスイッチ３、４、５、及びシェーパ機能を提供するスイッチ６、７、８、９に対し、マーカーまたはシェーパ機能を提供するための設定を行う（ステップ５１１、ステップ５１２）。設定する情報は、シーケンス番号、フロー検出条件、帯域情報である。設定された情報は、各スイッチの制御設定管理テーブル７７で管理する。
【００６６】
図１９にスイッチ４の制御設定管理テーブル７７の構成例を示す。スイッチ４はマーカー機能を提供するスイッチである。シーケンス番号は、スイッチにおいてフローを検出する順番を示すＩＤであり、スイッチ装置内でユニークな値である。フロー検出条件は、フローを検出するための条件であり、本実施例では送信元ＩＰアドレスと宛先ＩＰアドレスを基にフローを検出する。監視帯域は、ＩＰパケットやフレームにマーキングを行う際の監視帯域で、スイッチに実装されたマーキングアルゴリズムに従って平均帯域を計算し、監視帯域を超えるＩＰパケットまたはフレームの優先度を下げる、または非優先にマーキングを行う。システム１の登録により、ｂ２、ｄ１フローの検出条件と監視帯域が設定される。
【００６７】
図２０にスイッチ７の制御設定管理テーブル７７１の構成例を示す。スイッチ７はシェーパ機能を提供するスイッチである。シーケンス番号、フロー検出条件については、マーカー機能を提供するスイッチと同様である。最大帯域は、シェーピングを行う帯域である。スイッチに実装された帯域監視アルゴリズムに従って、フローの平均帯域を計算し、最大帯域を超えるＩＰパケットまたはフローの出力タイミングを遅らせて出力帯域を最大帯域以下になるように制御する。最大帯域の設定を行わない場合、フローに対してシェーピングは行われない。シェーピングは、物理帯域利用率が閾値を超える場合に、制御方式選択処理１８が設定するため、システム登録時はフロー検出情報とシーケンス番号のみを登録する。システム１の登録により、スイッチ７には、ｂ２、ｄ１フローの検出条件が設定される。
【００６８】
テナントの情報処理システム登録後、オペレータは登録した情報処理システムの各フローにシェーパを適用するかを判定するフロー利用率の閾値を設定する（ステップ５１３）。フローの利用率は、フローに割り当てられた帯域に対し、どの程度の帯域を利用しているかを示す。図２１にオペレータの管理画面例２１１を示す。オペレータは登録したシステムごとに各フローの開始閾値と解除閾値を入力する。登録したシステムの全フローに同じ値の開始閾値と解除閾値とを入力する場合は、全フロー一括設定で入力する。また、登録済の全システムの全フローに同じ値の開始閾値と解除閾値とを入力する場合は、全システム一括設定で入力する。開始閾値は、フローに対してシェーピングの適用を開始する閾値である。解除閾値は、シェーピングの適用を解除する閾値である。ネットワーク管理サーバ１は、フローの利用率と物理帯域の利用率を基に、フローに対してシェーパを適用するか否かを判定する。
【００６９】
オペレータが閾値を入力し更新ボタンを選択すると、テーブル初期化処理１９が該当するフローの閾値管理テーブル２３を入力された値に更新する（ステップ５１４）。本実施例では、全システムで共通の開始閾値と解除閾値とを利用する。
【００７０】
以上で、物理構成及びテナントシステム登録時の処理は終了である。以下の処理は、運用時時のシーケンスである。
【００７１】
ネットワーク管理サーバは定期的にサーバとスイッチからネットワークのトラフィック情報を収集し、フロー利用率管理テーブル及び物理帯域利用率管理テーブルを更新する。さらに、物理帯域利用率とフローに割り当てた帯域に対するフローの利用率に基づいて、各フローに適用するネットワーク制御方式を選択する。
【００７２】
まず、フロー利用率管理テーブル１６の更新方法について説明する。ネットワーク管理サーバ１は、定期的に各サーバに対してトラフィック情報の収集を行う（ステップ５１５）。ネットワーク管理サーバからのサーバ情報収集要求を受信した各サーバは、トラフィック監視エージェント３１６を起動し、サーバが送受信するトラフィック情報をネットワーク管理サーバ１に送信することにより通知する。通知するトラフィック情報は、通知を行うサーバのノードＩＤ、サーバが送受信する各通信フローのフローＩＤ、フローごとのトラフィックを監視した時間、フローごとの送信パケット数、送信したデータの合計バイト数、受信パケット数、受信したデータの合計バイト数等である。
【００７３】
ネットワーク管理サーバ１は、サーバからの情報収集通知を受信すると、フロー利用率管理処理１８を起動し、フロー利用率管理テーブル１８を更新する（ステップ５１５）。図２２にフロー利用率管理処理の処理フローを示す。フロー利用率管理処理１８は、サーバからの情報収集通知を受信する（ステップ２２０１）と、情報収集通知に含まれるサーバのノードＩＤから該当サーバが含まれる情報処理システムを特定する（ステップ２２０２）。特定した情報処理システムのフロー利用率管理テーブル１６を取得する（ステップ２２０３）。情報収集通知に含まれるフローを1つ選択し（ステップ２２０４）、フローに割り当てた帯域に対する帯域の利用率を計算する（ステップ２２０５）。監視時間に送信または受信したデータの合計バイト数を監視時間で割った値を利用帯域とし、利用帯域をフローに割り当てた帯域で割った値を利用率とする。計算したフローの利用率で、フロー利用率管理テーブル１６を更新する（ステップ２２０６）。最後に、情報収集通知に含まれる全フローのフロー利用率管理テーブルの更新が終了したかを判定する（ステップ２２０７）。情報収集通知に複数のフローが含まれる場合はステップ２２０４から２２０６の処理を繰り返し、全フローの更新が終わると処理を終了する。
【００７４】
次に、物理帯域利用率管理テーブル１５の更新について説明する。ネットワーク管理サーバ１は、定期的に各スイッチからトラフィック情報を収集する（ステップ５１７）。トラフィック情報の収集には、ＳＮＭＰを利用し、ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）-２のインタフェースグループの情報を取得する。ＭＩＢ−２のインタフェースグループには、インタフェースが受信したパケット数およびバイト数、送信したパケット数およびバイト数、受信時に廃棄したパケット数，送信時に廃棄したパケット数，インタフェースの帯域の情報等が含まれる。受信パケット数およびバイト数は，ｉｆＩｎＵｃａｓｔＰｋｔｓおよび ｉｆＩｎＯｃｔｅｔｓ,送信パケット数およびバイト数はｉｆＯｕｔＵｃａｓｔＰｋｔｓおよびｉｆＩｎＯｃｔｅｔｓ，受信時に廃棄したパケット数はｉｆＩｎＤｉｓｃａｒｄ，送信時に廃棄したパケット数はｉｆＯｕｔＤｉｓｃａｒｄ，インタフェースの帯域はｉｆＳｐｅｅｄとして規定されている。
【００７５】
ネットワーク管理サーバ１はスイッチに対して、ＧｅｔＲｅｑｕｅｓｔを送信し、インタフェースグループのＭＩＢを要求する。ＧｅｔＲｅｑｕｅｓｔを受信したスイッチは、ＧｅｔＲｅｓｐｏｎｓｅをネットワーク管理サーバ１に送信する。ＧｅｔＲｅｓｐｏｎｓｅを受信すると、ネットワーク管理サーバ１は、物理帯域利用率監視処理１５を起動し、物理利用率管理テーブル２０を更新する（ステップ５１８）。
【００７６】
図２３に物理帯域利用率監視処理１５の処理フローを示す。物理帯域利用率監視処理１５は、ＧｅｔＲｅｓｐｏｎｓｅを受信する（ステップ２３０１）と、ＧｅｔＲｅｓｐｏｎｓｅを送信したスイッチを特定する（ステップ２３０２）。送信したスイッチと、ＭＩＢ情報に含まれるｉｆＩｎｄｅｘからスイッチのインタフェースＩＤを特定する（ステップ２３０３）。
【００７７】
さらに，前回同一スイッチからインタフェースグループのＭＩＢ情報を受信した時刻との差分である監視時間と，ＭＩＢ情報からインタフェースの帯域利用率と廃棄率を計算する（ステップ２３０４）。受信側インタフェースの帯域利用率は，受信バイト数を監視時間で割った値とし，送信側インタフェースの帯域利用率は，送信バイト数を監視時間で割った値とする。また，受信側インタフェースの廃棄率は，受信時に廃棄したパケット数を受信パケット数と受信時に廃棄したパケット数の和で割った値とし，送信側インタフェースの廃棄率は，送信時に廃棄したパケット数を送信パケット数と送信時に廃棄したパケット数の和で割った値とする。
【００７８】
次に、ステップ２３０３で特定したインタフェースＩＤを基に、物理帯域利用率管理テーブル１５を検索し、該当するインタフェースの送信側、受信側の帯域利用率及び、廃棄率を更新する（ステップ２３０５）。
【００７９】
最後に、ＧｅｔＲｅｓｐｏｎｓｅに含まれる全インタフェースの物理帯域利用率管理テーブルの更新が終了したかを判定する。複数のインタフェースのＭＩＢ情報が含まれる場合は、ステップ２３０３から２３０６の処理を繰り返し、全インタフェースの更新が終了すると処理を終了する。
【００８０】
次に、制御方式選択処理１８について説明する。制御方式選択処理１８は、物理帯域利用率管理テーブル１５及び、フロー利用率管理テーブル１６を基に、テナントの情報処理システムの各フローにシェーパを適用するか否かを選択する（ステップ５１９）。
【００８１】
ネットワーク管理サーバ１は、一定時間ごとに制御方式選択処理１８を起動する。制御方式選択処理１８の処理フローを図２４に示す。まず、シェーパ制御開始時の処理フローについて説明する。
【００８２】
制御方式選択処理１８が起動すると、物理帯域利用率管理テーブル１５を取得する（ステップ２４０１）。各物理リンクについて、送信側及び受信側の帯域利用率が、閾値管理テーブル２３に設定された物理帯域利用率の開始閾値以上かを判定する（ステップ２４０２）。帯域利用率の閾値に加え，廃棄率が閾値管理テーブルに設定されている場合は，帯域理利用率に加え，廃棄率も閾値以上かを判定する。帯域利用率および廃棄率（廃棄率が閾値管理テーブルに設定されている場合）が開始閾値以下の場合（ステップ２４０２でＮｏ）、物理帯域利用率管理テーブル１５の全物理リンクについて閾値の判定を行ったかを判定し（ステップ２４０９）、全物理リンクの判定が終了していない場合にはステップ２４０２に戻る。帯域利用率および廃棄率（廃棄率が閾値管理テーブルに設定されている場合）が開始閾値以上の場合（ステップ２４０２でＹｅｓ）には、物理リンク管理テーブル２２を取得し、物理帯域利用率および廃棄率（廃棄率が閾値管理テーブルに設定されている場合）が開始閾値以上の物理リンクを経由する通信フローを検索し（ステップ２４０３）、制御対象候補となる通信フローを特定する（ステップ２４０４）。図１０の物理帯域利用率管理テーブル１５において、物理リンクＢ１は、図１２の閾値管理テーブルの物理帯域利用率の開始閾値７０％を超えるため、物理リンク管理テーブル２２を検索し、物理リンクＢ１を経由する通信フローを特定する。図１３の物理リンク管理テーブルでは、フローｂ２、ｃ２、ｄ１、ｅ１が制御対象候補となる。
【００８３】
制御対象候補フローを特定後、制御対象フローのフロー利用率管理テーブル１６を取得する（ステップ２４０５）。
【００８４】
次に、制御対象の各通信フローについて、フロー利用率管理テーブル１６の利用率が、閾値管理テーブル２３のフロー利用率の開始閾値以上かを判定する（ステップ２４０６）。ステップ２４０６でＹｅｓの場合には、該当の通信フローに対し、シェーピングの開始を指示する（ステップ２４０７）。次に、ステップ２４０４で特定した全制御対象候補フローについて、利用率と閾値都の判定が終了したかを判定する（ステップ２４０８）。全制御対象候補の判定が終了していない場合は、ステップ２４０５からステップ２４０８を繰り返す。
【００８５】
制御対象フローｂ２、ｃ２、ｄ１、ｅ１を例にすると、ｂ２フローはフロー利用率管理テーブル１６の利用率は７０％であり、閾値管理テーブル２３におけるフロー利用率の開始閾値６０％を超えるため、ステップ２４０７でシェーピング開始の指示を行う。一方、ｃ２フローはフロー利用率管理テーブル１６の利用率は３０％であり、閾値管理テーブル２３におけるフロー利用率の開始閾値６０％を超えないため、ステップ２００６でＮｏとなり、シェーピング開始の指示は行われない。同様に、ｄ１、ｅ１についてもフロー利用率管理テーブル１６と閾値管理テーブル２３との比較を行い、シェーピングを開始するか否かを判定する。
【００８６】
全制御対象候補フローの判定終了後、物理帯域利用率管理テーブルの全物理リンクの判定が終了したかを判定する（ステップ２４０９）。全物理リンクの判定が終了していない場合は、ステップ２４０２からステップ２４０９を繰り返し、全物理リンクについて閾値の判定を行う。全物理リンクの判定終了後、処理を終了する。
【００８７】
制御方式選択処理１８終了後、シェーパ制御開始対象となった通信フローにシェーパ機能を提供するスイッチに対し、ネットワーク管理サーバ１は、シェーパ設定の変更を指示する（ステップ５２０）。シェーパ制御を開始するフローは、物理リンク管理テーブルからシェーパ機能を提供するスイッチとスイッチ名のシーケンス番号を取得し、該当スイッチのシーケンス番号の制御設定に対し、最大帯域を設定する。最大帯域は、フロー利用率管理テーブル１６におけるフローへの割り当て帯域と同じ帯域に設定する。ｂ２フローの場合、スイッチ７のシーケンス番号２００１の設定に対し、最大帯域を２０Ｍｂｐｓに設定する。
【００８８】
最大帯域の設定完了後、物理リンク管理テーブル２２の該当フローのシェーパ機能の状態をＯＮに変更する。
【００８９】
次に、制御方式選択処理１８のシェーパ制御解除時の処理フローについて説明する。図２５に、シェーパ制御終了時の処理フローを示す。
【００９０】
制御方式選択処理１８が起動すると、物理帯域利用率管理テーブル１５を取得する（ステップ２５０１）。各物理リンクについて、送信側及び受信側の帯域利用率が、閾値管理テーブル２３に設定された物理帯域利用率の解除閾値以下かを判定する（ステップ２５０２）。帯域利用率の閾値に加え，廃棄率が閾値管理テーブルに設定されている場合は，帯域理利用率に加え，廃棄率も閾値以上かを判定する。帯域利用率および廃棄率（廃棄率が閾値管理テーブルに設定されている場合）が解除閾値以下の場合（ステップ２５０２でＹｅｓ）は、物理リンク管理テーブル２２を取得し、物理帯域利用率および廃棄率（廃棄理が閾値管理テーブルに設定されている場合）が開始閾値以下の物理リンクを経由する通信フローを検索し（ステップ２５０３）、シェーパ制御解除対象候補となる通信フローを特定する（ステップ２５０４）。
【００９１】
シェーパ制御解除対象候補となる通信フローのシェーパ機能の状態を物理リンク管理テーブル２２を参照し、シェーパ機能の状態が有効（ＯＮ）であるか否かを判定する（ステップ２５０５）。シェーパ機能の状態が有効である場合には、シェーパ制御の解除を指示する（ステップ２５０６）。ステップ２５０４で特定した全制御対象フローについて判定が終了したかを判定する（ステップ２５０７）。全制御対象フローの判定が終了していない場合はステップ２５０６からステップ２１０７を繰り返す。
【００９２】
さらに、物理利用率管理テーブル１５の全物理リンクの閾値判定が終了したかを判定し（ステップ２５０８）、全物理リンクの判定が終わらない場合は、ステップ２５０２からステップ２５０８を繰り返し、全物理リンクの判定を行う。
【００９３】
制御方式選択処理１８終了後、シェーパ制御解除対象となった通信フローにシェーパ機能を提供するスイッチに対し、ネットワーク管理サーバ１は、シェーパ設定の変更を指示する。シェーパ制御を解除するフローは、物理リンク管理テーブルからシェーパ機能を提供するスイッチとスイッチ名のシーケンス番号を取得し、該当スイッチのシーケンス番号の制御設定から、最大帯域の設定を削除する。最大帯域の設定完了後、物理リンク管理テーブル２２の該当フローのシェーパ機能の状態をＯＦＦに変更する。
【００９４】
以上のように、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを変更することにより、ネットワークがすいている場合、通信フローに割り当てた帯域を超えて、余剰帯域を利用でき、ネットワークが混雑している場合は、フローに割り当てた帯域までの利用が可能となる。この結果、データ転送時間を最小化することができる。図２６に本発明の効果を示す。
【００９５】
また、本発明による制御方式を適用することにより、データ転送時間が一定以上に長くなることを防止できるため、データセンタ事業者は、余剰帯域を多く確保する必要がなくなり、ネットワークの物理リソースの利用率を向上させることができる。この結果、データセンタ事業者はネットワークの設備コストを削減することができる。
【実施例２】
【００９６】
第２の実施の形態では、トラフィック監視エージェントを備えないサーバに対して、ネットワーク管理サーバが、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを判定する例について説明する。本発明が実施されるネットワーク制御システムは第１の実施の形態と同様である。
【００９７】
第２の実施の形態におけるサーバは、トラフィック監視エージェント３１６を備えないサーバである。ネットワーク管理サーバ１及び各スイッチ２〜９の構成は第１の実施の形態と同様である。
【００９８】
図２７は、本発明の第２の実施の形態のネットワーク制御システムにおけるシステム処理シーケンス図である。
【００９９】
ステップ２７０１において、登録したシステムの各フローの最大利用率をフロー利用率管理テーブル１６に登録する。図１３に示すような論理構成のＷＥＢシステムの場合、登録する最大利用率は、サーバが許容する同時接続セッション数及び、各セッションで転送する平均データサイズから算出する。
【０１００】
アプリケーションサーバであるＡＰ１―１が許容する同時接続セッション数は１００セッション、平均リクエストサイズが１Ｋバイトの場合、同時に転送するデータ量の最大値は８００Ｋｂｐｓである。最大利用率は、データ量の最大値を割り当て帯域で割った値であるため、１０Ｍｂｐｓを割り当てられているｂ１フローの最大利用率は８％である。
【０１０１】
ＡＰ１−１がリクエストに応答して転送する平均ファイルサイズが１０Ｋバイトの場合、同時に転送するデータ量の最大値は８Ｍｂｐｓである。そのため、１０Ｍｂｐｓを割り当てられているｂ２フローの最大利用率は８０％である。
【０１０２】
同様に、他の通信フローについてもサーバが許容する同時接続セッション数と、平均データサイズから最大利用率を計算し、各フローの最大利用率を登録する。図２８にオペレータの管理画面を示す。オペレータはフローごとに最大利用率を設定してもよいし、全フローを一括で設定してもよい。一括設定する場合は、算出した各フローの最大利用率のうち、一番利用率の高いフローの最大利用率を設定する。
【０１０３】
オペレータが最大利用率を入力し、更新すると、ネットワーク管理サーバ１は、更新されたシステムに対応するフロー利用率管理テーブル１６を取得し、フロー利用率管理テーブル１６の利用率を、オペレータが登録した最大利用率に書き換える（ステップ２７０２）。
【０１０４】
その他の処理については、第１の実施の形態と同様である。サーバがトラフィック監視エージェントを備えない場合でも、オペレータが各フローに予測される最大利用率を登録することで、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率の予測値を基に、通信フローに対してシェーパを適用するか否かを変更することにより、ネットワークがすいている場合、通信フローに割り当てた帯域を超えて、余剰帯域を利用でき、ネットワークが混雑している場合は、フローに割り当てた帯域までの利用が可能となる。この結果、データ転送時間を最小化することができる。
【実施例３】
【０１０５】
第３の実施の形態では、トラフィック監視エージェント３１６を備えないサーバに対して、ＮｅｔＦｌｏｗに代表されるスイッチのフロー統計機構を利用して、ネットワーク管理サーバが、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを判定する例について説明する。本実施例では、スイッチが６〜９が、ＮｅｔＦｌｏｗエージェント機能を備えている。本発明が実施されるネットワーク制御システムは第１の実施の形態と同様である。
【０１０６】
図２９は、本発明の第３の実施の形態のネットワーク制御システムにおけるシステム処理シーケンス図である。
【０１０７】
ステップ２９０１において、ネットワーク管理サーバ１は、登録された情報処理システムの各フローのフロー統計情報を収集するために、物理リンク管理テーブル２２を参照し、各フローが経由するいずれかのスイッチのＮｅｔＦｌｏｗエージェントに対して設定を行う。本実施例では、各フローにマーカー機能を提供するスイッチに対して、フロー利用率管理テーブル１６を参照し、フロー検出条件と同様のフローリストを設定する。
【０１０８】
フローリストが設定されたスイッチは、ＮｅｔＦｌｏｗコレクタであるネットワーク管理サーバ１に対し、フローごとに統計した統計情報であるＮｅｔＦｌｏｗレポートを定期的に通知する（ステップ２９０２）。ＮｅｔＦｌｏｗレポートには、フロー単位で集計した、パケット数、バイト数、パケットロス数、受信インタフェース、送信インタフェース等の情報が含まれる。
【０１０９】
ＮｅｔＦｌｏｗレポートを受信したネットワーク管理サーバ１は、フロー利用率管理処理１６を起動し、フロー利用率管理テーブル１６を更新する（ステップ２９０３）。図３０にＮｅｔＦｌｏｗに対応したフロー利用率管理処理の処理フローを示す。
【０１１０】
フロー利用率管理処理１６は、ＮｅｔＦｌｏｗレポートを受信すると（ステップ３００１）、ＮｅｔＦｌｏｗレポートに含まれるフロー単位統計を一つ選択する（ステップ３００２）。フロー単位統計に含まれる、送信元ＩＰアドレスおよび宛先ＩＰアドレスから全システムのフロー利用率管理テーブル１６のフロー検出条件を検索（ステップ３００３）し、対応するフローＩＤを取得する（ステップ３００４）。
【０１１１】
フロー単位統計に含まれるパケット数、バイト数、廃棄数と、フロー利用率管理テーブル１６の割り当て帯域から第１の実施例と同様に、利用率を計算する（ステップ３００５）。計算したフローＩＤの利用率を更新する（ステップ３００６）。最後に、ＮｅｔＦｌｏｗレポートに含まれるすべてフローについてフロー利用率管理テーブルの更新が終了したかを判定する（ステップ３００７）。すべてのフローの更新が終了していない場合は、ステップ３００２からステップ３００７を繰り返し、ＮｅｔＦｌｏｗレポートに含まれる全フローのフロー利用率管理テーブルを更新する。
【０１１２】
その他の処理については、第１の実施の形態と同様である。サーバがトラフィック監視エージェントを備えない場合でも、スイッチのＮｅｔＦｌｏｗエージェントが通知するフロー単位統計を基に、各フローの利用率を計算することで、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを変更することができる。これにより、ネットワークがすいている場合、通信フローに割り当てた帯域を超えて、余剰帯域を利用でき、ネットワークが混雑している場合は、フローに割り当てた帯域までの利用が可能となる。この結果、データ転送時間を最小化することができる。
【０１１３】
本実施例では、フロー統計機構としてＮｅｔＦｌｏｗを用いたが、ｓＦｌｏｗで備えるフローサンプルを基に計算した各フローの利用率の推測値を用いてもよい。
【実施例４】
【０１１４】
第４の実施の形態では、マーカーによる優先制御を行わないネットワークにおいて、ネットワーク管理サーバが、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを判定する例について説明する。優先制御を行わないネットワークでは、帯域利用率の高い物理リンクから離れたスイッチでシェーピングを行っても、利用率の高い物理リンクに到達するまでにゆらぎの影響を大きく受けるため、利用率の高い物理リンクの直前でシェーピングを行う方が良い。
【０１１５】
本発明が実施されるネットワーク制御システムは第１の実施の形態と同様である。ただし、本実施例では、優先制御を行わないため、全スイッチ２〜９が帯域監視機能８０及びシェーパ機能８２を備え、優先制御機能７９は備えない。
【０１１６】
図３１は、本発明の第４の実施の形態のネットワーク制御システムにおけるシステム処理シーケンス図である。
【０１１７】
本実施例では、利用率の高い物理リンクが特定できないとシェーピングを行うスイッチが特定できないため、シェーパの事前設定（ステップ５１１）は行わない。また、マーカーの設定（ステップ５１０）は不要である。
【０１１８】
ネットワーク管理サーバ１は、一定時間ごとに制御方式選択処理１８を起動する。制御方式選択処理１８の処理フローは第１の実施例と同様である。
【０１１９】
制御方式選択処理１８終了後、物理帯域利用率が開始閾値以上の物理リンクへ出力するスイッチに対し、ステップ２４０７でシェーピング開始を指示された通信フローのシェーピング設定を行う（ステップ３１０２）。
【０１２０】
物理リンクＢ１の帯域利用率がシェーピング開始閾値を超える場合、ｂ２フローではスイッチ４に対してシェーピングの設定を行う。具体的には、フロー利用率管理テーブルから取得したフロー検出条件および割り当て帯域を最大帯域として設定する。最大帯域設定後、物理リンク管理テーブル２２のシェーパ機能の欄に、スイッチ名と設定したシーケンス番号を記録し状態をＯＮに変更する。1つの通信フローに対し、複数のスイッチでシェーピングを行う場合は、すべてのスイッチ名と対応するシーケンス番号、状態を記録する。
【０１２１】
その他の処理については、第１の実施の形態と同様である。優先制御を行わないネットワークにおいては、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを判断し、物理帯域利用率の高い物理リンクへの出力スイッチに対してシェーピング設定を行うことで、ネットワークがすいている場合、通信フローに割り当てた帯域を超えて、余剰帯域を利用でき、ネットワークが混雑している場合は、フローに割り当てた帯域までの利用が可能となる。この結果、データ転送時間を最小化することができる。
【実施例５】
【０１２２】
第５の実施の形態では、ＳＴＰ（Ｓｐａｎｎｉｎｇ Ｔｒｅｅ Ｐｒｏｔｏｃｏｌ）を用いて冗長構成をとるネットワークにおいて、本発明を実施する例について説明する。図３２は本発明が実施されるネットワーク制御システムである。スイッチ３〜９の接続が破線のように冗長構成となっている。
【０１２３】
図３３は、本発明の第３の実施の形態のネットワーク制御システムにおけるシステム処理シーケンス図である。
【０１２４】
ネットワーク管理サーバは、ＳＮＭＰを用いてＳＴＰのＭＩＢ情報であるｄｏｔ1ｄＢｒｉｄｇｅ-ｄｏｔ1ｄＳｔｐｄｏｔ1ｄＳｔｐＰｏｒｔＴａｂｌｅ-ｄｏｔ1ｄＳｔｐＰｏｒｔＳｔａｔｅを収集する（ステップ５１６）。
【０１２５】
本実施例では、物理帯域利用率監視処理１５が物理帯域利用率管理テーブル２０及びインタフェース管理テーブル２７を更新する（ステップ３３０１）。
【０１２６】
図３４に本実施例における物理帯域利用率監視より１５の処理フローを示す。ステップ２３０５までは第１の実施の形態と同様の処理を行い、物理帯域利用率管理テーブル２０を更新する。本実施の形態ではさらに、インタフェース管理テーブル２７を取得し（ステップ３４０１）、該当インタフェースの状態に変更があるかを比較する（ステップ３４０２）。インタフェース管理テーブル２７の状態が使用中であるにも関わらず、通知されたＳＴＰのＭＩＢ情報が閉塞ポートの場合は、インタフェース管理テーブル２７の該当インタフェースの状態を閉塞に変更する。逆に、閉塞であるにも関わらず、通知された情報が転送ポートである場合は使用中に変更する（ステップ３４０３）。その他の処理については、第１の実施の形態と同様である。
【０１２７】
インタフェースの状態に変更があった場合は、物理リンク管理処理１７を起動し、物理リンク管理テーブル２２を更新する（ステップ３３０２）
本実施の形態における物理リンク管理処理１７では、ステップ１７０８で取得した各インタフェースＩＤのうち、状態が閉塞のインタフェースは検索候補から除外する。その他の処理については、第１の実施の形態と同様である。
【０１２８】
以上により、ＳＴＰによる冗長構成をとるネットワークにおいては、各スイッチのインタフェースの状態を管理し、状態の更新に伴って物理リンク管理テーブルを更新することで、他の実施の形態と同様に、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを判断することができる。この結果、ネットワークがすいている場合、通信フローに割り当てた帯域を超えて、余剰帯域を利用でき、ネットワークが混雑している場合は、フローに割り当てた帯域までの利用が可能となり、データ転送時間を最小化することができる。
【実施例６】
【０１２９】
第６の実施の形態では、リンクアグリゲーションを用いて冗長構成をとるネットワークにおいて、本発明を実施する例について説明する。図３５は本発明が実施されるネットワーク制御システムである。スイッチ２〜５の接続がリンクアグリゲーションによる冗長構成である。スイッチ２と３の経路は物理リンクＡ１―１、Ａ１―２、Ａ２―１、Ａ２―２で接続されている。Ａ１―１及びＡ１―２はスイッチ３からスイッチ２への接続であり、Ａ２―１及びＡ２―２はスイッチ２から３への接続である。同様にＢ１―１及びＢ１―２はスイッチ４から２への接続、Ｂ２―１及びＢ２―２はスイッチ２から４への接続、Ｃ１―１及びＣ１―２はスイッチ５から２への接続、Ｃ２―１及びＣ２―２はスイッチ２から５への接続である。
【０１３０】
図３６は、本発明の第６の実施の形態のネットワーク制御システムにおける処理シーケンス図である。
【０１３１】
ステップ５０９において、第１の実施の形態と同様に部物リンク管理テーブル２２を生成する。ただし、本実施の形態では、物理リンク管理テーブル２２の生成時に使用するリンク管理テーブル２８は、アグリゲーションされたリンクをまとめて管理する。物理リンクＡ１−１とＡ１−２とをまとめてＡ１、Ａ２―１とＡ２―２をまとめてＡ２として管理する。同様に、物理リンクＢ１―１とＢ１―２をまとめてＢ１、Ｂ２―１とＢ２−２をまとめてＢ２、Ｃ１―１とＣ１―２をまとめてＣ１、Ｃ２―１とＣ２−２をまとめてＣ２として管理する。
【０１３２】
さらに、アグリゲーションされたリンクについては、アグリゲーション管理テーブル４０で管理する。
【０１３３】
図３７にアグリゲーション管理テーブル４０の構成例を示す。アグリゲーション管理テーブル４０では、アグリゲーションリンクのＩＤ、アグリゲーションリンクを構成する物理リンクのＩＤ、アグリゲーションリンクで採用する分散アルゴリズム及び入力インタフェース、各物理リンクの送信元インタフェースのインタフェースＩＤ、各物理リンクの宛先インタフェースのインタフェースＩＤである。
【０１３４】
リンクアグリゲーションでは、採用する分散アルゴリズムによって、物理リンクの帯域利用率に偏りが生じる。そのため、分散アルゴリズムによって物理リンクの管理方法が異なる。
【０１３５】
リンクアグリゲーションにおける分散アルゴリズムには、ポートベース、アドレスベース、ラウンドロビンの３種類があり、スイッチにより分散アルゴリズムが異なる。
【０１３６】
ポートベースの分散アルゴリズムの場合、入力ポート（入力インタフェース）を基に、出力ポート（出力インタフェース）を決定するため、アグリゲーションリンクを構成する各物理リンクの帯域使用率に偏りが生じる。そのため、物理リンク管理テーブル２２及び物理帯域利用率管理テーブル２０は、実際の物理リンクごとに管理する。アグリゲーション管理テーブル４０では、出力インタフェースに対応する入力インタフェースを管理する。アグリゲーションリンクがＡ１の場合、物理リンクはＡ１―１、Ａ１―２である。
【０１３７】
ラウンドロビンの分散アルゴリズムの場合、１フレームづつ順番に出力インタフェースを変えて出力する。アグリゲーションリンクを構成する物理リンクの帯域利用率に偏りは生じないため、物理リンク管理テーブル２２及び物理帯域利用率管理テーブル２０は、アグリゲーションされたリンクで管理する。アグリゲーションリンクがＡ１の場合、アグリゲーションリンクを構成する物理リンクＡ１―１及びＡ１―２をまとめてＡ１で管理する。
【０１３８】
アドレスベースの分散アルゴリズムの場合、ＭＡＣアドレス、ＩＰアドレス、ＴＣＰのポート番号などを基に出力ポートを決定する。送信元アドレスと宛先アドレスのハッシュ値を基にする場合は、アグリゲーションリンクを構成する物理リンクの帯域利用率に偏りが生じにくいため、物理リンク管理テーブル２２及び物理帯域利用率管理テーブル２０は、アグリゲーションされたリンクで管理する。
【０１３９】
ステップ５０９において物理リンク管理テーブル生成後、アグリゲーションリンク処理を起動し、アグリゲーション管理テーブル４０を参照し、ポートベースの分散アルゴリズムを用いる物理リンクについて、物理リンク管理テーブルを更新する（ステップ３６０１）。
【０１４０】
図３８にアグリゲーションリンク処理の処理フローを示す。まず、物理リンク管理テーブル２２に登録された通信フローが経由する物理リンクを１つ取得する（ステップ３８０１）。取得した物理リンクについてアグリゲーション管理テーブル４０に登録があるかを判定する（ステップ３８０２）。
【０１４１】
登録がある場合（ステップ３８０２でＹｅｓ）の場合は、アグリゲーション管理テーブル４０の分散アルゴリズムを参照し、分散アルゴリズムがポートベースかを判定する（ステップ３８０３）。
【０１４２】
分散アルゴリズムがポートベースの場合（ステップ３８０３でＹｅｓ）の場合は、該当物理リンクの1つ前の物理リンクを物理リンク管理テーブルから取得する（ステップ３８０４）。
【０１４３】
1つ前の物理リンクの宛先インタフェースＩＤをリンク管理テーブル２８から取得する（ステップ３８０５）。
【０１４４】
ステップ３８０５で取得した宛先インタフェースＩＤをもとに、該当アグリゲーション管理テーブル４０の入力インタフェースを参照し、物理リンクＩＤを取得し（ステップ３８０６）、該当フローが経由する物理リンクを特定する（ステップ３８０７）。
【０１４５】
次に、特定した物理リンクでアグリゲーションリンクを置き換え、物理リンク管理テーブル２２を更新する（ステップ３８０８）。
【０１４６】
最後に、全通信フローの物理リンクの検索が終了したかを判定（ステップ３８０９）し、終了していない場合は、ステップ３８０１から３８０９を繰り返し、アグリゲーションリンクのうち、ポートベースの分散アルゴリズムを用いるアグリゲーションリンクの物理リンク管理テーブル２２を更新する。
【０１４７】
図３９に、更新した物理リンク管理テーブル２２の構成例を示す。アグリゲーションリンクのうち、ポートベースの分散アルゴリズムを用いるＢ１、Ｂ２リンクでは実際の物理リンク（Ｂ１―１、Ｂ１―２、Ｂ２―１、Ｂ２―２）を用い、ラウンドロビン、アドレスベースの分散アルゴリズムを用いるＡ１、Ａ２、Ｃ１、Ｃ２リンクでは、アグリゲーションしたリンク（Ａ１、Ａ２、Ｃ１、Ｃ２）を物理リンク管理テーブルに用いている。また、ポートベースの分散アルゴリズムを用いるアグリゲーションリンクについては、物理帯域利用率管理テーブルも物理リンクごとに更新する。
【０１４８】
物理リンク管理テーブル２２に、アグリゲーションリンク処理によって更新されたテーブルを用いること、物理帯域利用率管理テーブルを分散アルゴリズムに従って、アグリゲーションリンクまたは物理リンクごとに管理すること以外は、第１の実施の形態と同様である。
【０１４９】
以上により、リンクアグリゲーションによって冗長構成をとるネットワークにおいては、リンクアグリゲーションの分散アルゴリズムに従って、アグリゲーションリンク、または物理リンクごとにリンクを管理することで、他の実施の形態と同様に、物理リンクの帯域利用率と、通信フローに割り当てた帯域の利用率を基に、通信フローに対してシェーパを適用するか否かを判断することができる。この結果、ネットワークがすいている場合、通信フローに割り当てた帯域を超えて、余剰帯域を利用でき、ネットワークが混雑している場合は、フローに割り当てた帯域までの利用が可能となり、データ転送時間を最小化することができる。
【０１５０】
続いて、前述した各実施の形態によって得られるネットワーク制御システムの特徴的な構成について、以下に列記する。
【０１５１】
（１）複数のサーバと、複数の通信装置と、前記サーバ及び通信装置の通信を管理するネットワーク管理サーバから構成するネットワーク制御システムであって、
前記複数の通信装置は、
物理インタフェースが送受信する帯域情報を監視する監視部と、
監視した帯域情報をネットワーク管理サーバに通知する通知部と、
優先制御、マーキング、シェーピングのうちいずれかの処理を行うネットワーク制御部とを備え、
前記ネットワーク管理サーバは、
閾値を保持し、
前記複数の通信装置が通知する物理インタフェースの帯域情報を収集し、前記通信装置の物理リンクの帯域利用率を監視する物理帯域利用率監視部と、
前記複数のサーバ間の通信フローと、通信フローが経由する物理リンクの対応関係を管理する物理リンク管理部と、
前記通信装置の物理リンクの帯域利用率と、前記閾値とを比較し、
利用率が当該閾値を超えた場合に、前記対応関係に基づいて、当該物理リンクを経由する通信フローの設定変更が必要であることを判断する通信フロー特定部を有することを特徴とするネットワーク制御システム。
【０１５２】
（２）前記（１）のネットワーク制御システムであって、
前記通信装置は、当該通信装置を通過する通信フローと通信フローのネットワーク制御設定の対応を管理し、
前記管理サーバは、
前記特定した通信フローが経由する複数の通信装置から特定の通信装置を選択し、通信装置内の前記フローに対してシェーピング設定を行う制御方式設定部を有することを特徴とするネットワーク制御システム。
【０１５３】
（３）前記（２）に記載のネットワーク制御システムであって、
前記ネットワーク管理サーバは、さらに、第二の閾値と、
通信フロー毎に割り当てられた帯域と利用率を監視し、保持する利用率監視部を備え、
前記物理リンクの物理帯域の利用率が前記第一の閾値を超える場合に、
前記通信フローの利用率と、前記第二の閾値とを比較し、
前記通信フローの利用率が前記第二の閾値を超える場合に、前記対応関係に基づいて、当該物理リンクを経由する通信フローのうち、前記第二の閾値を超える通信フローに対し、シェーピングが必要であることを示すことを特徴とするネットワーク制御システム。
【０１５４】
（４）前記（３）に記載のネットワーク制御システムであって、
前記通信フローと、通信フローが経由する物理リンクとの対応関係を管理する通信フローは、テナントの情報処理システムを構成するサーバ間で発生する通信フローであることを特徴とするネットワーク制御システム。
【０１５５】
（５）前記（３）に記載のネットワーク制御システムであって、
前記サーバは、サーバが送受信するトラフィックを通信フローごとに監視するトラフィック監視部を設け、
前記監視したトラフィック情報を前記ネットワーク管理サーバへ通知することを特徴とするネットワーク制御システム。
【０１５６】
（６）前記（３）に記載ののネットワーク制御システムであって、
前記通信装置は、通信フローごとに監視するトラフィック監視部を設け、
前期監視したトラフィック情報を前記ネットワーク管理サーバへ通知することを特徴とするネットワーク制御システム。
【０１５７】
（７）前記（３）に記載のネットワーク制御システムであって、
テナントの情報処理システムを構成するサーバが、一定時間に処理可能な最大処理数と、前記処理において転送する平均的なデータサイズに基づいて、前記通信フローの利用率の最大値を計算し、前記計算した最大値を前記フローの利用率とすることを特徴とするネットワーク制御システム。
【０１５８】
（８）前記（１）に記載のネットワーク制御システムであって、
前記通信フローにシェーピングを行う通信装置は、前記通信フローにマーキングを行う通信装置より前に配置することを特徴とするネッワーク制御システム。
【０１５９】
（９）前記（１）に記載のネットワーク制御システムであって、
前期通信フローにシェーピングを行う通信装置は、前記利用率の高い物理インタフェースを有する通信装置以外の通信装置であることを特徴とするネットワーク制御システム。
【０１６０】
（１０）前記（１）に記載のネットワーク制御システムであって、
前記ネットワーク管理サーバはさらに、通信装置の物理リンクの状態を管理し、前記物理リンクの状態変更に伴い、前記サーバ間の通信フローと、通信フローが経由する物理リンクとの対応関係を更新することを特徴とするネットワーク制御システム。
【０１６１】
（１１）前記（１）に記載のネットワーク制御システムであって、
前記通信装置の物理リンクの状態は、スパニングツリープロトコルが規定するポートの状態であることを特徴とするネットワーク制御システム。
【０１６２】
（１２）前記（１）に記載のネットワーク制御システムであって、
前記ネットワーク管理サーバはさらに、リンクアグリゲーションリンクとアグリゲーションリンクを構成する物理リンクとの対応関係とを管理し、
通信フローがアグリゲーションリンクを経由する場合は、前記サーバ間の通信フローと、通信フローが経由する物理リンクとの対応関係に、アグリゲーションリンクとの対応関係を用いること特徴とするネットワーク制御システム。
【０１６３】
（１３）前記（１２）に記載のネットワーク制御システムであって、
前記管理サーバはさらに、アグリゲーションリンクと構成する物理リンクと、アグリゲーションリンクで使用する分散アルゴリズムとの対応関係を保持し、
前記分散アルゴリズムに基づいて、前記サーバ間の通信フローと、通信フローが経由するリンクとの対応関係に、アグリゲーションリンクまたは物理リンクのどちらかを選択することを特徴とするネットワーク制御システム。
【０１６４】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【０１６５】
１  ネットワーク管理サーバ
２、３、４、５、６、７、８、９  スイッチ
１１、７１、３１１  ＣＰＵ
１２、７２、３１２  メモリ
１３、７５、３１４  インタフェース
１４、７４、３１３  バス
１５  物理帯域利用率監視処理
１６  フロー利用率管理処理
１７  物理リンク管理処理
１８  制御方式選択処理
１９  テーブル初期化処理
２０  物理帯域利用率管理テーブル
２１  フロー利用率管理テーブル
２２  物理リンク管理テーブル
２３  閾値管理テーブル
２４  物理構成管理テーブル群
２５  テナントシステム構成管理テーブル群
４０  アグリゲーション管理テーブル
７３  ネットワーク制御部
７７  制御設定管理テーブル
７８  インタフェース監視処理
７９  優先制御機能
８０  帯域監視機能
８１  マーカー機能
８２  シェーパ機能
３１５  システムアプリケーション
３１６  トラフィック監視エージェント
【図１】
2012182605.tif 000003
【図２】
2012182605.tif 000004
【図３】
2012182605.tif 000005
【図４】
2012182605.tif 000006
【図５】
2012182605.tif 000007
【図６】
2012182605.tif 000008
【図７】
2012182605.tif 000009
【図８】
2012182605.tif 000010
【図９】
2012182605.tif 000011
【図１０】
2012182605.tif 000012
【図１１】
2012182605.tif 000013
【図１２】
2012182605.tif 000014
【図１３】
2012182605.tif 000015
【図１４】
2012182605.tif 000016
【図１５】
2012182605.tif 000017
【図１６】
2012182605.tif 000018
【図１７】
2012182605.tif 000019
【図１８】
2012182605.tif 000020
【図１９】
2012182605.tif 000021
【図２０】
2012182605.tif 000022
【図２１】
2012182605.tif 000023
【図２２】
2012182605.tif 000024
【図２３】
2012182605.tif 000025
【図２４】
2012182605.tif 000026
【図２５】
2012182605.tif 000027
【図２６】
2012182605.tif 000028
【図２７】
2012182605.tif 000029
【図２８】
2012182605.tif 000030
【図２９】
2012182605.tif 000031
【図３０】
2012182605.tif 000032
【図３１】
2012182605.tif 000033
【図３２】
2012182605.tif 000034
【図３３】
2012182605.tif 000035
【図３４】
2012182605.tif 000036
【図３５】
2012182605.tif 000037
【図３６】
2012182605.tif 000038
【図３７】
2012182605.tif 000039
【図３８】
2012182605.tif 000040
【図３９】
2012182605.tif 000041