仮想通信路接続システム、制御方法及び制御プログラム
【課題】大量のVPN接続要求を受信した場合に、それぞれの接続要求を処理すること。
【解決手段】仮想通信路接続システムは、第1の端末と複数ある第2の端末とを有し、第2の端末が第1の端末を介してクライアント端末との間で仮想通信路を確立する。第1の端末は、クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信したSIP接続要求に含まれる確立用情報を複数ある第2の端末各々に送信する。第2の端末は、確立用情報を受信すると所定の応答を第1の端末に送信する。第1の端末は、所定の応答を受信し、最初に受信した所定の応答をクライアント端末に送信することで、最初に受信された所定の応答の送信元となる第2の端末とクライアント端末とが仮想通信路を確立するように制御する。
【解決手段】仮想通信路接続システムは、第1の端末と複数ある第2の端末とを有し、第2の端末が第1の端末を介してクライアント端末との間で仮想通信路を確立する。第1の端末は、クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信したSIP接続要求に含まれる確立用情報を複数ある第2の端末各々に送信する。第2の端末は、確立用情報を受信すると所定の応答を第1の端末に送信する。第1の端末は、所定の応答を受信し、最初に受信した所定の応答をクライアント端末に送信することで、最初に受信された所定の応答の送信元となる第2の端末とクライアント端末とが仮想通信路を確立するように制御する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想通信路接続システム、制御方法及び制御プログラムに関する。
【背景技術】
【0002】
従来、高速なネットワークやネットワーク対応の情報家電が普及し、個人でもセキュアな通信を利用したデータのやり取りが行われている。例えば、家庭内LAN(Local Area Network)間をVPN(Virtual Private Network)接続してセキュアな通信路を確立し、確立したVPN接続上でデータのやり取りが行われる。
【0003】
一般的なVPN接続には、専用のソフトウエアをコンピュータ等にインストールして設定するなど専門的な知識が必要である。したがって、ITリテラシーの高くない一般ユーザが、家庭内LANや自身のパーソナルコンピュータに対して、VPN接続を確立することは難しい。
【0004】
ここで、ITリテラシーの高くない一般ユーザであっても簡単にVPN接続を確立する手法として、例えば、SIP(Session Initiation Protocol)を用いて電話感覚でVPNを接続する手法がある。
【0005】
具体的には、ユーザAは、SIPが利用可能な電話機であるSIPフォン等にVPN接続先となるユーザB宅の電話番号を入力して発信する。そして、相手先であるユーザB宅のSIPフォンが応答すると、ユーザA宅のSIPフォンは、応答したユーザB宅のSIPフォンとの間でSIP通信を接続するとともに、VPN接続を確立する。この結果、ユーザA宅の家庭内LANとユーザB宅の家庭内LANとがVPN接続される。このように、ユーザは、使い慣れた電話機の操作だけで、簡単にVPN接続を確立することができる。
【0006】
例えば、企業の社員が外部から企業内のサーバ等に接続する社内システムを例にして説明する。社内システムは、複数のデータセンタを配下とするVPNサーバ装置と、予めSIPフォン機能とVPNソフトウエア等がインストールされ、社員が社外で利用する社員端末とを有する。また、VPNサーバ装置は、VPN接続を許可する電話番号を記憶する。
【0007】
このような状態において、社員は、社員端末に接続先のVPNサーバ装置の電話番号を入力してVPNサーバ装置に発信する。これを受信したVPNサーバ装置は、発信元である社員端末の電話番号がVPN接続の許可されている電話番号であるか否かを判定する。そして、VPNサーバ装置は、接続を許可した場合には、発信元の社員端末にVPN接続に必要となるVPN接続情報を送信し、発信元の社員端末と接続要求先のデータセンタとの間にVPN接続を確立する。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】「広帯域でセキュアな家庭LAN間接続を実現するVPN接続方式」、BS−5−6、電子情報通信学会ソサイエティ大会2007
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、従来の技術では、大量のVPN接続要求を受信した場合に、それぞれの接続要求を処理できないという問題があった。
【0010】
例えば、VPNサーバ装置は、大量のクライアント端末からVPN接続要求を短時間に受信した場合に、それぞれの要求に対して、「電話番号等による認証処理」を実行し、「VPN接続情報の送信処理」を実行し、「VPN接続の確立処理」を実行する。このため、VPNサーバ装置の処理負荷が大きくなり、上記処理を実行できなかったり遅延したりする。この結果、VPN接続要求が受信されない端末、要求は受信されたがVPN接続が確立しない端末などが発生する。
【0011】
本発明は、上記に鑑みてなされたものであって、大量のVPN接続要求を受信した場合でも、それぞれの接続要求を迅速に処理することが可能である仮想通信路接続システム、制御方法及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
開示する仮想通信路接続システムは、一つの態様において、第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する。前記第1の端末は、前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信部を有する。前記第2の端末は、前記確立用情報送信部により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信部を有する。前記第1の端末は、前記応答送信部により送信された前記所定の応答を受信する応答受信部を有する。また、前記第1の端末は、前記応答受信部により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御部を有する。
【発明の効果】
【0013】
開示する仮想通信路接続システムの一つの態様によれば、大量のVPN接続要求を受信した場合でも、それぞれの接続要求を迅速に処理することが可能であるという効果を奏する。
【図面の簡単な説明】
【0014】
【図1】図1は、実施例1におけるSIP−DUシステムの全体像について示す図である。
【図2】図2は、実施例1に係るSIP−DUシステムにおけるVPN接続処理の流れの一例を示すシーケンス図である。
【図3】図3は、実施例1における接続制御装置の構成の一例を示すブロック図である。
【図4】図4は、実施例1におけるVPN−GW情報DBに記憶された情報の一例を示す図である。
【図5】図5は、実施例1におけるVPN−GWの構成の一例を示すブロック図である。
【図6】図6は、実施例1におけるリソースDBに記憶された情報の一例を示す図である。
【図7】図7は、実施例1における接続状況DBに記憶された情報の一例を示す図である。
【図8】図8は、実施例1におけるVPN−GWを接続制御装置に登録する処理の流れの一例を示すシーケンス図である。
【図9】図9は、実施例1における接続制御装置による処理の流れの一例を示すフローチャートである。
【図10】図10は、実施例1におけるVPN−GWによる処理の流れの一例を示すフローチャートである。
【図11】図11は、実施例1におけるSIP−DUシステムにおけるVPN接続切断時における処理の流れの一例を示すシーケンス図である。
【図12】図12は、実施例1におけるSIP−DUシステムによる効果の一例を示す図である。
【図13】図13は、開示の技術に係る仮想通信路接続プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
【発明を実施するための形態】
【0015】
以下に、開示する仮想通信路接続システム、制御方法及び制御プログラムの実施例について、図面に基づいて詳細に説明する。なお、本実施例により開示する発明が限定されるものではない。各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例1】
【0016】
[全体像]
図1を用いて、実施例1に係る仮想通信路接続システムの全体像を示す。仮想通信路接続システムは、「SIP−DU(ダイヤルアップ)システム」とも記載する。図1は、実施例1におけるSIP−DUシステムの全体像について示す図である。
【0017】
図1において、100は、SIP−DUシステムを示す。200は、接続制御装置を示す。300a〜300nは、クライアント端末との間で仮想通信路接続を確立するVPN−GW(ゲートウェイ)装置を示す。なお、以下では、仮想通信路接続の一例として、VPN(Virtual Private Network)接続を用いて説明する。400a〜400nは、クライアント端末を示す。501は、SIP(Session Initiation Protocol)網を示し、502は、VLAN(Virtual Local Area Network)によって構成される企業内ネットワークを示す。なお、接続制御装置200は「第1の端末」とも称し、VPN−GW300は「第2の端末」とも称する。
【0018】
クライアント端末400は、SIPによって電話接続が可能となるSIPフォン機能を有する。また、例えば、クライアント端末400は、WebブラウザによるWebアクセスが可能なブラウザ機能を有し、文書作成や表計算などの文書作成機能を有する。クライアント端末400は、例えば、一般的なコンピュータが該当する。なお、図1に示す例では、クライアント端末400がn個ある場合を例に示したが、本発明はこれに限定されるものではなく、任意の数であって良い。
【0019】
SIP−DUシステム100は、SIP網501を介して複数のクライアント端末400と通信可能に接続され、VLAN502を介して企業内ネットワークやサーバ装置、データベースなどに接続される。SIP−DUシステム100は、接続制御装置200と複数のVPN−GW300とを有する。なお、図1に示す例では、接続制御装置200が1つあり、VPN−GW300がn個ある場合を例に示したが、本発明はこれに限定されるものではなく、接続制御装置200やVPN−GW300の数は任意の数であって良い。
【0020】
SIP−DUシステム100は、詳細については後述するように、クライアント端末400との間でVPN接続を確立するための情報である確立用情報を含むSIP接続要求を受信すると、VPN−GW300が、接続制御装置200を介してクライアント端末400との間でVPN接続を確立する。そして、VPN−GW300は、VLANに接続される装置とクライアント端末400との間の通信を制御する。
【0021】
[VPN接続処理の全体像]
図2を用いて、SIP−DUシステム100におけるVPN接続処理の全体像について示す。図2は、実施例1に係るSIP−DUシステムにおけるVPN接続処理の流れの一例を示すシーケンス図である。図2に示す例では、説明の便宜上、VPN−GW300が2つある場合を用いて説明する。
【0022】
図2に示すように、クライアント端末400は、クライアント端末400との間でVPN接続を確立するための情報である確立用情報を含むSIP接続要求をSIP−DUシステム100に送信する(ステップS101)。例えば、クライアント端末400は、ユーザからVPN接続を要求する操作を示すダイアル番号の入力やコマンドなど所定の操作を受け付けると、自クライアント端末400のIPアドレスとポート番号とを付加したSIP接続要求を送信する。図2の「VPN接続情報A」は、クライアント端末400のIPアドレスとポート番号とを含む。確立用情報は、「VPN接続情報」とも記載する。なお、SIP接続要求を「INVITE」とも記載する。
【0023】
そして、SIP−DUシステム100では、接続制御装置200が、SIP接続要求を受信すると、受信したSIP接続要求に含まれる確立用情報を複数あるVPN−GW300各々に送信する(ステップS102、S103)。例えば、接続制御装置200は、SIP接続要求に含まれたVPN接続情報AをVPN−GW300aとVPN−GW300bとに送信する。
【0024】
そして、VPN−GW300aやVPN−GW300bは、確立用情報を受信すると、確立用情報の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を接続制御装置200に送信する(ステップS104、S105)。図2に示す例では、VPN−GW300aとVPN−GW300bとが共に、所定の応答を送信する場合を例に示した。図2の「VPN接続情報B」は、例えば、VPN−GW300aのIPアドレスとポート番号とを含み、図2の「VPN接続情報C」は、例えば、VPN−GW300bのIPアドレスとポート番号とを含む。
【0025】
例えば、VPN−GW300aやVPN−GW300bは、自装置のリソース状況などに基づいてVPN接続を許可するか否かを判定する。そして、VPN−GW300aやVPN−GW300bは、許可すると判定した場合に、自VPN−GW300のIPアドレスとポート番号とを接続制御装置200に送信する。
【0026】
そして、接続制御装置200は、VPN−GW300により送信された所定の応答を受信すると、最初に受信した所定の応答をクライアント端末400に送信する(ステップS106)。また、例えば、接続制御装置200は、最初に受信した所定の応答の送信元となるVPN−GW300以外のVPN−GW300に対して、キャンセルする旨を送信する(ステップS107)。例えば、図2に示す例では、接続制御装置200は、最初にVPN−GW300aからIPアドレスとポート番号とを含むVPN接続情報Bを受信しており、VPN−GW300aから受信したVPN接続情報Bをクライアント端末400に送信し、キャンセルをVPN−GW300bに送信する。なお、図2に示す例では、VPN−GW300bが、キャンセルを受信した後に了解したことを示す応答を接続制御装置200に送信する(ステップS108)場合を例に示した。
【0027】
そして、クライアント端末400とVPN−GW300aとは、IKE(Internet Key Exchange)認証などを実施してVPNに必要な共通鍵を交換し(ステップS109)、クライアント端末400とVPN−GW300aとが、VPNトンネルを確立する(ステップS1010)。つまり、VPN−GW300bは、クライアント端末400のIPアドレスとポート番号を用いてVPN接続を確立し、共通鍵を用いたIPsec(Security Architecture for Internet Protocol)等でパケット通信を実施する。
【0028】
すなわち、接続制御装置200は、VPN−GW300により送信された所定の応答を受信すると、最初に受信した所定の応答をクライアント端末400に送信することで、最初に受信した所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御する。
【0029】
ここで、VPN−GW300が確立用情報を受信した後に所定の応答を送信するまでの時間は、VPN−GW300の処理負荷状況が小さければ大きい場合と比較して早くなり、処理負荷状況が大きければ小さい場合と比較して遅くなる。このため、実施例1に係るSIP−DUシステム100では、接続制御装置200が、最初に受信した所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御することで、処理負荷が低いVPN−GW300にVPN接続を確立させることができ、VPN−GW300が実施するVPN接続を負荷分散することが可能である。また、この結果、大量のVPN接続要求を受信した場合でも、実施例1に係るSIP−DUシステム100では、それぞれの接続要求を迅速に処理することが可能である。
【0030】
[接続制御装置の構成]
図3を用いて、実施例1における接続制御装置200の構成の一例を示す。図3は、実施例1における接続制御装置の構成の一例を示すブロック図である。図2に示すように、接続制御装置200は、外部I/F部201と、内部I/F部202と、記憶部210と、制御部220とを有する。
【0031】
外部I/F部201は、制御部220と接続される。外部I/F部201は、少なくとも1つのポートを有するインタフェースであり、SIP網501を介して接続されるクライアント端末400との間の通信を制御する。例えば、外部I/F部201は、クライアント端末400からSIP接続要求を受信する。また、例えば、外部I/F部201は、制御部220により制御されることで、VPN−GW300から受信した確立用情報をクライアント端末400に送信する。
【0032】
内部I/F部202は、制御部220と接続される。内部I/F部202は、少なくとも1つのポートを有するインタフェースであり、イーサネット(登録商標)網等を介して接続される複数のVPN−GW300との間の通信を制御する。例えば、内部I/F部202は、制御部220により制御されることで、複数あるVPN−GW300各々に対して、クライアント端末400から送信されたVPN接続情報を送信する。また、例えば、内部I/F部202は、VPN−GW300から、VPN接続情報を受信する。
【0033】
記憶部210は、制御部220と接続される。記憶部210は、制御部220による各種処理に必要なデータを格納する半導体メモリ素子又はハードディスク、光ディスクなどの記憶装置である。図3に示す例では、記憶部210は、VPN−GW情報DB211を有する。
【0034】
図4に示すように、VPN−GW情報DB211は、内部I/F部202に接続された複数あるVPN−GW300についての情報を記憶する。図4は、実施例1におけるVPN−GW情報DBに記憶された情報の一例を示す図である。図4に示す例では、VPN−GW情報DB211は、内部I/F部202に接続されたVPN−GW300の識別子を示す「SIP−URI」と、VPN−GW300のネットワークにおける位置を識別する「IPアドレス」とを対応付けて記憶する。
【0035】
図4に示す例では、VPN−GW情報DB211は、SIP−URI「1111」とIPアドレス「IP1」との対応付けを記憶し、SIP−URI「2222」とIPアドレス「IP2」との対応付けを記憶する。つまり、例えば、VPN−GW情報DB211は、SIP−URI「1111」で識別されてIPアドレス「IP1」であるVPN−GW300が、接続制御装置200と接続されていることを記憶する。
【0036】
制御部220は、OS(Operating System)などの制御プログラム、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、例えば、集積回路やCPU(Central Process Unit)、MPU(Micro Process Unit)などの電子回路が該当する。図3に示す例では、制御部220は、登録処理部221と、要求受信部222と、要求送信部223と、応答処理部224とを有する。制御部220について説明する際には、説明の便宜上、外部I/F部201や内部I/F部202には言及しないが、制御部220は、外部I/F部201や内部I/F部202を介してクライアント端末400やVPN−GW300と情報を送受信する。
【0037】
登録処理部221は、接続制御装置200と接続されたVPN−GW300についての情報をVPN−GW情報DB211に登録する。例えば、登録処理部221は、接続制御装置200と接続されたVPN−GW300から登録要求を受信すると、登録要求の送信元となるVPN−GW300のSIP−URIとIPアドレスとを対応付けてVPN−GW情報DB211に登録する。登録処理部221が登録するSIP−URIとIPアドレスとは、例えば、VPN−GW300から受信する登録要求に含まれる。
【0038】
要求受信部222は、クライアント端末400との間でVPN接続を確立するための情報である確立用情報を含むSIP接続要求を受信する。例えば、要求受信部222は、クライアント端末400のポート番号とIPアドレスとを含むSIP接続要求をクライアント端末400から受信する。
【0039】
また、要求受信部222は、クライアント端末400からVPN接続を切断する旨の指示であるVPN切断要求を外部I/F部201を介して受信する。例えば、要求受信部222は、クライアント端末400のポート番号とIPアドレスとを含むVPN切断要求をクライアント端末400から受信する。VPN切断要求は、「SIP BYE」とも称する。
【0040】
要求送信部223は、要求受信部222がSIP接続要求を受信すると、受信したSIP接続要求に含まれる確立用情報を複数あるVPN−GW300各々に送信する。例えば、要求送信部223は、SIP接続要求を受信すると、VPN−GW情報DB211からIPアドレスを取得し、取得したIPアドレス各々に対して、受信したSIP接続要求に含まれる確立用情報を送信する。なお、この際、要求送信部223は、受信したSIP接続要求そのものをVPN−GW300各々に送信しても良い。なお、要求受信部222と要求送信部223とは、「確立用情報送信部」とも称する。
【0041】
また、要求送信部223は、要求受信部222がVPN切断要求を受信すると、要求受信部222がSIP接続要求を受信した際と同様に、VPN切断要求を複数あるVPN−GW300各々に送信する。すなわち、要求送信部223は、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立しているVPN−GW300か否かに関係なく、VPN切断要求を一斉に送信する。
【0042】
応答処理部224は、確立用情報に対してVPN−GW300により送信された所定の応答を受信する。例えば、応答処理部224は、所定の応答として、ポート番号とIPアドレスとを含む確立用情報を受信する。例えば、VPN−GW300aとVPN−GW300bとがクライアント端末400とVPN接続を確立することが可能であり、確立用情報を接続制御装置200に送信した場合を用いて説明する。この場合、応答処理部224は、VPN−GW300aのポート番号とIPアドレスとを含む確立用情報をVPN−GW300aから受信し、VPN−GW300bのポート番号とIPアドレスとを含む確立用情報をVPN−GW300bから受信する。
【0043】
応答処理部224は、最初に受信した所定の応答をクライアント端末400に送信することで、最初に受信した所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御する。応答処理部224は、「応答受信部」「確立制御部」とも称する。
【0044】
例えば、VPN−GW300aからの確立用情報を受信した後に、VPN−GW300bからの確立用情報を受信した場合を用いて説明する。この場合、応答処理部224は、VPN−GW300aから受信した確立用情報をクライアント端末400に送信する一方、VPN−GW300bから受信した確立用情報をクライアント端末400に送信しない。
【0045】
また、例えば、応答処理部224は、最初に受信した所定の応答の送信元となるVPN−GW300以外のVPN−GW300に対して、キャンセルする旨を送信する。例えば、応答処理部224は、VPN−GW300bにキャンセルを送信する。
【0046】
また、応答処理部224は、クライアント端末400から受信したVPN切断要求をVPN−GW300に送信した後にVPN−GW300から切断許可応答を受信すると、受信した切断許可応答をVPN切断要求の送信元となるクライアント端末400に送信する。
【0047】
[VPN−GWの構成]
図5を用いて、実施例1におけるVPN−GW300の構成の一例を示す。図5は、実施例1におけるVPN−GWの構成の一例を示すブロック図である。図5に示すように、VPN−GW300は、通信I/F部301と、内部I/F部302と、記憶部310と、制御部320とを有する。
【0048】
通信I/F部301は、制御部320と接続される。通信I/F部301は、少なくとも1つのポートを有するインタフェースであり、イーサネット(登録商標)網等を介して接続される接続制御装置200との間の通信を制御する。例えば、通信I/F部301は、接続制御装置200からクライアント端末のポート番号やIPアドレスである確立用情報を受信する。
【0049】
内部I/F部302は、制御部320と接続される。内部I/F部302は、少なくとも1つのポートを有するインタフェースであり、VLANに接続されるサーバ装置や他のクライアント端末400との間の通信を制御する。例えば、内部I/F部302は、VPN接続されたクライアント端末400と、VPN−GW300に接続されるVLANに属するサーバ装置等の間で、共通鍵を用いたIPsec等でパケット通信を実施する。
【0050】
記憶部310は、制御部320と接続される。記憶部310は、制御部320による各種処理に必要なデータ及びプログラムを格納する。記憶部310は、例えば、半導体メモリ素子又はハードディスク、光ディスクなどの記憶装置が該当する。図5に示す例では、記憶部310は、リソースDB311と、接続状況DB312とを有する。
【0051】
図6に示すように、リソースDB311は、VPN−GW300のリソース状況を記憶する。図6は、実施例1におけるリソースDBに記憶された情報の一例を示す図である。図6に示す例では、リソースDB311は、CPU使用率、ネットワーク使用率、メモリ使用率、CPU使用率閾値、ネットワーク使用率閾値、メモリ使用率閾値などを記憶する。リソースDB311に記憶された情報は、後述する処理負荷識別部322によって格納される。
【0052】
「CPU使用率」は、VPN−GW300に搭載されたCPUの使用状況を示す。「ネットワーク使用率」は、VPN−GW300が他の装置との間で通信しているネットワークの状況を示す。「メモリ使用率」は、VPN−GW300に搭載されたCPU等によって使用されているメモリの状況を示す。「CPU使用率閾値」は、CPUの処理負荷の限度を示す。「ネットワーク使用率閾値」は、VPN−GW300が他の装置との間で通信しているネットワーク帯域等の限度を示す。「メモリ使用率閾値」は、VPN−GW300が搭載するメモリの使用限度を示す。
【0053】
図6に示す例では、リソースDB311は、CPU使用率「30%」を記憶し、ネットワーク使用率「60%」を記憶し、メモリ使用率「40%」を記憶し、CPU使用率閾値「80%」を記憶し、ネットワーク使用率閾値「70%」を記憶し、メモリ使用率閾値「70%」を記憶する。すなわち、リソースDB311は、VPN−GW300に搭載されたCPUが30%使用されていることを記憶し、VPN−GW300が他の装置との間で通信しているネットワークの60%が使用されていることを記憶し、VPN−GW300に搭載されたCPU等によって使用されているメモリが40%使用されていることを記憶する。また、リソースDB311は、CPUの使用率の限度が80%であることを記憶し、ネットワーク使用率の限度が70%であることを記憶し、メモリの使用率の限度が70%であることを記憶する。
【0054】
図7に示すように、接続状況DB312は、VPN−GW300が接続しているVPN接続状況を記憶する。図7は、実施例1における接続状況DBに記憶された情報の一例を示す図である。図7に示す例では、接続状況DB312は、接続可能台数「2」と現在の接続数「2」とを記憶する。「接続可能台数」は、VPN−GW300が接続可能な最大数を示し、管理者等によって予め設定される。「現在の接続数」は、例えば、処理負荷識別部322によって格納される。図7に示す例では、接続状況DB312は、VPN−GW300が接続可能な台数の最大数は2台であり、現在2台の装置と接続されていることを記憶する。
【0055】
制御部320は、通信I/F部301と内部I/F部302と記憶部310と接続される。制御部320は、OSなどの制御プログラム、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有する集積回路又はCPUやMPUなどの電子回路である。図5に示す例では、制御部320は、登録要求送信部321と、処理負荷識別部322と、情報受信部323と、接続応答部324と、VPN確立部325と、VPN切断部326とを有する。制御部320について説明する際には、説明の便宜上、通信I/F部301や内部I/F部302には言及しないが、制御部320は、通信I/F部301や内部I/F部302を介して接続制御装置200などと情報を送受信する。
【0056】
登録要求送信部321は、接続制御装置200に登録要求を送信する。例えば、登録要求送信部321は、自VPN−GW300を識別するSIP−URIとIPアドレスとを含む登録要求を定期的に送信する。
【0057】
処理負荷識別部322は、自装置における処理負荷状況を識別する。例えば、処理負荷識別部322は、VPN−GW300のリソース状況を定期的に収集し、リソースDB311に格納する。例えば、処理負荷識別部322は、CPU使用率とネットワーク使用率とメモリ使用率とをリアルタイム若しくは定期的に収集し、リソースDB311に格納する。また、処理負荷識別部322は、VPN接続されている装置数をリアルタイム若しくは定期的に収集し、接続状況DB312に格納する。なお、処理負荷識別部322は、VPN−GW300が搭載するOS等によって予め用意されたコマンドを用いることで、処理負荷状況を識別しても良い。
【0058】
情報受信部323は、接続制御装置200から確立用情報を受信する。例えば、情報受信部323は、クライアント端末400のポート番号とIPアドレスとを受信する。
【0059】
接続応答部324は、情報受信部323が確立用情報を受信すると、確立用情報の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定する。例えば、接続応答部324は、接続状況DB312を参照し、「現在の接続数」が「接続可能台数」より少ない場合に、接続を許可すると判定する。また、接続応答部324は、接続状況DB312を参照し、「現在の接続数」と「接続可能台数」とが一致する場合には、接続を許可しないと判定する。また、例えば、接続応答部324は、リソースDB311を参照し、「CPU使用率」、「ネットワーク使用率」、「メモリ使用率」のいずれかが「閾値」を超える場合には、接続を許可しないと判定する。なお、接続応答部324は、上述した接続状況とリソース状況との両方が条件を満たす場合に、接続を許可するようにしても良い。
【0060】
接続応答部324は、VPN接続を許可すると判定すると、所定の応答を接続制御装置200に送信する。例えば、接続応答部324は、自VPN−GW300のIPアドレスとポート番号とを含む確立用情報を接続制御装置200に送信する。また、接続応答部324は、VPN接続を許可しないと判定すると、接続を拒否することを示すエラー応答を接続制御装置200に送信する。接続応答部324は、「応答送信部」とも称する。
【0061】
ここで、接続応答部324は、処理負荷識別部322により識別された処理負荷状況が高い場合に低い場合と比較して所定の応答を遅く送信し、処理負荷状況が低い場合に高い場合と比較して所定の応答を早く送信する。
【0062】
例えば、接続応答部324は、リソースDB311を参照し、CPU使用率やネットワーク使用率、メモリ使用率が低ければ低いほど、確立用情報を早く送信し、CPU使用率やネットワーク使用率、メモリ使用率が高ければ高いほど、確立用情報を遅く送信する。また、例えば、接続応答部324は、接続状況DB312を参照し、現在の接続数が少なければ少ないほど早く確立用情報を送信し、現在の接続数が多ければ多いほど遅く確立用情報を送信する。また、例えば、接続応答部324は、接続可能台数に対して現在の接続数が占める割合が小さければ小さいほど早く確立用情報を送信し、接続可能台数に対して現在の接続数が占める割合が大きければ大きいほど遅く確立用情報を送信する。
【0063】
VPN確立部325は、接続制御装置200から受信した確立用情報を用いて、SIP接続要求の送信元となるクライアント端末400とVPN接続を確立する。例えば、VPN確立部325は、SIP接続要求の送信元となるクライアント端末400とIKEネゴシエーション(IKE認証)を実施し、VPNに必要な共通鍵を交換する。そして、VPN確立部325は、情報受信部323によって受信された確立用情報に含まれるクライアント端末400のIPアドレスとポート番号を用いてVPN接続を確立し、共通鍵を用いたIPsec等でパケット通信を実施する。また、VPN確立部325は、VPN接続を確立すると、接続状況DB312を更新する。
【0064】
ここで、VPN確立部325がVPN接続を確立するのは、接続応答部324が確立用情報を送信した上で、接続制御装置200が、キャンセルすることなく接続応答部324により送信された確立用情報をクライアント端末400に送信した場合になる。つまり、接続応答部324が、他のVPN−GW300の接続応答部324よりも早く確立用情報を送信した場合となる。
【0065】
VPN切断部326は、接続制御装置200からVPN切断要求を受信すると、VPNを切断するとともに、VPNを切断したことを示す応答を接続制御装置200に送信する。また、VPN切断部326は、VPN接続を切断すると、接続状況DB312を更新する。
【0066】
[登録処理]
図8を用いて、実施例1におけるVPN−GW300を接続制御装置200に登録する処理の流れの一例を示す。図8は、実施例1におけるVPN−GWを接続制御装置に登録する処理の流れの一例を示すシーケンス図である。図8では、記載の便宜上、クライアント端末400を併せて示した。図8に示す例では、VPN−GW300aが登録要求を送信し、その後、VPN−GW300bが登録要求を送信する場合を用いて説明するが、本発明はこれに限定されるものではない。
【0067】
VPN−GW300aは、登録要求を接続制御装置200に送信する(ステップS201)。なお、登録要求は、「REGISTER」とも記載する。例えば、VPN−GW300aの登録要求送信部321が、VPN−GW300aのSIP−URIとIPアドレスとを含む登録要求を送信する。
【0068】
その後、接続制御装置200は、受信した登録要求をVPN−GW情報DB211に登録する(ステップS202)。例えば、接続制御装置200は、VPN−GW300aのSIP−URIとIPアドレスとを登録する。また、その後、接続制御装置200は、登録した旨を示す応答をVPN−GW300aに送信する(ステップS203)。
【0069】
また、同様に、VPN−GW300bは、VPN−GW300bのSIP−URIとIPアドレスとを含む登録要求を送信し(ステップS204)、接続制御装置200が、VPN−GW300bのSIP−URIとIPアドレスとをVPN−GW情報DB211に登録する(ステップS205)。また、その後、接続制御装置200は、登録した旨を示す応答をVPN−GW300bに送信する(ステップS206)。
【0070】
[接続制御装置による処理]
図9を用いて、実施例1における接続制御装置200による処理の流れの一例を示す。図9は、実施例1における接続制御装置による処理の流れの一例を示すフローチャートである。図9では、説明の便宜上、VPN−GW300についての情報がVPN−GW情報DB211に既に登録されているものとして説明する。また、図9に示す例では、接続制御装置200が、クライアント端末400からSIP接続要求を受信し、受信したSIP接続要求をVPN−GW300a〜VPN−GW300n各々に対して送信し、その後、VPN−GW300aからの確立用情報を最初に受信した場合を用いて説明する。
【0071】
図9に示すように、接続制御装置200は、要求受信部がSIP接続要求を受信すると(ステップS301肯定)、要求送信部223は、VPN−GW情報DB211に登録されたVPN−GW300各々にSIP接続要求を送信する(ステップS302)。なお、接続制御装置200は、SIP接続要求に含まれる確立用情報を選択的に送信しても良い。
【0072】
その後、応答処理部224は、VPN−GW300aから確立用情報を最初に受信すると(ステップS303)、VPN−GW300aからの確立用情報をクライアント端末400に送信する(ステップS304)。また、応答処理部224は、VPN−GW300a以外のVPN−GW300に対してキャンセルする旨を送信する(ステップS305)。
【0073】
[VPN−GWによる処理]
図10を用いて、実施例1におけるVPN−GW300による処理の流れの一例を示す。図10は、実施例1におけるVPN−GWによる処理の流れの一例を示すフローチャートである。
【0074】
図10に示すように、VPN−GW300では、情報受信部323がSIP接続要求を受信すると(ステップS401肯定)、接続応答部324は、SIP接続要求の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定する(ステップS402)。例えば、接続応答部324は、接続状況DB312を参照し、「現在の接続数」が「接続可能台数」より少ない場合に、接続を許可すると判定する。また、接続応答部324は、接続状況DB312を参照し、「現在の接続数」と「接続可能台数」と一致する場合に、接続を拒否すると判定する。
【0075】
ここで、接続応答部324は、許可すると判定すると(ステップS403肯定)、接続を許可する旨の所定の応答を接続制御装置200に送信する(ステップS404)。例えば、接続応答部324は、自VPN−GW300のIPアドレスとポート番号とを含む確立用情報を接続制御装置200に送信する。
【0076】
そして、VPN確立部325は、クライアント端末400とIKE通信を開始してVPN接続を確立する(ステップS405)。つまり、VPN確立部325は、接続制御装置200から受信したSIP接続要求に含まれる確立用情報を用いて、SIP接続要求の送信元となるクライアント端末400とIKEネゴシエーション(IKE認証)を実施し、VPNに必要な共通鍵を交換する。そして、VPN確立部325は、情報受信部323によって取得されたクライアント端末400のIPアドレスとポート番号を用いてVPN接続を確立し、共通鍵を用いたIPsec等でパケット通信を実施する。
【0077】
なお、ここで、接続制御装置200は、複数あるVPN−GW300各々にSIP接続要求を送信しており、接続応答部324が所定の応答を送信したとしても、自VPN−GW300がVPN接続を確立するとは限らない。自VPN−GW300がVPN接続を確立するのは、自VPN−GW300が送信した所定の応答が接続制御装置200にとって最初の応答であり、自VPN−GW300が送信した所定の応答をクライアント端末400に送信された場合となる。
【0078】
図10の説明に戻る。接続応答部324は、許可しないと判定すると(ステップS403否定)、接続を拒否することを示すエラー応答を接続制御装置200に送信する(ステップS406)。
【0079】
[VPN接続切断時における処理]
図11を用いて、実施例1におけるSIP−DUシステム100におけるVPN接続切断時における処理の流れの一例を示す。図11は、実施例1におけるSIP−DUシステムにおけるVPN接続切断時における処理の流れの一例を示すシーケンス図である。図11では、説明の便宜上、VPN−GW300aとVPN−GW300bとを用いて説明する。また、図11では、VPN−GW300aとクライアント端末400とがVPN接続を確立している場合を用いて説明する。
【0080】
図11に示すように、クライアント端末400とVPN−GW300aとの間におけるIKEが切断されると(ステップS501)、クライアント端末400は、VPN接続を切断する旨の指示であるVPN切断要求を接続制御装置200に送信する(ステップS502)。なお、VPN切断要求を「BYE」とも記載する。
【0081】
そして、接続制御装置200は、VPN切断要求を受信すると、接続制御装置200と接続されたVPN−GW300各々にVPN切断要求を送信する(ステップS503、S504)。すなわち、要求送信部223は、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立しているVPN−GW300か否かに関係なく、VPN切断要求を一斉に送信する。
【0082】
その後、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立していないVPN−GW300bは、接続が存在しない旨の応答を接続制御装置200に送信する(ステップS505)。また、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立しているVPN−GW300aは、VPN接続を切断し(ステップS506)、切断した旨の応答を接続制御装置200に送信する(ステップS507)。
【0083】
そして、接続制御装置200は、VPN−GW300aから受信した切断した旨の応答をクライアント端末400に送信する(ステップS508)。
【0084】
[実施例1の効果]
上述したように、実施例1に係るSIP−DUシステム100によれば、接続制御装置200は、SIP接続要求を受信すると、SIP接続要求に含まれる確立用情報を複数あるVPN−GW300各々に送信する。そして、VPN−GW300は、確立用情報を受信すると、所定の応答を接続制御装置200に送信する。そして、接続制御装置200は、VPN−GW300により送信された所定の応答を受信し、最初に受信した所定の応答をクライアント端末400に送信することで、最初に受信された所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御する。この結果、実施例1によれば、大量のVPN接続要求を受信した場合でも、処理負荷が低いVPN−GW300にVPN接続を確立させることができ、接続要求各々を迅速に処理することが可能である。
【0085】
すなわち、VPN−GW300が確立用情報を受信した後に応答を返すまでの速度は、VPN−GW300の処理負荷状況に応じて変化する。このため、接続制御装置200は、最初に受信した応答の送信元となるVPN−GW300にVPN接続を確立させることで、他のVPN−GW300と比較して処理負荷状況が軽いと考えられるVPN−GW300にVPN接続を実行させることができ、接続要求各々を迅速に処理することが可能である。
【0086】
また、この際、接続制御装置200は、VPN−GW300各々の処理負荷状況を把握する必要がなく、VPN−GW300各々に確立用情報を送信し、最初に受信した応答をクライアント端末400に送信すれば良い。接続制御装置200に対して処理負荷をかけることなく実現することが可能である。
【0087】
図12は、実施例1におけるSIP−DUシステムによる効果の一例を示す図である。図12において、601〜603は、データセンタを示し、604及び605は、クライアント端末を示し、607は、SIP−DUシステムを示す。図12に示すように、クライアント端末604や605は、データセンタ601〜603を利用する場合には、SIP−DUシステム100にSIPダイヤルアップし、VPN接続を確立した上で、データセンタとデータの送受信を行う。
【0088】
図12に示すように、SIP−DUシステムは、複数あるクライアント端末からのアクセスを一手に処理することになり、処理負荷がかかっていた。特に、SIP−DUシステム100には、SIPを用いた処理をする処理部と、VPN接続を確立する処理をする処理部とでは、VPN接続を確立する処理をする処理部に大きな処理がかかる。この結果、大量の接続を処理できなくなることも考えられる。
【0089】
そこで、実施例1におけるSIP−DUシステム100では、SIPを用いた処理をする処理部を接続制御装置200に受け持たせ、VPN接続を確立する処理をする処理部をVPN−GW300に受け持たせた。また、その上で、接続制御装置200が、最初に応答を返したVPN−GW300にVPN接続を確立させるようにすることで、他のVPN−GW300と比較して処理負荷状況が軽いと考えられるVPN−GW300にVPN接続を実行させることができ、接続要求各々を迅速に処理することが可能である。
【0090】
また、実施例1によれば、VPN−GW300は、自装置における処理負荷状況を識別する。また、VPN−GW300は、確立用情報を受信すると、処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、処理負荷状況が低い場合に高い場合と比較して所定の応答を早く送信する。この結果、接続制御装置200が最初に受信した応答の送信元となるVPN−GW300にVPN接続を確立させることで、他のVPN−GW300と比較して処理負荷状況が軽いVPN−GW300に確実にVPN接続を実行させることができ、接続要求を迅速に処理することが可能である。
【0091】
また、すべてのVPN−GW300について処理負荷状況が大きかったとしても、VPN−GW300がクライアント端末400とVPN接続が可能な状況にあれば、いずれは、VPN−GW300が確立用情報を送信することになり、いずれかのVPN−GW300に確実にVPN接続を確立させることが可能である。
【0092】
また、実施例1によれば、VPN−GW300は、確立用情報を受信すると、確立用情報の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を接続制御装置に送信する。この結果、接続制御装置200は、VPN接続を確立可能なVPN−GW300からの応答をクライアント端末400から送信することになり、VPN接続を確立することが可能なVPN−GW300に直接クライアント端末400とのVPN接続を確立させることが可能である。
【実施例2】
【0093】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、その他の実施例にて実施されても良い。そこで、以下では、その他の実施例を示す。
【0094】
[VPN−GW情報DBからの削除]
例えば、VPN−GW300は、自VPN−GW300のSIP−URIとIPアドレスを接続制御装置200から削除する場合に、削除する旨の削除要求を接続制御装置200に送信しても良い。また、例えば、接続制御装置200は、VPN−GW情報DB211に登録された後一定期間経過した情報を削除することで、一定期間登録要求が送信されなかったVPN−GW300の情報を削除しても良い。
【0095】
[IKE認証]
例えば、上述した実施例1で説明したIKEネゴシエーション時に、IKE認証による証明書を交換するようにしても良い。こうすることで、正当な機関から証明された正当なクライアント端末400か否かを判定することができる。
【0096】
[VPN−GW]
また、例えば、上述した実施例では、VPN−GW300が、処理負荷状況を考慮し、処理負荷状況が低ければ高い場合と比較して早く応答を送信し、処理負荷状況が高ければ低い場合と比較して遅く応答を送信する場合について示した。ただし、本発明はこれに限定されるものではなく、処理負荷状況を考慮することなく、応答を送信しても良い。例え、処理負荷状況を考慮することなく応答を返したとしても、VPN−GW300の処理負荷状況が高ければ、処理負荷状況が低い場合と比較して、相対的に、種々の処理を実行するのに時間をより要することになる。この結果、処理負荷状況を考慮することなく応答を返したとしても、結果として、処理負荷状況が高ければ低い場合と比較して応答を遅く返すことになるからである。
【0097】
[システム構成]
また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。例えば、VPN−GW300の情報を接続制御装置200に登録する処理を手動にて実行しても良い。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる(例えば、図1〜図11)。
【0098】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。接続制御装置200とVPN−GW300とを1つの筐体に収めても良い。
[プログラム]
図13は、仮想通信路接続プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。図13に例示するように、コンピュータ3000は、例えば、メモリ3010と、CPU(Central Processing Unit)3020と、ハードディスクドライブインタフェース3030と、ディスクドライブインタフェース3040と、シリアルポートインタフェース3050と、ビデオアダプタ3060と、ネットワークインタフェース3070とを有する。コンピュータ3000の各部はバス3100によって接続される。
【0099】
メモリ3010は、図13に例示するように、ROM3011及びRAM3012を含む。ROM3011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース3030は、図13に例示するように、ハードディスクドライブ3080に接続される。ディスクドライブインタフェース3040は、図13に例示するように、ディスクドライブ3090に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ3090に挿入される。シリアルポートインタフェース3050は、図13に例示するように、例えばマウス3051、キーボード3052に接続される。ビデオアダプタ3060は、図13に例示するように、例えばディスプレイ3061に接続される。
【0100】
ここで、図13に例示するように、ハードディスクドライブ3080は、例えば、OS3081、アプリケーションプログラム3082、プログラムモジュール3083、プログラムデータ3084を記憶する。すなわち、開示の技術に係る更新プログラムは、コンピュータによって実行される指令が記述されたプログラムモジュール3083として、例えばハードディスクドライブ3080に記憶される。具体的には、上記実施例で説明した制御部220や制御部320の各部と同様の情報処理を実行する手順各々が記述されたプログラムモジュールが、ハードディスクドライブ3080に記憶される。
【0101】
また、上記実施例で説明した記憶部210や記憶部310に記憶されるデータのように、更新プログラムによる情報処理に用いられるデータは、プログラムデータ3084として、例えばハードディスクドライブ3080に記憶される。そして、CPU3020が、ハードディスクドライブ3080に記憶されたプログラムモジュール3083やプログラムデータ3084を必要に応じてRAM3012に読み出し、各種の手順を実行する。
【0102】
なお、仮想通信路接続プログラムに係るプログラムモジュール3083やプログラムデータ3084は、ハードディスクドライブ3080に記憶される場合に限られない。例えば、プログラムモジュール3083やプログラムデータ3084は、着脱可能な記憶媒体に記憶されても良い。この場合、CPU3020は、ディスクドライブなどの着脱可能な記憶媒体を介してデータを読み出す。また、同様に、更新プログラムに係るプログラムモジュール3083やプログラムデータ3084は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されても良い。この場合、CPU3020は、ネットワークインタフェースを介して他のコンピュータにアクセスすることで各種データを読み出す。
【0103】
[その他]
なお、本実施例で説明した仮想通信路接続プログラムは、インターネットなどのネットワークを介して配布することができる。また、仮想通信路接続プログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【符号の説明】
【0104】
100 SIP−DUシステム
200 接続制御装置
201 外部I/F部
202 内部I/F部
210 記憶部
211 VPN−GW情報DB
220 制御部
221 登録処理部
222 要求受信部
223 要求送信部
224 応答処理部
300 VPN−GW
301 通信I/F部
302 内部I/F部
310 記憶部
320 制御部
321 登録要求送信部
322 処理負荷識別部
323 情報受信部
324 接続応答部
325 VPN確立部
326 VPN切断部
400 クライアント端末
【技術分野】
【0001】
本発明は、仮想通信路接続システム、制御方法及び制御プログラムに関する。
【背景技術】
【0002】
従来、高速なネットワークやネットワーク対応の情報家電が普及し、個人でもセキュアな通信を利用したデータのやり取りが行われている。例えば、家庭内LAN(Local Area Network)間をVPN(Virtual Private Network)接続してセキュアな通信路を確立し、確立したVPN接続上でデータのやり取りが行われる。
【0003】
一般的なVPN接続には、専用のソフトウエアをコンピュータ等にインストールして設定するなど専門的な知識が必要である。したがって、ITリテラシーの高くない一般ユーザが、家庭内LANや自身のパーソナルコンピュータに対して、VPN接続を確立することは難しい。
【0004】
ここで、ITリテラシーの高くない一般ユーザであっても簡単にVPN接続を確立する手法として、例えば、SIP(Session Initiation Protocol)を用いて電話感覚でVPNを接続する手法がある。
【0005】
具体的には、ユーザAは、SIPが利用可能な電話機であるSIPフォン等にVPN接続先となるユーザB宅の電話番号を入力して発信する。そして、相手先であるユーザB宅のSIPフォンが応答すると、ユーザA宅のSIPフォンは、応答したユーザB宅のSIPフォンとの間でSIP通信を接続するとともに、VPN接続を確立する。この結果、ユーザA宅の家庭内LANとユーザB宅の家庭内LANとがVPN接続される。このように、ユーザは、使い慣れた電話機の操作だけで、簡単にVPN接続を確立することができる。
【0006】
例えば、企業の社員が外部から企業内のサーバ等に接続する社内システムを例にして説明する。社内システムは、複数のデータセンタを配下とするVPNサーバ装置と、予めSIPフォン機能とVPNソフトウエア等がインストールされ、社員が社外で利用する社員端末とを有する。また、VPNサーバ装置は、VPN接続を許可する電話番号を記憶する。
【0007】
このような状態において、社員は、社員端末に接続先のVPNサーバ装置の電話番号を入力してVPNサーバ装置に発信する。これを受信したVPNサーバ装置は、発信元である社員端末の電話番号がVPN接続の許可されている電話番号であるか否かを判定する。そして、VPNサーバ装置は、接続を許可した場合には、発信元の社員端末にVPN接続に必要となるVPN接続情報を送信し、発信元の社員端末と接続要求先のデータセンタとの間にVPN接続を確立する。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】「広帯域でセキュアな家庭LAN間接続を実現するVPN接続方式」、BS−5−6、電子情報通信学会ソサイエティ大会2007
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、従来の技術では、大量のVPN接続要求を受信した場合に、それぞれの接続要求を処理できないという問題があった。
【0010】
例えば、VPNサーバ装置は、大量のクライアント端末からVPN接続要求を短時間に受信した場合に、それぞれの要求に対して、「電話番号等による認証処理」を実行し、「VPN接続情報の送信処理」を実行し、「VPN接続の確立処理」を実行する。このため、VPNサーバ装置の処理負荷が大きくなり、上記処理を実行できなかったり遅延したりする。この結果、VPN接続要求が受信されない端末、要求は受信されたがVPN接続が確立しない端末などが発生する。
【0011】
本発明は、上記に鑑みてなされたものであって、大量のVPN接続要求を受信した場合でも、それぞれの接続要求を迅速に処理することが可能である仮想通信路接続システム、制御方法及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
開示する仮想通信路接続システムは、一つの態様において、第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する。前記第1の端末は、前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信部を有する。前記第2の端末は、前記確立用情報送信部により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信部を有する。前記第1の端末は、前記応答送信部により送信された前記所定の応答を受信する応答受信部を有する。また、前記第1の端末は、前記応答受信部により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御部を有する。
【発明の効果】
【0013】
開示する仮想通信路接続システムの一つの態様によれば、大量のVPN接続要求を受信した場合でも、それぞれの接続要求を迅速に処理することが可能であるという効果を奏する。
【図面の簡単な説明】
【0014】
【図1】図1は、実施例1におけるSIP−DUシステムの全体像について示す図である。
【図2】図2は、実施例1に係るSIP−DUシステムにおけるVPN接続処理の流れの一例を示すシーケンス図である。
【図3】図3は、実施例1における接続制御装置の構成の一例を示すブロック図である。
【図4】図4は、実施例1におけるVPN−GW情報DBに記憶された情報の一例を示す図である。
【図5】図5は、実施例1におけるVPN−GWの構成の一例を示すブロック図である。
【図6】図6は、実施例1におけるリソースDBに記憶された情報の一例を示す図である。
【図7】図7は、実施例1における接続状況DBに記憶された情報の一例を示す図である。
【図8】図8は、実施例1におけるVPN−GWを接続制御装置に登録する処理の流れの一例を示すシーケンス図である。
【図9】図9は、実施例1における接続制御装置による処理の流れの一例を示すフローチャートである。
【図10】図10は、実施例1におけるVPN−GWによる処理の流れの一例を示すフローチャートである。
【図11】図11は、実施例1におけるSIP−DUシステムにおけるVPN接続切断時における処理の流れの一例を示すシーケンス図である。
【図12】図12は、実施例1におけるSIP−DUシステムによる効果の一例を示す図である。
【図13】図13は、開示の技術に係る仮想通信路接続プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
【発明を実施するための形態】
【0015】
以下に、開示する仮想通信路接続システム、制御方法及び制御プログラムの実施例について、図面に基づいて詳細に説明する。なお、本実施例により開示する発明が限定されるものではない。各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例1】
【0016】
[全体像]
図1を用いて、実施例1に係る仮想通信路接続システムの全体像を示す。仮想通信路接続システムは、「SIP−DU(ダイヤルアップ)システム」とも記載する。図1は、実施例1におけるSIP−DUシステムの全体像について示す図である。
【0017】
図1において、100は、SIP−DUシステムを示す。200は、接続制御装置を示す。300a〜300nは、クライアント端末との間で仮想通信路接続を確立するVPN−GW(ゲートウェイ)装置を示す。なお、以下では、仮想通信路接続の一例として、VPN(Virtual Private Network)接続を用いて説明する。400a〜400nは、クライアント端末を示す。501は、SIP(Session Initiation Protocol)網を示し、502は、VLAN(Virtual Local Area Network)によって構成される企業内ネットワークを示す。なお、接続制御装置200は「第1の端末」とも称し、VPN−GW300は「第2の端末」とも称する。
【0018】
クライアント端末400は、SIPによって電話接続が可能となるSIPフォン機能を有する。また、例えば、クライアント端末400は、WebブラウザによるWebアクセスが可能なブラウザ機能を有し、文書作成や表計算などの文書作成機能を有する。クライアント端末400は、例えば、一般的なコンピュータが該当する。なお、図1に示す例では、クライアント端末400がn個ある場合を例に示したが、本発明はこれに限定されるものではなく、任意の数であって良い。
【0019】
SIP−DUシステム100は、SIP網501を介して複数のクライアント端末400と通信可能に接続され、VLAN502を介して企業内ネットワークやサーバ装置、データベースなどに接続される。SIP−DUシステム100は、接続制御装置200と複数のVPN−GW300とを有する。なお、図1に示す例では、接続制御装置200が1つあり、VPN−GW300がn個ある場合を例に示したが、本発明はこれに限定されるものではなく、接続制御装置200やVPN−GW300の数は任意の数であって良い。
【0020】
SIP−DUシステム100は、詳細については後述するように、クライアント端末400との間でVPN接続を確立するための情報である確立用情報を含むSIP接続要求を受信すると、VPN−GW300が、接続制御装置200を介してクライアント端末400との間でVPN接続を確立する。そして、VPN−GW300は、VLANに接続される装置とクライアント端末400との間の通信を制御する。
【0021】
[VPN接続処理の全体像]
図2を用いて、SIP−DUシステム100におけるVPN接続処理の全体像について示す。図2は、実施例1に係るSIP−DUシステムにおけるVPN接続処理の流れの一例を示すシーケンス図である。図2に示す例では、説明の便宜上、VPN−GW300が2つある場合を用いて説明する。
【0022】
図2に示すように、クライアント端末400は、クライアント端末400との間でVPN接続を確立するための情報である確立用情報を含むSIP接続要求をSIP−DUシステム100に送信する(ステップS101)。例えば、クライアント端末400は、ユーザからVPN接続を要求する操作を示すダイアル番号の入力やコマンドなど所定の操作を受け付けると、自クライアント端末400のIPアドレスとポート番号とを付加したSIP接続要求を送信する。図2の「VPN接続情報A」は、クライアント端末400のIPアドレスとポート番号とを含む。確立用情報は、「VPN接続情報」とも記載する。なお、SIP接続要求を「INVITE」とも記載する。
【0023】
そして、SIP−DUシステム100では、接続制御装置200が、SIP接続要求を受信すると、受信したSIP接続要求に含まれる確立用情報を複数あるVPN−GW300各々に送信する(ステップS102、S103)。例えば、接続制御装置200は、SIP接続要求に含まれたVPN接続情報AをVPN−GW300aとVPN−GW300bとに送信する。
【0024】
そして、VPN−GW300aやVPN−GW300bは、確立用情報を受信すると、確立用情報の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を接続制御装置200に送信する(ステップS104、S105)。図2に示す例では、VPN−GW300aとVPN−GW300bとが共に、所定の応答を送信する場合を例に示した。図2の「VPN接続情報B」は、例えば、VPN−GW300aのIPアドレスとポート番号とを含み、図2の「VPN接続情報C」は、例えば、VPN−GW300bのIPアドレスとポート番号とを含む。
【0025】
例えば、VPN−GW300aやVPN−GW300bは、自装置のリソース状況などに基づいてVPN接続を許可するか否かを判定する。そして、VPN−GW300aやVPN−GW300bは、許可すると判定した場合に、自VPN−GW300のIPアドレスとポート番号とを接続制御装置200に送信する。
【0026】
そして、接続制御装置200は、VPN−GW300により送信された所定の応答を受信すると、最初に受信した所定の応答をクライアント端末400に送信する(ステップS106)。また、例えば、接続制御装置200は、最初に受信した所定の応答の送信元となるVPN−GW300以外のVPN−GW300に対して、キャンセルする旨を送信する(ステップS107)。例えば、図2に示す例では、接続制御装置200は、最初にVPN−GW300aからIPアドレスとポート番号とを含むVPN接続情報Bを受信しており、VPN−GW300aから受信したVPN接続情報Bをクライアント端末400に送信し、キャンセルをVPN−GW300bに送信する。なお、図2に示す例では、VPN−GW300bが、キャンセルを受信した後に了解したことを示す応答を接続制御装置200に送信する(ステップS108)場合を例に示した。
【0027】
そして、クライアント端末400とVPN−GW300aとは、IKE(Internet Key Exchange)認証などを実施してVPNに必要な共通鍵を交換し(ステップS109)、クライアント端末400とVPN−GW300aとが、VPNトンネルを確立する(ステップS1010)。つまり、VPN−GW300bは、クライアント端末400のIPアドレスとポート番号を用いてVPN接続を確立し、共通鍵を用いたIPsec(Security Architecture for Internet Protocol)等でパケット通信を実施する。
【0028】
すなわち、接続制御装置200は、VPN−GW300により送信された所定の応答を受信すると、最初に受信した所定の応答をクライアント端末400に送信することで、最初に受信した所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御する。
【0029】
ここで、VPN−GW300が確立用情報を受信した後に所定の応答を送信するまでの時間は、VPN−GW300の処理負荷状況が小さければ大きい場合と比較して早くなり、処理負荷状況が大きければ小さい場合と比較して遅くなる。このため、実施例1に係るSIP−DUシステム100では、接続制御装置200が、最初に受信した所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御することで、処理負荷が低いVPN−GW300にVPN接続を確立させることができ、VPN−GW300が実施するVPN接続を負荷分散することが可能である。また、この結果、大量のVPN接続要求を受信した場合でも、実施例1に係るSIP−DUシステム100では、それぞれの接続要求を迅速に処理することが可能である。
【0030】
[接続制御装置の構成]
図3を用いて、実施例1における接続制御装置200の構成の一例を示す。図3は、実施例1における接続制御装置の構成の一例を示すブロック図である。図2に示すように、接続制御装置200は、外部I/F部201と、内部I/F部202と、記憶部210と、制御部220とを有する。
【0031】
外部I/F部201は、制御部220と接続される。外部I/F部201は、少なくとも1つのポートを有するインタフェースであり、SIP網501を介して接続されるクライアント端末400との間の通信を制御する。例えば、外部I/F部201は、クライアント端末400からSIP接続要求を受信する。また、例えば、外部I/F部201は、制御部220により制御されることで、VPN−GW300から受信した確立用情報をクライアント端末400に送信する。
【0032】
内部I/F部202は、制御部220と接続される。内部I/F部202は、少なくとも1つのポートを有するインタフェースであり、イーサネット(登録商標)網等を介して接続される複数のVPN−GW300との間の通信を制御する。例えば、内部I/F部202は、制御部220により制御されることで、複数あるVPN−GW300各々に対して、クライアント端末400から送信されたVPN接続情報を送信する。また、例えば、内部I/F部202は、VPN−GW300から、VPN接続情報を受信する。
【0033】
記憶部210は、制御部220と接続される。記憶部210は、制御部220による各種処理に必要なデータを格納する半導体メモリ素子又はハードディスク、光ディスクなどの記憶装置である。図3に示す例では、記憶部210は、VPN−GW情報DB211を有する。
【0034】
図4に示すように、VPN−GW情報DB211は、内部I/F部202に接続された複数あるVPN−GW300についての情報を記憶する。図4は、実施例1におけるVPN−GW情報DBに記憶された情報の一例を示す図である。図4に示す例では、VPN−GW情報DB211は、内部I/F部202に接続されたVPN−GW300の識別子を示す「SIP−URI」と、VPN−GW300のネットワークにおける位置を識別する「IPアドレス」とを対応付けて記憶する。
【0035】
図4に示す例では、VPN−GW情報DB211は、SIP−URI「1111」とIPアドレス「IP1」との対応付けを記憶し、SIP−URI「2222」とIPアドレス「IP2」との対応付けを記憶する。つまり、例えば、VPN−GW情報DB211は、SIP−URI「1111」で識別されてIPアドレス「IP1」であるVPN−GW300が、接続制御装置200と接続されていることを記憶する。
【0036】
制御部220は、OS(Operating System)などの制御プログラム、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、例えば、集積回路やCPU(Central Process Unit)、MPU(Micro Process Unit)などの電子回路が該当する。図3に示す例では、制御部220は、登録処理部221と、要求受信部222と、要求送信部223と、応答処理部224とを有する。制御部220について説明する際には、説明の便宜上、外部I/F部201や内部I/F部202には言及しないが、制御部220は、外部I/F部201や内部I/F部202を介してクライアント端末400やVPN−GW300と情報を送受信する。
【0037】
登録処理部221は、接続制御装置200と接続されたVPN−GW300についての情報をVPN−GW情報DB211に登録する。例えば、登録処理部221は、接続制御装置200と接続されたVPN−GW300から登録要求を受信すると、登録要求の送信元となるVPN−GW300のSIP−URIとIPアドレスとを対応付けてVPN−GW情報DB211に登録する。登録処理部221が登録するSIP−URIとIPアドレスとは、例えば、VPN−GW300から受信する登録要求に含まれる。
【0038】
要求受信部222は、クライアント端末400との間でVPN接続を確立するための情報である確立用情報を含むSIP接続要求を受信する。例えば、要求受信部222は、クライアント端末400のポート番号とIPアドレスとを含むSIP接続要求をクライアント端末400から受信する。
【0039】
また、要求受信部222は、クライアント端末400からVPN接続を切断する旨の指示であるVPN切断要求を外部I/F部201を介して受信する。例えば、要求受信部222は、クライアント端末400のポート番号とIPアドレスとを含むVPN切断要求をクライアント端末400から受信する。VPN切断要求は、「SIP BYE」とも称する。
【0040】
要求送信部223は、要求受信部222がSIP接続要求を受信すると、受信したSIP接続要求に含まれる確立用情報を複数あるVPN−GW300各々に送信する。例えば、要求送信部223は、SIP接続要求を受信すると、VPN−GW情報DB211からIPアドレスを取得し、取得したIPアドレス各々に対して、受信したSIP接続要求に含まれる確立用情報を送信する。なお、この際、要求送信部223は、受信したSIP接続要求そのものをVPN−GW300各々に送信しても良い。なお、要求受信部222と要求送信部223とは、「確立用情報送信部」とも称する。
【0041】
また、要求送信部223は、要求受信部222がVPN切断要求を受信すると、要求受信部222がSIP接続要求を受信した際と同様に、VPN切断要求を複数あるVPN−GW300各々に送信する。すなわち、要求送信部223は、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立しているVPN−GW300か否かに関係なく、VPN切断要求を一斉に送信する。
【0042】
応答処理部224は、確立用情報に対してVPN−GW300により送信された所定の応答を受信する。例えば、応答処理部224は、所定の応答として、ポート番号とIPアドレスとを含む確立用情報を受信する。例えば、VPN−GW300aとVPN−GW300bとがクライアント端末400とVPN接続を確立することが可能であり、確立用情報を接続制御装置200に送信した場合を用いて説明する。この場合、応答処理部224は、VPN−GW300aのポート番号とIPアドレスとを含む確立用情報をVPN−GW300aから受信し、VPN−GW300bのポート番号とIPアドレスとを含む確立用情報をVPN−GW300bから受信する。
【0043】
応答処理部224は、最初に受信した所定の応答をクライアント端末400に送信することで、最初に受信した所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御する。応答処理部224は、「応答受信部」「確立制御部」とも称する。
【0044】
例えば、VPN−GW300aからの確立用情報を受信した後に、VPN−GW300bからの確立用情報を受信した場合を用いて説明する。この場合、応答処理部224は、VPN−GW300aから受信した確立用情報をクライアント端末400に送信する一方、VPN−GW300bから受信した確立用情報をクライアント端末400に送信しない。
【0045】
また、例えば、応答処理部224は、最初に受信した所定の応答の送信元となるVPN−GW300以外のVPN−GW300に対して、キャンセルする旨を送信する。例えば、応答処理部224は、VPN−GW300bにキャンセルを送信する。
【0046】
また、応答処理部224は、クライアント端末400から受信したVPN切断要求をVPN−GW300に送信した後にVPN−GW300から切断許可応答を受信すると、受信した切断許可応答をVPN切断要求の送信元となるクライアント端末400に送信する。
【0047】
[VPN−GWの構成]
図5を用いて、実施例1におけるVPN−GW300の構成の一例を示す。図5は、実施例1におけるVPN−GWの構成の一例を示すブロック図である。図5に示すように、VPN−GW300は、通信I/F部301と、内部I/F部302と、記憶部310と、制御部320とを有する。
【0048】
通信I/F部301は、制御部320と接続される。通信I/F部301は、少なくとも1つのポートを有するインタフェースであり、イーサネット(登録商標)網等を介して接続される接続制御装置200との間の通信を制御する。例えば、通信I/F部301は、接続制御装置200からクライアント端末のポート番号やIPアドレスである確立用情報を受信する。
【0049】
内部I/F部302は、制御部320と接続される。内部I/F部302は、少なくとも1つのポートを有するインタフェースであり、VLANに接続されるサーバ装置や他のクライアント端末400との間の通信を制御する。例えば、内部I/F部302は、VPN接続されたクライアント端末400と、VPN−GW300に接続されるVLANに属するサーバ装置等の間で、共通鍵を用いたIPsec等でパケット通信を実施する。
【0050】
記憶部310は、制御部320と接続される。記憶部310は、制御部320による各種処理に必要なデータ及びプログラムを格納する。記憶部310は、例えば、半導体メモリ素子又はハードディスク、光ディスクなどの記憶装置が該当する。図5に示す例では、記憶部310は、リソースDB311と、接続状況DB312とを有する。
【0051】
図6に示すように、リソースDB311は、VPN−GW300のリソース状況を記憶する。図6は、実施例1におけるリソースDBに記憶された情報の一例を示す図である。図6に示す例では、リソースDB311は、CPU使用率、ネットワーク使用率、メモリ使用率、CPU使用率閾値、ネットワーク使用率閾値、メモリ使用率閾値などを記憶する。リソースDB311に記憶された情報は、後述する処理負荷識別部322によって格納される。
【0052】
「CPU使用率」は、VPN−GW300に搭載されたCPUの使用状況を示す。「ネットワーク使用率」は、VPN−GW300が他の装置との間で通信しているネットワークの状況を示す。「メモリ使用率」は、VPN−GW300に搭載されたCPU等によって使用されているメモリの状況を示す。「CPU使用率閾値」は、CPUの処理負荷の限度を示す。「ネットワーク使用率閾値」は、VPN−GW300が他の装置との間で通信しているネットワーク帯域等の限度を示す。「メモリ使用率閾値」は、VPN−GW300が搭載するメモリの使用限度を示す。
【0053】
図6に示す例では、リソースDB311は、CPU使用率「30%」を記憶し、ネットワーク使用率「60%」を記憶し、メモリ使用率「40%」を記憶し、CPU使用率閾値「80%」を記憶し、ネットワーク使用率閾値「70%」を記憶し、メモリ使用率閾値「70%」を記憶する。すなわち、リソースDB311は、VPN−GW300に搭載されたCPUが30%使用されていることを記憶し、VPN−GW300が他の装置との間で通信しているネットワークの60%が使用されていることを記憶し、VPN−GW300に搭載されたCPU等によって使用されているメモリが40%使用されていることを記憶する。また、リソースDB311は、CPUの使用率の限度が80%であることを記憶し、ネットワーク使用率の限度が70%であることを記憶し、メモリの使用率の限度が70%であることを記憶する。
【0054】
図7に示すように、接続状況DB312は、VPN−GW300が接続しているVPN接続状況を記憶する。図7は、実施例1における接続状況DBに記憶された情報の一例を示す図である。図7に示す例では、接続状況DB312は、接続可能台数「2」と現在の接続数「2」とを記憶する。「接続可能台数」は、VPN−GW300が接続可能な最大数を示し、管理者等によって予め設定される。「現在の接続数」は、例えば、処理負荷識別部322によって格納される。図7に示す例では、接続状況DB312は、VPN−GW300が接続可能な台数の最大数は2台であり、現在2台の装置と接続されていることを記憶する。
【0055】
制御部320は、通信I/F部301と内部I/F部302と記憶部310と接続される。制御部320は、OSなどの制御プログラム、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有する集積回路又はCPUやMPUなどの電子回路である。図5に示す例では、制御部320は、登録要求送信部321と、処理負荷識別部322と、情報受信部323と、接続応答部324と、VPN確立部325と、VPN切断部326とを有する。制御部320について説明する際には、説明の便宜上、通信I/F部301や内部I/F部302には言及しないが、制御部320は、通信I/F部301や内部I/F部302を介して接続制御装置200などと情報を送受信する。
【0056】
登録要求送信部321は、接続制御装置200に登録要求を送信する。例えば、登録要求送信部321は、自VPN−GW300を識別するSIP−URIとIPアドレスとを含む登録要求を定期的に送信する。
【0057】
処理負荷識別部322は、自装置における処理負荷状況を識別する。例えば、処理負荷識別部322は、VPN−GW300のリソース状況を定期的に収集し、リソースDB311に格納する。例えば、処理負荷識別部322は、CPU使用率とネットワーク使用率とメモリ使用率とをリアルタイム若しくは定期的に収集し、リソースDB311に格納する。また、処理負荷識別部322は、VPN接続されている装置数をリアルタイム若しくは定期的に収集し、接続状況DB312に格納する。なお、処理負荷識別部322は、VPN−GW300が搭載するOS等によって予め用意されたコマンドを用いることで、処理負荷状況を識別しても良い。
【0058】
情報受信部323は、接続制御装置200から確立用情報を受信する。例えば、情報受信部323は、クライアント端末400のポート番号とIPアドレスとを受信する。
【0059】
接続応答部324は、情報受信部323が確立用情報を受信すると、確立用情報の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定する。例えば、接続応答部324は、接続状況DB312を参照し、「現在の接続数」が「接続可能台数」より少ない場合に、接続を許可すると判定する。また、接続応答部324は、接続状況DB312を参照し、「現在の接続数」と「接続可能台数」とが一致する場合には、接続を許可しないと判定する。また、例えば、接続応答部324は、リソースDB311を参照し、「CPU使用率」、「ネットワーク使用率」、「メモリ使用率」のいずれかが「閾値」を超える場合には、接続を許可しないと判定する。なお、接続応答部324は、上述した接続状況とリソース状況との両方が条件を満たす場合に、接続を許可するようにしても良い。
【0060】
接続応答部324は、VPN接続を許可すると判定すると、所定の応答を接続制御装置200に送信する。例えば、接続応答部324は、自VPN−GW300のIPアドレスとポート番号とを含む確立用情報を接続制御装置200に送信する。また、接続応答部324は、VPN接続を許可しないと判定すると、接続を拒否することを示すエラー応答を接続制御装置200に送信する。接続応答部324は、「応答送信部」とも称する。
【0061】
ここで、接続応答部324は、処理負荷識別部322により識別された処理負荷状況が高い場合に低い場合と比較して所定の応答を遅く送信し、処理負荷状況が低い場合に高い場合と比較して所定の応答を早く送信する。
【0062】
例えば、接続応答部324は、リソースDB311を参照し、CPU使用率やネットワーク使用率、メモリ使用率が低ければ低いほど、確立用情報を早く送信し、CPU使用率やネットワーク使用率、メモリ使用率が高ければ高いほど、確立用情報を遅く送信する。また、例えば、接続応答部324は、接続状況DB312を参照し、現在の接続数が少なければ少ないほど早く確立用情報を送信し、現在の接続数が多ければ多いほど遅く確立用情報を送信する。また、例えば、接続応答部324は、接続可能台数に対して現在の接続数が占める割合が小さければ小さいほど早く確立用情報を送信し、接続可能台数に対して現在の接続数が占める割合が大きければ大きいほど遅く確立用情報を送信する。
【0063】
VPN確立部325は、接続制御装置200から受信した確立用情報を用いて、SIP接続要求の送信元となるクライアント端末400とVPN接続を確立する。例えば、VPN確立部325は、SIP接続要求の送信元となるクライアント端末400とIKEネゴシエーション(IKE認証)を実施し、VPNに必要な共通鍵を交換する。そして、VPN確立部325は、情報受信部323によって受信された確立用情報に含まれるクライアント端末400のIPアドレスとポート番号を用いてVPN接続を確立し、共通鍵を用いたIPsec等でパケット通信を実施する。また、VPN確立部325は、VPN接続を確立すると、接続状況DB312を更新する。
【0064】
ここで、VPN確立部325がVPN接続を確立するのは、接続応答部324が確立用情報を送信した上で、接続制御装置200が、キャンセルすることなく接続応答部324により送信された確立用情報をクライアント端末400に送信した場合になる。つまり、接続応答部324が、他のVPN−GW300の接続応答部324よりも早く確立用情報を送信した場合となる。
【0065】
VPN切断部326は、接続制御装置200からVPN切断要求を受信すると、VPNを切断するとともに、VPNを切断したことを示す応答を接続制御装置200に送信する。また、VPN切断部326は、VPN接続を切断すると、接続状況DB312を更新する。
【0066】
[登録処理]
図8を用いて、実施例1におけるVPN−GW300を接続制御装置200に登録する処理の流れの一例を示す。図8は、実施例1におけるVPN−GWを接続制御装置に登録する処理の流れの一例を示すシーケンス図である。図8では、記載の便宜上、クライアント端末400を併せて示した。図8に示す例では、VPN−GW300aが登録要求を送信し、その後、VPN−GW300bが登録要求を送信する場合を用いて説明するが、本発明はこれに限定されるものではない。
【0067】
VPN−GW300aは、登録要求を接続制御装置200に送信する(ステップS201)。なお、登録要求は、「REGISTER」とも記載する。例えば、VPN−GW300aの登録要求送信部321が、VPN−GW300aのSIP−URIとIPアドレスとを含む登録要求を送信する。
【0068】
その後、接続制御装置200は、受信した登録要求をVPN−GW情報DB211に登録する(ステップS202)。例えば、接続制御装置200は、VPN−GW300aのSIP−URIとIPアドレスとを登録する。また、その後、接続制御装置200は、登録した旨を示す応答をVPN−GW300aに送信する(ステップS203)。
【0069】
また、同様に、VPN−GW300bは、VPN−GW300bのSIP−URIとIPアドレスとを含む登録要求を送信し(ステップS204)、接続制御装置200が、VPN−GW300bのSIP−URIとIPアドレスとをVPN−GW情報DB211に登録する(ステップS205)。また、その後、接続制御装置200は、登録した旨を示す応答をVPN−GW300bに送信する(ステップS206)。
【0070】
[接続制御装置による処理]
図9を用いて、実施例1における接続制御装置200による処理の流れの一例を示す。図9は、実施例1における接続制御装置による処理の流れの一例を示すフローチャートである。図9では、説明の便宜上、VPN−GW300についての情報がVPN−GW情報DB211に既に登録されているものとして説明する。また、図9に示す例では、接続制御装置200が、クライアント端末400からSIP接続要求を受信し、受信したSIP接続要求をVPN−GW300a〜VPN−GW300n各々に対して送信し、その後、VPN−GW300aからの確立用情報を最初に受信した場合を用いて説明する。
【0071】
図9に示すように、接続制御装置200は、要求受信部がSIP接続要求を受信すると(ステップS301肯定)、要求送信部223は、VPN−GW情報DB211に登録されたVPN−GW300各々にSIP接続要求を送信する(ステップS302)。なお、接続制御装置200は、SIP接続要求に含まれる確立用情報を選択的に送信しても良い。
【0072】
その後、応答処理部224は、VPN−GW300aから確立用情報を最初に受信すると(ステップS303)、VPN−GW300aからの確立用情報をクライアント端末400に送信する(ステップS304)。また、応答処理部224は、VPN−GW300a以外のVPN−GW300に対してキャンセルする旨を送信する(ステップS305)。
【0073】
[VPN−GWによる処理]
図10を用いて、実施例1におけるVPN−GW300による処理の流れの一例を示す。図10は、実施例1におけるVPN−GWによる処理の流れの一例を示すフローチャートである。
【0074】
図10に示すように、VPN−GW300では、情報受信部323がSIP接続要求を受信すると(ステップS401肯定)、接続応答部324は、SIP接続要求の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定する(ステップS402)。例えば、接続応答部324は、接続状況DB312を参照し、「現在の接続数」が「接続可能台数」より少ない場合に、接続を許可すると判定する。また、接続応答部324は、接続状況DB312を参照し、「現在の接続数」と「接続可能台数」と一致する場合に、接続を拒否すると判定する。
【0075】
ここで、接続応答部324は、許可すると判定すると(ステップS403肯定)、接続を許可する旨の所定の応答を接続制御装置200に送信する(ステップS404)。例えば、接続応答部324は、自VPN−GW300のIPアドレスとポート番号とを含む確立用情報を接続制御装置200に送信する。
【0076】
そして、VPN確立部325は、クライアント端末400とIKE通信を開始してVPN接続を確立する(ステップS405)。つまり、VPN確立部325は、接続制御装置200から受信したSIP接続要求に含まれる確立用情報を用いて、SIP接続要求の送信元となるクライアント端末400とIKEネゴシエーション(IKE認証)を実施し、VPNに必要な共通鍵を交換する。そして、VPN確立部325は、情報受信部323によって取得されたクライアント端末400のIPアドレスとポート番号を用いてVPN接続を確立し、共通鍵を用いたIPsec等でパケット通信を実施する。
【0077】
なお、ここで、接続制御装置200は、複数あるVPN−GW300各々にSIP接続要求を送信しており、接続応答部324が所定の応答を送信したとしても、自VPN−GW300がVPN接続を確立するとは限らない。自VPN−GW300がVPN接続を確立するのは、自VPN−GW300が送信した所定の応答が接続制御装置200にとって最初の応答であり、自VPN−GW300が送信した所定の応答をクライアント端末400に送信された場合となる。
【0078】
図10の説明に戻る。接続応答部324は、許可しないと判定すると(ステップS403否定)、接続を拒否することを示すエラー応答を接続制御装置200に送信する(ステップS406)。
【0079】
[VPN接続切断時における処理]
図11を用いて、実施例1におけるSIP−DUシステム100におけるVPN接続切断時における処理の流れの一例を示す。図11は、実施例1におけるSIP−DUシステムにおけるVPN接続切断時における処理の流れの一例を示すシーケンス図である。図11では、説明の便宜上、VPN−GW300aとVPN−GW300bとを用いて説明する。また、図11では、VPN−GW300aとクライアント端末400とがVPN接続を確立している場合を用いて説明する。
【0080】
図11に示すように、クライアント端末400とVPN−GW300aとの間におけるIKEが切断されると(ステップS501)、クライアント端末400は、VPN接続を切断する旨の指示であるVPN切断要求を接続制御装置200に送信する(ステップS502)。なお、VPN切断要求を「BYE」とも記載する。
【0081】
そして、接続制御装置200は、VPN切断要求を受信すると、接続制御装置200と接続されたVPN−GW300各々にVPN切断要求を送信する(ステップS503、S504)。すなわち、要求送信部223は、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立しているVPN−GW300か否かに関係なく、VPN切断要求を一斉に送信する。
【0082】
その後、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立していないVPN−GW300bは、接続が存在しない旨の応答を接続制御装置200に送信する(ステップS505)。また、VPN切断要求の送信元となるクライアント端末400とVPN接続を確立しているVPN−GW300aは、VPN接続を切断し(ステップS506)、切断した旨の応答を接続制御装置200に送信する(ステップS507)。
【0083】
そして、接続制御装置200は、VPN−GW300aから受信した切断した旨の応答をクライアント端末400に送信する(ステップS508)。
【0084】
[実施例1の効果]
上述したように、実施例1に係るSIP−DUシステム100によれば、接続制御装置200は、SIP接続要求を受信すると、SIP接続要求に含まれる確立用情報を複数あるVPN−GW300各々に送信する。そして、VPN−GW300は、確立用情報を受信すると、所定の応答を接続制御装置200に送信する。そして、接続制御装置200は、VPN−GW300により送信された所定の応答を受信し、最初に受信した所定の応答をクライアント端末400に送信することで、最初に受信された所定の応答の送信元となるVPN−GW300とクライアント端末400とがVPN接続を確立するように制御する。この結果、実施例1によれば、大量のVPN接続要求を受信した場合でも、処理負荷が低いVPN−GW300にVPN接続を確立させることができ、接続要求各々を迅速に処理することが可能である。
【0085】
すなわち、VPN−GW300が確立用情報を受信した後に応答を返すまでの速度は、VPN−GW300の処理負荷状況に応じて変化する。このため、接続制御装置200は、最初に受信した応答の送信元となるVPN−GW300にVPN接続を確立させることで、他のVPN−GW300と比較して処理負荷状況が軽いと考えられるVPN−GW300にVPN接続を実行させることができ、接続要求各々を迅速に処理することが可能である。
【0086】
また、この際、接続制御装置200は、VPN−GW300各々の処理負荷状況を把握する必要がなく、VPN−GW300各々に確立用情報を送信し、最初に受信した応答をクライアント端末400に送信すれば良い。接続制御装置200に対して処理負荷をかけることなく実現することが可能である。
【0087】
図12は、実施例1におけるSIP−DUシステムによる効果の一例を示す図である。図12において、601〜603は、データセンタを示し、604及び605は、クライアント端末を示し、607は、SIP−DUシステムを示す。図12に示すように、クライアント端末604や605は、データセンタ601〜603を利用する場合には、SIP−DUシステム100にSIPダイヤルアップし、VPN接続を確立した上で、データセンタとデータの送受信を行う。
【0088】
図12に示すように、SIP−DUシステムは、複数あるクライアント端末からのアクセスを一手に処理することになり、処理負荷がかかっていた。特に、SIP−DUシステム100には、SIPを用いた処理をする処理部と、VPN接続を確立する処理をする処理部とでは、VPN接続を確立する処理をする処理部に大きな処理がかかる。この結果、大量の接続を処理できなくなることも考えられる。
【0089】
そこで、実施例1におけるSIP−DUシステム100では、SIPを用いた処理をする処理部を接続制御装置200に受け持たせ、VPN接続を確立する処理をする処理部をVPN−GW300に受け持たせた。また、その上で、接続制御装置200が、最初に応答を返したVPN−GW300にVPN接続を確立させるようにすることで、他のVPN−GW300と比較して処理負荷状況が軽いと考えられるVPN−GW300にVPN接続を実行させることができ、接続要求各々を迅速に処理することが可能である。
【0090】
また、実施例1によれば、VPN−GW300は、自装置における処理負荷状況を識別する。また、VPN−GW300は、確立用情報を受信すると、処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、処理負荷状況が低い場合に高い場合と比較して所定の応答を早く送信する。この結果、接続制御装置200が最初に受信した応答の送信元となるVPN−GW300にVPN接続を確立させることで、他のVPN−GW300と比較して処理負荷状況が軽いVPN−GW300に確実にVPN接続を実行させることができ、接続要求を迅速に処理することが可能である。
【0091】
また、すべてのVPN−GW300について処理負荷状況が大きかったとしても、VPN−GW300がクライアント端末400とVPN接続が可能な状況にあれば、いずれは、VPN−GW300が確立用情報を送信することになり、いずれかのVPN−GW300に確実にVPN接続を確立させることが可能である。
【0092】
また、実施例1によれば、VPN−GW300は、確立用情報を受信すると、確立用情報の送信元となるクライアント端末400とVPN接続を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を接続制御装置に送信する。この結果、接続制御装置200は、VPN接続を確立可能なVPN−GW300からの応答をクライアント端末400から送信することになり、VPN接続を確立することが可能なVPN−GW300に直接クライアント端末400とのVPN接続を確立させることが可能である。
【実施例2】
【0093】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、その他の実施例にて実施されても良い。そこで、以下では、その他の実施例を示す。
【0094】
[VPN−GW情報DBからの削除]
例えば、VPN−GW300は、自VPN−GW300のSIP−URIとIPアドレスを接続制御装置200から削除する場合に、削除する旨の削除要求を接続制御装置200に送信しても良い。また、例えば、接続制御装置200は、VPN−GW情報DB211に登録された後一定期間経過した情報を削除することで、一定期間登録要求が送信されなかったVPN−GW300の情報を削除しても良い。
【0095】
[IKE認証]
例えば、上述した実施例1で説明したIKEネゴシエーション時に、IKE認証による証明書を交換するようにしても良い。こうすることで、正当な機関から証明された正当なクライアント端末400か否かを判定することができる。
【0096】
[VPN−GW]
また、例えば、上述した実施例では、VPN−GW300が、処理負荷状況を考慮し、処理負荷状況が低ければ高い場合と比較して早く応答を送信し、処理負荷状況が高ければ低い場合と比較して遅く応答を送信する場合について示した。ただし、本発明はこれに限定されるものではなく、処理負荷状況を考慮することなく、応答を送信しても良い。例え、処理負荷状況を考慮することなく応答を返したとしても、VPN−GW300の処理負荷状況が高ければ、処理負荷状況が低い場合と比較して、相対的に、種々の処理を実行するのに時間をより要することになる。この結果、処理負荷状況を考慮することなく応答を返したとしても、結果として、処理負荷状況が高ければ低い場合と比較して応答を遅く返すことになるからである。
【0097】
[システム構成]
また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。例えば、VPN−GW300の情報を接続制御装置200に登録する処理を手動にて実行しても良い。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる(例えば、図1〜図11)。
【0098】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。接続制御装置200とVPN−GW300とを1つの筐体に収めても良い。
[プログラム]
図13は、仮想通信路接続プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。図13に例示するように、コンピュータ3000は、例えば、メモリ3010と、CPU(Central Processing Unit)3020と、ハードディスクドライブインタフェース3030と、ディスクドライブインタフェース3040と、シリアルポートインタフェース3050と、ビデオアダプタ3060と、ネットワークインタフェース3070とを有する。コンピュータ3000の各部はバス3100によって接続される。
【0099】
メモリ3010は、図13に例示するように、ROM3011及びRAM3012を含む。ROM3011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース3030は、図13に例示するように、ハードディスクドライブ3080に接続される。ディスクドライブインタフェース3040は、図13に例示するように、ディスクドライブ3090に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ3090に挿入される。シリアルポートインタフェース3050は、図13に例示するように、例えばマウス3051、キーボード3052に接続される。ビデオアダプタ3060は、図13に例示するように、例えばディスプレイ3061に接続される。
【0100】
ここで、図13に例示するように、ハードディスクドライブ3080は、例えば、OS3081、アプリケーションプログラム3082、プログラムモジュール3083、プログラムデータ3084を記憶する。すなわち、開示の技術に係る更新プログラムは、コンピュータによって実行される指令が記述されたプログラムモジュール3083として、例えばハードディスクドライブ3080に記憶される。具体的には、上記実施例で説明した制御部220や制御部320の各部と同様の情報処理を実行する手順各々が記述されたプログラムモジュールが、ハードディスクドライブ3080に記憶される。
【0101】
また、上記実施例で説明した記憶部210や記憶部310に記憶されるデータのように、更新プログラムによる情報処理に用いられるデータは、プログラムデータ3084として、例えばハードディスクドライブ3080に記憶される。そして、CPU3020が、ハードディスクドライブ3080に記憶されたプログラムモジュール3083やプログラムデータ3084を必要に応じてRAM3012に読み出し、各種の手順を実行する。
【0102】
なお、仮想通信路接続プログラムに係るプログラムモジュール3083やプログラムデータ3084は、ハードディスクドライブ3080に記憶される場合に限られない。例えば、プログラムモジュール3083やプログラムデータ3084は、着脱可能な記憶媒体に記憶されても良い。この場合、CPU3020は、ディスクドライブなどの着脱可能な記憶媒体を介してデータを読み出す。また、同様に、更新プログラムに係るプログラムモジュール3083やプログラムデータ3084は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されても良い。この場合、CPU3020は、ネットワークインタフェースを介して他のコンピュータにアクセスすることで各種データを読み出す。
【0103】
[その他]
なお、本実施例で説明した仮想通信路接続プログラムは、インターネットなどのネットワークを介して配布することができる。また、仮想通信路接続プログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【符号の説明】
【0104】
100 SIP−DUシステム
200 接続制御装置
201 外部I/F部
202 内部I/F部
210 記憶部
211 VPN−GW情報DB
220 制御部
221 登録処理部
222 要求受信部
223 要求送信部
224 応答処理部
300 VPN−GW
301 通信I/F部
302 内部I/F部
310 記憶部
320 制御部
321 登録要求送信部
322 処理負荷識別部
323 情報受信部
324 接続応答部
325 VPN確立部
326 VPN切断部
400 クライアント端末
【特許請求の範囲】
【請求項1】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムであって、
前記第1の端末は、
前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信部を有し、
前記第2の端末は、
前記確立用情報送信部により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信部を有し、
前記第1の端末は、
前記応答送信部により送信された前記所定の応答を受信する応答受信部と、
前記応答受信部により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御部と
を備えたことを特徴とする仮想通信路接続システム。
【請求項2】
前記第2の端末は、
自装置における処理負荷状況を識別する処理負荷識別部を更に備え、
前記第2の端末の前記応答送信部は、前記確立用情報を受信すると、前記処理負荷識別部により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く送信することを特徴とする請求項1に記載の仮想通信路接続システム。
【請求項3】
前記第2の端末の前記応答送信部は、前記確立用情報送信部により送信された前記確立用情報を受信すると、当該確立用情報の送信元となる前記クライアント端末と前記仮想通信路を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を前記第1の端末に送信することを特徴とする請求項1又は2に記載の仮想通信路接続システム。
【請求項4】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムの制御方法であって、
前記第1の端末が、
前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信工程を含み、
前記第2の端末が、
前記確立用情報送信工程により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信工程を含み、
前記第1の端末が、
前記応答送信工程により送信された前記所定の応答を受信する応答受信工程と、
前記応答受信工程により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御工程と
を含んだことを特徴とする制御方法。
【請求項5】
前記第2の端末が、
自装置における処理負荷状況を識別する処理負荷識別工程を更に含み、
前記応答送信工程は、前記確立用情報を受信すると、前記処理負荷識別工程により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く送信することを特徴とする請求項4に記載の制御方法。
【請求項6】
前記応答送信工程は、前記確立用情報送信工程により送信された前記確立用情報を受信すると、当該確立用情報の送信元となる前記クライアント端末と前記仮想通信路を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を前記第1の端末に送信することを特徴とする請求項4又は5に記載の制御方法。
【請求項7】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムの制御方法をコンピュータに実行させる制御プログラムであって、
前記第1の端末としてのコンピュータに、
前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信手順を実行させ、
前記第2の端末としてのコンピュータに、
前記確立用情報送信手順により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信手順を実行させ、
前記第1の端末としてのコンピュータに、
前記応答送信手順により送信された前記所定の応答を受信する応答受信手順と、
前記応答受信手順により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御手順と
を実行させることを特徴とする制御プログラム。
【請求項8】
前記第2の端末としてのコンピュータに、
自装置における処理負荷状況を識別する処理負荷識別手順を更に実行させ、
前記応答送信手順は、前記確立用情報を受信すると、前記処理負荷識別手順により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く送信することを特徴とする請求項7に記載の制御プログラム。
【請求項9】
前記応答送信手順は、前記確立用情報送信手順により送信された前記確立用情報を受信すると、当該確立用情報の送信元となる前記クライアント端末と前記仮想通信路を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を前記第1の端末に送信することを特徴とする請求項7又は8に記載の制御プログラム。
【請求項10】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムにおける当該第1の端末であって、
クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を、前記複数ある第2の端末各々に送信する確立用情報送信部と、
前記第2の端末により送信された前記所定の応答を受信する応答受信部と、
前記応答受信部により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御部と
を備えたことを特徴とする第1の端末。
【請求項11】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムにおける当該第2の端末であって、
第1の端末を介してクライアント端末との間で仮想通信路を確立する第2の端末であって、
自装置における処理負荷状況を識別する処理負荷識別部と、
前記第1の端末が最初に受信した所定の応答の送信元となる前記第2の端末と前記クライアント端末とが、仮想通信路を確立するように制御する前記第1の端末から、前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を受信すると、前記処理負荷識別部により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く当該第1の端末に送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く当該第1の端末に送信する応答送信部と
を備えたことを特徴とする第2の端末。
【請求項1】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムであって、
前記第1の端末は、
前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信部を有し、
前記第2の端末は、
前記確立用情報送信部により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信部を有し、
前記第1の端末は、
前記応答送信部により送信された前記所定の応答を受信する応答受信部と、
前記応答受信部により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御部と
を備えたことを特徴とする仮想通信路接続システム。
【請求項2】
前記第2の端末は、
自装置における処理負荷状況を識別する処理負荷識別部を更に備え、
前記第2の端末の前記応答送信部は、前記確立用情報を受信すると、前記処理負荷識別部により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く送信することを特徴とする請求項1に記載の仮想通信路接続システム。
【請求項3】
前記第2の端末の前記応答送信部は、前記確立用情報送信部により送信された前記確立用情報を受信すると、当該確立用情報の送信元となる前記クライアント端末と前記仮想通信路を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を前記第1の端末に送信することを特徴とする請求項1又は2に記載の仮想通信路接続システム。
【請求項4】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムの制御方法であって、
前記第1の端末が、
前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信工程を含み、
前記第2の端末が、
前記確立用情報送信工程により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信工程を含み、
前記第1の端末が、
前記応答送信工程により送信された前記所定の応答を受信する応答受信工程と、
前記応答受信工程により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御工程と
を含んだことを特徴とする制御方法。
【請求項5】
前記第2の端末が、
自装置における処理負荷状況を識別する処理負荷識別工程を更に含み、
前記応答送信工程は、前記確立用情報を受信すると、前記処理負荷識別工程により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く送信することを特徴とする請求項4に記載の制御方法。
【請求項6】
前記応答送信工程は、前記確立用情報送信工程により送信された前記確立用情報を受信すると、当該確立用情報の送信元となる前記クライアント端末と前記仮想通信路を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を前記第1の端末に送信することを特徴とする請求項4又は5に記載の制御方法。
【請求項7】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムの制御方法をコンピュータに実行させる制御プログラムであって、
前記第1の端末としてのコンピュータに、
前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を前記複数ある第2の端末各々に送信する確立用情報送信手順を実行させ、
前記第2の端末としてのコンピュータに、
前記確立用情報送信手順により送信された前記確立用情報を受信すると所定の応答を前記第1の端末に送信する応答送信手順を実行させ、
前記第1の端末としてのコンピュータに、
前記応答送信手順により送信された前記所定の応答を受信する応答受信手順と、
前記応答受信手順により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御手順と
を実行させることを特徴とする制御プログラム。
【請求項8】
前記第2の端末としてのコンピュータに、
自装置における処理負荷状況を識別する処理負荷識別手順を更に実行させ、
前記応答送信手順は、前記確立用情報を受信すると、前記処理負荷識別手順により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く送信することを特徴とする請求項7に記載の制御プログラム。
【請求項9】
前記応答送信手順は、前記確立用情報送信手順により送信された前記確立用情報を受信すると、当該確立用情報の送信元となる前記クライアント端末と前記仮想通信路を確立することを許可するか否かを判定し、許可すると判定した場合に所定の応答を前記第1の端末に送信することを特徴とする請求項7又は8に記載の制御プログラム。
【請求項10】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムにおける当該第1の端末であって、
クライアント端末との間で仮想通信路を確立するための情報である確立用情報を含むSIP接続要求を受信すると、受信した当該SIP接続要求に含まれる当該確立用情報を、前記複数ある第2の端末各々に送信する確立用情報送信部と、
前記第2の端末により送信された前記所定の応答を受信する応答受信部と、
前記応答受信部により最初に受信された前記所定の応答を前記クライアント端末に送信することで、当該最初に受信された前記所定の応答の送信元となる前記第2の端末と当該クライアント端末とが仮想通信路を確立するように制御する確立制御部と
を備えたことを特徴とする第1の端末。
【請求項11】
第1の端末と複数ある第2の端末とを有し、当該第2の端末が当該第1の端末を介してクライアント端末との間で仮想通信路を確立する仮想通信路接続システムにおける当該第2の端末であって、
第1の端末を介してクライアント端末との間で仮想通信路を確立する第2の端末であって、
自装置における処理負荷状況を識別する処理負荷識別部と、
前記第1の端末が最初に受信した所定の応答の送信元となる前記第2の端末と前記クライアント端末とが、仮想通信路を確立するように制御する前記第1の端末から、前記クライアント端末との間で仮想通信路を確立するための情報である確立用情報を受信すると、前記処理負荷識別部により識別された処理負荷状況が高い場合に低い場合と比較して前記所定の応答を遅く当該第1の端末に送信し、当該処理負荷状況が低い場合に高い場合と比較して前記所定の応答を早く当該第1の端末に送信する応答送信部と
を備えたことを特徴とする第2の端末。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2012−85062(P2012−85062A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−228937(P2010−228937)
【出願日】平成22年10月8日(2010.10.8)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願日】平成22年10月8日(2010.10.8)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]