(57)【要約】【課題】通信装置における処理能力の一部を他の装置に動的にスケールアウトする。【解決手段】通信システムは通信装置と情報処理装置とを含む。通信装置(30-39)は、通信インタフェース部(306)を介して伝送されるパケットを処理する１つ以上の機能(330-340)を含み、自通信装置の負荷の状態を監視し、負荷が閾値より高くなった場合に、負荷が閾値より高くなった状態の要因となっている１つ以上の機能の中の特定機能に関する情報を情報処理装置(50)に供給した後、受信したパケットを情報処理装置に転送する。情報処理装置(50)は、特定機能に関する情報を受信して、特定機能に対応する機能を含む仮想装置を動的に生成し、転送されたパケットを受け取って仮想装置に処理させる。【選択図】図９
2015070446.tif 000002
【特許請求の範囲】
【請求項１】
通信装置と情報処理装置とを含む通信システムであって、
前記通信装置は、通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を含み、自通信装置の負荷の状態を監視し、前記負荷が閾値より高くなった場合に、前記負荷が前記閾値より高くなった状態の要因となっている前記１つ以上の機能の中の特定機能に関する情報を前記情報処理装置に供給した後、受信したパケットを前記情報処理装置に転送し、
前記情報処理装置は、前記特定機能に関する情報を受信して、前記特定機能に対応する機能を含む仮想装置を動的に生成し、転送された前記パケットを受け取って前記仮想装置に処理させる
ことを特徴とする通信システム。
【請求項２】
前記通信装置は、前記負荷が閾値より高くなった場合に、前記特定機能および前記通信装置の後段に接続された別の通信装置に関する情報を前記情報処理装置に供給し、
前記情報処理装置は、前記特定機能および前記別の通信装置に関する情報を受信して、前記特定機能に対応する機能を含む第１の仮想装置と、前記別の通信装置に対応する機能を含む第２の仮想装置とを動的に生成し、転送された前記パケットを受け取って前記第１と第２の仮想装置に処理させるものであることを特徴とする、請求項１に記載の通信システム。
【請求項３】
前記情報処理装置は、さらに、別の通信装置から別の機能に関する情報を受信して、前記別の機能に対応する機能を含む別の仮想装置を動的に生成し、前記別の通信装置から転送されたパケットを受け取って前記別の仮想装置に処理させるものであることを特徴とする、請求項１または２に記載の通信システム。
【請求項４】
前記通信装置は、前記負荷が閾値より低くなった場合に、受信されたパケットを前記情報処理装置に転送しないようにするものであることを特徴とする、請求項１乃至３のいずれかに記載の通信システム。
【請求項５】
通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能部と、
自通信装置の負荷の状態を監視し、前記負荷が閾値より高くなった場合に前記負荷が前記閾値より高くなった状態の要因となっている前記１つ以上の機能部の中の特定機能部に対応する機能部を含む仮想装置を別の装置上に動的に生成させる第１の制御部と、
前記仮想装置の生成後に受信したパケットを、前記別の装置に転送する第２の制御部と、
を含む通信装置。
【請求項６】
通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を実行し、
通信装置の負荷の状態を監視し、前記負荷が閾値を超えて高くなった場合に前記負荷の高い状態の要因となっている前記１つ以上の機能の中の或る機能に対応する機能を含む仮想装置を別の装置上に動的に生成させ、
前記仮想装置の生成後に受信したパケットを、前記仮想装置に転送する
処理を前記通信装置に実行させるためのプログラム。
【請求項７】
通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を実行し、
自通信装置の負荷の状態を監視し、前記負荷が閾値より高くなった場合に前記負荷が前記閾値より高くなった状態の要因となっている前記１つ以上の機能の中の特定機能に対応する機能を含む仮想装置を別の装置上に動的に生成させ、
前記仮想装置の生成後に受信したパケットを、前記別の装置に転送する
処理を、通信装置が実行する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続される通信装置における処理に関する。
【背景技術】
【０００２】
例えばインターネットのようなネットワークを介してサーバ装置と情報処理端末の間で、または複数の情報処理端末間で通信が行われる場合、ネットワークと、サーバ装置および／または情報処理端末との間にネットワーク通信装置が接続される。そのようなネットワーク通信装置には、例えば、通信プロトコル処理、セキュリティ処理、および／またはトラフィック均等化処理などのための複数の機能が含まれていることがある。  
【０００３】
一方、例えばネットワークとサーバ装置の間の通信トラフィックが増加して、ネットワーク通信装置の負荷が過大になった場合、通常、既存のネットワーク通信装置に他のネットワーク通信装置が追加接続されて処理負荷が分散されて、通信が円滑に行われる。  
【０００４】
既知の或るアプリケーション・スイッチ・システムは、複数のクライアント端末とサーバ端末の接続を制御する。そのアプリケーション・スイッチ・システムは、１つ以上のスイッチと、プロトコル中継を行う１つ以上の中継装置と、中継装置に対してハンドオフ処理を行うコントローラとを含んでいる。そのコントローラは、スイッチ内の転送先を決定する経路テーブルを集中制御する手段と、中継装置の制御を行う手段と、接続先のサーバ選択手段と、を含んでいる。そのコントローラは、更に、クライアントと選択したサーバとの間を結び、１つの中継装置を含む経路を選択し、選択した経路をスイッチ内の経路テーブルに設定する手段と、中継装置がプロトコル中継を行う際に用いられる中継情報を中継装置に設定する手段とを含む。それによって、ネットワーク・トラフィック（通信量）のデータ処理において、中継処理が広域に分散配備される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２０１０／９０１８２号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ネットワークと情報処理装置の間の通信装置における処理能力の拡張またはスケールアウトは、通常、既存の通信装置の動作を一時的に停止させて、既存の通信装置に対して１つ以上の通信装置を手作業で追加的に接続することによって、固定的に行われる。
【０００７】
発明者たちは、ネットワークと情報処理装置の間の既存の通信装置の動作を一時的に停止させ、また既存の通信装置に別の通信装置を手作業で追加的に接続することは、効率的でなく、高いコストがかかる、と認識した。また、発明者たちは、ネットワークと情報処理装置の間の既存の通信装置における通信処理能力を、その負荷に応じて、他の装置上の仮想的な機能に動的に拡張またはスケールアウトすれば、効率的であると認識した。
【０００８】
１つの観点では、本発明の目的は、通信装置における処理能力の少なくとも一部を他の装置に動的にスケールアウトできるようにすることである。
【課題を解決するための手段】
【０００９】
実施形態の一観点によれば、通信装置と情報処理装置とを含む通信システムであって、通信装置が、通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を含み、自通信装置の負荷の状態を監視し、負荷が閾値より高くなった場合に、負荷が閾値より高くなった状態の要因となっている１つ以上の機能の中の特定機能に関する情報を情報処理装置に供給した後、受信したパケットを情報処理装置に転送し、情報処理装置が、特定機能に関する情報を受信して、特定機能に対応する機能を含む仮想装置を動的に生成し、転送されたパケットを受け取って仮想装置に処理させることを特徴とする通信システムが提供される。
【発明の効果】
【００１０】
実施形態の一観点によれば、通信装置における処理能力の少なくとも一部を他の装置に動的にスケールアウトすることができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施形態による、ネットワークと情報処理装置の間に接続された通信装置と、通信装置に接続された情報処理装置とを含むシステムの概略的な構成（configuration）の例を示している。
【図２】図２Ａ〜２Ｄは、図１の通信装置および情報処理装置における活動状態にある各機能と、複数の機能にわたるトラフィックまたは処理の流れの例を示している。
【図３】図３は、実施形態による、ネットワークと情報処理装置の間にそれぞれ接続された複数の通信装置と、複数の通信装置に接続された情報処理装置とを含むシステムの概略的な構成（configuration）の例を示している。
【図４】図４Ａは、実施形態による、ネットワークと情報処理装置の間にカスケード（従続）接続された複数の通信装置と、通信装置に接続された情報処理装置とを含むシステムの概略的な構成（configuration）の例を示している。  図４Ｂは、図４Ａの通信装置および情報処理装置における活動状態にある各機能と、各機能にわたるトラフィックまたは処理の流れの例を示している。
【図５】図５は、実施形態による、ネットワークと情報処理装置の間に、分岐接続関係にある複数の通信装置と、通信装置に接続された情報処理装置とを含むシステムの概略的な構成（configuration）の例を示している。
【図６】図６は、実施形態による、通信装置の各々の概略的な構成（configuration）の例を示している。
【図７】図７は、情報処理装置の概略的な構成（configuration）の例を示している。
【図８】図８は、情報処理装置のプロセッサの概略的な構成（configuration）の例を示している。
【図９】図９は、通信装置の通信制御部、処理能力拡張制御部および機能部と、情報処理装置の管理部、ハイパーバイザ部および仮想通信装置とにおける接続または結合関係の例を示している。
【図１０】図１０は、負荷監視部によって参照される、通信装置に設定された閾値のテーブルの例を示している。
【図１１】図１１は、図９における、仮想通信装置を起動するための、通信装置と情報処理装置の拡張仮想サーバ部との間の連携動作の手順の例を示している。
【図１２】図１２Ａは、通信装置と情報処理装置の仮想通信装置との間で転送されるパケットのフォーマットの例を示している。  図１２Ｂは、通信装置から仮想通信装置へ転送されるパケットの構造の例を示している。  図１２Ｃは、情報処理装置の仮想通信装置から通信装置へ転送されるパケットの構造の例を示している。
【図１３】図１３は、図９における通信装置の通信制御部と仮想通信装置の通信制御部との間でパケットを転送するための、通信装置と情報処理装置の拡張仮想サーバ部との間の連携動作の手順の例を示している。
【図１４】図１４は、通信装置によって実行される、仮想通信装置へのパケットの転送制御のための処理のフローチャートの例を示している。
【図１５】図１５は、通信装置によって実行される、仮想通信装置から受け取ったパケットの転送制御のための処理のフローチャートの例を示している。
【図１６】図１６は、図９における、仮想通信装置へのパケットの転送を終了して、仮想通信装置を停止するための、通信装置と情報処理装置の間の連携動作の手順の例を示している。
【図１７Ａ】図１７Ａおよび１７Ｂは、図４Ａにおける通信装置と、情報処理装置の管理部、ハイパーバイザ部および仮想通信装置とにおける接続または結合関係の例を示している。
【図１７Ｂ】(図17Aに記載)
【図１８Ａ】図１８Ａおよび１８Ｂは、図５における通信装置と、情報処理装置の管理部、ハイパーバイザ部および仮想通信装置とにおける接続または結合関係の例を示している。
【図１８Ｂ】(図18Aに記載)
【図１９】図１９Ａは、ネットワークに既存の通信装置を介して接続された情報処理端末の例を示している。  図１９Ｂは、既存の通信装置に、他の通信装置を追加的に接続させた通常の拡張的な接続配置の例を示している。
【発明を実施するための形態】
【００１２】
発明の目的および利点は、請求の範囲に具体的に記載された構成要素および組み合わせによって実現され達成される。
前述の一般的な説明および以下の詳細な説明は、典型例および説明のためのものであって、本発明を限定するためのものではない、と理解される。
【００１３】
本発明の非限定的な実施形態を、図面を参照して説明する。図面において、同様のコンポーネントおよび要素には同じ参照番号が付されている。
【００１４】
ネットワークと、サーバ装置または情報処理端末等の情報処理装置との間に接続される通信装置には、例えば、通信プロトコル処理、セキュリティ処理、および／または負荷の均等化処理などのための複数の機能が含まれていることがある。そのような機能には、例えば、ＩＰｓｅｃ（Security Architecture for Internet Protocol）、ＮＡＴ（Network Address Translation）、ＳＳＬ（Secure Socket Layer）、ＷＡＦ（Web Application Firewall）およびＳＬＢ（Server Load Balancing）等の様々な機能がある。
【００１５】
例えばネットワークとサーバ装置の間の通信量が増加して、既存の通信装置の負荷が過大になった場合、一般的に、既存の通信装置における高い負荷の機能の処理能力を、追加的に設けられた通信装置に拡張またはスケールアウトして、通信が円滑に行われるようにされる。
【００１６】
図１９Ａは、ネットワーク５に既存の通信装置１０を介して接続された情報処理端末１４０および１４１の例を示している。図１９Ｂは、既存の通信装置１０に、他の通信装置１２、１３、１４および１５を追加的に接続させた通常の拡張的な接続配置の例を示している。
【００１７】
図１９Ａにおいて、ネットワーク５と情報処理装置１４０および１４１の間に通信装置１０を設置したときは、ネットワーク５と情報処理装置１４０および１４１の間のトラフィックが少なく、通信装置１０の処理能力だけでトラフィックを円滑に処理できたものとする。その後、ネットワーク５と情報処理装置１４０および１４１の間のトラフィックが予想外に増大した場合、通信装置１０の処理能力だけではトラフィックを円滑に処理できなくなることがある。この場合、図１９Ｂに示されているように、既存の通信装置１０の例えば後段に、従続接続および並列接続の１つ以上の通信装置１２〜１５を追加的に接続して、既存の通信装置１０の処理能力を他の通信装置１２〜１５に拡張またはスケールアウトして負荷を分散することができる。
【００１８】
より具体的には、図１９Ａにおいて、既存の通信装置１０は、例えば、ＮＡＴ、ＳＳＬおよびＳＬＢの機能を含んでいるものとする。また、図１９Ｂにおいて、例えば、他の通信装置１２〜１４はＳＳＬの機能を含み、別の通信装置１５はＳＬＢの機能を含んでいるものとする。
【００１９】
図１９Ｂでは、既存の通信装置１０は、例えばＮＡＴおよびＳＬＢの機能だけを担当するように設定が変更されてもよい。また、図１９Ｂでは、通信装置１０が最初に担当していたＳＳＬの機能を、他の通信装置１２〜１４が分担し、また、通信装置１０が最初に担当していたＳＬＢの機能を、通信装置１５が分担するようにしてもよい。この場合、既存の通信装置１０のＳＬＢの機能は、ＳＳＬの負荷を複数の通信装置１２〜１４に配分または分散するための追加的な機能である。
【００２０】
このような通常の処理能力の拡張またはスケールアウト方式では、図１９Ｂのように、負荷の処理能力が物理的に固定的に増強され、そのための作業または工事は、手作業で行われる。その作業の期間中において、通信装置１０のトラフィックが中断され、ユーザに対する通信サービスまたは情報サービスの提供が中断される。
【００２１】
また、図１９Ｂの接続配置では、同じＳＳＬを分担する複数の通信装置１２〜１４が冗長に配置され、その処理負荷が低い状態では、例えば通信装置１３および１４が無駄に動作し、非効率である。また、既存の通信装置１０において、３つの通信装置１２〜１５に負荷を分散する機能が余分に設けられる。従って、図１９Ｂのような通常の処理機能の拡張またはスケールアウト方式では、高いコストがかかり、消費電力も多くなる。
【００２２】
発明者たちは、ネットワークと情報処理装置の間の既存の通信装置の動作を一時的に停止させ、また既存の通信装置に他の通信装置を手作業で追加的に接続することは、効率的でなく、高いコストがかかり、また、通信または情報サービスの提供が中断される、と認識した。また、発明者たちは、ネットワークと情報処理装置の間の既存の通信装置における機能の処理能力をその負荷に応じて別の装置上の仮想機能に動的に拡張またはスケールアウトすれば、効率的で、コストが低く、電力消費量が少なく、サービスが中断されない、と認識した。ここで、スケールアウト（scale out）とは、１つの通信装置における或る機能の処理能力を、他の装置における対応する機能に、拡張、分散または移動させることである。
【００２３】
実施形態の目的は、通信装置における処理機能の一部の処理能力を他の装置に動的にまたは適応的に拡張またはスケールアウトできるようにすることである。
【００２４】
図１は、実施形態による、ネットワーク５と情報処理装置４０、４１および４２の間に接続された通信装置３０と、通信装置３０に接続された情報処理装置５０とを含むシステムの概略的な構成（configuration）の例を示している。情報処理装置４０〜４２は、通信装置３０とネットワーク５を介して、１つ以上の他の情報処理装置１１０〜１１６と通信してもよい。ここで、情報処理装置４０〜４２は、例えばサーバ装置または情報処理端末であってもよい。また、情報処理装置１１０〜１１６は、例えば情報処理端末またはサーバ装置であってもよい。
【００２５】
通信装置３０は、情報処理装置５０の接続前の時点において稼働中のものであっても、情報処理装置５０と共に設置されてもよい。情報処理装置５０は、１つ以上の仮想通信装置を動的に生成することができる仮想化機能を含み、拡張仮想サーバ部として機能することができるものである。また、情報処理装置５０は、通信装置３０とは別に用意されて、稼働中の通信装置３０に接続されてもよい。
【００２６】
通信装置３０は、ネットワーク５を介して情報処理装置１１０〜１１６と情報処理装置４０〜４２の間にコネクションを確立し、また、その確立されたコネクション上で伝送されるパケットを処理する１つ以上の機能を実行する。
【００２７】
通信装置３０は、情報処理装置５０に接続され、通信装置３０の負荷が閾値を超えた場合に、通信装置３０における高負荷状態の或る機能に対応する機能を、情報処理装置５０上の仮想通信装置に、動的に拡張またはスケールアウトする。代替形態として、通信装置３０は、通信装置３０の或る機能の負荷が閾値を超えた場合に、その或る機能に対応する機能を、情報処理装置５０上の仮想通信装置に、動的に拡張またはスケールアウトしてもよい。
【００２８】
そのような拡張またはスケールアウトのために、通信装置３０は、情報処理装置５０に対して、その或る機能に対応する機能を起動するよう要求する。情報処理装置５０は、その要求に応答して、拡張仮想サーバ部において仮想通信装置またはその対応する仮想的な機能を動的に生成して起動する。次いで、通信装置３０は、確立されたコネクション上のパケットを情報処理装置５０に転送する。情報処理装置５０は、転送されたパケットをその仮想的な機能で処理して、処理済みのパケットを通信装置３０に転送し戻す。通信装置３０は、場合によってそのパケットをさらに処理し、処理済みのパケットを間接的に（実線）または直接的に（破線）情報処理装置４０〜４２に供給する。
【００２９】
図２Ａ〜２Ｄは、図１の通信装置３０および情報処理装置５０における活動状態にある各機能と、複数の機能にわたるトラフィックまたは処理の流れの例を示している。
【００３０】
図２Ａ〜２Ｄにおいて、通信装置３０は、例えば、ＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８の機能を含んでいる。一方、情報処理装置５０は、内部の拡張仮想サーバ部上で仮想的な機能ＮＡＴ５４２、ＳＳＬ５４４、ＷＡＦ５４６およびＳＬＢ５４８のいずれかを動的に生成して起動することができる。図２Ａ〜２Ｄにおいて、太い実線で囲まれた機能は活動状態にある機能を示し、また、破線で囲まれた機能は非活動状態または休止状態にある機能を示している。通信装置３０のＩＰアドレスは、例えば、１０．１．１．１００であってもよい。また、情報処理装置５０の拡張仮想サーバ部のＩＰアドレスは、例えば、１９２．１６８．０．１００または１９２．１６８．０．１０１に設定されてもよい。また、図１の情報処理装置４０〜４２のＩＰアドレスは、例えば１９２．１６８．１．１〜１９２．１６８．１．３のいずれかであってもよい。
【００３１】
図２Ａにおいて、通信装置３０は、図１の情報処理装置１１０〜１１６からのコネクション要求に応答して、ネットワーク５を介して情報処理装置１１０〜１１６と情報処理装置４０〜４２の間にコネクションを確立する。また、通信装置３０は、その確立されたコネクション上で受信されたパケットを１つ以上の機能で処理して、処理済みのパケットを情報処理装置４０〜４２に転送する。
【００３２】
通信装置３０において、受信されるパケットのトラフィックが少なく処理負荷が低い場合、通信装置３０は、図２Ａに示されているように、全ての受信パケットを、実線で囲まれた自己のＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８でこの順に処理する。通信装置３０は、その低負荷状態では、自己の機能の処理能力を情報処理装置５０に拡張またはスケールアウトすることはない。この場合、情報処理装置５０の拡張仮想サーバ部では、仮想通信装置または対応する仮想的な機能が起動されず、従って、破線で囲まれた仮想的な機能ＮＡＴ５４２、ＳＳＬ５４４、ＷＡＦ５４６およびＳＬＢ５４８、生成されずまたは起動されず活動状態にない。
【００３３】
図２Ｂにおいて、通信装置３０において、受信パケットのトラフィックが多く、特にＮＡＴ３４２が高負荷状態である場合、例えば、通信装置３０は、次のように動作する。通信装置３０は、１つ以上の機能の中で高負荷状態にあるＮＡＴ３４２に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、実線で示されている仮想的な機能ＮＡＴ５４２を動的に生成して起動し活動状態にする。
【００３４】
次いで、通信装置３０は、ＮＡＴ３４２によって処理される前のその時点以降に確立されたコネクション上のパケットを、破線で示されているように、情報処理装置５０の仮想的な機能ＮＡＴ５４２に転送する。情報処理装置５０では、ＮＡＴ５４２が、転送されたパケットを処理する。その一方で、通信装置３０は、自己のＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８で、その転送の開始時点以前のコネクション上の受信パケットを処理し続ける。次いで、情報処理装置５０は、破線で示されているように、ＮＡＴ５４２で処理済みのパケットを通信装置３０へ転送し返す。次いで、通信装置３０は、その処理済みのパケットを受け取って、そのパケットを、次の、自己のＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８にこの順に処理させる。次いで、通信装置３０は、その処理済みのパケットを情報処理装置４０〜４２に転送する。
【００３５】
その後、通信装置３０において負荷が充分低くなった場合、通信装置３０は、その時点以降に確立されたコネクション上の受信パケットを、情報処理装置５０に転送することなく、自己のＮＡＴ３４２等に処理させる。一方、情報処理装置５０は、転送されるパケットがある限り、仮想的な機能ＮＡＴ５４２でパケットを処理し続け、転送されるパケットがなくなった場合に、ＮＡＴ５４２を非活動状態にし、さらに削除してもよい。従って、通信装置３０および情報処理装置５０の動作は図２Ａに示された状態に戻る。
【００３６】
このように、情報処理装置５０の拡張仮想サーバ部は、通信装置３０における機能に対応する仮想的な機能を動的に生成して、通信装置３０の処理を分担することができる。また、情報処理装置５０は、生成された仮想的な機能がなくまたは仮想的な機能が非活動状態にあるときは、低い活動状態にあり、その消費電力が少ない。
【００３７】
図２Ｃにおいて、通信装置３０において、受信パケットのトラフィックが多く、特にＳＳＬ３４４が高負荷状態である場合、例えば、通信装置３０は、次のように動作する。通信装置３０は、１つ以上の機能の中で高負荷状態にあるＳＳＬ３４４に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、実線で示されている仮想的な機能ＳＳＬ５４４を動的に生成して起動し活動状態にする。
【００３８】
次いで、通信装置３０は、ＮＡＴ３４２で処理された後の、ＳＳＬ３４４によって処理される前のその時点以降に確立されたコネクション上のパケットを、破線で示されているように、情報処理装置５０の仮想的な機能ＳＳＬ５４４に転送する。情報処理装置５０では、ＳＳＬ５４４が、転送されたパケットを処理する。その一方で、通信装置３０は、自己のＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８で、その転送の開始時点以前のコネクション上の受信パケットを処理し続ける。次いで、情報処理装置５０は、破線で示されているように、ＳＳＬ５４４で処理済みのパケットを通信装置３０へ転送し返す。次いで、通信装置３０は、その処理済みのパケットを受け取って、そのパケットを、次の、ＷＡＦ３４６およびＳＬＢ３４８にこの順に処理させる。次いで、通信装置３０は、その処理済みのパケットを情報処理装置４０〜４２に転送する。
【００３９】
その後、通信装置３０において負荷が充分低くなった場合、通信装置３０は、その時点以降に確立されたコネクション上の受信パケットを、情報処理装置５０に転送することなく、自己のＳＳＬ３４４等に処理させる。一方、情報処理装置５０は、転送されるパケットがある限り、仮想的な機能ＳＳＬ５４４でパケットを処理し続け、転送されるパケットがなくなった場合に、ＳＳＬ５４４を非活動状態にし、さらに削除してもよい。従って、通信装置３０および情報処理装置５０の動作は図２Ａに示された状態に戻る。
【００４０】
図２Ｄにおいて、通信装置３０において、受信パケットのトラフィックが多く、特にＳＬＢ３４８が高負荷状態である場合、例えば、通信装置３０は、次のように動作する。通信装置３０は、１つ以上の機能の中で高負荷状態にあるＳＬＢ３４８に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、実線で示されている仮想的な機能ＳＬＢ５４８を動的に生成して起動し活動状態にする。
【００４１】
次いで、通信装置３０は、ＷＡＦ３４６で処理された後の、ＳＬＢ３４８によって処理される前のその時点以降に確立されたコネクション上のパケットを、破線で示されているように、情報処理装置５０の仮想的な機能ＳＬＢ５４８に転送する。情報処理装置５０では、ＳＬＢ５４８が、転送されたパケットを処理する。その一方で、通信装置３０は、自己のＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８で、その転送の開始時点以前のコネクション上の受信パケットを処理し続ける。次いで、情報処理装置５０は、破線で示されているように、ＳＬＢ５４８で処理済みのパケットを通信装置３０へ転送し返す。次いで、通信装置３０は、その処理済みのパケットを受け取る。次いで、通信装置３０は、その処理済みのパケットを情報処理装置４０〜４２に転送する。
【００４２】
その後、通信装置３０において負荷が充分低くなった場合、通信装置３０は、その時点以降に確立されたコネクションの受信パケットを、情報処理装置５０に転送することなく、自己のＳＬＢ３４８に処理させる。一方、情報処理装置５０は、転送されるパケットがある限り、仮想的な機能ＳＬＢ５４８でパケットを処理し続け、転送されるパケットがなくなった場合に、ＳＬＢ５４８を非活動状態にし、さらに削除してもよい。従って、通信装置３０および情報処理装置５０の動作は図２Ａに示された状態に戻る。
【００４３】
通信装置３０および情報処理装置５０は、それぞれのＷＡＦ３４６およびＷＡＦ５４６についても、同様に、連携動作して、ＷＡＦ３４６の機能または処理能力を拡張またはスケールアウトすることができる。また、通信装置３０は、ＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６、ＳＬＢ３４８中の２以上の機能または処理能力を、情報処理装置５０の拡張仮想サーバ部上のＮＡＴ５４２、ＳＳＬ５４４、ＷＡＦ５４６、ＳＬＢ５４８の中の対応する２以上の仮想的機能に拡張またはスケールアウトしてもよい。このようにして、通信装置３０は、情報処理装置５０の拡張仮想サーバ部に、通信装置３０の機能に対応する仮想的な機能を動的に起動させて、通信装置３０の処理の少なくとも一部を分担させることができる。
【００４４】
次は、情報処理装置５０を、並列関係にある複数の通信装置に接続する場合の例について説明する。
【００４５】
図３は、実施形態による、ネットワーク５と情報処理装置４０、４１および４２の間にそれぞれ接続された複数の通信装置３０、３１および３２と、複数の通信装置３０〜３２に接続された情報処理装置５０とを含むシステムの概略的構成（configuration）の例を示している。
【００４６】
図３において、通信装置３０〜３２の各々は、図１の通信装置３０の場合と同様に、その機能または処理能力の少なくとも一部を、情報処理装置５０の拡張仮想サーバ部に拡張しまたはスケールアウトすることができる。通信装置３０〜３２は、それぞれの或る機能の負荷が高負荷状態になった場合に、その或る機能に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、それぞれの或る機能に対応する仮想的な機能を動的に生成して起動する。
【００４７】
次いで、情報処理装置５０の拡張仮想サーバ部は、図１の通信装置３０の場合と同様に、通信装置３０〜３２からパケットを受け取って、そのパケットをその対応する仮想的な機能で処理する。その仮想的な機能で処理されたパケットは、通信装置３０に転送されてさらに処理されるか、または間接的に（実線で示されている）または直接的に（破線で示されている）情報処理装置４０〜４２に供給されてもよい。
【００４８】
通信装置３０〜３２の各々と情報処理装置５０とは、図２Ａ〜２Ｄの場合と同様の形態で並行して連携動作する。この場合、情報処理装置５０の拡張仮想サーバ部は、通信装置３０〜３２にそれぞれ対応する複数の仮想通信装置を生成して起動させることができる。通信装置３０〜３２のＩＰアドレスは、例えば、１０．１．１．１００〜１０．１．１．１０２のいずれかであってもよい。また、情報処理装置５０の拡張仮想サーバ部のＩＰアドレスは、例えば、１９２．１６８．０．１００であってもよい。
【００４９】
このように、情報処理装置５０の拡張仮想サーバ部は、通信装置３０〜３２の各々における機能に対応する仮想的な機能を含む各仮想通信装置を動的に生成して、通信装置３０〜３２の処理を分担することができる。また、情報処理装置５０は、生成された仮想的な機能がなくまたは仮想的な機能が非活動状態にあるときは、低い活動状態にあり、その消費電力が少ない。
【００５０】
次は、情報処理装置５０を、タンデム接続された複数の通信装置に接続する場合の例について説明する。
【００５１】
図４Ａは、実施形態による、ネットワーク５と情報処理装置４０〜４２の間にカスケード（従続）接続された複数の通信装置３０、３８および３９と、通信装置３０、３８および３９に接続された情報処理装置５０とを含むシステムの概略的な構成（configuration）の例を示している。この場合、情報処理装置５０は、さらに例えばサーバ装置または情報処理端末としての情報処理装置４０〜４２に接続されていてもよい。また、通信装置３０、３８および３９のＩＰアドレスは、例えば、１０．１．１．１００〜１０．１．１．１０２のいずれかであってもよい。また、情報処理装置５０の拡張仮想サーバ部のＩＰアドレスは、例えば、１９２．１６８．０．１００であってもよい。
【００５２】
図４Ａにおいて、通信装置３０、３８および３９の各々は、図１の通信装置３０の場合と同様に、その機能または処理能力の少なくとも一部を、情報処理装置５０の拡張仮想サーバ部に拡張しまたはスケールアウトすることができる。通信装置３０、３８および３９は、それぞれの或る機能の負荷が高負荷状態になった場合に、その或る機能に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、それぞれの或る機能に対応する仮想的な機能を動的に生成して起動する。
【００５３】
次いで、情報処理装置５０の拡張仮想サーバ部は、通信装置３０、３８および３９からパケットを受け取って、そのパケットをその対応する仮想的な機能で処理する。その仮想的な機能で処理されたパケットは、通信装置３０、３８および／または３９に転送されてさらに処理されてもよい。情報処理装置５０または通信装置３９は、処理済みのパケットを情報処理装置４０〜４２に供給してもよい。
【００５４】
図４Ｂは、図４Ａの通信装置３０、３８および３９、および情報処理装置５０における活動状態にある各機能と、各機能にわたるトラフィックまたは処理の流れの例を示している。
【００５５】
図４Ｂにおいて、通信装置３０は、例えば、ＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６およびＳＬＢ３４８の機能を含んでいる。また、通信装置３８は、例えば、受信パケットの検査、隔離および治療を行うための検疫機能（ＮＱ）３８４を含んでいる。また、通信装置３９は、例えば、ユーザを認証するための認証機能（ＡＵ）３９４を含んでいる。一方、情報処理装置５０は、内部の拡張仮想サーバ部上で、対応する仮想的な機能ＮＡＴ５４２、ＳＳＬ５４４、ＷＡＦ５４６、ＳＬＢ５４８、検疫機能（ＮＱ）５８４および認証機能（ＡＵ）５９４のいずれかを動的に生成して起動することができる。図４Ｂにおいて、太い実線で囲まれた機能は活動状態にある機能を示し、また、破線で囲まれた機能は非活動状態または休止状態にある機能を示している。
【００５６】
通信装置３０、３８および３９において、受信されるパケットのトラフィックが少なく、処理負荷が低い場合、全ての受信パケットを、それぞれのＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６、ＬＢ３４８、検疫機能３８４および認証機能３９４でこの順に処理する。通信装置３０、３８および３９は、それぞれの低負荷状態では、自己の機能の処理能力を情報処理装置５０に拡張またはスケールアウトすることはない。通信装置３０はその処理済みのパケットを通信装置３８に供給し、通信装置３８はその処理済みのパケットを通信装置３９に供給し、通信装置３９はその処理済みのパケットを情報処理装置４０〜４２に供給する。この場合、情報処理装置５０の拡張仮想サーバ部では、仮想通信装置または対応する仮想的な機能が起動されず、従って、仮想的な機能ＮＡＴ５４２、ＳＳＬ５４４、ＷＡＦ５４６、ＳＬＢ５４８、検疫機能５８４および認証機能５９４は、生成されず活動状態にない。
【００５７】
図４Ｂにおいて、通信装置３０、３８、３９の各々は、それぞれにおいて受信パケットのトラフィックが多い場合、図２Ｂ〜２Ｄの場合と同様に動作することができる。一方、前段の通信装置３０において、受信パケットのトラフィックが多い場合は、その後段の通信装置３８および３９を含めて、通信装置３０、３８および３９の機能または処理能力を情報処理装置５０にスケールアウトすることができる。
【００５８】
例えば、通信装置３０において、ＷＡＦ３４６またはそれ以降の機能の負荷が高い場合、通信装置３０、３８、３９は、次のように動作することができる。通信装置３０は、例えば、１つ以上の機能の中で高負荷状態にあるＷＡＦ３４６以降の機能に対応する処理機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。その理由は、例えば、通信装置３０のＷＡＦ３４６が高負荷状態にある場合、やがて、その後段の通信装置３０のＳＬＢ３４８、通信装置３８またはその検疫機能３８４、および通信装置３９またはその認証機能３９４も高負荷状態になると予測または推定されるからである。この場合、情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、図４Ｂに実線で連結して示された仮想的な機能ＷＡＦ５４６から認証機能５９４までを生成して起動する。
【００５９】
通信装置３０は、通信装置３０のＳＳＬ３４４で処理された後の、ＷＡＦ３４６によって処理される前のその時点以降に確立されたコネクションのパケットを、破線で示されているように、情報処理装置５０に転送する。情報処理装置５０は、その転送されたパケットを受け取って、そのＷＡＦ５４６に処理させる。情報処理装置５０は、そのパケットを、仮想的な機能ＷＡＦ５４６とその後のＳＬＢ５４８、検疫機能５８４および認証機能５９４に連続的に処理させる。その一方で、通信装置３０、３８および３９は、それぞれのＮＡＴ３４２、ＳＳＬ３４４、ＷＡＦ３４６、ＳＬＢ３４８、検疫機能３８４および認証機能３９４で、その転送の開始時点以前に確立されたコネクションの受信パケットを処理し続ける。次いで、情報処理装置５０は、破線で示されているように、処理済みのパケットを最終段の通信装置３９へ転送し返すか、または情報処理装置４０〜４２に直接的に転送する。通信装置３９は、その処理済みのパケットを受信した場合、その処理済みのパケットを情報処理装置４０〜４２に転送する。
【００６０】
その後、通信装置３０、３８および３９において負荷が充分低くなった場合、通信装置３０は、その時点以降に確立されたコネクションの受信パケットを、情報処理装置５０に転送することなく、通信装置３０、３８および３９のＷＡＦ３４６以降の機能に処理させる。一方、情報処理装置５０は、転送されるパケットがある限り、仮想的な機能ＷＡＦ５４６以降の機能でパケットを処理し続け、転送されるパケットがなくなった場合に、ＷＡＦ５４６以降の機能を非活動状態にし、さらに削除してもよい。
【００６１】
このようにして、通信装置３０、３８および３９は、その少なくとも１つ以上の機能に対応する仮想的な機能を、情報処理装置５０の拡張仮想サーバ部に動的に起動させて、カスケード接続関係にある通信装置３０、３８および３９の処理を分担させることができる。また、通信装置３０は、その後段の通信装置３８および３９の機能の処理を、情報処理装置５０の拡張仮想サーバ部の後段の仮想的な機能に実行させて、通信装置３０の後段の通信装置３８および３９がその後に高負荷状態になるのを防止することができる。
【００６２】
図５は、実施形態による、ネットワーク５と情報処理装置４０および４２の間に、分岐接続関係にある複数の通信装置３０、３８および３９と、通信装置３０、３８および３９に接続された情報処理装置５０とを含むシステムの概略的構成（configuration）の例を示している。この場合、通信装置３８および３９は、通信装置３０の後段に並列的に接続されており、さらに、それぞれの後段に情報処理装置４０および４２が接続されている。情報処理装置５０は、さらに情報処理装置４０および４２に接続されていてもよい。
【００６３】
図５において、通信装置３０、３８および３９の各々は、図１の通信装置３０の場合と同様に、その機能または処理能力の少なくとも一部を、情報処理装置５０の拡張仮想サーバ部に拡張しまたはスケールアウトすることができる。通信装置３０、３８および３９は、それぞれの或る機能の負荷が高負荷状態になった場合に、その或る機能に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、それぞれの或る機能に対応する仮想的な機能を動的に生成して起動する。
【００６４】
次いで、情報処理装置５０の拡張仮想サーバ部は、通信装置３０、３８および３９からパケットを受け取って、そのパケットをその対応する仮想的な機能で処理する。その仮想的な機能で処理されたパケットは、通信装置３０、３８および／または３９に転送されてさらに処理されてもよい。情報処理装置５０または通信装置３８および３９は、処理済みのパケットをそれぞれ情報処理装置４０および４２に供給してもよい。
【００６５】
通信装置３０、３８および３９の各々において、受信されるパケットのトラフィックが少なく、処理負荷が低い場合、全ての受信パケットを、それぞれの機能で順に処理する。通信装置３０はその処理済みのパケットを通信装置３８および３９に供給し、通信装置３８および３９はその処理済みのパケットをそれぞれ情報処理装置４０および４２に供給する。
【００６６】
例えば、通信装置３０の負荷が閾値を超え、１つの機能またはそれ以降の機能の負荷が高い場合、通信装置３０は、図４Ｂの場合と同様に、その１つの機能以降の機能に対応する機能を起動するよう、情報処理装置５０の拡張仮想サーバ部に要求する。通信装置３０の或る機能が高負荷状態にある場合、やがて、その後段の通信装置３０の機能、通信装置３８および通信装置３９の機能も高負荷状態になると予測または推定される。情報処理装置５０の拡張仮想サーバ部は、その要求に応答して、仮想的な機能を生成して起動する。
【００６７】
通信装置３０は、その１つの機能で処理される前のその時点以降に確立されたコネクションのパケットを、情報処理装置５０の拡張仮想サーバ部に転送して処理させる。情報処理装置５０は、転送されたパケットを対応する仮想的な機能で連続的に処理する。その一方で、通信装置３０、３８および３９は、それぞれの機能で、その転送の開始時点以前に確立されたコネクションの受信パケットを処理し続ける。次いで、情報処理装置５０は、その対応する機能で処理されたパケットを、通信装置３８および３９へ転送し返すか、または情報処理装置４０および４２に直接的に転送する。通信装置３８および３９は、その処理済みのパケットを受信した場合、その処理済みのパケットをそれぞれ情報処理装置４０および４２に転送する。
【００６８】
その後、通信装置３０、３８および３９において負荷が充分低くなった場合、通信装置３０は、その時点以降に確立されたコネクションの受信パケットを、情報処理装置５０に転送することなく、通信装置３０、３８および３９のそれぞれの機能に処理させる。一方、情報処理装置５０は、転送されるパケットがある限り、その対応する仮想的な機能でパケットを処理し続け、転送されるパケットがなくなった場合に、その仮想的な機能を非活動状態にし、さらに削除してもよい。
【００６９】
このようにして、通信装置３０、３８および３９は、その少なくとも１つ以上の機能に対応する仮想的な機能を、情報処理装置５０の拡張仮想サーバ部に動的に起動させて、分岐接続関係にある通信装置３０、３８および３９の処理を分担させることができる。また、通信装置３０は、その後段の通信装置３８および３９の機能の処理を、情報処理装置５０の拡張仮想サーバ部の後段の仮想的な機能に実行させて、通信装置３０の後段の通信装置３８および３９がその後に高負荷状態になるのを防止することができる。
【００７０】
次は、通信装置３０〜３９の各々の概略的な構成（configuration）の例について説明する。
【００７１】
図６は、実施形態による、通信装置３０〜３９の各々の概略的な構成（configuration）の例を示している。
【００７２】
通信装置３０〜３９の各々は、プロセッサ３０２、記憶部３０４、通信インタフェース（ＩＦ）部３０６、インタフェース（ＩＦ）部３１０、通信制御部３１２、および通信用記憶部３１６を含んでいる。通信制御部３１２は転送部３１４を含んでいる。通信用記憶部３１６は、通信用のバッファ・メモリを含んでいてもよい。通信装置３０〜３９の各々は、さらに、処理能力拡張制御部３２０、および１つ以上の機能部３３０、３３２、．．．３４０を含んでいる。処理能力拡張制御部３２０は、負荷監視部３２２、負荷分析部または負荷解析部３２４、情報収集部３２６、および連携部３２８を含んでいる。通信装置３０〜３９の各々は、さらにＵＳＢ通信部３６２を含んでいる。
【００７３】
プロセッサ３０２は、記憶部３０４、通信インタフェース部３０６、インタフェース部３１０、通信制御部３１２、通信用記憶部３１６、処理能力拡張制御部３２０および機能部３３０〜３４０に制御信号を供給して、これらの要素の動作を制御してもよい。
【００７４】
機能部３３０〜３４０は、プロセッサ３０２の一部の機能であってもよい。代替形態として、機能部３３０〜３４０は、プロセッサ３０２とは異なるプロセッサまたはハードウェア通信モジュールとして実装されてもよい。
【００７５】
機能部３３０〜３４０は、例えば、通信プロトコル処理、セキュリティ処理、およびトラフィック均等化処理などのための、いずれかの機能を含んでいてもよい。この場合、機能部３３０〜３４０は、例えば、ＮＡＴ（Network Address Translation）、ＳＳＬ（Secure Socket Layer）、ＷＡＦ（Web Application Firewall）、ＳＬＢ（Server Load Balancing）、検疫機能、および認証機能、等の複数の機能の中の互いに異なるいずれかの機能を実行するものであってもよい。
【００７６】
通信装置３０〜３９の各々は、通信インタフェース部３０６を介してネットワーク５、および、他の通信装置（３０〜３９）および／または情報処理装置４０〜４２に接続される。また、各通信装置３０〜３９は、インタフェース部３１０を介して情報処理装置５０に接続される。通信制御部３１２は、通信インタフェース部３０６を介した、ネットワーク５、他の通信装置（３０〜３９）および／または情報処理装置４０〜４２との間の通信を制御する。また、通信制御部３１２は、インタフェース部３１０を介した情報処理装置５０との間の情報およびパケットの転送を制御する。
【００７７】
通信制御部３１２の転送部３１４は、通信制御部３１２から渡されたパケットを分析し、パケットのヘッダ部およびトレーラ部を処理し、情報処理装置５０にパケットを転送することができる。転送部３１４は、通信制御部３１２と一体的に設けられてもよい。代替形態として、転送部３１４は、通信制御部３１２によって実行されるソフトウェア・モジュールとして通信制御部３１２に追加インストールされても、または通信制御部３１２によって制御されるハードウェア・モジュールとして通信制御部３１２に追加的に組込まれてもよい。
【００７８】
処理能力拡張制御部３２０は、機能部３３０〜３４０の各機能に対応する各機能を、情報処理装置５０上の拡張仮想サーバ部（５０２４）にその仮想的な機能として動的に生成させる。それによって、通信装置３０〜３９の機能の少なくとも一部の処理能力を動的に外部に拡張またはスケールアウトすることができる。処理能力拡張制御部３２０は、プロセッサ３０２によって実行されるソフトウェア・モジュールとして通信装置３０〜３９にインストールされても、またはプロセッサ３０２によって制御されるハードウェア・モジュールとして通信装置３０〜３９に追加的に組み込まれてもよい。
【００７９】
プロセッサ３０２は、複数の機能部３３０〜３４０および処理能力拡張制御部３２０の機能を含む例えば集積回路として実装された専用のプロセッサであってもよい。また、プロセッサ３０２は、記憶部３０４に格納された複数の機能部３３０〜３４０および処理能力拡張制御部３２０の機能を有するアプリケーション・プログラムに従って動作するものであってもよい。アプリケーション・プログラムは、記録媒体３６４に格納されていて、ドライブ３６６によって記録媒体３６４から読み出されて通信装置３０〜３９の各々にインストールされてもよい。
【００８０】
次は、情報処理装置５０の概略的な構成（configuration）の例について説明する。
【００８１】
図７は、情報処理装置５０の概略的な構成（configuration）の例を示している。
【００８２】
情報処理装置５０は、プロセッサ５０２、記憶部５０４、通信インタフェース部（ＩＦ）５０６、インタフェース部５１０、およびＵＳＢ通信部５３２を含んでいる。情報処理装置５０は、さらに、入力部３４２、表示部３４４、および音響部３４６を含んでいてもよい。入力部３４２は、例えばキーボード、マウスまたはタッチパッドのようなポインティング・デバイス、およびタッチパネルを含んでいてもよい。
【００８３】
情報処理装置５０は、プロセッサ５０２、記憶部５０４、入出力インタフェース（Ｉ／Ｏ）、内部バス３５、等を含む例えばパーソナル・コンピュータまたはサーバ装置のようなコンピュータであってもよい。プロセッサ５０２は、コンピュータ用のＣＰＵ（Central Processing Unit）であってもよい。記憶部５０４には、例えば、主記憶装置および半導体メモリ、および/または、ハードディスク・ドライブ（ＨＤＤ）および／またはフラッシュメモリ・ドライブ（ＳＳＤ：Solid State Drive）、等が含まれる。
【００８４】
プロセッサ５０２は、仮想サーバ機能を含む例えば集積回路として実装された専用のプロセッサであってもよい。また、プロセッサ５０２は、記憶部５０４に格納された仮想サーバ機能を有するアプリケーション・プログラムに従って動作するものであってもよい。アプリケーション・プログラムは、記録媒体５６４に格納されていて、ドライブ５３６によって記録媒体５６４から読み出されてＵＳＢ通信部５３２を介して情報処理装置５０にインストールされてもよい。
【００８５】
情報処理装置５０は、その通信インタフェース部５０６を介して情報処理装置４０〜４２に接続される。また、情報処理装置５０は、そのインタフェース部５１０を介して通信装置３０〜３９に接続される。
【００８６】
次は、情報処理装置５０のプロセッサ５０２の概略的な構成の例について説明する。
【００８７】
図８は、情報処理装置５０のプロセッサ５０２の概略的な構成（configuration）の例を示している。
【００８８】
プロセッサ５０２は、例えば、制御部５０２０、アプリケーション部５０２２、拡張仮想サーバ部５０２４、およびその他の処理部５４００を含んでいてもよい。制御部５０２０は、アプリケーション部５０２２、拡張仮想サーバ部５０２４、および処理部５４００に制御信号を供給して、アプリケーション部５０２２、拡張仮想サーバ部５０２４および処理部５４００の動作を制御してもよい。
【００８９】
拡張仮想サーバ部５０２４は、例えば、管理部５０２６およびハイパーバイザ部５０２８を含んでいる。また、拡張仮想サーバ部５０２４は、例えば、ハイパーバイザ部５０２８によって動的に生成される１つ以上の仮想通信装置５１３０、５１３１、．．．、５１３９を含むことができる。
【００９０】
仮想通信装置５１３０〜５１３９の各々は、装置管理部５０３２、通信監視部５０３４、連携部５０３６、および通信制御部５３１２を含んでいる。通信制御部５３１２は、通信装置３０〜３９との間でパケットを転送するための転送部５３１４を含んでいる。また、仮想通信装置５１３０〜５１３３の各々は、動的に生成される１つ以上の機能部５３３０、５３３２、．．．、５３４０を含んでいる。
【００９１】
機能部５３３０〜５３４０は、通信装置３０〜３９の機能部３３０〜３４０と同様に、例えば、ＩＰｓｅｃ、ＮＡＴ、ＳＳＬ、ＷＡＦ、ＳＬＢ、検疫機能、および認証機能、等の複数の機能の中の互いに異なるいずれかの機能を実行するものであってもよい。
【００９２】
次は、通信装置３０〜３９と情報処理装置５０の概略的な連携動作の例について説明する。ここでは、例として通信装置３０について説明するが、他の通信装置３１〜３９も、通信装置３０と同様に動作することができる。また、例として仮想通信装置５１３０について説明するが、他の仮想通信装置５１３１〜５１３９も、仮想通信装置５１３０と同様に動作することができる。
【００９３】
図１、６および８を再び参照すると、通信装置３０の通信制御部３１２は、ネットワーク５を介して、例えば情報処理装置１１０からコネクション要求を受信すると、情報処理装置１１０と情報処理装置４０の間にコネクションを確立する。その情報処理装置４０は例えばサーバ装置であってもよく、また、情報処理装置１１０は例えば情報処理端末であってもよい。次いで、通信装置３０の機能部３３０〜３４０は、ネットワーク５から受信したパケットに対してそれぞれの処理を開始する。すると、通信制御部３１２は、通信装置３０においてその分だけ負荷が増加する。通信装置３０の機能部３３０〜３４０は、時間の経過とともにそれぞれの処理が終了する。すると、通信制御部３１２は、そのコネクションを解放または切断し、通信装置３０においてその分だけ負荷が減少する。
【００９４】
一方、通信装置３０の処理能力拡張制御部３２０は、プロセッサ３０２、記憶部３０４、通信用記憶部３１６および／または機能部３３０〜３４０における負荷の状態を検出し、高負荷状態が検出された場合にはその要因となっている機能部３３０〜３４０中の機能部を決定または特定する。次いで、処理能力拡張制御部３２０は、高負荷状態にある機能部（３３０〜３４０）の識別情報と共にその機能部に対応する機能部の起動を、情報処理装置５０の拡張仮想サーバ部５０２４に要求する。
【００９５】
拡張仮想サーバ部５０２４において、管理部５０２６は、その要求に応答して、その対応する機能部を動的に起動するようハイパーバイザ部５０２８に要求する。ハイパーバイザ部５０２８は、その要求に応答して、対応する仮想的な機能部（５３０〜５４０）を含む仮想通信装置５１３０を動的に生成して起動する。次いで、通信装置３０は、その後に確立されたコネクション上のパケットを拡張仮想サーバ部５０２４に転送し続ける。
【００９６】
拡張仮想サーバ部５０２４において、仮想通信装置５１３０は、通信装置３０から転送されたパケットを受け取って、その対応する仮想的な機能部（５３０〜５４０）でそのパケットを処理する。それによって、通信装置３０におけるその後の負荷の増大が抑止される。
【００９７】
その後、通信装置３０の処理負荷が低減して動作が安定した場合に、通信装置３０の処理能力拡張制御部３２０または通信制御部３１２は、その後に確立されたコネクションについて、拡張仮想サーバ部５０２４へのパケットの転送を停止させる。通信装置３０は、その後に確立されたコネクションについてパケットの全ての機能部３３０〜３４０での処理を再開する。その後、仮想通信装置５１３０は、パケット処理中の継続中のコネクションまたはそのコネクション数を監視し、仮想通信装置５１３０へのパケットの転送が停止されて、継続中の全てのコネクションが解放された場合、仮想通信装置５１３０はその動作を停止して消去されてもよい。その動作停止の前に、仮想通信装置５１３０は、自己の動作の停止を通信装置３０およびハイパーバイザ部５０２８に通知する。
【００９８】
次は、図１または３における、通信装置３０〜３２と情報処理装置５０のより具体的な連携動作の例について説明する。
【００９９】
図９は、通信装置３０〜３２の通信制御部３１２、処理能力拡張制御部３２０および機能部３３０〜３３６と、情報処理装置５０の管理部５０２６、ハイパーバイザ部５０２８および仮想通信装置５１３０とにおける接続または結合関係の例を示している。
【０１００】
図９において、通信装置３０〜３２の各々はそのインタフェース部３１０（図６）を介して情報処理装置５０に結合されている。また、情報処理装置５０はそのインタフェース部５１０（図７）を介して通信装置３０〜３２に結合されている。インタフェース部３１０とインタフェース部５１０との間の結合は、有線通信または無線通信によるものであってもよい。
【０１０１】
通信装置３０〜３２の各々において、負荷監視部３２２は、プロセッサ３０２、記憶部３０４および通信用記憶部３１６に結合される。負荷監視部３２２は負荷分析部３２４に結合される。負荷分析部３２４は、情報収集部３２６、連携部３２８および通信制御部３１２に結合されてもよい。負荷分析部３２４は、さらに、１点鎖線で示されていように、機能部３３０〜３３６に結合されてもよい。情報収集部３２６は、記憶部３０４内の装置固有情報３８０等を参照する。連携部３２８は、情報処理装置５０の拡張仮想サーバ部５０２４における、管理部５０２６、および仮想通信装置５１３０の連携部５０３６に結合される。通信制御部３１２は、ネットワーク５と、情報処理装置４０〜４３と接続され、記憶部３０４または通信用記憶部３１６内のコネクション情報３１７を参照する。通信制御部３１２は、さらに、他の通信装置３８または３９の通信制御部（３１２）に接続されてもよい。機能部３３０〜３３６は、通信制御部３１２に結合される。
【０１０２】
また、情報処理装置５０の拡張仮想サーバ部５０２４において、管理部５０２６は、ハイパーバイザ部５０２８、および仮想通信装置５１３０の装置管理部５０３２に結合される。連携部５０３６は装置管理部５０３２に結合される。装置管理部５０３２は通信監視部５０３４に結合される。機能部５３３０〜５３３６は、通信制御部５３１２に結合され、受け取ったパケットに関するコネクション情報５３１７を記憶部３０４に格納する。通信監視部５０３４は、記憶部５０４内のコネクション情報５３１７を参照する。通信制御部５３１２は通信装置３０〜３２の通信制御部３１２に結合される。
【０１０３】
管理者は、通信装置３０〜３２において、それぞれの負荷分析部３２４によって信装置３０〜３３の高負荷状態またはトラフィックの輻輳状態を判定するための閾値を予め設定して、記憶部３０４に格納する。
【０１０４】
図１０は、負荷監視部３２２によって参照される、通信装置３０〜３９に設定される閾値のテーブルの例を示している。図１０において、その閾値は、例えば、プロセッサ３０２におけるＣＰＵのＣＰＵ使用率９０％、記憶部３０４のメモリ使用率９０％、記憶部３０４中のハード・ディスクの入出力（Ｉ／Ｏ）８０％、及び通信記憶部３１６における通信バッファ使用率９０％であってもよい。但し、閾値は、高負荷状態を検出するための閾値と、低負荷状態を検出するための閾値とは、異なっていてもまたは同じであってもよい。
【０１０５】
次は、例として、情報処理端末としての外部の複数の情報処理装置１１０〜１１６が、ネットワーク５を介して、通信装置３０の代表ＩＰアドレスを宛先として、サーバ装置としての情報処理装置４０〜４２にアクセスして情報処理装置４０〜４２と通信する場合の動作を説明する。通信装置３０の代表ＩＰアドレスは、例えば、１０．１．１．１００であってもよい。以下では、通信装置３０について説明するが、通信装置３１および３２についても、通信装置３０の場合と同様に動作する。
【０１０６】
通信装置３０において、通信制御部３１２は、ネットワーク５を介した情報処理装置１１０〜１１６からのコネクション要求に応答して、ネットワーク５を介して情報処理装置１１０〜１１６と情報処理装置４０〜４２の間にコネクションを確立する。通信制御部３１２は、その確立されたコネクションに関するコネクション情報３１７を記憶部３０４に格納する。また、通信制御部３１２は、その確立されたコネクション上でパケットを受信し、そのパケットを１つ以上の機能部３３０〜３３６に処理させ、処理済みのパケットを情報処理装置４０〜４２に転送する。
【０１０７】
例えば、情報処理装置１１０〜１１６から通信装置３０を介したサーバ装置としての情報処理装置４０〜４２へのアクセスに関連して、コネクション数が時間経過とともに増加して、通信装置３０の資源の負荷（例、ＣＰＵ使用率）が閾値（例、９０％）を超えたとする。
【０１０８】
一方、通信装置３０において、負荷監視部３２２は、常にまたは短い周期で、プロセッサ３０２、記憶部３０４および通信用記憶部３１６等の資源の負荷状態を監視する。負荷監視部３２２は、記憶部３０４内の負荷の閾値（図１０）を参照して、いずれかの資源の負荷が閾値を超えてその資源の高負荷状態を検出した場合に、その高負荷状態を負荷分析部３２４に通知する。
【０１０９】
負荷分析部３２４は、その通知に応答して、通信装置３０内で機能部３３０〜３３６のいずれの機能部が高負荷状態の要因となっているかを判定する。そのために、負荷分析部３２４は、通信装置３０上で動作中の機能部３３０〜３３６の中でＣＰＵ占有率、メモリ使用量及び通信バッファ使用比率が最も高い少なくとも１つの機能部を検出し、最も高い負荷状態の少なくとも１つの機能部の識別情報を情報収集部３２６及び連携部３２８に通知する。
【０１１０】
情報収集部３２６は、その高負荷状態の機能部の識別情報の受信に応答して、その高負荷状態の機能部（３３０〜３３６）に対応する拡張仮想サーバ部５０２４の機能部を起動するための情報を、記憶部３０４内の通信装置３０の装置固有情報３８０等から収集して連携部３２８に通知する。
【０１１１】
連携部３２８は、その高負荷状態の機能部の識別情報および装置固有情報３８０に基づいて、情報処理装置５０の拡張仮想サーバ部５０２４上の管理部５０２６に対して、少なくともそれに対応する機能部を含む仮想通信装置（５１３０）を起動するよう要求する。管理部５０２６は、その要求に応答して、ハイパーバイザ部５０２８に、仮想通信装置５１３０を生成して起動するよう要求する。ハイパーバイザ部５０２８は、その要求に応答して、仮想通信装置５１３０を生成して起動する。ここで、管理部５０２６は、拡張仮想サーバ部５０２４の仮想通信装置５１３０のＩＰアドレスを、例えば、１９２．１６８．０．１０１と設定してもよい。
【０１１２】
一方、通信制御部３１２の転送部３１４は、仮想通信装置５１３０の起動後に確立されたコネクションについて、ネットワーク５からの受信パケットまたはいずれかの機能部３３０〜３３４で処理済みのパケットを分析する。転送部３１４は、次の機能部（３３０〜３３６）が高負荷状態で、そのパケットを仮想通信装置５１３０に転送する場合には、そのパケットに制御情報および次処理の情報を加えて、そのパケットを仮想通信装置５１３０へ転送する。
【０１１３】
仮想通信制御部５３１２の転送部５３１４は、通信装置３０〜３２から受け取ったパケットを分析し、その制御情報を参照して、仮想通信装置５１３０上の制御情報に対応する機能部（５３３０〜５３３６）を特定する。転送部５３１４は、通信装置３０から受け取ったパケットをその対応する機能部（５３３０〜５３３６）に渡して、その対応する機能部（５３３０〜５３３６）にそのパケットを処理させる。仮想通信制御部５３１２は、処理済みのパケットを次段の装置、例えば通信装置３０または３９の別の機能部に転送する。
【０１１４】
その後、例えば、情報処理装置１１０〜１１６から通信装置３０を介した情報処理装置４０〜４２への幾つかのアクセスが消滅し、そのコネクション数が時間経過とともに減少して、通信装置３０の資源の負荷が閾値より低くなったとする。一方、通信装置３０において、負荷監視部３２２は、記憶部３０４内の閾値を参照して、いずれかの資源の負荷が閾値より低くなり高負荷状態から低負荷状態に変化した場合に、その変化または低負荷状態を負荷分析部３２４に通知する。但し、ここでの閾値は、低負荷状態を検出するための閾値であり、前述の高負荷状態を検出するための閾値とは異なっていてもまたは同じであってもよく、例えば、高負荷状態を検出するための閾値より低くてもよい。例えば、ＣＰＵの低負荷状態を検出するためのＣＰＵ使用率は、７０％または８０％であってもよい。そのように、高負荷状態を検出するための閾値を高負荷状態を検出するための閾値より低くすることによって、例えば、通信装置３０と情報処理装置５０の間の連携動作をより安定させることができる。
【０１１５】
負荷分析部３２４は、その通知に応答して、通信制御部３１２に対して、その後に確立されたコネクションに関する受信パケットの拡張仮想サーバ部５０２４への転送を停止するよう要求する。通信制御部３１２は、その要求に応答して、その後に確立されたコネクションについて、転送部３１４による受信パケットの仮想通信装置５１３０への転送を停止する。その後、通信制御部３１２は、その後の受信パケットを機能部３３０〜３３６に処理させる。
【０１１６】
情報処理装置５０において、通信監視部５０３４は、記憶部５０４中のコネクション情報５３１７を監視し、継続中のコネクション情報が無い状態が閾値時間を超えて継続すると、仮想通信装置５１３０が無通信状態であると判定する。次いで、通信監視部５０３４は仮想通信装置５１３０の無通信状態を装置管理部５０３２に通知する。また、装置管理部５０３２は、仮想通信装置５１３０が停止されることを連携部５０３６に通知する。連携部５０３６は、その通知に応答して、通信装置３０に仮想通信装置５１３０が停止されることを通知する。その後、連携部５０３６は、通信装置３０の連携部３２８から通知の受領確認応答（ＡＣＫ）を受け取ると、装置管理部５０３２にその受領確認応答（ＡＣＫ）の受領を通知する。装置管理部５０３２は、その通知に応答して、仮想通信装置５１３０を停止させ、仮想通信装置５１３０を削除してもよい。管理部５０２６は、仮想通信装置５１３０の動作停止前に、装置管理部５０３２から装置停止通知を受け取って、ハイパーバイザ部５０２８にその停止を通知してもよい。
【０１１７】
次は、図９の通信装置３０〜３２と情報処理装置５０の間の連携動作の手順の例について説明する。
【０１１８】
図１１は、図９における、仮想通信装置５１３０を起動するための、通信装置３０と情報処理装置５０の拡張仮想サーバ部５０２４との間の連携動作の手順の例を示している。
【０１１９】
図１１を参照すると、ステップ７０４において、通信装置３０の連携部３２８は、拡張仮想サーバ部５０２４の管理部５０２６に、仮想通信装置（５１３０）を起動するよう要求する。ステップ７０６において、管理部５０２６は、その要求に応答して、ハイパーバイザ部５０２８に、仮想通信装置（５１３０）を起動するよう要求する。ステップ７０８において、ハイパーバイザ部５０２８は、その要求に応答して、仮想通信装置５１３０を生成して起動する。
【０１２０】
ステップ７１４において、管理部５０２６は、仮想通信装置５１３０の起動状態を監視する。仮想通信装置５１３０の起動が完了すると、ステップ７１６において、管理部５０２６は、仮想通信装置５１３０の装置管理部５０３２に、通信装置３０との通信に用いられるＩＰアドレスを割り当てて設定する。ステップ７１８において、管理部５０２６は、さらに、通信装置３０の連携部３２８にそのＩＰアドレスを通知する。
【０１２１】
ステップ７２４において、通信装置３０の連携部３２８は、装置管理部５０３２に、高負荷状態の機能部（３３０〜３３６）に対応する機能部（５３３０〜５３３６）を起動するよう要求する。ステップ７２６において、装置管理部５０３２は、その要求に応答して、要求された機能部（５３３０〜５３３６）だけを起動し、他の機能部（５３３０〜５３３６）を停止状態に維持する。ステップ７２８において、装置管理部５０３２は、起動された機能部（５３３０〜５３３６）のみの識別情報を通信装置３０の連携部３２８に通知する。
【０１２２】
ステップ７３２において、連携部３２８は、装置管理部５０３２のＩＰアドレスを宛先にして、コネクションとそのパケットの転送に関連する構成定義情報を、装置管理部５０３２に供給する。ステップ７３４において、装置管理部５０３２は、その受け取った構成定義情報を記憶部５０４に格納して通信制御部５３１２等の設定に反映させる。ステップ７３６において、装置管理部５０３２は、機能部（５３３０〜５３３６）におけるパケット処理の準備完了状態を通信装置３０の連携部３２８に通知する。次いで、通信装置３０の通信制御部３１２と仮想通信装置５１３０の通信制御部５３１２との間で、未処理のパケットと処理済みのパケットの転送が開始される。
【０１２３】
図１２Ａは、通信装置３０〜３９と情報処理装置５０の仮想通信装置５１３０〜５１３９との間で転送されるパケットのフォーマットの例を示している。
【０１２４】
図１２Ａにおいて、パケットは、ヘッダ部としてＴＣＰヘッダ部、およびボディ部として受信パケットまたは処理されたパケットを含み、さらに、トレーラ部として追加的に、制御情報、次処理の識別情報、および処理結果の各フィールドを含んでいる。ここで、制御情報は、仮想通信装置５１３０等において実行される処理機能を表す識別情報および関連するパラメータを含んでいてもよい。また、次処理は、仮想通信装置５１３０等において処理されたパケットに対して、通信装置３０〜３９において行われる次の処理の機能の識別情報を含んでいてもよい。これらの制御情報、次処理および処理結果に関する情報は、レイヤ４のＴＣＰパケット単位で挿入される。代替形態として、制御情報、次処理の識別情報、および処理結果の各フィールドは、ヘッダの一部として追加されてもよい。
【０１２５】
仮想通信装置５１３０で起動される機能部（５３０〜５３６）が、例えばＩＰｓｅｃの処理機能である場合、制御情報は、例えば、次の情報を含んでいてもよい。
−  ＩＰｓｅｃトンネル・テーブルＩＤ、
−  ＩＰｓｅｃポリシー・ルール・テーブルのＩＤ、
−  復号化前の受信仮想インタフェースＩＤ、および
−  暗号化前の送信トンネル・インタフェースＩＤ。
【０１２６】
また、仮想通信装置５１３０において起動される機能部（５３３０〜５３３６）が、例えばＮＡＴの処理機能である場合、制御情報は、例えば、ＮＡＴ制御フラグ、およびアドレス変換条件ＩＤ（識別情報）を含んでいてもよい。
【０１２７】
さらに、仮想通信装置５１３０において起動される機能部（５３３０〜５３３６）が、例えばＳＳＬの場合、制御情報は、例えば、ＳＳＬ復号化フラグ、およびＳＳＬ暗号化フラグを含んでいてもよい。
【０１２８】
図１２Ｂは、通信装置３０〜３９から仮想通信装置５１３０〜５１３９へ転送されるパケットの構造の例を示している。
【０１２９】
図１２Ｂにおいて、パケットのトレーラ部は、制御情報として、仮想通信装置５１３０〜５１３９へ転送されたパケットに対する処理がＳＳＬ復号化であり、そのＳＳＬ復号化が未処理であることを表す情報を含んでいる。また、パケットのトレーラ部は、次処理として、通信装置３０〜３９へ転送されたＳＳＬ復号化済みのパケットの次の処理が、ＳＬＢであることを表す情報を含んでいる。
【０１３０】
図１２Ｃは、情報処理装置５０の仮想通信装置５１３０〜５１３９から通信装置３０〜３９へ転送されるパケットの構造の例を示している。
【０１３１】
図１２Ｃにおいて、パケットのトレーラ部は、制御情報として、通信装置３０〜３９へ転送されるパケットのＳＳＬ復号化が処理済みであることを表す情報を含んでいる。また、パケットのトレーラ部は、次処理として、通信装置３０〜３９へ転送されたＳＳＬ復号化済みのパケットの次の処理が、ＳＬＢであることを表す情報を含んでいる。また、パケットのトレーラ部は、処理結果として、制御情報に示された仮想通信装置５１３０等における機能による処理結果が良好（ＯＫ）であることを表す情報を含んでいる。
【０１３２】
図１３は、図９における通信装置３０の通信制御部３１２と仮想通信装置５１３０の通信制御部５３１２との間でパケットを転送するための、通信装置３０と情報処理装置５０の拡張仮想サーバ部５０２４との間の連携動作の手順の例を示している。
【０１３３】
ステップ７４２において、通信制御部３１２は、ネットワーク５からパケットを受信する。通信制御部３１２は、前段の機能部３３０等が低負荷状態の場合は、機能部３３０等にパケットを処理させる。
【０１３４】
ステップ７４４において、通信制御部３１２は、転送部３１４に、受信パケットまたは前段の機能部３３０等で処理済みのパケットを仮想通信装置５１３０へと転送するよう要求する。
【０１３５】
ステップ７４６において、転送部３１４は、そのパケットを分析し、高負荷状態の機能部（例、３３２）の前段の受信パケットまたは機能部（例、３３０）による処理済みパケットに、トレーラ部として制御情報および次処理の情報を追加する。次いで、転送部３１４は、そのパケットを仮想通信装置５１３０に転送し、仮想通信装置５１３０の通信制御部５３１２がそのパケットを受信する。
【０１３６】
ステップ７４８において、通信制御部５３１２は、その受け取ったパケットを、対応する機能部に転送して処理させるよう、転送部５３１４に要求する。ステップ７５２において、転送部５３１４は、そのパケットを分析し、制御情報における処理機能に対応する機能部（例、５３３２）に、そのパケットを渡してそのパケットを処理するよう要求する。
【０１３７】
ステップ７５４において、その対応する機能部（例、５３３２）は、そのパケットに関するコネクション情報５３１７を記憶部５０４に格納して登録する。そのコネクション情報は、通信監視部５０３４によって監視される。ステップ７５６において、その対応する機能部（例、５３３２）はそのパケットを処理する。制御情報に示されたその次の処理がある場合には、その対応する機能部（例、５３３２）は、処理済みのパケットを次の機能部（例、５３３４）に渡してもよい。ステップ７５８において、その対応する機能部（例、５３３２）は、処理済みのパケットを転送部５３１４に渡す。
【０１３８】
転送部５３１４が受け取ったパケットの制御情報に示された処理機能が、２つ以上の処理機能である場合は、各処理機能に対応して、ステップ７５４および７５６またはステップ７５２〜７５８が２回以上繰り返されてもよい。この場合、転送部５３１４は、２つ以上の機能部（５３３０〜５３３６）に、そのパケットを順に処理させる。
【０１３９】
ステップ７６０において、転送部５３１４は、機能部（例、５３３２）から受け取った処理済みのパケットを分析し、そのトレーラ部に処理結果を追加する。次いで、転送部５３１４は、処理結果を含む処理済みのパケットを通信制御部５３１２に渡す。ステップ７６２において、通信制御部５３１２は、処理済みのパケットを通信装置３０へ転送し、通信制御部３１２がそのパケットを受信する。
【０１４０】
ステップ７６４において、通信制御部３１２は、転送部３１４に、処理済みのパケットを次処理の機能部（例、３３４）または次の装置へ転送するよう要求する。
【０１４１】
ステップ７６８において、転送部３１４は、処理済みのパケットを分析し、次処理の機能を識別し、そのトレーラ部を削除する。その際、処理結果が、例えば、“パケット廃棄”を示す場合、転送部３１４は、受信パケットを破棄し、それ以降の処理を行わせない。処理結果が良好であれば、転送部３１４は、そのパケットを次処理の機能部（例、３３４）に転送してそのパケットを処理するよう要求する。次の処理がない場合は、転送部３１４は、通信制御部５３１２に次の通信装置（例、５１３８）または情報処理装置４０〜４２へ転送するよう要求する。
【０１４２】
ステップ７７０において、次処理の機能に対応する機能部（例、３３４）は、そのパケットを処理する。
【０１４３】
登録されたコネクション情報３１７および５３１７における同じコネクションについて、後続のパケットは、通信装置３０の機能部（例、３３０、３３４および３３６）、および仮想通信装置５１３０の機能部（例、５３３２）によって継続的に処理される。
【０１４４】
図１４は、通信装置３０によって実行される、仮想通信装置５１３０へのパケットの転送制御のための処理のフローチャートの例を示している。
【０１４５】
図１４を参照すると、ステップ９０２において、通信装置３０の通信制御部３１２は、新しく確立されたコネクションについて、前段からパケットを受け取る。この場合、前段は、例えば他の情報処理装置１１０〜１１６に接続されたネットワーク５であっても、または通信装置３０の機能部３３０〜３３４のいずれかであっても、通信装置３０が後段の場合にはその前段の通信装置であってもよい。
【０１４６】
ステップ９０４において、負荷監視部３２２は、通信装置３０の負荷が閾値より高いかどうかを決定する。通信装置３０の負荷が閾値より高いと決定された場合は、手順はステップ９０６に進む。通信装置３０の負荷が閾値以下であると決定された場合は、手順はステップ９１２に進む。
【０１４７】
ステップ９０６において、負荷分析部３２４は、通信装置３０の次段の機能部３３０〜３３６の負荷が高いかどうかを決定する。次段の機能部３３０〜３３６の負荷が高いと決定された場合は、手順はステップ９０８に進む。次段の機能部３３０〜３３６の負荷が高くないと決定された場合は、手順はステップ９１２に進む。
【０１４８】
ステップ９０８において、転送部３１４は、パケットを分析して、そのパケットにトレーラ部として制御情報および次処理の識別情報を追加する。ステップ９１０において、転送部３１４は、仮想通信装置５１３０の通信制御部５３１２にパケットを転送する。その後、手順はステップ９０２に戻る。
【０１４９】
ステップ９１２において、通信制御部３１２は、通信装置３０内の次の機能部（３３２〜３３６）または通信装置３０の後段の通信装置３８、３９または情報処理装置４０〜４２にパケットを転送する。その後、手順はステップ９０２に戻る。
【０１５０】
図１５は、通信装置３０によって実行される、仮想通信装置５１３０から受け取ったパケットの転送制御のための処理のフローチャートの例を示している。
【０１５１】
図１５を参照すると、ステップ９２２において、通信装置３０の転送部３１４は、仮想通信装置５１３０から処理済みのパケットを受信する。
【０１５２】
ステップ９２４において、転送部３１４は、そのパケットを分析して次処理に関する情報に基づいて、次処理が存在するかどうかを判定する。次処理が存在すると判定された場合は、手順はステップ９２６に進む。次処理が存在しないと判定された場合は、手順はステップ９３２に進む。
【０１５３】
ステップ９２６において、転送部３１４は、処理済みのパケットを、通信装置３０内の次の機能部３３４〜３３６へ渡して、その機能部３３４〜３３６にパケットの処理を要求する。その後、手順はステップ９２２に戻る。
【０１５４】
ステップ９３２において、転送部３１４は、処理済みのパケットを、次の装置、例えば別の通信装置３８または情報処理装置４０へ転送する。その後、手順はステップ９２２に戻る。
【０１５５】
図１６は、図９における、仮想通信装置５１３０へのパケットの転送を終了して、仮想通信装置５１３０を停止するための、通信装置３０と情報処理装置５０の間の連携動作の手順の例を示している。
【０１５６】
図１６を参照すると、通信装置３０において、負荷監視部３２２は、プロセッサ３０２、記憶部３０４および通信用記憶部３１６等の資源の負荷状態を監視する。この場合、負荷監視部３２２は、全ての資源の負荷が閾値より低く、その資源の低負荷状態を検出したものとする。
【０１５７】
ステップ７８４において、負荷監視部３２２は、通信装置３０の高負荷状態が解除されたことを負荷分析部３２４に通知する。
【０１５８】
ステップ７８６において、負荷分析部３２４は、通信制御部３１２に仮想通信装置５１３０へのパケットの転送を中止するよう要求する。ステップ７８８において、通信制御部３１２は、現在のコネクションの後で確立された後続のコネクションについて、転送部３１４にパケット転送をさせずパケット転送を終了させる。その後、現在のコネクションに関する通信装置３０から仮想通信装置５１３０への全てのパケットが転送されてしまった後、通信装置３０から仮想通信装置５１３０へパケットが転送されなくなる。
【０１５９】
ステップ７９２において、通信監視部５０３４は、コネクション情報５３１７を監視して、通信装置３０からの転送が終了された後、コネクション情報５３１７を参照して仮想通信装置５１３０で処理されるパケットがないことを検出する。ステップ７９４において、通信監視部５０３４は、仮想通信装置５１３０が無通信状態であることを、装置管理部５０３２に通知する。
【０１６０】
ステップ７９６において、装置管理部５０３２は、その無通信状態の通知に応答して、仮想通信装置５１３０が停止したことを通信装置３０に通知するよう連携部５３２８に要求する。ステップ７９８において、連携部５３２８は、仮想通信装置５１３０が停止したことを通信装置３０に通知する。通信装置３０において、連携部３２８が、仮想通信装置５１３０の停止の通知を受け取る。
【０１６１】
ステップ８０２において、連携部３２８は、仮想通信装置５１３０の停止の通知の受領に応答して、その通知の受け取ったことを表す受領確認応答（ＡＣＫ）を仮想通信装置に通知する。連携部３２８がその受領確認通知を受け取る。ステップ８０４において、連携部３２８は、仮想通信装置５１３０の停止の通知の完了を装置管理部５０３２に通知する。
【０１６２】
ステップ８０６において、装置管理部５０３２は、仮想通信装置５１３０の動作を停止し、さらに削除してもよい。従って、情報処理装置５０は、処理されるパケットがない場合には動作を停止することができ、その分の電力を節減することができる。
【０１６３】
次は、図４Ａにおける、タンデム接続の通信装置３０、３８および３９と情報処理装置５０との間の動作の例について説明する。
【０１６４】
図１７Ａおよび１７Ｂは、図４Ａにおける通信装置３０、３８および３９と、情報処理装置５０の管理部５０２６、ハイパーバイザ部５０２８および仮想通信装置５１３０、５１３８および５１３９とにおける接続または結合関係の例を示している。
【０１６５】
図１７Ａおよび１７Ｂにおいて、通信装置３０、３８および３９の各々はそれぞれのインタフェース部３１０を介して情報処理装置５０に結合されている。また、情報処理装置５０はそのインタフェース部５１０を介して通信装置３０、３８および３９に結合されている。
【０１６６】
また、通信装置３０の通信制御部３１２は通信装置３８の通信制御部３１２に接続され、通信装置３８の通信制御部３１２は通信装置３９の通信制御部３１２に接続され、通信装置３９の通信制御部３１２は情報処理装置４０に接続されている。また、仮想通信装置５１３０の通信制御部５３１２は仮想通信装置５１３８の通信制御部５３１２に接続され、仮想通信装置５１３８の通信制御部５３１２は仮想通信装置５１３９の通信制御部５３１２に接続される。さらに、仮想通信装置５１３９の通信制御部５３１２は情報処理装置４０に接続されてもよい。
【０１６７】
また、通信装置３０、３８および３９のそれぞれの通信制御部３１２は、仮想通信装置５１３０、５１３８および５１３９のそれぞれの通信制御部５３１２に結合される。また、通信装置３０、３８および３９のそれぞれの処理能力拡張制御部３２０は、管理部５０２６、および仮想通信装置５１３０、５１３８および５１３９のそれぞれの連携部５０３６に結合される。
【０１６８】
情報処理装置５０の拡張仮想サーバ部５０２４において、管理部５０２６は、仮想通信装置５１３０、５１３８および５１３９のそれぞれの装置管理部５０３２に結合される。ハイパーバイザ部５０２８は、仮想通信装置５１３０、５１３８および５１３９を動的に生成し、仮想通信装置５１３０、５１３８および５１３９に結合される。
【０１６９】
図１７Ｂでは、通信装置３０の処理能力拡張制御部３２０の情報収集部３２６は、装置固有情報３８０に加えて、記憶部３０４内の装置間接続関係情報３８２をも参照する。ここで、装置間接続関係情報３８２は、記憶部３０４に予め格納され、通信装置３０の後段に通信装置３８および３９が順にタンデム接続されていることを表す情報を含んでいる。また、通信装置３８は、機能部３３０〜３３６と異なる機能部３３８を含んでおり、通信部３９は、機能部３３０〜３３６および３３８と異なる別の機能部３４０を含んでいる。機能部３３８および３４０は、例えば、それぞれ検疫機能（ＮＱ）および認証機能（ＡＵ）であってもよい。
【０１７０】
通信装置３０、３８および３９の各々と情報処理装置５０の拡張仮想サーバ部５０２４の仮想通信装置５１３０、５１３８および５１３９との間のその他の結合関係は、図９の通信装置３０〜３２の各々と拡張仮想サーバ部５０２４の仮想通信装置５１３０との間の結合関係と同様である。
【０１７１】
管理者は、通信装置３０、３８および３９において、それぞれの負荷分析部３２４において高負荷状態またはトラフィックの輻輳状態、および／または低負荷状態またはトラフィックの非輻輳状態を判定するための閾値を予め設定してそれぞれの記憶部３０４に格納する。
【０１７２】
通信装置３０、３８および３９、および仮想通信装置５１３０、５１３８および５１３９の個々の動作は、それぞれ図９の通信装置３０および仮想通信装置５１３０の動作と同様である。
【０１７３】
通信装置３０、３８および３９において、それぞれの負荷監視部３２２は、常にまたは短い周期で、それぞれのプロセッサ３０２、記憶部３０４および通信用記憶部３１６等の資源の負荷状態を監視する。通信装置３０、３８および３９において、それぞれの負荷監視部３２２は、それぞれの記憶部３０４内の閾値を参照して、いずれかの資源の負荷が閾値を超えてその資源の高負荷状態を検出した場合に、それぞれの負荷分析部３２４に対して、その高負荷状態を通知する。
【０１７４】
例えば、情報処理装置１１０〜１１６から通信装置３０を介してサーバ装置としての情報処理装置４０へのアクセスが発生し、そのコネクション数が時間経過とともに増加し、通信装置３０、３８および３９の資源の負荷（例、ＣＰＵ使用率）が閾値（例、９０％）を超えたとする。この場合、通信装置３０において、負荷分析部３２４は、図９の場合と同様に、通信装置３０上で動作中の機能部３３０〜３３６の中で最も高負荷状態の少なくとも１つの機能部に関する情報を情報収集部３２６および連携部３２８に通知する。
【０１７５】
通信装置３０において、情報収集部３２６は、図９の場合と同様、仮想通信装置５１３０、５１３８および５１３９の対応する機能部を起動するための情報を、記憶部３０４内の通信装置３０の装置固有情報３８０および装置間接続関係情報３８２から収集して連携部３２８に通知する。装置固有情報３８０または装置間接続関係情報３８２には、後段の通信装置３８、３９の装置固有情報３８０が含まれてもよい。
【０１７６】
通信装置３０において、連携部３２８は、装置固有情報３８０および装置間接続関係情報３８２に基づいて、拡張仮想サーバ部５０２４の管理部５０２６に対して、仮想通信装置５１３０と後段の従続接続の仮想通信装置５１３８および５１３９を起動するよう要求する。管理部５０２６は、その要求に応答して、ハイパーバイザ部５０２８に仮想通信装置５１３０、５１３８および５１３９を起動するよう要求する。ハイパーバイザ部５０２８は、その要求に応答して、仮想通信装置５１３０、５１３８および５１３９を生成して起動する。
【０１７７】
一方、通信装置３０において、通信制御部３１２の転送部３１４は、仮想通信装置５１３０、５１３８および５１３９の起動後に確立されたコネクションについて、ネットワーク５からの受信パケットまたはいずれかの機能部３３０〜３３４で処理済みのパケットを分析する。次の機能部（３３０〜３３６）が高負荷状態で、そのパケットを仮想通信装置５１３０に転送するよう要求された場合に、転送部３１４は、そのパケットに制御情報および次処理の情報を加えて、そのパケットを仮想通信装置５１３０へ転送する。
【０１７８】
仮想通信装置５１３０において、仮想通信制御部５３１２は通信装置３０からパケットを受け取って転送部５３１４に渡す。転送部５３１４は、そのパケットを分析し、その制御情報を参照して、制御情報に対応する仮想通信装置５１３０、５１３８および５１３９中の機能部（５３３０〜５３３６、５３３８、５３４０）を特定する。転送部５３１４は、通信装置３０から受け取ったパケットをその対応する機能部（例、５３３４〜５３３６）に渡して、その対応する機能部（例、５３３４〜５３３６）にそのパケットを処理させる。また、制御情報に後段の仮想通信装置５１３８および５１３９の処理の機能に関する情報が含まれている場合、仮想通信制御部５３１２またはその転送部５３１４は、仮想通信装置５１３０の最後の段の機能部５３３６での処理済みのパケットを仮想通信装置５１３８へ転送する。
【０１７９】
仮想通信装置５１３８において、通信制御部５３１２の転送部５３１４は、機能部５３３６で処理済みのパケットを機能部５３３８に処理させ、その処理済みのパケットを、後段の仮想通信装置５１３９へ転送する。また、仮想通信装置５１３９において、通信制御部５３１２の転送部５３１４は、機能部５３３８で処理済みのパケットを機能部５３４０に処理させ、その処理済みのパケットを通信装置３９または情報処理装置４０に転送する。通信装置３９の通信制御部３１２の転送部３１４は、仮想通信装置５１３９から受け取ったパケットを分析し、その受け取ったパケットを情報処理装置４０に転送する。
【０１８０】
その後、例えば、情報処理装置１１０〜１１６から通信装置３０、３８および３９を介した情報処理装置４０への幾つかのアクセスが消滅し、そのコネクション数が時間経過とともに減少して、通信装置３０、３８および３９の資源の負荷が閾値より低くなったとする。この場合、通信装置３０において、負荷監視部３２２は、図９の場合と同様に、いずれかの資源の負荷が高負荷状態から低負荷状態に変化した場合に、負荷分析部３２４にその変化または低負荷状態を通知する。
【０１８１】
通信装置３０において、負荷分析部３２４は、その通知に応答して、通信制御部３１２に対して、パケットの拡張仮想サーバ部５０２４への転送を停止するよう要求する。通信制御部３１２は、その要求に応答して、その後で確立されたコネクションについて、転送部３１４によるパケットの仮想通信装置５１３０への転送を停止する。その後、通信装置３０において、通信制御部３１２は、その後の受信パケットを機能部３３０〜３３６に処理させる。通信装置３０の通信制御部３１２は、その後の処理済みのパケットを通信装置３８に転送する。
【０１８２】
通信装置３８において、通信装置３８の負荷が閾値を超えた場合、図９の通信装置３０の場合と同様に、通信制御部３１２は、通信装置３０から受け取ったパケットを仮想通信装置５１３８に転送して処理させ、その処理済みのパケットを通信装置３９に転送してもよい。通信装置３９において、通信装置３９の負荷が閾値を超えた場合、図９の通信装置３０の場合と同様に、通信制御部３１２は、通信装置３８から受け取ったパケットを仮想通信装置５１３９に転送して処理させ、その処理済みのパケットを情報処理装置４０へと転送してもよい。代替形態として、仮想通信装置５１３９は、処理済みのパケットを情報処理装置４０へと転送してもよい。
【０１８３】
このように、前段の通信装置３０が高負荷状態となった場合に、後段の通信装置３８および３９の高負荷状態を予測して、前段と後段の通信装置３０、３８および３９の機能の処理能力を同時に拡張仮想サーバ部５０２４にスケールアウトすることができる。それによって、後段の通信装置３８、３９がその後に高負荷状態になるのを予防することができる。
【０１８４】
次は、図５における、分岐接続関係の通信装置３０、３８および３９と情報処理装置５０との間の動作の例について説明する。
【０１８５】
図１８Ａおよび１８Ｂは、図５における通信装置３０、３８および３９と、情報処理装置５０の管理部５０２６、ハイパーバイザ部５０２８および仮想通信装置５１３０、５１３８および５１３９とにおける接続または結合関係の例を示している。
【０１８６】
図１８Ａおよび１８Ｂにおいて、通信装置３０、３８および３９の各々はそれぞれのインタフェース部３１０を介して情報処理装置５０に結合されている。また、情報処理装置５０はそのインタフェース部５１０を介して通信装置３０、３８および３９に結合されている。
【０１８７】
また、通信装置３０の通信制御部３１２は、通信装置３８および３９のそれぞれの通信制御部３１２に接続され、通信装置３８および３９のそれぞれの通信制御部３１２はそれぞれ情報処理装置４０および４２に接続されている。また、仮想通信装置５１３０の通信制御部５３１２は、仮想通信装置５１３８および５１３９のそれぞれの通信制御部５３１２に接続される。また、仮想通信装置５１３８および５１３９のそれぞれの通信制御部５３１２はそれぞれ情報処理装置４０および４２に接続されてもよい。
【０１８８】
また、通信装置３０、３８および３９のそれぞれの通信制御部３１２は、図１７Ａおよび１７Ｂの場合と同様に、仮想通信装置５１３０、５１３８および５１３９のそれぞれの通信制御部５３１２に結合される。また、通信装置３０、３８および３９のそれぞれの処理能力拡張制御部３２０は、図１７Ａおよび１７Ｂの場合と同様に、仮想通信装置５１３０、５１３８および５１３９のそれぞれの管理部５０３６および連携部５０３６に結合される。
【０１８９】
図１８Ｂでは、通信装置３０の処理能力拡張制御部３２０の情報収集部３２６は、装置固有情報３８０に加えて、記憶部３０４内の装置間接続関係情報３８２をも参照する。ここで、装置間接続関係情報３８２は、記憶部３０４に予め格納され、通信装置３０の後段に通信装置３８および３９の双方が並列に接続されていることを表す情報を含んでいる。また、通信装置３８の機能部３３８と通信装置３９の機能部３４０は機能部３３０〜３３６とは異なるが、機能部３３８は機能部３４０と同等のものであってもまたは異なるものであってもよい。
【０１９０】
拡張仮想サーバ部５０２４において、管理部５０２６は、図１７Ａおよび１７Ｂの場合と同様に、仮想通信装置５１３０、５１３８および５１３９のそれぞれの装置管理部５０３２に結合される。ハイパーバイザ部５０２８は、図１７Ａおよび１７Ｂの場合と同様に、仮想通信装置５１３０、５１３８および５１３９を動的に生成し、仮想通信装置５１３０、５１３８および５１３９に結合される。
【０１９１】
各通信装置３０、３８及び３９と情報処理装置５０の拡張仮想サーバ部５０２４の仮想通信装置５１３０、５１３８及び５１３９との間のその他の結合関係は、図９の各通信装置３０〜３２と拡張仮想サーバ部５０２４の仮想通信装置５１３０との間の結合関係と同様である。
【０１９２】
通信装置３０、３８および３９、および仮想通信装置５１３０、５１３８および５１３９の各々の動作は、それぞれ図９の通信装置３０および仮想通信装置５１３０の動作と同様である。また、通信装置３０、３８および３９、および仮想通信装置５１３０、５１３８および５１３９の各々は、相互の接続および連携動作の関係が異なる以外は、それぞれ図１７Ａおよび１７Ｂのものの同様に設定され動作されてもよい。
【０１９３】
例えば、図１７Ａ及び１７Ｂの場合と同様に、情報処理装置１１０〜１１６から通信装置３０を介してサーバ装置としての情報処理装置４０、４２へのアクセスが発生し、そのコネクション数が時間経過とともに増加して、通信装置３０、３８及び３９の資源の負荷が閾値を超えたとする。この場合、通信装置３０の機能部５３３０〜５３３６の高負荷状態に対して、通信装置３０、３８および３９と、情報処理装置５０の拡張仮想サーバ部５０２４とは、図１７Ａおよび１７Ｂの場合と同様に、動作する。この場合、仮想通信装置５１３８および５１３９は、仮想通信装置５１３０の後段に分岐接続された形態で生成される。
【０１９４】
仮想通信装置５１３０において、転送部５３１４は、通信装置３０から受け取ったパケットを対応する機能部（例、５３３４〜５３３６）に処理させる。また、制御情報に後段の仮想通信装置５１３８及び５１３９の処理の機能に関する情報が含まれる場合、仮想通信制御部５３１２又はその転送部５３１４は、仮想通信装置５１３０の最後の段の機能部５３３６での処理済みのパケットを仮想通信装置５１３８及び５１３９へ転送する。
【０１９５】
仮想通信装置５１３８および５１３９の各々において、それぞれの転送部５３１４は、仮想通信装置５１３０で処理済みのパケットを機能部５３３８および５３４０に処理させる。仮想通信装置５１３８の転送部５３１４は、機能部５３３８で処理済みのパケットを通信装置３８または情報処理装置４０に転送する。また、仮想通信装置５１３９の転送部５３１４は、機能部５３４０で処理済みのパケットを通信装置３９または情報処理装置４２に転送する。さらに、通信装置３８の通信制御部３１２の転送部３１４は、仮想通信装置５１３８から受け取ったパケットを分析し、その受け取ったパケットを情報処理装置４０に転送してもよい。また、通信装置３９の通信制御部３１２の転送部３１４は、仮想通信装置５１３９から受け取ったパケットを分析し、その受け取ったパケットを情報処理装置４２に転送してもよい。
【０１９６】
その後、例えば、情報処理装置１１０〜１１６から通信装置３０、３８および３９を介した情報処理装置４０への幾つかのアクセスが消滅し、そのコネクション数が時間経過とともに減少して、通信装置３０、３８、３９の資源の負荷が閾値より低くなったとする。この場合、通信装置３０の低負荷状態に対して、通信装置３０、３８および３９と、情報処理装置５０の拡張仮想サーバ部５０２４とは、図１７Ａおよび１７Ｂの場合と同様に、動作する。
【０１９７】
通信装置３０から仮想通信装置５１３０へのパケット転送の停止後、通信装置３０において、通信制御部３１２は、その後の受信パケットを機能部３３０〜３３６に処理させる。通信装置３０の通信制御部３１２は、その後の処理済みのパケットを通信装置３８および３９に転送する。通信装置３８および３９において、通信装置３８及び９が低負荷状態の場合、それぞれの通信制御部３１２は、通信装置３０から受け取ったパケットをそれぞれの機能部３３８及び３４０に処理させ、その処理済みのパケットをそれぞれ情報処理装置４０及び４２に転送する。
【０１９８】
このように、前段の通信装置３０が高負荷状態となった場合に、後段の通信装置３８および３９の高負荷状態を予測して、前段と後段の通信装置３０、３８および３９の機能の処理能力を同時に拡張仮想サーバ部５０２４に拡張またはスケールアウトすることができる。それによって、後段の通信装置３８および３９がその後に高負荷状態になるのを予防することができる。
【０１９９】
上述の実施形態によれば、通信装置３０〜３２、３８、３９における各機能の処理能力を、その各機能の負荷状態に応じて、情報処理装置５０の拡張仮想サーバ部５０２４に動的に拡張またはスケールアウトすることができる。従って、通信装置３０〜３２、３８、３９の各機能の高負荷状態による通信サービスまたは情報サービスへの影響を大幅に低減することができる。
【０２００】
一般的に通信装置３０〜３２、３８、３９のような通信装置は、高価なので、それと同等の機能の処理能力を拡張仮想サーバ部５０２４に拡張またはスケールアウトすることによって、低コストで通信の処理能力を向上させることができる。また、複数の通信装置３０〜３２、３８、３９における処理能力を、１つの情報処理装置５０の拡張仮想サーバ部５０２４に拡張またはスケールアウトすることができるので、低コストで大きい効果が得られる。
【０２０１】
ここで挙げた全ての例および条件的表現は、発明者が技術促進に貢献した発明および概念を読者が理解するのを助けるためのものであり、ここで具体的に挙げたそのような例および条件に限定することなく解釈され、また、明細書におけるそのような例の編成は本発明の優劣を示すこととは関係ない、と理解される。本発明の実施形態を詳細に説明したが、本発明の精神および範囲から逸脱することなく、それに対して種々の変更、置換および変形を施すことができる、と理解される。
【０２０２】
以上の実施例を含む実施形態に関して、さらに以下の付記を開示する。
（付記１）通信装置と情報処理装置とを含む通信システムであって、
前記通信装置は、通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を含み、自通信装置の負荷の状態を監視し、前記負荷が閾値より高くなった場合に、前記負荷が前記閾値より高くなった状態の要因となっている前記１つ以上の機能の中の特定機能に関する情報を前記情報処理装置に供給した後、受信したパケットを前記情報処理装置に転送し、
前記情報処理装置は、前記特定機能に関する情報を受信して、前記特定機能に対応する機能を含む仮想装置を動的に生成し、転送された前記パケットを受け取って前記仮想装置に処理させる
ことを特徴とする通信システム。
（付記２）前記通信装置は、前記負荷が閾値より高くなった場合に、前記特定機能および前記通信装置の後段に接続された別の通信装置に関する情報を前記情報処理装置に供給し、
前記情報処理装置は、前記特定機能および前記別の通信装置に関する情報を受信して、前記特定機能に対応する機能を含む第１の仮想装置と、前記別の通信装置に対応する機能を含む第２の仮想装置とを動的に生成し、転送された前記パケットを受け取って前記第１と第２の仮想装置に処理させるものであることを特徴とする、付記１に記載の通信システム。
（付記３）前記情報処理装置は、さらに、別の通信装置から別の機能に関する情報を受信して、前記別の機能に対応する機能を含む別の仮想装置を動的に生成し、前記別の通信装置から転送されたパケットを受け取って前記別の仮想装置に処理させるものであることを特徴とする、付記１または２に記載の通信システム。
（付記４）前記通信装置は、前記負荷が閾値より低くなった場合に、受信されたパケットを前記情報処理装置に転送しないようにするものであることを特徴とする、付記１乃至３のいずれかに記載の通信システム。
（付記５）前記情報処理装置は、前記仮想装置で処理されるパケットがなくなった場合に、前記仮想装置を停止させるものであることを特徴とする、付記４に記載の通信システム。
（付記６）通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能部と、
自通信装置の負荷の状態を監視し、前記負荷が閾値より高くなった場合に前記負荷が前記閾値より高くなった状態の要因となっている前記１つ以上の機能部の中の特定機能部に対応する機能部を含む仮想装置を別の装置上に動的に生成させる第１の制御部と、
前記仮想装置の生成後に受信したパケットを、前記別の装置に転送する第２の制御部と、
を含む通信装置。
（付記７）通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を実行し、
通信装置の負荷の状態を監視し、前記負荷が閾値を超えて高くなった場合に前記負荷の高い状態の要因となっている前記１つ以上の機能の中の或る機能に対応する機能を含む仮想装置を別の装置上に動的に生成させ、
前記仮想装置の生成後に受信したパケットを、前記仮想装置に転送する
処理を前記通信装置に実行させるためのプログラム。
（付記８）通信インタフェース部を介して伝送されるパケットを処理する１つ以上の機能を実行し、
自通信装置の負荷の状態を監視し、前記負荷が閾値より高くなった場合に前記負荷が前記閾値より高くなった状態の要因となっている前記１つ以上の機能の中の特定機能に対応する機能を含む仮想装置を別の装置上に動的に生成させ、
前記仮想装置の生成後に受信したパケットを、前記別の装置に転送する
処理を、通信装置が実行する方法。
【符号の説明】
【０２０３】
５  ネットワーク
４０〜１２  情報処理装置
３０〜３２、３８、３９  通信装置
３１２  通信制御部
３１４  転送部
３２０  処理能力拡張制御部
３２２  負荷監視部
３２４  負荷分析部
３２６  情報収集部
３２８  連携部
３３０〜３４０  機能部
５０  情報処理装置
５０２４  拡張仮想サーバ部
５０２６  管理部
５０２８  ハイパーバイザ部
５１３０、５１３８、５１３９  仮想通信装置
５０３２  装置管理部
５０３４  通信監視部
５０３６  連携部
５３１２  通信制御部
５３１４  転送部
５３３０〜５３４０  機能部
【図１】
2015070446.tif 000003
【図２】
2015070446.tif 000004
【図３】
2015070446.tif 000005
【図４】
2015070446.tif 000006
【図５】
2015070446.tif 000007
【図６】
2015070446.tif 000008
【図７】
2015070446.tif 000009
【図８】
2015070446.tif 000010
【図９】
2015070446.tif 000011
【図１０】
2015070446.tif 000012
【図１１】
2015070446.tif 000013
【図１２】
2015070446.tif 000014
【図１３】
2015070446.tif 000015
【図１４】
2015070446.tif 000016
【図１５】
2015070446.tif 000017
【図１６】
2015070446.tif 000018
【図１７Ａ】
2015070446.tif 000019
【図１７Ｂ】
2015070446.tif 000020
【図１８Ａ】
2015070446.tif 000021
【図１８Ｂ】
2015070446.tif 000022
【図１９】
2015070446.tif 000023