(57)【特許請求の範囲】
【請求項１】
端末装置と、
前記端末装置を収容するエッジ装置と、
複数のサーバ装置と、
前記エッジ装置と、前記複数のサーバ装置のそれぞれを接続する複数のネットワークスイッチと、
前記エッジ装置及び前記複数のネットワークスイッチの各々におけるパケットの転送先を制御するフロー制御装置と
を備える通信切替システムにおいて、
前記エッジ装置は、
パケットのペイロードから、アプリケーションフロー情報を特定するパケット解析部と、ここで、前記アプリケーションフロー情報は、アプリケーションレイヤのデータに基づく情報であり、パケット転送制御の単位であるフローを決定するために使用され、
フロー識別子の割当要求を、前記フロー制御装置に送信するフロー割当要求部と、ここで、前記フロー識別子は、前記アプリケーションフロー情報毎に割り当てられ、前記エッジ装置及び前記各ネットワークスイッチが、前記パケットの転送先を決定するための情報であり、
前記パケットのヘッダ領域に、フロー識別子を格納するヘッダ変換部と、
フローテーブルが格納されるフローテーブル格納部と、ここで、前記フローテーブルは、前記アプリケーションフロー情報及び前記フロー識別子を含み、
前記フローテーブルに基づいてパケットを送信するパケット送信部と
を備え、
前記フロー制御装置は、
前記フロー割当要求部から、前記割当要求を受信する割当要求受信部と、
前記フロー識別子を、前記割当要求を送信したエッジ装置に送信するフロー識別子送信部と、
前記フロー識別子を含むパケットの転送設定を、前記各ネットワークスイッチに設定するスイッチ設定要求部と、
前記複数のサーバ装置の各々の運用状態を監視し、前記運用状態に基づいて、前記各ネットワークスイッチの前記フロー識別子を含むパケットの転送設定を、前記スイッチ設定要求部に変更するように指示するサーバ管理部と
を備え、
前記複数のサーバ装置は、前記複数のネットワークスイッチを介して、階層的に構成され、前記複数のサーバ装置の各々は、各階層において、垂直に分散されたサーバ処理の一部を行い、
前記フロー制御装置は、
前記複数のサーバ装置における第１のサーバ装置に対して、仮ＩＰアドレスを割り当てるＩＰアドレス割当部と、
前記仮ＩＰアドレスを使用して、前記垂直分散されたサーバ処理の一部を処理するサーバ処理アプリケーションを、前記第１のサーバ装置に起動させる処理ＡＰ起動要求部と
を更に備え、
前記複数のネットワークスイッチは、前記フロー識別子が設定された、第１のネットワークスイッチ及び第２のネットワークスイッチを備え、
前記第１のネットワークスイッチは、前記第１のサーバ装置の前に前記エッジ装置からのパケットを受信し、
前記第２のネットワークスイッチは、前記第１のサーバ装置からのパケットを受信し、
前記スイッチ設定要求部は、
前記フロー識別子を含むパケットを、その転送先を転送先アドレスから前記仮ＩＰアドレスに変更して転送する転送設定を、前記第１のネットワークスイッチに設定し、
前記仮ＩＰアドレスを送信元として含むパケットを、その転送先を前記第１のサーバ装置の後段に配置された、前記複数のサーバ装置に含まれる第２のサーバ装置のＩＰアドレスに変更して転送する転送設定を、前記第２のネットワークスイッチに設定する
通信切替システム。
【請求項２】
前記サーバ管理部は、
前記運用状態に基づいて、前記サーバ処理アプリケーションを起動させる前記第１のサ
ーバ装置を決定する
請求項１に記載の通信切替システム。
【請求項３】
前記ヘッダ領域は、送信元ＭＡＣアドレス領域である
請求項１又は２に記載の通信切替システム。
【請求項４】
端末装置と、
前記端末装置を収容するエッジ装置と、
複数のサーバ装置と、
前記エッジ装置と、前記複数のサーバ装置のそれぞれを接続する複数のネットワークスイッチと、
前記エッジ装置及び前記複数のネットワークスイッチの各々におけるパケットの転送先を制御するフロー制御装置と
を備える通信切替システムにおいて、
前記エッジ装置のパケット解析部が、パケットのペイロードから、アプリケーションフロー情報を特定するステップと、ここで、前記アプリケーションフロー情報は、アプリケーションレイヤのデータに基づく情報であり、パケット転送制御の単位であるフローを決定するために使用され、
前記エッジ装置のフロー割当要求部が、フロー識別子の割当要求を、前記フロー制御装置に送信するステップと、ここで、前記フロー識別子は、前記アプリケーションフロー情報毎に割り当てられ、前記エッジ装置及び前記各ネットワークスイッチが、前記パケットの転送先を決定するための情報であり、
前記フロー制御装置の割当要求受信部が、前記フロー割当要求部から、前記割当要求を受信するステップと、
前記フロー制御装置のフロー識別子送信部が、前記フロー識別子を、前記割当要求を送信したエッジ装置に送信するステップと、
前記フロー制御装置のスイッチ設定要求部が、前記フロー識別子を含むパケットの転送設定を、前記各ネットワークスイッチに設定するステップと、
前記エッジ装置のヘッダ変換部が、前記パケットのヘッダ領域に、前記フロー識別子を格納するステップと、
前記エッジ装置のパケット送信部が、フローテーブル格納部に格納されているフローテーブルに基づいてパケットを送信するステップと、
ここで、前記フローテーブルは、前記アプリケーションフロー情報及び前記フロー識別子を含み、
前記フロー制御装置のサーバ管理部が、前記サーバ装置の運用状態を監視するステップと、
前記フロー制御装置のサーバ管理部が、前記運用状態に基づいて、前記各ネットワークスイッチの前記フロー識別子を含むパケットの転送設定を、前記スイッチ設定要求部に変更するように指示するステップと、
前記複数のサーバ装置は、前記複数のネットワークスイッチを介して、階層的に構成され、前記複数のサーバ装置の各々は、各階層において、垂直に分散されたサーバ処理の一部を行い、
前記フロー制御装置が、前記複数のサーバ装置における第１のサーバ装置に対して、仮ＩＰアドレスを割り当てるステップと、
前記フロー制御装置の処理ＡＰ起動要求部が、前記仮ＩＰアドレスを使用して、前記垂直分散されたサーバ処理の一部を処理するサーバ処理アプリケーションを、前記第１のサーバ装置に起動させるステップと
を備え、
前記複数のネットワークスイッチは、前記フロー識別子が設定された、第１のネットワークスイッチ及び第２のネットワークスイッチを備え、
前記第１のネットワークスイッチは、前記第１のサーバ装置の前に前記エッジ装置からのパケットを受信し、
前記第２のネットワークスイッチは、前記第１のサーバ装置からのパケットを受信し、
前記スイッチ設定要求部が転送設定を設定するステップは、
前記フロー識別子を含むパケットを、その転送先を転送先アドレスから前記仮ＩＰアドレスに変更して転送する転送設定を、前記第１のネットワークスイッチに設定するステップと、
前記仮ＩＰアドレスを送信元として含むパケットを、その転送先を前記第１のサーバ装置の後段に配置された、前記複数のサーバ装置に含まれる第２のサーバ装置のＩＰアドレスに変更して転送する転送設定を、前記第２のネットワークスイッチに設定するステップと
を備える
通信切替方法。
【請求項５】
前記フロー制御装置のサーバ管理部が、前記運用状態に基づいて、前記サーバ処理アプリケーションを起動させる前記第１のサーバ装置を決定するステップを更に具備する
請求項４に記載の通信切替方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信切替システムに関し、特に、アプリケーションレイヤのデータに基づいて決定されるフロー単位に、転送処理を切り替えることにより、負荷を分散する通信切替システムに関する。
【背景技術】
【０００２】
近年、ＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ）が、電話サービスとして提供されており、ＶｏＩＰを実現するための制御プロトコルとして、ＳＩＰ（Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）が利用されている。また、ＳＩＰは、ＩＭＳ（ＩＰ  Ｍｕｌｔｉｍｅｄｉａ  Ｓｕｂｓｙｓｔｅｍ）においても利用されている。
【０００３】
ＶｏＩＰの普及や携帯電話網の発展に伴い、通信切替システムにおけるＳＩＰサーバの負荷や信頼性が問題となってきている。この問題の１つの解決方法として、“Ｃａｒｒｉｅｒ  ＶｏＩＰ／ＳＩＰ  Ｆｒｏｎｔ−Ｅｎｄ  Ｓｏｌｕｔｉｏｎｓ”（非特許文献１）で示すようなＳＩＰセッションの負荷分散装置の導入が考えられる。図１２は、負荷分散装置１２０２を利用して、アプリケーションレイヤのデータに基づいて決定されるフロー単位に、転送処理を切り替える従来の通信切替システム１２の構成例である。図１２の通信切替システム１２は、端末装置１２００−１〜１２００−４、エッジ装置１２０１−１〜１２０１−２、負荷分散装置１２０２及びサーバ装置１２０３−１〜１２０３−４で構成されている。例えば、通信切替システム１２の端末装置１２００−１が送信したパケットは、エッジ装置１２０１−１を介して、負荷分散装置１２０２へ届く。負荷分散装置１２０２は、サーバの負荷状況や障害等のサーバの運用状態に応じて、サーバ１２０３−１〜１２０３−４のうち、適切なサーバへ、端末装置１２００−１が送信したパケットを転送する。
【０００４】
負荷分散装置１２０２を設置して、サーバ１２０３の負荷を解消する際には、以下のような問題点が挙げられる。第１の問題点は、負荷分散装置１２０２の導入コストである。負荷分散装置１２０２は、通信トラフィックが集中する箇所に配備されるため、高速な回線に対応する必要があり、高い処理能力が要求される。そのため、負荷分散装置１２０２は、専用のハードウェアによって構成される場合が多い。第２の問題点は、サーバ１２０３の台数を、安易に増やすことができない点である。サーバ１２０３の台数が増えると、当然ながら、負荷分散装置１２０２で処理する通信量が増え、負荷分散装置１２０２の処理能力の問題に、直接関係することになるためである。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】“Ｃａｒｒｉｅｒ  ＶｏＩＰ／ＳＩＰ  Ｆｒｏｎｔ−Ｅｎｄ  Ｓｏｌｕｔｉｏｎｓ”＜ｈｔｔｐ：／／ｗｗｗ．ｒａｄｗａｒｅ．ｃｏ．ｊｐ／ｓｏｌｕｔｉｏｎ／ｐｄｆ／Ｃａｒｒｉｅｒ＿ＶｏＩＰＳＩＰ＿Ｓｏｌｕｔｉｏｎ．ｐｄｆ＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、負荷分散装置を利用せずに、アプリケーションレイヤのデータに基づいて決定されるフロー単位に、転送処理を切り替えることにより、負荷を分散する通信切替システムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の通信切替システムは、端末装置と、前記端末装置を収容するエッジ装置と、サーバ装置と、前記エッジ装置と、前記サーバ装置を接続するネットワークスイッチと、前記エッジ装置及び前記ネットワークスイッチのパケットの転送先を制御するフロー制御装置とを備え、前記エッジ装置は、パケットのペイロードから、アプリケーションフロー情報を特定するパケット解析部と、フロー識別子の割当要求を、前記フロー制御装置に送信するフロー割当要求部と、前記パケットのヘッダ領域に、フロー識別子を格納するヘッダ変換部と、フローテーブルが格納されるフローテーブル格納部と、前記フローテーブルに基づいてパケットを送信するパケット送信部とを備え、前記フロー制御装置は、前記フロー割当要求部から、前記割当要求を受信する割当要求受信部と、前記フロー識別子を、前記割当要求を送信したエッジ装置に送信するフロー識別子送信部と、前記フロー識別子を含むパケットの転送設定を、前記ネットワークスイッチに設定するスイッチ設定要求部と、前記サーバ装置の運用状態を監視し、前記運用状態に基づいて、前記ネットワークスイッチの前記フロー識別子を含むパケットの転送設定を、前記スイッチ設定要求部に変更するように指示するサーバ管理部とを備える。
【０００８】
本発明の通信切替方法は、端末装置と、前記端末装置を収容するエッジ装置と、サーバ装置と、前記エッジ装置と、前記サーバ装置を接続するネットワークスイッチと、前記エッジ装置及び前記ネットワークスイッチの、パケットの転送先を制御するフロー制御装置とを備える通信切替システムにより実施される通信切替方法である。前記エッジ装置のパケット解析部が、パケットのペイロードから、アプリケーションフロー情報を特定するステップと、前記エッジ装置のフロー割当要求部が、フロー識別子の割当要求を、前記フロー制御装置に送信するステップと、前記エッジ装置のヘッダ変換部が、前記パケットのヘッダ領域に、フロー識別子を格納するステップと、前記エッジ装置のパケット送信部が、フローテーブル格納部に格納されているフローテーブルに基づいてパケットを送信するステップとを含み、前記フロー制御装置の割当要求受信部が、前記フロー割当要求部から、前記割当要求を受信するステップと、前記フロー制御装置のフロー識別子送信部が、前記フロー識別子を、前記割当要求を送信したエッジ装置に送信するステップと、前記フロー制御装置のスイッチ設定要求部が、前記フロー識別子を含むパケットの転送設定を、前記ネットワークスイッチに設定するステップと、前記フロー制御装置のサーバ管理部が、前記サーバ装置の運用状態を監視するステップと、前期フロー制御装置のサーバ管理部が、前記運用状態に基づいて、前記ネットワークスイッチの前記フロー識別子を含むパケットの転送設定を、前記スイッチ設定要求部に変更するように指示するステップとを含む。
【発明の効果】
【０００９】
本発明によれば、負荷分散装置を利用せずに、アプリケーションレイヤのデータに基づいて決定されるフロー単位に、転送処理を切り替える通信切替システムを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の第１実施形態における通信切替システム１の構成例である。
【図２】図２は、本発明の第１実施形態におけるエッジ装置１０１の機能ブロック図である。
【図３】図３は、本発明の第１実施形態におけるフロー制御装置１０４の機能ブロック図である。
【図４】図４は、本発明の第１実施形態の通信切替システム１において、送受信されるパケットフォーマットの例である。
【図５】図５は、本発明の第１実施形態の通信切替システム１において、フローテーブル５０の例である。
【図６】図６は、本発明の第１実施形態の通信切替システム１において、フロー割当テーブル６０の例である。
【図７】図７は、本発明の第１実施形態における通信切替システム１において、フロー識別子５０１の割り当て方法を説明するためのフローチャートである。
【図８】図８は、本発明の第１実施形態における通信切替システム１において、端末装置１００の要求に基づくサーバ装置１０３の処理を、他のサーバ装置１０３に変更する方法を説明するためのフローチャートである。
【図９】図９は、本発明の第２実施形態における通信切替システム１の構成例である。
【図１０】図１０は、本発明の第２実施形態におけるフロー制御装置１０４の機能ブロック図である。
【図１１】図１１は、本発明の第２実施形態における通信切替システム１において、端末装置１００の要求に基づくサーバ装置１０３、１０６の処理を、他のサーバ装置１０３、１０６に変更する方法を説明するためのフローチャートである。
【図１２】図１２は、負荷分散装置１２０２を利用して、アプリケーションレイヤのデータに基づいて決定されるフロー単位に、転送処理を切り替える従来の通信切替システム１２の構成例である。
【発明を実施するための形態】
【００１１】
（第１実施形態）
添付図面を参照して、本発明の第１実施形態による通信切替システム１を以下に説明する。
【００１２】
［構成の説明］
はじめに、本実施形態における通信切替システム１の構成の説明を行う。図１は、本発明の第１実施形態における通信切替システム１の構成例である。図１の通信切替システム１は、端末１００−１〜１００−４、前記端末１００−１〜１００−４を収容するエッジ装置１０１−１〜１０１−２、ネットワークスイッチ１０２−１〜１０２−２、サーバ装置１０３−１〜１０３−４及び通信切替システム１のパケットの転送を制御するフロー制御部１０４から構成される。ネットワークスイッチ１０２−１〜１０２−２は、パケットヘッダの情報に基づき、転送先を指定でき、かつパケットヘッダの書き換えることができるスイッチである。例えば、ＯｐｅｎＦｌｏｗ技術を利用したネットワークスイッチが該当する。
【００１３】
図２は、本発明の第１実施形態におけるエッジ装置１０１の機能ブロック図である。エッジ装置１０１は、パケット受信部２００、パケット解析部２０１、フロー検索部２０２、フローテーブル格納部２０３、フロー割当要求部２０４、ヘッダ変換部２０５及びパケット送信部２０６を備える。
【００１４】
パケット受信部２００は、通信切替システム１内の隣接装置からパケットを受信する。
【００１５】
パケット解析部２０１は、受信したパケットの内容を解析して、フローを決定する情報であるアプリケーションフロー情報５００を特定するための情報を抽出する。
【００１６】
フロー検索部２０２は、アプリケーションフロー情報５００を検索キーとして、フローテーブル格納部２０３に格納されているフローテーブル５０を検索し、フロー識別子５０１を特定する。図５は、本発明の第１実施形態の通信切替システム１において、フローテーブル５０の例である。フローテーブル５０は、アプリケーションフロー情報５００、フロー識別子５０１及び割当状態５０２を備える。割当状態５０２は、該当のアプリケーションフロー情報５００に対応するフロー識別子５０１を、フロー制御装置１０４に対して割当要求中であるかどうかを管理する。
【００１７】
フロー割当要求部２０４は、フローテーブル５０に、アプリケーションフロー情報に対応するフロー識別子が存在しない場合に、フロー制御装置１０４へフロー識別子の割当要求を行う。
【００１８】
ヘッダ変換部２０５は、フロー識別子をパケットヘッダ領域に格納する。
【００１９】
パケット送信部２０６は、フロー識別子をパケットヘッダ領域に格納したパケットを、通信切替システム１内の隣接装置に送信する。
【００２０】
図３は、本発明の第１実施形態におけるフロー制御装置１０４の機能ブロック図である。フロー制御装置１０４は、割当要求受信部３００、フロー割当部３０１、フロー割当テーブル格納部３０２、スイッチ設定部３０３、フロー識別子送信部３０４、サーバ管理部３０５、フロー検索部３０６、スイッチ設定変更部３０７及びスイッチ設定要求部３０８を備える。
【００２１】
割当要求受信部３００は、エッジ装置１０１−１〜１０１−２からフロー識別子の割当要求を受信する。
【００２２】
フロー割当部３０１は、割当要求に基づき、フロー識別子を割り当て、フロー割当テーブル格納部３０２に格納されているフロー割当テーブル６０を使用して、割り当てたフロー識別子を記録する。図６は、本発明の第１実施形態の通信切替システム１において、フロー割当テーブル６０の例である。フロー割当テーブル６０は、アプリケーションフロー情報５００及びフロー識別子５０１を備える。
【００２３】
スイッチ設定部３０３は、割り当てたフロー識別子５０１に基づき、ネットワークスイッチ１０２−１〜１０２−２の経路設定情報を生成する。
【００２４】
フロー識別子送信部３０４は、割り当てたフロー識別子５０１を、割当要求を送信したエッジ装置１０１−１〜１０１−２へ送信する。
【００２５】
サーバ管理部３０５は、サーバ装置１０３−１〜１０３−４の負荷状況や障害等の運用状態を監視して、アプリケーションレイヤのデータに基づくフロー単位（アプリケーションフロー情報５００単位）で、処理を行うサーバ装置を変更するかどうかを判断する。
【００２６】
フロー検索部３０６は、アプリケーションフロー情報５００を検索キーとして、フロー割当テーブル格納部３０２に格納されているフロー割当テーブル６０を検索して、ネットワークスイッチ１０２−１〜１０２−２の経路設定情報を変更するフロー識別子を決定する。
【００２７】
スイッチ設定変更部３０７は、経路設定情報を変更するフロー識別子に基づき、ネットワークスイッチ１０２−１〜１０２−２の経路設定情報を生成する。
【００２８】
スイッチ設定要求部３０８は、スイッチ設定部３０３又はスイッチ設定変更部３０７が生成した経路設定情報を、ネットワークスイッチ１０２−１〜１０２−２に送信する。
【００２９】
［動作方法の説明］
次に、本実施形態における通信切替システム１において、通信切替方法の説明を行う。端末装置１００−１とサーバ装置１０３−１が通信する場合を例にして説明を行う。動作方法の説明のために、サーバ装置１０３−１のＩＰアドレスを“Ａ”とし、サーバ装置１０３−２のＩＰアドレスを“Ｂ”とする。端末装置１００−１が、宛先ＩＰアドレスに、サーバ装置１０３−１のＩＰアドレス“Ａ”を付与して、パケットを送信した場合の動作方法について説明する。
【００３０】
図７は、本発明の第１実施形態における通信切替システム１において、フロー識別子５０１の割り当て方法を説明するためのフローチャートである。
【００３１】
（ステップＳ７００）
パケット受信部２００は、端末装置１００−１が送信したパケットを受信する。
【００３２】
（ステップＳ７０１）
パケット解析部２０１は、パケットの解析を行う。図４は、本発明の第１実施形態の通信切替システム１において、送受信されるパケットフォーマットの例である。パケットフォーマットは、宛先ＭＡＣアドレス４００、送信元ＭＡＣアドレス４０１、タイプ４０２、ＩＰヘッダ４０３、Ｌ４ヘッダ４０４、ペイロード４０５及びＦＣＳ（Ｆｒａｍｅ    Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）４０６で構成される。パケット解析部２０１は、ペイロード４０５に格納される情報に基づいて、アプリケーションフロー情報５００を特定する。例えば、ＳＩＰの場合には、アプリケーションフロー情報５００を特定するためのペイロード４０５に格納される情報として、Ｃａｌｌ−ＩＤを利用することが考えられる。
【００３３】
（ステップＳ７０２）
フロー検索部２０２は、アプリケーションフロー情報５００を検索キーとして、フローテーブル５０から、対応するフロー識別子５０１を検索する。対応するフロー識別子５０１が、フローテーブル５０に存在しない場合には、エッジ装置１０１−１の処理は、ステップＳ７０３に進み、対応するフロー識別子５０１が、フローテーブル５０に存在する場合には、エッジ装置１０１−１の処理は、ステップＳ７１０に進む。
【００３４】
（ステップＳ７０３）
フロー割当要求部２０４は、フローテーブル５０に、アプリケーションフロー情報５００と割当要求中を示す情報を記録する。
【００３５】
（ステップＳ７０４）
フロー割当要求部２０４は、フロー識別子５０１の割当要求をフロー制御装置１０４に送信する。
【００３６】
（ステップＳ７０５）
割当要求受信部３００は、フロー識別子５０１の割当要求を受信する。フロー割当部３０１は、割当要求に基づき、フロー識別子５０１を割り当てる。また、フロー割当部３０１は、アプリケーションフロー情報５００と、割り当てたフロー識別子５０１をフロー割当テーブル６０に登録する。
【００３７】
（ステップＳ７０６）
スイッチ設定部３０３は、フロー識別子５０１を基に、ネットワークスイッチ１０２−１の経路設定情報を生成する。スイッチ設定要求部３０８は、生成した経路設定情報を、ネットワークスイッチ１０２−１に送信する。この経路設定情報は、ネットワークスイッチ１０２−１が、パケットのヘッダ領域にフロー識別子５０１が付与されている場合に、パケットを処理サーバ１０３−１が接続されている経路に転送させる設定である。使用するヘッダ領域は、例えば、送信元ＭＡＣアドレスフィールド４０１を利用することができる。
【００３８】
（ステップＳ７０７）
フロー識別子送信部３０４は、割り当てたフロー識別子５０１をエッジ装置１０１−１に送信する。
【００３９】
（ステップＳ７０８）
フロー割当要求部２０４は、フロー制御装置１０４から受信したフロー識別子５０１をフローテーブル５０に登録する。その際、割当状態５０２に記録していた割当要求中の状態を解除する。
【００４０】
（ステップＳ７０９）
ヘッダ変換部２０５は、決定したフロー識別子５０１をパケットのヘッダ領域に格納する。例えば、格納するヘッダ領域は、送信元ＭＡＣアドレスフィールド４０１を利用することができる。パケット送信部２０６は、パケットのヘッダ領域にフロー識別子５０１を格納したパケットを送信する。
【００４１】
（ステップＳ７１０）
フロー検索部２０２は、アプリケーションフロー情報５００に対応する割当状態５０２を確認する。フロー識別子５０１の割当要求中でない場合は、エッジ装置１０１−１の処理は、ステップＳ７０９に進み、フロー識別子５０１の割当要求中の場合は、割当要求中が解除されるまで処理を待ち合わせる。
【００４２】
次に、特定のアプリケーションフロー情報５００に対応するサーバ処理を行うサーバ装置１０３を変更する場合の動作方法について説明する。
【００４３】
サーバ管理部３０５は、サーバ装置１０３−１〜１０３−４を監視しており、負荷状況や障害等のサーバの運用状態により、特定のアプリケーションフロー情報５００に対応するサーバ処理を変更するように判断する。端末装置１００−１の要求に基づくサーバ側の処理を、サーバ装置１０３−１から、サーバ装置１０３−２に変更する場合の動作方法について説明する。図８は、本発明の第１実施形態における通信切替システム１において、端末装置１００の要求に基づくサーバ装置１０３の処理を、他のサーバ装置１０３に変更する方法を説明するためのフローチャートである。
【００４４】
（ステップＳ８００）
サーバ管理部３０５は、特定のアプリケーションフロー情報５００に対応するサーバ処理を、サーバ装置１０３−１から、サーバ装置１０３−２へ変更する判断を行い、処理サーバ変更要求を発行する。
【００４５】
（ステップＳ８０１）
フロー検索部３０６は、サーバ処理を変更するアプリケーションフロー情報５００を検索キーとして、フロー割当テーブル６０を検索する。フロー検索部３０６は、フロー割当テーブル６０に登録がない場合は、該当するアプリケーションフローが存在しないものとして、処理を終了する。フロー割当テーブル６０に登録がある場合は、フロー制御装置１０４の処理は、ステップＳ８０２に進む。
【００４６】
（ステップＳ８０２）
フロー検索部３０６は、サーバ処理を変更するアプリケーションフロー情報５００に対応するフロー識別子５０１を取得する。
【００４７】
（ステップＳ８０３）
スイッチ設定変更部３０７は、該当のフロー識別子５０１と、変更先のサーバ装置１０３−２のＩＰアドレスを基に、ネットワークスイッチ１０２−１の経路設定情報を変更する。スイッチ設定要求部３０８は、変更した経路設定情報をネットワークスイッチ１０２−１に送信する。例えば、フロー識別子５０１が、送信元ＭＡＣアドレスに格納される場合は、ネットワークスイッチ１０２−１において、送信元ＭＡＣアドレスに該当のフロー識別子５０１が格納されているパケットに対する転送設定が変更される。この場合、このパケットの転送先ＩＰアドレスが、サーバ装置１０３−１のＩＰアドレス“Ａ”から、サーバ装置１０３−２のＩＰアドレス“Ｂ”に変更される。
【００４８】
本発明の第１実施形態の説明では、通信切替システム１の構成を、端末装置１００−１〜１００−４、エッジ装置１０１−１〜１０１−２、ネットワークスイッチ１０２−１〜１０２−２及びサーバ装置１０３−１〜１０３−４とした。しかし、端末装置１００、エッジ装置１０１、ネットワークスイッチ１０２及びサーバ装置の台数は、これに限定するものではなく、また、エッジ装置１０１と、サーバ装置１０３の間のネットワークスイッチ１０２は、階層的に構成されていてもよい。
【００４９】
本発明の第１実施形態によれば、負荷分散装置を利用せずに、アプリケーションレイヤのデータに基づいて決定されるフロー単位に、サーバ装置の運用状態に基づいて、転送処理を切り替える通信切替システムを提供することができる。
【００５０】
（第２実施形態）
添付図面を参照して、本発明の第２実施形態による通信切替システム１を以下に説明する。本実施形態の通信切替システム１では、サーバ処理を行う装置が階層的になる場合について、アプリケーションフロー単位で、後段のネットワーク（後段のサーバ装置）にパケットを転送するための仕組みが考慮されている。
【００５１】
［構成の説明］
はじめに、本実施形態における通信切替システム１の構成の説明を行う。図９は、本発明の第２実施形態における通信切替システム１の構成例である。本発明の第２実施形態は、その基本的構成は第１実施形態と同様であるが、ネットワークスイッチ１０５−１〜１０５−３及びサーバ装置１０６−１〜１０６−３が追加されている点が異なる。端末装置１００が要求するサーバ処理は、前段のサーバ処理と、後段のサーバ処理とに垂直に分散され、前段のサーバ装置１０３−１〜１０３−４と、後段のサーバ装置１０６−１〜１０６−３は、異なるサーバ処理を行う。
【００５２】
図１０は、本発明の第２実施形態におけるフロー制御装置１０４の機能ブロック図である。本実施形態におけるフロー制御装置１０４の機能ブロック図は、ＩＰアドレス割当部３０９及び処理ＡＰ起動要求部３１０が追加されている。第１実施形態の通信切替システム１のフロー制御装置１０４と、同様の動作である機能ブロックの説明については省略する。
【００５３】
サーバ管理部３０５は、サーバ装置１０３−１〜１０３−４の他に、サーバ装置１０６−１〜１０６−３についても、負荷状況や障害等の運用状態を監視する。サーバ管理部３０５は、アプリケーションレイヤのデータに基づくフロー単位（アプリケーションフロー情報５００単位）で、処理を行うサーバ装置を変更するかどうかを判断する。
【００５４】
スイッチ設定変更部３０７は、ネットワークスイッチ１０２−１〜１０２−２の他に、ネットワークスイッチ１０５−１〜１０５−３についても、経路設定情報を変更するフロー識別子に基づき、経路設定情報を生成する。
【００５５】
ＩＰアドレス割当部３０９は、前段のサーバ装置１０３において、サーバ処理を行う処理アプリケーションが使用する仮ＩＰアドレスを割り当てる。
【００５６】
処理ＡＰ起動要求部３１０は、ＩＰアドレス割当部３０９で割り当てた仮ＩＰアドレスを利用して、前段のサーバ処理を待ち受けるサーバ処理アプリケーションを、該当のサーバ装置に起動させる処理ＡＰ起動要求を作成する。
【００５７】
［動作方法の説明］
次に、本実施形態における通信切替システム１において、通信切替方法の説明を行う。以下の場合を例にして、本実施形態における通信切替システム１の動作方法の説明を行う。サーバ処理装置の変更前は、端末装置１００−１が要求するサーバ処理が、サーバ装置１０３−１及びサーバ装置１０６−１で実施され、サーバ処理装置の変更後は、サーバ装置１０３−２及びサーバ装置１０６−２で実施される場合について説明する。動作方法の説明のために、サーバ装置１０３−１のＩＰアドレスを“Ａ”、サーバ装置１０３−２のＩＰアドレスを“Ｂ”、サーバ装置１０６−１のＩＰアドレスを“Ｃ”、サーバ装置１０６−２のＩＰアドレスを“Ｄ”とする。図１１は、本発明の第２実施形態における通信切替システム１において、端末装置１００の要求に基づくサーバ装置１０３、１０６の処理を、他のサーバ装置１０３、１０６に変更する方法を説明するためのフローチャートである。
【００５８】
（ステップＳ１１００）
サーバ管理部３０５は、特定のアプリケーションフロー情報５００に対応するサーバ処理を行うサーバ装置を、サーバ装置１０３−１及びサーバ装置１０６−１ではなく、サーバ装置１０３−２及びサーバ装置１０６−２へ変更する判断を行い、処理サーバ変更要求を発行する。
【００５９】
（ステップＳ１１０１）
フロー検索部３０６は、サーバ処理を変更するアプリケーションフロー情報５００を検索キーとして、フロー割当テーブル６０を検索する。フロー検索部３０６は、フロー割当テーブル６０に登録がない場合は、該当するアプリケーションフローが存在しないものとして、処理を終了する。フロー割当テーブル６０に登録がある場合は、フロー制御装置１０４の処理は、ステップＳ１１０２に進む。
【００６０】
（ステップＳ１１０２）
フロー検索部３０６は、サーバ処理を変更するアプリケーションフロー情報５００に対応するフロー識別子５０１を取得する。
【００６１】
（ステップＳ１１０３）
ＩＰアドレス割当部３０９は、前段のサーバ処理の変更先のサーバ装置１０３−２で、前段のサーバ処理を待ち受けるアプリケーションが使用する仮ＩＰアドレス“Ｔ”を割り当てる。このＩＰアドレス“Ｔ”は、既に割り当てられているＩＰアドレス“Ｂ”とは異なるＩＰアドレスとして割り当てられる。
【００６２】
（ステップＳ１１０４）
処理ＡＰ起動要求部３１０は、割り当てられた仮ＩＰアドレス“Ｔ”で、前段のサーバ処理を待ち受ける処理を、サーバ装置１０３−２に起動させるための処理ＡＰ起動要求を作成する。サーバ装置１０３−２のＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）と、ＩＰアドレス“Ｂ”及びＩＰアドレス“Ｔ”の対応関係については、サーバ装置のＮＩＣが１つである場合でも、ＩＰエイリアス等の技術により、ＮＩＣとＩＰアドレスとの対応を解決することができる。
【００６３】
（ステップＳ１１０５）
スイッチ設定変更部３０７は、該当のフロー識別子５０１と仮ＩＰアドレス“Ｔ”を基に、ネットワークスイッチ１０２−１と、ネットワークスイッチ１０５−２の経路設定情報を変更する。スイッチ設定要求部３０８は、変更した経路設定情報をネットワークスイッチ１０２−１とネットワークスイッチ１０５−２に送信する。
【００６４】
例えば、フロー識別子５０１が、送信元ＭＡＣアドレスに格納される場合について説明する。ネットワークスイッチ１０２−１では、送信元ＭＡＣアドレスに該当のフロー識別子５０１が格納されているパケットに対する経路設定情報が変更される。ネットワークスイッチ１０５−２では、付与したフロー識別子５０１を参照することができないため、送信元ＩＰアドレスに仮ＩＰアドレス“Ｔ”が格納されているパケットに対する経路設定情報が変更される。ネットワークスイッチ１０５−２において、フロー識別子５０１が利用できない理由は、一般的に、サーバ装置（プロセッシング資源）では、パケット送信時に、パケットの送信元ＭＡＣアドレスを、自身のＭＡＣアドレスで上書きするためである。
【００６５】
ネットワークスイッチ１０２−１では、該当のフロー識別子５０１が付与されているパケットに対して、転送先ＩＰアドレスが、サーバ装置１０３−１のＩＰアドレス“Ａ”から、サーバ装置１０３−２の仮ＩＰアドレス“Ｔ”に変更される。
【００６６】
ネットワークスイッチ１０５−２では、送信元ＩＰアドレスが、仮ＩＰアドレス“Ｔ”であるパケットに対して、転送先ＩＰアドレスが、サーバ装置１０６−１のＩＰアドレス“Ｃ”から、サーバ装置１０６−２のＩＰアドレス“Ｄ”に変更される。
【００６７】
本発明の第２実施形態によれば、端末装置により要求されるサーバ処理が、複数の段数に垂直分散され、サーバ装置が、ネットワークスイッチを介して、階層的に構成されている場合であっても、本発明を実施することができる。
【００６８】
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
【符号の説明】
【００６９】
１  通信切替システム
５０  フローテーブル
６０  フロー割当テーブル
１００−１〜１００−４  端末装置
１０１−１〜１０１−２  エッジ装置
１０２−１〜１０２−２  ネットワークスイッチ
１０３−１〜１０３−４  サーバ装置
１０４  フロー制御装置
１０５−１〜１０５−３  ネットワークスイッチ
１０６−１〜１０６−３  サーバ装置
２００  パケット受信部
２０１  パケット解析部
２０２  フロー検索部
２０３  フローテーブル格納部
２０４  フロー割当要求部
２０５  ヘッダ変換部
２０６  パケット送信部
３００  割当要求受信部
３０１  フロー割当部
３０２  フロー割当テーブル格納部
３０３  スイッチ設定部
３０４  フロー識別子送信部
３０５  サーバ管理部
３０６  フロー検索部
３０７  スイッチ設定変更部
３０８  スイッチ設定要求部
３０９  ＩＰアドレス割当部
３１０  処理ＡＰ起動要求部
４００  宛先ＭＡＣアドレス
４０１  送信元ＭＡＣアドレス
４０２  タイプ
４０３  ＩＰヘッダ
４０４  Ｌ４ヘッダ
４０５  ペイロード
４０６  ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）
５００  アプリケーションフロー情報
５０１  フロー識別子
５０２  割当状態
１０００  処理サーバ管理部
１００２  アドレス割当部
１００３  処理起動要求部
１００４  スイッチ設定変更部
１２００−１〜１２００−４  端末装置
１２０１−１〜１２０１−２  エッジ装置
１２０２  負荷分散装置
１２０３−１〜１２０３−４  サーバ装置
【図１】
0005853378.tif 000002
【図２】
0005853378.tif 000003
【図３】
0005853378.tif 000004
【図４】
0005853378.tif 000005
【図５】
0005853378.tif 000006
【図６】
0005853378.tif 000007
【図７】
0005853378.tif 000008
【図８】
0005853378.tif 000009
【図９】
0005853378.tif 000010
【図１０】
0005853378.tif 000011
【図１１】
0005853378.tif 000012
【図１２】
0005853378.tif 000013