中継サーバ及び中継通信システム
【課題】仮想ネットワークを開始した後にネットワークを構成する機器が停止した場合にも柔軟に対応可能なVPNを構築できる中継サーバを提供する。
【解決手段】中継サーバは、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、通信制御部と、を備える。VPNグループ情報記憶部は、VPNグループを構成するルーティング機器及びルーティングセッション情報を記憶する。アドレスフィルタ情報記憶部は、パケットの送信先としてルーティング機器が指定可能な相手を示すアドレスフィルタ情報を記憶する。制御部は、VPNを開始した後に、あるルーティング機器がVPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【解決手段】中継サーバは、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、通信制御部と、を備える。VPNグループ情報記憶部は、VPNグループを構成するルーティング機器及びルーティングセッション情報を記憶する。アドレスフィルタ情報記憶部は、パケットの送信先としてルーティング機器が指定可能な相手を示すアドレスフィルタ情報を記憶する。制御部は、VPNを開始した後に、あるルーティング機器がVPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、主として、異なるLAN(Local Area Network)に接続されている端末間の通信を可能とする中継サーバに関する。
【背景技術】
【0002】
従来から、仮想プライベートネットワーク(Virtual Private Network,VPN)と呼ばれる通信技術が知られている(例えば、特許文献1を参照)。このVPNは、例えば、地域ごとに設けられた複数の支社(拠点)のLANに接続された端末同士でインターネットを介して通信する用途に用いられている。前記VPNを利用すれば、遠隔地にある他のLANを、あたかも直接接続されているネットワークであるかのように使用することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002−217938号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、この種のシステムは硬直的なものになり易く、拡張性、柔軟性のあるシステムを構築することは容易でない。例えば、上記特許文献1のような通信システムは、システムを構成する機器のうち選択された一部の機器だけで仮想ネットワークを構築することはできない。また、仮想ネットワークを開始した後に、ネットワークを構成する機器が停止してしまう場合に、仮想ネットワークが適切に動作しなくなることが考えられる。
【0005】
本発明は以上の事情に鑑みてされたものであり、その主要な目的は、仮想ネットワークを開始した後にネットワークを構成する機器が停止した場合にも柔軟に対応可能なVPNを構築できる中継サーバを提供することにある。
【課題を解決するための手段及び効果】
【0006】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【0007】
本発明の第1の観点によれば、以下の構成の中継サーバが提供される。即ち、この中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、制御部と、を備える。前記中継グループ情報記憶部は、自身との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに接続されたクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継グループ情報及び前記中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶する。前記アドレスフィルタ情報記憶部は、パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。前記制御部は、前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【0008】
これにより、中継サーバは、中継通信システムを構成する他の通信機器(他の中継サーバ及びクライアント端末)から選択されたルーティング機器とVPNを構築できるため、必要な通信機器との間でのみファイルの共有等を行うことができる。また、中継サーバは、あるルーティング機器が接続不良又はメンテナンス等によってVPNグループの構成要素として機能しないことを検知したときに、VPNを維持したままで、当該ルーティング機器との間で確立されたルーティングセッションを停止させることができる。従って、状況の変化に柔軟に対応可能なVPNを構築できる。
【0009】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、この中継サーバは、第2中継サーバの識別情報と、当該第2中継サーバを介して広域通信網に接続されるクライアント端末の識別情報と、を対応付けて記憶する中継サーバ情報記憶部を備える。前記第2中継サーバの通信が停止することを検知したときに、前記VPNグループ情報記憶部及び前記中継サーバ情報記憶部の記憶内容に基づいて、前記第2中継サーバを介して広域通信網に接続されるクライアント端末の中にルーティングポイントとして機能するクライアント端末があるか否かを判断する。ルーティングポイントとして機能するクライアント端末があれば、当該クライアント端末との間で確立されたルーティングセッションを停止させる制御を行う。
【0010】
これにより、中継サーバは、他の中継サーバの通信が停止することを検知するだけで、当該他の中継サーバと接続され、かつルーティングポイントとして機能するクライアント端末との間で確立されたルーティングセッションを停止させることができる。従って、VPNグループとして機能しなくなる旨の信号をクライアント端末側から送信する必要をなくすことができる。
【0011】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、中継サーバは、受信したパケットのあて先が、自身の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、当該あて先にパケットを送信する。中継サーバは、受信したパケットのあて先が、自身以外の前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器にパケットを送信する。中継サーバは、受信したパケットのあて先が、前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されていないときは、パケットを送信しない。
【0012】
これにより、中継サーバは、アドレスフィルタ情報に基づいて適切にルーティングを行うことができる。
【0013】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、当該ルーティング機器が前記VPNグループの構成要素として機能しなくなる結果として、当該VPNグループの構成要素であるルーティング機器が1つになる場合は、当該VPNグループを停止する制御を行う。
【0014】
これにより、実質的にネットワークとして機能しなくなったVPNを自動的に停止させることができる。
【0015】
本発明の第2の観点によれば、以下の構成の中継通信システムが提供される。即ち、この中継通信システムは、複数の中継サーバと、クライアント端末と、を備える。前記クライアント端末は、前記中継サーバを介して互いに接続可能である。前記中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、制御部と、を備える。前記中継グループ情報記憶部は、当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継サーバ及び前記クライアント端末のうちルーティングポイントとして設定されたルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークを利用して通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶する。前記アドレスフィルタ情報記憶部は、パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。前記制御部は、前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【0016】
これにより、中継サーバ及びクライアント端末から選択されたルーティング機器を用いてVPNを構築できるため、必要な機器との間でのみファイルの共有等を行うことが可能となる。また、あるルーティング機器が接続不良及びメンテナンス等によってVPNグループの構成要素として機能しないことを検知したときに、VPNグループを実行したままで当該ルーティング機器との間で確立されたルーティングセッションを停止させる構成であるため、状況の変化に柔軟に対応可能なVPNを構築できる。
【図面の簡単な説明】
【0017】
【図1】本発明の一実施形態に係る中継通信システムの全体構成を示す説明図。
【図2】中継サーバの機能ブロック図。
【図3】中継グループ情報の内容を示す図。
【図4】中継サーバ情報の内容を示す図。
【図5】クライアント端末情報の内容を示す図。
【図6】VPNグループ情報の内容を示す図。
【図7】アドレスフィルタ情報記憶部の記憶内容を示す図。
【図8】VPNグループを作成する処理を示すフローチャート。
【図9】VPNを開始する処理の前半部を示すフローチャート。
【図10】VPNを開始する処理の後半部を示すフローチャート。
【図11】VPNグループを作成する通信処理及びアドレスフィルタ情報を更新する通信処理を示すシーケンス図。
【図12】ルーティングセッションを確立する通信処理及びパケットの送信を行う通信処理を示すシーケンス図。
【図13】ルーティング機器が停止する旨の通知を受けたときの処理の前半部を示すフローチャート。
【図14】ルーティング機器が停止する旨の通知を受けたときの処理の後半部を示すフローチャート。
【図15】中継サーバ3がVPNから外れるときの通信処理を示すシーケンス図。
【図16】中継サーバ2が停止するときの通信処理を示すシーケンス図。
【発明を実施するための形態】
【0018】
次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本発明の一実施形態に係る中継通信システム100の全体構成を示す説明図である。
【0019】
図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数のLAN10,20,30,40で構成されている。それぞれのLAN10,20,30,40は、限定された場所で構築される比較的小規模なネットワークであり、それぞれが物理的に離れた場所に構築されている。なお、本実施形態ではWAN80としてインターネットが使用されている。
【0020】
以下、それぞれのLANを具体的に説明する。図1に示すように、LAN10には、中継サーバ1と、クライアント端末11と、処理装置12と、が接続されている。LAN20には、中継サーバ2と、クライアント端末21と、処理装置22と、処理装置23と、が接続されている。LAN30には、中継サーバ3と、クライアント端末31と、処理装置32と、処理装置33と、が接続されている。LAN40には、中継サーバ4と、クライアント端末41と、処理装置42と、が接続されている。
【0021】
それぞれの中継サーバ1,2,3,4は、LAN10,20,30,40だけでなくWAN80にも接続されているため、同一のLANに接続されたクライアント端末と通信可能であるだけでなく、他のLANに配置された中継サーバと通信可能となっている。そのため、中継サーバ1,2,3,4には、グローバルIPアドレスに加えてプライベートIPアドレスが付与されている。
【0022】
クライアント端末11,21,31,41は、例えばパーソナルコンピュータで構成されており、中継サーバ1,2,3,4を介して相互に通信を行うことができる。処理装置12,22,23,32,33,42は、例えばパーソナルコンピュータで構成されており、LAN10,20,30,40を介してクライアント端末11,21,31,41にパケットを送信可能である。
【0023】
次に、中継サーバ1,2,3,4について説明する。なお、これらの4つの中継サーバは、記憶された一部のデータを除いて略同一の構成であるため、代表して中継サーバ1について説明する。初めに、図2を参照して、中継サーバ1が備える構成について説明する。図2は、中継サーバ1,2,3,4の機能ブロック図である。
【0024】
図2に示すように、中継サーバ1は、記憶部50と、制御部60と、インタフェース部70と、を備えている。
【0025】
インタフェース部70は、プライベートIPアドレスを利用して、LAN10内の端末に対して通信を行うことができる。また、インタフェース部70は、グローバルIPアドレスを利用して、WAN80を経由した通信を行うことができる。
【0026】
制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信処理を制御することができる。図2に示すように、制御部60は、インターフェースドライバ61と、LAN側IPパケット処理部62と、通信制御部63と、WAN側IPパケット処理部64と、を備えている。
【0027】
インターフェースドライバ61は、インタフェース部70を制御するドライバソフトウェアである。LAN側IPパケット処理部62は、LAN10から受信したパケットに適宜の処理を行って通信制御部63に出力する。WAN側IPパケット処理部64は、WAN80から受信したパケットに適宜の処理を行って通信制御部63に出力する。
【0028】
通信制御部63は、受信したパケットを、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて送信先を決定し、決定した送信先へ送信する。また、通信制御部63は、他の端末から受信した情報に基づいて、記憶部50の記憶内容を更新させることができる。
【0029】
記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種データを保存可能である。記憶部50は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、クライアント端末情報記憶部53と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、を備えている。以下、図3から図7までを参照して、記憶部50が備える構成について説明する。図3は、中継グループ情報の内容を示す図である。図4は、中継サーバ情報の内容を示す図である。図5は、クライアント端末情報の内容を示す図である。図6は、VPNグループ情報の内容を示す図である。図7は、アドレスフィルタ情報の内容を示す図である。
【0030】
中継グループ情報記憶部51は、中継グループと、当該中継グループを構成する中継サーバと、を示した中継グループ情報を記憶している。
【0031】
図3に示すように、中継グループ情報においては、groupタグと、このgroupタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関するグループ情報511が記述されている。このグループ情報511としては、中継グループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、中継グループの名称(「name」)と、が記述されている。siteタグには、中継グループを構成する中継サーバに関するグループ構成情報512が記述されている。このグループ構成情報512には、当該中継サーバの識別情報(「id」)が記述されている。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、特定の中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
【0032】
なお、この中継グループ情報は、当該中継グループを構成する中継サーバ1,2,3,4の間で情報が共有されている。そして、ある中継サーバにおいて中継グループを変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継グループ情報が更新される。このようにして、中継グループ情報が動的に共有される。
【0033】
中継サーバ情報記憶部52は、中継通信を行う中継サーバ及び当該中継サーバに所属するクライアント端末の概要を示す中継サーバ情報を記憶している。
【0034】
図4に示す中継サーバ情報においては、中継サーバごとに記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには中継サーバ1に関するサーバ情報521が記述されている。このサーバ情報521としては、中継サーバの識別情報(「id」)と、中継サーバの名称(「name」)と、起動情報(「stat」)と、が記述されている。なお、statの内容が「active」の場合は中継サーバが中継通信システム100にログインしていることを示し、statが空欄であるときはログオフ中であることを示す。siteタグの子要素であるnodeタグには、中継サーバに所属するクライアント端末を示す所属情報522が記述されている。所属情報522としては、所属する中継グループの名称(「group」)と、クライアント端末の識別情報(「id」)と、クライアント端末の名称(「name」)と、ログイン先の中継サーバの識別情報(「site」)と、が記述されている。なお、クライアント端末が中継サーバ(中継通信システム100)にログインしていないときは、「site」は空欄となる。
【0035】
なお、中継グループによる通信は、上記の中継グループ情報及び中継サーバ情報に基づいて、以下のようにして行われる。例えばクライアント端末11からクライアント端末21にパケットを送信する場合、初めに、クライアント端末11は、自身が接続している中継サーバである中継サーバ1にパケットを送信する。なお、上記の中継グループ情報に基づいてパケットのやり取りが可能な中継サーバが分かり、かつ中継サーバ情報に基づいて中継サーバに所属しているクライアント端末の識別情報及び接続の可否が分かる。中継サーバ1は、これらの情報に基づいて、クライアント端末21が接続している中継サーバである中継サーバ2にパケットを送信する。そして、この中継サーバ2がクライアント端末21にパケットを送信する。このようにして、クライアント端末同士で中継通信を行うことができる。
【0036】
この中継サーバ情報に関しても中継グループ情報と同様に、当該中継グループを構成する中継サーバ1,2,3,4の間で情報が共有されている。そして、ある中継サーバにおいて中継サーバ情報を変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継サーバ情報が更新される。このようにして、中継サーバ情報が動的に共有される。
【0037】
クライアント端末情報記憶部53は、クライアント端末に関する詳細な情報であるクライアント端末情報を記憶している。なお、中継サーバ1,2,3,4は、自身に所属するクライアント端末に関するクライアント端末情報のみを記憶している。例えば、中継サーバ1には、図1に示すようにクライアント端末11が所属しているため、中継サーバ1が備えるクライアント端末情報記憶部53には、クライアント端末11のクライアント端末情報のみが記憶されている。
【0038】
中継サーバ1のクライアント端末情報記憶部53が記憶するクライアント端末情報は、図5(a)に示されている。同様に、中継サーバ2が記憶するクライアント端末情報が図5(b)に、中継サーバ3が記憶するクライアント端末情報が図5(c)に、中継サーバ4が記憶するクライアント端末情報が図5(d)に、それぞれ示されている。
【0039】
図5に示すクライアント端末情報においては、nodeタグが記述されている。このnodeタグには、クライアント端末のプライベートIPアドレス(「addr」)と、所属する中継グループの名称(「group」)と、識別情報(「id」)と、名称(「name」)と、中継サーバにログインするためのパスワード(「pass」)と、ポート情報(「port」)と、が記述されている。
【0040】
VPNグループ情報記憶部54は、中継グループを構成する中継サーバ及びクライアント端末から選択された機器(以下、ルーティング機器と称する)で構成されたVPNグループに関する情報であるVPNグループ情報を記憶している。VPNグループは、中継グループ内で構成されるグループであり、ルーティング機器同士でルーティングセッションを確立させることにより、仮想ネットワークを構築することができる。
【0041】
図6に示すVPNグループ情報においては、vnetタグが記述されている。このvnetタグには、VPNグループ基本情報541と、ルーティングポイント情報542と、ルーティングセッション情報543と、が記述されている。VPNグループ基本情報541には、VPNグループが所属する中継グループの名称(「group」)と、VPNグループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、VPNグループの名称(「name」)と、が記述されている。ルーティングポイント情報542には、VPNグループ間で通信を行うときにルーティングを行うルーティング機器の識別情報が記述されている。図6の例においては、ルーティング機器として、クライアント端末11と、クライアント端末21と、中継サーバ3と、が記述されている。ルーティングセッション情報543には、VPNグループにおいて互いに接続されるルーティング機器が記述されている。ルーティングセッション情報543において、ルーティング機器は、VPNグループでVPNを開始するためのルーティングセッション確立処理において、通信制御を最初に行う側(「sp(start point)」)と、その通信制御を受ける側「ep(end point)」と、に分けて定められている。なお、以下の説明では、ルーティングセッション確立のための通信制御を最初に行う側のルーティング機器を「始点」と、その通信制御を受ける側のルーティング機器を「終点」と、それぞれ称することがある。
【0042】
このVPNグループ情報についても中継サーバ情報及び中継グループ情報と同様に、VPNグループを構成する中継サーバ1,2,3の間で情報が共有されている。そして、ある中継サーバにおいてVPNグループ情報を変更する処理が行われた場合は、VPNグループを構成する他の中継サーバに対してその旨が送信されてVPNグループ情報が更新される。このようにして、VPNグループ情報が動的に共有される。なお、このVPNグループを作成する処理については後述する。
【0043】
アドレスフィルタ情報記憶部55は、VPNを開始してルーティング機器がルーティングを行う際に、パケットの送信先としてルーティング機器が指定可能な相手を示すアドレスフィルタ情報を記憶している。
【0044】
図7(a)は、ルーティング機器と対応付けられたアドレスフィルタ情報の内容が示されている。図7(a)に示すように、クライアント端末11は、処理装置12に対してパケットを送信することができる。クライアント端末21は、処理装置22及び処理装置23に対してパケットを送信することができる。中継サーバ3は、LAN30に接続された全ての機器に対してパケットを送信することができる。
【0045】
アドレスフィルタ情報記憶部55は、図7(b)に示すように、ルーティング機器の識別情報と、当該ルーティング機器がパケットの送信先として指定可能な相手のIPアドレス及び名称と、を対応付けて記憶している。パケットの送信先として指定可能な相手の名称は、ユーザが認識し易い名称等の任意の名称を設定することができ、例えば機器及びLANの配置される場所等を考慮して設定可能である。なお、それぞれのルーティング機器は、このアドレスフィルタ情報をディスプレイ等に表示可能となっている。また、このアドレスフィルタ情報は、VPNを開始するときにルーティング機器同士で交換するように構成されている。
【0046】
中継サーバ1,2,3,4は、以上のように構成される。なお、クライアント端末11,21,31,41の構成については詳細な説明を省略するが、中継サーバ1,2,3,4と実質的に同様に構成された記憶部50及び制御部60を備えている。
【0047】
次に、VPNグループを構築して、構築したVPNグループでパケットのルーティングを行うときの処理について説明する。
【0048】
初めにVPNグループを構築するときの流れについて図8及び図11を参照して説明する。図8は、VPNグループを作成する処理を示すフローチャートである。図11は、VPNグループを作成する通信処理及びアドレスフィルタ情報を更新する通信処理を示すシーケンス図である。
【0049】
中継通信システム100を利用するユーザは、クライアント端末11,21,31等を操作することによって、VPNグループの設定画面を表示させることができる。ここでは、クライアント端末11を用いて設定を行う場合について説明する。クライアント端末11に表示させた設定画面には、当該クライアント端末11が属する複数の中継グループが表示される。ユーザは、この複数の中継グループから、VPNグループを構築したい中継グループを選択する(S101)。
【0050】
中継グループが選択されると、クライアント端末11の画面には、選択した中継グループに属し、かつルーティングポイントとして機能可能な中継サーバ及びクライアント端末の識別情報の一覧が表示される(S102)。そして、ユーザは、構築するVPNグループにおいてルーティングポイントとして機能させる中継サーバ及びクライアント端末の識別情報を選択する(S103)。今回の説明では、クライアント端末11、クライアント端末21、及び中継サーバ3の識別情報がユーザに選択されたものとする。
【0051】
そして、この選択されたルーティングポイントに基づいて、ルーティングセッション情報が作成される(S104)。また、選択された中継サーバ等の識別情報に基づいて、ルーティングポイントの識別情報が作成される(S104)。これらの作成された情報にVPNグループの識別情報等を付加することにより、図6で示したVPNグループ情報が作成され、VPNグループ情報記憶部54は、このVPNグループ情報を記憶する(S105)。
【0052】
そして、クライアント端末11は、作成したVPNグループ情報を、他のルーティング機器(クライアント端末21及び中継サーバ3)に送信することにより(S106)、VPNグループが作成されたことを通知する。なお、クライアント端末21に対するVPNグループ情報の送信は、図11に示すように、中継サーバ1及び中継サーバ2を介して行われる(シーケンス番号1、createVpnGroup)。また、中継サーバ3に対するVPNグループ情報の送信は、中継サーバ1を介して行われる(シーケンス番号2、createVpnGroup)。
【0053】
これにより、VPNグループの構築処理が完了する。なお、以上で示したように、本実施形態において機器間の通信が中継サーバ1,2,3,4を経由して行われることがあるが、以下の説明では、中継サーバ1,2,3,4を経由する通信処理の具体的な説明を省略して「クライアント端末11がクライアント端末21に送信する。」等と記載することがある。
【0054】
次に、構築したVPNグループでVPNを開始するときの流れについて、図9から図12を参照して説明する。図9は、VPNを開始する処理の前半部を示すフローチャートである。図10は、VPNを開始する処理の後半部を示すフローチャートである。図12は、ルーティングセッションを確立する通信処理及びパケットの送信を行う通信処理を示すシーケンス図である。
【0055】
ユーザは、クライアント端末11,21等を操作することによって、構築したVPNグループを画面に表示させることができる。そして、表示されたVPNグループから適当なVPNグループを選択することにより(S201)、VPNを開始するための処理を行わせることができる。今回の説明では、ユーザがクライアント端末11を操作して、上記で作成したVPNグループ(クライアント端末11、クライアント端末21、及び中継サーバ3をルーティング機器とするVPNグループ)を選択したものとする。
【0056】
クライアント端末11は、初めに、自身に対応付けられたアドレスフィルタ情報を読み出す(S202)。クライアント端末11の識別情報に対応付けられたアドレスフィルタ情報には、図7に示すように、処理装置12に対してパケットを送信可能な旨が記述されている。次に、クライアント端末11は、選択したVPNグループに属するルーティングポイントの読出しを行う(S203)。これにより、図6に示すVPNグループ情報の内容に基づいて、クライアント端末21及び中継サーバ3の識別情報が読み出される。
【0057】
クライアント端末11は、中継サーバ情報に基づいて、初めに、クライアント端末21がログイン中か否か(「site」に中継サーバの識別情報が記述されているか、それとも空欄か)を判断する(S204)。図4に示す中継サーバ情報によればクライアント端末21はログイン中であるため、クライアント端末11は、クライアント端末21に向けてVPNグループの開始コマンドを送信する(図11のシーケンス番号3、startVpn)。このとき、選択されたVPNグループの識別情報(VpnGroupID)と、クライアント端末11の識別情報に対応付けられたアドレスフィルタ情報(addr01)も同時に送信される。
【0058】
これにより、クライアント端末21は、開始の処理を行うVPNグループを特定できるとともに、クライアント端末11の識別情報に対応付けられた最新のアドレスフィルタを取得することができる。また、クライアント端末21は、信号を受信した旨をクライアント端末11に通知するとともに、自身に対応付けられたアドレスフィルタ情報(addr02)をクライアント端末11に送信する。
【0059】
クライアント端末11は、クライアント端末21からの応答を受けて(S206)、受信したアドレスフィルタ情報をアドレスフィルタ情報記憶部55に記憶する(S207)。また、クライアント端末11は、クライアント端末21を、VPNを開始する準備が完了したルーティングポイントとして登録する(S208)。
【0060】
次に、クライアント端末11は、他にルーティングポイントが有るか否かの判断を行う(S209)。クライアント端末21に対するVPNの開始処理を完了した時点では、中継サーバ3に対してVPNの開始処理を行っていないため、クライアント端末11は、今度は中継サーバ3を対象としてS204〜S208の処理を行う。この結果、クライアント端末11は、中継サーバ3に対してVPNの開始コマンド及びアドレスフィルタ情報の送信を行う(図11のシーケンス番号5、startVpn)。そして、クライアント端末21の場合と同様に、中継サーバ3からアドレスフィルタ情報を受信して記憶する。
【0061】
なお、このVPNグループの開始コマンド及びアドレスフィルタ情報の送受信は、クライアント端末21と中継サーバ3との間でも行われる(シーケンス番号4、startVpn)。以上により、クライアント端末11、クライアント端末21、及び中継サーバ3は、他のルーティングポイントのアドレスフィルタ情報を取得することができる。
【0062】
このように、VPNを開始する際には、それぞれのルーティング機器が他のルーティング機器とアドレスフィルタ情報を交換(取得)し、最新のアドレスフィルタ情報を用いてVPNを構築することができる。従って、VPN開始前の段階で一部のルーティング機器においてアドレスフィルタ情報が変更された場合でも、その変更を全てのルーティング機器に反映させた状態でVPNを開始できるので、パケットのルーティングにおける矛盾の発生を防止でき、信頼性を向上させることができる。
【0063】
次に、クライアント端末11は、VPNグループ情報記憶部54に記憶したルーティングセッション情報を抽出し(S210)、自身が始点となるルーティングセッションが記述されているか否かを判断する(S211)。図6のルーティングセッション情報においては、クライアント端末21及び中継サーバ3との間で確立されるべきルーティングセッションにおいて、クライアント端末11が始点となることが記述されている。
【0064】
そこで、初めに、クライアント端末11はクライアント端末21を選択し、クライアント端末21が、VPNを開始する準備が完了したルーティングポイントであるか否かを判断する(S212)。上記のS208により、クライアント端末21は準備が完了しているため、クライアント端末11からクライアント端末21に対してルーティングセッションを確立するための通信制御が行われる(S213、シーケンス番号6、createVpnSsn)。
【0065】
次に、クライアント端末11は、自身が接続の始点となるルーティングセッションが他に記述されているか否かを判断する(S214)。クライアント端末21に対するルーティングセッション確立処理を完了した時点では、中継サーバ3との間でのルーティングセッション確立処理を行っていないため、クライアント端末11は、中継サーバ3に対してもクライアント端末21に行った通信と同様の通信を行う(シーケンス番号8、createVpnSsn)。これにより、クライアント端末11と中継サーバ3との間にルーティングセッションが確立される。
【0066】
また、図6に示すように、クライアント端末21が中継サーバ3との間のルーティングセッションの始点となるべきことがルーティングセッション情報に記述されているため、ルーティングセッションを確立するための通信制御は、クライアント端末21から中継サーバ3に対しても行われる(シーケンス番号7、createVpnSsn)。以上により、クライアント端末11とクライアント端末21の間、クライアント端末11と中継サーバ3の間、及びクライアント端末21と中継サーバ3の間においてルーティングセッションをそれぞれ確立させることができる。その後、パケットのルーティング制御が開始される(S215)。なお、それぞれのルーティング機器は、自身が始点である旨がルーティングセッション情報に記述されていない限りはルーティングセッション確立のための最初の通信制御を行わないので、通信制御の衝突を防止し、機器間のルーティングセッションを簡素な制御で確立することができる。
【0067】
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について図7及び図12を参照して説明する。以下、ルーティングポイントとして機能するクライアント端末11が、処理装置12から第1パケットから第3パケットの3種類のパケットを受信したときに、当該クライアント端末11が行う処理を説明する。
【0068】
初めに、あて先のIPアドレスが(192.168.2.22)となっている第1パケットを受信したとき(シーケンス番号9、packet01)について説明する。クライアント端末11は、この第1パケットを受信した後に、あて先のIPアドレスと図7に示すアドレスフィルタ情報とを比較する。そして、第1パケットに記されたあて先に対してパケットを送信可能なルーティングポイントを検出する。
【0069】
図7に示すように、第1パケットのあて先のIPアドレスは、クライアント端末21の識別情報に対応付けられたアドレスフィルタ情報に含まれる。この場合、クライアント端末11は、クライアント端末21との間に確立されたルーティングセッションを介して第1パケットを当該クライアント端末21へ送信する。
【0070】
この第1パケットを受信したクライアント端末21もクライアント端末11と同様に、あて先のIPアドレスとアドレスフィルタ情報とを比較する。そして、第1パケットに記されたあて先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出する。この場合、第1パケットをあて先の処理装置22に対して送信する。
【0071】
次に、あて先のIPアドレスが(192.168.3.32)である第2パケットをクライアント端末11が受信したとき(シーケンス番号10、packet02)について説明する。図7のアドレスフィルタ情報によれば、第2パケットに記されたあて先に対してパケットを送信可能なルーティングポイントとして中継サーバ3が指定されている。従って、クライアント端末11は、中継サーバ3との間に確立されたルーティングセッションを介して第2パケットを当該中継サーバ3に送信する。そして、中継サーバ3は、第2パケットに記されたあて先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出し、第2パケットをあて先の処理装置32に対して送信する。
【0072】
次に、あて先のIPアドレスが(192.168.5.51)である第3パケットをクライアント端末11が受信したとき(シーケンス番号11、packet03)について説明する。クライアント端末11は、あて先のIPアドレスとアドレスフィルタ情報とを比較した結果、あて先に対してパケットを送信可能なルーティングポイントが記述されていないことを検出する。この場合、クライアント端末11は、受信した第3パケットをどこにも送信しない。
【0073】
このように、本実施形態では、アプリケーション層のルーティングセッションで、ルーティング対象のデータを流すように構成されている。従って、以上で説明したルーティングは、通常のIPルーティングとは異なっている。また、上述のように、アドレスフィルタ情報記憶部55は、パケットの送信先として指定可能な相手の名称を表示可能となっている。そのため、ユーザは、VPNを用いてどの機器にパケットを送信可能であるかを容易に認識することができる。
【0074】
このようにアプリケーション層でルーティングを行うことにより、WANを意識することなく、遠隔地のLAN同士がプライベートIPアドレスを利用して相互に通信することができる。
【0075】
次に、VPNの開始後に、通信機器がVPNの構成要素としての機能を停止する場合の通信処理について、図13及び図14を参照して説明する。図13及び図14は、通信機器が停止する旨の通知を受けたときの処理を示すフローチャートである。
【0076】
なお、VPNの構成要素としての機能を停止する場合とは、当該機器がVPNグループから外れる場合、当該機器が中継グループから外れる場合、ネットワーク障害等の理由で当該機器が他の機器と通信できなくなる場合等、様々な状況が考えられる。また、以下では、代表してクライアント端末11が通知を受けた場合に行う処理について説明する。
【0077】
クライアント端末11は、他の機器から受けた通知が、中継サーバの停止の通知なのか、クライアント端末の停止の通知なのか、それ以外の通知なのかを判断する(S301,S302)。中継サーバの停止の通知だった場合、クライアント端末11は、自身が記憶する中継サーバ情報を参照することで、当該中継サーバに所属するクライアント端末を抽出し(S303)、停止する機器のリストとして、当該中継サーバ及びクライアント端末を記憶しておく(S304)。
【0078】
クライアント端末の停止の通知だった場合は、クライアント端末11は、停止する機器のリストとして当該クライアント端末を記憶しておく(S304)。なお、中継サーバの停止の通知でもクライアント端末の停止の通知でもなかった場合は、クライアント端末11は、通知の内容に対応した処理を必要に応じて行う(S305)。
【0079】
停止する機器のリストがS304で作成されると、クライアント端末11は、VPNが開始されていて、かつ、後述のS307〜S315の処理が完了していないVPNグループが存在するか否かを判断する(S306)。そのようなVPNグループが存在しない場合は、一連の処理を終了する。
【0080】
条件を満たすVPNグループが存在している場合、クライアント端末11は、S304で作成されたリストに記述された機器を1つ読み出す(S307)。そして、クライアント端末11は、読み出された機器(停止する機器)が、実行中のVPNにおいてルーティングポイントとして機能していたものか否かを判断する(S308)。
【0081】
読み出された機器がルーティングポイントとして機能している場合は、クライアント端末11は、当該ルーティングポイントを実際に停止させた場合においても、有効なルーティングポイントが2箇所以上残っているか否かを判断する(S309)。そして、残存するルーティングポイントの数が1以下になる場合は、VPNを存続させる意義が無いため、クライアント端末11はVPNの停止処理を行う(S310)。そして、クライアント端末11は、S309において有効なルーティングポイントと判定された1つのルーティング機器の識別情報と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称と、をディスプレイに表示する等してユーザに通知し(S311)、S306に戻る。
【0082】
有効なルーティングポイントが2以上残っている場合は、クライアント端末11は、VPNグループ情報に基づいて、自身と、停止の対象となるルーティングポイントと、で構成されるルーティングセッションが有るか否かを判断する(S312)。そして、そのようなルーティングセッションが有った場合は、当該ルーティングセッションを停止する(S313)。その後、クライアント端末11は、停止したルーティングポイントに対応付けられたアドレスフィルタ情報を削除する。
【0083】
以上のS307〜S313の処理により、停止すべき機器1台分についての処理が完了する。なお、S308において、当該機器がルーティングポイントとして機能しないと判断された場合は、S309〜S313の処理はスキップされる。
【0084】
その後、リストに記述された機器の中で未処理のものが残っているか否かを調べ(S314)、残っている機器がある場合は、それぞれについてS307〜S313の処理を行う。これにより、リストに記述された機器を1台ずつ調べ、当該機器がルーティングポイントであった場合のルーティングセッションの停止等の処理を行うことができる。
【0085】
VPNグループについて前記リストの全てについて処理が完了すると、クライアント端末11は、ルーティングポイントとして機能しているルーティング機器の識別情報等と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称と、をディスプレイに表示する等してユーザに通知する(S315)。その後、クライアント端末11は、S306に戻り、VPNが開始されているVPNグループのうち未処理のものがあるか否かを調べる。未処理のVPNグループがあれば、当該VPNグループについてS307〜S315の処理を行う。これにより、VPNが開始されている複数のVPNグループがあった場合に、そのそれぞれについて、機器の停止に伴う処理を適切に行うことができる。
【0086】
次に、クライアント端末11、クライアント端末21、及び中継サーバ3をルーティングポイントとするVPNグループにおいてVPNが開始されている状態で、中継サーバ3がVPNから外れる場合を考え、クライアント端末11が、上記で説明したフローに基づいて具体的にどのように動作するかについて説明する。図15は、中継サーバ3がVPNから外れるときの通信処理を示すシーケンス図である。
【0087】
中継サーバ3は、他の機器(クライアント端末11、中継サーバ1、クライアント端末21、及び中継サーバ2)に対して、当該中継サーバ3がVPNグループから外れる旨を通知する(図15のシーケンス番号12,13、exitVpn)。なお、通知を受ける側の機器の処理としては一部を除いて同一であるため、以下では、主にクライアント端末11に関係する処理のみを説明する。
【0088】
クライアント端末11は、中継サーバ3からの通知を受けると、当該通知が中継サーバの停止の通知であるか否かを判断する(図9のS301)。ここでは、受けた通知が中継サーバ3の停止に係るものと判断できるので、クライアント端末11は、自身の中継サーバ情報を参照する(S303)。
【0089】
図4に示す中継サーバ情報によれば、停止する中継サーバ3に所属するクライアント端末として、クライアント端末31が存在することが判る。中継サーバ3が中継機能を停止した場合、中継サーバ3のみならず、それに所属するクライアント端末31との通信も不可能になる。従って、クライアント端末11は、停止する機器のリストとして、中継サーバ3及びクライアント端末31を記憶する(S304)。リストに記述される順番は任意で良いが、今回の説明では、機器のリストに中継サーバ3、クライアント端末31の順番で記述されるものとする。
【0090】
次に、クライアント端末11は、S306の判断に移行し、VPNが開始されているVPNグループを調べる。すると、VPNが開始されているVPNグループ(ここでは、クライアント端末11、クライアント端末21、及び中継サーバ3をルーティングポイントとするVPNグループ)が存在することが判る。従って、クライアント端末11は、S304で作成された、停止する機器のリストに記述されている機器を1つずつ読み出す(S307)。
【0091】
リストには中継サーバ3、クライアント端末31の順で記述されているので、最初に読み出されるのは中継サーバ3である。クライアント端末11はS308の判断で図6のVPNグループ情報を参照し、当該中継サーバ3がルーティングポイントであることを検出する。
【0092】
次に、クライアント端末11は、中継サーバ3の停止後において有効なルーティングポイントが2箇所以上あるか否かを判断する(S309)。上記の場合では、中継サーバ3を停止させた場合でも、2箇所のルーティングポイント(即ち、クライアント端末11及びクライアント端末21)が残っている。従って、VPNを停止させず、S312の処理に移行する。
【0093】
次に、クライアント端末11はS312の判断を行うが、図6のVPNグループ情報によれば、自身と中継サーバ3とで構成されるルーティングセッションが有ることが判る。従って、クライアント端末11は、該当するルーティングセッションを停止する(S313、図15のシーケンス番号12におけるcloseVpnSsn)。
【0094】
次に、クライアント端末11はS314の判断に移行するが、停止する機器のリストの中に未処理のもの(クライアント端末31)があるため、S307に戻る。S307の処理ではクライアント端末31がリストから読み出されるが、このクライアント端末31はルーティングポイントとして機能しないので(S308)、S309〜S313の処理は行われない。クライアント端末11はS314の判断に移行するが、リストにおいて未処理の機器がなくなったことが判る。そして、クライアント端末11は、ルーティングポイントとして機能しているルーティング機器(クライアント端末11及びクライアント端末21)と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称(処理装置12、処理装置22、及び処理装置23)と、をディスプレイに表示する等してユーザに通知する(S315)。そこでS306に戻るが、未処理のVPNグループはもう残っていないので、処理を終了する。
【0095】
なお、クライアント端末11以外の機器も、中継サーバ3からの通知を受けて、上記と同様の処理を行う。従って、クライアント端末21と中継サーバ3との間に構成されたルーティングセッションが停止される(図15のシーケンス番号13におけるcloseVpnSsn)。そして、各ルーティング機器は、停止したルーティングポイントに対応付けられたアドレスフィルタ情報を削除する。なお、ここで削除されたアドレスフィルタ情報は、ユーザが参照できなくなるように処理される。
【0096】
上記のように処理を行うことにより、VPNをいったん停止させて再び開始する煩雑な処理を行うことなく、ルーティングポイントを減らすことができる。
【0097】
上記の処理後において、あて先のIPアドレスが(192.168.3.31)である第4パケットをクライアント端末21が処理装置22から受信したとき(シーケンス番号14、packet04)について説明する。クライアント端末21は、あて先のIPアドレスとアドレスフィルタ情報とを比較する。中継サーバ3に対応付けられたアドレスフィルタ情報は上記の処理で削除されているため、クライアント端末21は、あて先に対してパケットを送信可能なルーティングポイントが記述されていないと判断する。従って、クライアント端末21は、受信した第4パケットをどこにも送信しない。
【0098】
次に、上記のように中継サーバ3がVPNから外れた後において、更に中継サーバ2が中継グループからログアウトする場合について図13、図14、及び図16を参照して説明する。図16は、中継サーバ2が停止するときの通信処理を示すシーケンス図である。
【0099】
中継サーバ2は、接続を中断する前に、他の機器(中継サーバ1、クライアント端末11、クライアント端末21、及び中継サーバ3)に対して、当該中継サーバ2が停止することを通知する(シーケンス番号15,16,17、notifyServerLogout)。この停止を受けた他の機器は、上記と同様の処理を行う。
【0100】
今回の説明では中継サーバ2が停止されるので、当該中継サーバ2に所属するクライアント端末21はルーティングポイントとしての機能を失う。従って、既に中継サーバ3も停止されているので、有効なルーティングポイントはクライアント端末11の1箇所のみとなってしまい、VPNとしての意義がなくなる。従って、中継サーバ2から通知を受けた機器は、S309の判断でS310に移行し、VPNの終了処理を行うとともに、クライアント端末11は、有効なルーティングポイントとして機能していたルーティング機器(クライアント端末11)と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称(処理装置12)と、をディスプレイに表示する等してユーザに通知する(S311)。以下では、このVPNの終了処理をクライアント端末21が行う場合について図16を参照して説明する。
【0101】
クライアント端末21は、VPNグループの識別情報とともに、VPNを終了する旨を、クライアント端末11及び中継サーバ3に対して送信する(シーケンス番号18,19、stopVpn)。なお、クライアント端末11及び中継サーバ3は、クライアント端末21から受信したVPNグループの識別情報によって、どのVPNグループが終了されるかを知ることができる。
【0102】
クライアント端末21は、VPNの終了を受け付けた旨の信号をクライアント端末11及び中継サーバ3から受信した後に、クライアント端末11に対してルーティングセッションの終了コマンドを送信する(シーケンス番号20、closeVpnSsn)。
【0103】
以上により、クライアント端末11とクライアント端末21の間に確立されていたルーティングセッションを終了させることができる。そしてVPNグループによるVPNが終了する。
【0104】
以上に示したように、本実施形態の中継サーバ1は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、通信制御部63と、を備える。中継グループ情報記憶部51は、自身(中継サーバ1)との間で相互に接続可能な他の中継サーバ(中継サーバ2,3,4)を含む中継グループの情報を記憶する。中継サーバ情報記憶部52は、中継グループに属する中継サーバの起動情報と、中継グループに属する中継サーバに接続されたクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。VPNグループ情報記憶部54は、中継通信システム100を構成する通信機器のうちルーティングポイントとして設定された通信機器を介してVPNにより通信を行うVPNグループに関し、当該VPNグループを構成するルーティング機器の識別情報を含むルーティングポイント情報542と、互いに接続されるルーティング機器の情報を含むルーティングセッション情報543と、を記憶する。アドレスフィルタ情報記憶部55は、パケットの送信先としてルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。制御部60は、VPNグループでVPNを開始した後に、あるルーティング機器がVPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【0105】
これにより、中継サーバ1は、中継通信システム100を構成する他の通信機器から選択されたルーティング機器とVPNを構築できるため、必要な通信機器との間でのみファイルの共有等を行うことができる。また、中継サーバ2は、あるルーティング機器が接続不良又はメンテナンス等によってVPNグループの構成要素として機能しないことを検知したときに、VPNを維持したままで、当該ルーティング機器との間で確立されたルーティングセッションを停止させることができる。従って、状況の変化に柔軟に対応可能なVPNを構築できる。
【0106】
また、本実施形態の中継サーバ1は、他の中継サーバの識別情報と、当該他の中継サーバに所属するクライアント端末の識別情報と、を対応付けて記憶する中継サーバ情報記憶部52を備える。中継サーバ1は、他の中継サーバの通信が停止することを検知したときに、VPNグループ情報記憶部54及び中継サーバ情報記憶部52の記憶内容に基づいて、他の中継サーバに所属するクライアント端末がルーティングポイントとして機能する場合、当該クライアント端末との間で確立されたルーティングセッションを停止させる制御を行う。
【0107】
これにより、中継サーバ1は、他の中継サーバの通信が停止することを検知するだけで、当該他の中継サーバと接続され、かつルーティングポイントとして機能するクライアント端末との間で確立されたルーティングセッションを停止させることができる。従って、VPNグループとして機能しなくなる旨の信号をクライアント端末側から送信する必要をなくすことができる。
【0108】
また、本実施形態の中継サーバ1は、受信したパケットのあて先が、自身の識別情報と対応付けられたアドレスフィルタ情報において指定されているときは、当該あて先にパケットを送信する。中継サーバ1は、受信したパケットのあて先が、自身以外のルーティング機器の識別情報と対応付けられたアドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器にパケットを送信する。中継サーバ1は、受信したパケットのあて先が、ルーティング機器の識別情報と対応付けられたアドレスフィルタ情報において指定されていないときは、パケットを送信しない。
【0109】
これにより、中継サーバ1は、アドレスフィルタ情報に基づいて適切にルーティングを行うことができる。
【0110】
また、本実施形態の中継サーバ1においては、あるクライアント端末21がVPNグループの構成要素として機能しないことを検知したときに、クライアント端末21がVPNグループの構成要素として機能しなくなる結果として、当該VPNグループの構成要素であるルーティング機器が1つになる場合は、当該VPNグループを停止する制御を行う。
【0111】
これにより、実質的にネットワークとして機能しなくなったVPNを自動的に停止させることができる。
【0112】
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
【0113】
上記の中継グループ情報、中継サーバ情報、クライアント端末情報、VPNグループ情報、アドレスフィルタ情報等を格納する形式はXML形式に限定されず、適宜の形式で各情報を格納することができる。
【0114】
上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。
【符号の説明】
【0115】
1,2,3,4 中継サーバ
11,21,31,41 クライアント端末
10,20,30,40 LAN
50 記憶部
60 制御部
100 中継通信システム
【技術分野】
【0001】
本発明は、主として、異なるLAN(Local Area Network)に接続されている端末間の通信を可能とする中継サーバに関する。
【背景技術】
【0002】
従来から、仮想プライベートネットワーク(Virtual Private Network,VPN)と呼ばれる通信技術が知られている(例えば、特許文献1を参照)。このVPNは、例えば、地域ごとに設けられた複数の支社(拠点)のLANに接続された端末同士でインターネットを介して通信する用途に用いられている。前記VPNを利用すれば、遠隔地にある他のLANを、あたかも直接接続されているネットワークであるかのように使用することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2002−217938号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、この種のシステムは硬直的なものになり易く、拡張性、柔軟性のあるシステムを構築することは容易でない。例えば、上記特許文献1のような通信システムは、システムを構成する機器のうち選択された一部の機器だけで仮想ネットワークを構築することはできない。また、仮想ネットワークを開始した後に、ネットワークを構成する機器が停止してしまう場合に、仮想ネットワークが適切に動作しなくなることが考えられる。
【0005】
本発明は以上の事情に鑑みてされたものであり、その主要な目的は、仮想ネットワークを開始した後にネットワークを構成する機器が停止した場合にも柔軟に対応可能なVPNを構築できる中継サーバを提供することにある。
【課題を解決するための手段及び効果】
【0006】
本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【0007】
本発明の第1の観点によれば、以下の構成の中継サーバが提供される。即ち、この中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、制御部と、を備える。前記中継グループ情報記憶部は、自身との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに接続されたクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継グループ情報及び前記中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶する。前記アドレスフィルタ情報記憶部は、パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。前記制御部は、前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【0008】
これにより、中継サーバは、中継通信システムを構成する他の通信機器(他の中継サーバ及びクライアント端末)から選択されたルーティング機器とVPNを構築できるため、必要な通信機器との間でのみファイルの共有等を行うことができる。また、中継サーバは、あるルーティング機器が接続不良又はメンテナンス等によってVPNグループの構成要素として機能しないことを検知したときに、VPNを維持したままで、当該ルーティング機器との間で確立されたルーティングセッションを停止させることができる。従って、状況の変化に柔軟に対応可能なVPNを構築できる。
【0009】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、この中継サーバは、第2中継サーバの識別情報と、当該第2中継サーバを介して広域通信網に接続されるクライアント端末の識別情報と、を対応付けて記憶する中継サーバ情報記憶部を備える。前記第2中継サーバの通信が停止することを検知したときに、前記VPNグループ情報記憶部及び前記中継サーバ情報記憶部の記憶内容に基づいて、前記第2中継サーバを介して広域通信網に接続されるクライアント端末の中にルーティングポイントとして機能するクライアント端末があるか否かを判断する。ルーティングポイントとして機能するクライアント端末があれば、当該クライアント端末との間で確立されたルーティングセッションを停止させる制御を行う。
【0010】
これにより、中継サーバは、他の中継サーバの通信が停止することを検知するだけで、当該他の中継サーバと接続され、かつルーティングポイントとして機能するクライアント端末との間で確立されたルーティングセッションを停止させることができる。従って、VPNグループとして機能しなくなる旨の信号をクライアント端末側から送信する必要をなくすことができる。
【0011】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、中継サーバは、受信したパケットのあて先が、自身の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、当該あて先にパケットを送信する。中継サーバは、受信したパケットのあて先が、自身以外の前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器にパケットを送信する。中継サーバは、受信したパケットのあて先が、前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されていないときは、パケットを送信しない。
【0012】
これにより、中継サーバは、アドレスフィルタ情報に基づいて適切にルーティングを行うことができる。
【0013】
前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、当該ルーティング機器が前記VPNグループの構成要素として機能しなくなる結果として、当該VPNグループの構成要素であるルーティング機器が1つになる場合は、当該VPNグループを停止する制御を行う。
【0014】
これにより、実質的にネットワークとして機能しなくなったVPNを自動的に停止させることができる。
【0015】
本発明の第2の観点によれば、以下の構成の中継通信システムが提供される。即ち、この中継通信システムは、複数の中継サーバと、クライアント端末と、を備える。前記クライアント端末は、前記中継サーバを介して互いに接続可能である。前記中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、制御部と、を備える。前記中継グループ情報記憶部は、当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継サーバ及び前記クライアント端末のうちルーティングポイントとして設定されたルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークを利用して通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶する。前記アドレスフィルタ情報記憶部は、パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。前記制御部は、前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【0016】
これにより、中継サーバ及びクライアント端末から選択されたルーティング機器を用いてVPNを構築できるため、必要な機器との間でのみファイルの共有等を行うことが可能となる。また、あるルーティング機器が接続不良及びメンテナンス等によってVPNグループの構成要素として機能しないことを検知したときに、VPNグループを実行したままで当該ルーティング機器との間で確立されたルーティングセッションを停止させる構成であるため、状況の変化に柔軟に対応可能なVPNを構築できる。
【図面の簡単な説明】
【0017】
【図1】本発明の一実施形態に係る中継通信システムの全体構成を示す説明図。
【図2】中継サーバの機能ブロック図。
【図3】中継グループ情報の内容を示す図。
【図4】中継サーバ情報の内容を示す図。
【図5】クライアント端末情報の内容を示す図。
【図6】VPNグループ情報の内容を示す図。
【図7】アドレスフィルタ情報記憶部の記憶内容を示す図。
【図8】VPNグループを作成する処理を示すフローチャート。
【図9】VPNを開始する処理の前半部を示すフローチャート。
【図10】VPNを開始する処理の後半部を示すフローチャート。
【図11】VPNグループを作成する通信処理及びアドレスフィルタ情報を更新する通信処理を示すシーケンス図。
【図12】ルーティングセッションを確立する通信処理及びパケットの送信を行う通信処理を示すシーケンス図。
【図13】ルーティング機器が停止する旨の通知を受けたときの処理の前半部を示すフローチャート。
【図14】ルーティング機器が停止する旨の通知を受けたときの処理の後半部を示すフローチャート。
【図15】中継サーバ3がVPNから外れるときの通信処理を示すシーケンス図。
【図16】中継サーバ2が停止するときの通信処理を示すシーケンス図。
【発明を実施するための形態】
【0018】
次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本発明の一実施形態に係る中継通信システム100の全体構成を示す説明図である。
【0019】
図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数のLAN10,20,30,40で構成されている。それぞれのLAN10,20,30,40は、限定された場所で構築される比較的小規模なネットワークであり、それぞれが物理的に離れた場所に構築されている。なお、本実施形態ではWAN80としてインターネットが使用されている。
【0020】
以下、それぞれのLANを具体的に説明する。図1に示すように、LAN10には、中継サーバ1と、クライアント端末11と、処理装置12と、が接続されている。LAN20には、中継サーバ2と、クライアント端末21と、処理装置22と、処理装置23と、が接続されている。LAN30には、中継サーバ3と、クライアント端末31と、処理装置32と、処理装置33と、が接続されている。LAN40には、中継サーバ4と、クライアント端末41と、処理装置42と、が接続されている。
【0021】
それぞれの中継サーバ1,2,3,4は、LAN10,20,30,40だけでなくWAN80にも接続されているため、同一のLANに接続されたクライアント端末と通信可能であるだけでなく、他のLANに配置された中継サーバと通信可能となっている。そのため、中継サーバ1,2,3,4には、グローバルIPアドレスに加えてプライベートIPアドレスが付与されている。
【0022】
クライアント端末11,21,31,41は、例えばパーソナルコンピュータで構成されており、中継サーバ1,2,3,4を介して相互に通信を行うことができる。処理装置12,22,23,32,33,42は、例えばパーソナルコンピュータで構成されており、LAN10,20,30,40を介してクライアント端末11,21,31,41にパケットを送信可能である。
【0023】
次に、中継サーバ1,2,3,4について説明する。なお、これらの4つの中継サーバは、記憶された一部のデータを除いて略同一の構成であるため、代表して中継サーバ1について説明する。初めに、図2を参照して、中継サーバ1が備える構成について説明する。図2は、中継サーバ1,2,3,4の機能ブロック図である。
【0024】
図2に示すように、中継サーバ1は、記憶部50と、制御部60と、インタフェース部70と、を備えている。
【0025】
インタフェース部70は、プライベートIPアドレスを利用して、LAN10内の端末に対して通信を行うことができる。また、インタフェース部70は、グローバルIPアドレスを利用して、WAN80を経由した通信を行うことができる。
【0026】
制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信処理を制御することができる。図2に示すように、制御部60は、インターフェースドライバ61と、LAN側IPパケット処理部62と、通信制御部63と、WAN側IPパケット処理部64と、を備えている。
【0027】
インターフェースドライバ61は、インタフェース部70を制御するドライバソフトウェアである。LAN側IPパケット処理部62は、LAN10から受信したパケットに適宜の処理を行って通信制御部63に出力する。WAN側IPパケット処理部64は、WAN80から受信したパケットに適宜の処理を行って通信制御部63に出力する。
【0028】
通信制御部63は、受信したパケットを、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて送信先を決定し、決定した送信先へ送信する。また、通信制御部63は、他の端末から受信した情報に基づいて、記憶部50の記憶内容を更新させることができる。
【0029】
記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種データを保存可能である。記憶部50は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、クライアント端末情報記憶部53と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、を備えている。以下、図3から図7までを参照して、記憶部50が備える構成について説明する。図3は、中継グループ情報の内容を示す図である。図4は、中継サーバ情報の内容を示す図である。図5は、クライアント端末情報の内容を示す図である。図6は、VPNグループ情報の内容を示す図である。図7は、アドレスフィルタ情報の内容を示す図である。
【0030】
中継グループ情報記憶部51は、中継グループと、当該中継グループを構成する中継サーバと、を示した中継グループ情報を記憶している。
【0031】
図3に示すように、中継グループ情報においては、groupタグと、このgroupタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関するグループ情報511が記述されている。このグループ情報511としては、中継グループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、中継グループの名称(「name」)と、が記述されている。siteタグには、中継グループを構成する中継サーバに関するグループ構成情報512が記述されている。このグループ構成情報512には、当該中継サーバの識別情報(「id」)が記述されている。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、特定の中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
【0032】
なお、この中継グループ情報は、当該中継グループを構成する中継サーバ1,2,3,4の間で情報が共有されている。そして、ある中継サーバにおいて中継グループを変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継グループ情報が更新される。このようにして、中継グループ情報が動的に共有される。
【0033】
中継サーバ情報記憶部52は、中継通信を行う中継サーバ及び当該中継サーバに所属するクライアント端末の概要を示す中継サーバ情報を記憶している。
【0034】
図4に示す中継サーバ情報においては、中継サーバごとに記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには中継サーバ1に関するサーバ情報521が記述されている。このサーバ情報521としては、中継サーバの識別情報(「id」)と、中継サーバの名称(「name」)と、起動情報(「stat」)と、が記述されている。なお、statの内容が「active」の場合は中継サーバが中継通信システム100にログインしていることを示し、statが空欄であるときはログオフ中であることを示す。siteタグの子要素であるnodeタグには、中継サーバに所属するクライアント端末を示す所属情報522が記述されている。所属情報522としては、所属する中継グループの名称(「group」)と、クライアント端末の識別情報(「id」)と、クライアント端末の名称(「name」)と、ログイン先の中継サーバの識別情報(「site」)と、が記述されている。なお、クライアント端末が中継サーバ(中継通信システム100)にログインしていないときは、「site」は空欄となる。
【0035】
なお、中継グループによる通信は、上記の中継グループ情報及び中継サーバ情報に基づいて、以下のようにして行われる。例えばクライアント端末11からクライアント端末21にパケットを送信する場合、初めに、クライアント端末11は、自身が接続している中継サーバである中継サーバ1にパケットを送信する。なお、上記の中継グループ情報に基づいてパケットのやり取りが可能な中継サーバが分かり、かつ中継サーバ情報に基づいて中継サーバに所属しているクライアント端末の識別情報及び接続の可否が分かる。中継サーバ1は、これらの情報に基づいて、クライアント端末21が接続している中継サーバである中継サーバ2にパケットを送信する。そして、この中継サーバ2がクライアント端末21にパケットを送信する。このようにして、クライアント端末同士で中継通信を行うことができる。
【0036】
この中継サーバ情報に関しても中継グループ情報と同様に、当該中継グループを構成する中継サーバ1,2,3,4の間で情報が共有されている。そして、ある中継サーバにおいて中継サーバ情報を変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継サーバ情報が更新される。このようにして、中継サーバ情報が動的に共有される。
【0037】
クライアント端末情報記憶部53は、クライアント端末に関する詳細な情報であるクライアント端末情報を記憶している。なお、中継サーバ1,2,3,4は、自身に所属するクライアント端末に関するクライアント端末情報のみを記憶している。例えば、中継サーバ1には、図1に示すようにクライアント端末11が所属しているため、中継サーバ1が備えるクライアント端末情報記憶部53には、クライアント端末11のクライアント端末情報のみが記憶されている。
【0038】
中継サーバ1のクライアント端末情報記憶部53が記憶するクライアント端末情報は、図5(a)に示されている。同様に、中継サーバ2が記憶するクライアント端末情報が図5(b)に、中継サーバ3が記憶するクライアント端末情報が図5(c)に、中継サーバ4が記憶するクライアント端末情報が図5(d)に、それぞれ示されている。
【0039】
図5に示すクライアント端末情報においては、nodeタグが記述されている。このnodeタグには、クライアント端末のプライベートIPアドレス(「addr」)と、所属する中継グループの名称(「group」)と、識別情報(「id」)と、名称(「name」)と、中継サーバにログインするためのパスワード(「pass」)と、ポート情報(「port」)と、が記述されている。
【0040】
VPNグループ情報記憶部54は、中継グループを構成する中継サーバ及びクライアント端末から選択された機器(以下、ルーティング機器と称する)で構成されたVPNグループに関する情報であるVPNグループ情報を記憶している。VPNグループは、中継グループ内で構成されるグループであり、ルーティング機器同士でルーティングセッションを確立させることにより、仮想ネットワークを構築することができる。
【0041】
図6に示すVPNグループ情報においては、vnetタグが記述されている。このvnetタグには、VPNグループ基本情報541と、ルーティングポイント情報542と、ルーティングセッション情報543と、が記述されている。VPNグループ基本情報541には、VPNグループが所属する中継グループの名称(「group」)と、VPNグループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、VPNグループの名称(「name」)と、が記述されている。ルーティングポイント情報542には、VPNグループ間で通信を行うときにルーティングを行うルーティング機器の識別情報が記述されている。図6の例においては、ルーティング機器として、クライアント端末11と、クライアント端末21と、中継サーバ3と、が記述されている。ルーティングセッション情報543には、VPNグループにおいて互いに接続されるルーティング機器が記述されている。ルーティングセッション情報543において、ルーティング機器は、VPNグループでVPNを開始するためのルーティングセッション確立処理において、通信制御を最初に行う側(「sp(start point)」)と、その通信制御を受ける側「ep(end point)」と、に分けて定められている。なお、以下の説明では、ルーティングセッション確立のための通信制御を最初に行う側のルーティング機器を「始点」と、その通信制御を受ける側のルーティング機器を「終点」と、それぞれ称することがある。
【0042】
このVPNグループ情報についても中継サーバ情報及び中継グループ情報と同様に、VPNグループを構成する中継サーバ1,2,3の間で情報が共有されている。そして、ある中継サーバにおいてVPNグループ情報を変更する処理が行われた場合は、VPNグループを構成する他の中継サーバに対してその旨が送信されてVPNグループ情報が更新される。このようにして、VPNグループ情報が動的に共有される。なお、このVPNグループを作成する処理については後述する。
【0043】
アドレスフィルタ情報記憶部55は、VPNを開始してルーティング機器がルーティングを行う際に、パケットの送信先としてルーティング機器が指定可能な相手を示すアドレスフィルタ情報を記憶している。
【0044】
図7(a)は、ルーティング機器と対応付けられたアドレスフィルタ情報の内容が示されている。図7(a)に示すように、クライアント端末11は、処理装置12に対してパケットを送信することができる。クライアント端末21は、処理装置22及び処理装置23に対してパケットを送信することができる。中継サーバ3は、LAN30に接続された全ての機器に対してパケットを送信することができる。
【0045】
アドレスフィルタ情報記憶部55は、図7(b)に示すように、ルーティング機器の識別情報と、当該ルーティング機器がパケットの送信先として指定可能な相手のIPアドレス及び名称と、を対応付けて記憶している。パケットの送信先として指定可能な相手の名称は、ユーザが認識し易い名称等の任意の名称を設定することができ、例えば機器及びLANの配置される場所等を考慮して設定可能である。なお、それぞれのルーティング機器は、このアドレスフィルタ情報をディスプレイ等に表示可能となっている。また、このアドレスフィルタ情報は、VPNを開始するときにルーティング機器同士で交換するように構成されている。
【0046】
中継サーバ1,2,3,4は、以上のように構成される。なお、クライアント端末11,21,31,41の構成については詳細な説明を省略するが、中継サーバ1,2,3,4と実質的に同様に構成された記憶部50及び制御部60を備えている。
【0047】
次に、VPNグループを構築して、構築したVPNグループでパケットのルーティングを行うときの処理について説明する。
【0048】
初めにVPNグループを構築するときの流れについて図8及び図11を参照して説明する。図8は、VPNグループを作成する処理を示すフローチャートである。図11は、VPNグループを作成する通信処理及びアドレスフィルタ情報を更新する通信処理を示すシーケンス図である。
【0049】
中継通信システム100を利用するユーザは、クライアント端末11,21,31等を操作することによって、VPNグループの設定画面を表示させることができる。ここでは、クライアント端末11を用いて設定を行う場合について説明する。クライアント端末11に表示させた設定画面には、当該クライアント端末11が属する複数の中継グループが表示される。ユーザは、この複数の中継グループから、VPNグループを構築したい中継グループを選択する(S101)。
【0050】
中継グループが選択されると、クライアント端末11の画面には、選択した中継グループに属し、かつルーティングポイントとして機能可能な中継サーバ及びクライアント端末の識別情報の一覧が表示される(S102)。そして、ユーザは、構築するVPNグループにおいてルーティングポイントとして機能させる中継サーバ及びクライアント端末の識別情報を選択する(S103)。今回の説明では、クライアント端末11、クライアント端末21、及び中継サーバ3の識別情報がユーザに選択されたものとする。
【0051】
そして、この選択されたルーティングポイントに基づいて、ルーティングセッション情報が作成される(S104)。また、選択された中継サーバ等の識別情報に基づいて、ルーティングポイントの識別情報が作成される(S104)。これらの作成された情報にVPNグループの識別情報等を付加することにより、図6で示したVPNグループ情報が作成され、VPNグループ情報記憶部54は、このVPNグループ情報を記憶する(S105)。
【0052】
そして、クライアント端末11は、作成したVPNグループ情報を、他のルーティング機器(クライアント端末21及び中継サーバ3)に送信することにより(S106)、VPNグループが作成されたことを通知する。なお、クライアント端末21に対するVPNグループ情報の送信は、図11に示すように、中継サーバ1及び中継サーバ2を介して行われる(シーケンス番号1、createVpnGroup)。また、中継サーバ3に対するVPNグループ情報の送信は、中継サーバ1を介して行われる(シーケンス番号2、createVpnGroup)。
【0053】
これにより、VPNグループの構築処理が完了する。なお、以上で示したように、本実施形態において機器間の通信が中継サーバ1,2,3,4を経由して行われることがあるが、以下の説明では、中継サーバ1,2,3,4を経由する通信処理の具体的な説明を省略して「クライアント端末11がクライアント端末21に送信する。」等と記載することがある。
【0054】
次に、構築したVPNグループでVPNを開始するときの流れについて、図9から図12を参照して説明する。図9は、VPNを開始する処理の前半部を示すフローチャートである。図10は、VPNを開始する処理の後半部を示すフローチャートである。図12は、ルーティングセッションを確立する通信処理及びパケットの送信を行う通信処理を示すシーケンス図である。
【0055】
ユーザは、クライアント端末11,21等を操作することによって、構築したVPNグループを画面に表示させることができる。そして、表示されたVPNグループから適当なVPNグループを選択することにより(S201)、VPNを開始するための処理を行わせることができる。今回の説明では、ユーザがクライアント端末11を操作して、上記で作成したVPNグループ(クライアント端末11、クライアント端末21、及び中継サーバ3をルーティング機器とするVPNグループ)を選択したものとする。
【0056】
クライアント端末11は、初めに、自身に対応付けられたアドレスフィルタ情報を読み出す(S202)。クライアント端末11の識別情報に対応付けられたアドレスフィルタ情報には、図7に示すように、処理装置12に対してパケットを送信可能な旨が記述されている。次に、クライアント端末11は、選択したVPNグループに属するルーティングポイントの読出しを行う(S203)。これにより、図6に示すVPNグループ情報の内容に基づいて、クライアント端末21及び中継サーバ3の識別情報が読み出される。
【0057】
クライアント端末11は、中継サーバ情報に基づいて、初めに、クライアント端末21がログイン中か否か(「site」に中継サーバの識別情報が記述されているか、それとも空欄か)を判断する(S204)。図4に示す中継サーバ情報によればクライアント端末21はログイン中であるため、クライアント端末11は、クライアント端末21に向けてVPNグループの開始コマンドを送信する(図11のシーケンス番号3、startVpn)。このとき、選択されたVPNグループの識別情報(VpnGroupID)と、クライアント端末11の識別情報に対応付けられたアドレスフィルタ情報(addr01)も同時に送信される。
【0058】
これにより、クライアント端末21は、開始の処理を行うVPNグループを特定できるとともに、クライアント端末11の識別情報に対応付けられた最新のアドレスフィルタを取得することができる。また、クライアント端末21は、信号を受信した旨をクライアント端末11に通知するとともに、自身に対応付けられたアドレスフィルタ情報(addr02)をクライアント端末11に送信する。
【0059】
クライアント端末11は、クライアント端末21からの応答を受けて(S206)、受信したアドレスフィルタ情報をアドレスフィルタ情報記憶部55に記憶する(S207)。また、クライアント端末11は、クライアント端末21を、VPNを開始する準備が完了したルーティングポイントとして登録する(S208)。
【0060】
次に、クライアント端末11は、他にルーティングポイントが有るか否かの判断を行う(S209)。クライアント端末21に対するVPNの開始処理を完了した時点では、中継サーバ3に対してVPNの開始処理を行っていないため、クライアント端末11は、今度は中継サーバ3を対象としてS204〜S208の処理を行う。この結果、クライアント端末11は、中継サーバ3に対してVPNの開始コマンド及びアドレスフィルタ情報の送信を行う(図11のシーケンス番号5、startVpn)。そして、クライアント端末21の場合と同様に、中継サーバ3からアドレスフィルタ情報を受信して記憶する。
【0061】
なお、このVPNグループの開始コマンド及びアドレスフィルタ情報の送受信は、クライアント端末21と中継サーバ3との間でも行われる(シーケンス番号4、startVpn)。以上により、クライアント端末11、クライアント端末21、及び中継サーバ3は、他のルーティングポイントのアドレスフィルタ情報を取得することができる。
【0062】
このように、VPNを開始する際には、それぞれのルーティング機器が他のルーティング機器とアドレスフィルタ情報を交換(取得)し、最新のアドレスフィルタ情報を用いてVPNを構築することができる。従って、VPN開始前の段階で一部のルーティング機器においてアドレスフィルタ情報が変更された場合でも、その変更を全てのルーティング機器に反映させた状態でVPNを開始できるので、パケットのルーティングにおける矛盾の発生を防止でき、信頼性を向上させることができる。
【0063】
次に、クライアント端末11は、VPNグループ情報記憶部54に記憶したルーティングセッション情報を抽出し(S210)、自身が始点となるルーティングセッションが記述されているか否かを判断する(S211)。図6のルーティングセッション情報においては、クライアント端末21及び中継サーバ3との間で確立されるべきルーティングセッションにおいて、クライアント端末11が始点となることが記述されている。
【0064】
そこで、初めに、クライアント端末11はクライアント端末21を選択し、クライアント端末21が、VPNを開始する準備が完了したルーティングポイントであるか否かを判断する(S212)。上記のS208により、クライアント端末21は準備が完了しているため、クライアント端末11からクライアント端末21に対してルーティングセッションを確立するための通信制御が行われる(S213、シーケンス番号6、createVpnSsn)。
【0065】
次に、クライアント端末11は、自身が接続の始点となるルーティングセッションが他に記述されているか否かを判断する(S214)。クライアント端末21に対するルーティングセッション確立処理を完了した時点では、中継サーバ3との間でのルーティングセッション確立処理を行っていないため、クライアント端末11は、中継サーバ3に対してもクライアント端末21に行った通信と同様の通信を行う(シーケンス番号8、createVpnSsn)。これにより、クライアント端末11と中継サーバ3との間にルーティングセッションが確立される。
【0066】
また、図6に示すように、クライアント端末21が中継サーバ3との間のルーティングセッションの始点となるべきことがルーティングセッション情報に記述されているため、ルーティングセッションを確立するための通信制御は、クライアント端末21から中継サーバ3に対しても行われる(シーケンス番号7、createVpnSsn)。以上により、クライアント端末11とクライアント端末21の間、クライアント端末11と中継サーバ3の間、及びクライアント端末21と中継サーバ3の間においてルーティングセッションをそれぞれ確立させることができる。その後、パケットのルーティング制御が開始される(S215)。なお、それぞれのルーティング機器は、自身が始点である旨がルーティングセッション情報に記述されていない限りはルーティングセッション確立のための最初の通信制御を行わないので、通信制御の衝突を防止し、機器間のルーティングセッションを簡素な制御で確立することができる。
【0067】
次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について図7及び図12を参照して説明する。以下、ルーティングポイントとして機能するクライアント端末11が、処理装置12から第1パケットから第3パケットの3種類のパケットを受信したときに、当該クライアント端末11が行う処理を説明する。
【0068】
初めに、あて先のIPアドレスが(192.168.2.22)となっている第1パケットを受信したとき(シーケンス番号9、packet01)について説明する。クライアント端末11は、この第1パケットを受信した後に、あて先のIPアドレスと図7に示すアドレスフィルタ情報とを比較する。そして、第1パケットに記されたあて先に対してパケットを送信可能なルーティングポイントを検出する。
【0069】
図7に示すように、第1パケットのあて先のIPアドレスは、クライアント端末21の識別情報に対応付けられたアドレスフィルタ情報に含まれる。この場合、クライアント端末11は、クライアント端末21との間に確立されたルーティングセッションを介して第1パケットを当該クライアント端末21へ送信する。
【0070】
この第1パケットを受信したクライアント端末21もクライアント端末11と同様に、あて先のIPアドレスとアドレスフィルタ情報とを比較する。そして、第1パケットに記されたあて先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出する。この場合、第1パケットをあて先の処理装置22に対して送信する。
【0071】
次に、あて先のIPアドレスが(192.168.3.32)である第2パケットをクライアント端末11が受信したとき(シーケンス番号10、packet02)について説明する。図7のアドレスフィルタ情報によれば、第2パケットに記されたあて先に対してパケットを送信可能なルーティングポイントとして中継サーバ3が指定されている。従って、クライアント端末11は、中継サーバ3との間に確立されたルーティングセッションを介して第2パケットを当該中継サーバ3に送信する。そして、中継サーバ3は、第2パケットに記されたあて先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出し、第2パケットをあて先の処理装置32に対して送信する。
【0072】
次に、あて先のIPアドレスが(192.168.5.51)である第3パケットをクライアント端末11が受信したとき(シーケンス番号11、packet03)について説明する。クライアント端末11は、あて先のIPアドレスとアドレスフィルタ情報とを比較した結果、あて先に対してパケットを送信可能なルーティングポイントが記述されていないことを検出する。この場合、クライアント端末11は、受信した第3パケットをどこにも送信しない。
【0073】
このように、本実施形態では、アプリケーション層のルーティングセッションで、ルーティング対象のデータを流すように構成されている。従って、以上で説明したルーティングは、通常のIPルーティングとは異なっている。また、上述のように、アドレスフィルタ情報記憶部55は、パケットの送信先として指定可能な相手の名称を表示可能となっている。そのため、ユーザは、VPNを用いてどの機器にパケットを送信可能であるかを容易に認識することができる。
【0074】
このようにアプリケーション層でルーティングを行うことにより、WANを意識することなく、遠隔地のLAN同士がプライベートIPアドレスを利用して相互に通信することができる。
【0075】
次に、VPNの開始後に、通信機器がVPNの構成要素としての機能を停止する場合の通信処理について、図13及び図14を参照して説明する。図13及び図14は、通信機器が停止する旨の通知を受けたときの処理を示すフローチャートである。
【0076】
なお、VPNの構成要素としての機能を停止する場合とは、当該機器がVPNグループから外れる場合、当該機器が中継グループから外れる場合、ネットワーク障害等の理由で当該機器が他の機器と通信できなくなる場合等、様々な状況が考えられる。また、以下では、代表してクライアント端末11が通知を受けた場合に行う処理について説明する。
【0077】
クライアント端末11は、他の機器から受けた通知が、中継サーバの停止の通知なのか、クライアント端末の停止の通知なのか、それ以外の通知なのかを判断する(S301,S302)。中継サーバの停止の通知だった場合、クライアント端末11は、自身が記憶する中継サーバ情報を参照することで、当該中継サーバに所属するクライアント端末を抽出し(S303)、停止する機器のリストとして、当該中継サーバ及びクライアント端末を記憶しておく(S304)。
【0078】
クライアント端末の停止の通知だった場合は、クライアント端末11は、停止する機器のリストとして当該クライアント端末を記憶しておく(S304)。なお、中継サーバの停止の通知でもクライアント端末の停止の通知でもなかった場合は、クライアント端末11は、通知の内容に対応した処理を必要に応じて行う(S305)。
【0079】
停止する機器のリストがS304で作成されると、クライアント端末11は、VPNが開始されていて、かつ、後述のS307〜S315の処理が完了していないVPNグループが存在するか否かを判断する(S306)。そのようなVPNグループが存在しない場合は、一連の処理を終了する。
【0080】
条件を満たすVPNグループが存在している場合、クライアント端末11は、S304で作成されたリストに記述された機器を1つ読み出す(S307)。そして、クライアント端末11は、読み出された機器(停止する機器)が、実行中のVPNにおいてルーティングポイントとして機能していたものか否かを判断する(S308)。
【0081】
読み出された機器がルーティングポイントとして機能している場合は、クライアント端末11は、当該ルーティングポイントを実際に停止させた場合においても、有効なルーティングポイントが2箇所以上残っているか否かを判断する(S309)。そして、残存するルーティングポイントの数が1以下になる場合は、VPNを存続させる意義が無いため、クライアント端末11はVPNの停止処理を行う(S310)。そして、クライアント端末11は、S309において有効なルーティングポイントと判定された1つのルーティング機器の識別情報と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称と、をディスプレイに表示する等してユーザに通知し(S311)、S306に戻る。
【0082】
有効なルーティングポイントが2以上残っている場合は、クライアント端末11は、VPNグループ情報に基づいて、自身と、停止の対象となるルーティングポイントと、で構成されるルーティングセッションが有るか否かを判断する(S312)。そして、そのようなルーティングセッションが有った場合は、当該ルーティングセッションを停止する(S313)。その後、クライアント端末11は、停止したルーティングポイントに対応付けられたアドレスフィルタ情報を削除する。
【0083】
以上のS307〜S313の処理により、停止すべき機器1台分についての処理が完了する。なお、S308において、当該機器がルーティングポイントとして機能しないと判断された場合は、S309〜S313の処理はスキップされる。
【0084】
その後、リストに記述された機器の中で未処理のものが残っているか否かを調べ(S314)、残っている機器がある場合は、それぞれについてS307〜S313の処理を行う。これにより、リストに記述された機器を1台ずつ調べ、当該機器がルーティングポイントであった場合のルーティングセッションの停止等の処理を行うことができる。
【0085】
VPNグループについて前記リストの全てについて処理が完了すると、クライアント端末11は、ルーティングポイントとして機能しているルーティング機器の識別情報等と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称と、をディスプレイに表示する等してユーザに通知する(S315)。その後、クライアント端末11は、S306に戻り、VPNが開始されているVPNグループのうち未処理のものがあるか否かを調べる。未処理のVPNグループがあれば、当該VPNグループについてS307〜S315の処理を行う。これにより、VPNが開始されている複数のVPNグループがあった場合に、そのそれぞれについて、機器の停止に伴う処理を適切に行うことができる。
【0086】
次に、クライアント端末11、クライアント端末21、及び中継サーバ3をルーティングポイントとするVPNグループにおいてVPNが開始されている状態で、中継サーバ3がVPNから外れる場合を考え、クライアント端末11が、上記で説明したフローに基づいて具体的にどのように動作するかについて説明する。図15は、中継サーバ3がVPNから外れるときの通信処理を示すシーケンス図である。
【0087】
中継サーバ3は、他の機器(クライアント端末11、中継サーバ1、クライアント端末21、及び中継サーバ2)に対して、当該中継サーバ3がVPNグループから外れる旨を通知する(図15のシーケンス番号12,13、exitVpn)。なお、通知を受ける側の機器の処理としては一部を除いて同一であるため、以下では、主にクライアント端末11に関係する処理のみを説明する。
【0088】
クライアント端末11は、中継サーバ3からの通知を受けると、当該通知が中継サーバの停止の通知であるか否かを判断する(図9のS301)。ここでは、受けた通知が中継サーバ3の停止に係るものと判断できるので、クライアント端末11は、自身の中継サーバ情報を参照する(S303)。
【0089】
図4に示す中継サーバ情報によれば、停止する中継サーバ3に所属するクライアント端末として、クライアント端末31が存在することが判る。中継サーバ3が中継機能を停止した場合、中継サーバ3のみならず、それに所属するクライアント端末31との通信も不可能になる。従って、クライアント端末11は、停止する機器のリストとして、中継サーバ3及びクライアント端末31を記憶する(S304)。リストに記述される順番は任意で良いが、今回の説明では、機器のリストに中継サーバ3、クライアント端末31の順番で記述されるものとする。
【0090】
次に、クライアント端末11は、S306の判断に移行し、VPNが開始されているVPNグループを調べる。すると、VPNが開始されているVPNグループ(ここでは、クライアント端末11、クライアント端末21、及び中継サーバ3をルーティングポイントとするVPNグループ)が存在することが判る。従って、クライアント端末11は、S304で作成された、停止する機器のリストに記述されている機器を1つずつ読み出す(S307)。
【0091】
リストには中継サーバ3、クライアント端末31の順で記述されているので、最初に読み出されるのは中継サーバ3である。クライアント端末11はS308の判断で図6のVPNグループ情報を参照し、当該中継サーバ3がルーティングポイントであることを検出する。
【0092】
次に、クライアント端末11は、中継サーバ3の停止後において有効なルーティングポイントが2箇所以上あるか否かを判断する(S309)。上記の場合では、中継サーバ3を停止させた場合でも、2箇所のルーティングポイント(即ち、クライアント端末11及びクライアント端末21)が残っている。従って、VPNを停止させず、S312の処理に移行する。
【0093】
次に、クライアント端末11はS312の判断を行うが、図6のVPNグループ情報によれば、自身と中継サーバ3とで構成されるルーティングセッションが有ることが判る。従って、クライアント端末11は、該当するルーティングセッションを停止する(S313、図15のシーケンス番号12におけるcloseVpnSsn)。
【0094】
次に、クライアント端末11はS314の判断に移行するが、停止する機器のリストの中に未処理のもの(クライアント端末31)があるため、S307に戻る。S307の処理ではクライアント端末31がリストから読み出されるが、このクライアント端末31はルーティングポイントとして機能しないので(S308)、S309〜S313の処理は行われない。クライアント端末11はS314の判断に移行するが、リストにおいて未処理の機器がなくなったことが判る。そして、クライアント端末11は、ルーティングポイントとして機能しているルーティング機器(クライアント端末11及びクライアント端末21)と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称(処理装置12、処理装置22、及び処理装置23)と、をディスプレイに表示する等してユーザに通知する(S315)。そこでS306に戻るが、未処理のVPNグループはもう残っていないので、処理を終了する。
【0095】
なお、クライアント端末11以外の機器も、中継サーバ3からの通知を受けて、上記と同様の処理を行う。従って、クライアント端末21と中継サーバ3との間に構成されたルーティングセッションが停止される(図15のシーケンス番号13におけるcloseVpnSsn)。そして、各ルーティング機器は、停止したルーティングポイントに対応付けられたアドレスフィルタ情報を削除する。なお、ここで削除されたアドレスフィルタ情報は、ユーザが参照できなくなるように処理される。
【0096】
上記のように処理を行うことにより、VPNをいったん停止させて再び開始する煩雑な処理を行うことなく、ルーティングポイントを減らすことができる。
【0097】
上記の処理後において、あて先のIPアドレスが(192.168.3.31)である第4パケットをクライアント端末21が処理装置22から受信したとき(シーケンス番号14、packet04)について説明する。クライアント端末21は、あて先のIPアドレスとアドレスフィルタ情報とを比較する。中継サーバ3に対応付けられたアドレスフィルタ情報は上記の処理で削除されているため、クライアント端末21は、あて先に対してパケットを送信可能なルーティングポイントが記述されていないと判断する。従って、クライアント端末21は、受信した第4パケットをどこにも送信しない。
【0098】
次に、上記のように中継サーバ3がVPNから外れた後において、更に中継サーバ2が中継グループからログアウトする場合について図13、図14、及び図16を参照して説明する。図16は、中継サーバ2が停止するときの通信処理を示すシーケンス図である。
【0099】
中継サーバ2は、接続を中断する前に、他の機器(中継サーバ1、クライアント端末11、クライアント端末21、及び中継サーバ3)に対して、当該中継サーバ2が停止することを通知する(シーケンス番号15,16,17、notifyServerLogout)。この停止を受けた他の機器は、上記と同様の処理を行う。
【0100】
今回の説明では中継サーバ2が停止されるので、当該中継サーバ2に所属するクライアント端末21はルーティングポイントとしての機能を失う。従って、既に中継サーバ3も停止されているので、有効なルーティングポイントはクライアント端末11の1箇所のみとなってしまい、VPNとしての意義がなくなる。従って、中継サーバ2から通知を受けた機器は、S309の判断でS310に移行し、VPNの終了処理を行うとともに、クライアント端末11は、有効なルーティングポイントとして機能していたルーティング機器(クライアント端末11)と、当該ルーティング機器がパケットの送信先として指定可能であった相手の名称(処理装置12)と、をディスプレイに表示する等してユーザに通知する(S311)。以下では、このVPNの終了処理をクライアント端末21が行う場合について図16を参照して説明する。
【0101】
クライアント端末21は、VPNグループの識別情報とともに、VPNを終了する旨を、クライアント端末11及び中継サーバ3に対して送信する(シーケンス番号18,19、stopVpn)。なお、クライアント端末11及び中継サーバ3は、クライアント端末21から受信したVPNグループの識別情報によって、どのVPNグループが終了されるかを知ることができる。
【0102】
クライアント端末21は、VPNの終了を受け付けた旨の信号をクライアント端末11及び中継サーバ3から受信した後に、クライアント端末11に対してルーティングセッションの終了コマンドを送信する(シーケンス番号20、closeVpnSsn)。
【0103】
以上により、クライアント端末11とクライアント端末21の間に確立されていたルーティングセッションを終了させることができる。そしてVPNグループによるVPNが終了する。
【0104】
以上に示したように、本実施形態の中継サーバ1は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、VPNグループ情報記憶部54と、アドレスフィルタ情報記憶部55と、通信制御部63と、を備える。中継グループ情報記憶部51は、自身(中継サーバ1)との間で相互に接続可能な他の中継サーバ(中継サーバ2,3,4)を含む中継グループの情報を記憶する。中継サーバ情報記憶部52は、中継グループに属する中継サーバの起動情報と、中継グループに属する中継サーバに接続されたクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。VPNグループ情報記憶部54は、中継通信システム100を構成する通信機器のうちルーティングポイントとして設定された通信機器を介してVPNにより通信を行うVPNグループに関し、当該VPNグループを構成するルーティング機器の識別情報を含むルーティングポイント情報542と、互いに接続されるルーティング機器の情報を含むルーティングセッション情報543と、を記憶する。アドレスフィルタ情報記憶部55は、パケットの送信先としてルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶する。制御部60は、VPNグループでVPNを開始した後に、あるルーティング機器がVPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う。
【0105】
これにより、中継サーバ1は、中継通信システム100を構成する他の通信機器から選択されたルーティング機器とVPNを構築できるため、必要な通信機器との間でのみファイルの共有等を行うことができる。また、中継サーバ2は、あるルーティング機器が接続不良又はメンテナンス等によってVPNグループの構成要素として機能しないことを検知したときに、VPNを維持したままで、当該ルーティング機器との間で確立されたルーティングセッションを停止させることができる。従って、状況の変化に柔軟に対応可能なVPNを構築できる。
【0106】
また、本実施形態の中継サーバ1は、他の中継サーバの識別情報と、当該他の中継サーバに所属するクライアント端末の識別情報と、を対応付けて記憶する中継サーバ情報記憶部52を備える。中継サーバ1は、他の中継サーバの通信が停止することを検知したときに、VPNグループ情報記憶部54及び中継サーバ情報記憶部52の記憶内容に基づいて、他の中継サーバに所属するクライアント端末がルーティングポイントとして機能する場合、当該クライアント端末との間で確立されたルーティングセッションを停止させる制御を行う。
【0107】
これにより、中継サーバ1は、他の中継サーバの通信が停止することを検知するだけで、当該他の中継サーバと接続され、かつルーティングポイントとして機能するクライアント端末との間で確立されたルーティングセッションを停止させることができる。従って、VPNグループとして機能しなくなる旨の信号をクライアント端末側から送信する必要をなくすことができる。
【0108】
また、本実施形態の中継サーバ1は、受信したパケットのあて先が、自身の識別情報と対応付けられたアドレスフィルタ情報において指定されているときは、当該あて先にパケットを送信する。中継サーバ1は、受信したパケットのあて先が、自身以外のルーティング機器の識別情報と対応付けられたアドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器にパケットを送信する。中継サーバ1は、受信したパケットのあて先が、ルーティング機器の識別情報と対応付けられたアドレスフィルタ情報において指定されていないときは、パケットを送信しない。
【0109】
これにより、中継サーバ1は、アドレスフィルタ情報に基づいて適切にルーティングを行うことができる。
【0110】
また、本実施形態の中継サーバ1においては、あるクライアント端末21がVPNグループの構成要素として機能しないことを検知したときに、クライアント端末21がVPNグループの構成要素として機能しなくなる結果として、当該VPNグループの構成要素であるルーティング機器が1つになる場合は、当該VPNグループを停止する制御を行う。
【0111】
これにより、実質的にネットワークとして機能しなくなったVPNを自動的に停止させることができる。
【0112】
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
【0113】
上記の中継グループ情報、中継サーバ情報、クライアント端末情報、VPNグループ情報、アドレスフィルタ情報等を格納する形式はXML形式に限定されず、適宜の形式で各情報を格納することができる。
【0114】
上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。
【符号の説明】
【0115】
1,2,3,4 中継サーバ
11,21,31,41 クライアント端末
10,20,30,40 LAN
50 記憶部
60 制御部
100 中継通信システム
【特許請求の範囲】
【請求項1】
自身との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに接続されたクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
前記中継グループ情報及び前記中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶するVPNグループ情報記憶部と、
パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う制御部と、
を備えることを特徴とする中継サーバ。
【請求項2】
請求項1に記載の中継サーバであって、
第2中継サーバの識別情報と、当該第2中継サーバを介して広域通信網に接続されるクライアント端末の識別情報と、を対応付けて記憶する中継サーバ情報記憶部を備え、
前記制御部は、
前記第2中継サーバの通信が停止することを検知したときに、前記VPNグループ情報記憶部及び前記中継サーバ情報記憶部の記憶内容に基づいて、前記第2中継サーバを介して広域通信網に接続されるクライアント端末の中にルーティングポイントとして機能するクライアント端末があるか否かを判断し、
ルーティングポイントとして機能するクライアント端末があれば、当該クライアント端末との間で確立されたルーティングセッションを停止させる制御を行うことを特徴とする中継サーバ。
【請求項3】
請求項1又は2に記載の中継サーバであって、
前記制御部は、
受信したパケットのあて先が、自身の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、当該あて先にパケットを送信し、
受信したパケットのあて先が、自身以外の前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器にパケットを送信し、
受信したパケットのあて先が、前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されていないときは、パケットを送信しないことを特徴とする中継サーバ。
【請求項4】
請求項1から3までの何れか一項に記載の中継サーバであって、
前記制御部は、
あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、
当該ルーティング機器が前記VPNグループの構成要素として機能しなくなる結果として、当該VPNグループの構成要素であるルーティング機器が1つになる場合は、当該VPNグループを停止する制御を行うことを特徴とする中継サーバ。
【請求項5】
複数の中継サーバと、
前記中継サーバを介して互いに接続可能なクライアント端末と、
を備え、
前記中継サーバは、
当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
前記中継サーバ及び前記クライアント端末のうちルーティングポイントとして設定されたルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶するVPNグループ情報記憶部と、
パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティングとの間で確立されたルーティングセッションを停止させる制御を行う制御部と、
を備えることを特徴とする中継通信システム。
【請求項1】
自身との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに接続されたクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
前記中継グループ情報及び前記中継サーバ情報に基づいて中継通信システムを構成する通信機器のうちルーティングポイントとして設定された通信機器であるルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶するVPNグループ情報記憶部と、
パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティング機器との間で確立されたルーティングセッションを停止させる制御を行う制御部と、
を備えることを特徴とする中継サーバ。
【請求項2】
請求項1に記載の中継サーバであって、
第2中継サーバの識別情報と、当該第2中継サーバを介して広域通信網に接続されるクライアント端末の識別情報と、を対応付けて記憶する中継サーバ情報記憶部を備え、
前記制御部は、
前記第2中継サーバの通信が停止することを検知したときに、前記VPNグループ情報記憶部及び前記中継サーバ情報記憶部の記憶内容に基づいて、前記第2中継サーバを介して広域通信網に接続されるクライアント端末の中にルーティングポイントとして機能するクライアント端末があるか否かを判断し、
ルーティングポイントとして機能するクライアント端末があれば、当該クライアント端末との間で確立されたルーティングセッションを停止させる制御を行うことを特徴とする中継サーバ。
【請求項3】
請求項1又は2に記載の中継サーバであって、
前記制御部は、
受信したパケットのあて先が、自身の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、当該あて先にパケットを送信し、
受信したパケットのあて先が、自身以外の前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されているときは、自身と当該ルーティング機器との間に確立されたルーティングセッションを介して当該ルーティング機器にパケットを送信し、
受信したパケットのあて先が、前記ルーティング機器の識別情報と対応付けられた前記アドレスフィルタ情報において指定されていないときは、パケットを送信しないことを特徴とする中継サーバ。
【請求項4】
請求項1から3までの何れか一項に記載の中継サーバであって、
前記制御部は、
あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、
当該ルーティング機器が前記VPNグループの構成要素として機能しなくなる結果として、当該VPNグループの構成要素であるルーティング機器が1つになる場合は、当該VPNグループを停止する制御を行うことを特徴とする中継サーバ。
【請求項5】
複数の中継サーバと、
前記中継サーバを介して互いに接続可能なクライアント端末と、
を備え、
前記中継サーバは、
当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
前記中継サーバ及び前記クライアント端末のうちルーティングポイントとして設定されたルーティング機器で構成され、当該ルーティング機器を介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング機器の識別情報及びルーティングセッションを確立して互いに接続される前記ルーティング機器を示す接続情報を記憶するVPNグループ情報記憶部と、
パケットの送信先として前記ルーティング機器が指定可能な相手を示すアドレスフィルタ情報を当該ルーティング機器の識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
前記VPNグループで仮想プライベートネットワークを開始した後に、あるルーティング機器が前記VPNグループの構成要素として機能しないことを検知したときに、仮想プライベートネットワークを停止させることなく、当該ルーティングとの間で確立されたルーティングセッションを停止させる制御を行う制御部と、
を備えることを特徴とする中継通信システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2012−109874(P2012−109874A)
【公開日】平成24年6月7日(2012.6.7)
【国際特許分類】
【出願番号】特願2010−258262(P2010−258262)
【出願日】平成22年11月18日(2010.11.18)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】
【公開日】平成24年6月7日(2012.6.7)
【国際特許分類】
【出願日】平成22年11月18日(2010.11.18)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】
[ Back to top ]