JP4821735B2 - VPN topology control device, VPN topology control system, VPN topology control method and program - Google Patents
VPN topology control device, VPN topology control system, VPN topology control method and program Download PDFInfo
- Publication number
- JP4821735B2 JP4821735B2 JP2007211808A JP2007211808A JP4821735B2 JP 4821735 B2 JP4821735 B2 JP 4821735B2 JP 2007211808 A JP2007211808 A JP 2007211808A JP 2007211808 A JP2007211808 A JP 2007211808A JP 4821735 B2 JP4821735 B2 JP 4821735B2
- Authority
- JP
- Japan
- Prior art keywords
- vpn
- router
- topology
- data flow
- request information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
本発明は、複数のルータを制御することによって通信状況に応じたVPNのトポロジを形成する技術に関する。 The present invention relates to a technique for forming a VPN topology according to a communication situation by controlling a plurality of routers.
企業ネットワークにおいては、複数の拠点に点在するLAN(Local Area Network)をネットワーク接続する際に、セキュリティの関係からVPN(Virtual Private Network)で接続することが多い。VPNによって形成される様々なトポロジのうち、全て拠点間を相互に接続するフルメッシュ型のトポロジは遅延を最小化できるという意味で理想的であるが、各拠点に設けられるルータには処理能力の制限があり、ルータが同時に接続できるVPNの数には限界がある。 In a corporate network, when a LAN (Local Area Network) scattered in a plurality of bases is connected to the network, it is often connected via a VPN (Virtual Private Network) due to security. Of the various topologies formed by VPN, full-mesh topology that connects all bases to each other is ideal in terms of minimizing delay, but the routers installed at each base have processing power. There is a limit and there is a limit to the number of VPNs that a router can connect to simultaneously.
そのため、フルメッシュ型のトポロジをとることが難しく、例えば、本社を中心として各支社を接続するスター型のトポロジを採用したり、VoIP(Voice over Internet Protocol)のようなリアルタイム性の強いアプリケーションを利用するために、支社間をVPNで接続したりするケースもある。また、社内教育のような用途で用いる場合には、マルチキャストのストリーミングを行うこともあり、各拠点を階層的に接続するようなツリー型のトポロジを採用することもある。 For this reason, it is difficult to adopt a full-mesh topology. For example, a star-type topology that connects branch offices around the headquarters is used, or a real-time application such as VoIP (Voice over Internet Protocol) is used. In some cases, branch offices are connected by VPN. In addition, when used for purposes such as in-house education, multicast streaming may be performed, and a tree-type topology may be employed in which each base is connected hierarchically.
このように、VPNによって形成される最適なトポロジは、使用するアプリケーションによって決まるものであるから、アプリケーションに応じてVPNのトポロジを動的に変化させることが望ましい。このため、VPNを自動設定する技術が、例えば非特許文献1などに開示されている。
非特許文献1に開示された技術においては、予め設定されたトポロジに従って、自動設定するものである。そのため、事前にデータフローを予測してトポロジを設計しておく必要があるが、データフローの予測は難しく、最適なトポロジを設計することは難しかった。また、アプリケーションの変化に伴って、データフローが大きく変わるネットワークにおいては、固定的なトポロジでは帯域や遅延などの点でパフォーマンスが抑制されることがあった。
In the technique disclosed in Non-Patent
本発明は、上述の事情に鑑みてなされたものであり、各拠点間のデータフローの状況に応じて、各拠点間を接続するVPNにより形成されるトポロジを自動的に変更することができるVPNトポロジ制御装置、VPNトポロジ制御システム、VPNトポロジ制御方法およびプログラムを提供することを目的とする。 The present invention has been made in view of the above-described circumstances, and a VPN that can automatically change the topology formed by a VPN connecting between bases in accordance with the state of data flow between the bases. An object is to provide a topology control device, a VPN topology control system, a VPN topology control method, and a program.
上述の課題を解決するため、本発明は、複数のルータ間におけるデータフローのパスを構成するVPNにより形成されるトポロジを制御するVPNトポロジ制御装置であって、前記トポロジを形成するVPNを示すVPNデータベースを記憶する記憶手段と、前記トポロジを形成するVPNにおけるデータフローの通信状況を監視する監視手段と、前記複数のルータのうちデータフローの送信元および受信先を示すルータと、当該データフローの送信を開始するまでの待機可能時間とを示す生成要求情報を受信する受信手段と、前記監視手段が監視する通信状況に基づいて、前記受信手段が受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する決定手段と、前記VPNデータベースが示すVPNと、前記決定手段が決定した切断予約VPNとに基づき、前記受信手段が受信した生成要求情報が示す2つのルータ間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する算出手段と、前記算出手段によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行う設定手段とを具備することを特徴とするVPNトポロジ制御装置を提供する。 In order to solve the above-mentioned problem, the present invention is a VPN topology control apparatus for controlling a topology formed by VPNs constituting a data flow path between a plurality of routers, wherein the VPN indicates a VPN forming the topology. A storage unit that stores a database; a monitoring unit that monitors a communication state of a data flow in the VPN that forms the topology; a router that indicates a transmission source and a reception destination of a data flow among the plurality of routers; Based on the communication status monitored by the monitoring means, the receiving means for receiving the generation request information indicating the waiting time until transmission is started, and within the waiting time indicated by the generation request information received by the receiving means Determining means for determining a VPN whose data flow is terminated as a disconnection reservation VPN, and the VPN database A path using the VPN between the two routers indicated by the generation request information received by the reception unit and a topology capable of forming the path based on the VPN indicated and the disconnection reservation VPN determined by the determination unit. A VPN topology comprising: calculation means for calculating using a predetermined algorithm; and setting means for setting VPN for the plurality of routers so as to form the topology calculated by the calculation means. A control device is provided.
また、別の好ましい態様において、前記監視手段が監視する通信状況から、データフローが終了したVPNを切断する切断手段をさらに具備してもよい。 Moreover, in another preferable aspect, it may further comprise a disconnecting means for disconnecting the VPN for which the data flow has been completed from the communication status monitored by the monitoring means.
また、別の好ましい態様において、前記設定手段は、前記切断予約VPNのうち、前記算出手段によって算出したトポロジに含まれないVPNが前記切断手段によって切断された以後に、前記算出手段によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行ってもよい。 In another preferable aspect, the setting unit may calculate the topology calculated by the calculation unit after a VPN that is not included in the topology calculated by the calculation unit is disconnected by the disconnection unit. VPN may be set for the plurality of routers so as to form a network.
また、別の好ましい態様において、前記設定手段は、前記切断予約VPNが前記切断手段によって全て切断された以後に、前記算出手段によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行ってもよい。 In another preferred embodiment, the setting unit may apply a VPN to the plurality of routers so as to form the topology calculated by the calculation unit after all the disconnection reservation VPNs are disconnected by the disconnection unit. May be set.
また、別の好ましい態様において、前記受信手段が受信する生成要求情報は、データフローのデータ総量を示す情報を含み、前記決定手段は、前記監視手段が監視する通信状況と、前記受信手段が受信した生成要求情報が示すデータ総量とに基づいて、前記受信手段が受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定してもよい。 In another preferred embodiment, the generation request information received by the receiving unit includes information indicating a total amount of data in a data flow, and the determining unit receives a communication status monitored by the monitoring unit and the receiving unit receives Based on the total amount of data indicated by the generation request information, the VPN at which the data flow ends may be determined as the disconnection reserved VPN within the waiting time indicated by the generation request information received by the receiving means.
また、別の好ましい態様において、前記決定手段は、前記算出手段が算出したパス上の各ルータに接続されたVPNのうち、前記監視手段が監視する通信状況に基づいて、前記受信手段が受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定してもよい。 In another preferred embodiment, the determination unit receives the reception unit based on a communication status monitored by the monitoring unit among VPNs connected to each router on the path calculated by the calculation unit. The VPN at which the data flow ends may be determined as the disconnection reservation VPN within the waiting time indicated by the generation request information.
また、別の好ましい態様において、前記設定手段による設定が終了した後に、前記生成要求情報の送信元に対して、前記2つのルータ間にデータフローのパスが生成されたことを示す生成応答情報を送信する送信手段をさらに具備してもよい。 In another preferable aspect, after the setting by the setting unit is completed, generation response information indicating that a data flow path has been generated between the two routers is sent to the transmission source of the generation request information. You may further provide the transmission means to transmit.
また、本発明は、各々の間でVPNを形成できる複数のルータと、前記ルータに接続される通信端末と、上記に記載のVPNトポロジ制御装置とを具備し、前記受信手段が受信する生成要求情報は、前記通信端末から送信され、当該生成要求情報が示す送信元のルータは、当該通信端末が接続されたルータを示し、当該通信端末は、前記送信手段から送信される生成応答情報を受信した後に、データフローを送信し、前記複数のルータは、当該通信端末が送信したデータフローが、当該生成要求情報が示す受信先のルータに接続された通信端末によって受信されるまでの経路のうち、当該送信元のルータと当該受信先のルータとの間の経路が、前記算出手段が算出したパスになるように制御することを特徴とするVPNトポロジ制御システムを提供する。 Further, the present invention comprises a plurality of routers capable of forming a VPN between them, a communication terminal connected to the router, and the VPN topology control device described above, and a generation request received by the receiving means The information is transmitted from the communication terminal, the transmission source router indicated by the generation request information indicates the router to which the communication terminal is connected, and the communication terminal receives the generation response information transmitted from the transmission unit. After the data flow is transmitted, the plurality of routers, among the routes until the data flow transmitted by the communication terminal is received by the communication terminal connected to the destination router indicated by the generation request information And a VPN topology control system for controlling the route between the source router and the destination router to be the path calculated by the calculating means To provide.
また、本発明は、複数のルータ間におけるデータフローのパスを構成するVPNにより形成されるトポロジを制御するVPNトポロジ制御方法であって、前記トポロジを形成するVPNを示すVPNデータベースを記憶する記憶過程と、前記トポロジを形成するVPNにおけるデータフローの通信状況を監視する監視過程と、前記複数のルータのうちデータフローの送信元および受信先を示すルータと、当該データフローの送信を開始するまでの待機可能時間とを示す生成要求情報を受信する受信過程と、前記監視過程において監視する通信状況に基づいて、前記受信過程において受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する決定過程と、前記VPNデータベースが示すVPNと、前記決定過程において決定した切断予約VPNとに基づき、前記受信過程において受信した生成要求情報が示す2つのルータ間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する算出過程と、前記算出過程によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行う設定過程とを備えることを特徴とするVPNトポロジ制御方法を提供する。 The present invention also relates to a VPN topology control method for controlling a topology formed by VPNs constituting a data flow path between a plurality of routers, and storing a VPN database indicating VPNs forming the topology A monitoring process for monitoring a communication state of a data flow in the VPN forming the topology, a router indicating a transmission source and a reception destination of the data flow among the plurality of routers, and transmission of the data flow are started. Based on the reception process for receiving the generation request information indicating the waiting time and the communication status monitored in the monitoring process, the data flow ends within the waiting time indicated by the generation request information received in the reception process. A determination process for determining a VPN as a disconnection reservation VPN, and a VPN indicated by the VPN database A path using VPN between the two routers indicated by the generation request information received in the reception process and a topology capable of forming the path based on N and the disconnection reservation VPN determined in the determination process. A VPN topology control method comprising: a calculation process calculated using an algorithm of the above; and a setting process for setting a VPN for the plurality of routers so as to form a topology calculated by the calculation process I will provide a.
また、本発明は、複数のルータ間におけるデータフローのパスを構成するVPNにより形成されるトポロジを制御するコンピュータに、前記トポロジを形成するVPNを示すVPNデータベースを記憶する記憶機能と、前記トポロジを形成するVPNにおけるデータフローの通信状況を監視する監視機能と、前記複数のルータのうちデータフローの送信元および受信先を示すルータと、当該データフローの送信を開始するまでの待機可能時間とを示す生成要求情報を受信する受信機能と、前記監視機能において監視する通信状況に基づいて、前記受信機能において受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する決定機能と、前記VPNデータベースが示すVPNと、前記決定機能において決定した切断予約VPNとに基づき、前記受信機能において受信した生成要求情報が示す2つのルータ間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する算出機能と、前記算出機能によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行う設定機能とを実現させるためのプログラムを提供する。 The present invention also provides a storage function for storing a VPN database indicating a VPN forming the topology in a computer that controls the topology formed by the VPN constituting a data flow path between a plurality of routers, and the topology. A monitoring function for monitoring a communication state of a data flow in the VPN to be formed, a router indicating a transmission source and a reception destination of the data flow among the plurality of routers, and a waiting time until the transmission of the data flow is started Based on the reception function that receives the generation request information that is indicated, and the communication status that is monitored by the monitoring function, the VPN that terminates the data flow is disconnected and reserved within the waiting time indicated by the generation request information received by the reception function. A decision function to decide as, a VPN indicated by the VPN database, and the decision The path using the VPN between the two routers indicated by the generation request information received in the reception function and the topology capable of forming the path based on the disconnection reservation VPN determined in the function using a predetermined algorithm Provided is a program for realizing a calculation function to calculate and a setting function to set a VPN for the plurality of routers so as to form a topology calculated by the calculation function.
本発明によれば、各拠点間のデータフローの状況に応じて、各拠点間を接続するVPNにより形成されるトポロジを自動的に変更することができるVPNトポロジ制御装置、VPNトポロジ制御システム、VPNトポロジ制御方法およびプログラムを提供することができる。 According to the present invention, a VPN topology control device, a VPN topology control system, and a VPN that can automatically change the topology formed by the VPN connecting the bases according to the data flow status between the bases. A topology control method and program can be provided.
以下、本発明の一実施形態について説明する。 Hereinafter, an embodiment of the present invention will be described.
<実施形態>
本発明の実施形態に係るVPNトポロジ制御装置1は、図1に示すようにネットワーク100を介して、各拠点のルータ2−R1、2−R2、・・・、2−R6(以下、特に各拠点のルータを区別しない場合には、ルータ2という)と各情報の送受信を行う。各ルータ2−R1、2−R2、・・・、2−R6は、それぞれ複数の通信端末3と接続することにより、各拠点においてLANを構成している。そして、各ルータは、VPNトポロジ制御装置1の制御に基づいて、他のルータとVPNによる接続を行うことができ、本実施形態においては、1台のルータは、最大3台のルータとVPNによる接続を行うことができる。以下、VPNトポロジ制御装置1の構成について、次にルータ2の構成について説明する。
<Embodiment>
As shown in FIG. 1, the VPN
VPNトポロジ制御装置1の構成について、図2を用いて説明する。VPNトポロジ制御装置1は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などを有する制御部と、ネットワーク100を介して、各拠点のルータ2と各情報の送受信を行う通信部11とを具備している。そして、CPUは、ROMに記憶されているプログラムを読み出して、RAMにロードして実行することにより、VPNトポロジ制御装置1の機能を実現する。
The configuration of the VPN
VPNトポロジ制御装置1のCPUがプログラムを実行することにより実現する機能について、以下、詳細に説明する
The function realized by the CPU of the VPN
VPNデータベース12は、各ルータ2の間を接続しているVPNにより形成されるトポロジを示す情報を有し、具体的には、図3(a)に示すように、各ルータ2の間を接続しているVPNと、当該VPNを通過するデータフローとを示すとともに、各VPNについて切断予約フラグが立っているか否かを示すデータベースである。例えば、VPN識別番号「1」は、ルータ2−R1とルータ2−R2を接続するVPNを示し、このVPNには、4つのデータフロー(フロー番号:1、2、10、11)が通過している。フロー番号は、後述するフローデータベース13のフロー番号に対応し、各々のデータフローを特定している。また、VPN識別番号「2」には切断予約フラグが立っているが、切断予約フラグは、新たにデータフローが発生した場合においても、このVPNを通過させることを禁止し、既に通過中のデータフローが終了した後にVPNを切断して消滅させる予定であることを示すフラグである。
The
フローデータベース13は、全てのVPNを通過するデータフローを示す情報を有し、具体的には、図3(b)に示すように、VPNデータベース12で用いられるフロー番号に対応して、データフローのフロー識別子、データフローの総データ量、待機可能時間を示すデータベースである。フロー識別子は、始点IPアドレス、終点IPアドレス、プロトコル、始点ポート番号、終点ポート番号を示す。待機可能時間は、データフローの送信の要求を行ってからデータフローの送信を開始するまでに待機可能な時間を示している。例えば、フロー番号「1」は、フロー識別子が始点IPアドレス192.168.0.2、終点IPアドレス192.168.1.2、プロトコルTCP、始点ポート番号5020、終点ポート番号21、総データ量が2856496バイト、待機可能時間が20秒であることを示している。
The
VPNトポロジ算出部14は、新たなデータフローの送信のためにVPNの生成を要求する通信端末3からルータ2を介して送信され、通信部11が受信した生成要求情報が入力される。生成要求情報は、フローデータベース13が有する情報と同様に、データフローのフロー識別子、データフローの総データ量、待機可能時間を示している。フロー識別子により、データフロー送信元の通信端末3(以下、送信端末3−Aという)が接続された送信元のルータ2と、データフロー受信先の通信端末3(以下、受信端末3−Bという)が接続された受信先のルータ2とが特定される。また、VPNトポロジ算出部14は、各ルータ2から送信され、通信部11が受信したフロー情報が入力される。フロー情報については、後述する。
The VPN
VPNトポロジ算出部14は、生成要求情報が入力されると、当該生成要求情報と、VPNデータベース12の内容と、フローデータベース13の内容と、入力されたフロー情報とに基づき、送信元のルータと受信先のルータとの間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する。所定のアルゴリズムについては、データフローが終了しているVPNを切断して消滅させ、所定時間内にデータフローが終了する予定のVPNを切断して消滅させる予定として記憶し、これらのVPNが存在しないとした前提としたトポロジに基づいて、最適なパスを形成できるトポロジを算出するものであるが、その詳細については一例を後述する。
When the generation request information is input, the VPN
ルータ設定部15は、通信部11を介して、各ルータ2の各々に対して、VPNトポロジ算出部14において算出された結果(トポロジ、パス)に基づいて生成した設定要求情報を送信する。各ルータ2の各々に送信される設定要求情報は、設定要求情報が送信されたルータ2と他のルータ2との間にVPNの接続を指示する情報を有する。後述するように、各ルータ2は、設定要求情報に基づいて他のルータ2との間にVPNの接続を行うことにより、VPNトポロジ算出部14において算出されたトポロジになるように、VPNが形成される。
The
また、設定要求情報は、当該設定要求情報を受信するルータ2を通過するデータフローを示す情報(フロー識別子、総データ量)を有すると共に、設定要求情報が送信されたルータ2がデータフローの受信先のルータではない場合には、当該データフローを転送する他のVPNの接続先となるルータ2を示す情報を有する。これにより、各ルータ2は、データフローのパスを認識することができ、各ルータ2が設定要求情報に従ってデータフローを転送すると、VPNトポロジ算出部14において算出されたパスになるように、データフローが通過していくことになる。
The setting request information includes information (flow identifier, total data amount) indicating a data flow passing through the
データベース更新部16は、各ルータ2から送信され、通信部11が受信した設定応答情報が入力され、当該設定応答情報に基づいて、VPNデータベース12およびフローデータベース13の内容を更新する。設定応答情報については後述するが、各ルータ2おいて、設定要求情報に基づいてVPNの接続が問題なく行われた場合には、VPNトポロジ算出部14において算出したトポロジを示すようにVPNデータベース12が更新され、新たなデータフローが加わるようにフローデータベース13が更新されるようになっている。
The
VPN生成応答部17は、通信部11が受信した設定応答情報が入力され、各ルータ2において、設定要求情報に基づく設定が問題なく行われたか否かを示す生成応答情報を、通信部11を介して送信端末3−Aに対して送信する。なお、VPN生成応答部17は、VPNトポロジ算出部14において算出したトポロジおよびパスと、VPNデータベース12およびフローデータベース13とが示すトポロジおよびパスとを比較し、それぞれが一致した場合には、生成応答情報を送信するようにしてもよい。
The VPN
次に、各ルータ2の構成について、図4を用いて説明する。ルータ2は、CPU、ROM、RAMなどを有する制御部と、ネットワーク100を介して、他のルータおよびVPNトポロジ制御装置1と各情報の送受信を行うルータ通信部21とを具備している。そして、CPUは、ROMに記憶されているプログラムを読み出して、RAMにロードして実行することにより、ルータ2の機能を実現する。
Next, the configuration of each
ルータ2のCPUがプログラムを実行することにより実現する機能について、以下、詳細に説明する。
The functions realized by the CPU of the
タイマ22は、時刻の進行を測定する計時手段であって、所定の時刻を基準として経過した時間を算出することができる機能を有する。
The
通過データ検出部23は、ルータ通信部21において送受信するデータのデータ量(以下、通過データ量という)をデータフローごとに検出し、データフローと通過データ量を対応付けた情報をフローキャッシュ24に出力する。
The passage
フローキャッシュ24は、ルータ通信部21において送受信するデータフローを示すキャッシュであって、図3(c)に示すように、フローデータベース13の説明で述べたようなフロー識別子、総データ量、通過データ検出部23から入力された情報が示す通過データ量、データフローの送信が開始されてからの経過時間、データフローの送信が終了するまでに必要な時間(以下、終了予定時間という)を示すキャッシュである。経過時間は、通過データ量が増加し始めた時刻を基準として経過した時間をタイマ22によって計時したものである。終了予定時間は、総データ量、通過データ量および経過時間に基づいて算出される。このように、フローキャッシュ24が示す通過データ量、経過時間、終了予定時間については、随時更新されていく情報である。ここで、フロー識別番号は、ルータ2を通過するデータフローを区別するために設けられた番号であり、各ルータ2でそれぞれ独自に設けられるものである。なお、このフロー識別番号は、VPNトポロジ制御装置1で用いられるフロー番号と対応させた番号として設けるようにしてもよい。この場合は、VPNトポロジ制御装置1のルータ設定部がルータ2に送信する設定要求情報に含まれるデータフローを示す情報について、フロー識別子、総データ量のほか、フローデータベース13に登録されたフロー番号も示すようにすればよい。
The
VPN設定部25は、VPNトポロジ制御装置1から送信され、ルータ通信部21が受信した設定要求情報が入力され、ルータ通信部21に対して、当該設定要求情報が示す他のルータ2と接続することによりVPNを形成させるとともに、データフローごとに受信したデータフローの転送先となるルータ2または受信端末3−Bを設定する。これは、例えば、ルーティングテーブルなどを更新することによって行われる。また、VPN設定部25は、当該設定要求情報におけるデータフローを示す情報をフローキャッシュに登録する。そして、VPN設定部25は、上述した設定、登録が完了すると、ルータ通信部21を介して、当該設定、登録の内容を示す設定応答情報をVPNトポロジ制御装置1に対して送信する。
The
フロー情報生成部26は、フローキャッシュ24の終了予定時間を読み出し、各データフローの終了予定時間を示すフロー情報を生成して、ルータ通信部21を介して、当該フロー情報をVPNトポロジ制御装置1に対して送信する。フロー情報の送信は、定期的に行なってもよいし、VPNトポロジ制御装置1からの要求に応じて送信してもよい。VPNトポロジ制御装置1からの要求は、例えば、VPNトポロジ算出部14が所定のアルゴリズムを用いた算出を行う際に行われるようにすればよい。以上がVPNトポロジ制御装置1およびルータ2の構成について説明である。
The flow
次に、VPNトポロジ制御装置1、各ルータ2、送信端末3−Aおよび受信端末3−Bにおける各情報の送受信の流れについて、図5を用いて説明する。
Next, the flow of transmission / reception of each information in the VPN
まず、送信端末3−Aは、受信端末3−Bに対してデータフローの送信を行う要求が発生した場合には、VPNトポロジ制御装置1に対して、生成要求情報を送信する。
First, the transmission terminal 3-A transmits generation request information to the VPN
VPNトポロジ制御装置1は、生成要求情報を受けて、所定のアルゴリズムを用いて算出したトポロジを形成するように、各ルータ2に対して設定要求情報を送信する。各ルータ2は、設定要求情報に基づいて、VPNの接続設定、データフローの登録を行い、当該設定、登録の状況を示す設定応答情報をVPNトポロジ制御装置1に送信する。
The VPN
その後、VPNトポロジ制御装置1は、全てのルータから受信した設定応答情報が、VPNの接続設定、データフローの登録が成功したことを示しているか否かを示す生成応答情報を、送信端末3−Aに対して送信する。送信端末3−Aは、生成応答情報が成功したことを示している場合には、受信端末3−Bまでのパスが形成されたと判断し、データフローの送信を開始する。データフローは、VPNによるパス上の各ルータ2を経由し、送信端末3−Aから受信端末3−Bへ送信される。
After that, the VPN
次に、VPNトポロジ制御装置1のVPNトポロジ算出部14における所定のアルゴリズムの一例について、図6、7、8のフローチャートを用いて説明する。
Next, an example of a predetermined algorithm in the VPN
VPNトポロジ算出部14は、生成要求情報が入力されると、送信端末3−Aを有するルータ2すなわち送信元のルータ2をルータSとし、受信端末3−Bを有するルータ2すなわち受信先のルータ2をルータDとして定義する。また、アルゴリズムにおける基準となるルータ2をルータPとして定義し、最初の基準としてP=Sとする(図6ステップS100)。このルータPが示すルータSは、以下に説明する処理を続けることにより、他のルータ2に変更されていく場合があり、その場合には、ルータPが示したルータ2を順にたどった経路および最後にルータPが示すルータ2からルータDに到る経路が、ルータSからルータDへのデータフローのパスとなる。ここで、ルータPが示すルータ2が他のルータ2に変更されるときには、過去に示したルータ2を再度示すことはなく、すなわち、データフローのパスにおいて2度同じルータ2を通ることがない。このような前提として、VPNトポロジ算出部14が、生成要求情報、VPNデータベース12、フローデータベース13、フロー情報を参照して行う処理について説明を行う。
When the generation request information is input, the VPN
VPNトポロジ算出部14は、VPNデータベース12を参照し、ルータPからルータDまでのパスが存在するかを判断する(図6ステップS101)。当該パスが存在しないと判断した場合(図6ステップS101;No)には、後述する図6ステップS111〜ステップS114の処理を行って、ルータPからルータDへ直接VPNによる接続が可能かを判断する。
The VPN
一方、当該パスが存在すると判断した場合(図6ステップS101;Yes)には、ルータPからルータDまでのパスのうち切断予約フラグが立っていないVPNだけで構成されるパスが存在するかを判断する(図6ステップS102)。当該パスが存在すると判断した場合(図6ステップS102;Yes)は、後述する図7ステップS201に進む。この場合には、そのパスをそのままルータPからのルータDまでのパスとして利用することになる。 On the other hand, if it is determined that the path exists (step S101 in FIG. 6; Yes), it is determined whether there is a path composed only of VPNs for which the disconnection reservation flag is not set among the paths from the router P to the router D. Judgment is made (step S102 in FIG. 6). When it is determined that the path exists (step S102 in FIG. 6; Yes), the process proceeds to step S201 in FIG. In this case, the path is used as it is as a path from the router P to the router D.
一方、図6ステップS102における判断において、切断予約フラグが立っていないVPNだけで構成されるパスが存在しないと判断した場合(図6ステップS102;No)、には、現在用いられるVPNを利用する前提として、後述する図8ステップS301へ進む。 On the other hand, if it is determined in step S102 in FIG. 6 that there is no path composed only of VPNs for which the disconnection reservation flag is not set (step S102 in FIG. 6; No), the currently used VPN is used. As a premise, the process proceeds to step S301 in FIG.
図6ステップS101において、パスが存在しないと判断した場合(図6ステップS101;No)には、VPNトポロジ算出部14は、ルータPに接続されているVPNが存在する場合、そのVPNのうち、生成要求情報が示す新たなデータフローの待機可能時間内に、全てのデータフローが終了するVPNがあるかをフロー情報が示す各データフローの終了予定時間から判断する(図6ステップS111)。全てのデータフローが終了するVPNがあると判断した場合(図6ステップS111;Yes)は、当該VPNを記憶し、切断予約フラグを立てる(図6ステップS112)。
When it is determined in step S101 in FIG. 6 that there is no path (step S101 in FIG. 6; No), the VPN
一方、全てのデータフローが終了するVPNがないと判断した場合、またはルータPに接続されているVPNが存在しないことにより、全てのデータフローが終了するVPNがないと判断した場合(図6ステップS111;No)は、ルータPが接続しているVPNの数が、接続可能なVPN上限数(本実施形態においては3)に達しているかを判断(図6ステップS113)し、達していると判断した場合(図6ステップS113;Yes)には、ルータPとルータDとを直接VPNによる接続ができないものとして、後述する図8ステップS301へ進む。 On the other hand, when it is determined that there is no VPN that ends all data flows, or when it is determined that there is no VPN that ends all data flows because there is no VPN connected to the router P (step in FIG. 6). S111; No) determines whether the number of VPNs connected to the router P has reached the upper limit number of connectable VPNs (3 in this embodiment) (step S113 in FIG. 6). If it is determined (step S113 in FIG. 6; Yes), it is determined that the router P and the router D cannot be directly connected by VPN, and the process proceeds to step S301 in FIG.
図6ステップS112の処理後、または図6ステップS113において、VPN上限数に達していないと判断した場合(図6ステップS113;No)には、ルータDが接続しているVPNの数が、接続可能なVPNの上限数(本実施形態においては3)に達しているかを判断(図6ステップS114)し、達していると判断した場合(図6ステップS114;Yes)には、ルータPとルータDとを直接VPNによる接続ができないものとして、後述する図8ステップS301へ進む。 When it is determined that the VPN upper limit number has not been reached after the processing in step S112 in FIG. 6 or in step S113 in FIG. 6 (step S113 in FIG. 6; No), the number of VPNs to which the router D is connected is It is determined whether the maximum number of possible VPNs (3 in the present embodiment) has been reached (step S114 in FIG. 6), and if it is determined that it has reached (step S114 in FIG. 6; Yes), the router P and the router It is assumed that D cannot be directly connected to VPN by going to step S301 in FIG.
図6ステップS114において、VPN上限数に達していないと判断した場合(図6ステップS114;No)には、ルータPとルータDとを直接VPNによる接続できる、または図6ステップS112で記憶したVPNを切断すれば、ルータPとルータDとを直接VPNによる接続できるものとして、ルータPとルータDとを接続するVPNの生成を予約(図6ステップS115)して、図7ステップS201へ進む。 When it is determined in step S114 in FIG. 6 that the upper limit number of VPNs has not been reached (step S114 in FIG. 6; No), router P and router D can be directly connected by VPN, or the VPN stored in step S112 in FIG. Is disconnected, it is assumed that the router P and the router D can be directly connected by VPN, and the generation of the VPN for connecting the router P and the router D is reserved (step S115 in FIG. 6), and the process proceeds to step S201 in FIG.
図7の説明に進む。VPNトポロジ算出部14は、図6ステップS115、または後述する図8ステップS308、図8ステップS309において生成を予約したVPNが存在するかを判断する(図7ステップS201)。生成を予約したVPNが存在する場合(図7ステップS201;Yes)には、VPNトポロジ算出部14は、図6ステップS112、および後述する図8ステップS305において記憶したVPNを切断して消滅したものとするとともに、図6ステップS115、または後述する図8ステップS308、図8ステップS309において生成を予約したVPNを形成したものとするトポロジを新たなトポロジとして算出するとともに、ルータPの移動経路および最後のルータPからルータDに到る経路を、新たなデータフローのパスとして算出する(図7ステップS202)。そして、図6ステップS112、および後述する図8ステップS304において記憶した全てのVPNにおけるデータフローが終了するまで待機(図7ステップS203)し、VPNトポロジ算出部14は、ルータ設定部15を制御して、算出結果に基づく設定要求情報を送信させる(図7ステップS205)。
Proceed to the description of FIG. The VPN
一方、生成を予約したVPNが存在しない場合(図7ステップS201;No)には、新たにVPNが生成されることがないから、トポロジは変更されない。したがって、VPNトポロジ算出部14は、新たなトポロジを算出することなく、ルータPの移動経路および最後のルータPからルータDに到る経路を新たなデータフローのパスとして算出する(図7ステップS204)。そして、VPNトポロジ算出部14は、ルータ設定部15を制御して、算出結果に基づく設定要求情報を送信させる(図7ステップS205)。これにより設定要求情報を受信したルータ2は、設定要求情報に基づいてデータフローの登録を行うとともに、ルーティングテーブルなどを更新して、受信するデータフローの転送先を設定する。ここで、図7ステップS204の処理を経て、図7ステップS205における設定要求情報の送信を行った場合には、トポロジが変更されることがなく、パスの算出のみが行われるから、新たなVPNが形成されることはない。
On the other hand, when there is no VPN reserved for generation (step S201 in FIG. 7; No), no new VPN is generated, and the topology is not changed. Therefore, the VPN
次に、図8の説明に進む。図6ステップS102における判断において、切断予約フラグが立っていないVPNだけで構成されるパスが存在しないと判断した場合(図6ステップS102;No)、図6ステップS113における判断において、ルータPが接続しているVPNの数が、接続可能なVPN上限数に達していると判断した場合(図6ステップS113;Yes)、図6ステップS114における判断において、ルータDが接続しているVPNの数が、接続可能なVPN上限数に達していると判断した場合(図6ステップS114;Yes)には、VPNトポロジ算出部14は、ルータPに接続されているVPNのうち、切断予約フラグが立っていないVPNが存在するかを判断する(図8ステップS301)。
Next, the description proceeds to FIG. When it is determined in step S102 in FIG. 6 that there is no path composed only of VPNs for which the disconnection reservation flag is not set (step S102 in FIG. 6; No), the router P is connected in the determination in step S113 in FIG. If it is determined that the number of connected VPNs has reached the upper limit number of connectable VPNs (step S113 in FIG. 6; Yes), the number of VPNs to which the router D is connected is determined in step S114 in FIG. When it is determined that the upper limit number of connectable VPNs has been reached (step S114 in FIG. 6; Yes), the VPN
VPNトポロジ算出部14は、切断予約フラグが立っていないVPNが存在すると判断した場合(図8ステップS301;Yes)には、切断予約フラグが立っていないVPNのうち、評価値の高いVPNを選択する(図8ステップS302)。ここで、VPNの評価値は、本実施形態においては、通過しているデータフローの終了予定時間が長いほど、通過データ量の増加速度が速く通信速度が速いほど、通過しているデータフローの数が多いほど高くなるように定められている。なお、評価値は、このような基準でなくてもよく、1つのVPNを選択することができれば、どのような基準で計算してもよい。このようにして選択されたVPNによってルータPと接続されるルータ2を、ルータPとして変更(図8ステップS303)し、図6ステップS101に戻って処理を続ける。
If the VPN
一方、VPNトポロジ算出部14は、切断予約フラグが立っていないVPNが存在しないと判断した場合(図8ステップS301;No)には、ルータPに接続されているVPNのうち、生成要求情報が示す新たなデータフローの待機可能時間内に、全てのデータフローが終了するVPNがあるかをフロー情報が示す各データフローの終了予定時間から判断する(図8ステップS304)。全てのデータフローが終了するVPNがあると判断した場合(図8ステップS304;Yes)は、当該VPNを記憶する(図8ステップS305)。
On the other hand, when the VPN
一方、全てのデータフローが終了するVPNがないと判断した場合(図8ステップS304;No)は、ルータPが接続しているVPNの数が、接続可能なVPN上限数に達しているかを判断(図8ステップS306)し、達していると判断した場合(図8ステップS306;Yes)には、ルータPとルータDをVPNによる接続ができないことを示しているから再帰探索を行う。再帰探索は、ルータPを直前に示していたルータ2に一旦戻し、図8ステップS302においてVPNを選択する際に、評価値が次に高いVPNを選択するようにして行われる。
On the other hand, if it is determined that there is no VPN that terminates all data flows (step S304 in FIG. 8; No), it is determined whether the number of VPNs connected to the router P has reached the maximum number of VPNs that can be connected. (Step S306 in FIG. 8) and if it is determined that it has been reached (Step S306 in FIG. 8; Yes), recursive search is performed because it indicates that the router P and the router D cannot be connected by VPN. The recursive search is performed by returning the router P to the
図8ステップS305の処理後、または図8ステップS306において、VPN上限数に達していないと判断した場合(図8ステップS306;No)には、ルータDが接続しているVPNの数が、接続可能なVPN上限数に達しているかを判断する(図8ステップS307)。達していないと判断した場合(図8ステップS307;No)には、ルータPとルータDとを直接VPNによる接続できる、または図8ステップS305で記憶したVPNを切断すれば、ルータPとルータDとを直接VPNによる接続できるものとして、ルータPとルータDとを接続するVPNの生成を予約(図8ステップS308)し、図7ステップS201に進む。 When it is determined that the VPN upper limit number has not been reached after the processing in step S305 in FIG. 8 or in step S306 in FIG. 8 (step S306 in FIG. 8; No), the number of VPNs to which the router D is connected is It is determined whether the maximum number of possible VPNs has been reached (step S307 in FIG. 8). If it is determined that it has not been reached (step S307 in FIG. 8; No), the router P and the router D can be directly connected by VPN, or if the VPN stored in step S305 in FIG. Can be directly connected by VPN, reservation is made for the creation of a VPN connecting router P and router D (step S308 in FIG. 8), and the process proceeds to step S201 in FIG.
一方、図8ステップS307において、VPN上限数に達していると判断した場合(図8ステップS307;Yes)には、ルータPとルータDとを直接VPNによる接続ができないものとして、評価値の高い別のルータ2を選択して、そのルータ2とルータPとを接続するVPNの生成を予約する(図8ステップS309)。ここで、ルータ2の評価値は、本実施形態においては、ルータ2が、ルータDと切断予約フラグが立っていないVPNにより接続され、VPN上限数に達していない場合に高くなり、さらに、ルータDと接続しているVPNを通過するデータフローの終了予定時間が長いほど、通信速度が速いほど高くなるように定められている。なお、評価値は、このような基準でなくてもよく、1つのルータ2を選択することができれば、どのような基準で計算してもよい。このようにして選択されたルータ2を、ルータPとして変更(図8ステップS310)し、図6ステップS101に戻って処理を続ける。以上が、VPNトポロジ算出部14における所定のアルゴリズムの一例の説明である。
On the other hand, if it is determined in step S307 in FIG. 8 that the upper limit number of VPNs has been reached (step S307 in FIG. 8; Yes), the router P and the router D cannot be directly connected by VPN, and the evaluation value is high. A
次に、上述したVPNトポロジ算出部14における所定のアルゴリズムにおける具体例について、図9、図10を用いて説明する。図9、図10における1〜6は、各ルータ2−R1、2−R2、・・・、2−R6を示している。ルータSは、ルータ2−R1であり、ルータDは、ルータ2−R4である。また、図9(a)、図10(a)は、VPNトポロジ算出部14における算出前の状態を示し、図中の直線はVPNを示し、直線の横の時間は終了予定時間を示している。Fは、切断予約フラグが立っていることを示している。
Next, a specific example of a predetermined algorithm in the above-described VPN
図9(a)において、ルータ2−R1は、ルータ2−R2、2−R5、2−R6との間、ルータ2−R3は、ルータ2−R4と間にVPNが形成されている。そして、VPNトポロジ制御装置1は、新たなデータフロー(待機可能時間20秒)をルータ2−R1からルータ2−R4に発生させる生成要求情報を受信すると、VPNトポロジ算出部14は、所定のアルゴリズムでのトポロジ、パスの算出を開始する。まず、ルータPは、ルータ2−R1として定義される。ルータ2−R1からルータ2−R4へのパスがないから、図6ステップS101の判断はNoとなる。図6ステップS111における処理は、ルータ2−R1とルータ2−R5との間のVPNが待機可能時間内にデータフローが終了することになるからYesとなる。
In FIG. 9A, a VPN is formed between the router 2-R1 and the routers 2-R2, 2-R5, and 2-R6, and the router 2-R3 and the router 2-R4. When the VPN
そして、図9(b)に示すように、ルータ2−R1とルータ2−R5との間のVPNを記憶するとともに、切断予約フラグFを立てる。(図6ステップS112)。ルータ2−R4のVPNの上限接続数「3」に達していないから、図6ステップS114;Noとなり、ルータ2−R1とルータ2−R4とを端点(図中の2点鎖線)として接続するVPNの生成を予約する(図6ステップS115)。そして、図7ステップS201;Yesとなり、図7ステップS202、図7ステップS203、図7ステップS205と処理を行って算出を終了する。 Then, as shown in FIG. 9B, the VPN between the router 2-R1 and the router 2-R5 is stored, and a disconnection reservation flag F is set. (FIG. 6, step S112). Since the upper limit number of VPN connections “3” of the router 2-R4 has not been reached, step S114 in FIG. 6 is No, and the router 2-R1 and the router 2-R4 are connected as end points (two-dot chain line in the figure). The VPN generation is reserved (step S115 in FIG. 6). Then, Step S201 of FIG. 7; Yes, and processing is performed with Step S202 of FIG. 7, Step S203 of FIG. 7, and Step S205 of FIG.
そして、ルータ2−R1とルータ2−R5のVPNを切断し、ルータ2−R1とルータ2−R4にVPNを生成する制御を行うための情報、データフローのパスが(1)ルータ2−R1、(2)ルータ2−R4となる情報を有する設定要求情報が、ルータ設定部15から出力される。
Then, the information and data flow path for controlling the generation of the VPN in the router 2-R1 and the router 2-R4 by disconnecting the VPN of the router 2-R1 and the router 2-R5 are (1) the router 2-R1. (2) The setting request information including information on the router 2-R4 is output from the
次に、図10(a)の場合について説明する。VPNトポロジ制御装置1は、新たなデータフロー(待機可能時間20秒)をルータ2−R1からルータ2−R4に発生させる生成要求情報を受信すると、VPNトポロジ算出部14は、所定のアルゴリズムでのトポロジ、パスの算出を開始する。
Next, the case of FIG. 10A will be described. When the VPN
まず、ルータPは、ルータ2−R1として定義される。ルータ2−R1からルータ2−R4へのパスがあるから、図6ステップS101の判断はYesとなる。図6ステップS102における判断は、ルータ2−R2とルータ2−R3との間のVPNに切断予約フラグが立っているから、Noとなる。図8ステップS301の判断は、ルータPであるルータ2−R1から切断予約フラグが立っていない2つのVPNが存在するからYesとなる。 First, the router P is defined as the router 2-R1. Since there is a path from the router 2-R1 to the router 2-R4, the determination in step S101 in FIG. 6 is Yes. The determination in step S102 in FIG. 6 is No because the disconnection reservation flag is set in the VPN between the router 2-R2 and the router 2-R3. The determination in step S301 in FIG. 8 is Yes because there are two VPNs for which the disconnection reservation flag is not raised from the router 2-R1, which is the router P.
そして、終了予定時間が長いルータ2−R2へ接続されているVPNを選択(図8ステップS302)し、ルータ2−R2をルータPとする(図8ステップS303)。そして再び図6ステップS101;Yes、図6ステップS102;Noと進む。そして、ルータ2−R2に接続されたVPNのうち、一度ルータPとなったルータ2−R1を除けば、ルータ2−R2とルータ2−R3との間のVPNのみであり、このVPNは切断予約フラグが立っているから、図8ステップS301の判断はNoとなる。このVPNの終了予定時間は40秒であり、待機可能時間20秒より長いから、図8ステップS304の判断はNoとなり、図8ステップS306;No、図8ステップS307;Noと判断が続き、ルータPであるルータ2−R2とルータ2−R4とを接続(図中の2点鎖線)するVPNの生成を予約する。そして、図7ステップS201;Yesとなり、図7ステップS202、図7ステップS203(記憶したVPNがないから実際には待機しない)、図7ステップS205と処理を行って終了する。 Then, the VPN connected to the router 2-R2 having a long estimated end time is selected (step S302 in FIG. 8), and the router 2-R2 is set as the router P (step S303 in FIG. 8). Then, the process proceeds again with step S101 in FIG. 6; Yes, step S102 in FIG. 6; Of the VPNs connected to the router 2-R2, except for the router 2-R1 that has once become the router P, only the VPN between the router 2-R2 and the router 2-R3, and this VPN is disconnected. Since the reservation flag is set, the determination in step S301 in FIG. The VPN end scheduled time is 40 seconds, which is longer than the standby time of 20 seconds. Therefore, the determination in step S304 in FIG. 8 is No, the determination in FIG. 8 step S306; No, FIG. 8 step S307; Reserve the generation of a VPN that connects the router 2-R2 and the router 2-R4, which are P (two-dot chain line in the figure). Then, step S201 in FIG. 7; Yes, step S202 in FIG. 7, step S203 in FIG. 7 (there is no actual waiting because there is no stored VPN), and step S205 in FIG.
そしてルータ2−R2とルータ2−R4にVPNを生成する制御を行うための情報、データフローのパスが(1)ルータ2−R1、(2)ルータ2−R2、(3)ルータ2−R4となる情報を有する設定要求情報が、ルータ設定部15から出力される。このようにすると、ルータ2−R1のルータ通信部21は、新たなデータフローをルータ2−R2に転送するように設定され、ルータ2−R2のルータ通信部21は、新たなデータフローをルータ2−R4に転送するように設定され、新たなデータフローのVPNによるパスが形成される。以上が、具体的な処理の説明である。
Information for performing VPN control for the routers 2-R2 and 2-R4 and the data flow path are (1) router 2-R1, (2) router 2-R2, and (3) router 2-R4. The setting request information having the following information is output from the
このように、VPNトポロジ制御装置1は、新たなデータフローが発生しても、VPNトポロジ算出部14において、データフローが終了したVPNを積極的に切断して消滅させることにより、各ルータ2のVPNの接続数が少ない状態としつつ、データフローのパスの算出、および当該パスを形成可能なトポロジの算出を行うことができる。これにより、ルータ2のVPNの接続上限数が少なくても、新たなデータフローのパスと、当該パスを形成可能なトポロジを容易に形成することができるから、各ルータ2間のデータフローの状況に応じて、各ルータ2間を接続するVPNにより形成されるトポロジを自動的に変更することができる。
As described above, even if a new data flow occurs, the VPN
以上、本発明の実施形態について説明したが、本発明は以下のように、さまざまな態様で実施可能である。 As mentioned above, although embodiment of this invention was described, this invention can be implemented in various aspects as follows.
<変形例1>
上述した実施形態においては、切断予約フラグが立っているVPNのうち、データフロー待機可能時間内にデータフローが終了するVPNであって、VPNトポロジ算出部14が算出したデータフローのパスとなるルータに接続されたVPNを切断するようにしていたが、このようなタイミングでの切断に限られない。例えば、データフローが終了したVPNについては、新たなデータフローの発生の有無にかかわらず、データフローが終了した後にVPNを切断するようにしてもよい。
<
In the above-described embodiment, among the VPNs for which the disconnection reservation flag is set, the VPN whose data flow ends within the data flow waiting time and that is the router of the data flow path calculated by the VPN
この場合には、例えば、ルータ設定部15にフロー情報が入力されるようにし、ルータ設定部15は、当該フロー情報と、VPNデータベース12と、フローデータベース13とを参照して、データフローが終了したVPNが存在することを認識した後に、当該VPNを切断する指示を示す設定要求情報を当該VPNにより接続されるルータ2に送信するようにすればよい。このようにすると、VPNのトポロジにおいて、VPNの数を低減することができるから、VPNトポロジ制御装置1は、新たなデータフローの発生時においても、さらに容易にトポロジの変更を行うことができる。
In this case, for example, the flow information is input to the
<変形例2>
上述した実施形態においては、特定の条件においてVPNに切断予約フラグを立てていたが、VPNトポロジ算出部14における所定のアルゴリズムの処理が開始された後に、新たなデータフローの待機可能時間内にデータフローが終了する、すなわち待機可能時間よりも終了予定時間が短いVPN全てに対して切断予約フラグを立てるようにしてもよい。なお、このような場合には、図7ステップS203における処理において、記憶されたVPNだけでなく、切断予約フラグが立っている全てのVPNを切断するようにしてもよい。
<
In the above-described embodiment, the disconnection reservation flag is set for the VPN under a specific condition. However, after the processing of the predetermined algorithm in the VPN
すなわち、切断予約フラグを立てる条件には、待機可能時間よりも終了予定時間が短いことが含まれていれば、実施形態におけるアルゴリズムのように他に要求する条件が含まれていてもよく、また、切断予約フラグを立てるタイミングはいつでもよい。このようにしても、実施形態と同様な効果を得ることができる。 That is, the condition for setting the disconnection reservation flag may include other required conditions such as the algorithm in the embodiment as long as the scheduled end time is shorter than the waiting time. The timing for setting the disconnection reservation flag may be any time. Even if it does in this way, the effect similar to embodiment can be acquired.
<変形例3>
上述した実施形態においては、生成要求情報は、送信端末3−Aから送信されていたが、送信端末3−Aが接続されている送信元のルータ2において生成、送信されるようにしてもよい。この場合には、送信元のルータ2は、通信端末3−Aのデータフローの送信要求に基づいて、データフローのフロー識別子、データフローの総データ量、待機可能時間を抽出し、生成要求情報を生成する手段を有するようにすればよい。このようにしても、実施形態と同様な効果を得ることができる。
<
In the embodiment described above, the generation request information is transmitted from the transmission terminal 3-A. However, the generation request information may be generated and transmitted by the
<変形例4>
上述した実施形態においては、ルータSからルータDまでのパスが既に形成されている場合には、これを優先的に用いるようにしていたが、このパスが複数のルータ2を経由し、2以上のVPNによって構成されている場合に、ルータSとルータDとを直接VPNによって接続することが可能であれば、VPNトポロジ算出部14は、このVPNをパスとして算出してもよい。なお、ルータ2の接続上限数の制限のためにすぐに接続が不可能であっても、切断予約フラグを立てたVPNを切断することにより接続可能であれば、データフローが開始されるまでには、VPNを切断して消滅させることができるから、当該パスを算出することができる。このように、VPNトポロジ算出部14における所定のアルゴリズムは、実施形態で説明した内容に限られず、新たなデータフローの待機可能時間と各VPNのデータフローの終了予定時間とに基づいて決定される切断予約フラグが立っているVPNと、各VPNにより形成されるトポロジとに基づいて算出されるものであれば、どのようなアルゴリズムであってもよい。
<
In the above-described embodiment, when a path from the router S to the router D has already been formed, this is preferentially used. However, this path passes through a plurality of
<変形例5>
上述した実施形態において、VPNトポロジ制御装置1のCPUが実行するプログラムはROMに記憶されたプログラムであったが、様々な記録媒体のデータを読み取ることができるデータ入力手段などを設け、当該プログラムが記憶された様々な記録媒体から取得したり、通信部11を介してサーバなど外部装置との通信によって当該プログラムを取得したりして、外部から取得するようにしてもよい。
<
In the above-described embodiment, the program executed by the CPU of the VPN
1…VPNトポロジ制御装置、2,2−R1,2−R2,・・・,2−R6…ルータ、2−S…送信元のルータ、2−D…受信先のルータ、3…通信端末、3−A…送信端末、3−B…受信端末、11…通信部、12…VPNデータベース、13…フローデータベース、14…VPNトポロジ算出部、15…ルータ設定部、16…データベース更新部、17…VPN生成応答部、21…ルータ通信部、22…タイマ、23…通過データ検出部、24…フローキャッシュ、25…VPN設定部、26…フロー情報生成部
DESCRIPTION OF
Claims (10)
前記トポロジを形成するVPNを示すVPNデータベースを記憶する記憶手段と、
前記トポロジを形成するVPNにおけるデータフローの通信状況を監視する監視手段と、
前記複数のルータのうちデータフローの送信元および受信先を示すルータと、当該データフローの送信を開始するまでの待機可能時間とを示す生成要求情報を受信する受信手段と、
前記監視手段が監視する通信状況に基づいて、前記受信手段が受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する決定手段と、
前記VPNデータベースが示すVPNと、前記決定手段が決定した切断予約VPNとに基づき、前記受信手段が受信した生成要求情報が示す2つのルータ間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する算出手段と、
前記算出手段によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行う設定手段と
を具備することを特徴とするVPNトポロジ制御装置。 A VPN topology control device for controlling a topology formed by VPNs constituting a data flow path between a plurality of routers,
Storage means for storing a VPN database indicating VPNs forming the topology;
Monitoring means for monitoring the data flow communication status in the VPN forming the topology;
Receiving means for receiving generation request information indicating a router indicating a transmission source and a reception destination of a data flow among the plurality of routers, and a waiting time until starting transmission of the data flow;
A determining unit that determines a VPN for which a data flow is terminated as a disconnection reserved VPN within a waiting time indicated by the generation request information received by the receiving unit based on a communication status monitored by the monitoring unit;
Based on the VPN indicated by the VPN database and the disconnection reservation VPN determined by the determination means, a path using the VPN between the two routers indicated by the generation request information received by the reception means and the path can be formed Calculating means for calculating the topology using a predetermined algorithm;
A VPN topology control apparatus, comprising: a setting unit configured to set a VPN for the plurality of routers so as to form a topology calculated by the calculation unit.
ことを特徴とする請求項1に記載のVPNトポロジ制御装置。 The VPN topology control apparatus according to claim 1, further comprising a disconnecting unit that disconnects the VPN for which the data flow has been completed from the communication status monitored by the monitoring unit.
ことを特徴とする請求項2に記載のVPNトポロジ制御装置。 The setting unit is configured to form the topology calculated by the calculation unit after a VPN that is not included in the topology calculated by the calculation unit is disconnected by the disconnection unit. The VPN topology control apparatus according to claim 2, wherein VPN setting is performed for the router.
ことを特徴とする請求項2に記載のVPNトポロジ制御装置。 The setting unit performs VPN setting for the plurality of routers so that the topology calculated by the calculation unit is formed after all of the disconnection reservation VPNs are disconnected by the disconnection unit. The VPN topology control device according to claim 2.
前記決定手段は、前記監視手段が監視する通信状況と、前記受信手段が受信した生成要求情報が示すデータ総量とに基づいて、前記受信手段が受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する
ことを特徴とする請求項1乃至請求項4のいずれかに記載のVPNトポロジ制御装置。 The generation request information received by the receiving means includes information indicating the total data amount of the data flow,
The determining means is based on the communication status monitored by the monitoring means and the total amount of data indicated by the generation request information received by the receiving means within the waiting time indicated by the generation request information received by the receiving means. The VPN topology control device according to any one of claims 1 to 4, wherein a VPN whose data flow ends is determined as a disconnection reservation VPN.
ことを特徴とする請求項1乃至請求項5のいずれかに記載のVPNトポロジ制御装置。 The determination unit is a waiting time indicated by the generation request information received by the reception unit based on a communication status monitored by the monitoring unit among VPNs connected to each router on the path calculated by the calculation unit. The VPN topology control device according to any one of claims 1 to 5, wherein a VPN at which a data flow ends is determined as a disconnection reservation VPN.
ことを特徴とする請求項1乃至請求項6のいずれかに記載のVPNトポロジ制御装置。 After the setting by the setting means is completed, the apparatus further comprises transmission means for transmitting generation response information indicating that a data flow path has been generated between the two routers to the generation request information transmission source. The VPN topology control device according to any one of claims 1 to 6, wherein
前記ルータに接続される通信端末と、
請求項7に記載のVPNトポロジ制御装置と
を具備し、
前記受信手段が受信する生成要求情報は、前記通信端末から送信され、当該生成要求情報が示す送信元のルータは、当該通信端末が接続されたルータを示し、
当該通信端末は、前記送信手段から送信される生成応答情報を受信した後に、データフローを送信し、
前記複数のルータは、当該通信端末が送信したデータフローが、当該生成要求情報が示す受信先のルータに接続された通信端末によって受信されるまでの経路のうち、当該送信元のルータと当該受信先のルータとの間の経路が、前記算出手段が算出したパスになるように制御する
ことを特徴とするVPNトポロジ制御システム。 A plurality of routers capable of forming a VPN between each;
A communication terminal connected to the router;
The VPN topology control device according to claim 7,
The generation request information received by the receiving means is transmitted from the communication terminal, the source router indicated by the generation request information indicates a router to which the communication terminal is connected,
The communication terminal transmits a data flow after receiving the generation response information transmitted from the transmission unit,
The plurality of routers are configured such that the data flow transmitted by the communication terminal is received by the communication router connected to the reception destination router indicated by the generation request information and the reception source router and the reception A VPN topology control system, wherein the path to the previous router is controlled to be the path calculated by the calculation means.
前記トポロジを形成するVPNを示すVPNデータベースを記憶する記憶過程と、
前記トポロジを形成するVPNにおけるデータフローの通信状況を監視する監視過程と、
前記複数のルータのうちデータフローの送信元および受信先を示すルータと、当該データフローの送信を開始するまでの待機可能時間とを示す生成要求情報を受信する受信過程と、
前記監視過程において監視する通信状況に基づいて、前記受信過程において受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する決定過程と、
前記VPNデータベースが示すVPNと、前記決定過程において決定した切断予約VPNとに基づき、前記受信過程において受信した生成要求情報が示す2つのルータ間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する算出過程と、
前記算出過程によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行う設定過程と
を備えることを特徴とするVPNトポロジ制御方法。 A VPN topology control method for controlling a topology formed by a VPN constituting a data flow path between a plurality of routers,
Storing a VPN database indicating VPNs forming the topology; and
A monitoring process for monitoring a communication state of a data flow in the VPN forming the topology;
A reception process of receiving generation request information indicating a router indicating a data flow transmission source and a reception destination among the plurality of routers, and a waiting time until transmission of the data flow starts,
A determination process for determining a VPN whose data flow is terminated as a disconnection reservation VPN within a waiting time indicated by the generation request information received in the reception process based on a communication status monitored in the monitoring process;
Based on the VPN indicated by the VPN database and the disconnection reservation VPN determined in the determination process, a path using the VPN between the two routers indicated by the generation request information received in the reception process and the path can be formed A calculation process for calculating the topology using a predetermined algorithm;
A VPN topology control method comprising: a setting step of setting a VPN for the plurality of routers so as to form a topology calculated by the calculation step.
前記トポロジを形成するVPNを示すVPNデータベースを記憶する記憶機能と、
前記トポロジを形成するVPNにおけるデータフローの通信状況を監視する監視機能と、
前記複数のルータのうちデータフローの送信元および受信先を示すルータと、当該データフローの送信を開始するまでの待機可能時間とを示す生成要求情報を受信する受信機能と、
前記監視機能において監視する通信状況に基づいて、前記受信機能において受信した生成要求情報が示す待機可能時間内に、データフローが終了するVPNを切断予約VPNとして決定する決定機能と、
前記VPNデータベースが示すVPNと、前記決定機能において決定した切断予約VPNとに基づき、前記受信機能において受信した生成要求情報が示す2つのルータ間にVPNを用いたパスと、当該パスを形成可能なトポロジとを、所定のアルゴリズムを用いて算出する算出機能と、
前記算出機能によって算出したトポロジを形成するように、前記複数のルータに対してVPNの設定を行う設定機能と
を実現させるためのプログラム。 A computer that controls the topology formed by the VPN that configures the path of data flow between multiple routers.
A storage function for storing a VPN database indicating VPNs forming the topology;
A monitoring function for monitoring the data flow communication status in the VPN forming the topology;
A reception function for receiving generation request information indicating a router indicating a transmission source and a reception destination of a data flow among the plurality of routers, and a waiting time until starting transmission of the data flow;
A determination function for determining a VPN whose data flow is terminated as a disconnection reservation VPN within a waiting time indicated by the generation request information received by the reception function based on a communication status monitored by the monitoring function;
Based on the VPN indicated by the VPN database and the disconnection reservation VPN determined by the determination function, a path using the VPN between the two routers indicated by the generation request information received by the reception function and the path can be formed A calculation function for calculating the topology using a predetermined algorithm;
A program for realizing a setting function for setting a VPN for the plurality of routers so as to form a topology calculated by the calculation function.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007211808A JP4821735B2 (en) | 2007-08-15 | 2007-08-15 | VPN topology control device, VPN topology control system, VPN topology control method and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007211808A JP4821735B2 (en) | 2007-08-15 | 2007-08-15 | VPN topology control device, VPN topology control system, VPN topology control method and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009049557A JP2009049557A (en) | 2009-03-05 |
| JP4821735B2 true JP4821735B2 (en) | 2011-11-24 |
Family
ID=40501374
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007211808A Expired - Fee Related JP4821735B2 (en) | 2007-08-15 | 2007-08-15 | VPN topology control device, VPN topology control system, VPN topology control method and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4821735B2 (en) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002330150A (en) * | 2001-04-27 | 2002-11-15 | Nippon Telegr & Teleph Corp <Ntt> | Apparatus and method for dynamically providing a VPN environment, program, and recording medium |
| JP2004274448A (en) * | 2003-03-10 | 2004-09-30 | Sustainable Community Center Japan | Public network access method |
| JP4628938B2 (en) * | 2005-12-02 | 2011-02-09 | 三菱電機株式会社 | Data communication system, terminal device and VPN setting update method |
-
2007
- 2007-08-15 JP JP2007211808A patent/JP4821735B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009049557A (en) | 2009-03-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| RU2643475C2 (en) | Multi-domain relaying with routing from source based on interacting network controllers | |
| EP2432164B1 (en) | Node device and communication method | |
| EP2892188B1 (en) | Method for determining packet forwarding path, network device and control device | |
| JP6358347B2 (en) | COMMUNICATION SYSTEM, CONTROL DEVICE, AND NODE CONTROL METHOD | |
| JP4598789B2 (en) | Route calculation control method, route calculation control program, and route calculation control device | |
| CN106063195A (en) | Control device discovery in networks having separate control and forwarding devices | |
| WO2011087085A1 (en) | Calculator, network connection switching method, and program | |
| KR101538244B1 (en) | Server management apparatus, server management method, and program | |
| EP2770681B1 (en) | Switch and switch system | |
| JP6042838B2 (en) | Management system, management server, and management method | |
| JP2011101245A (en) | Communication system, path controller, path control method and program for path control | |
| JP2014027443A (en) | Control device, communication system, communication method, and program | |
| CN110393001A (en) | Method and apparatus for modularly guiding AVB crossfire | |
| JP6605558B2 (en) | Network probe routing | |
| CN101155054A (en) | Method and device for automatic detection and calculation of inter-autonomous system PCE paths | |
| CN105684362B (en) | Interworking between a first protocol entity of a stream reservation protocol and a second protocol entity of a routing protocol | |
| JP4821735B2 (en) | VPN topology control device, VPN topology control system, VPN topology control method and program | |
| JP4286710B2 (en) | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND COMPUTER PROGRAM | |
| WO2008000125A1 (en) | A method, system and apparatus for discovering path computation element | |
| CN104579992B (en) | A kind of method and device for controlling network traffics path | |
| KR20140122171A (en) | Apparatus and method for network monitoring and packet inspection | |
| CN101436977A (en) | Method, apparatus and system for separating path | |
| JP4630298B2 (en) | Function distributed communication apparatus, component element coupling control method, and program | |
| JP7331066B2 (en) | Method and apparatus for modular routing of AVB streams | |
| KR20080077861A (en) | Hello Timer Control Method and System for Reducing LPD Discovery Message |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100622 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110805 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110809 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110822 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4821735 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140916 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |