説明

トラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法

【課題】トラヒック制御を適切に行うことを課題とする。
【解決手段】統合AAA装置は、VPN間にトラヒック種別毎に分離された複数の経路が形成された場合に、該経路上の装置を監視することにより該装置からトラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する。また、統合AAA装置は、取得した情報が予め定められた条件に該当すると判定した場合に、経路上のトラヒックを制御するための指示情報を、該経路を形成する装置に対して送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、トラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法に関する。
【背景技術】
【0002】
近年、複数の拠点間を拠点間接続することで協働空間を提供するサービスが登場した。特に、オンデマンド(on−demand)なサービス、すなわち、要求に応じて時限的に拠点間接続するサービスに対する要望が高い。ここで、「拠点」とは、VPN(Virtual Private Network)や地理的条件などによって到達性を制限され孤立しているネットワークドメインのことである。また、「拠点間接続」とは、ある拠点の端末から送信されたパケットをある拠点の端末に対して転送するための情報を該拠点間の経路上に存在する各機器に設定することで、拠点間を通信可能に相互接続することである。また、「協働空間」とは、拠点間接続により生じたネットワークドメインのことであり、相互接続された範囲を新たな到達可能範囲とするネットワークドメインのことである。
【0003】
ところで、拠点間接続においては、一般に、トラヒック制御が行われると考えられる。例えば、広域ネットワークを介して複数のVPN間を接続するVPN間接続においては、広域ネットワーク内のパケット転送を制御する集合仮想ルータに各VPNが収容され、集合仮想ルータは、1組の経路情報として設定された1つの経路により、1つのVPN間接続に関するパケットを転送する。このような場合に、例えば、集合仮想ルータは、1つのVPN間接続に対して、品質保証などのトラヒック制御を行うことができる。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】小山 高明、唐澤 秀一、岸 和宏、水野 伸太郎、岩村 相哲、「VPN間接続管理システムの提案」、信学技報IN2009−48(2009−09)、P.53−58
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述した従来技術では、トラヒック制御を適切に行うことができないという課題があった。協働空間を提供するサービスにおいては、例えばアプリケーション毎やユーザ毎など、より細かい粒度でのトラヒック制御が望まれる。この点、上述した従来技術では、集合仮想ルータは、1つのVPN間接続に関するパケットを1つの経路により転送するので、トラヒック制御も、1つのVPN間接続に対してまとめて行うことしかできない。
【0006】
開示の技術は、上記に鑑みてなされたものであって、トラヒック制御を適切に行うことが可能なトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法は、一つの態様において、広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示装置であって、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視手段と、前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御手段とを備える。
【0008】
また、本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法は、一つの態様において、広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示方法であって、コンピュータが、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視工程と、前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御工程とを含む。
【0009】
また、本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法は、一つの態様において、コンピュータをトラヒック制御指示装置として機能させることを特徴とするトラヒック制御指示プログラムである。
【0010】
また、本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法は、一つの態様において、広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示システムであって、トラヒック制御指示装置は、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視手段と、前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御手段とを備え、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置は、前記トラヒック制御指示装置から要求された場合に、該トラヒック制御指示装置に対してトラヒックに関する情報を送信する送信手段と、前記トラヒック制御指示装置から前記指示情報を受信した場合に、受信した該指示情報に従ってトラヒックを制御する制御手段とを備える。
【0011】
また、本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法は、一つの態様において、広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示方法であって、トラヒック制御指示装置としてのコンピュータが、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視工程と、前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御工程とを含み、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置としてのコンピュータが、前記トラヒック制御指示装置から要求された場合に、該トラヒック制御指示装置に対してトラヒックに関する情報を送信する送信工程と、前記トラヒック制御指示装置から前記指示情報を受信した場合に、受信した該指示情報に従ってトラヒックを制御する制御工程とを含む。
【発明の効果】
【0012】
本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法の一つの態様によれば、トラヒック制御を適切に行うことが可能になるという効果を奏する。
【図面の簡単な説明】
【0013】
【図1】図1は、実施例1に係るVPN間通信システムの概要を説明するための図である。
【図2】図2は、ポリシールーティングを説明するための図である。
【図3】図3は、IPアドレスの払い出し方式(i)を説明するための図である。
【図4】図4は、IPアドレスの払い出し方式(ii)を説明するための図である。
【図5】図5は、アドレス変換関係を示す図である。
【図6−1】図6−1は、トラヒック種別毎に経路を分離するメリットを説明するための図である。
【図6−2】図6−2は、トラヒック種別毎に経路を分離するメリットを説明するための図である。
【図7】図7は、実施例1に係るトラヒック制御を説明するための図である。
【図8】図8は、実施例1に係る統合AAA装置の構成を示すブロック図である。
【図9】図9は、輻輳状態が生じたか否かを判定するための条件を説明するための図である。
【図10】図10は、輻輳状態が生じたか否かを判定するための条件を説明するための図である。
【図11】図11は、制御情報を説明するための図である。
【図12】図12は、実施例1に係るトラヒック制御処理手順を示すフローチャートである。
【図13】図13は、実施例2に係るトラヒック制御を説明するための図である。
【図14】図14は、実施例2に係る統合AAA装置100の構成を示すブロック図である。
【図15】図15は、制御情報を説明するための図である。
【図16】図16は、分離情報を説明するための図である。
【図17】図17は、実施例2に係るトラヒック制御処理手順を示すフローチャートである。
【図18】図18は、実施例3に係るトラヒック制御を説明するための図である。
【図19】図19は、実施例3に係る統合AAA装置100の構成を示すブロック図である。
【図20】図20は、制御情報を説明するための図である。
【図21】図21は、制御情報を説明するための図である。
【図22】図22は、設定情報を説明するための図である。
【図23】図23は、実施例3に係るトラヒック制御処理手順を示すフローチャートである。
【図24】図24は、実施例4に係るトラヒック制御を説明するための図である。
【図25】図25は、実施例4に係るトラヒック制御を説明するための図である。
【図26】図26は、実施例4に係る統合AAA装置100の構成を示すブロック図である。
【図27】図27は、制御情報を説明するための図である。
【図28】図28は、アプリケーションサーバの一覧を説明するための図である。
【図29】図29は、実施例4に係るトラヒック制御処理手順を示すフローチャートである。
【図30】図30は、冗長化された経路を説明するための図である。
【図31】図31は、VPNサービスによって接続された複数のローカルエリアネットワーク群としての拠点を説明するための図である。
【図32】図32は、VPNサービスによって接続された複数のローカルエリアネットワーク群としての拠点を説明するための図である。
【図33】図33は、VPNサービスによって接続された複数のローカルエリアネットワーク群としての拠点を説明するための図である。
【図34】図34は、VPN間接続管理システム200の構成を示すブロック図である。
【図35】図35は、VPN接続情報記憶部221を説明するための図である。
【図36】図36は、集合仮想ルータの設定パターンの一例である。
【図37】図37は、VPN終端装置の設定パターンの一例である。
【図38】図38は、VPN接続要求記憶部223を説明するための図である。
【図39】図39は、アドレス変換情報記憶部224を説明するための図である。
【図40】図40は、ルーティング情報記憶部225を説明するための図である。
【図41】図41は、ルーティング情報記憶部225を説明するための図である。
【図42】図42は、アタッチメント記憶部226を説明するための図である。
【図43】図43は、集合仮想ルータの事前設定情報を説明するための図である。
【図44】図44は、VPN終端装置の事前設定情報を説明するための図である。
【図45】図45は、VPN接続要求の入力画面の一例を説明するための図である。
【図46】図46は、VPN間接続管理システム200による処理手順を示すフローチャートである。
【図47】図47は、協働空間におけるアクセスの一例を説明するための図である。
【発明を実施するための形態】
【0014】
以下に、本願の開示するトラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法の実施例を説明する。また、以下の実施例では、拠点間接続の一例としてVPN間接続を説明する。実施例1では、実施例1に係るVPN間通信システムの概要を説明した上で、トラヒック制御の一例として「輻輳制御」を説明する。実施例2では、トラヒック制御の一例として「負荷分散制御」を説明する。実施例3では、トラヒック制御の一例として「故障切替制御」を説明する。実施例4では、トラヒック制御の一例として「リソース貸借制御」を説明する。実施例5は、その他の実施例である。なお、以下の実施例により本発明が限定されるものではなく、例えば、これらのトラヒック制御は任意に組み合わせることができる。
【実施例1】
【0015】
[実施例1に係るVPN間通信システムの概要]
まず、図1〜5を用いて、実施例1に係るVPN間通信システムの概要を説明する。図1は、実施例1に係るVPN間通信システムの概要を説明するための図である。図1に例示するように、実施例1に係るVPN間通信システムは、VPN間にトラヒック種別毎に分離された複数の経路が形成されることで、VPN間接続を実現する。なお、以下では、VPN間接続される拠点を「VPN」という。「VPNi」は、VPN名である。また、広域ネットワーク内のパケット転送を制御する集合仮想ルータ(「転送制御装置」とも称する)に設定された仮想ルータを「VRF」という。「VRFm」は、仮想ルータ名である。なお、VRFは、Virtual Routing and Forwardingの略である。
【0016】
図1においては、互いに異なるVPNiとVPNj(i、jは、互いに独立な正の整数値とし、ここでは特にi≠jとする)とをVPN間接続し、VPNi配下の端末αとVPNj配下の端末βとの間に協働空間が提供される例を示す。図1に例示する集合仮想ルータは、集合仮想ルータに設定された経路情報に従ってVPN間接続に関するパケットを転送する。ここで、図1に例示する「仮想ルータ」は、物理的な筐体としてのルータ内のリソースを、仮想化技術を用いて分割し、論理的に互いに独立なルータとして機能させるものである。図1においては、集合仮想ルータに、仮想ルータ『VRFm』及び仮想ルータ『VRFn』(m、nは、互いに独立な正の整数値とし、ここでは特にm≠nとする)が設定され、1つのVPN間接続(1つの協働空間)に関するパケットを転送する経路として、複数の経路が形成されている。これらの複数の経路は、後述するように、トラヒック種別毎に分離された経路である。なお、図1において点線の枠で例示するように、仮想ルータ『VRFm』側の経路及び仮想ルータ『VRFn』側の経路が、協働空間『VCS(Virtual Collaboration Space)α』に対応する。
【0017】
また、図1に例示する各VPN終端装置は、所定のVPN間接続に属する各VPN(VPNi、VPNj)を収容するとともに、収容した各VPNを広域ネットワーク側で終端する。なお、VPN終端装置は、VPNと広域ネットワークとの境界に設置されたルータやスイッチなどである。また、図1に例示するアドレス変換装置は、VPN終端装置から受信したパケットのアドレスを変換し、アドレス変換後のパケットを集合仮想ルータに送信する。また、アドレス変換装置は、集合仮想ルータから受信したパケットのアドレスを変換し、アドレス変換後のパケットをVPN終端装置に送信する。
【0018】
ここで、実施例1に係るVPN間通信システムにおいては、図1に例示するように、VPN終端装置とアドレス変換装置との間にトラヒック分離統合装置が設置される。トラヒック分離統合装置は、VPN側から受信したトラヒックをトラヒック種別毎に分離し、トラヒック種別毎の複数の経路に送出する。また、トラヒック分離統合装置は、トラヒック種別毎に分離されて仮想ルータを経由したトラヒックを、一つのトラヒックに統合してVPN側に送出する。
【0019】
具体的には、実施例1に係るトラヒック分離統合装置は、ポリシーベースのルーティングを行う。ポリシーベースのルーティングとは、トラヒックが予め規定されたある条件に一致した場合に、予め規定された特定の処理(ルーティング)を行うというものである。トラヒック分離統合装置は、その条件をACL(Access Control List)として予め記憶する。また、トラヒック分離統合装置は、特定の処理をポリシーとして予め記憶する。そして、トラヒック分離統合装置は、パケットを受信すると、ACLとして規定された条件に一致するパケットを抽出し、抽出したパケットに対して、ポリシーとして規定された特定の処理を行う。ポリシーには、例えば、アプリケーション毎やユーザ毎に経路が規定されたもの、あるいは、QoS(Quality of Service)クラスに対応するToS(Type of Service)値に応じて経路が規定されたもの、その他、IP(Internet Protocol)アドレスやポート番号に応じて経路が規定されたものなどが含まれる。トラヒック分離統合装置は、公知技術により実現可能である。
【0020】
例えば、実施例1に係るトラヒック分離統合装置が、アプリケーションの種類が『APL(Application)1』のトラヒックについては仮想ルータ『VRFm』の経路にパケットを転送し、アプリケーションの種類が『APL2』のトラヒックについては仮想ルータ『VRFn』の経路にパケットを転送する、と規定するポリシーを記憶していたとする。すると、例えば、トラヒック分離統合装置0は、VPNi側から『APL1』のパケットを受信すると、『I/F(interface)0.1』側に強制的に転送する。すなわち、トラヒック分離統合装置0は、仮想ルータ『VRFm』の経路にパケットを転送する。また、例えば、トラヒック分離統合装置0は、VPNi側から『APL2』のパケットを受信すると、『I/F0.2』側に強制的に転送する。すなわち、トラヒック分離統合装置0は、仮想ルータ『VRFn』の経路にパケットを転送する。
【0021】
一方、例えば、トラヒック分離統合装置1は、VPNj側から『APL1』のパケットを受信すると、『I/F1.1』側に強制的に転送する。すなわち、トラヒック分離統合装置1は、仮想ルータ『VRFm』の経路にパケットを転送する。また、例えば、トラヒック分離統合装置1は、VPNj側から『APL2』のパケットを受信すると、『I/F1.2』側に強制的に転送する。すなわち、トラヒック分離統合装置1は、仮想ルータ『VRFn』の経路にパケットを転送する。
【0022】
さて、実施例1に係るVPN間通信システムは、上述したように、VPN間にトラヒック種別毎に分離された複数の経路が形成されることで、VPN間接続を実現する。かかるVPN間接続は、VPN間接続管理システム(図1において図示を省略)によって構築され、VPN間接続管理システムによってVPN間接続サービスとして提供される。そこで、このようなVPN間接続が構築される過程について、簡単に説明する。
【0023】
所定のVPN間接続は、例えばユーザからのVPN間接続要求に応じて構築される。例えば、VPN配下の端末を利用するユーザは、VPN間接続サービスを提供する事業者に対してVPN間接続要求を申請する際に、協働空間においてアクセスを許容するサーバの名前とIPアドレスとを予め申請する。
【0024】
例えば、VPNiとVPNjとの間のVPN間接続を考える。VPNj側のサーバをVPNi側のユーザに利用させる形態であるとする。VPNj側のユーザは、サーバの名前として、『serverA@vpnj.example.com』、『serverB@vpnj.example.com』、及び『serverC@vpnj.example.com』を申請する。なお、各VPNにおいてサーバのIPアドレスが動的に払い出される場合もある。このような場合には、VPN間接続管理システム側で事後的に(払い出された後に)IPアドレスを取得することになるので、必ずしもIPアドレスを予め申請する必要はない。
【0025】
また、ユーザは、協働空間においてアクセスを許容するサーバについて経路をグループ化し、経路グループを申請する。例えば、VPN配下の端末を利用するユーザは、各サーバが提供するサービス(アプリケーションなど)を検討し、経路を共通化したいサービス、あるいは、経路を個別化したいサービスなどに応じて、経路をグループ化し、VPN間接続サービスを提供する事業者に対してVPN間接続要求を申請する際に、経路グループを申請する。例えば、VPNj側のユーザは、『経路グループ1』に、メールサーバ(『serverA@vpnj.example.com』)及びWebサーバ(『serverB@vpnj.example.com』)を含めること、『経路グループ2』に、動画配信サーバ(『serverB@vpnj.example.com』)を含めること、『経路グループ3』に、リアルタイムコラボレーションサーバ(『serverC@vpnj.example.com』)を含めることを申請する。
【0026】
なお、例えば、VPN間接続サービスの仕様として、経路グループと品質保証クラスとの対応付けが規定されていてもよい。例えば、品質保証クラスの4クラスに対応付けて、4種類の経路グループを予め規定しておく。すると、ユーザは、各サーバが提供するサービスに必要な品質保証クラスを検討し、予め規定された4種類の経路グループの中から適切な品質保証クラスの経路グループを選択して、申請すればよい。あるいは、例えば、ユーザが、各サーバが提供するサービスの種別を申請することにより、適切な品質保証クラスの経路グループが自動的に選択されてもよい。
【0027】
一方、VPN間接続管理システムは、VPNi側のユーザからも、端末の名前とIPアドレスとの申請を受け付け、これらの情報に基づき、VPNiとVPNjとの間に形成する経路を認識する。例えば、VPN間接続管理システムは、『経路グループ1』、『経路グループ2』、及び『経路グループ3』が申請されたことに基づいて、VPNiとVPNjとの間に3つの経路を形成すべきであることを認識する(例えば、仮想ルータ『VRFl』、『VRFm』、『VRFn』)。
【0028】
そして、VPN間接続管理システムは、経路に応じたDNS(Domain Name System)登録情報を生成する。例えば、VPN間接続管理システムは、『経路グループ1』のメールサーバについては『mail@vcsα.vpnj.example.com』を生成し、Webサーバについては『www@vcsα.vpnj.example.com』を生成し、『経路グループ2』の動画配信サーバについては『movie@vcsα.vpnj.example.com』を生成し、『経路グループ3』のリアルタイムコラボレーションサーバについては『collabo@vcsα.vpnj.example.com』を生成する。なお、これらの情報は、メールや郵送など、あるいは申請用の画面などを通じて、VPNi側のユーザに通知される。
【0029】
また、VPN間接続管理システムは、経路を形成するための設定情報を生成する。例えば、VPN間接続管理システムは、3つの経路を形成するための設定情報を生成するが、例えば、集合仮想ルータに設定される3つの仮想ルータの設定情報それぞれは、集合仮想ルータ内で関連付けられるI/Fが異なる以外は同じ内容となる。また、後述するように、アドレス変換装置に設定される設定情報も同様である。すなわち、VPN間接続管理システムは、1つの仮想ルータの設定情報を生成する場合の情報を複製して、3つの仮想ルータの設定情報それぞれを生成すればよい。
【0030】
その後、VPN間接続管理システムは、例えば、VPN間接続のサービスを提供する開始時刻になると、経路を形成するための設定情報を、集合仮想ルータやVPN終端装置、アドレス変換装置などに設定し、また、DNS登録情報をDNS装置に設定する。
【0031】
また、VPN間接続管理システムは、トラヒック分離統合装置に設定されるポリシールーティング情報も生成し、例えば、VPN間接続のサービスを提供する開始時刻になると、生成したポリシールーティング情報をトラヒック分離統合装置に設定する。図2を用いて、ポリシールーティングを説明する。図2は、ポリシールーティングを説明するための図である。
【0032】
まず、VPN間接続管理システムは、トラヒック分離統合装置においてポリシールーティングの対象となるトラヒックを、種別毎に分離する。また、VPN間接続管理システムは、経路グループ毎にポリシーを規定する。例えば、『ポリシー1』には、『経路グループ1』に対応するメールトラヒック及びWebトラヒックだけを通過させ、他の種別のトラヒックは通過させないことを規定する。また、『ポリシー2』には、『経路グループ2』に対応する動画配信トラヒックだけを通過させ、他の種別のトラヒックは通過させないことを規定する。『ポリシー3』には、『経路グループ3』に対応するリアルタイムコラボレーショントラヒックだけを通過させ、他の種別のトラヒックは通過させないことを規定する。そして、VPN間接続管理システムは、トラヒック分離統合装置の各インタフェースに、各ポリシーを適用する。例えば、図2に例示するように、インタフェース『ether0』に『ポリシー1』を適用し、インタフェース『ether1』に『ポリシー2』を適用し、インタフェース『ether2』に『ポリシー3』を適用する。
【0033】
なお、このようなVPN間接続における拡張について説明する。例えば、2つのVPNによるVPN間接続が既に構築済みの場合に、ここへVPNを1つ追加することで、3つのVPNによるVPN間接続を構築するとする。このような場合は、VPNが2つの場合に対し、単にVPNを1つ追加するという設定を行えばよい。例えば、新たに追加されるVPNが、既に形成されている既存の経路グループに含まれるアプリケーションを利用することができるように、既存の経路グループに、新たに追加されるVPN用の経路を追加する。また、VPNを新たに追加することに伴いアプリケーションも新たに追加されるような場合であって、既存の経路グループに追加できないアプリケーションについては、3つのVPNが利用することができるように、新たに仮想ルータを生成すればよい。
【0034】
より一般化して説明すると、N個のVPNによるVPN間接続が既に構築済みであると仮定する。ここへVPNを新たに一つ追加することは、IPアドレスが枯渇するまで、常に可能である。新たに追加されるVPNが、既に形成されている既存の経路グループに含まれるアプリケーションを利用することができるように、既存の経路グループに、新たに追加されるVPN用の経路を追加する。また、VPNを新たに追加することに伴いアプリケーションも新たに追加されるような場合であって、既存の経路グループに追加できないアプリケーションについては、N+1個のVPNが利用することができるように、新たに仮想ルータを生成すればよい。以上の議論から、このように、VPNの数や仮想ルータの数を、任意の時点で、任意に設定することができる。
【0035】
[アドレスの払い出し方式について]
ところで、実施例1に係るVPN間通信システムは、図1に例示したように、アドレス変換装置を備え、アドレス変換装置が、IPアドレスのアドレス変換を行う。ここで、実施例1においては、アドレス変換の技術として、IETF(Internet Engineering Task Force)によって公開されたRFC(Request for Comments)2663の技術(以下「Twice−NAT」)を用いる。以下、図3及び図4を用いて、アドレスの払い出し方式を説明する。
【0036】
上述したように、実施例1においては、Twice−NATが用いられる。すなわち、アドレス変換装置は、送信元のIPアドレス及び宛先のIPアドレスの双方を変換する。ここで、VPN間接続に属する各VPN配下の端末を該VPN内で識別するために払い出されたIPアドレスを、「拠点内アドレス」とする。また、通信相手となる他VPN配下の端末をVPN内で識別するためのIPアドレスを、「第一アドレス」とする。また、VPN間接続に属する各VPN配下の端末を集合仮想ルータにて識別するためのIPアドレスを、「第二アドレス」とする。
【0037】
すると、例えば、端末αと端末βとが通信を行う場合、端末αを配下とするVPN側に設置されたアドレス変換装置は、(送信元アドレス、宛先アドレス)=(端末αの拠点内アドレス、端末βの第一アドレス)を、(送信元アドレス、宛先アドレス)=(端末αの第二アドレス、端末βの第二アドレス)に変換する。したがって、アドレス変換情報としては、端末αの拠点内アドレスと端末αの第二アドレスとを変換するアドレス変換情報、端末βの第一アドレスと端末βの第二アドレスとを変換するアドレス変換情報が、アドレス変換装置に登録されることになる。
【0038】
図3は、IPアドレスの払い出し方式(i)を説明するための図である。図3において、「ai」は、VPNi内で端末αを識別するための拠点内アドレスであり、「aj」は、VPNj内で端末βを識別するための拠点内アドレスである。また、(1)式は、VPNiからVRFm向けのアドレス変換を表す変換作用素である。また、(2)式は、VRFmからVPNj向けのアドレス変換を表す変換作用素である。
【数1】

【数2】

【0039】
したがって、図3において、仮想ルータ『VRFm』に属するVPNi配下の端末α及びVPNj配下の端末βを、集合仮想ルータにて識別するための第二アドレスは、拠点内アドレス「ai」及び拠点内アドレス「aj」がそれぞれアドレス変換装置によって1回変換されたIPアドレスとなり、(3)式となる。一方、仮想ルータ『VRFn』に属するVPNi配下の端末α及びVPNj配下の端末βを、集合仮想ルータにて識別するための第二アドレスは、拠点内アドレス「ai」及び拠点内アドレス「aj」がそれぞれアドレス変換装置によって1回変換されたIPアドレスとなり、(4)式となる。
【数3】

【数4】

【0040】
また、図3において、通信相手となるVPNj配下の端末βをVPNi内で識別するための第一アドレスは、(5)式及び(6)式となる。同様に、通信相手となるVPNi配下の端末αをVPNj内で識別するための第一アドレスは、(7)式及び(8)式となる。
【数5】

【数6】

【数7】

【数8】

【0041】
ここで、IPアドレスの払い出し方式(i)では、通信相手となるVPNj配下の端末βをVPNi内で識別するための第一アドレスを、経路毎に異なるものにはしない。すなわち、(9)及び(10)式が成り立つように、第一アドレスを払い出す。なぜなら、実施例1に係るトラヒック分離統合装置は、IPアドレスによるルーティングを行わず、ポリシーベースのルーティングを行うので、第一アドレスが同じであっても、正しくルーティングされるからである。
【数9】

【数10】

【0042】
このようなことから、IPアドレスの払い出し方式(i)では、経路が1つの場合と同様にIPアドレスの払い出しを行えばよいことになり、仮想ルータそれぞれや、アドレス変換装置それぞれに、同じ設定情報やアドレス変換情報が設定されればよいことになる。
【0043】
次に、図4は、IPアドレスの払い出し方式(ii)を説明するための図である。上述したように、IPアドレスの払い出し方式(i)では、上記(9)式及び(10)式が成立するように、IPアドレスの払い出しがなされた。もっとも、開示の技術は、上記(9)式及び(10)式が成立するような払い出しに限られるものではない。例えば、上記(9)式及び(10)式が成立せず、(11)式及び(12)式の関係となる場合も考えられる。
【数11】

【数12】

【0044】
このようなIPアドレスの払い出しがなされた場合、トラヒック分離統合装置は、ポリシーベースのルーティングを行い、パケットの宛先IPアドレスに基づくルーティングを行わないので、場合によっては、パケットの宛先IPアドレスに基づくルーティングという観点からは仮想ルータ『VRFm』側の経路にルーティングされるべきパケットが、仮想ルータ『VRFn』側の経路に送出されてしまうおそれがある。
【0045】
例えば、VPNiから仮想ルータ『VRFm』側の経路にルーティングされるパケットは、IPアドレスベースのルーティングという観点からは、宛先のIPアドレスが(5)式のパケットであるはずであるが、ポリシーベースのルーティングにより、宛先のIPアドレスが(6)式のパケットがルーティングされてしまうおそれがある。そこで、IPアドレスの払い出し方式(ii)においては、このようにトラヒック分離統合装置においてIPアドレスベースのルーティングという観点からは誤ってルーティングされたと考えられるパケットについてもアドレス変換が適切に行われるように、変換規則(13)及び(14)に従うアドレス変換情報をアドレス変換装置に対して追加する。同様に、変換規則(15)及び(16)に従うアドレス変換情報をアドレス変換装置に対して追加する。
【数13】

【数14】

【数15】

【数16】

【0046】
つまり、ポリシーベースのルーティングにより、宛先のIPアドレスが(6)式のパケットが仮想ルータ『VRFm』側の経路にルーティングされてしまったとしても、(13)の変換規則に従ってアドレス変換される。
【0047】
なお、変換規則(13)〜(16)によって示されるアドレス変換情報を変換作用素によって記述すると、以下(19)式〜(22)式を新たに定義したことになる。まず、通常のIPアドレスベースのルーティングでは(17)式が成立する。図5は、アドレス変換関係を示す図である。図5に示す関係より(18)式が成立するので、(17)式が成立する。
【数17】

【数18】

【0048】
ところが、IPアドレスの払い出し方式(ii)によってIPアドレスが払い出された場合、アドレス変換装置においては上記変換規則(13)〜(16)に従うアドレス変換がなされなければならないが、このためには、以下(19)式〜(22)式であらわされる変換を新たに定義しなければならない。
【数19】

【数20】

【数21】

【数22】

【0049】
すなわち、IPアドレスベースのルーティングでは、宛先のIPアドレスが(6)式のパケットが仮想ルータ『VRFm』側の経路にルーティングされてしまうことは考えられないので、(23)式であらわされる変換は定義されていても(24)式であらわされる変換は定義されていなかったが、IPアドレスの払い出し方式(ii)によってIPアドレスが払い出された場合には、例えば(24)式を新たに定義しなければならない。なお、ここで定義されていない変換関係には、意味がなく、値が定まらないことに注意が必要である。例えば、以下に示す変換規則(25)や変換規則(26)のような記号には、対応する実際の変換は存在しないため、意味がないものである。
【数23】

【数24】

【数25】

【数26】

【0050】
続いて、実施例1に係るVPN間通信システムのように、トラヒック種別毎に経路を分離するメリットを説明する。図6−1及び6−2は、トラヒック種別毎に経路を分離するメリットを説明するための図である。
【0051】
例えば、図6−1に例示するVPN間接続においては、トラヒックの経路は、QoS(Quality of Service)のクラス毎(あるいはSLA(Service Layer Agreement)毎)に分離されている。このように、実施例1に係るVPN間通信システムにおいては、同じユーザ間のトラヒックであっても、トラヒックの種別により異なる経路が用いられ、異なる仮想ルータ、異なる集合仮想ルータのI/F、異なるキューが用いられる。この結果、例えば、同一のQoSクラスのトラヒックをまとめてトラヒック制御することができる。逆に言えば、異なるQoSクラスのトラヒックを分離した結果、同一のQoSクラスのトラヒックについては、優先制御などの複雑なトラヒック制御をすることなく、全てのパケットを公平に扱えばよくなり、トラヒック制御を単純化することができる。
【0052】
例えば、図6−2に例示するように、集合仮想ルータ、アドレス変換装置、トラヒック分離統合装置、及びVPN終端装置の各装置は、入り側のI/Fにおいて十分なバッファを用意する。次に、出側のI/Fの帯域を、入り側のI/Fの帯域の和以上にとれば、VPN終端装置から入力され、集合仮想ルータを経由し、別のVPN終端装置から出ていくまでに、トラヒックが廃棄されることはない。あるいは、出側のI/Fの帯域が、入り側のI/Fの帯域の和より少ない場合には、バッファで吸収できない破棄されるパケットが発生する可能性があるが、廃棄されるパケットの数は、トラヒックの量に比例するため、ユーザ間で公平に廃棄されることになる。また、例えば、図6−2に例示するように、集合仮想ルータ、アドレス変換装置、及びトラヒック分離統合装置の各装置は、出側のI/Fにおいてパケット間隔を整えるためのシェーパーを用意する。各装置は、装置内では優先制御などの複雑なトラヒック制御をすることなく全てのパケットを公平に扱い、出側のI/Fにおいてトラヒックのシェーピングを確実に行うだけでよく、トラヒック制御を単純化することができる。VPNの種類によっては厳密なQoSが提供されているので、その場合は、VPN終端装置における厳密な優先制御が可能である。したがって、集合仮想ルータ側から送信されてくるクラス別のトラヒックを、トラヒック分離統合装置が、VPN終端装置に入るまで十分な帯域をもつ異なる物理経路を通るようにしておけば、VPN終端装置でのみ優先制御が行われ、結果として、経路全体にわたるトラヒックのクラス毎に公平なQoS保証が可能となる。このように、トラヒック毎にルートが分けられることによって、VPN終端装置で優先制御を適用すれば、異なる品質クラスやSLAを公平かつ厳密に保証することが可能となる。
【0053】
また、例えば、各集合仮想ルータにおいてVPNの収容密度を変える(例えば、集合仮想ルータの性能に対し、QoSクラス1は性能の100%までしか収容しないが、QoSクラス2は300%まで収容するなど)ことによって、QoSクラス毎のトラヒック制御を、集合仮想ルータへの収容という観点から制御することができる。なお、上記と同様に、VPN終端装置で厳密な優先制御が可能であれば、トラヒック分離統合装置や集合仮想ルータにおいては、十分な帯域とバッファとを用意し、同一クラスのトラヒック毎に受信したパケットを到着した順に特別な優先制御をすることなく、そのまま転送すればよい。このようにして、例えば、特別な優先制御機能を全ての装置で持たなくても、経路全体にわたってのクラス毎に公平で厳密なQoS保証やSLA保証が可能となる。
【0054】
[実施例1に係る統合AAA装置によるトラヒック制御]
さて、これまで、実施例1に係るVPN間通信システムについて、その概要を説明してきたが、以下では、本願の開示する技術として、実施例1に係る統合AAA(Authentication Authorization Accounting)装置を中心に説明する。
【0055】
統合AAA装置は、VPN間にトラヒック種別毎に分離された複数の経路が形成された場合に、該経路上の装置を監視することにより、該装置から、輻輳状態が生じたか否かを判定するための情報を取得し、取得した情報が予め定められた条件に該当するか否かを判定する。そして、統合AAA装置は、取得した情報が条件に該当すると判定した場合に、経路上のトラヒックを制御するための指示情報を、該経路を形成する装置に対して送信する。
【0056】
輻輳状態が生じたか否かを判定するための情報として、例えば、トラヒックに関する情報やリソースに関する情報がある。具体的に例を挙げると、例えば、『集合仮想ルータのCPU(Central Processing Unit)使用率』、『集合仮想ルータのI/Fにて測定される利用中の帯域』、『集合仮想ルータのI/Fにて測定される空き帯域』、『集合仮想ルータのI/Fにて測定される帯域の利用率(I/Fに割り当てられている帯域に対する利用中の帯域の割合)』、『集合仮想ルータのI/Fにて測定されるパケットの転送量(単位時間あたりのパケット数及びパケットのサイズ)』、『集合仮想ルータのI/Fにて測定されるパケット廃棄率』、『集合仮想ルータのI/Fにて測定されるQueue長』などがある。また、例えば、『経路上を流れる測定用のパケットやユーザパケットの遅延時間』などがある。
【0057】
この点、以下では、統合AAA装置が、輻輳状態が生じたか否かを判定するための情報として『集合仮想ルータのCPU使用率』を取得する例を用いて説明する。実施例1に係る統合AAA装置は、輻輳状態が生じたか否かを判定するための情報として『集合仮想ルータのCPU使用率』を取得し、取得した情報が予め定められた閾値を超過することにより輻輳状態が生じたか否かを判定する。また、統合AAA装置は、輻輳状態が生じたと判定した場合に、複数の経路のうち優先度が低いトラヒック用の経路にてトラヒックを廃棄するように指示する指示情報を、経路を形成する装置に対して送信する。
【0058】
図7は、実施例1に係るトラヒック制御を説明するための図である。図7に例示するように、実施例1においては、VPN1とVPN2との間に、QoSクラス毎に分離された複数の経路として、仮想ルータ『VRF1』側の経路と、仮想ルータ『VRF2』側の経路とが形成されている。なお、仮想ルータ『VRF1』側の経路と、仮想ルータ『VRF2』側の経路とを併せて一つの協働空間と考える。仮想ルータ『VRF1』側の経路は、『Priority Class』のトラヒック用の経路であり、仮想ルータ『VRF2』側の経路は、『Best Effort Class』のトラヒック用の経路である。なお、『Best Effort Class』のトラヒックの方が、『Priority Class』のトラヒックよりも優先度が低い。すなわち、仮想ルータ『VRF2』側の経路が、優先度の低いトラヒック用の経路である。なお、図7の例においてはVPNが2つであるが、実際には、より多くのVPNが集合仮想ルータに収容され、より多くのトラヒックが集合仮想ルータにて処理されると考えられる。
【0059】
図7に例示するように、統合AAA装置は、輻輳状態が生じたか否かを判定するための情報を、例えば集合仮想ルータから取得し、取得した情報が予め定められた閾値を超過することにより輻輳状態が生じたか否かを判定する。また、統合AAA装置は、輻輳状態が生じたと判定した場合に、複数の経路のうち優先度が低いトラヒック用の経路、すなわち仮想ルータ『VRF2』側の経路(例えば、集合仮想ルータの入り側のI/F)にてトラヒックを廃棄するように指示する指示情報を、例えば集合仮想ルータに対して送信する。
【0060】
図8は、実施例1に係る統合AAA装置100の構成を示すブロック図である。図8に例示するように、実施例1に係る統合AAA装置100は、通信部110と、入力部111と、出力部112と、入出力制御I/F部113と、記憶部120と、制御部130とを有する。
【0061】
通信部110は、例えばIP(Internet Protocol)通信用の一般的なインタフェースなどであり、集合仮想ルータやトラヒック分離統合装置などとの間で通信を行う。なお、統合AAA装置100と、集合仮想ルータやトラヒック分離統合装置などとの間は、図示しない監視用のネットワークで接続されているものとする。
【0062】
入力部111は、例えばキーボードやマウスなどであり、各種操作の入力などを受け付ける。実施例1において、例えば、入力部111は、輻輳状態が生じたか否かを判定するための情報の閾値の入力をキーボードやマウスによって受け付ける。出力部112は、例えばディスプレイなどであり、各種操作のための情報などを出力する。実施例1において、出力部112は、例えば、閾値を入力するための入力画面を出力する。入出力制御I/F(Interface)部113は、入力部111と、出力部112と、記憶部120と、制御部130との間における入出力を制御する。なお、統合AAA装置100は、必ずしも入力部111や出力部112を備える必要はなく、例えば、通信部110を介して他の管理端末やユーザ用のWebサーバと通信を行い、入出力に係る情報を送受信してもよい。
【0063】
記憶部120は、例えばRAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(flash memory)などの半導体メモリ素子、ハードディスク、光ディスクなどであり、各種情報を記憶する。具体的には、記憶部120は、図7に例示するように、条件記憶部121と、制御情報記憶部122とを有する。
【0064】
条件記憶部121は、輻輳状態が生じたか否かを判定するための条件を記憶する。具体的には、条件記憶部121は、例えばVPN間接続サービスの運用者などによって入力されることで条件を予め記憶し、条件記憶部121が記憶する条件は、後述するトラヒック監視部131による処理に用いられる。
【0065】
図9及び10は、輻輳状態が生じたか否かを判定するための条件を説明するための図である。集合仮想ルータのCPU使用率とスループット(Throughput)との間には、図9に例示するような関係がある。すなわち、CPU使用率が70%を超えると、スループットは著しく低下する(品質が著しく劣化する)。また、集合仮想ルータのCPU使用率とレイテンシ(Latency)との間には、図10に例示するような関係がある。すなわち、CPU使用率が70%を超えると、レイテンシは著しく増加する(品質が著しく劣化する)。このようなことから、例えば、条件記憶部121は、輻輳状態が生じたか否かを判定するための条件として、『CPU使用率70%』という閾値を記憶する。なお、条件記憶部121は、輻輳状態が解消されたか否かを判定するための条件を記憶する。例えば、条件記憶部121は、『CPU使用率50%の閾値を、継続して5秒間超えなかった』との条件を記憶する。
【0066】
制御情報記憶部122は、統合AAA装置100による制御に用いられる各種情報を記憶する。具体的には、制御情報記憶部122は、例えばVPN間接続サービスの運用者などによって入力されることで制御情報を予め記憶し、制御情報記憶部122が記憶する制御情報は、後述するトラヒック監視部131やトラヒック制御部132による処理に用いられる。
【0067】
図11は、制御情報を説明するための図である。例えば、制御情報記憶部122は、図11に例示するように、監視対象となる集合仮想ルータについて、識別情報及びアドレスを記憶する。また、制御情報記憶部122は、図11に例示するように、情報取得の契機、判定条件、条件該当時の制御、条件非該当時の制御などを記憶する。なお、これらの制御情報は一例に過ぎない。例えば、情報取得の契機や判定条件、条件該当時の制御、条件非該当時の制御などは、監視対象となる装置に応じて異なってもよく、また、同種の装置(例えば集合仮想ルータ間など)では、同じになってもよい。
【0068】
例えば、図11の例で説明すると、統合AAA装置100によって監視される集合仮想ルータは、『集合仮想ルータ1』(例えば図7に例示する集合仮想ルータが相当する)であり、この集合仮想ルータとの間で通信を行う場合には、『IPアドレス1』を用いる。また、制御情報記憶部122は、情報取得の契機、すなわち監視のタイミングとして、例えば『1秒間隔』を記憶する。また、制御情報記憶部122は、判定条件として、『条件記憶部121に記憶された条件』を記憶する。すなわち、上述したように、『CPU使用率70%』という閾値が判定条件であることを示す。また、制御情報記憶部122は、条件に該当した時の制御内容として、「仮想ルータ『VRF2』側の経路であって『集合仮想ルータ1』の入り側のI/Fにて、トラヒックを廃棄するように指示する指示情報を、『集合仮想ルータ1』に対して送信すること」を記憶する。
【0069】
また、図11に例示するように、制御情報記憶部122は、「条件非該当時の制御」に対応付けて「トラヒックの廃棄を停止するように指示する指示情報を『集合仮想ルータ1』に対して送信すること」を記憶する。すなわち、統合AAA装置100は、監視を継続している中で、輻輳状態が解消したと判定した場合(『CPU使用率50%の閾値を、継続して5秒間超えなかった』との条件に該当した場合)には、トラヒックの廃棄を停止するように指示する指示情報を、該当する装置に対して送信する。
【0070】
制御部130は、統合AAA装置100において実行される各種処理を制御する。具体的には、図8に例示するように、制御部130は、トラヒック監視部131と、トラヒック制御部132とを有する。
【0071】
トラヒック監視部131は、輻輳状態が生じたか否かを判定するための情報を取得し、取得した情報が予め定められた閾値を超過することにより輻輳状態が生じたか否かを判定する。そして、トラヒック監視部131は、輻輳状態が生じたと判定した場合には、その旨をトラヒック制御部132に通知する。
【0072】
例えば、トラヒック監視部131は、集合仮想ルータとの間で定期的に(または適当なタイミングに)通信を行い、集合仮想ルータにて収集されたCPU使用率を、輻輳状態が生じたか否かを判定するための情報として集合仮想ルータから受信する。このとき、トラヒック監視部131は、制御情報記憶部122を参照し、例えば、『IPアドレス1』を用いて『集合仮想ルータ1』との間で通信を行い、情報取得の契機『1秒間隔』に従ってCPU使用率を受信する。次に、トラヒック監視部131は、集合仮想ルータからCPU使用率を受信すると、条件記憶部121を参照し、受信したCPU使用率が、『CPU使用率70%』という閾値を超過するか否かを判定する。そして、トラヒック監視部131は、超過すると判定した場合には、その旨をトラヒック制御部132に通知する。
【0073】
トラヒック制御部132は、トラヒック監視部131によって輻輳状態が生じたと判定された場合に、複数の経路のうち優先度が低いトラヒック用の経路にてトラヒックを廃棄するように指示する指示情報を、経路を形成する装置に対して送信する。
【0074】
例えば、トラヒック制御部132は、閾値を超過すると判定した旨の通知をトラヒック監視部131から受け付けると、制御情報記憶部122を参照し、条件該当時の制御内容として記憶された情報を取得する。そして、トラヒック制御部132は、仮想ルータ『VRF2』側の経路であって集合仮想ルータの入り側のI/Fにて、『Best Effort Class』のトラヒックを廃棄するように指示する指示情報を、例えば『集合仮想ルータ1』に対して送信する。一般的に、『Priority Class』のトラヒックよりも『Best Effort Class』のトラヒックの方がトラヒック量が多いので、有効性は高いと考えられる。なお、『Best Effort Class』のトラヒックがどの程度であれば通過させ、どの程度であれば廃棄するかについては、予め定めた値に基づいて制御してもよいし、入り側のI/Fを通過するトラヒック量を測定しながら動的に制御してもよい。
【0075】
なお、実施例1においては、輻輳状態が生じたか否かを判定するための情報として、『集合仮想ルータのCPU使用率』を取得する例を説明したが、開示の技術はこれに限られるものではない。上述したように、例えば、輻輳状態が生じたか否かを判定するための情報として、『集合仮想ルータのI/Fにて測定される利用中の帯域』、『集合仮想ルータのI/Fにて測定される空き帯域』、『集合仮想ルータのI/Fにて測定される帯域の利用率(I/Fに割り当てられている帯域に対する利用中の帯域の割合)』、『集合仮想ルータのI/Fにて測定されるパケットの転送量(単位時間あたりのパケット数及びパケットのサイズ)』、『集合仮想ルータのI/Fにて測定されるパケット廃棄率』、『集合仮想ルータのI/Fにて測定されるQueue長』などが用いられることもある。
【0076】
例えば、統合AAA装置100は、『利用中の帯域』が所定の閾値よりも大きければ、輻輳状態が生じたと判定する。また、例えば、統合AAA装置100は、『空き帯域』が所定の閾値よりも小さければ、輻輳状態が生じたと判定する。また、例えば、統合AAA装置100は、『利用率』が所定の閾値よりも高ければ、輻輳状態が生じたと判定する。また、例えば、統合AAA装置100は、『単位時間あたりのパケット数』が所定の閾値よりも多く、かつ、『パケットのサイズ』が所定の閾値よりも小さい場合には、例えばルーティング処理の負荷が高くなるので、輻輳状態が生じたと判定する。また、例えば、統合AAA装置100は、『パケット廃棄率』が所定の閾値よりも大きければ、輻輳状態が生じたと判定する。また、例えば、統合AAA装置100は、『Queue長』が所定の閾値よりも長ければ、輻輳状態が生じたと判定する。なお、上記したこれらの手法を用いる場合には、統合AAA装置100は、各手法に対応する閾値を条件記憶部121に予め記憶する。また、同様に、例えば、統合AAA装置100は、輻輳状態が生じたか否かを判定するための情報として、トラヒック分離統合装置にて収集された『利用中の帯域』、『空帯域』、『帯域の利用率』、『パケットの転送量』、『パケット廃棄率』、『Queue長』などをトラヒック分離統合装置から取得してもよい。なお、この場合には、統合AAA装置100は、これらの手法に対応する閾値を条件記憶部121に予め記憶する。
【0077】
また、さらに、例えば、統合AAA装置100は、トラヒック分離統合装置との間で定期的に(または適当なタイミングに)通信を行い、例えば、測定用のパケットをトラヒック分離統合装置間で送受信させる。例えば、統合AAA装置100が、一方のトラヒック分離統合装置に対して測定用のパケットを送信し(『Priority Class』のトラヒックに挿入するなど)、他方のトラヒック分離統合装置から測定用のパケットを受信する。そして、統合AAA装置100は、測定用パケットの送信時の間隔と受信時の間隔とを比較し、その変動から空帯域を推定したり、遅延時間の伸びを実測するなどすることで、輻輳状態が生じたか否かを判定するための情報を取得してもよい。なお、この場合には、統合AAA装置100は、空帯域や遅延時間の伸びに対応する閾値を条件記憶部121に予め記憶する。
【0078】
また、例えば、統合AAA装置100は、トラヒック分離統合装置との間で定期的に(または適当なタイミングに)通信を行い、例えば、一方のトラヒック分離統合装置において処理の対象とされたユーザパケットが他方のトラヒック分離統合装置に到達する場合に、2つのトラヒック分離統合装置間におけるユーザパケットの送信時の間隔と受信時の間隔とを比較し、その変動から空帯域を推定したり、遅延時間の伸びを実測するなどすることで、輻輳状態が生じたか否かを判定するための情報を取得してもよい。なお、この場合には、統合AAA装置100は、空帯域や遅延時間の伸びに対応する閾値を条件記憶部121に予め記憶する。
【0079】
また、実施例1においては、統合AAA装置100が自発的に集合仮想ルータから情報を取得する、いわゆるプル型の監視を想定したが、開示の技術はこれに限られるものではなく、例えば、集合仮想ルータにて『CPU使用率70%』という閾値を記憶し、集合仮想ルータが、『CPU使用率70%』という閾値を超過するか否かを例えば1秒間隔に判定し、超過したと判定した場合に、集合仮想ルータが統合AAA装置100に対して通知する、いわゆるプッシュ型の監視でもよい。
【0080】
また、実施例1においては、集合仮想ルータの入り側のI/Fにてトラヒックを廃棄する例を説明したが、開示の技術はこれに限られるものではない。例えば、トラヒック分離統合装置やアドレス変換装置などでトラヒックを廃棄してもよい。また、実施例1においては、『Best Effort Class』のトラヒックを廃棄する例を説明したが、これに限られるものではなく、廃棄の対象となるトラヒックと、輻輳状態が生じても廃棄の対象としないトラヒックとを特定する情報を統合AAA装置が予め記憶し、この情報に基づいて廃棄を指示する制御を行ってもよい。
【0081】
[実施例1に係るトラヒック制御処理手順]
図12は、実施例1に係るトラヒック制御処理手順を示すフローチャートである。図12に例示するように、統合AAA装置100において、トラヒック監視部131が、集合仮想ルータとの間で定期的に(または適当なタイミングに)通信を行い、集合仮想ルータにて収集されたCPU使用率を、集合仮想ルータから受信することで、トラヒックを監視する(ステップS101)。
【0082】
そして、トラヒック監視部131は、集合仮想ルータからCPU使用率を受信すると、条件記憶部121を参照し、受信したCPU使用率が、『CPU使用率70%』という閾値を超過するか否かを判定することで、輻輳状態を判定する(ステップS102)。
【0083】
閾値を超過しないと判定した場合には(ステップS103否定)、トラヒック監視部131は、ステップS101の処理に戻る。一方、閾値を超過すると判定した場合には(ステップS103肯定)、統合AAA装置100において、トラヒック制御部132が、仮想ルータ『VRF2』側の経路であって集合仮想ルータの入り側のI/Fにて、『Best Effort Class』のトラヒックを廃棄するように指示する指示情報を、例えば『集合仮想ルータ1』に対して送信する(ステップS104)。
【0084】
[実施例1の効果]
上述したように、実施例1において、統合AAA装置100は、集合仮想ルータと、VPN終端装置と、トラヒック分離統合装置とを含むVPN間通信システムのトラヒックを制御する。具体的には、トラヒック監視部131が、集合仮想ルータ、トラヒック分離統合装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する。また、トラヒック制御部132が、情報が条件に該当すると判定された場合に、経路上のトラヒックを制御するための指示情報を、集合仮想ルータ、トラヒック分離統合装置のうち、少なくとも一つの装置に対して送信する。
【0085】
例えば、トラヒック監視部13は、取得した情報が条件に該当するか否かを判定することにより輻輳状態が生じたか否かを判定し、トラヒック制御部132は、輻輳状態が生じたと判定された場合に、複数の経路のうち優先度が低いトラヒック用の経路にてトラヒックを廃棄するように指示する指示情報を、集合仮想ルータ、トラヒック分離統合装置のうち、少なくとも一つの装置に対して送信する。
【0086】
このようなことから、実施例1によれば、トラヒックを適切に制御することができる。この結果、輻輳を低減し、例えば、優先度の高いトラヒックを救済するといった制御ができることになる。
【実施例2】
【0087】
[実施例2に係る統合AAA装置によるトラヒック制御]
実施例2に係る統合AAA装置は、VPN間にトラヒック種別毎に分離された複数の経路が形成された場合に、該経路上の装置を監視することにより、該装置から、高負荷状態が生じたか否かを判定するための情報を取得し、取得した情報が予め定められた条件に該当するか否かを判定する。そして、統合AAA装置は、取得した情報が条件に該当すると判定した場合に、経路上のトラヒックを制御するための指示情報を、該経路を形成する装置に対して送信する。
【0088】
高負荷状態が生じたか否かを判定するための情報として、例えば、トラヒックに関する情報やリソースに関する情報がある。具体的に例を挙げると、例えば、『集合仮想ルータのCPU使用率』、『集合仮想ルータのI/Fにて測定される利用中の帯域』、『集合仮想ルータのI/Fにて測定される空き帯域』、『集合仮想ルータのI/Fにて測定される帯域の利用率(I/Fに割り当てられている帯域に対する利用中の帯域の割合)』、『集合仮想ルータのI/Fにて測定されるパケットの転送量(単位時間あたりのパケット数及びパケットのサイズ)』、『集合仮想ルータのメモリ使用率』などがある。
【0089】
この点、以下では、統合AAA装置が、高負荷状態が生じたか否かを判定するための情報として『集合仮想ルータのCPU使用率』を取得する例を用いて説明する。実施例2に係る統合AAA装置は、高負荷状態が生じたか否かを判定するための情報として『集合仮想ルータのCPU使用率』を取得し、取得した情報が予め定められた閾値を超過することにより高負荷状態が生じたか否かを判定する。また、統合AAA装置は、高負荷状態が生じたと判定した場合に、高負荷状態が生じた経路上のトラヒックを他の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0090】
図13は、実施例2に係るトラヒック制御を説明するための図である。図13に例示するように、実施例2においては、VPN1とVPN2との間に、例えばアプリケーションの種類に応じて分離された複数の経路として、仮想ルータ『VRF1』の経路と、仮想ルータ『VRF2』の経路と、仮想ルータ『VRF3』の経路とが形成されている。なお、それぞれの経路は、いずれも異なる集合仮想ルータに形成されている。
【0091】
図13に例示するように、統合AAA装置は、高負荷状態が生じたか否かを判定するための情報を、例えば集合仮想ルータから取得し、取得した情報が予め定められた閾値を超過することにより高負荷状態が生じたか否かを判定する。また、統合AAA装置は、高負荷状態が生じたと判定した場合に、高負荷状態が生じた経路上のトラヒック、例えば、仮想ルータ『VRF2』の経路上のトラヒックを、他の経路、例えば、仮想ルータ『VRF1』の経路に割り当てるように指示する指示情報を、例えばトラヒック分離統合装置に対して送信する。
【0092】
図14は、実施例2に係る統合AAA装置100の構成を示すブロック図である。図14に例示するように、実施例2に係る統合AAA装置100は、記憶部120に、トラヒック分離情報記憶部123を有する点が、実施例1に係る統合AAA装置100と異なる。
【0093】
実施例2に係る条件記憶部121は、高負荷状態が生じたか否かを判定するための条件を記憶する。例えば、条件記憶部121は、高負荷状態が生じたか否かを判定するための条件として、『CPU使用率70%』という閾値を記憶する。
【0094】
実施例2に係る制御情報記憶部122は、実施例1と同様、統合AAA装置100による制御に用いられる各種情報を記憶する。図15は、制御情報を説明するための図である。例えば、制御情報記憶部122は、図15の(A)に例示するように、監視対象となる集合仮想ルータについて、識別情報及びアドレスを記憶する。また、制御情報記憶部122は、図15の(A)に例示するように、情報取得の契機、判定条件、条件該当時の制御、条件非該当時の制御などを記憶する。なお、図15においては、1つの集合仮想ルータに関する制御情報を例示するが、これに限られるものではなく、制御情報記憶部122は、例えば図13に例示する3つの集合仮想ルータそれぞれに関する制御情報を記憶する。また、制御情報記憶部122は、図15の(B)に例示するように、トラヒック分離統合装置について、識別情報及びアドレスを記憶する。
【0095】
なお、これらの制御情報は一例に過ぎない。例えば、情報取得の契機や判定条件、条件該当時の制御、条件非該当時の制御などは、監視対象となる装置に応じて異なってもよく、また、同種の装置(例えば集合仮想ルータ間など)では、同じになってもよい。
【0096】
例えば、図15の例で説明すると、統合AAA装置100によって監視される集合仮想ルータは、『集合仮想ルータ1』(例えば図13に例示する最も左側の集合仮想ルータが相当する)であり、この集合仮想ルータとの間で通信を行う場合には、『IPアドレス1』を用いる。また、制御情報記憶部122は、情報取得の契機、すなわち監視のタイミングとして、例えば『1秒間隔』を記憶する。また、制御情報記憶部122は、判定条件として、『条件記憶部121に記憶された条件』を記憶する。すなわち、上述したように、『CPU使用率70%』という閾値が判定条件であることを示す。
【0097】
また、制御情報記憶部122は、条件に該当した時の制御内容として、「条件に該当しる仮想ルータに割り当てられているアプリケーションを、他の仮想ルータに割り当てるように指示する指示情報を、『トラヒック分離統合装置1、2』に対して送信すること」を記憶する。なお、実施例2においては条件に該当しなくなった場合の制御を行わないが、例えば後述するように、監視を継続している中で閾値を超えなくなったと判定する場合もある。このような場合には、制御情報記憶部122は、例えば図15に例示するように、「経路の割り当てを元に戻すように指示する指示情報を『トラヒック分離統合装置1、2』に対して送信すること」を記憶してもよい。
【0098】
トラヒック分離情報記憶部123は、トラヒック分離統合装置においてどのようなポリシーに従ってトラヒックが分離されているかを示す分離情報を記憶する。トラヒック分離情報記憶部123は、例えば統合AAA装置100がトラヒック分離統合装置との間で定期的に通信を行うことによりトラヒック分離統合装置から取得した分離情報を記憶する。トラヒック分離情報記憶部123が記憶する分離情報は、トラヒック制御部132による処理に用いられる。
【0099】
図16は、分離情報を説明するための図である。例えば、トラヒック分離情報記憶部123は、図16に例示するように、経路毎に、該経路に割り当てられたアプリケーションを識別する情報を記憶する。例えば、図16は、仮想ルータ『VRF1』の経路には、アプリケーション『AP1』及び『AP2』が割り当てられ、仮想ルータ『VRF2』の経路には、アプリケーション『AP3』及び『AP4』が割り当てられ、仮想ルータ『VRF3』の経路には、アプリケーション『AP5』及び『AP6』が割り当てられることを示す。
【0100】
実施例2に係るトラヒック監視部131は、高負荷状態が生じたか否かを判定するための情報を経路毎に取得し、取得した情報が予め定められた閾値を超過することにより高負荷状態が生じたか否かを判定する。そして、トラヒック監視部131は、高負荷状態が生じたと判定した場合には、その旨をトラヒック制御部132に通知する。
【0101】
実施例2に係るトラヒック制御部132は、トラヒック監視部131によって高負荷状態が生じたと判定された場合に、高負荷状態が生じた経路上のトラヒックを他の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0102】
例えば、トラヒック制御部132は、仮想ルータ『VRF2』の経路において閾値を超過すると判定した旨の通知をトラヒック監視部131から受け付けると、制御情報記憶部122を参照し、条件該当時の制御内容として記憶された情報を取得する。そして、トラヒック制御部132は、トラヒック分離情報記憶部123を参照し、仮想ルータ『VRF2』に割り当てられているアプリケーション『AP3』、『AP4』のうち少なくともいずれか一つを、他の仮想ルータ『VRF1』の経路又は『VRF3』の経路に割り当てることを判定する。ここで、他の仮想ルータ『VRF1』の経路又は『VRF3』の経路のうち、いずれの経路に割り当てるかについては、例えば2つの手法が考えられる。1つは、統合AAA装置100は、集合仮想ルータそれぞれからCPU使用率を受信しているので、例えば、最も負荷が低い状態(CPU使用率が低い状態)の集合仮想ルータに形成された経路を動的に選択して割り当てる手法である。もう1つは、予め割り当てのルールを決定して記憶部に記憶しておき、トラヒック制御部132が、このルールに従って経路を選択し、割り当てる手法である。
【0103】
そして、トラヒック制御部132は、例えば、仮想ルータ『VRF2』に割り当てられているアプリケーション『AP3』を、最も負荷が低い状態であると判定された仮想ルータ『VRF1』に割り当てるように指示する指示情報を、例えば『トラヒック分離統合装置1、2』に対して送信する。このとき、トラヒック制御部132は、制御情報記憶部122を参照し、例えば、『IPアドレスT−1』を用いて『トラヒック分離統合装置1』との間で通信を行い、指示情報を送信する。高負荷状態となった経路上のトラヒックを他の経路に割り当てることで、負荷分散を実現することができ、例えば、ユーザ数が増えてきた場合などにも、拡張性高く、VPN間接続サービスを提供することができる。
【0104】
なお、実施例2においては、高負荷状態が生じたか否かを判定するための情報として、『集合仮想ルータのCPU使用率』を取得する例を説明したが、開示の技術はこれに限られるものではない。上述したように、例えば、高負荷状態が生じたか否かを判定するための情報として、『集合仮想ルータのI/Fにて測定される利用中の帯域』、『集合仮想ルータのI/Fにて測定される空き帯域』、『集合仮想ルータのI/Fにて測定される帯域の利用率(I/Fに割り当てられている帯域に対する利用中の帯域の割合)』、『集合仮想ルータのI/Fにて測定されるパケットの転送量(単位時間あたりのパケット数及びパケットのサイズ)』、『集合仮想ルータのメモリ使用率』などが用いられることもある。
【0105】
例えば、統合AAA装置100は、あるI/Fにて測定された『利用中の帯域』が所定の閾値よりも大きければ、このI/Fに対応する経路にて高負荷状態が生じたと判定する。また、例えば、統合AAA装置100は、あるI/Fにて測定された『空き帯域』が所定の閾値よりも小さければ、このI/Fに対応する経路にて高負荷状態が生じたと判定する。また、例えば、統合AAA装置100は、あるI/Fにて測定された『利用率』が所定の閾値よりも高ければ、このI/Fに対応する経路にて高負荷状態が生じたと判定する。また、例えば、統合AAA装置100は、あるI/Fにて測定された『単位時間あたりのパケット数』が所定の閾値よりも多く、かつ、『パケットのサイズ』が所定の閾値よりも小さい場合には、例えばルーティング処理の負荷が高くなるので、このI/Fに対応する経路にて高負荷状態が生じたと判定する。また、例えば、統合AAA装置100は、ある集合仮想ルータの『メモリ使用率』が所定の閾値よりも高ければ、この集合仮想ルータに対応する経路にて高負荷状態が生じたと判定する。なお、上記したこれらの手法を用いる場合には、統合AAA装置100は、各手法に対応する閾値を条件記憶部121に予め記憶する。また、同様に、例えば、統合AAA装置100は、高負荷状態が生じたか否かを判定するための情報として、トラヒック分離統合装置にて収集された『利用中の帯域』、『空帯域』、『帯域の利用率』、『パケットの転送量』などをトラヒック分離統合装置から取得してもよい。なお、この場合には、統合AAA装置100は、これらの手法に対応する閾値を条件記憶部121に予め記憶する。
【0106】
また、実施例2においては、統合AAA装置100が自発的に集合仮想ルータから情報を取得する、いわゆるプル型の監視を想定したが、開示の技術はこれに限られるものではなく、例えば、集合仮想ルータにて『CPU使用率70%』という閾値を記憶し、集合仮想ルータが、『CPU使用率70%』という閾値を超過するか否かを例えば1秒間隔に判定し、超過したと判定した場合に、集合仮想ルータが統合AAA装置100に対して通知する、いわゆるプッシュ型の監視でもよい。
【0107】
また、実施例2においては、統合AAA装置100が集合仮想ルータを監視し、動的に経路の割り当てを変更する例を説明したが、開示の技術はこれに限られるものではない。例えば、VPN側からトラヒック分離統合装置へと流入するパケットを、一つ一つ順番に複数の経路に振り分けることで、負荷分散を実現してもよい。このような手法によれば、複数の経路の使用率(それぞれの集合仮想ルータの使用率)が等しく分散され、負荷分散される。
【0108】
また、実施例2においては、統合AAA装置100が集合仮想ルータを監視し、ある経路において高負荷状態が生じたことを判定して、経路の割り当てを変更する例を説明したが、開示の技術はこれに限られるものではない。例えば、VPN間接続において新たなアプリケーションが利用されたり、新たな端末が接続されるなど、新たにトラヒックが発生した時点で、統合AAA装置100は、経路毎に、負荷状態を示す情報(例えば『集合仮想ルータのCPU使用率』など)を取得し、取得した情報を用いて経路間の負荷を比較した上で、最も負荷の低い経路に対して新たに発生したトラヒックを割り当てることにより、経路間で負荷が偏らないように制御してもよい。
【0109】
すなわち、例えば、条件記憶部121は、新たなトラヒックが発生したか否かを判定するための条件を記憶する。例えば、条件記憶部121は、『集合仮想ルータから、アプリケーションの追加が行われた旨の通知を受けたこと』や、『VPN終端装置から、端末の追加が行われた旨の通知を受けたこと』を記憶する。そして、トラヒック監視部131は、集合仮想ルータやVPN終端装置から上記通知を受け取ると、条件記憶部121を参照し、該通知が条件記憶部121に記憶されている条件に該当するか否かを判定することで、新たなトラヒックが発生したか否かを判定する。そして、トラヒック制御部132が、集合仮想ルータそれぞれから経路毎に『集合仮想ルータのCPU使用率』を取得し、各経路間の負荷の高さを比較し、最も負荷が低い経路を判定する。すなわち、トラヒック制御部132は、比較の結果に基づいて、低負荷状態の経路として最も負荷が低い経路を特定する。続いて、トラヒック制御部132は、低負荷状態の経路として特定した経路、すなわち最も負荷が低いと判定された経路に対し、新たに発生したトラヒックを割り当てるように指示する指示情報を、トラヒック分離統合装置に対して送信する。
【0110】
さらに、統合AAA装置は、監視を継続している中で、経路の割り当てを変更したトラヒックを元の経路に戻しても元の集合仮想ルータの負荷が閾値を超えなくなったと判定した場合には、経路の割り当てを元に戻すように指示する指示情報を、該当する装置に対して送信してもよい。この場合には、例えば、トラヒック制御部132が、図15に例示したように、制御情報記憶部122に記憶された「条件非該当時の制御」に従って制御を行えばよい。例えば、上記例では、経路の割り当てを変更するか否かを判定するために、『CPU使用率70%』という閾値を超過するか否かを判定していたが、例えば、集合仮想ルータは、『CPU使用率70%』とは別に『CPU使用率50%』という第二の閾値を記憶し、元の経路に戻してもよいか否かを判定するために、この第二の閾値『CPU使用率50%』を下回るか否かを判定してもよい。もっとも、経路の割り当てを変更したトラヒックを元の経路に戻さずそのまま運用してもよい。すなわち、例えば、一旦経路の割り当てを変更すると、トラヒック制御部132は、割り当て後の状態を初期状態として監視を開始し、割り当て後の経路で例えば『CPU使用率70%』という閾値を超過した場合に、再び、経路の割り当てを変更する、といった制御でもよい。なお、新たに発生したトラヒックの割り当て先として、最も負荷が低い経路を特定する例を説明したが、開示の技術はこれに限られるものではない。新たに発生したトラヒックの割り当て先は、最も負荷が低いと特定された経路だけではなく、例えば、N個の経路中、負荷の低い順にM個の経路を低負荷状態の経路と判断し、この低負荷状態の経路のうち1以上の経路を新たに発生したトラヒックの割り当て先としてもよい。このとき、条件記憶部121には、下位M個を判定するための閾値などの条件情報が記憶されていることになる。
【0111】
また、例えば、ポリシーベースのルーティングにより、固定的にアプリケーションを割り当てる経路を決定し、静的に負荷分散を実現する手法も考えられる。例えば、特定のアプリケーションやToS値などでアプリケーションを分類し、トラヒック分離統合装置においてポリシーベースでルーティングする。
【0112】
また、実施例2においては、統合AAA装置100が複数の集合仮想ルータそれぞれを監視し、ある集合仮想ルータから取得されたCPU使用率が所定の閾値(例えば『CPU使用率70%』)超過することにより、この集合仮想ルータに対応する経路において高負荷状態が生じたことを判定する例を説明したが、開示の技術はこれに限られるものではない。複数の集合仮想ルータそれぞれから取得した情報に基づいて集合仮想ルータ間の負荷の偏りを判定することにより、ある集合仮想ルータに対応する経路において負荷が高い方向に偏っている(すなわち高負荷状態が生じている)ことを判定してもよい。
【0113】
例えば、4台の集合仮想ルータが、それぞれ、4つの経路を形成しているとする。条件記憶部121は、負荷に偏りが生じているか否かを判定するための条件として、例えば『集合仮想ルータのCPU使用率』の分散値の閾値を記憶する。そして、トラヒック監視部131は、4台の集合仮想ルータそれぞれとの間で定期的に(または適当なタイミングに)通信を行い、集合仮想ルータそれぞれにて収集されたCPU使用率を、集合仮想ルータそれぞれから受信する。例えば、トラヒック監視部131は、『100%』、『50%』、『50%』、『0%』を取得する。
【0114】
次に、トラヒック監視部131は、取得したこれらの情報を用いて、『集合仮想ルータのCPU使用率』の分散値を求め、条件記憶部121に記憶されている分散値の閾値と比較して、集合仮想ルータ間に負荷の偏りが生じているか否かを判定する。ここで、求めた分散値が閾値を超過していて、負荷の偏りが生じていると判定した場合には、続いて、トラヒック制御部132が、トラヒック監視部131によって取得された4つのCPU使用率を比較し、最も高いCPU使用率を示す集合仮想ルータに対応する経路と、最も低いCPU使用率を示す集合仮想ルータに対応する経路とを特定する。そして、トラヒック制御部132は、最も負荷が低いと判定された経路に対し、最も負荷が高いと判定された経路を流れているトラヒックの一部又は全部を割り当てるように指示する指示情報を、トラヒック分離統合装置に対して送信する。なお、この割り当ては、ユーザ単位、アプリケーション単位、QoSクラス単位など、任意の単位で行うことができる。例えば、CPU使用率『100%』の集合仮想ルータに対応する経路を10名のユーザが利用している場合には、5名のユーザのトラヒック分を、CPU使用率『0%』の集合仮想ルータに対応する経路に割り当てればよい。このとき、10名のユーザそれぞれによるCPU使用率が等しいと仮定すると、これにより、4台の集合仮想ルータのCPU使用率は、それぞれ50%となり、負荷の偏りを抑えることになる。また、例えば、最も負荷の高い経路を流れているトラヒックの一部又は全部を、その他の1つ以上の経路にそれぞれ適当に割り当てることによって、負荷の偏りを抑えてもよい。なお、トラヒックを割り当てる際の配分は、上記例に限られるものではなく、負荷の偏りや運用の形態などに応じて任意に変更し得るものである。
【0115】
[実施例2に係るトラヒック制御処理手順]
図17は、実施例2に係るトラヒック制御処理手順を示すフローチャートである。図17に例示するように、統合AAA装置100において、トラヒック監視部131が、集合仮想ルータとの間で定期的に(または適当なタイミングに)通信を行い、集合仮想ルータにて収集されたCPU使用率を、集合仮想ルータから受信することで、トラヒックを監視する(ステップS201)。
【0116】
そして、トラヒック監視部131は、集合仮想ルータからCPU使用率を受信すると、条件記憶部121を参照し、受信したCPU使用率が、『CPU使用率70%』という閾値を超過するか否かを判定することで、高負荷状態を判定する(ステップS202)。
【0117】
閾値を超過しないと判定した場合には(ステップS203否定)、トラヒック監視部131は、ステップS201の処理に戻る。一方、閾値を超過すると判定した場合には(ステップS203肯定)、統合AAA装置100において、トラヒック制御部132が、例えば、仮想ルータ『VRF2』に割り当てられているアプリケーション『AP3』を、仮想ルータ『VRF1』に割り当てるように指示する指示情報を、トラヒック分離統合装置に対して送信する(ステップS204)。
【0118】
[実施例2の効果]
上述したように、実施例2において、トラヒック監視部131は、集合仮想ルータから経路毎に取得した情報が条件に該当するか否かを判定することにより高負荷状態が生じたか否かを判定し、トラヒック制御部132は、高負荷状態が生じたと判定された場合に、高負荷状態が生じた経路上のトラヒックを他の経路に割り当てるように指示する指示情報を、少なくともトラヒック分離統合装置に対して送信する。
【0119】
あるいは、実施例2において、トラヒック監視部131は、取得した情報が条件に該当するか否かを判定することにより、VPN間通信システムにおいて制御対象となる新たなトラヒックが発生したことを判定し、トラヒック制御部132は、新たなトラヒックが発生したと判定された場合に、集合仮想ルータから経路毎に取得した情報を用いて経路間の負荷状態を比較し、比較の結果に基づいて低負荷状態の経路を特定し、新たに発生したトラヒックを、特定した該経路に割り当てるように指示する指示情報を、少なくともトラヒック分離統合装置に対して送信する。
【0120】
このようなことから、実施例2によれば、トラヒックを適切に制御することができる。すなわち、高負荷状態となった経路上のトラヒックを他の経路に割り当てることで、負荷分散を実現することができる。あるいは、新たに発生したトラヒックを、もっとも負荷の低い経路に割り当てることにより、経路間で負荷が偏ることを防ぐように負荷分散を実現することができる。例えば、ユーザ数が増えてきた場合などにも、拡張性高く、VPN間接続サービスを提供することができる。
【実施例3】
【0121】
[実施例3に係る統合AAA装置によるトラヒック制御]
実施例3に係る統合AAA装置は、VPN間にトラヒック種別毎に分離された複数の経路が形成された場合に、該経路上の装置を監視することにより、該装置から、故障状態が生じたか否かを判定するための情報を取得し、取得した情報が予め定められた条件に該当するか否かを判定する。そして、統合AAA装置は、取得した情報が条件に該当すると判定した場合に、経路上のトラヒックを制御するための指示情報を、該経路を形成する装置に対して送信する。
【0122】
故障状態が生じたか否かを判定するための情報として、例えば、トラヒックに関する情報やリソースに関する情報がある。具体的に例を挙げると、例えば、『死活確認パケットの受信状況』、『経路を形成する各装置のI/Fで観測されるトラヒック量』、『集合仮想ルータに設定された動的なルーティング情報の消滅』などがある。
【0123】
この点、以下では、統合AAA装置が、故障状態が生じたか否かを判定するための情報として『死活確認パケットの受信状況』を取得する例を用いて説明する。実施例3に係る統合AAA装置は、故障状態が生じたか否かを判定するための情報として『死活確認パケットの受信状況』を取得し、『死活確認パケットが正常に受信できない』という判定条件に該当するか否かを判定することにより、故障状態が生じたか否かを判定する。また、統合AAA装置は、故障状態が生じたと判定した場合に、故障状態が生じた経路上のトラヒックを予備用の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0124】
図18は、実施例3に係るトラヒック制御を説明するための図である。図18に例示するように、実施例3においては、VPN1とVPN2との間に、例えばアプリケーションの種類に応じて分離される等のポリシにより複数の経路として、仮想ルータ『VRF1』の経路と、仮想ルータ『VRF2』の経路と、仮想ルータ『VRF3』の経路とが形成されている。なお、それぞれの経路は、いずれも異なる集合仮想ルータに形成されている。ここで、仮想ルータ『VRF3』の経路は、予備用(Back Up用)の経路である。すなわち、仮想ルータ『VRF3』が設定された集合仮想ルータは、物理的な接続が完了した状態にある。
【0125】
図18に例示するように、統合AAA装置は、故障状態が生じたか否かを判定するための情報を、例えば、集合仮想ルータやトラヒック分離統合装置から取得し、取得した情報が予め定められた条件に該当するか否かを判定することにより故障状態が生じたことを検出する。また、統合AAA装置は、故障状態が生じたことを検出した場合に、故障状態が生じた経路上のトラヒック、例えば、仮想ルータ『VRF2』上のトラヒックを、予備用の経路、例えば、仮想ルータ『VRF3』の経路に割り当てるように指示する指示情報を、例えばトラヒック分離統合装置及びアドレス変換装置に対して送信する。
【0126】
図19は、実施例3に係る統合AAA装置100の構成を示すブロック図である。図19に例示するように、実施例3に係る統合AAA装置100は、記憶部120に、設定情報記憶部124を有する点が、実施例1に係る統合AAA装置100と異なる。
【0127】
実施例3に係る条件記憶部121は、故障状態が生じたか否かを判定するための条件を記憶する。例えば、条件記憶部121は、故障状態が生じたか否かを判定するための条件として、『死活確認パケットが正常に受信できない』を記憶する。
【0128】
実施例3に係る制御情報記憶部122は、実施例1と同様、統合AAA装置100による制御に用いられる各種情報を記憶する。図20及び21は、制御情報を説明するための図である。例えば、制御情報記憶部122は、図20の(A)に例示するように、監視対象となるトラヒック分離統合装置及び集合仮想ルータについて、アドレスを記憶する。ここで、後述するように、実施例3に係るトラヒック監視部131は、経路毎に、トラヒック分離統合装置、集合仮想ルータ、トラヒック分離統合装置の順で死活確認用のパケットを経路上に流すことで、その経路の死活確認、すなわち故障状態(経路上のいずれかの装置に故障が生じたことにより、経路に故障が生じているか否か)を監視する。このため、実施例3に係る制御情報記憶部122は、図20の(A)に例示するように、経路毎に、死活確認用のパケットを流す順序にて、アドレスを記憶する。
【0129】
また、制御情報記憶部122は、図20の(B)に例示するように、情報取得の契機、判定条件、条件該当時の制御、条件非該当時の制御などを記憶する。また、制御情報記憶部122は、図21の(C)に例示するように、各装置の識別情報及びアドレスを記憶する。なお、これらの制御情報は一例に過ぎない。例えば、情報取得の契機や判定条件、条件該当時の制御、条件非該当時の制御などは、監視対象となる装置に応じて異なってもよい。
【0130】
例えば、図20の(B)の例で説明すると、制御情報記憶部122は、情報取得の契機、すなわち監視のタイミングとして、例えば『1秒間隔』を記憶する。また、制御情報記憶部122は、判定条件として、『条件記憶部121に記憶された条件』を記憶する。すなわち、上述したように、『死活確認パケットが正常に受信できない』であることが判定条件であることを示す。
【0131】
また、制御情報記憶部122は、条件に該当した時の制御内容として、「(1)条件に該当した仮想ルータの設定情報を予備用の集合仮想ルータに送信すること、条件に該当した仮想ルータの経路上のアドレス変換装置にて用いられていたアドレス変換情報を、予備用の経路上のアドレス変換装置に送信すること」を記憶するとともに、「(2)条件に該当した仮想ルータの経路上のトラヒックを予備用の経路に割り当てるように指示する指示情報を、トラヒック分離統合装置に対して送信すること」を記憶する。すなわち、後述するように、トラヒック制御部132は、条件に該当した時には、(1)及び(2)の双方に従って制御を行う。
【0132】
設定情報記憶部124は、経路毎に、仮想ルータの設定情報及びアドレス変換装置の設定情報を記憶する。設定情報記憶部124は、例えば集合仮想ルータやアドレス変換装置との間で定期的に通信を行うことにより取得した設定情報を記憶し、設定情報記憶部124が記憶する設定情報は、後述するトラヒック監視部131による処理に用いられる。
【0133】
図22は、設定情報を説明するための図である。例えば、設定情報記憶部124は、図22に例示するように、経路毎に、該経路を形成するために集合仮想ルータに設定された仮想ルータの設定情報や、該経路を形成するためにアドレス変換装置に設定された設定情報を記憶する。
【0134】
実施例3に係るトラヒック監視部131は、故障状態が生じたか否かを判定するための情報を取得し、取得した情報が予め定められた条件に該当するか否かを判定することにより故障状態が生じたことを検出する。そして、トラヒック監視部131は、故障状態が生じたことを検出した場合には、その旨をトラヒック制御部132に通知する。
【0135】
例えば、トラヒック監視部131は、経路毎に、トラヒック分離統合装置、集合仮想ルータ、トラヒック分離統合装置の順で死活確認用のパケットを経路上に流すことで、その経路の死活確認、すなわち故障状態(経路上のいずれかの装置に故障が生じたことにより、経路に故障が生じているか否か)を監視する。このとき、トラヒック監視部131は、制御情報記憶部122を参照し、例えば、『IPアドレスT−1』を用いてトラヒック分離統合装置との間で通信を行い、情報取得の契機『1秒間隔』に従って、『VRF1』の経路に、死活確認用のパケットを流す。また、トラヒック監視部131は、『IPアドレスT−2』を用いてトラヒック分離統合装置との間で通信を行い、自らが流した死活確認用パケットを受信する。また、トラヒック監視部131は、条件記憶部121を参照し、『死活確認パケットが正常に受信できない』が判定条件であることを取得しているので、自らが流した死活確認用パケットを受信できないと故障と判定し、その旨をトラヒック制御部132に通知する。すなわち、自らが流した死活確認用パケットを受信できない場合とは、経路上のいずれかの装置に故障が生じ、パケットが通らなくなった場合であるので、その経路は故障であると判定する。
【0136】
実施例3に係るトラヒック制御部132は、トラヒック監視部131によって故障状態が生じたと判定された場合に、故障状態が生じた経路上のトラヒックを予備用の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0137】
例えば、トラヒック制御部132は、仮想ルータ『VRF2』の経路において故障状態が生じたと判定した旨の通知をトラヒック監視部131から受け付けると、制御情報記憶部122を参照し、条件該当時の制御内容として記憶された情報を取得する。そして、トラヒック制御部132は、設定情報記憶部124を参照し、仮想ルータ『VRF2』に対応付けて記憶されている各種設定情報を取得する。そして、トラヒック制御部132は、『VRF2の設定情報』を予備用の集合仮想ルータに送信し、仮想ルータ『VRF3』の設定に反映するとともに、『アドレス変換装置の設定情報』を、仮想ルータ『VRF3』の経路上のアドレス変換装置に送信し、アドレス変換装置の設定に反映する。さらに、トラヒック制御部132は、例えば、仮想ルータ『VRF2』上のトラヒックを、予備用の経路、例えば、仮想ルータ『VRF3』の経路に割り当てるように指示する指示情報を、例えばトラヒック分離統合装置及びアドレス変換装置に対して送信する。その後、例えば、運用者は、故障した装置を取り替えればよい。また、故障した装置の修理後には、今度は予備用の装置として設置すればよい。なお、このような切替及びトラヒックの迂回は、故障時のみならず、例えば、装置のバージョンアップや更改時などにも適用することができる。
【0138】
なお、実施例3においては、故障状態を検出した際に、動的に集合仮想ルータやアドレス変換装置に設定される例を説明したが、開示の技術はこれに限られるものではない。例えば、各種設定情報は、予め予備用の集合仮想ルータやアドレス変換装置に設定されていてもよい。例えば、実施例1において説明したアドレスの払い出し方式(1)を適用する場合には、仮想ルータ『VRF1』の設定と仮想ルータ『VRF2』の設定とは同じであるので、仮想ルータ『VRF3』には、仮想ルータ『VRF1』(又は『VRF2』)と同じ設定をしておけばよい。また、実施例1において説明したアドレスの払い出し方式(2)を適用する場合には、仮想ルータ『VRF1』の設定と仮想ルータ『VRF2』の設定とは異なるので、仮想ルータ『VRF3』には、仮想ルータ『VRF1』及び『VRF2』それぞれと同じ設定をしておけばよい。
【0139】
また、実施例3においては、監視対象の経路で故障状態が生じたか否かを判定するための条件として、『死活確認パケットが正常に受信できない』という閾値を記憶する例を説明したが、開示の技術はこれに限られるものではない。例えば、統合AAA装置100が、集合仮想ルータの入り側のI/Fのトラヒック量と、出力側のI/Fのトラヒック量とを取得し、入り側のI/Fでトラヒックが観測されているにもかかわらず、出力側のI/Fでトラヒックが観測されないといった点から、故障状態が生じたと判定する手法でもよい。また、集合仮想ルータのI/Fにおいて観測されるトラヒック量に限られず、経路上の他の装置のI/Fにおいて観測されるトラヒック量を用いてもよい。また、例えば、集合仮想ルータに設定されたルーティング情報が、所定時間利用されない場合には消滅する、といった動的なものであったとする。このような場合には、統合AAA装置100は、「集合仮想ルータに設定されたルーティング情報が消滅した」との情報を集合仮想ルータから収集することで、消滅したルーティング情報に対応する経路に故障状態が生じたことを判定することができる。
【0140】
[実施例3に係るトラヒック制御処理手順]
図23は、実施例3に係るトラヒック制御処理手順を示すフローチャートである。図23に例示するように、統合AAA装置100において、トラヒック監視部131が、経路毎に、トラヒック分離統合装置、集合仮想ルータ、トラヒック分離統合装置の順で死活確認用のパケットを経路上に流すことで、トラヒックを監視する。(ステップS301)。
【0141】
そして、トラヒック監視部131は、条件記憶部121を参照し、自らが流した死活確認用パケットを受信できているか否かを判定することで、故障状態を検出する(ステップS302)。
【0142】
自らが流した死活確認用パケットを受信した場合には(ステップS303否定)、トラヒック監視部131は、ステップS301の処理に戻る。一方、自らが流した死活確認用パケットを受信できない場合、すなわち故障状態を検出した場合には(ステップS303肯定)、統合AAA装置100において、トラヒック制御部132が、例えば、仮想ルータ『VRF2』上のトラヒックを、予備用の経路、例えば、仮想ルータ『VRF3』の経路に割り当てるように指示する指示情報を、例えばトラヒック分離統合装置及びアドレス変換装置に対して送信する。(ステップS304)。
【0143】
[実施例3の効果]
上述したように、実施例3において、トラヒック監視部131は、死活確認を経路毎に実行することで経路の異常を示す情報を取得し、取得した情報が予め定められた条件に該当することにより故障状態が生じたか否かを判定し、トラヒック制御部132は、故障状態が生じたと判定された場合に、故障状態が生じた経路上のトラヒックを予備用の経路に割り当てるように指示する指示情報を、少なくともトラヒック分離統合装置に対して送信する。
【0144】
このようなことから、実施例3によれば、故障状態を検知し、予備用の経路に切り替えることが可能になり、トラヒックを適切に制御することができる。
【実施例4】
【0145】
[実施例4に係る統合AAA装置によるトラヒック制御]
実施例4に係る統合AAA装置は、VPN間にトラヒック種別毎に分離された複数の経路が形成された場合に、該経路上の装置を監視することにより、該装置から、リソース借用の要否を判定するための情報を取得し、取得した情報が予め定められた条件に該当するか否かを判定する。そして、統合AAA装置は、取得した情報が条件に該当すると判定した場合に、経路上のトラヒックを制御するための指示情報を、該経路を形成する装置に対して送信する。
【0146】
リソース借用の要否を判定するための情報として、例えば、トラヒックに関する情報やリソースに関する情報がある。具体的に例を挙げると、例えば、『アプリケーションサーバ(「サービス提供装置」とも称する)毎のCPU使用率』、『アプリケーションサーバ毎のディスク空き容量』、『アプリケーションサーバ毎のメモリ使用率』などがある。また、例えば、『経路上を流れる測定用のパケットやユーザパケットにより測定されるアプリケーションのレスポンスタイム』などがある。
【0147】
この点、以下では、統合AAA装置が、リソース借用の要否を判定するための情報として『アプリケーションサーバ毎のCPU使用率』を取得する例を用いて説明する。実施例4に係る統合AAA装置は、リソース借用の要否を判定するための情報として『アプリケーションサーバ毎のCPU使用率』を取得し、取得した情報が予め定められた閾値を超過することによりリソース借用が必要な状態(リソース不足状態)が生じたか否かを判定する。また、統合AAA装置は、リソース不足状態が生じたと判定した場合に、リソース不足状態が生じたアプリケーションサーバを代替するアプリケーションサーバを探索し、リソース不足状態が生じたアプリケーションサーバ用の経路上のトラヒックを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0148】
図24及び25は、実施例4に係るトラヒック制御を説明するための図である。図24に例示するように、実施例4においては、VPN1とVPN2との間に、例えばアプリケーションの種類に応じて分離された複数の経路として、仮想ルータ『VRF1』の経路と、仮想ルータ『VRF2』の経路とが形成されている。それぞれの経路は、いずれも異なる集合仮想ルータに形成されている。また、仮想ルータ『VRF2』の経路には、2つのアプリケーション『APS(Application Server)1』及び『APS2』が動作するアプリケーションサーバ(物理的な筐体は1つ)が接続されている。図24において、『東京APS』は、物理的な筐体としてのアプリケーションサーバを示し、『東京APS』上で、『APS1』及び『APS2』が動作しているものとする。
【0149】
ところで、図24に例示する仮想ルータ『VRF3』の経路は、代替のアプリケーションサーバ用の経路である。このような経路は、予め構築されていてもよいし、代替のアプリケーションサーバに切り替える時点で、オンデマンドに構築されてもよい。経路の構築は、上述したVPN間接続管理システムによって行われるので、例えば、オンデマンドに構築される場合には、統合AAA装置は、代替のアプリケーションサーバを探索すると、代替のアプリケーションサーバとの間に新たに経路を構築するように、VPN間接続管理システムに依頼(VPN間接続要求を送信)すればよい。なお、図24の例においては、仮想ルータ『VRF3』の経路はVPN接続によって形成されているが、例えば、仮想ルータ『VRF1』、『VRF2』、及び『VRF3』が同一事業者によって提供され、例えば地理的な条件が異なるだけの場合には、『VRF3』向けの経路は公衆網を通過するわけではないので、VPN接続を用いる必要はない。
【0150】
さて、図24に例示するように、統合AAA装置は、リソース不足状態が生じたか否かを判定するための情報を、例えば、アプリケーションサーバやそれを監視するオペレーションシステムなどから取得し、取得した情報が予め定められた閾値を超過することによりリソース不足状態が生じたか否かを判定する。なお、統合AAA装置は、アプリケーションサーバやオペレーションシステムなどと、図示しない監視用のネットワークで接続されているものとする。
【0151】
また、統合AAA装置は、リソース不足状態が生じたと判定した場合に、リソース不足状態が生じたアプリケーションサーバ、例えば『APS2』を代替するアプリケーションサーバを探索し、リソース不足状態が生じた『APS2』用の経路(仮想ルータ『VRF2』の経路)上のトラヒックを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、例えばトラヒック分離統合装置及びアドレス変換装置に対して送信する。
【0152】
ここで、統合AAA装置は、上述したように、物理的な筐体としてのアプリケーションサーバ毎に、リソース使用量を示す情報を取得する。このため、統合AAA装置は、例えば『東京APS』についてリソース使用量を示す情報を取得し、『東京APS』においてリソース不足状態が生じたと判定することになるが、『東京APS』上では『APS1』及び『APS2』の双方が動作しているので、そのいずれのアプリケーションを代替の経路に割り当てるべきか、別途判断することになる。この点、実施例4において、統合AAA装置は、「遅延に強い」アプリケーションを選択し、例えば遅延に強い『APS2』のパケットのみを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、トラヒック分離統合装置及びアドレス変換装置に対して送信する。このように、物理的には同一の筐体で動作する2つのアプリケーションのうち、一部のアプリケーションのみを選択して他の経路に割り当てることができるのは、トラヒック分離統合装置が、ポリシーベースのルーティングを行っているからでもある。
【0153】
すると、図25に例示するように、仮想ルータ『VRF2』の経路上のトラヒック(リソース不足状態が生じた『APS2』用の経路上のトラヒック)は、仮想ルータ『VRF3』の経路に割り当てられる。
【0154】
図26は、実施例4に係る統合AAA装置100の構成を示すブロック図である。図26に例示するように、実施例4に係る統合AAA装置100は、記憶部120に、APS情報記憶部125を有する点が、実施例1に係る統合AAA装置100と異なる。
【0155】
実施例4に係る条件記憶部121は、リソース不足状態が生じたか否かを判定するための条件を記憶する。例えば、条件記憶部121は、リソース不足状態が生じたか否かを判定するための条件として、『CPU使用率70%』という閾値を記憶する。
【0156】
実施例4に係る制御情報記憶部122は、実施例1と同様、統合AAA装置100による制御に用いられる各種情報を記憶する。図27は、制御情報を説明するための図である。例えば、制御情報記憶部122は、図27の(A)に例示するように、情報取得の契機、判定条件、条件該当時の制御、条件非該当時の制御などを記憶する。また、制御情報記憶部122は、図27の(B)に例示するように、各アプリケーションサーバ、オペレーションシステム(特定のネットワーク装置やサーバを監視し、CPU使用率やディスク空き容量、メモリ使用率などのリソース使用量を収集しているネットワークマネジメントシステム(NMS))、及びトラヒック分離統合装置について、識別情報及びアドレスを記憶する。
【0157】
なお、これらの制御情報は一例に過ぎない。例えば、情報取得の契機や判定条件、条件該当時の制御、条件非該当時の制御などは、監視対象となる装置に応じて異なってもよく、また、同種の装置(例えば集合仮想ルータ間など)では、同じになってもよい。
【0158】
例えば、図27の例で説明すると、統合AAA装置100は、『オペレーションシステム』(図24において図示を省略)を監視対象とし、このオペレーションシステムとの間で通信を行う場合には、『IPアドレスO−1』を用いる。また、制御情報記憶部122は、情報取得の契機、すなわち監視のタイミングとして、例えば『1分間隔』を記憶する。また、制御情報記憶部122は、判定条件として、『条件記憶部121に記憶された条件』を記憶する。すなわち、上述したように、『CPU使用率70%』という閾値が判定条件であることを示す。
【0159】
また、制御情報記憶部122は、条件に該当した時の制御内容として、「条件に該当したアプリケーションサーバを代替するアプリケーションサーバを探索し、探索したアプリケーションサーバ用の経路にトラヒックを割り当てるように指示する指示情報をトラヒック分離統合装置に送信すること」を記憶する。なお、実施例4においては条件に該当しなくなった場合の制御を行わないが、例えば後述するように、監視を継続している中で代替するアプリケーションサーバ用の経路に割り当てたトラヒックを元の経路に戻しても閾値を超えなくなったと判定する場合もある。このような場合には、制御情報記憶部122は、例えば図27に例示するように、「経路の割り当てを元に戻すように指示する指示情報をトラヒック分離統合装置に対して送信すること」を記憶してもよい。
【0160】
なお、経路割り当てを元に戻すタイミングは、例えば、トラヒック監視部131が、『オペレーションシステム』から、割り当て先のアプリケーションサーバに関するCPU使用率を取得するとする。この場合に、トラヒック制御部132が、取得されたCPU使用率に基づいて「割り当て先のアプリケーションサーバが使用されていない」と判定したタイミングで、経路割り当てを元に戻してもよい。あるいは、例えば、トラヒック監視部131が、『オペレーションシステム』から、リソース不足状態に陥ったアプリケーションサーバに関するCPU使用率を継続して取得するとする。この場合に、トラヒック制御部132が、取得されたCPU使用率に基づいて「リソース不足状態に陥ったアプリケーションサーバが、現時点においてはリソース不足状態ではない」と判定したタイミングで、経路割り当てを元に戻してもよい。例えば、上記例では、経路の割り当てを変更するか否かを判定するために、『CPU使用率70%』という閾値を超過するか否かを判定していたが、例えば、集合仮想ルータは、『CPU使用率70%』とは別に『CPU使用率50%』という第二の閾値を記憶し、元の経路に戻してもよいか否かを判定するために、この第二の閾値『CPU使用率50%』を下回るか否かを判定してもよい。もっとも、経路の割り当てを変更したトラヒックを元の経路に戻さずそのまま運用してもよい。すなわち、例えば、一旦経路の割り当てを変更すると、トラヒック制御部132は、割り当て後の状態を初期状態として監視を開始し、割り当て後の経路で例えば『CPU使用率70%』という閾値を超過した場合に、再び、経路の割り当てを変更する、といった制御でもよい。
【0161】
APS情報記憶部125は、アプリケーション毎に、該アプリケーションをサービスとして提供するアプリケーションサーバの一覧を記憶する。なお、実施例4において、この一覧には、アプリケーションサーバが設置された地理的な位置情報を含む。APS情報記憶部125は、例えばVPN間接続サービスの運用者などによって入力されることでアプリケーションサーバの一覧を予め記憶する。また、APS情報記憶部125が記憶するアプリケーションサーバの一覧は、後述するトラヒック制御部132による処理に用いられる。
【0162】
図28は、アプリケーションサーバの一覧を説明するための図である。例えば、APS情報記憶部125は、図28に例示するように、アプリケーション毎に、アプリケーションサーバの名称(地理的な位置情報を含む)と、このアプリケーションサーバが接続する経路のトラヒック分離統合装置のI/F情報とを対応付けて記憶する。例えば、図28に例示するように、『東京APS1』と『東京APS2』とはそれぞれ異なるアプリケーションであるので、APS識別情報は異なる。もっとも、物理的な筐体『東京APS』は1つであるので、いずれも、接続I/Fは『IF1−3』で同一である(もっとも、物理的な接続I/Fのサブインタフェース(論理的な接続I/F)が異なる場合はある)。なお、実施例4においては、『AP1』よりも『AP2』の方が遅延に強いアプリケーションという想定である。
【0163】
実施例4に係るトラヒック監視部131は、リソース借用の要否を判定するための情報を取得し、取得した情報が予め定められた閾値を超過することによりリソース不足状態が生じたか否かを判定する。そして、トラヒック監視部131は、リソース不足状態が生じたと判定した場合には、その旨をトラヒック制御部132に通知する。
【0164】
実施例4に係るトラヒック制御部132は、トラヒック監視部131によってリソース不足状態が生じたと判定された場合に、リソース不足状態が生じたアプリケーションサーバを代替するアプリケーションサーバを探索し、リソース不足状態が生じたアプリケーションサーバ用の経路上のトラヒックを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0165】
例えば、トラヒック制御部132は、『東京APS』においてリソース不足状態が生じたと判定した旨の通知をトラヒック監視部131から受け付けると、制御情報記憶部122を参照し、条件該当時の制御内容として記憶された情報を取得する。そして、トラヒック制御部132は、APS情報記憶部125を参照し、『東京APS』上で『東京APS1』及び『東京APS2』が動作していることを判定する。また、トラヒック制御部132は、2つ以上のアプリケーションが動作している場合には、遅延に強い方のアプリケーション(例えば、統合AAA装置100は、『AP2』が遅延に強いアプリケーションであることを別途情報として記憶している)を選択し、選択したアプリケーションのみを、代替のアプリケーションサーバ用の経路に割り当てる。
【0166】
すなわち、トラヒック制御部132は、『AP2』に対応付けて記憶されているアプリケーションサーバの一覧を取得する。そして、トラヒック制御部132は、例えば地理的な位置情報から、代替のアプリケーションサーバを探索する。例えば、トラヒック制御部132は、『東京APS2』に地理的に近接する『名古屋APS2』もしくは『東北APS2』を、代替のアプリケーションサーバの候補として探索する。そして、例えば、トラヒック制御部132は、『名古屋APS2』及び『東北APS2』それぞれのリソース使用量を示す情報を取得して比較し、よりリソースに余裕がある方のアプリケーションサーバを、代替のアプリケーションサーバとして選択する。
【0167】
そして、トラヒック制御部132は、再びAPS情報記憶部125を参照し、代替のアプリケーションサーバ(例えば『東北APS2』)用の経路、及び、リソース不足状態が生じたアプリケーションサーバ(例えば『東京APS2』)用の経路について、トラヒック分離統合装置のI/F情報を取得する。例えば、トラヒック制御部132は、『東北APS2』の経路は、I/F情報『I/F1−2』、すなわち『トラヒック分離統合装置1』の『第2I/F』に接続されていることを示す情報を取得する。また、例えば、トラヒック制御部132は、『東京APS2』の経路は、I/F情報『I/F1−3』、すなわち『トラヒック分離統合装置1』の『第3I/F』に接続されていることを示す情報を取得する。そして、トラヒック制御部132は、リソース不足状態が生じた『APS2』用の経路(仮想ルータ『VRF2』の経路)上のトラヒックを、代替のアプリケーションサーバ(例えば『東北APS2』)用の経路に割り当てるように指示する指示情報を、例えば『トラヒック分離統合装置1』に対して送信する。『トラヒック分離統合装置1』では、『第3I/F』にポリシールーティングしていたトラヒックを、以後、『第2I/F』にポリシールーティングする。
【0168】
なお、『東北APS2』用の経路が既に構築されている場合には、トラヒック制御部132は、既に構築されている『東北APS2』用の経路にトラヒックを割り当てるように指示すればよいが、『東北APS2』用の経路が構築されていない場合には、トラヒック制御部132は、さらに、『東北APS2』用の経路を構築するように、例えば、VPN間接続管理システムに対して指示情報(依頼情報)を送信する必要がある。また、『東北APS2』用の経路として、一般的なVPNを構築してもよい。
【0169】
なお、実施例4においては、地理的に近接するアプリケーションサーバを探索する例を説明したが、開示の技術はこれに限られるものではない。例えば、リソース不足状態に陥ったアプリケーションが、遅延に強いアプリケーションであると判定した場合には(遅延に強いアプリケーションであるか否かの情報を予め記憶している)、トラヒック制御部132は、地理的な位置情報から代替のアプリケーションサーバを探索するのではなく、例えば、アプリケーションサーバの性能や、集合仮想ルータの性能(信頼性の高低、帯域制御の可否など)などを優先して探索してもよい。あるいは、代替のアプリケーションサーバは、予め決定されていてもよい。この場合には、トラヒック制御部132は、予め決定されている代替のアプリケーションサーバを示す情報を記憶部から探索すればよい。
【0170】
また、実施例4においては、リソース不足状態が生じたか否かを判定するための条件として、『CPU使用率70%』という閾値を記憶する例を説明したが、開示の技術はこれに限られるものではない。例えば、統合AAA装置100は、リソース借用の要否を判定するための情報として、『アプリケーションサーバ毎のディスク空き容量』、『アプリケーションサーバ毎のメモリ使用率』などが用いられることもある。例えば、統合AAA装置100は、『アプリケーションサーバ毎のディスク空き容量』が所定の閾値よりも小さければ、リソース不足状態が生じたと判定する。また、例えば、統合AAA装置100は、『アプリケーションサーバ毎のメモリ使用率』が所定の閾値よりも大きければ、リソース不足状態が生じたと判定する。なお、上記したこれらの手法を用いる場合には、統合AAA装置100は、各手法に対応する閾値を条件記憶部121に予め記憶する。
【0171】
また、例えば、統合AAA装置100は、測定用のパケットを経路上に流したり、経路上に流れるユーザパケットを用いて、例えばアプリケーションのレスポンスタイムを測定することにより、その測定値をリソース借用の要否を判定するための情報として取得し、測定値が所定の閾値よりも大きければ、リソース不足状態が生じたと判定してもよい。アプリケーションのレスポンスタイムは、例えば図25のアドレス変換装置に備えられたファイアウォール機能や、ネットワーク遅延の影響が少ない場所に設定されたプローブなどによって測定することが可能である。例えば、ファイアウォール機能は、パケットを解析することができるので、特定のアプリケーションにおいて送受信される要求パケットと応答パケットとの間のレスポンスタイムを測定することができる。なお、この場合には、統合AAA装置100は、レスポンスタイムに対応する閾値を条件記憶部121に予め記憶する。
【0172】
また、実施例4においては、統合AAA装置100が自発的にアプリケーションサーバやオペレーションシステムから情報を取得する、いわゆるプル型の監視を想定したが、開示の技術はこれに限られるものではなく、例えば、アプリケーションサーバやオペレーションシステムにて『CPU使用率70%』という閾値を記憶し、アプリケーションサーバやオペレーションシステムが、『CPU使用率70%』という閾値を超過するか否かを例えば1分間隔に判定し、超過したと判定した場合に、アプリケーションサーバやオペレーションシステムが統合AAA装置100に対して通知する、いわゆるプッシュ型の監視でもよい。
【0173】
また、実施例4においては、リソース不足状態が生じたアプリケーションサーバ用の経路上のトラヒック全てを、代替のアプリケーションサーバ用の経路に割り当てる例を説明したが、開示の技術はこれに限られるものではない。例えば、代替のアプリケーションサーバが、他の事業者のものであったり、距離的に遠くにあるなど、元のアプリケーションサーバを利用した場合よりもサービス品質が劣化する場合も考えられる。この場合には、『Best Effort Class』のトラヒックから優先的に代替のアプリケーションサーバに誘導する手法や、遅延時間に感受性の低いアプリケーションから優先的に距離的に遠くのアプリケーションサーバに誘導することも考えられる。
【0174】
また、実施例4においては、リソース不足状態が生じたアプリケーションサーバ用の経路上のトラヒック全てを、『1つの』代替のアプリケーションサーバ用の経路に割り当てる例を説明したが、開示の技術はこれに限られるものではない。例えば、統合AAA装置は、リソース不足状態が生じたアプリケーションサーバを代替するアプリケーションサーバを『複数』探索し、探索した『複数の』代替のアプリケーションサーバ用の経路にトラヒックを割り当てるように指示する指示情報を、経路を形成する装置に対して送信してもよい。例えば、統合AAA装置は、トラヒック分離統合装置に対して、「パケットの送信元IPアドレスの末尾8ビットが『1』〜『128』を示す場合には、仮想ルータ『VRF3』の経路にルーティングし、『129』〜『255』を示す場合には、仮想ルータ『VRF4』の経路にルーティングする」といったポリシールーティングを行うように指示する指示情報を送信すればよい。
【0175】
また、実施例4においては、リソース不足状態を判定する手法を説明したが、開示の技術はこれに限られるものではない。例えば、統合AAA装置は、アプリケーションサーバ毎のリソース使用量を示す情報を取得し、取得した情報が予め定められた条件(例えば、CPU使用率が『0』になったという条件)に該当することによりサーバ停止状態が生じたか否かを判定する。また、統合AAA装置は、サーバ停止状態が生じたと判定した場合に、サーバ停止状態が生じたアプリケーションサーバを代替するアプリケーションサーバを探索し、サーバ停止状態が生じたアプリケーションサーバ用の経路上のトラヒックを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、経路を形成する装置に対して送信する。
【0176】
[実施例4に係るトラヒック制御処理手順]
図29は、実施例4に係るトラヒック制御処理手順を示すフローチャートである。図29に例示するように、統合AAA装置100において、トラヒック監視部131が、各アプリケーションサーバやオペレーションシステムとの間で定期的に(または適当なタイミングに)通信を行い、アプリケーションサーバ毎のリソース使用量を示す情報を各アプリケーションサーバやオペレーションシステムから受信することで、トラヒックを監視する(ステップS401)。
【0177】
そして、トラヒック監視部131は、各アプリケーションサーバやオペレーションシステムからアプリケーションサーバ毎のリソース使用量を示す情報を受信すると、条件記憶部121を参照し、受信したリソース使用量を示す情報が、『CPU使用率70%』という閾値を超過するか否かを判定することで、リソース不足状態を判定する(ステップS402)。
【0178】
閾値を超過しないと判定した場合には(ステップS403否定)、トラヒック監視部131は、ステップS401の処理に戻る。一方、閾値を超過すると判定した場合には(ステップS403肯定)、統合AAA装置100において、トラヒック制御部132が、例えば『APS2』を代替するアプリケーションサーバを探索し、リソース不足状態が生じた『APS2』用の経路(仮想ルータ『VRF2』の経路)上のトラヒックを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、例えばトラヒック分離統合装置に対して送信する(ステップS404)。
【0179】
[実施例4の効果]
上述したように、実施例4において、集合仮想ルータには、VPN間接続に属する各VPNの端末に対してトラヒック種別毎にサービスを提供するアプリケーションサーバが接続され、該端末は、集合仮想ルータによってパケット転送を制御されることでトラヒック種別毎の経路を用いて該アプリケーションサーバにアクセスする。トラヒック監視部131は、アプリケーションサーバ又はオペレーションシステムを監視することにより、アプリケーションサーバ又はオペレーションシステムからアプリケーションサーバ毎のリソース使用量を示す情報を取得し、取得した情報が予め定められた条件に該当することによりアプリケーションサーバにおいて予め定められたリソース不足の状態が生じたか否かを判定する。トラヒック制御部132は、予め定められたリソース不足の状態が生じたと判定された場合に、リソース不足の状態が生じたアプリケーションサーバを代替するアプリケーションサーバを探索し、リソース不足の状態が生じたアプリケーションサーバ用の経路上のトラヒックを、代替のアプリケーションサーバ用の経路に割り当てるように指示する指示情報を、少なくともトラヒック分離統合装置に対して送信する。
【0180】
このようなことから、実施例4によれば、リソース不足状態に対応して他のリソースを貸借することが可能になり、トラヒック制御を適切に行うことができる。例えば、インタークラウド環境においてリソースが不足した場合に、他所のリソースを借りることができる。また、予め、地理的な位置情報(距離)や品質などにおいて借用する仮想ルータを決定しておけば、トラヒックの遅延への耐性や優先度などに応じてトラヒックの制御を行うことができ、適切なサービスレベルを維持することができる。
【実施例5】
【0181】
さて、これまで実施例1〜4を説明したが、開示の技術は、上記実施例以外にも種々の異なる形態にて実施されてよいものである。
【0182】
[VPN間接続管理システムと統合AAA装置との関係]
上記実施例においては、VPN間接続を構築する「VPN間接続管理システム」と「統合AAA装置」とが、異なる筐体の装置であり、また、それぞれが独立の機能を有する装置として実現される例を説明したが、開示の技術はこれに限られるものではない。すなわち、VPN間接続管理システムと統合AAA装置とは、同じ筐体の装置として、また、一体化した機能を有する装置として、実現されてもよい。例えば、統合AAA装置は、VPN間接続管理システムの一部として動作してもよい。なお、上記実施例においては、1台の筐体の統合AAA装置が設置される構成を例示したが、開示の技術はこれに限られるものではない。例えば、複数台の筐体の統合AAA装置が設置される構成や、例えば、記憶部など統合AAA装置の一部が別の筐体で設置される構成などにも、開示の技術を同様に適用することができる。
【0183】
[冗長化構成]
上記実施例におけるVPN間接続は、経路自体を冗長化するものではなかったが、開示の技術において、VPN間接続は、経路自体を冗長化することもできる。図30は、冗長化された経路を説明するための図である。例えば、VPN間接続の経路は、図30に例示するように冗長化してもよい。具体的には、図30に例示するVPN間接続では、現用の集合仮想ルータ(Master(ACT))と予備用の集合仮想ルータ(Backup(SBY))とが設置され、例えば、VRRP(Virtual Router Redundancy Protocol)やHSRP(Hot Standby Routing Protocol)などの冗長化プロトコルによって両集合仮想ルータが冗長化されることで、仮想ルータ『VRF1』の経路が冗長化される。一方、図30に例示するように、仮想ルータ『VRF2』の経路は、冗長化されていない。なお、冗長化された経路上に存在するアドレス変換装置やトラヒック分離統合装置についても、VRRPやHSRPによって冗長化し、現用の経路から予備用の経路への切り替えに対応するように設定する。
【0184】
このような構成の場合、仮想ルータ『VRF1』の経路は、信頼性が高い経路であり、一方、仮想ルータ『VRF2』の経路は、通常の信頼性の経路である。そこで、例えば、高い信頼性が要求されるトラヒック(例えば基幹系のアプリケーションなど)を仮想ルータ『VRF1』の経路に割り当て、通常の信頼性であればよいとされるトラヒックを仮想ルータ『VRF2』の経路に割り当てることで、トラヒックの信頼性に応じた複数の経路を形成することができる。言い換えると、冗長化の度合いによって仮想ルータを分類し、要求される信頼性の度合いで分離したトラヒックを、必要な冗長化の度合いによって対応する適切な仮想ルータに収容することにより、トラヒック毎に信頼性のレベルを変えることができる。
【0185】
なお、高い信頼性が要求されるトラヒックであるか否かが、例えば、ユーザ(契約におけるSLAなどで定義)、アプリケーションの種別、IPアドレス、ポート番号などによって区別することができる場合には、統合AAA装置は、予め、ユーザ、アプリケーションの種別、IPアドレス、ポート番号などに応じて経路を割り当て、その割り当て情報を、トラヒック分離統合装置に対して送信すればよい。
【0186】
また、実施例1〜4の各実施例で説明した手法は、組み合わせることが可能である。例えば、アプリケーションサーバにおいてリソース不足状態が生じるよりも先に、集合仮想ルータにおける高負荷状態が生じたり、経路上の故障状態が生じることもある。このような場合には、例えば、実施例4で説明した経路の切り替えよりも前に、実施例2や実施例3で説明した経路の切り替えが行われることになる。
【0187】
[拠点の態様]
また、上記実施例では、拠点が、電気通信事業者などによって提供されたVPNサービスに接続するローカルエリアネットワークである場合を想定したが、開示の技術はこれに限られるものではない。拠点は、いわゆるネットワークではなく一端末であってもよい。例えば、拠点に設置されるルータが、物理的なルータではなく端末内のソフトウェアで実現される場合などである。また、拠点は、電気通信事業者などによって提供されたVPNサービスによって接続された複数のローカルエリアネットワーク群による社内網のようなものであってもよい。
【0188】
図31〜33は、VPNサービスによって接続された複数のローカルエリアネットワーク群としての拠点を説明するための図である。なお、図31〜33においては、2種類の点線を用いて示す。一方は、通常の点線であり、他方は、破線(短い線と長い線との組合せ)である。破線は、同じVPNサービスに属する複数の拠点であって、かつ、例えば同じ社内(例えばC社内)の拠点間でVPNを形成していることを示す。一方、点線は、VPN間を接続することを示す。例えば、異なるVPNサービスに属する複数の拠点間を接続することや、同じVPNサービスに属する複数の拠点間であっても、異なる会社のVPN間を接続することを示す。
【0189】
図31に例示するように、例えば、C社は、VPNサービス1に属する拠点群を有し、また、VPNサービス3に属する拠点を有する。一方、D社は、VPNサービス2に属する拠点を有し、また、VPNサービス4に属する拠点を有する。統合AAA装置は、このような、異なるVPNサービスに属するC社の拠点群とD社の拠点群との拠点間接続について、トラヒックを適切に制御することができる。
【0190】
また、図32に例示するように、例えば、C社は、VPNサービス3でグループ化された拠点群を有する。一方、D社は、VPNサービス4でグループ化された拠点群を有する。統合AAA装置は、このような、異なるVPNサービスに属するC社の拠点群とD社の拠点群との拠点間接続についても、トラヒックを適切に制御することができる。
【0191】
また、図33に例示するように、例えば、C社及びD社は、いずれも、VPNサービス2でグループ化された拠点群を有する。統合AAA装置は、このような、同じVPNサービスに属するC社の拠点群とD社の拠点群との拠点間接続、言い換えると、同じVPN終端装置に属する複数の拠点群間の拠点間接続についても、トラヒックを適切に制御することができる。
【0192】
[VPN間接続管理システムの構成]
以下、上記各実施例にてVPN間接続を管理するVPN間接続管理システムを説明する。もっとも、以下に説明するVPN間接続管理システムは一例にすぎず、上記各実施例において構築されたVPN間接続は、他のシステムによって構築されたものであってもよい。図34は、VPN間接続管理システム200の構成を示すブロック図である。図34に例示するように、VPN間接続管理システム200は、通信部210と、入力部211と、出力部212と、入出力制御I/F部213と、記憶部220と、制御部230とを備える。
【0193】
通信部210は、例えばIP通信用の一般的なインタフェースなどであり、アドレス変換情報やルーティング情報の設定対象となるVPN終端装置、アドレス変換装置及び集合仮想ルータとの間で通信を行う。なお、VPN間接続管理システム200は、通信部210を介して他の管理端末やユーザ用のWebサーバなどとの間で通信を行うこともでき、他の管理端末やユーザ用のWebサーバなどからVPN間接続要求を受信することもできる。
【0194】
入力部211は、例えばキーボードやマウスなどであり、各種操作の入力などを受け付ける。入力部211は、例えば、VPN間接続要求の入力をキーボードやマウスによって受け付ける。出力部212は、例えばディスプレイなどであり、各種操作のための情報などを出力する。出力部212は、例えば、VPN間接続要求の入力画面を出力する。入出力制御I/F(Interface)部213は、入力部211と、出力部212と、記憶部220と、制御部230との間における入出力を制御する。なお、VPN間接続管理システム200は、必ずしも入力部211や出力部212を備える必要はなく、例えば、通信部210を介して他の管理端末やユーザ用のWebサーバと通信を行い、入出力に係る情報を送受信してもよい。
【0195】
記憶部220は、例えばRAM、ROM、フラッシュメモリなどの半導体メモリ素子、ハードディスク、光ディスクなどであり、各種情報を記憶する。具体的には、記憶部220は、図34に例示するように、VPN間接続情報記憶部221と、設定パターン記憶部222と、VPN間接続要求記憶部223と、アドレス変換情報記憶部224と、ルーティング情報記憶部225と、アタッチメント記憶部226と、装置情報記憶部227とを有する。
【0196】
VPN間接続情報記憶部221は、VPN間接続情報を記憶する。ここで、VPN間接続情報には、拠点を識別する情報や、拠点を収容するVPN終端装置、アドレス変換装置及び集合仮想ルータを識別する情報が含まれる。また、VPN間接続情報には、アドレス変換情報やルーティング情報の作成に必要なその他の情報も含まれる。VPN間接続情報記憶部221は、例えばVPN間接続管理システム200の利用者に入力されることで、VPN間接続情報を事前に記憶する。また、VPN間接続情報記憶部221が記憶するVPN間接続情報は、後述する仮想ルータ構築部232、変換用アドレス決定部233、ルーティング情報生成部235による処理などに利用される。なお、VPN間接続管理システム200の「利用者」には、電気通信事業者などの運用者と、企業内の情報システム部などの管理者とが含まれる。すなわち、以下では、「運用者」は、VPN間接続サービスの運用担当者を意味し、「管理者」は、例えば企業側で拠点の社内網を管理しているネットワーク管理者などを意味する用語として用いる。
【0197】
図35は、VPN間接続情報記憶部221を説明するための図である。図35に例示するように、例えば、VPN間接続情報記憶部221は、VPN間接続情報として、集合仮想ルータの識別情報と、集合仮想ルータの設定パターンの識別情報とを対応付けて記憶する。例えば、集合仮想ルータの識別情報『集合仮想ルータ1』と、集合仮想ルータの設定パターンの識別情報『VR−P1』とを対応付けて記憶する。『集合仮想ルータ1』によって識別される集合仮想ルータの設定パターンは、『VR−P1』によって識別される設定パターンであることを示す。
【0198】
また、VPN終端装置と集合仮想ルータとは予め対応付けられ、VPN終端装置が一意に特定されると、集合仮想ルータも一意に特定される関係にある。すなわち、物理的に1台の集合仮想ルータと、この集合仮想ルータにおいて一つ又は複数の仮想ルータを設定されるVPN終端装置とは、予め特定される関係にある(なお、開示の技術はこれに限られるものではなく、例えば、あるVPN終端装置が、複数台の集合仮想ルータそれぞれにおいて仮想ルータを設定されることも可能である)。このようなことから、例えば、VPN間接続情報記憶部221は、図35に例示するように、集合仮想ルータの識別情報ごとに、拠点(又は拠点のユーザ)を識別する識別情報(接続先ID(IDentifier)及び端末名)と、拠点が用いるVPN種別と、拠点が収容されるVPN終端装置の識別情報と、VPN終端装置の設定パターンの識別情報と、アドレス変換装置の識別情報と、拠点にて用いられている拠点内アドレスとの対応付けのリストを記憶する。
【0199】
『接続先ID』は、例えばVPN間接続サービスの契約時などにVPN間接続管理システム200の運用者によって払い出され、VPN間接続情報記憶部221に格納される。また、『端末名』は、例えばVPN間接続サービスの契約時などにユーザからヒアリングされ、VPN間接続情報記憶部221に格納される。
【0200】
『VPN種別』は、例えばVPN間接続サービスの契約時などにユーザからヒアリングされ、VPN間接続情報記憶部221に格納される。『VPN終端装置』は、例えばVPN間接続サービスの契約時などにVPN間接続管理システム200の運用者によって決定され、VPN間接続情報記憶部221に格納される。また、『VPN終端装置の設定パターン』は、例えばVPN間接続サービスの契約時などにVPN間接続管理システム200の運用者によって決定され、VPN間接続情報記憶部221に格納される。『アドレス変換装置』は、例えばVPN間接続サービスの契約時などにVPN間接続管理システム200の運用者によって決定され、VPN間接続情報記憶部221に格納される。『拠点内アドレス』は、例えばVPN間接続サービスの契約時などにユーザからヒアリングされ、VPN間接続情報記憶部221に格納される。
【0201】
例えば、接続先ID『UserA−Office』、端末名『α1@vpn1.example.co.jp』、VPN種別『OpenVPN』、VPN終端装置『VPN終端装置1』、VPN終端装置の設定パターン『VPN−P1』、アドレス変換装置『アドレス変換装置1』、拠点内アドレス『192.168.1.10/24』の行について説明する。まず、『UserA−Office』によって識別される拠点(VPN間接続に用いられる端末の端末名は『α1@vpn1.example.co.jp』)では、『OpenVPN』が用いられていることを示す。また、『UserA−Office』によって識別される拠点は『VPN終端装置1』に収容されること、また、VPN終端装置の設定パターンには『VPN−P1』が用いられることを示す。
【0202】
また、『UserA−Office』によって識別される拠点は『アドレス変換装置1』に収容されること、また、『192.168.1.10/24』の拠点内アドレスが用いられていることを示す。なお、各拠点において用いられている拠点内アドレス(プライベートアドレス)が相互に重複する状況を想定する。
【0203】
図34に戻り、設定パターン記憶部222は、VPN終端装置、アドレス変換装置、及び転送制御装置の設定パターンを記憶する。具体的には、設定パターン記憶部222は、VPN終端装置に設定すべき設定情報がVPN間接続の種別に応じて定型化されたVPN終端装置の設定パターンを記憶する。また、設定パターン記憶部222は、集合仮想ルータに設定すべき設定情報がVPN間接続の種別に応じて定型化された集合仮想ルータの設定パターンを記憶する。また、設定パターン記憶部222は、アドレス変換装置の設定パターンを記憶する。
【0204】
設定パターン記憶部222は、例えばVPN間接続管理システム200の運用者に入力されることで、設定パターンを事前に記憶する。また、設定パターン記憶部222が記憶する設定パターンは、後述する変換用アドレス決定部233やルーティング情報生成部235による処理などに利用される。
【0205】
図36は、集合仮想ルータの設定パターンの一例である。図36に例示するように、例えば、設定パターン記憶部222は、集合仮想ルータの設定パターンとして、設定パターンの各項目を管理するための項番と、設定情報を設定内容に応じて区分けする区分と、設定内容と、設定情報の登録タイミングと、削除タイミングと、設定内容の仕様とを対応付けて記憶する。また、図36に例示する設定パターンの内、項番1〜項番3が、設定情報の設定パターンであり、項番4が、オプション設定情報の設定パターンである。なお、オプション要求に関する設定情報を一般的な設定情報と区別して用いる場合には、『オプション設定情報』と呼ぶ。また、図36においては図示を省略するが、設定パターン記憶部222は、集合仮想ルータの設定パターンとして、所定のコマンド文をも記憶する。なお、設定パターンは、設定パターンの識別情報によって識別される。
【0206】
例えば、項番1の行を説明する。区分『仮想ルータ定義』の設定パターンは、VPN間接続要求に基づいて仮想的に構築される伝送路(VPN)においてパケット転送を制御する「仮想ルータ」を定義するための設定パターンである。設定内容『仮想ルータ名』は、設定される「仮想ルータ」の名称であり、『半角英数字』で設定すべきことが、仕様として規定されている。また、設定内容『仮想ルータID』は、設定される「仮想ルータ」のIDであり、『16ビット数値』と『32ビット数値』とを『:(コロン)』で接続した形式で設定すべきことが、仕様として規定されている。なお、仕様は、例えば、該当する機器の製造業者などによって規定され、機器の利用者に提供されるもので、上記は一例であり、これに限定されない。また、登録タイミング『サービス開始直前』は、項番1の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番1の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
【0207】
また、例えば、項番2の行を説明する。区分『I/F設定』の設定パターンは、「仮想ルータ」に設定されるインタフェースの設定パターンである。設定内容『IPアドレス』は、インタフェースに設定するIPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきことが、仕様として規定されている。また、設定内容『I/Fの指定』は、インタフェースの指定は『I/Fの種別 数字/数字/数字』の形式で設定すべきことが、仕様として規定されている。また、設定内容『所属仮想ルータ』は、インタフェースを設定する仮想ルータ名を指定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番2の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番2の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
【0208】
また、例えば、項番3の行を説明する。区分『仮想ルータ単位のルーティング設定』の設定パターンは、「仮想ルータ」に設定されるルーティング情報の設定パターンである。設定内容『ルーティング設定』は、ルーティング情報を設定する仮想ルータ名を指定すべきこと、ルーティング情報のIPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番3の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番3の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
【0209】
また、例えば、項番4の行を説明する。区分『アクセス制御』の設定パターンは、「仮想ルータ」に設定されるアクセス制御の設定パターンである。設定内容『フィルタリング(ACL(Access Control List)など)』は、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、ポート番号は、数字で設定すべきこと、数字は『1〜65535』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番4の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番4の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
【0210】
図37は、VPN終端装置の設定パターンの一例である。図37に例示するように、例えば、設定パターン記憶部222は、VPN終端装置の設定パターンとして、設定パターンの各項目を管理するための項番と、設定情報を区分けする区分と、設定内容と、設定情報の登録タイミングと、削除タイミングと、設定内容の仕様とを対応付けて記憶する。また、図37に例示する設定パターンの内、項番1が、設定情報の設定パターンであり、項番2が、オプション設定情報の設定パターンである。また、図37においては図示を省略するが、設定パターン記憶部222は、VPN終端装置の設定パターンとして、所定のコマンド文をも記憶する。なお、設定パターンは、設定パターンの識別情報によって識別される。
【0211】
例えば、項番1の行を説明する。区分『VPNユーザ設定』の設定パターンは、VPN間接続要求に基づいてVPN終端装置に収容する拠点のユーザに関する設定パターンである。設定内容『認証ID/パスワード』は、拠点のユーザに払い出される認証ID及びパスワードであり、認証ID及びパスワードは、『128文字以内』の『半角英数字』で設定すべきことが、仕様として規定されている。なお、『認証ID/パスワード』の替わりにその他の『認証情報』であってもよい。また、登録タイミング『サービス開始直前』は、項番1の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番1の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
【0212】
また、例えば、項番2の行を説明する。区分『アクセス制御』の設定パターンは、「VPN終端装置」に設定されるアクセス制御の設定パターンである。設定内容『フィルタリング(ACLなど)』は、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきこと、ポート番号は、数字で設定すべきこと、数字は『1〜65535』の値を設定すべきことが、仕様として規定されている。また、登録タイミング『サービス開始直前』は、項番2の情報は、サービス開始直前にVPN終端装置に反映されるべきことを示す。また、削除タイミング『サービス終了直後』は、項番2の情報は、サービス終了直後にVPN終端装置から削除されるべきことを示す。
【0213】
また、図示を省略したが、設定パターン記憶部222は、アドレス変換装置の設定パターンについても同様に記憶する。例えば、設定パターン記憶部222は、設定情報の登録タイミングと、削除タイミングと、設定内容の仕様とを対応付けて記憶する。例えば、IPアドレスは『数字.数字.数字.数字』のように数字をピリオドで区切った形式で設定すべきこと、数字は『0〜255』の値を設定すべきことなどが、仕様として規定される。また、例えば、『サービス開始直前』にアドレス変換装置に反映されるべきこと、『サービス終了直後』にアドレス変換装置から削除されるべきことなどが、仕様として規定される。また、設定パターン記憶部222は、アドレス変換装置の設定パターンとして、所定のコマンド文をも記憶する。
【0214】
なお、上記設定パターンはいずれも一例に過ぎず、VPN間接続の種別などによって、設定内容、設定情報の登録タイミング、削除タイミング、設定内容の仕様などは異なってくると考えられる。すなわち、例えば、VPN間接続の種別が『L3VPN』であれば、VPN間接続先とVPN間接続元とのIPアドレスの組や、IPsecの動作設定情報(認証方式や暗号化アルゴリズム)、事前秘密共有鍵などの項目も、設定パターンに定型化され得る。また、例えば、VPN間接続の種別が『L2VPN』であれば、VPN間接続先とVPN間接続元とのL2などのIDなどの項目も、設定パターンに定型化され得る。このように、設定パターンは、VPN間接続の種別などに応じて適切に定型化される。
【0215】
図34に戻り、VPN間接続要求記憶部223は、VPN間接続要求情報を記憶する。VPN間接続要求記憶部223は、後述するVPN間接続要求受付部231によって格納されることで、VPN間接続要求情報を記憶する。また、VPN間接続要求記憶部223が記憶するVPN間接続要求情報は、後述する仮想ルータ構築部232、変換用アドレス決定部233、ルーティング情報生成部235による処理などに利用される。
【0216】
図38は、VPN間接続要求記憶部223を説明するための図である。図38に例示するように、例えば、VPN間接続要求記憶部223は、VPN間接続要求情報として、VPN間接続サービスを開始すべきサービス開始時刻と、VPN間接続サービスを終了すべきサービス終了時刻と、VPN間接続のVCS名と、VPN間接続が設定される仮想ルータ名と、VPN間接続に収容される拠点(又は拠点のユーザ)を識別する識別情報(端末名)とを対応付けて記憶する。
【0217】
例えば、サービス開始時刻『t1』と、サービス終了時刻『t3』と、VCS名『VCSα』と、仮想ルータ名『VRFm』及び『VRFn』と、端末名『α1@vcsα.vpn1.example.co.jp』及び『β1@vcsα.vpn2.example.co.jp』とを対応付けて記憶する。時刻『t1』から『t3』までの間、『α1@vcsα.vpn1.example.co.jp』と『β1@vcsα.vpn2.example.co.jp』とをVPN間接続するVPN間接続要求がなされ、当該VPN間接続が設定されるVCS名が『VCSα』であること、仮想ルータ名が『VRFm』及び『VRFn』であることを示す。なお、説明の便宜上、サービス開始時刻やサービス終了時刻を『t1』、『t3』などと記載するが、例えば、『2009/8/21 13:00』といった具体的な年月日や時刻を示す。また、端末名が図35に例示したものと異なっているが(「vcsα」が追加されている)、元々VPN間接続情報記憶部121に登録されていた端末名に、VCS名を追加した新たな端末名が、VPN間接続要求記憶部123には格納される。
【0218】
図34に戻り、アドレス変換情報記憶部224は、予約情報及びアドレス変換情報を記憶する。ここで、アドレス変換情報とは、後述する変換用アドレス決定部233によって決定されたアドレスがアドレス変換装置を境界として相互に変換されるように変換する変換情報である。なお、ここでは、変換用アドレス決定部233が、上述したIPアドレス払い出し方式(i)に従ってアドレスを決定することを想定する。
【0219】
アドレス変換情報記憶部224は、後述する変換用アドレス決定部233によって格納されることで、予約情報及びアドレス変換情報を記憶する。また、アドレス変換情報記憶部224が記憶する予約情報及びアドレス変換情報は、アドレス変換情報設定部234による処理などに利用される。
【0220】
図39は、アドレス変換情報記憶部224を説明するための図である。図39に例示するように、例えば、アドレス変換情報記憶部224は、予約情報として、VPN間接続サービスを開始すべきサービス開始時刻と、VPN間接続サービスを終了すべきサービス終了時刻とを記憶する。また、アドレス変換情報記憶部224は、予約情報と対応付けて、アドレス変換情報を記憶する。例えば、アドレス変換情報記憶部224は、アドレス変換情報として、VCS名と、仮想ルータ名と、アドレス変換装置に設定されるアドレス変換テーブルとを対応付けて記憶する。
【0221】
例えば、サービス開始時刻『t1』及びサービス終了時刻『t3』と対応付けて記憶されているアドレス変換情報は、VCS名『VCSα』によって識別される仮想ルータに関するアドレス変換情報である。
【0222】
また、アドレス変換装置1−1及びアドレス変換装置1−2においては、拠点内アドレス『192.168.1.10』と第二アドレス『10.0.1.10』とを相互に変換すること、第一アドレス『172.16.2.10』と第二アドレス『10.0.2.10』とを相互に変換することを示す。ここで、拠点内アドレス『192.168.1.10』は、拠点にて用いられている拠点内アドレスであり、第一アドレス『172.16.2.10』は、当該拠点にて通信相手となる他拠点配下の端末を識別するためのアドレスである。
【0223】
また、アドレス変換装置2−1及び2−2においては、第一アドレス『172.16.1.10』と第二アドレス『10.0.1.10』とを相互に変換すること、拠点内アドレス『192.168.1.10』と第二アドレス『10.0.2.10』とを相互に変換することを示す。
【0224】
なお、図39においては、VCS名『VCSα』によって識別される仮想ルータに関するアドレス変換情報のみを例示したが、アドレス変換情報記憶部224は、VPN間接続管理システム200によって構築された他の仮想ルータに関するアドレス変換情報も記憶している。
【0225】
また、図39においては図示を省略したが、アドレス変換情報記憶部224は、プライベートアドレス全体の値、及び、各機器のインタフェースに割り当てられるアドレスとして予め確保されたアドレスも記憶する。
【0226】
すなわち、後述するように、変換用アドレス決定部233は、プライベートアドレス全体のうち、拠点内アドレス、既に予約されたアドレス、利用中のアドレス以外のアドレスを、新たに払い出すアドレスとして決定する。このため、アドレス変換情報記憶部224がプライベートアドレス全体の値を初期値として記憶しておくことで、変換用アドレス決定部233は、アドレス変換情報記憶部224を参照し、変換用のアドレスを決定することができる。
【0227】
また、後述するように、ルーティング情報生成部235は、集合仮想ルータのインタフェースに設定するアドレス、VPN終端装置のインタフェースに設定するアドレス、アドレス変換装置のインタフェースに設定するアドレスを割り当てるが、変換用アドレス決定部233は、各機器のインタフェースに割り当てられたこれらのアドレスとも重複しないように変換用のアドレスを決定しなければならない。このため、アドレス変換情報記憶部224が、各機器のインタフェースに割り当てられるアドレスとして予め確保されたアドレスを記憶しておくことで、変換用アドレス決定部233は、アドレス変換情報記憶部224を参照し、各機器のインタフェースに割り当てられた(あるいは割り当てられる)これらのアドレスと重複しないように、変換用のアドレスを決定することができる。
【0228】
図34に戻り、ルーティング情報記憶部225は、予約情報及びルーティング情報を記憶する。ルーティング情報記憶部225は、後述する仮想ルータ構築部232及びルーティング情報生成部235によって格納されることで、予約情報及びルーティング情報を記憶する。また、ルーティング情報記憶部225が記憶する予約情報及びルーティング情報は、ルーティング情報設定部236による処理などに利用される。
【0229】
図40及び図41は、ルーティング情報記憶部225を説明するための図である。図40に例示するように、例えば、ルーティング情報記憶部225は、予約情報として、VPN間接続サービスを開始すべきサービス開始時刻と、VPN間接続サービスを終了すべきサービス終了時刻とを記憶する。また、ルーティング情報記憶部225は、予約情報と対応付けて、ルーティング情報を記憶する。例えば、ルーティング情報記憶部225は、集合仮想ルータに設定される設定情報(ルーティング情報を含む)を設定ファイルの形式で記憶し、VPN終端装置に設定される設定情報を設定ファイルの形式で記憶し、アドレス変換装置に設定される設定情報を設定ファイルの形式で記憶する。
【0230】
例えば、図41の(A)は、集合仮想ルータに設定される設定情報の一部を例示するものである。また、例えば、図41の(B)は、VPN終端装置に設定される設定情報の一部を例示するものである。例えば、図41の(C)は、アドレス変換装置に設定される設定情報の一部を例示するものである。
【0231】
図34に戻り、アタッチメント記憶部226は、集合仮想ルータごと、VPN終端装置ごと、アドレス変換装置ごとに、アタッチメントを記憶する。ここで、アタッチメントとは、アドレス変換情報をアドレス変換装置に反映するためのプログラム、ルーティング情報をVPN終端装置及び集合仮想ルータに対して反映するためのプログラム、及び、アドレス変換装置に対して反映されたアドレス変換情報を削除するためのプログラム、VPN終端装置及び集合仮想ルータに対して反映されたルーティング情報を削除するためのプログラムである。
【0232】
また、アタッチメントには、VPN間接続管理システム200とアドレス変換装置との間で用いられる通信プロトコル、VPN間接続管理システム200とVPN終端装置との間で用いられる通信プロトコルや、VPN間接続管理システム200と集合仮想ルータとの間で用いられる通信プロトコルが規定される。なお、一般に、当該通信プロトコルには、アドレス変換装置のベンダ、VPN終端装置のベンダや集合仮想ルータのベンダによって規定される独自仕様の通信プロトコルが用いられる。アタッチメント記憶部226は、例えばVPN間接続管理システム200の運用者に入力されることで、アタッチメントを事前に記憶する。また、アタッチメント記憶部226が記憶するアタッチメントは、後述するアドレス変換情報設定部234、ルーティング情報設定部236及び削除部237による処理に利用される。
【0233】
図42は、アタッチメント記憶部226を説明するための図である。図42に例示するように、例えば、アタッチメント記憶部226は、集合仮想ルータ、VPN終端装置やアドレス変換装置の装置識別情報とアタッチメントとを対応付けて記憶する。例えば、反映用のアタッチメントには、アドレス変換装置、VPN終端装置や集合仮想ルータにログインするためのID/パスワードや、アドレス変換情報やルーティング情報を格納すべきパスを指定し、指定したパスにアドレス変換情報やルーティング情報を格納するためのコマンド、アドレス変換装置、VPN終端装置や集合仮想ルータを再起動させるコマンドなどが記載される。なお、アドレス変換情報やルーティング情報の反映には、格納して再起動することで反映する場合と、格納によって反映する場合とがある。また、反映用のアタッチメントには、VPN間接続管理システム200とアドレス変換装置との間で用いられる通信プロトコル、VPN間接続管理システム200とVPN終端装置との間で用いられる通信プロトコルや、VPN設定システムと集合仮想ルータとの間で用いられる通信プロトコルが規定される。
【0234】
また、例えば、削除用のアタッチメントには、アドレス変換装置、VPN終端装置や集合仮想ルータにログインするためのID/パスワードや、アドレス変換情報やルーティング情報が格納されているパスからアドレス変換情報やルーティング情報を削除するためのコマンド、アドレス変換装置、VPN終端装置や集合仮想ルータを再起動させるコマンドなどが記載される。また、削除用のアタッチメントには、VPN間接続管理システム200とアドレス変換装置との間で用いられる通信プロトコル、VPN間接続管理システム200とVPN終端装置との間で用いられる通信プロトコルや、VPN設定システムと集合仮想ルータとの間で用いられる通信プロトコルが規定される。
【0235】
図34に戻り、装置情報記憶部227は、VPN終端装置に事前設定されたVPN終端装置の事前設定情報、及び、集合仮想ルータに事前設定された集合仮想ルータの事前設定情報を記憶する。装置情報記憶部227は、例えばVPN間接続管理システム200の運用者に入力されることで、VPN終端装置の事前設定情報及び集合仮想ルータの事前設定情報を事前に記憶する。また、装置情報記憶部227が記憶する事前設定情報は、後述するルーティング情報生成部235による処理などに利用される。
【0236】
図43は、集合仮想ルータの事前設定情報を説明するための図である。図43に例示するように、例えば、装置情報記憶部227は、集合仮想ルータの事前設定情報として、ホスト名(又はルータ名)及びパスワードを記憶する。「ホスト名」は、集合仮想ルータの名称であり、例えば『jpn100』といった名称である。「パスワード」は、集合仮想ルータにログインするためのパスワードであり、例えば『rootroot』といったパスワードである。
【0237】
図44は、VPN終端装置の事前設定情報を説明するための図である。図44に例示するように、例えば、装置情報記憶部227は、VPN終端装置の事前設定情報として、ホスト名(又はルータ名)、パスワード、VPN終端装置ID、VPN種別、集合仮想ルータ向けIPアドレス、サーバモードを記憶する。また、図44においては図示を省略するが、装置情報記憶部227は、事前設定情報として、例えば、サーバ側待ち受けIPアドレス、プロトコル、ポート番号なども記憶する。
【0238】
「ホスト名」は、VPN終端装置の名称であり、例えば『jpn1』といった名称である。「パスワード」は、VPN終端装置にログインするためのパスワードであり、例えば『rootroot』といったパスワードである。「VPN終端装置ID」は、VPN終端装置を識別するIDであり、例えば『VPN終端装置1』といったIDである。「VPN種別」は、VPN種別であり、例えば『OpenVPN』といった種別である。
【0239】
「集合仮想ルータ向けIPアドレス」は、拠点から送出されたパケットを集合仮想ルータに向けて送出する際に転送すべきIPアドレスであり、集合仮想ルータに仮想ルータが構築され、集合仮想ルータのインタフェースにIPアドレスが割り当てられて初めて決定するものである。このため、図27においては、未だ割り当てられていないという意味で空欄とする。サーバモードは、VPN終端装置が選択したルーティング方式であり、例えばOpenVPNを用いる場合、ルーティング方式には『routing』と『bridge』とがある。
【0240】
図34に戻り、制御部130は、VPN間接続管理システム200において実行される各種処理を制御する。具体的には、図34に例示するように、制御部230は、VPN間接続要求受付部231と、仮想ルータ構築部232と、変換用アドレス決定部233と、アドレス変換情報設定部234と、ルーティング情報生成部235と、ルーティング情報設定部236と、削除部237とを有する。
【0241】
VPN間接続要求受付部231は、VPN間接続要求を受け付ける。具体的には、例えば、インターネットなどのネットワークにユーザ用のWebサーバが設置され、VPN間接続要求受付部231は、ユーザ用の入力画面をWebサーバに配信する。ここで、ユーザ用の入力画面とは、VPN間接続を行うVPNの管理者から、そのVPN間接続要求を受け付けるために、VPN間接続サービスを提供する電気通信事業者などが提供するものである。すると、例えば拠点それぞれの管理者が、当該Webサーバにアクセスし、ユーザ用の入力画面にVPN間接続要求を入力することで、VPN間接続要求受付部231は、VPN間接続要求の入力を受け付け、受け付けたVPN間接続要求をVPN間接続要求記憶部223に格納する。なお、この際、VPN間接続要求受付部231は、VCS名を追加した新たな端末名を、VPN間接続要求記憶部123に格納する。
【0242】
図45は、VPN間接続要求の入力画面の一例を説明するための図である。例えば、VPN間接続要求受付部231は、まず、図45の(A)に例示する入力画面を出力する。入力画面には、VPN間接続の名前であるところの仮想協働空間(VCS)名『VCSα』の入力を受け付ける枠、及び、パスワードの入力を受け付ける枠が設けられる。なお、VCS名及びパスワードは、例えば、同じ協働空間に属する予定の『A社』と『B社』との間で、オフラインで決定されるなどする。こうして、例えば、図45の(A)に例示するように、『A社』の管理者がVCS名『VCSα』及びパスワードを入力すると、VPN間接続要求受付部231は、VCS名として『VCSα』を受け付け、続いて、『A社』に関する情報を受け付ける。なお、VPN間接続要求として仮想協働空間名の入力を受け付ける例を説明するが、これに限られるものではなく、例えば、VPN間接続管理システム200側で仮想協働空間名を自動的に割り当ててもよい。
【0243】
また、図45の(B)に例示するように、図45の(A)に例示する入力画面に続く次の入力画面には、接続先ID及び端末名の入力を受け付ける枠が設けられる。例えば、『A社』の管理者が、接続先IDとして『UserA−Office』を入力し、端末名として『α1@vpn1.example.co.jp』を入力すると、VPN間接続要求受付部231は、VCS名『VCSα』によってVPN間接続される『A社』側の端末として『α1@vpn1.example.co.jp』を受け付ける。なお、例えば『More』のボタンが管理者によって押下されると、VPN間接続要求受付部231は、入力画面上に、端末名の入力を受け付ける枠をさらに設ける。
【0244】
また、入力画面には、予約時間の年月日及び時刻の入力を受け付ける枠が設けられる。例えば、図45の(B)に例示するように、管理者が、予約時間『2009.8.21 13:00』〜『2009.8.21 15:00』を入力すると、VPN間接続要求受付部231は、VPN間接続サービス開始時刻として『2009.8.21 13:00』、VPN間接続サービス終了時刻として『2009.8.21 15:00』を受け付ける。
【0245】
さて、図45の(B)に例示する入力画面において、例えば『OK』ボタンが管理者によって押下されると、VPN間接続要求受付部231は、VPN間接続要求の受け付けを終了する。なお、この後、『B社』の管理者も同様に、VCS名『VCSα』によってVPN間接続される端末として『β1@vpn2.example.co.jp』を入力する。
【0246】
例えば、『B社』の管理者が、入力画面にVCS名『VCSα』及びパスワードを入力すると、VPN間接続要求受付部231は、VCS名として『VCSα』を受け付ける。ここで、VCS名『VCSα』によって識別されるVPN間接続については、既に『A社』の管理者が予約時間の年月日及び時刻の入力を済ませているので、例えば、VPN間接続要求受付部231は、図45の(B)に例示する入力画面のうち、予約時間の年月日及び時刻が入力された状態の入力画面を出力してもよい。すると、例えば、『B社』の管理者が、接続先IDとして『UserB−Office』を入力し、端末名として『β1@vpn2.example.co.jp』を入力すると、VPN間接続要求受付部231は、VCS名『VCSα』によってVPN間接続される『B社』側の端末として『β1@vpn2.example.co.jp』を受け付ける。こうして、『端末α』と『端末β』とを接続するためのVPN間接続要求として、VCS名『VCSα』によって識別されるVPN間接続要求が受け付けられる。
【0247】
なお、ユーザ用の入力画面にVPN間接続要求を入力させる手法を説明したが、これに限られるものではない。例えば、VPN間接続サービスを提供する電気通信事業者などの運用者が、VPN間接続管理システム200の出力部212に出力された入力画面に直接VPN間接続要求を入力する手法でもよい。
【0248】
仮想ルータ構築部232は、VPN間接続要求に基づき、集合仮想ルータに仮想ルータを構築する。具体的には、仮想ルータ構築部232は、VPN間接続要求受付部231によって受け付けられたVPN間接続要求に基づき、集合仮想ルータに構築すべき仮想ルータ名を決定する。また、仮想ルータ構築部232は、集合仮想ルータに設定する設定情報のうち仮想ルータの構築情報を生成し、生成した仮想ルータの構築情報を予約情報とともにルーティング情報記憶部225に格納する。また、仮想ルータ構築部232は、変換用アドレス決定部233に、アドレス変換情報を生成すべき旨を通知する。
【0249】
例えば、仮想ルータ構築部232は、VPN間接続要求記憶部223(図38に例示)を定期的に参照し、現在時刻とサービス開始時刻とを比較して、仮想ルータを構築すべきタイミングであるか否かを判定する。例えば、仮想ルータ構築部232は、現在時刻とサービス開始時刻『t1』とを比較して、仮想ルータを構築すべきタイミングであるか否かを判定する。
【0250】
次に、仮想ルータ構築部232は、仮想ルータを構築すべきタイミングであると判定すると、VPN間接続要求記憶部223を参照し、サービス開始時刻に対応付けて記憶されているVCS名及び端末名を取得する。例えば、仮想ルータ構築部232は、サービス開始時刻『t1』に対応付けて記憶されているVCS名『VCSα』、並びに、端末名『α1@vcsα.vpn1.example.co.jp』及び『β1@vcsα.vpn2.example.co.jp』を取得する。
【0251】
そして、仮想ルータ構築部232は、取得した端末名を用いてVPN間接続情報記憶部221(図35に例示)を参照し、端末名によって識別される拠点が収容される集合仮想ルータを特定し、設定パターンの識別情報を取得する。例えば、仮想ルータ構築部232は、集合仮想ルータ『集合仮想ルータ1』を特定し、設定パターンの識別情報『VR−P1』を取得する。
【0252】
続いて、仮想ルータ構築部232は、取得した設定パターンの識別情報を用いて設定パターン記憶部222(図36に例示)を参照し、区分『仮想ルータ定義』に対応付けて記憶されている仕様を取得する。ここで、図36には例示しなかったが、設定パターン記憶部222は、設定パターンの一つとして、設定情報を集合仮想ルータに反映するための所定のコマンド文も集合仮想ルータごとに記憶する。このため、仮想ルータ構築部232は、該当する所定のコマンド文も取得する。
【0253】
そして、仮想ルータ構築部232は、VPN間接続要求記憶部223(図38に例示)を参照してサービス開始時刻及びサービス終了時刻を取得し、取得したサービス開始時刻及びサービス終了時刻をルーティング情報記憶部225(図40に例示)に格納する。例えば、仮想ルータ構築部232は、サービス開始時刻『t1』及びサービス終了時刻『t3』をルーティング情報記憶部225に格納する。
【0254】
次に、仮想ルータ構築部232は、取得した仕様やコマンド文を用いて仮想ルータの構築情報をファイルに記載し、サービス開始時刻及びサービス終了時刻に対応付けてルーティング情報記憶部225に格納する。例えば、仮想ルータ構築部232は、仮想ルータ名『VRFm』を、取得した所定のコマンド文を用いて『ip vrf vrfm』と記載したファイルを作成する。また、仮想ルータ構築部232は、作成したファイルに、図36に例示する仕様に従って決定した仮想ルータID『100:10』を、所定のコマンド文を用いて『rd 100:10』と記載する。そして、仮想ルータ構築部232は、作成したファイルをサービス開始時刻『t1』及びサービス終了時刻『t3』に対応付けてルーティング情報記憶部225に格納する(図41の(A)を参照)。
【0255】
変換用アドレス決定部233は、VPN間接続要求に基づき、VPN間接続に用いられるアドレスを決定する。具体的には、変換用アドレス決定部233は、VPN間接続要求受付部231によって受け付けられたVPN間接続要求に基づき、VPN間接続に用いられるアドレスを決定し、アドレス変換情報を生成する。ここでは、変換用アドレス決定部233は、上述したIPアドレス払い出し方式(i)によってアドレスを決定する。
【0256】
また、VPN間接続管理システム200は、プライベートアドレス全体を、VPN間接続サービスに利用することができるアドレスとして管理するものとする。すなわち、VPN間接続管理システム200は、上述したように、アドレス変換情報記憶部224が、プライベートアドレス全体の値、及び、各機器のインタフェースに割り当てられるアドレスとして予め確保されたアドレスも記憶する。また、VPN間接続管理システム200は、利用者から事前に申請してもらうことなどにより、拠点ごとに、その拠点にて用いられているプライベートアドレス(VPN間接続情報記憶部221の『拠点内アドレス』)を管理している。
【0257】
このため、変換用アドレス決定部233は、アドレス変換情報記憶部224を参照し、既に予約されたアドレスを時間軸上で探索する。そして、変換用アドレス決定部233は、第一アドレスを決定する際には、プライベートアドレス全体のうち、拠点内アドレス、同じ時間帯に既に予約されたアドレスとして探索されたアドレス、及び各機器のインタフェースに割り当てられるアドレスとして予め確保されたアドレス以外のアドレスを、新たに払い出すアドレスとして決定すればよい。また、変換用アドレス決定部233は、第二アドレスを決定する際には、プライベートアドレス全体のうち、同じVPN間接続について既に予約されたアドレスとして探索されたアドレス、及び各機器のインタフェースに割り当てられるアドレスとして予め確保されたアドレス以外のアドレスを、新たに払い出すアドレスとして決定すればよい。
【0258】
なお、この手法に限られるものではない。例えば、VPN間接続管理システム200が、利用者から事前に申請してもらうことなどにより、拠点ごとに、その拠点にて用いることができるプライベートアドレスを管理しているとする。この場合には、変換用アドレス決定部233は、既に予約されたアドレスを時間軸上で探索し、その拠点にて用いることができるプライベートアドレスとして管理しているプライベートアドレスのうち、拠点内アドレス及び既に予約されたアドレスとして探索されたアドレス以外のアドレスを、新たに払い出すアドレスとして決定すればよい。なお、この場合には、VPN間接続管理システム200は、拠点にて用いることができるプライベートアドレスの値を、拠点ごとに別途記憶する。例えば、VPN間接続管理システム200は、拠点にて用いることができるプライベートアドレスの値を、VPN間接続情報記憶部221に記憶する。
【0259】
また、変換用アドレス決定部233は、生成したアドレス変換情報を予約情報とともにアドレス変換情報記憶部224に格納する。また、変換用アドレス決定部233は、ルーティング情報生成部235に、ルーティング情報を含む設定情報を生成すべき旨を通知する。
【0260】
アドレス変換情報設定部234は、アドレス変換情報をアドレス変換装置に設定する。具体的には、アドレス変換情報設定部234は、変換用アドレス決定部233によって決定された第一アドレスと第二アドレスとが、アドレス変換装置を境界として相互に変換されるように、アドレス変換情報をアドレス変換装置に設定する。
【0261】
例えば、アドレス変換情報設定部234は、アドレス変換情報記憶部224(図39に例示)を定期的に参照し、現在時刻とサービス開始時刻とを比較して、アドレス変換情報を設定すべきタイミングであるか否かを判定する。例えば、アドレス変換情報設定部234は、現在時刻とサービス開始時刻『t1』とを比較して、アドレス変換情報を設定すべきタイミングであるか否かを判定する。
【0262】
次に、アドレス変換情報設定部234は、アドレス変換情報を設定すべきタイミングであると判定すると、アドレス変換情報記憶部224を参照し、サービス開始時刻に対応付けて記憶されているアドレス変換情報を取得する。例えば、アドレス変換情報設定部234は、『アドレス変換装置1−1、1−2』及び『アドレス変換装置2−1、2−2』に対応付けて記憶されているアドレス変換テーブルを取得する。
【0263】
そして、アドレス変換情報設定部234は、アタッチメント記憶部226(図42に例示)を参照し、該当するアタッチメントを取得し、取得したアタッチメントを用いて、該当するアドレス変換装置にアドレス変換情報を送信する。例えば、アドレス変換情報設定部234は、『アドレス変換装置1−1、1−2』及び『アドレス変換装置2−1、2−2』を用いてアタッチメント記憶部226を参照し、アタッチメント『NAT1−1.exe』、『NAT1−2.exe』、『NAT2−1.exe』及び『NAT2−2.exe』を取得する。続いて、アドレス変換情報設定部234は、取得したアタッチメント『NAT1−1.exe』を用いて、アドレス変換情報記憶部224において『アドレス変換装置1−1』に対応付けて記憶されているアドレス変換情報を『アドレス変換装置1−1』に送信する。
【0264】
なお、アドレス変換情報設定部234は、VPN間接続サービスを開始する時刻にアドレス変換情報の設定を開始するものとして説明するが、これに限られるものではない。VPN間接続サービスを開始する時刻として予約を受け付けた時刻には即時にVPN間接続が実現されるように、例えば、アドレス変換情報の設定に要する時間を予め予測し、『サービス開始時刻』から、予測した当該時間を差し引いた時刻を、アドレス変換情報の反映を開始する時刻としてもよい。例えば、変換用アドレス決定部233が、アドレス変換情報記憶部224に予約時間とアドレス変換情報とを格納する際に、アドレス変換情報の設定に要する時間を差し引いた時刻も併せて格納し、アドレス変換情報設定部234が、当該時刻であるか否かを判定してアドレス変換情報の設定を開始してもよい。
【0265】
ルーティング情報生成部235は、VPN間接続要求及びアドレス変換情報に基づき、ルーティング情報を生成する。具体的には、ルーティング情報生成部235は、各機器(集合仮想ルータ、VPN終端装置、アドレス変換装置)のインタフェースに設定するアドレスを、予め確保されたアドレスの中から割り当てる。また、ルーティング情報生成部235は、変換用アドレス決定部233によって決定されたアドレス変換情報に基づきルーティング情報を生成する。また、ルーティング情報生成部235は、生成したルーティング情報を予約情報とともにルーティング情報記憶部225に格納する。なお、既に仮想ルータ構築部232が、仮想ルータの構築情報をファイルに記載してルーティング情報記憶部225に格納しているので、ルーティング情報生成部235は、このファイルに、ルーティング情報(VPN終端装置(Next Hop)へのルーティング情報)などを追記することになる。また、ルーティング情報生成部235は、VPN終端装置のファイルには、集合仮想ルータ(Next Hop)へのルーティング情報など、アドレス変換装置のファイルには、パケットの転送情報などを記載することになる。
【0266】
まず、集合仮想ルータの設定情報の生成について説明する。例えば、ルーティング情報生成部235は、変換用アドレス決定部233からルーティング情報を含む設定情報を生成すべき旨の通知を受けると、アドレス変換情報記憶部224(図39に例示)を参照し、アドレス変換装置側I/Fに設定すべきアドレスを決定する。例えば、ルーティング情報生成部235は、アドレス変換装置1側のI/Fとして『10.0.10.97』を決定し、アドレス変換装置2側のI/Fとして『10.0.20.97』を決定する。
【0267】
また、ルーティング情報生成部235は、設定パターン記憶部222(図36に例示)を参照し、区分『I/Fの設定』及び『仮想ルータ単位のルーティング設定』に対応付けて記憶されている仕様を取得する。ここで、図36には例示しなかったが、設定パターン記憶部222は、設定パターンの一つとして、設定情報を集合仮想ルータに反映するための所定のコマンド文も集合仮想ルータごとに記憶する。このため、ルーティング情報生成部235は、該当する所定のコマンド文も取得する。
【0268】
そして、ルーティング情報生成部235は、『数字.数字.数字.数字』の仕様に従って「IPアドレス」を決定する。また、例えば、ルーティング情報生成部235は、図36に例示する設定パターンを参照し、『I/Fの種別 数字/数字/数字』の仕様に従って「I/Fの指定」を決定する。
【0269】
例えば、ルーティング情報生成部235は、アドレス変換装置1−1と接続するインタフェースに設定するIPアドレスとして『10.0.10.97 255.255.255.0』を決定し、I/Fの指定として『GigabitEthernet(登録商標)1/0/0』を決定する。
【0270】
次に、ルーティング情報生成部235は、アドレス変換情報記憶部224を参照し、アドレス変換装置に対応付けて記憶されている仮想ルータ側アドレスを取得する。例えば、ルーティング情報生成部235は、アドレス変換装置『アドレス変換装置1−1』と対応付けて記憶されている仮想ルータ側アドレス『10.0.1.10』及び『10.0.2.10』を取得する。
【0271】
そして、例えば、ルーティング情報生成部235は、図41の(A)に示すように、アドレス変換装置1−1と接続するインタフェースに設定するIPアドレスとして決定した『10.0.10.97 255.255.255.0』を、所定のコマンド文を用いて『ip address 10.0.10.97 255.255.255.0』と記載する。また、例えば、ルーティング情報生成部235は、I/Fの指定として決定した『GigabitEthernet(登録商標)1/0/0』を、所定のコマンド文を用いて『interface GigabitEthernet(登録商標)1/0/0』と記載する。その他、ルーティング情報生成部235は、インタフェースを仮想ルータ『vrf1』に所属させるコマンドとして、『ip vrf forwarding vrf1』と記載する。なお、ルーティング情報生成部235は、アドレス変換装置2と接続するインタフェースについても同様に記載する。
【0272】
また、ルーティング情報生成部235は、いわゆるルーティング情報であるルーティング設定コマンドを記載する。ここで、NextHopはアドレス変換装置である。例えば、ルーティング情報生成部235は、仮想ルータ名『VRFm』と、『10.0.1.0 255.255.255.0』と、IPアドレス『10.0.10.98』とを用いて、図36に例示する仕様に従い所定のコマンド文を用いて『ip route vrf vrfm 10.0.1.0 255.255.255.0 10.0.10.98』と記載する。なお、ルーティング情報生成部235は、アドレス変換装置2と接続するインタフェースについても同様に記載する。
【0273】
次に、VPN終端装置の設定情報の生成について説明する。ルーティング情報生成部235は、VPN間接続要求受付部231によって受け付けられた接続先IDを用いてVPN間接続情報記憶部221を参照し、接続先IDそれぞれと対応付けて記憶されているVPN終端装置の設定パターンの識別情報を取得する。そして、ルーティング情報生成部235は、VPN終端装置の設定パターンの識別情報それぞれを用いて設定パターン記憶部222を参照し、設定パターン記憶部222に記憶されたVPN終端装置の設定パターンの中から設定情報の生成に利用すべきVPN終端装置の設定パターンを選択する。そして、ルーティング情報生成部235は、選択した設定パターンを用いて設定情報を生成する。
【0274】
例えば、ルーティング情報生成部235は、VPN終端装置のI/F(拠点側及び集合仮想ルータ側)に設定すべきアドレスを決定し、決定したアドレスを用いてルーティング情報を生成する。例えば、ルーティング情報生成部235は、図41の(B)に示すように、『VPN終端装置1』のルーティング情報を生成する。図41(B)の最初の4行は、『VPN終端装置1』のインタフェースにアドレスを設定するコマンドである。また、図41(B)の5行目は、NextHopを『アドレス変換装置1』とするためのルーティング設定コマンドである。
【0275】
次に、アドレス変換装置の設定情報の生成について説明する。なお、図36及び図37においては図示を省略したが、設定パターン記憶部222は、アドレス変換装置の設定パターンも記憶する。このため、例えば、ルーティング情報生成部235は、VPN間接続要求受付部231によって受け付けられた接続先IDを用いてVPN間接続情報記憶部221を参照し、接続先IDそれぞれと対応付けて記憶されているアドレス変換装置の識別情報を取得する。そして、ルーティング情報生成部235は、アドレス変換装置の設定パターンの識別情報それぞれを用いて設定パターン記憶部222を参照し、設定パターン記憶部222に記憶されたアドレス変換装置の設定パターンの中から設定情報の生成に利用すべきアドレス変換装置の設定パターンを選択する。そして、ルーティング情報生成部235は、選択した設定パターンを用いて設定情報を生成する。
【0276】
例えば、ルーティング情報生成部235は、アドレス変換装置のI/F(拠点側及び集合仮想ルータ側)に設定すべきアドレスを決定し、決定したアドレスを用いてルーティング情報を生成する。例えば、ルーティング情報生成部235は、図41の(C)に示すように、『アドレス変換装置1』のルーティング情報を生成する。図41(C)の最初の4行は、『アドレス変換装置1』のインタフェースにアドレスを設定するコマンドである。また、図41(C)の5行目は、『VPN終端装置1』側へのルーティング設定コマンドであり、アドレス変換前のアドレスを設定する。図41(C)の6行目は、仮想ルータ『vrfm』側へのルーティング設定コマンドであり、アドレス変換後のアドレスを設定する。
【0277】
なお、上述したように、設定情報それぞれは、例えば、図41に例示するように、設定ファイルの形式で、ルーティング情報記憶部225に記憶される。すなわち、ルーティング情報生成部235は、生成した設定情報それぞれを、設定ファイルの形式で、ルーティング情報記憶部225に格納する。もっとも、これに限られるものではなく、生成した設定情報をデータベースに格納する手法でもよい。あるいは、生成した設定情報をファイル形式で記憶するとともにデータベースにも格納する手法でもよい。これらの手法によれば、設定情報は、検索や参照に適したデータベースに格納されるので、例えば、ルーティング情報生成部235は、設定情報を生成する際に、既に生成された設定情報を参照して重複を判定するが、その都度ファイルオープンの処理を実行する必要がなく、処理が効率的になる。
【0278】
ルーティング情報設定部236は、ルーティング情報をアドレス変換装置、VPN終端装置及び集合仮想ルータに設定する。例えば、ルーティング情報設定部236は、ルーティング情報記憶部225(図40に例示)を定期的に参照し、現在時刻とサービス開始時刻とを比較して、設定情報を設定すべきタイミングであるか否かを判定する。例えば、ルーティング情報設定部236は、現在時刻とサービス開始時刻『t1』とを比較して、設定情報を設定すべきタイミングであるか否かを判定する。
【0279】
次に、ルーティング情報設定部236は、設定情報を設定すべきタイミングであると判定すると、ルーティング情報記憶部225を参照し、サービス開始時刻に対応付けて記憶されている設定情報を取得する。例えば、ルーティング情報設定部236は、サービス開始時刻『t1』に対応付けて記憶されている設定情報を取得する。
【0280】
そして、ルーティング情報設定部236は、アタッチメント記憶部226(図42に例示)を参照し、該当するアタッチメントを取得し、取得したアタッチメントを用いて、該当する集合仮想ルータ、VPN終端装置及びアドレス変換装置に設定情報を送信する。例えば、ルーティング情報設定部236は、『集合仮想ルータ1』、『VPN終端装置1』、『VPN終端装置2』、『アドレス変換装置1−1』、『アドレス変換装置1−2』、『アドレス変換装置2−1』、及び『アドレス変換装置2−2』を用いてアタッチメント記憶部226を参照し、アタッチメント『VR1.exe』、『VPN1.exe』、『VPN2.exe』、『NAT1−1.exe』、『NAT1−2.exe』、『NAT2−1.exe』、及び『NAT2−2.exe』を取得する。続いて、ルーティング情報設定部236は、取得したアタッチメント『VR1.exe』を用いて、設定情報を『集合仮想ルータ1』に送信する。同様に、ルーティング情報設定部236は、『VPN終端装置1』、『VPN終端装置2』、『アドレス変換装置1−1』、『アドレス変換装置1−2』、『アドレス変換装置2−1』、及び『アドレス変換装置2−2』にも設定情報を送信する。
【0281】
なお、アタッチメントには、例えば、VPN間接続管理システム200から各機器に対してtelnetやSSH(Secure SHell)などを用いて遠隔操作することにより、設定情報を設定する手法が含まれていてもよい。
【0282】
また、ルーティング情報設定部236は、VPN間接続サービスを開始する時刻に設定情報の設定を開始するものとして説明するが、これに限られるものではない。VPN間接続サービスを開始する時刻として予約を受け付けた時刻には即時にVPN間接続が実現されるように、例えば、設定情報の設定に要する時間を予め予測し、『サービス開始時刻』から、予測した当該時間を差し引いた時刻を、設定情報の設定を開始する時刻としてもよい。例えば、仮想ルータ構築部232が、ルーティング情報記憶部225に予約時間と設定情報とを格納する際に、設定情報の設定に要する時間を差し引いた時刻も併せて格納し、ルーティング情報設定部236が、当該時刻であるか否かを判定して設定情報の設定を開始してもよい。
【0283】
削除部237は、VPN終端装置、アドレス変換装置、及び集合仮想ルータに設定されたアドレス変換情報やルーティング情報を削除する。具体的には、削除部237は、タイマやポーリングなどによって定期的にアドレス変換情報記憶部224やルーティング情報記憶部225を参照し、VPN間接続サービスを終了する時刻であるか否かを判定する。サービス終了時刻であると判定すると、アタッチメント記憶部226を参照し、該当するVPN終端装置や集合仮想ルータのアタッチメント(削除用)を取得する。そして、削除部237は、該当するアタッチメントを用いて、該当するVPN終端装置や集合仮想ルータから設定情報を削除する。なお、削除部237は、アドレス変換情報記憶部224やルーティング情報記憶部225に記憶されている予約情報なども削除する。
【0284】
[VPN間接続管理システムによる処理手順]
次に、図46を用いて、VPN間接続管理システム200による処理手順を説明する。図46は、VPN間接続管理システム200による処理手順を示すフローチャートである。
【0285】
図46に例示するように、VPN間接続管理システム200は、仮想ルータを構築すべきタイミングであると判定すると(ステップS1肯定)、仮想ルータを構築する(ステップS2)。具体的には、仮想ルータ構築部232が、仮想ルータを構築する。
【0286】
次に、VPN間接続管理システム200は、変換用アドレスを決定する(ステップS3)。具体的には、変換用アドレス決定部233が、変換用アドレスを決定する。
【0287】
続いて、VPN間接続管理システム200は、ルーティング情報を生成する(ステップS4)。具体的には、ルーティング情報生成部235が、ルーティング情報を生成する。
【0288】
そして、VPN間接続管理システム200は、アドレス変換情報及びルーティング情報を設定する(ステップS5)。具体的には、アドレス変換情報設定部234が、該当するアドレス変換装置にアドレス変換情報を設定し、ルーティング情報設定部236が、該当する集合仮想ルータ及びVPN終端装置にルーティング情報を設定する。
【0289】
なお、サービス開始時刻までに、アドレス変換情報及びルーティング情報の設定が終了してれば、いつ仮想ルータを構築し、いつアドレス変換情報を決定し、いつルーティング情報を生成し、いつアドレス変換情報やルーティング情報を設定するかは、任意である。例えば、サービス開始時刻よりもかなり早い段階で設定まで終了させておき、ファイアウォールの設定などによりVPN間接続の通信を行わせないようにしてもよい。この場合には、サービス開始時刻になると、ファイアウォールの設定が変更され、VPN間接続が可能になる。
【0290】
図47を用いて、協働空間におけるアクセスの一例を説明する。図47は、協働空間におけるアクセスの一例を説明するための図である。図47では、端末αと端末βとの間で、協働空間『VCSα』(仮想ルータ『VRFm』及び仮想ルータ『VRFn』)が構築された例を説明する。端末αの協働空間『VCSα』内での名前(協働空間用に割り当てられたもの)は、協働空間内での名前空間のルールに基づき『α1@vcsα.vpni.example.com』であり、拠点内アドレスは、『192.168.1.10』である。
【0291】
また、端末βの協働空間『VCSα』内での名前(協働空間用に割り当てられたもの)は、『β1@vcsα.vpnj.example.com』であり、拠点内アドレスは、『192.168.1.10』である。また、端末α側の拠点にて端末βを識別する第一アドレスは、『172.16.2.10』であり、端末β側の拠点にて端末αを識別する第一アドレスは、『172.16.1.10』である。このため、図47に例示するように、DNSには、『α1@vcsα.vpni.example.com』と『172.16.1.10』との対応関係が登録され、『β1@vcsα.vpnj.example.com』と『172.16.2.10』との対応関係が登録される。
【0292】
また、端末αを仮想ルータ『VRFm』内で識別する第二アドレスは、『10.0.1.10』であり、端末βを仮想ルータ『VRFm』内で識別する第二アドレスは、『10.0.2.10』である。なお、図47の例では、仮想ルータ『VRFn』内で識別する第二アドレスも同じアドレスが払い出されるが、これに限られるものではない。
【0293】
このため、図47に例示するように、VPNi側のアドレス変換装置には、拠点内アドレス『192.168.1.10』と第二アドレス『10.0.1.10』とを変換するアドレス変換情報と、第一アドレス『172.16.2.10』と第二アドレス『10.0.2.10』とを変換するアドレス変換情報が設定される。また、VPNj側のアドレス変換装置には、拠点内アドレス『192.168.1.10』と第二アドレス『10.0.2.10』とを変換するアドレス変換情報と、第一アドレス『172.16.1.10』と第二アドレス『10.0.1.10』とを変換するアドレス変換情報が設定される。
【0294】
また、各仮想ルータには、ルーティング情報が設定される。図47に例示するように、宛先アドレスが『10.0.1.10』のパケットについては、VPNi側のI/Fにルーティングすること、宛先アドレスが『10.0.2.10』のパケットについては、VPNj側のI/Fにルーティングすることが設定される。
【0295】
このような構成のもと、例えば、端末αが端末βに対してパケットを送信する場合を考える。端末αのユーザは、端末βのユーザの端末名『β1@vcsα.vpnj.example.com』を既知である。このため、端末αは、『β1@vcsα.vpnj.example.com』を用いてDNSに問い合わせを行う。DNSは、『β1@vcsα.vpnj.example.com』を用いて記憶部を参照し、『β1@vcsα.vpnj.example.com』に対応付けて記憶されている第一アドレス『172.16.2.10』を応答する。
【0296】
そこで、端末αは、パケットの宛先に第一アドレス『172.16.2.10』、送信元に拠点内アドレス『192.168.1.10』が入ったパケットをVPN終端装置に向けて送信する。トラヒック分離統合装置は、このパケットを受け取ると、ポリシーベースのルーティングをし、アドレス変換装置に送出する。
【0297】
すると、アドレス変換装置は、受け取ったパケットのアドレスをアドレス変換情報に基づき変換する。例えば、宛先アドレス『172.16.2.10』を『10.0.2.10』に変換し、送信元アドレス『192.168.1.10』を『10.0.1.10』に変換する。そして、アドレス変換装置は、アドレス変換後のパケットを集合仮想ルータに送出する。集合仮想ルータにおいては、宛先アドレスに基づくルーティングが行われる。宛先アドレス『10.0.2.10』のパケットは、VPNj側のI/Fにルーティングされる。
【0298】
さて、VPNj側のI/Fにルーティングされたパケットは、VPNj側のアドレス変換装置を到達する。すると、アドレス変換装置は、受け取ったパケットのアドレスをアドレス変換情報に基づき変換する。例えば、宛先アドレス『10.0.2.10』を『192.168.1.10』に変換し、送信元アドレス『10.0.1.10』を『172.16.1.10』に変換する。そして、アドレス変換装置は、アドレス変換後のパケットをVPN終端装置に送出する。こうして、端末αから送出されたパケットは、端末βに到達する。
【0299】
[その他]
また、上記実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0300】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0301】
なお、上記実施例で説明したトラヒック制御指示方法は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのIPネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical disk)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【符号の説明】
【0302】
100 統合AAA装置
110 通信部
111 入力部
112 出力部
113 入出力制御I/F部
120 記憶部
121 条件記憶部
122 制御情報記憶部
130 制御部
131 トラヒック監視部
132 トラヒック制御部

【特許請求の範囲】
【請求項1】
広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示装置であって、
前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視手段と、
前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御手段と
を備えたことを特徴とするトラヒック制御指示装置。
【請求項2】
前記監視手段は、取得した情報が前記条件に該当するか否かを判定することにより輻輳状態が生じたか否かを判定し、
前記制御手段は、輻輳状態が生じたと判定された場合に、前記複数の経路のうち優先度が低いトラヒック用の経路にてトラヒックを廃棄するように指示する指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信することを特徴とする請求項1に記載のトラヒック制御指示装置。
【請求項3】
前記監視手段は、前記転送制御装置から経路毎に取得した情報が前記条件に該当するか否かを判定することにより高負荷状態が生じたか否かを判定し、
前記制御手段は、高負荷状態が生じたと判定された場合に、高負荷状態が生じた経路上のトラヒックを他の経路に割り当てるように指示する指示情報を、少なくとも前記トラヒック制御装置に対して送信することを特徴とする請求項1に記載のトラヒック制御指示装置。
【請求項4】
前記監視手段は、取得した情報が前記条件に該当するか否かを判定することにより、前記拠点間接続システムにおいて制御対象となる新たなトラヒックが発生したことを判定し、
前記制御手段は、新たなトラヒックが発生したと判定された場合に、前記転送制御装置から経路毎に取得した情報を用いて経路間の負荷状態を比較して低負荷状態の経路を特定し、新たに発生した前記トラヒックを、前記低負荷状態の経路に割り当てるように指示する指示情報を、少なくとも前記トラヒック制御装置に対して送信することを特徴とする請求項1に記載のトラヒック制御指示装置。
【請求項5】
前記監視手段は、死活確認を経路毎に実行することで経路の異常を示す情報を取得し、取得した情報が予め定められた条件に該当することにより故障状態が生じたか否かを判定し、
前記制御手段は、故障状態が生じたと判定された場合に、故障状態が生じた経路上のトラヒックを予備用の経路に割り当てるように指示する指示情報を、少なくとも前記トラヒック制御装置に対して送信することを特徴とする請求項1に記載のトラヒック制御指示装置。
【請求項6】
前記転送制御装置には、前記拠点間接続に属する各拠点の端末に対してトラヒック種別毎にサービスを提供するサービス提供装置が接続され、該端末は、該転送制御装置によってパケット転送を制御されることで前記トラヒック種別毎の経路を用いて該サービス提供装置にアクセスするものであって、
前記サービス提供装置または該サービス提供装置を監視する監視システムを監視することにより、該サービス提供装置または該監視システムから前記サービス提供装置毎のリソース使用量を示す情報を取得し、取得した情報が予め定められた条件に該当することによりサービス提供装置において予め定められたリソース不足の状態が生じたか否かを判定するサービス監視手段をさらに備え、
前記制御手段は、予め定められたリソース不足の状態が生じたと判定された場合に、リソース不足の状態が生じたサービス提供装置を代替するサービス提供装置を探索し、リソース不足の状態が生じたサービス提供装置用の経路上のトラヒックを、代替のサービス提供装置用の経路に割り当てるように指示する指示情報を、少なくとも前記トラヒック制御装置に対して送信することを特徴とする請求項1に記載のトラヒック制御指示装置。
【請求項7】
前記拠点間接続はVPN間接続であることを特徴とする請求項1〜6のいずれか一つに記載のトラヒック制御指示装置。
【請求項8】
広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示方法であって、
コンピュータが、
前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視工程と、
前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御工程と
を含むことを特徴とするトラヒック制御指示方法。
【請求項9】
コンピュータを請求項1〜7のいずれか一つに記載のトラヒック制御指示装置として機能させることを特徴とするトラヒック制御指示プログラム。
【請求項10】
広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示システムであって、
トラヒック制御指示装置は、
前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視手段と、
前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御手段とを備え、
前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置は、
前記トラヒック制御指示装置から要求された場合に、該トラヒック制御指示装置に対してトラヒックに関する情報を送信する送信手段と、
前記トラヒック制御指示装置から前記指示情報を受信した場合に、受信した該指示情報に従ってトラヒックを制御する制御手段と
を備えたことを特徴とするトラヒック制御指示システム。
【請求項11】
広域ネットワークのパケット転送を制御する転送制御装置と、前記転送制御装置を経由した拠点間接続に属する各拠点を収容するとともに収容した拠点を終端する終端装置と、拠点側から送信されたパケットをトラヒック種別毎に分離し、前記転送制御装置との間にトラヒック種別毎に形成された複数の経路それぞれに送出するトラヒック制御装置とを含む拠点間接続システムのトラヒックを制御するトラヒック制御指示方法であって、
トラヒック制御指示装置としてのコンピュータが、
前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置を監視することにより、該装置から、トラヒックに関する情報、リソースに関する情報のうち、少なくとも一つを取得し、取得した情報が予め定められた条件に該当するか否かを判定する監視工程と、
前記情報が前記条件に該当すると判定された場合に、前記経路上のトラヒックを制御するための指示情報を、前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置に対して送信する制御工程とを含み、
前記転送制御装置、前記トラヒック制御装置のうち、少なくとも一つの装置としてのコンピュータが、
前記トラヒック制御指示装置から要求された場合に、該トラヒック制御指示装置に対してトラヒックに関する情報を送信する送信工程と、
前記トラヒック制御指示装置から前記指示情報を受信した場合に、受信した該指示情報に従ってトラヒックを制御する制御工程と
を含むことを特徴とするトラヒック制御指示方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6−1】
image rotate

【図6−2】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate


【公開番号】特開2011−228864(P2011−228864A)
【公開日】平成23年11月10日(2011.11.10)
【国際特許分類】
【出願番号】特願2010−95493(P2010−95493)
【出願日】平成22年4月16日(2010.4.16)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】