(57)【要約】【課題】中継サーバを介した通信を行っているＶＰＮ通信において、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能なＶＰＮ通信システムを提供する。【解決手段】本呼制御サーバは、ＷＡＮ２００上で、ＶＰＮを構築してＶＰＮ通信を行う複数のＶＰＮ装置１０１、３０１間の通信セッションを確立する呼制御サーバ２０２であって、信号通信部２４２、中継サーバ選定部２４３を備える。信号通信部２４２は、中継サーバ変更要求を第１中継サーバ２０３から受信する。次に、中継サーバ選定部２４３は、ＶＰＮ通信を新たに中継する中継サーバとして第１中継サーバ２０３とは異なる第２中継サーバ２０４を選定する。次に、信号通信部２４２は、選定された第２中継サーバ２０４がＶＰＮ通信を中継可能である場合、第２中継サーバ２０４の識別情報を含む中継サーバ変更指示を、ＶＰＮ装置１０１へ送信する。【選択図】図８
2011160286.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行う複数のＶＰＮ装置間の通信セッションを確立する呼制御サーバであって、
前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、第１の中継サーバから受信する中継先変更要求信号受信部と、
前記ＶＰＮ通信を新たに中継する中継サーバとして前記第１の中継サーバとは異なる第２の中継サーバを選定する中継サーバ選定部と、
前記中継サーバ選定部により選定された第２の中継サーバが前記ＶＰＮ通信を中継可能である場合、前記第２の中継サーバの識別情報を含み、前記ＶＰＮ通信を中継する中継サーバを前記第１の中継サーバから前記第２の中継サーバへ変更するための中継サーバ変更指示信号を、前記ＶＰＮ装置へ送信する中継サーバ変更指示信号送信部と、
を備える呼制御サーバ。
【請求項２】
ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して行われるＶＰＮ通信を中継する中継サーバであって、
当該中継サーバの処理負荷が所定処理負荷以上であるか否かを判定する処理負荷判定部と、
当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が所定使用率以上であるか否かを判定する使用率判定部と、
前記処理負荷判定部により前記処理負荷が前記所定処理負荷以上であると判定された場合、又は、前記使用率判定部により前記使用率が前記所定使用率以上であると判定された場合、当該中継サーバが中継する１以上のＶＰＮ通信から、当該中継サーバとは異なる他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、
前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含み、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、前記ＶＰＮ装置間の通信セッションを確立する呼制御サーバへ送信する中継先変更要求信号送信部と、
を備える中継サーバ。
【請求項３】
ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して行われるＶＰＮ通信を中継する中継サーバであって、
当該中継サーバとは異なる他の中継サーバへ前記ＶＰＮ通信の中継先を変更するための指示を行う中継先変更指示部と、
当該中継サーバが中継する１以上のＶＰＮ通信から、前記他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、
前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含み、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、前記ＶＰＮ装置間の通信セッションを確立する呼制御サーバへ送信する中継先変更要求信号送信部と、
を備える中継サーバ。
【請求項４】
ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して行われるＶＰＮ通信を中継する中継サーバであって、
前記ＶＰＮ通信の中継の可否を確認するための中継先状況確認信号を、前記ＶＰＮ装置間の通信セッションを確立する呼制御サーバから受信する中継先状況確認信号受信部と、
当該中継サーバの処理負荷が規定値以上であるか否かを判定する処理負荷判定部と、
当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が規定値以上であるか否かを判定する使用率判定部と、
前記処理負荷判定部による判定結果と前記使用率判定部による判定結果とに基づいて、当該中継サーバによる前記ＶＰＮ通信の中継の可否情報を含む中継先状況確認応答信号を、前記呼制御サーバへ送信する中継先状況確認応答信号送信部と、
を備える中継サーバ。
【請求項５】
ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行うＶＰＮ装置であって、
ＶＰＮ装置間の通信セッションを確立する呼制御サーバから、前記ＶＰＮ通信を中継する中継サーバを第１の中継サーバから第２の中継サーバへ変更するための、前記第２の中継サーバの識別情報を含む中継サーバ変更指示信号を受信する中継サーバ変更指示信号受信部と、
前記第２の中継サーバの識別情報を含み、前記中継サーバを変更するための中継サーバ接続変更指示信号を、前記呼制御サーバを介して、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置へ送信する中継サーバ接続変更指示信号送信部と、
前記通信先のＶＰＮ装置が変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信を実行可能である場合、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、
を備えるＶＰＮ装置。
【請求項６】
ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行うＶＰＮ装置であって、
ＶＰＮ装置間の通信セッションを確立する呼制御サーバを介して、前記ＶＰＮ通信を中継する中継サーバを第１の中継サーバから第２の中継サーバへ変更するための、前記第２の中継サーバの識別情報を含む中継サーバ接続変更指示信号を、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置から受信する中継サーバ接続変更指示信号受信部と、
変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信の可否を判定するＶＰＮ通信可否判定部と、
ＶＰＮ通信可否判定部により前記第２の中継サーバを介したＶＰＮ通信が可能であると判定された場合、前記第２の中継サーバを介したＶＰＮ通信が可能である旨を含む中継サーバ接続変更応答信号を、前記通信先のＶＰＮ装置へ送信する中継サーバ接続変更応答信号送信部と、
前記中継サーバ接続変更応答信号の送信後、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、
を備えるＶＰＮ装置。
【請求項７】
ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して通信を行うＶＰＮ通信システムであって、
前記仮想プライベートネットワークを介して通信データを通信するＶＰＮ通信を行う複数のＶＰＮ装置と、
前記複数のＶＰＮ装置間の通信セッションを確立する呼制御サーバと、
前記複数のＶＰＮ装置間でのＶＰＮ通信を中継する複数の中継サーバと、
を備え、
前記呼制御サーバは、
前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、第１の中継サーバから受信する中継先変更要求信号受信部と、
前記ＶＰＮ通信を新たに中継する中継サーバとして前記第１の中継サーバとは異なる第２の中継サーバを選定する中継サーバ選定部と、
前記中継サーバ選定部により選定された第２の中継サーバが前記ＶＰＮ通信を中継可能である場合、前記第２の中継サーバの識別情報を含み、前記ＶＰＮ通信を中継する中継サーバを前記第１の中継サーバから前記第２の中継サーバへ変更するための中継サーバ変更指示信号を、前記ＶＰＮ装置へ送信する中継サーバ変更指示信号送信部と、
を備えるＶＰＮ通信システム。
【請求項８】
請求項７に記載のＶＰＮ通信システムであって、
前記中継サーバは、
当該中継サーバの処理負荷が所定処理負荷以上であるか否かを判定する処理負荷判定部と、
当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が所定使用率以上であるか否かを判定する使用率判定部と、
前記処理負荷判定部により前記処理負荷が前記所定処理負荷以上であると判定された場合、又は、前記使用率判定部により前記使用率が前記所定使用率以上であると判定された場合、当該中継サーバが中継する１以上のＶＰＮ通信から、当該中継サーバとは異なる他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、
前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含む前記中継先変更要求信号を、前記呼制御サーバへ送信する中継先変更要求信号送信部と、
を備えるＶＰＮ通信システム。
【請求項９】
請求項７に記載のＶＰＮ通信システムであって、
前記中継サーバは、
当該中継サーバとは異なる他の中継サーバへ前記ＶＰＮ通信の中継先を変更するための指示を行う中継先変更指示部と、
当該中継サーバが中継する１以上のＶＰＮ通信から、前記他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、
前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含む前記中継先変更要求信号を、前記呼制御サーバへ送信する中継先変更要求信号送信部と、
を備えるＶＰＮ通信システム。
【請求項１０】
請求項７に記載のＶＰＮ通信システムであって、
前記中継サーバは、
前記ＶＰＮ通信の中継の可否を確認するための中継先状況確認信号を、前記呼制御サーバから受信する中継先状況確認信号受信部と、
当該中継サーバの処理負荷が規定値以上であるか否かを判定する処理負荷判定部と、
当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が規定値以上であるか否かを判定する使用率判定部と、
前記処理負荷判定部による判定結果と前記使用率判定部による判定結果とに基づいて、当該中継サーバによる前記ＶＰＮ通信の中継の可否情報を含む中継先状況確認応答信号を、前記呼制御サーバへ送信する中継先状況確認応答信号送信部と、
を備えるＶＰＮ通信システム。
【請求項１１】
請求項７に記載のＶＰＮ通信システムであって、
前記ＶＰＮ装置は、
前記呼制御サーバからの前記中継サーバ変更指示信号を受信する中継サーバ変更指示信号受信部と、
前記第２の中継サーバの識別情報を含み、前記中継サーバを変更するための中継サーバ接続変更指示信号を、前記呼制御サーバを介して、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置へ送信する中継サーバ接続変更指示信号送信部と、
前記通信先のＶＰＮ装置が変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信を実行可能である場合、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、
を備えるＶＰＮ通信システム。
【請求項１２】
請求項７に記載のＶＰＮ通信システムであって、
前記ＶＰＮ装置は、
前記第２の中継サーバの識別情報を含み、前記中継サーバを変更するための中継サーバ接続変更指示信号を、前記呼制御サーバを介して、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置から受信する中継サーバ接続変更指示信号受信部と、
変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信の可否を判定するＶＰＮ通信可否判定部と、
ＶＰＮ通信可否判定部により前記第２の中継サーバを介したＶＰＮ通信が可能であると判定された場合、前記第２の中継サーバを介したＶＰＮ通信が可能である旨を含む中継サーバ接続変更応答信号を、前記通信先のＶＰＮ装置へ送信する中継サーバ接続変更応答信号送信部と、
前記中継サーバ接続変更応答信号の送信後、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、
を備えるＶＰＮ通信システム。
【請求項１３】
ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行う複数のＶＰＮ装置間の通信セッションを確立する呼制御サーバのＶＰＮネットワーキング方法であって、
前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、第１の中継サーバから受信するステップと、
前記ＶＰＮ通信を新たに中継する中継サーバとして前記第１の中継サーバとは異なる第２の中継サーバを選定するステップと、
前記選定された第２の中継サーバが前記ＶＰＮ通信を中継可能である場合、前記第２の中継サーバの識別情報を含み、前記ＶＰＮ通信を中継する中継サーバを前記第１の中継サーバから前記第２の中継サーバへ変更するための中継サーバ変更指示信号を、前記ＶＰＮ装置へ送信するステップと、
を有するＶＰＮネットワーキング方法。
【請求項１４】
請求項１３に記載のＶＰＮネットワーキング方法の各ステップを実行させるためのプログラム。
【請求項１５】
請求項１３に記載のＶＰＮネットワーキング方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、呼制御サーバ、中継サーバ、ＶＰＮ装置、ＶＰＮ通信システム、ＶＰＮネットワーキング方法、プログラム、及び記憶媒体に関し、特に、ＶＰＮ（Virtual Private Network：仮想プライベートネットワーク）通信を行うＶＰＮ装置間での通信の中継に関与する装置等に関する。
【背景技術】
【０００２】
仮想プライベートネットワーク（以下、ＶＰＮと記載する）は、ネットワーク通信において通信相手の固定された専用通信回線（専用線）の代わりに、多数の加入者で帯域を共用する通信網を利用してネットワーク間などを接続する。たとえば、ＶＰＮは、企業内等の２以上の拠点のローカルエリアネットワーク（ＬＡＮ）相互間などのような、一般に、異なるネットワークセグメントを、広域ネットワーク（ＷＡＮ）などを介して互いに接続する。そして、通信の秘匿性を担保することで、仮想的に全体が１つのプライベートネットワーク（専用線）であるように構成する。これにより、専用線を利用する場合と同様の通信サービスを可能にする。
【０００３】
このようなＶＰＮは、インターネット等のＷＡＮや公衆回線網を利用して構築するいわゆるインターネットＶＰＮと、通信事業者閉域網などのインターネット等とは異なる通信網を使用して構築するＩＰ−ＶＰＮと、に大別される。特に、インターネットＶＰＮは、昨今のネットワークインフラのブロードバンド化と、インターネットを利用することで安価にＶＰＮを構築可能であるために、利用者が増加している。
【０００４】
ＶＰＮを構築するにあたり、例えば異なる拠点間で通信を行う場合に、通信経路の途中にインターネット等の共用の通信網が介在するので、通信の漏洩、盗聴、改竄などの危険性がある。そこで、ＶＰＮ技術においては、通信の秘匿性を担保するために、ネットワークのいずれかの階層において、データを暗号化しカプセリングすることを基本的な技術思想としている。ここで、ある通信プロトコルを他の通信プロトコルのパケットで包んで送ることを「カプセル化（カプセリング）」という。
【０００５】
ＶＰＮ技術で用いられる暗号化プロトコルの具体例としては、ＩＰ（Internet Protocol）層で暗号化を施すＩＰｓｅｃ（Security Architecture for Internet Protocol）や、ＴＣＰ（Transmission Control Protocol）層（特にＨＴＴＰ：Hyper Text Transfer Protocolで使用）で暗号化を施すＳＳＬ（Secure Sockets Layer）などが知られている。また、他のＶＰＮ技術の例として、ＳＳＨ、ＴＬＳ、ＳｏｆｔＥｔｈｅｒ、ＰＰＴＰ、Ｌ２ＴＰ、Ｌ２Ｆ、ＭＰＬＳなどが知られている。ソフトウェアによってＶＰＮを構築するソフトウェアＶＰＮでは、上記のＩＰｓｅｃやＳＳＬを使用したトンネリング技術を使用する。ここで、ある通信プロトコルを、同じまたはより上位の階層のプロトコルのデータとして通信することを「トンネリング」という。ＶＰＮを構築する場合は、ネットワークの中継装置または通信を行う端末等（以降、これらを「ピア」とも称する）に設けたＶＰＮ装置によって、パケットを暗号化及びカプセル化して仮想トンネルを構築する。これにより、ピア間を結ぶ閉じられた通信経路（例えば、Ｐ２Ｐ（Peer to Peer）通信経路）を確立する。
【０００６】
例えば、ネットワーク間を相互接続する技術として、リバーストンネル技術を用いて通信路を構築し、通信路を維持するために通信路維持データを送信し、さらに、通信漏洩等を防止するために電子署名や暗号化を施すものが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１６０４９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、ＶＰＮ装置間でＰ２Ｐ通信経路を介してＶＰＮによる秘匿性を担保した通信（以下、ＶＰＮ通信とも称する）を行うことを希望しても、ＮＡＴルータやネットワーク上に配された機器のＦｉｒｅｗａｌｌの機能により、Ｐ２Ｐ通信経路を構築できず、中継サーバ（リレーサーバ）を経由したＶＰＮ通信を行わざるを得ない場合がある。中継サーバを経由してＶＰＮ通信を行う場合には、公衆回線を使用できる環境が多く、安定した通信が可能であるというメリットがある。
【０００９】
しかしながら、中継サーバは、ＶＰＮ装置が接続されたＬＡＮ内ではなく、外部（例えばインターネット上）に別途設置される必要があるために、設置、維持コストがかかり、運用上大規模な中継サーバを事前に導入することは困難である。
【００１０】
また、ＶＰＮ装置間で中継サーバを経由して行われるデータ通信は、そのデータ通信の種類によりデータ量が異なるため、通信負荷が一意に決まらない。例えば、データ通信が高圧縮の音声通信である場合には中継サーバにかかる負荷は小さく、データ通信が画像データや高品質の音声通信である場合には中継サーバにかかる負荷は大きくなる。
【００１１】
また、これらのＶＰＮ通信による通信負荷は、実際に通信が開始される時に決定されるため、ＶＰＮセッションが構築された段階では中継サーバにかかる通信負荷が予測できない。実際に通信が開始され、その通信が中継サーバの処理能力を超えた通信だった場合には、当該通信だけでなく、その中継サーバで通信していた他の通信にも影響が生じ、当該他の通信ができなくなる可能性もある。
【００１２】
また、中継サーバのメンテナンス時のように、自発的に中継サーバが関与するＶＰＮセッションを他の中継サーバに変更する場合には、従来のシステムでは、ＶＰＮセッションが縮退（ＶＰＮセッションが切断されるのを待ち、新しい通信はメンテナンスを行う中継サーバに発生しないように）する動作となり、通信中のＶＰＮセッションが全て終了するまで待機するか、強制的に通信中のＶＰＮセッションを切断することでしか次の工程に入ることができなかった。
【００１３】
本発明は、上記事情に鑑みてなされたものであって、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能な呼制御サーバ、中継サーバ、ＶＰＮ装置、ＶＰＮ通信システム、ＶＰＮネットワーキング方法、プログラム、及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の呼制御サーバは、ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行う複数のＶＰＮ装置間の通信セッションを確立する呼制御サーバであって、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、第１の中継サーバから受信する中継先変更要求信号受信部と、前記ＶＰＮ通信を新たに中継する中継サーバとして前記第１の中継サーバとは異なる第２の中継サーバを選定する中継サーバ選定部と、前記中継サーバ選定部により選定された第２の中継サーバが前記ＶＰＮ通信を中継可能である場合、前記第２の中継サーバの識別情報を含み、前記ＶＰＮ通信を中継する中継サーバを前記第１の中継サーバから前記第２の中継サーバへ変更するための中継サーバ変更指示信号を、前記ＶＰＮ装置へ送信する中継サーバ変更指示信号送信部と、を備える。
【００１５】
この構成によれば、呼制御サーバが中継サーバの変更の必要性を監視し、中継サーバを変更する必要がある場合には、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００１６】
本発明の中継サーバは、ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して行われるＶＰＮ通信を中継する中継サーバであって、当該中継サーバの処理負荷が所定処理負荷以上であるか否かを判定する処理負荷判定部と、当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が所定使用率以上であるか否かを判定する使用率判定部と、前記処理負荷判定部により前記処理負荷が前記所定処理負荷以上であると判定された場合、又は、前記使用率判定部により前記使用率が前記所定使用率以上であると判定された場合、当該中継サーバが中継する１以上のＶＰＮ通信から、当該中継サーバとは異なる他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含み、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、前記ＶＰＮ装置間の通信セッションを確立する呼制御サーバへ送信する中継先変更要求信号送信部と、を備える。
【００１７】
この構成によれば、中継サーバの負荷が増大した場合であっても、中継サーバにかかる負荷を分散し、安定したＶＰＮ通信を行うことが可能である。
【００１８】
本発明の中継サーバは、ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して行われるＶＰＮ通信を中継する中継サーバであって、当該中継サーバとは異なる他の中継サーバへ前記ＶＰＮ通信の中継先を変更するための指示を行う中継先変更指示部と、当該中継サーバが中継する１以上のＶＰＮ通信から、前記他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含み、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、前記ＶＰＮ装置間の通信セッションを確立する呼制御サーバへ送信する中継先変更要求信号送信部と、を備える。
【００１９】
この構成によれば、中継サーバのメンテナンスを行う場合など、自発的にＶＰＮ通信を中継する中継サーバを変更する場合であっても、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信継続したまま即座にメンテナンス作業を行うことができる環境に移行することが可能である。
【００２０】
本発明の中継サーバは、ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して行われるＶＰＮ通信を中継する中継サーバであって、前記ＶＰＮ通信の中継の可否を確認するための中継先状況確認信号を、前記ＶＰＮ装置間の通信セッションを確立する呼制御サーバから受信する中継先状況確認信号受信部と、当該中継サーバの処理負荷が規定値以上であるか否かを判定する処理負荷判定部と、当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が規定値以上であるか否かを判定する使用率判定部と、前記処理負荷判定部による判定結果と前記使用率判定部による判定結果とに基づいて、当該中継サーバによる前記ＶＰＮ通信の中継の可否情報を含む中継先状況確認応答信号を、前記呼制御サーバへ送信する中継先状況確認応答信号送信部と、を備える。
【００２１】
この構成によれば、ＶＰＮセッションの受け入れが可能であるか否かを判断し、受け入れが可能である場合にのみＶＰＮセッションの移行を受け入れるため、ＶＰＮ通信を継続したままＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００２２】
本発明のＶＰＮ装置は、ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行うＶＰＮ装置であって、ＶＰＮ装置間の通信セッションを確立する呼制御サーバから、前記ＶＰＮ通信を中継する中継サーバを第１の中継サーバから第２の中継サーバへ変更するための、前記第２の中継サーバの識別情報を含む中継サーバ変更指示信号を受信する中継サーバ変更指示信号受信部と、前記第２の中継サーバの識別情報を含み、前記中継サーバを変更するための中継サーバ接続変更指示信号を、前記呼制御サーバを介して、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置へ送信する中継サーバ接続変更指示信号送信部と、前記通信先のＶＰＮ装置が変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信を実行可能である場合、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、を備える。
【００２３】
この構成によれば、中継サーバを変更する必要が発生した場合に、通信先のＶＰＮ装置へ中継サーバを変更する旨を通知することができるため、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００２４】
本発明のＶＰＮ装置は、ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行うＶＰＮ装置であって、ＶＰＮ装置間の通信セッションを確立する呼制御サーバを介して、前記ＶＰＮ通信を中継する中継サーバを第１の中継サーバから第２の中継サーバへ変更するための、前記第２の中継サーバの識別情報を含む中継サーバ接続変更指示信号を、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置から受信する中継サーバ接続変更指示信号受信部と、変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信の可否を判定するＶＰＮ通信可否判定部と、ＶＰＮ通信可否判定部により前記第２の中継サーバを介したＶＰＮ通信が可能であると判定された場合、前記第２の中継サーバを介したＶＰＮ通信が可能である旨を含む中継サーバ接続変更応答信号を、前記通信先のＶＰＮ装置へ送信する中継サーバ接続変更応答信号送信部と、前記中継サーバ接続変更応答信号の送信後、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、を備える。
【００２５】
この構成によれば、中継サーバを変更する必要が発生したことを他のＶＰＮ装置からの通知により認識できるため、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００２６】
本発明のＶＰＮ通信システムは、ネットワーク上で、複数のＶＰＮ装置間で仮想プライベートネットワークを構築して通信を行うＶＰＮ通信システムであって、前記仮想プライベートネットワークを介して通信データを通信するＶＰＮ通信を行う複数のＶＰＮ装置と、前記複数のＶＰＮ装置間の通信セッションを確立する呼制御サーバと、前記複数のＶＰＮ装置間でのＶＰＮ通信を中継する複数の中継サーバと、を備え、前記呼制御サーバが、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、第１の中継サーバから受信する中継先変更要求信号受信部と、前記ＶＰＮ通信を新たに中継する中継サーバとして前記第１の中継サーバとは異なる第２の中継サーバを選定する中継サーバ選定部と、前記中継サーバ選定部により選定された第２の中継サーバが前記ＶＰＮ通信を中継可能である場合、前記第２の中継サーバの識別情報を含み、前記ＶＰＮ通信を中継する中継サーバを前記第１の中継サーバから前記第２の中継サーバへ変更するための中継サーバ変更指示信号を、前記ＶＰＮ装置へ送信する中継サーバ変更指示信号送信部と、を備える。
【００２７】
この構成によれば、呼制御サーバが中継サーバの変更の必要性を監視し、中継サーバを変更する必要がある場合には、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００２８】
本発明のＶＰＮ通信システムは、前記中継サーバが、当該中継サーバの処理負荷が所定処理負荷以上であるか否かを判定する処理負荷判定部と、当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が所定使用率以上であるか否かを判定する使用率判定部と、前記処理負荷判定部により前記処理負荷が前記所定処理負荷以上であると判定された場合、又は、前記使用率判定部により前記使用率が前記所定使用率以上であると判定された場合、当該中継サーバが中継する１以上のＶＰＮ通信から、当該中継サーバとは異なる他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含む前記中継先変更要求信号を、前記呼制御サーバへ送信する中継先変更要求信号送信部と、を備える。
【００２９】
この構成によれば、中継サーバの負荷が増大した場合であっても、中継サーバにかかる負荷を分散し、安定したＶＰＮ通信を行うことが可能である。
【００３０】
本発明のＶＰＮ通信システムは、前記中継サーバが、当該中継サーバとは異なる他の中継サーバへ前記ＶＰＮ通信の中継先を変更するための指示を行う中継先変更指示部と、当該中継サーバが中継する１以上のＶＰＮ通信から、前記他の中継サーバへ中継先を変更するＶＰＮ通信を選定する変更通信選定部と、前記変更通信選定部により選定されたＶＰＮ通信を特定するための情報を含む前記中継先変更要求信号を、前記呼制御サーバへ送信する中継先変更要求信号送信部と、を備える。
【００３１】
この構成によれば、中継サーバのメンテナンスを行う場合など、自発的にＶＰＮ通信を中継する中継サーバを変更する場合であっても、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信継続したまま即座にメンテナンス作業を行うことができる環境に移行することが可能である。
【００３２】
本発明のＶＰＮ通信システムは、前記中継サーバが、前記ＶＰＮ通信の中継の可否を確認するための中継先状況確認信号を、前記呼制御サーバから受信する中継先状況確認信号受信部と、当該中継サーバの処理負荷が規定値以上であるか否かを判定する処理負荷判定部と、当該中継サーバが中継する前記ＶＰＮ装置間のＶＰＮ通信に使用される使用通信帯域の使用率が規定値以上であるか否かを判定する使用率判定部と、前記処理負荷判定部による判定結果と前記使用率判定部による判定結果とに基づいて、当該中継サーバによる前記ＶＰＮ通信の中継の可否情報を含む中継先状況確認応答信号を、前記呼制御サーバへ送信する中継先状況確認応答信号送信部と、を備える。
【００３３】
この構成によれば、ＶＰＮセッションの受け入れが可能であるか否かを判断し、受け入れが可能である場合にのみＶＰＮセッションの移行を受け入れるため、ＶＰＮ通信を継続したままＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００３４】
本発明のＶＰＮ通信システムは、前記ＶＰＮ装置が、前記呼制御サーバからの前記中継サーバ変更指示信号を受信する中継サーバ変更指示信号受信部と、前記第２の中継サーバの識別情報を含み、前記中継サーバを変更するための中継サーバ接続変更指示信号を、前記呼制御サーバを介して、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置へ送信する中継サーバ接続変更指示信号送信部と、前記通信先のＶＰＮ装置が変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信を実行可能である場合、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、を備える。
【００３５】
この構成によれば、中継サーバを変更する必要が発生した場合に、通信先のＶＰＮ装置へ中継サーバを変更する旨を通知することができるため、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００３６】
本発明のＶＰＮ通信システムは、前記ＶＰＮ装置が、前記第２の中継サーバの識別情報を含み、前記中継サーバを変更するための中継サーバ接続変更指示信号を、前記呼制御サーバを介して、当該ＶＰＮ装置とのＶＰＮ通信を行う通信先のＶＰＮ装置から受信する中継サーバ接続変更指示信号受信部と、変更後の中継サーバとしての前記第２の中継サーバを介したＶＰＮ通信の可否を判定するＶＰＮ通信可否判定部と、ＶＰＮ通信可否判定部により前記第２の中継サーバを介したＶＰＮ通信が可能であると判定された場合、前記第２の中継サーバを介したＶＰＮ通信が可能である旨を含む中継サーバ接続変更応答信号を、前記通信先のＶＰＮ装置へ送信する中継サーバ接続変更応答信号送信部と、前記中継サーバ接続変更応答信号の送信後、前記通信先のＶＰＮ装置との間で、前記第２の中継サーバを介して前記通信データを通信するデータ通信部と、を備える。
【００３７】
この構成によれば、中継サーバを変更する必要が発生したことを他のＶＰＮ装置からの通知により認識できるため、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００３８】
本発明のＶＰＮネットワーキング方法は、ネットワーク上で、仮想プライベートネットワークを構築してＶＰＮ通信を行う複数のＶＰＮ装置間の通信セッションを確立する呼制御サーバのＶＰＮネットワーキング方法であって、前記ＶＰＮ通信を中継する中継サーバを変更するための中継先変更要求信号を、第１の中継サーバから受信するステップと、前記ＶＰＮ通信を新たに中継する中継サーバとして前記第１の中継サーバとは異なる第２の中継サーバを選定するステップと、前記選定された第２の中継サーバが前記ＶＰＮ通信を中継可能である場合、前記第２の中継サーバの識別情報を含み、前記ＶＰＮ通信を中継する中継サーバを前記第１の中継サーバから前記第２の中継サーバへ変更するための中継サーバ変更指示信号を、前記ＶＰＮ装置へ送信するステップと、を有する。
【００３９】
この方法によれば、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００４０】
本発明のプログラムは、上記ＶＰＮネットワーキング方法の各ステップを実行させるためのプログラムである。
【００４１】
このプログラムによれば、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【００４２】
本発明の記憶媒体は、上記ＶＰＮネットワーキング方法の各ステップを実行させるためのプログラムを記録したコンピュータ読み取り可能な記憶媒体である。
【００４３】
この記憶媒体を有することで、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。
【発明の効果】
【００４４】
本発明によれば、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能である。例えば、ＶＰＮ装置間でのＶＰＮ通信を中継する中継サーバの負荷が増大した場合であっても、中継サーバにかかる負荷を分散し、安定したＶＰＮ通信を行うことが可能である。
【図面の簡単な説明】
【００４５】
【図１】本発明の実施形態に係るＶＰＮシステムの構成例を示す図
【図２】本発明の実施形態に係るＶＰＮ装置のハードウェア構成の構成例を示すブロック図
【図３】本発明の実施形態に係るＶＰＮ装置の機能的な構成例を示すブロック図
【図４】本発明の実施形態に係る呼制御サーバ、中継サーバの構成例を示すブロック図
【図５】本発明の実施形態に係る呼制御サーバの機能的な構成例を示すブロック図
【図６】本発明の実施形態に係る中継サーバの機能的な構成例を示すブロック図
【図７】本発明の実施形態に係るＶＰＮシステムにおけるＶＰＮ構築時の処理手順の一例を示すシーケンス図
【図８】本発明の実施形態に係るＶＰＮシステムにおけるＶＰＮ構築時の処理手順の一例を示すシーケンス図
【図９】本発明の実施形態に係る中継サーバによる負荷確認処理の一例を示すフローチャート
【図１０】本発明の実施形態に係る呼制御サーバによるセッション変更処理の一例を示すフローチャート
【図１１】本発明の実施形態に係る中継サーバによるセッション受け入れ判定処理の一例を示すフローチャート
【図１２】本発明の実施形態に係るＶＰＮ装置の中継サーバ変更指示受信時処理の一例を示すフローチャート
【図１３】本発明の実施形態に係るＶＰＮ装置の中継サーバ接続変更指示受信時処理の一例を示すフローチャート
【図１４】本発明の実施形態に係る中継サーバのメンテナンス時のセッション変更処理の一例を示すフローチャート
【発明を実施するための形態】
【００４６】
以下に、本発明に係る呼制御サーバ、中継サーバ、ＶＰＮ装置、ＶＰＮ通信システム、ＶＰＮネットワーキング方法、プログラム、及び記憶媒体の一例としての実施形態を説明する。ここでは、広域ネットワーク（ＷＡＮ、ワイドエリアネットワーク）を介して２つのローカルエリアネットワーク（ＬＡＮ、ローカルエリアネットワーク）の経路を接続して仮想プライベートネットワーク（ＶＰＮ）システムを構築する場合の構成例を示す。ＬＡＮとしては、有線ＬＡＮまたは無線ＬＡＮなどが用いられる。ＷＡＮとしては、インターネット等が用いられる。
【００４７】
図１は本発明の実施形態に係るＶＰＮシステムの構成例を示す図である。本実施形態のＶＰＮシステムは、一つの拠点に設けられたＬＡＮ１００と、他の拠点に設けられたＬＡＮ３００とを、インターネット等のＷＡＮ２００を介して通信経路を接続する。そして、ＬＡＮ１００の配下に接続された端末１０３とＬＡＮ３００の配下に接続された端末３０３との間で、ＶＰＮ通信を可能にしている。具体的なＶＰＮ通信の用途（アプリケーションプログラム等）としては、ＩＰ電話（音声通話）、ネットミーティング（動画＆音声通信）、ネットワークカメラ（ビデオ伝送）などが想定される。
【００４８】
ＬＡＮ１００とＷＡＮ２００との境界にはルータ１０２が配設され、ＷＡＮ２００とＬＡＮ３００との境界にはルータ３０２が配設されている。また、本実施形態では、ＶＰＮの構築を可能にするために、ＬＡＮ１００にはＶＰＮ装置１０１が接続され、ＬＡＮ３００にはＶＰＮ装置３０１が接続されている。そして、ＶＰＮ装置１０１には配下の端末１０３が接続され、ＶＰＮ装置３０１には配下の端末３０３が接続されている。
【００４９】
また、ＷＡＮ２００上には、ＶＰＮ装置１０１とＶＰＮ装置３０１との間のＶＰＮによる接続（以下、「ＶＰＮ接続」と称する）を可能にするために、ＳＴＵＮサーバ２０１と呼制御サーバ２０２とが接続されている。ＳＴＵＮサーバ２０１は、ＳＴＵＮ（Simple Traversal of User Datagram Protocol (UDP) through Network Address Translators (NATs)）プロトコルを実行するために用いられるサーバである。呼制御サーバ２０２は、ＶＰＮ装置や端末等のピア間の発呼、被呼のために用いられるサーバである。さらに、ＷＡＮ２００上には、通信環境に応じてＶＰＮ装置１０１とＶＰＮ装置３０１の通信情報を中継するために、通信を中継する第１中継サーバ２０３、第２中継サーバ２０４が接続されている。
【００５０】
本実施形態のＶＰＮ装置１０１とＶＰＮ装置３０１との間のＶＰＮ通信の通信経路としては、ＷＡＮ２００を介して仮想的な閉じられた通信経路を通じて直接通信を行うＰ２Ｐ通信経路、呼制御サーバ２０２を介して仮想的な閉じられた通信経路を通じて通信を行う呼制御サーバ通信経路、第１中継サーバ２０３を介して仮想的な閉じられた通信経路を通じて通信を行う第１中継サーバ通信経路、第２中継サーバ２０４を介して仮想的な閉じられた通信経路を通じて通信を行う第２中継サーバ通信経路がある。
【００５１】
図１では、発呼及び被呼の制御に関する呼制御信号の流れを示している。図１において、実線は、呼制御サーバ２０２経由のＶＰＮ通信の流れを示している。また、破線は、第１中継サーバ２０３経由のＶＰＮ通信の流れを示している。また、一点鎖線は、第２中継サーバ２０４経由のＶＰＮ通信の流れを示している。また、ＳＴＵＮサーバ２０１とＶＰＮ装置１０１、３０１との間では、ＶＰＮ装置１０１、３０１の要求によりルータ１０２、３０２で割り当てられたＶＰＮ装置１０１、３０１間で通信するための外部アドレス（グローバルＩＰアドレス）とポートの情報を含む外部アドレス・ポート情報が伝送される。
【００５２】
各機器がＷＡＮ２００を介して通信する場合、ＷＡＮ２００上では、伝送するパケットの送信元や送信先を特定するためのアドレス情報として、ＷＡＮにおいて特定可能なグローバルなアドレス情報が用いられる。一般にはＩＰネットワークが用いられるため、グローバルＩＰアドレス及びポート番号が用いられる。しかし、各ＬＡＮ１００、３００内の通信においては、送信元や送信先を特定するためのアドレス情報として、ＬＡＮ内のみで特定可能なローカルなアドレス情報が用いられる。一般にはＩＰネットワークが用いられるため、ローカルＩＰアドレス及びポート番号が用いられる。したがって、各ＬＡＮ１００、３００とＷＡＮ２００との間の通信を可能にするために、ローカルなアドレス情報・ポート情報とグローバルなアドレス情報・ポート情報との相互変換を行うＮＡＴ（Network Address Translation）機能が各ルータ１０２、３０２に搭載されている。なお、ＩＰネットワーク以外の場合には、グローバルＩＰアドレス以外のグローバルなアドレス情報であってもよい。
【００５３】
ただし、ＬＡＮ１００、３００の配下の各端末においては、外部からアクセス可能なグローバルＩＰアドレス情報を自身で持っていない。また、特別な設定を行わない限り、ＬＡＮ１００配下の端末１０３が他のＬＡＮ３００配下の端末３０３との間でＶＰＮ通信をすることはできない。また、各ルータ１０２、３０２のＮＡＴ機能のため、普通の状態ではＷＡＮ２００側から各ＬＡＮ１００、３００内の各端末にアクセスすることもできない。
【００５４】
このような状況であっても、本実施形態では、各拠点のＬＡＮにＶＰＮ装置１０１、３０１を設けることにより、ＬＡＮ間をＶＰＮ装置１０１、３０１でＶＰＮ接続して仮想的な閉じられた通信経路を通じてＶＰＮ通信することが可能になる。
【００５５】
ＳＴＵＮサーバ２０１は、ＳＴＵＮプロトコルの実行に関するサービスを行うもので、いわゆるＮＡＴ越えの通信を行うために必要な情報を取得するためのサーバである。ＳＴＵＮは、音声、映像、文章などの双方向リアルタイムＩＰ通信を行うアプリケーションにおいて、ＮＡＴ通過の方法の１つとして使われる標準化されたクライアントサーバ型のインターネットプロトコルである。ＳＴＵＮサーバ２０１は、アクセス元からの要求に応じて、外部との通信で使用するグローバルＩＰアドレスとポートの情報を含む外部アドレス・ポート情報を返信する。外部アドレス・ポート情報としては、ＩＰネットワークにおいてはＩＰネットワーク層のグローバルＩＰアドレス及びトランスポート層のポート番号が用いられる。
【００５６】
各ＶＰＮ装置１０１、３０１は、ＳＴＵＮサーバ２０１から自装置のグローバルＩＰアドレス及びポート番号が含まれる応答パケットを受信する。これにより、各ＶＰＮ装置１０１、３０１は自装置のグローバルＩＰアドレス及びポート番号を取得することができる。また、自装置の位置するＬＡＮとＷＡＮとの間にルータが複数存在する場合や、これらのルータ等がＵＰｎＰ（Universal Plug and Play）の機能を有していない場合であっても、確実にグローバルＩＰアドレス及びポート番号を取得できるという効果もある。
【００５７】
なお、ＶＰＮ装置１０１、３０１がグローバルＩＰアドレス及びポート番号を取得するための方法に関しては、ＩＥＴＦのＲＦＣ３４８９（STUN）にて記載された手法を利用することもできる。
【００５８】
呼制御サーバ２０２は、特定の相手先を呼び出して通信経路を確立するための呼制御に関するサービスを行う呼管理サーバである。呼制御サーバ２０２は、登録されたＶＰＮ装置または端末の識別情報を保持しており、例えばＩＰ電話の機能を有する通信システムの場合には、接続相手の電話番号に基づいて特定の相手先を呼び出すことも考えられる。また、呼制御サーバ２０２は、信号やデータを中継する機能を有しており、発信側の装置から送出されたパケットを被呼側の装置に転送したり、被呼側の装置から送出されたパケットを発信側の装置に転送したりすることも可能である。
【００５９】
なお、ＳＴＵＮサーバ２０１及び呼制御サーバ２０２は、ここでは別個のサーバによる構成例を示しているが、１つのサーバにこれらのアドレス情報サーバと中継サーバの２つのサーバの機能を搭載して構成してもよいし、ＷＡＮ上の他のいずれかのサーバに同様の機能を搭載して構成することも可能である。
【００６０】
第１中継サーバ２０３及び第２中継サーバ２０４は、通信環境に応じてＶＰＮ装置１０１とＶＰＮ装置３０１との通信を中継する。また、中継サーバ２０３、２０４は、自サーバでの処理負荷（ＶＰＮ装置１０１、３０１間のＶＰＮ通信以外に必要な処理負荷も含む）に応じて、各中継サーバ２０３、２０４へ送信される通信データの量を調整する。なお、本実施形態では、中継サーバを２台備えることを例示したが、より多くの中継サーバを備えるようにし、それらのサーバ間で通信データの量を調整するようにしてもよい。
【００６１】
次に、本実施形態のＶＰＮ装置の構成及び機能について説明する。なお、ＶＰＮ装置１０１とＶＰＮ装置３０１の構成及び機能は同様であり、ここではＶＰＮ装置１０１によって説明する。図２は本実施形態のＶＰＮ装置のハードウェア構成の構成例を示すブロック図である。
【００６２】
ＶＰＮ装置１０１は、中央演算処理装置（ＣＰＵ）１１１、フラッシュＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等による不揮発性メモリ１１２、ＳＤ  ＲＡＭ等によるメモリ１１３、ネットワークインタフェース１１４、ネットワークインタフェース１１５、ＬＡＮ側ネットワーク制御部１１６、ＷＡＮ側ネットワーク制御部１１７、通信中継部１１８、表示制御部１１９、表示部１２０を有して構成される。
【００６３】
ＣＰＵ１１１は、所定のプログラムを実行することによりＶＰＮ装置１０１全体の制御を実施する。不揮発性メモリ１１２は、ＣＰＵ１１１が実行するプログラムを保持している。このプログラムの中には、ＶＰＮ装置１０１が外部アドレス・ポート情報を取得するための外部アドレス・ポート取得プログラムも含まれている。
【００６４】
なお、ＣＰＵ１１１が実行するプログラムについては、任意の通信経路を経由してオンラインで外部のサーバから取得することもできるし、例えばメモリカードやＣＤ−ＲＯＭのような記録媒体から読み込んで取得することもできる。換言すれば、汎用のコンピュータにＶＰＮ装置の機能を実現するプログラムを記録媒体から読み込むことによってＶＰＮ装置を実現することができる。
なお、ＣＰＵ１１１がプログラムを実行する時には、不揮発性メモリ１１２上のプログラムの一部がメモリ１１３上に展開され、メモリ１１３上のプログラムが実行される場合もある。
【００６５】
メモリ１１３は、ＶＰＮ装置１０１の運用中のデータ管理や、各種設定情報などを一時的に記憶するためのものである。設定情報としては、自端末の外部アドレス・ポート取得要求の応答に含まれる外部アドレス・ポート情報等、通信に必要なあて先アドレス情報などが含まれる。
【００６６】
ネットワークインタフェース１１４は、ＶＰＮ装置１０１と自装置が管理する配下の端末１０３とを通信可能な状態で接続するためのインタフェースである。ネットワークインタフェース１１５は、ＶＰＮ装置１０１とＬＡＮ１００とを通信可能な状態で接続するためのインタフェースである。ＬＡＮ側ネットワーク制御部１１６は、ＬＡＮ側のネットワークインタフェース１１４に関する通信制御を行うものである。ＷＡＮ側ネットワーク制御部１１７は、ＷＡＮ側のネットワークインタフェース１１５に関する通信制御を行うものである。
【００６７】
通信中継部１１８は、ＬＡＮ側に接続された配下の端末１０３から外部のＶＰＮ接続先（ＶＰＮ装置３０１配下の端末３０３）へ送出するパケットデータと、反対に、外部のＶＰＮ接続先（ＶＰＮ装置３０１配下の端末３０３）から配下の端末１０３宛に到着したパケットデータをそれぞれ中継する。
【００６８】
表示部１２０は、ＶＰＮ装置１０１としての動作状態の表示等を行う表示器により構成され、各種状態をユーザあるいは管理者に通知する。表示部１２０は、複数の発光ダイオード（ＬＥＤ）や液晶表示器（ＬＣＤ）等により構成される。表示制御部１１９は、表示部１２０の表示制御を行うもので、ＣＰＵ１１１からの表示信号に従って表示部１２０に表示する内容等を制御する。
【００６９】
図３は本実施形態のＶＰＮ装置の機能的な構成例を示すブロック図である。
【００７０】
ＶＰＮ装置１０１は、機能構成として、システム制御部１３０、配下端末管理部１３１、メモリ部１３２、データ中継部１３３、設定用インタフェース部１３４、通信制御部１４０を有して構成される。メモリ部１３２は、外部アドレス・ポート情報記憶部１３５を有する。通信制御部１４０は、外部アドレス・ポート取得部１４１、ＶＰＮ機能部１４２、呼制御機能部１４３を有する。ＶＰＮ機能部１４２は、暗号処理部１４４を有する。これらの各機能は、図２に示した各ブロックのハードウェアの動作、またはＣＰＵ１１１が所定のプログラムを実行することにより実現する。
【００７１】
なお、ＶＰＮ装置１０１のＬＡＮ側のネットワークインタフェース１１４は、配下の端末１０３と接続され、ＷＡＮ側のネットワークインタフェース１１５は、ＬＡＮ１００及びルータ１０２を経由してＷＡＮ２００と接続される。
【００７２】
システム制御部１３０は、ＶＰＮ装置１０１の全体の制御を行う。配下端末管理部１３１は、ＶＰＮ装置１０１配下の端末１０３の管理を行う。メモリ部１３２は、外部アドレス・ポート情報記憶部１３５において、外部アドレス（ＷＡＮ２００上でのグローバルＩＰアドレス）とポート（ＩＰネットワークのポート番号）の情報を含む外部アドレス・ポート情報を記憶する。外部アドレス・ポート情報としては、発呼側の配下の端末１０３に割り当てられたグローバルＩＰアドレス及びポート番号の情報や、被呼側の端末３０３に割り当てられたグローバルＩＰアドレス及びポート番号の情報などを記憶する。
【００７３】
データ中継部１３３は、発呼側の端末１０３から被呼側の端末３０３に向かって転送されるパケットや、逆に被呼側の端末３０３から発呼側の端末１０３に向かって転送されるパケットをそれぞれ中継（受信／送信）する。設定用インタフェース部１３４は、ユーザあるいは管理者がＶＰＮ装置１０１に対する設定操作等の各種操作を行うためのユーザインタフェースである。このユーザインタフェースの具体例として、端末上で動作するブラウザによって表示するＷｅｂページなどが用いられる。
【００７４】
通信制御部１４０の外部アドレス・ポート取得部１４１は、ＶＰＮ装置１０１の配下の端末１０３に割り当てられた外部アドレス・ポート情報をＳＴＵＮサーバ２０１から取得する。また、被呼側の端末３０３の外部アドレス・ポート情報を含むパケットを呼制御サーバ２０２を経由して受信することで、被呼側の端末３０３に対してルータ３０２から通信用に割り当てられた外部アドレス・ポート情報を取得する。外部アドレス・ポート取得部１４１が取得した情報は、メモリ部１３２の外部アドレス・ポート情報記憶部１３５に保持される。
【００７５】
通信制御部１４０のＶＰＮ機能部１４２は、暗号処理部１４４において、ＶＰＮ通信のために必要な暗号処理を行う。すなわち、暗号処理部１４４は、送信するパケットをカプセリングして暗号化したり、受信したパケットをアンカプセリングして復号化して元のパケットを抽出したりする。なお、ＶＰＮ通信としては、Ｐ２Ｐ通信であっても、ＷＡＮ２００上に設けられるサーバ（呼制御サーバ２０２、中継サーバ２０３、２０４等）でパケットの中継を行い、クライアント／サーバ方式でＶＰＮ通信を行うことも可能である。この場合には、サーバ側で暗号処理を行うようにしてもよい。
【００７６】
また、ＶＰＮ機能部１４２は、呼制御サーバ２０２により選定された中継サーバを中継先としてＶＰＮ通信を行うことが可能であるか否かを判定する。例えば、選定された中継サーバへのログインを行うことができたか否かで、ＶＰＮ通信の可否を判定する。
【００７７】
通信制御部１４０の呼制御機能部１４３は、目的の被呼側に接続するための接続要求を呼制御サーバ２０２を経由して送信する。また、被呼側からの接続応答を呼制御サーバ２０２を経由して受信するための処理を実施する。また、呼制御機能部１４３は、ＶＰＮ通信に係る各種信号（確認信号、指示信号、要求信号、応答信号等）の送受信を行う。
【００７８】
次に、本実施形態の呼制御サーバ２０２、中継サーバ２０３、２０４のハードウェア構成及び機能構成について説明する。
【００７９】
まず、呼制御サーバ２０２、中継サーバ２０３、２０４のハードウェア構成について説明する。呼制御サーバ２０２のハードウェア構成と中継サーバ２０３、２０４のハードウェア構成は同様である。ここでは、中継サーバのうち第１中継サーバ２０３によって説明する。図４は本実施形態の呼制御サーバ２０２、中継サーバ２０３、２０４のハードウェア構成の構成例を示すブロック図である。
【００８０】
第１中継サーバ２０３は、中央処理演算装置（ＣＰＵ）２１１、起動制御部２１２、メモリ制御部２１３、メモリ２１４、メモリインタフェース２１６、ネットワークインタフェース２１７、入出力制御部２１８、ディスプレイ２１９、キーボード２２０、ＲＡＭ２１を有して構成される。
【００８１】
ＣＰＵ２１１は、所定のプログラムを実行することにより第１中継サーバ２０３全体の制御を実施する。ＲＡＭ２２１は、所定の動作情報を有しており、ＣＰＵ２１１が実行するプログラムを保持している。ＣＰＵ２１１が実行するプログラムについては、任意の通信経路を経由してオンラインで外部のサーバから取得することもできるし、例えばメモリカードやＣＤ−ＲＯＭのような記録媒体から読み込んで取得することもできる。換言すれば、汎用のコンピュータに第１中継サーバ２０３の機能を実現するプログラムを記録媒体から読み込むことによって第１中継サーバ２０３を実現することができる。
なお、ＣＰＵ２１１がプログラムを実行する時には、ＲＡＭ２２１上のプログラムの一部がメモリ２１４上に展開され、メモリ２１４上のプログラムが実行される場合もある。
【００８２】
起動制御部２１２は、ＣＰＵ２１１からの制御信号に応じて、第１中継サーバ２０３の起動制御を実施する。
【００８３】
メモリ制御部２１３は、ＣＰＵ２１１からの制御信号に応じて、メモリ２１４と他のデバイスとの間のデータ転送を制御する。メモリ２１４は、第１中継サーバ２０３の運用中のデータ管理や、ＶＰＮ通信を行うために必要な各種情報などを一時的に記憶するための補助記憶装置である。メモリ２１４は、このＶＰＮ通信を行うために必要な各種情報を記憶するＶＰＮ情報記憶部２１５を有する。当該情報には、ＶＰＮ通信を行うＶＰＮ装置１０１、３０１の外部アドレス・ポート情報などが含まれる。メモリインタフェース２１６は、メモリ２１４と他のデバイスとがデータ転送可能な状態で接続するためのインタフェースである。
【００８４】
ネットワークインタフェース２１７は、第１中継サーバ２０３とＷＡＮ２００上の各種通信装置とを通信可能な状態で接続するためのインタフェースである。入出力制御部２１８は、ＣＰＵ２１１からの制御信号に応じて、ディスプレイ２１９、キーボード２２０、その他Ｉ／Ｏなどの入出力デバイスを制御する。
【００８５】
次に、呼制御サーバ２０２、第１中継サーバ２０３の機能構成について説明する。
図５は本実施形態の呼制御サーバ２０２の機能的な構成例を示すブロック図である。また、図６は本実施形態の第１中継サーバ２０３の機能的な構成例を示すブロック図である。図５、図６に示すように、呼制御サーバ２０２、第１中継サーバ２０３は、機能構成として、システム制御部２３０、メモリ部２３１、入出力インタフェース部２３２、通信制御部２４０を有して構成される。これらの各機能は、図４に示した各ブロックのハードウェアの動作、またはＣＰＵ２１１が所定のプログラムを実行することにより実現する。なお、呼制御サーバ２０２のネットワークインタフェース２１７は、ＷＡＮ２００と接続される。
【００８６】
呼制御サーバ２０２と第１中継サーバ２０３との機能構成上の差異は、通信制御部２４０の機能である。図５に示すように、呼制御サーバ２０２の通信制御部２４０は、データ中継部２４１、信号通信部２４２、中継サーバ選定部２４３を有する。一方、図６に示すように、第１中継サーバ２０３の通信制御部２４０は、データ中継部２４１、信号通信部２４２、処理負荷判定部２４４、帯域使用率判定部２４５、変更セッション選定部２４６、セッション変更指示部２４７を有する。
【００８７】
システム制御部２３０は、第１中継サーバ２０３の全体の制御を行う。メモリ部２３１は、ＶＰＮ装置１０１、３０１双方の外部アドレス（ＷＡＮ２００上でのグローバルＩＰアドレス）とポート（ＩＰネットワークのポート番号）の情報を含む外部アドレス・ポート情報、各制御部の機能を実現するための制御プログラム、各種設定情報等を記憶する。
【００８８】
入出力インタフェース部２３２は、ディスプレイ、キーボード、その他Ｉ／Ｏなどのインタフェース及びその制御部を有する。例えば、入出力インタフェース部２３２は、ユーザあるいは管理者により第１中継サーバ２０３に対する設定操作等の各種操作や表示、音声出力を行うためのユーザインタフェースを有する。このユーザインタフェースの具体例として、端末上で動作するブラウザによって表示するＷｅｂページなどが用いられる。
【００８９】
通信制御部２４０のデータ中継部２４１は、ＶＰＮ通信を行っているＶＰＮ装置１０１とＶＰＮ装置３０１との間の通信を中継する。例えば、ＶＰＮ装置１０１からＶＰＮ装置３０１に向かって転送されるパケットや、逆にＶＰＮ装置３０１からＶＰＮ装置１０１に向かって転送されるパケットをそれぞれ中継（送受信）する。なお、ＶＰＮ装置１０１、３０１間のＶＰＮ通信だけでなく、他のＶＰＮ装置間で行われるＶＰＮ通信を中継することもでき、同時に複数のＶＰＮ通信を中継可能である。通信制御部２４０の信号通信部２４２は、ＶＰＮ通信に係る各種信号（確認信号、指示信号、要求信号、応答信号等）の送受信を行う。
【００９０】
呼制御サーバ２０２が有する通信制御部２４０の中継サーバ選定部２４３は、ＶＰＮ通信を中継する中継サーバを、ＶＰＮシステム内の複数の中継サーバ（第１中継サーバ２０３、第２中継サーバ２０４、他の中継サーバ）の中から選定する。例えば、第１中継サーバ２０３からＶＰＮセッション（ＶＰＮ通信）を他の中継サーバへ変更（移行）するよう要求されたときに、第１中継サーバ２０３とは異なる第２中継サーバ２０４を変更先（移行先）の中継サーバとして選定する。
【００９１】
第１中継サーバ２０３が有する通信制御部２４０の処理負荷判定部２４４は、ＶＰＮ通信を中継中のＣＰＵ２１１の負荷率（ＣＰＵ負荷率）を検出し、当該ＣＰＵ負荷率が規定値以上であるか否かを判定する。帯域使用率判定部２４５は、ＶＰＮ通信に使用されている通信帯域（使用通信帯域）の使用率を検出し、当該使用率が規定値以上であるか否かを判定する。変更セッション選定部２４６は、第１中継サーバ２０３が中継する１つ以上のＶＰＮ通信（ＶＰＮセッション）の中から、第１中継サーバ２０３以外の他の中継サーバ（例えば第２中継サーバ２０４）へ中継先を変更すべきＶＰＮ通信（ＶＰＮセッション）を選定する。選定されるＶＰＮ通信は、１つ以上であり、第１中継サーバ２０３が中継するＶＰＮ通信の全てであってもよいし、一部であってもよい。セッション変更設定部２４７は、例えば、メンテナンス等で、ユーザの指示に応じて入出力インタフェース部２３２によりＶＰＮ通信の中継先を変更する旨の指示を受けた場合、システム制御部２３０内のタイマによりＶＰＮ通信の中継先を変更すべき所定時刻を検出した場合などに、ＶＰＮ通信を第１中継サーバ２０３とは異なる他の中継サーバ（例えば第２中継サーバ２０４）へ中継先を変更する設定を行う。
【００９２】
次に、本実施形態のＶＰＮシステムにおけるＶＰＮ構築時の動作について説明する。
図７及び図８は、本実施形態のＶＰＮシステムにおけるＶＰＮ構築時の処理手順を示すシーケンス図である。この図７及び図８では、ＶＰＮ装置を含むネットワークにおいて、ＶＰＮ装置１０１の配下の端末１０３からＷＡＮ２００を経由して他のＶＰＮ装置３０１の配下の端末３０３に接続しようとする場合の処理を示している。図７は、呼制御サーバ２０２を用いて第１中継サーバを経由したＶＰＮセッションを構築する処理の一例を示す図である。また、図８は、第１中継サーバ２０３を経由したＶＰＮセッションを変更し、第２中継サーバ２０４を経由したＶＰＮセッションを構築することを想定している。なお、図８の処理は図７の処理に後続してもよい。
【００９３】
まず、ＶＰＮ装置１０１は呼制御サーバ２０２にログインしてユーザ認証を受けるようにする（ステップＳ１０１）。ＶＰＮ装置１０１がユーザ認証に成功した場合、呼制御サーバ２０２において、ＶＰＮ装置１０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等の登録、設定が行われる。以降、ＶＰＮ装置１０１と呼制御サーバ２０２との間で通信可能となる。なお、ＶＰＮ装置１０１は発呼側であるが、被呼側であるＶＰＮ装置３０１についても同様に、呼制御サーバ２０２にログインしてユーザ認証を受け、呼制御サーバ２０２においてＶＰＮ装置３０１の識別情報等の登録、設定が行われる（ステップＳ１０２）。
【００９４】
続いて、ＶＰＮ装置１０１は、ＶＰＮ通信を行うアプリケーションの起動に伴って外部アドレス・ポート取得部１４１の機能により、配下の端末１０３からのＶＰＮ接続の接続要求を受けると、ＳＴＵＮサーバ２０１との間で外部アドレス・ポート取得手順を行う。このとき、ＶＰＮ装置１０１は、ルータ１０２により通信用に割り当てられた外部アドレス・ポート情報（ＷＡＮ２００側からみたグローバルＩＰアドレス及びポート番号）を取得するため、ＳＴＵＮサーバ２０１に対して、外部アドレス・ポート取得要求としてバインディングリクエスト（Binding Request、RFC3489参照；以下同じ）パケットを送出する。一方、ＳＴＵＮサーバ２０１は、外部アドレス・ポート取得要求に対して応答し、ＶＰＮ装置１０１に外部アドレス・ポート取得要求の返信として外部アドレス・ポート情報を含むバインディングレスポンス（Binding Response、RFC3489参照；以下同じ）パケットを返送する。そして、ＶＰＮ装置１０１は、外部アドレス・ポート情報取得要求の返信により得られた外部アドレス・ポート情報を記憶する。
【００９５】
続いて、ＶＰＮ装置１０１は、呼制御サーバ２０２を介して、被呼側の端末３０３を配下に持つＶＰＮ装置３０１への通信経路を構築するための接続要求を行う（ステップＳ１０３）。このとき、ＶＰＮ装置１０１は、発呼側アドレス情報として、外部アドレス・ポート取得手順で取得した自装置に割り当てられたＷＡＮ側と通信するための外部アドレス・ポート情報（グローバルＩＰアドレス及びポート番号）を含む接続要求を呼制御サーバ２０２へ送信する。また、この接続要求には、被呼側（ＶＰＮ装置３０１）の識別情報も含まれる。呼制御サーバ２０２は、この接続要求を中継してＶＰＮ接続の被呼側のＶＰＮ装置３０１へ送信する（ステップＳ１０４）。この接続要求により、呼制御サーバ２０２は、ＶＰＮ装置１０１がＶＰＮ装置３０１へ通信経路構築のためのＶＰＮ接続をしたいという要求を被呼側に中継する。
【００９６】
被呼側のＶＰＮ装置３０１は、呼制御サーバ２０２を介して通知された接続要求を受けると、ＳＴＵＮサーバ２０１との間で外部アドレス・ポート取得手順を行う。このとき、ＶＰＮ装置３０１は、上記ＶＰＮ装置１０１と同様、自装置に割り当てられるＷＡＮ側と通信するための外部アドレス・ポート情報（ＷＡＮ２００側からみたグローバルＩＰアドレス及びポート番号）を取得するため、ＳＴＵＮサーバ２０１に対して、外部アドレス・ポート取得要求としてバインディングリクエストパケットを送出する。一方、ＳＴＵＮサーバ２０１は、外部アドレス・ポート取得要求に対して応答し、ＶＰＮ装置３０１に外部アドレス・ポート情報返信として外部アドレス・ポート情報を含むバインディングレスポンスパケットを返送する。そして、ＶＰＮ装置３０１は、外部アドレス・ポート情報返信により得られた外部アドレス・ポート情報を記憶する。
【００９７】
続いて、ＶＰＮ装置３０１は、呼制御サーバ２０２を介して、接続要求に対する接続応答を行う（ステップＳ１０５）。このとき、ＶＰＮ装置３０１は、被呼側アドレス情報として、外部アドレス・ポート取得手順で取得した自装置の外部アドレス・ポート情報（グローバルＩＰアドレス及びポート番号）を含む接続応答を呼制御サーバ２０２を介し発呼側ＶＰＮ装置１０１へ送信する。また、この接続応答には、発呼側（ＶＰＮ装置１０１）の識別情報も含まれる。呼制御サーバ２０２は、この接続応答を中継してＶＰＮ接続の発呼側のＶＰＮ装置１０１へ送信する（ステップＳ１０６）。この接続応答により、呼制御サーバ２０２は、接続要求に対するＶＰＮ装置３０１からＶＰＮ装置１０１への応答を発呼側に中継する。
【００９８】
続いて、ＶＰＮ装置１０１は、ＶＰＮ装置１０１、３０１間での通信に第１中継サーバ２０３を利用するための中継サーバ利用要求を呼制御サーバ２０２へ送信する（ステップＳ１０７）。
【００９９】
呼制御サーバ２０２は、ＶＰＮ装置１０１からの中継サーバ利用要求を受信すると、いずれかの中継サーバ（ここでは一例として、第１中継サーバ２０３）に対して中継指示を行う（ステップＳ１０８）。当該中継指示には、通信パケットを通信するＶＰＮ装置１０１、３０１の識別情報（接続装置情報）が含まれる。第１中継サーバ２０３は、呼制御サーバ２０２からの中継指示を受信すると、自中継サーバで中継処理が可能な能力があるか否かを判定し、中継可能な場合には、呼制御サーバ２０２へ第１中継サーバ２０３が通信中継を行うことを示す中継応答（ＯＫ）を行う（ステップＳ１０９）。呼制御サーバ２０２は、第１中継サーバ２０３からの中継応答（ＯＫ）を受信した場合には、ＶＰＮ装置１０１へ中継サーバ利用応答を行う（ステップＳ１１０）。当該中継サーバ利用応答には、通信パケットを中継する第１中継サーバ２０３の識別情報（第１中継サーバ２０３のＵＲＬ等：接続先情報）が含まれる。
【０１００】
このようなステップＳ１０１〜Ｓ１１０の処理により、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、データ通信を行う前の準備（通信を行うために必要な情報の情報交換）を完了する。
【０１０１】
ＶＰＮ装置１０１は、呼制御サーバ２０２からの中継サーバ利用応答を受信すると、第１中継サーバ２０３へログインしてユーザ認証を受けるようにする（ステップＳ１１１）。ＶＰＮ装置１０１がユーザ認証に成功した場合、第１中継サーバ２０３において、ＶＰＮ装置１０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等の登録、設定が行われる。第１中継サーバ２０３は、上記登録、設定が終了すると、ログイン完了をＶＰＮ装置１０１へ通知する（ステップＳ１１２）。以降、ＶＰＮ装置１０１と第１中継サーバ２０３との間で通信可能となる。
【０１０２】
また、ＶＰＮ装置１０１は、呼制御サーバ２０２を介して、ＶＰＮ装置３０１が第１中継サーバ２０３に接続するよう指示するための中継サーバ接続指示を、ＶＰＮ装置３０１に対して行う（ステップＳ１１３、Ｓ１１４）。当該中継サーバ接続指示には、中継接続先である第１中継サーバ２０３の識別情報（ＵＲＬ等：接続先情報）が含まれる。ＶＰＮ装置３０１は、呼制御サーバ２０２を介してＶＰＮ装置１０１からの中継サーバ接続指示を受信すると、第１中継サーバ２０３へログインしてユーザ認証を受けるようにする（ステップＳ１１５）。ＶＰＮ装置３０１がユーザ認証に成功した場合、第１中継サーバ２０３において、ＶＰＮ装置３０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等の登録、設定が行われる。第１中継サーバ２０３は、上記登録、設定が終了すると、ログイン完了をＶＰＮ装置３０１へ通知する（ステップＳ１１６）。以降、ＶＰＮ装置３０１と第１中継サーバ２０３との間で通信可能となる。ＶＰＮ装置３０１は、第１中継サーバ２０３からのログイン完了の通知を受信すると、呼制御サーバ２０２を介して、ＶＰＮ装置３０１が第１中継サーバ２０３に接続した旨を示す中継サーバ接続応答を、ＶＰＮ装置１０１に対して行う（ステップＳ１１７、Ｓ１１８）。
【０１０３】
この段階で、発呼側のＶＰＮ装置１０１と被呼側のＶＰＮ装置３０１とは、お互いに相手の第１中継サーバ２０３へのログインを完了している。そして、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、第１中継サーバ２０３を経由してパケットを送信し、図３に示すＶＰＮ装置のＶＰＮ機能部１４２により、第１中継サーバ２０３を介したＶＰＮ通信が可能な状態であるか否かを確認する。例えば、ＶＰＮ装置１０１がＶＰＮ装置３０１へ第１中継サーバ２０３を経由してパケットを送信し、この送信から所定期間内にＶＰＮ装置３０１から第１中継サーバ２０３を経由してパケットを受信したことを示す応答を受信した場合には、第１中継サーバ２０３を介したＶＰＮ通信可能状態であると判定する。ＶＰＮ通信可能状態であれば、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、第１中継サーバ２０３を介して暗号化したデータ通信を開始する（ステップＳ１１９、Ｓ１２０）。このように、図７では、第１中継サーバ２０３を利用した通信経路でＶＰＮ通信を行なっている。
【０１０４】
つまり、ステップＳ１１１〜Ｓ１２０の処理により、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、第１中継サーバ２０３の通信経路で通信を行うことができる。
【０１０５】
図８の処理では、まず、第１中継サーバ２０３の通信経路で通信を行っているときに、所定の条件を満たした場合に、第１中継サーバ２０３は、呼制御サーバ２０２へセッション変更要求を送信する（ステップＳ１２１）。当該セッション変更要求は、ＶＰＮセッションを変更するための、つまり通信経路を変更するための要求である。また、上記所定の条件とは、第１中継サーバ２０３の処理負荷が所定負荷以上となった場合、もしくは、サーバメンテナンス等に伴い第１中継サーバ２０３の入出力インタフェース部２３２により通信経路の切り替えが指示された場合、などが考えられる。
【０１０６】
呼制御サーバ２０２は、第１中継サーバ２０３からのセッション変更要求を受信すると、第１中継サーバ２０３とは別の中継サーバ（ここでは一例として、第２中継サーバ２０４）へセッション変更状況確認要求を送信する（ステップＳ１２２）。当該セッション変更状況確認要求とは、ＶＰＮセッション（ＶＰＮ通信）を他の中継サーバへ変更しても処理に支障が無いかを確認するための要求である。第２中継サーバ２０４は、呼制御サーバ２０２からのセッション変更状況確認要求を受信すると、現在通信を中継するための能力があるか否かを判定し、中継する場合には、呼制御サーバ２０２へ第２中継サーバ２０４が通信中継を行うことを許可することを示すセッション変更状況確認応答（許可）を、呼制御サーバ２０２へ送信する（ステップＳ１２３）。
【０１０７】
呼制御サーバ２０２は、ＶＰＮ通信を中継する中継サーバを第１中継サーバ２０３から第２中継サーバ２０４へ変更するための中継サーバ変更指示を、ＶＰＮ装置１０１へ送信する（ステップＳ１２４）。当該中継サーバ変更指示には、変更後の中継サーバとなる第２中継サーバ２０４の識別情報（ＵＲＬ等）が含まれる。
【０１０８】
ＶＰＮ装置１０１は、呼制御サーバ２０２からの中継サーバ変更指示を受信すると、第２中継サーバ２０４へログインしてユーザ認証を受けるようにする（ステップＳ１２５）。ＶＰＮ装置１０１がユーザ認証に成功した場合、第２中継サーバ２０４において、ＶＰＮ装置１０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等の登録、設定が行われる。第２中継サーバ２０４は、上記登録、設定が終了すると、ログイン完了をＶＰＮ装置１０１へ通知する（ステップＳ１２６）。以降、ＶＰＮ装置１０１と第２中継サーバ２０４との間で通信可能となる。
【０１０９】
また、ＶＰＮ装置１０１は、呼制御サーバ２０２を介して、ＶＰＮ装置３０１が第２中継サーバ２０４に接続を変更するよう指示するための中継サーバ接続変更指示を、ＶＰＮ装置３０１に対して行う（ステップＳ１２７、Ｓ１２８）。当該中継サーバ接続変更指示には、中継接続先である第２中継サーバ２０４の識別情報（ＵＲＬ等：接続先情報）が含まれる。ＶＰＮ装置３０１は、呼制御サーバ２０２を介してＶＰＮ装置１０１からの中継サーバ接続変更指示を受信すると、第２中継サーバ２０４へログインしてユーザ認証を受けるようにする（ステップＳ１２９）。ＶＰＮ装置３０１がユーザ認証に成功した場合、第２中継サーバ２０４において、ＶＰＮ装置３０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等の登録、設定が行われる。第２中継サーバ２０４は、上記登録、設定が終了すると、ログイン完了をＶＰＮ装置３０１へ通知する（ステップＳ１３０）。以降、ＶＰＮ装置３０１と第２中継サーバ２０４との間で通信可能となる。ＶＰＮ装置３０１は、第２中継サーバ２０４からのログイン完了の通知を受信すると、呼制御サーバ２０２を介して、ＶＰＮ装置３０１が第２中継サーバ２０４に接続した旨を示す中継サーバ接続変更応答（ＯＫ）を、ＶＰＮ装置１０１に対して行う（ステップＳ１３１、Ｓ１３２）。
【０１１０】
この段階で、発呼側のＶＰＮ装置１０１と被呼側のＶＰＮ装置３０１とは、お互いに相手の第２中継サーバ２０４へのログインを完了している。ＶＰＮ装置１０１及びＶＰＮ装置３０１は、第２中継サーバ２０４を経由してパケットを送信し、図３に示すＶＰＮ装置のＶＰＮ機能部１４２により、第２中継サーバ２０４を介したＶＰＮ通信が可能な状態であるか否かを確認する。例えば、ＶＰＮ装置１０１がＶＰＮ装置３０１へ第２中継サーバ２０４を経由してパケットを送信し、この送信から所定期間内にＶＰＮ装置３０１から第２中継サーバ２０４を経由してパケットを受信したことを示す応答を受信した場合には、第２中継サーバ２０４を介したＶＰＮ通信可能状態であると判定する。ＶＰＮ通信可能状態であれば、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、第２中継サーバ２０４を介して暗号化したデータ通信を開始する（ステップＳ１３３、Ｓ１３４）。
【０１１１】
なお、第２中継サーバ２０４を介する通信を開始すること、つまり第１中継サーバ２０３から第２中継サーバ２０４への中継サーバの切り替えに伴い、第２中継サーバ２０４を経由した通信が正常に行われることを確認した後に、第１中継サーバ２０３を経由したＶＰＮ装置１０１、３０１間のＶＰＮセッションを終了し、第１中継サーバ２０３に対して使用していたリソースを開放する（ステップ１３５、Ｓ１３６）。
【０１１２】
つまり、ステップＳ１２１〜Ｓ１３６の処理により、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、第１中継サーバ通信経路での通信から第２中継サーバ通信経路での通信に切り替え、第２中継サーバ通信経路での通信を行うことができる。したがって、第１中継サーバ２０３は、ＶＰＮ装置１０１、３０１間の通信により発生していた処理負荷を軽減することができ、また、処理負荷が軽減した分を他のＶＰＮ装置間の中継処理に活用することができる。
【０１１３】
なお、図８では、変更対象のＶＰＮセッションをＶＰＮ装置１０１、３０１間のＶＰＮセッションとして説明したが、他のＶＰＮ装置間のＶＰＮセッションを変更対象としてもよい。
【０１１４】
このように、本実施形態のＶＰＮシステムによれば、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを変更し、安定したＶＰＮ通信を行うことが可能である。特に、ＶＰＮ装置間でのＶＰＮ通信を中継する中継サーバの負荷が増大した場合であっても、中継サーバにかかる負荷を分散し、安定したＶＰＮ通信を行うことが可能である。
【０１１５】
次に、図８に示した第１中継サーバ通信経路から第２中継サーバ通信経路への切り替えに伴うＶＰＮシステムの各装置の動作について説明する。
【０１１６】
図９は、第１中継サーバ２０３の負荷確認処理の一例を示すフローチャートである。図９の処理は、ＶＰＮ装置間の通信を中継している中継サーバにおいて定期的に実施される。定期的とは、一概には規定できないが、例えば分オーダーで確認を行うように設定することができる。
【０１１７】
当該負荷確認処理において想定する負荷としては、各種処理を行う第１中継サーバ２０３の処理負荷と、ＶＰＮ装置１０１、３０１と第１中継サーバ２０３とが通信を行うための通信回線で使用されるデータ通信搬送容量（通信帯域）の負荷の二つが考えられる。これらのいずれかの負荷が規定値以上となった場合、第１中継サーバ２０３で通信している全ての通信が破綻する（通信不可の状態になる）可能性がある。そこで、第１中継サーバ２０３は、当該規定値に達する前に第１中継サーバ２０３で処理している通信の一部または全部を他の中継サーバ（例えば第２中継サーバ２０４）へ移行（変更）する。このため、定期的に第１中継サーバ２０３にかかる上記二種類の負荷を確認する。
【０１１８】
図９に示す例では、まず、処理負荷判定部２４４が、ＣＰＵ負荷率が所定の規定負荷率（閾値）よりも大きいか否かを判定する（ステップＳ２０１）。この規定負荷率（閾値）もＶＰＮシステムにより大きく異なるため一概に規定できないが、通常は処理すべき通信量がさらに増大した場合であっても第１中継サーバ２０３による処理が可能な程度のＣＰＵ負荷率であることが望ましい。例えば音声通信のみの場合であれば、一つの通信に対するＣＰＵ負荷率が大きくないため、閾値を高め（８０％以上など）に設定してもよく、また、例えば映像配信などデータ容量の大きい通信を取り扱う場合には、一つの通信で必要となるＣＰＵ負荷が大きくなるため、閾値は低め（７０％以下など）に設定するのが妥当である。
【０１１９】
ＣＰＵ負荷率が規定負荷率以下である場合、第１中継サーバ２０３の帯域使用率判定部２４５が、第１中継サーバ２０３を使用して行われている全ての通信で使用されている通信帯域（使用通信帯域）の使用率が所定の規定使用率（閾値）よりも大きいか否かを判定する（ステップＳ２０２）。この規定使用率についても、規定負荷率と同様にＶＰＮシステム毎に値が異なるため一意に決定することは出来ないが、例えば６０％である。
【０１２０】
ＣＰＵ負荷率が規定負荷率よりも大きい場合、または、使用通信帯域の使用率が規定使用率よりも大きい場合、通信量が増加することで第１中継サーバ２０３での処理能力を超える可能性があるため、現在通信中のセッション（ＶＰＮ装置１０１、３０１間のセッション、他の通信装置間のセッションを含む）の一部もしくは全部を他の中継サーバ（例えば第２中継サーバ２０４）に変更）する。
【０１２１】
このとき、第１中継サーバ２０３の変更セッション選定部２４６が、変更する対象となるＶＰＮセッションである変更対象セッションを設定する（ステップＳ２０３）。第２中継サーバ２０４に中継先を変更するＶＰＮセッションは、任意のＶＰＮセッションでよい。または、変更セッション選定部２４６が、第１中継サーバ２０３が中継中のＶＰＮセッション毎に処理状況を定期的に取得し、取得した複数の処理状況を含む統計情報から負荷の高いＶＰＮセッションを変更対象セッションとして選択してもよい。
【０１２２】
変更対象セッションとして任意のＶＰＮセッションを選択する場合には、負荷がどの程度軽減されるか不明であるが、本負荷確認処理は定期的に実施されるため、次の負荷確認処理のタイミングでＣＰＵ負荷率が規定負荷率を越えていれば、さらに別のＶＰＮセッションが別の中継サーバへ変更されるという処理が繰り返される。この場合には、予め負荷の基準となる規定負荷率を低めに設定し、通信量が増加した場合にも対応できるように考慮しておくものとする。
【０１２３】
一方、変更対象セッションとして統計情報に基づいてＶＰＮセッションを選択する場合には、負荷の高いＶＰＮセッションから第２中継サーバ２０４へ変更していくため、第１中継サーバ２０３の負荷が一度のセッション変更処理によりＣＰＵ負荷率が規定負荷率を下回る可能性を高めることができる。
【０１２４】
変更対象セッションが選定されると、第１中継サーバ２０３の信号通信部２４２が、第１中継サーバ２０３から呼制御サーバ２０２に対してセッション変更を要求するためのセッション変更要求メッセージを送信する（ステップＳ２０４）。
【０１２５】
ステップＳ２０２において使用通信帯域の使用率が規定使用率以下の場合、または、ステップＳ２０４におけるセッション変更要求メッセージの送信後に、システム制御部２３０が、当該負荷確認処理を再度行うための（定期診断のための）タイマを設定する（ステップＳ２０５）。このタイマがタイムアウトしたとき、ステップＳ２０１からの処理を再び行う。なお、負荷確認処理が定期的に開始されるようにあらかじめ定期起動の機能として定めておいてもよい。
【０１２６】
なお、第１中継サーバ２０３がＣＰＵの処理能力に対して十分に広い通信帯域を確保できる場合や、第１中継サーバ２０３が使用通信帯域に対して十分な処理能力のあるＣＰＵを保有している場合もある。これらの場合には、図９の負荷確認処理を省略することも可能である。
【０１２７】
図９に示した負荷確認処理によれば、第１中継サーバ２０３の負荷が増大した場合であっても、呼制御サーバ２０２へ負荷が増大した旨を通知することで、上述したような負荷分散のための処理を実行し、中継サーバにかかる負荷を分散し、安定したＶＰＮ通信を行うことが可能である。
【０１２８】
次に、図１０は呼制御サーバ２０２のセッション変更処理の一例を示すフローチャートである。
【０１２９】
信号受信部２４２が第１中継サーバ２０３からのセッション変更要求メッセージを受信すると（ステップＳ３０１）、中継サーバ選定部２４３が、第１中継サーバ２０３以外に他の中継サーバが存在するか否かを判定する（ステップＳ３０２）。
【０１３０】
他の中継サーバが存在する場合には、中継サーバ選定部２４３が、呼制御サーバ２０２と関連付けられている１又は複数の中継サーバから、ＶＰＮセッションの変更先となる中継サーバ（変更先中継サーバ）の選定を行う（ステップＳ３０３）。変更先中継サーバの選定方法としては、呼制御サーバ２０２に関連付けられている任意の中継サーバを変更先中継サーバとして選定する方法、定期的またはセッション変更要求メッセージ受信時に、１又は複数の中継サーバから各中継サーバの負荷の状態を示す負荷状態情報を含む中継サーバ状態情報を収集し、当該セッション変更要求メッセージ受信時に最も負荷の軽い中継サーバを変更先中継サーバとして選定を行う方法などがある。なお、呼制御サーバ２０２と関連付けられている中継サーバとは、呼制御サーバ２０２に識別情報が登録されている中継サーバのことを指す。
【０１３１】
変更先中継サーバが選定されると、信号通信部２４２が、その変更先中継サーバに対して第１中継サーバ２０３での通信を移行（変更）しても処理に支障が無いかを確認するためのセッション変更状況確認要求メッセージを送信する（ステップＳ３０４）。そして、信号通信部２４２が、変更先中継サーバからのセッション変更状況確認要求メッセージに対するセッション変更状況確認応答メッセージを受信する（ステップＳ３０５）、セッション変更状況確認応答メッセージの内容については、後述する図１１で説明する。
【０１３２】
中継サーバ選定部２４３は、セッション変更状況確認応答メッセージを解析し、通信セッション変更が可能か否かを判定する（ステップＳ３０６）。ＶＰＮセッション変更が可能（セッション変更状況確認応答（ＯＫ））である場合には、信号通信部２４２が、変更対象のＶＰＮセッション通信を行っているＶＰＮ装置に対して、中継サーバ変更指示メッセージを送信する（ステップＳ３０７）。当該中継サーバ変更指示メッセージの情報には、変更先である変更先中継サーバの情報が含まれる。当該中継サーバ変更指示メッセージは、当該ＶＰＮセッションでの通信を行っているＶＰＮ装置の発呼側（ここではＶＰＮ装置１０１）、被呼側（ここではＶＰＮ装置３０１）のいずれに送付されても同じ処理が施されるため、いずれかのＶＰＮ装置にのみ送付すればよい。ここでは、便宜上発呼側のＶＰＮ装置（ＶＰＮ装置１０１）に中継サーバ変更メッセージを送信することを想定している。
【０１３３】
一方、ＶＰＮセッション変更が不可能（セッション変更状況確認応答（ＮＧ））である場合には、呼制御サーバ２０２に登録されている、ＶＰＮセッション変更のための状態を問い合わせていない他の中継サーバに対して上記と同様の処理を行うべく、ステップＳ３０２に戻る。
【０１３４】
ステップＳ３０２〜Ｓ３０６の処理を繰り返し、呼制御サーバ２０２に登録されているいずれの中継サーバにも通信セッション変更ができない場合には、システム制御部３０２が、入出力インタフェース部２３２を解して所定内容で警告（アラート）を通知する。これにより、いずれの中継サーバも新規の通信セッションを受け入れられない可能性があり、ＶＰＮシステムとして問題が発生する可能性があることを報知することができる。
【０１３５】
次に、図１１は第２中継サーバ２０４のセッション受け入れ判定処理の一例を示すフローチャートである。図１１では、第２中継サーバ２０４が変更先中継サーバとして選定されたことを想定している。
【０１３６】
第２中継サーバ２０４は、信号通信部２４２が呼制御サーバ２０２からのセッション変更状況確認要求メッセージを受信すると（ステップＳ４０１）、第２中継サーバ２０４にかかる負荷を確認する。ここで確認する負荷とは、図９で示した第１中継サーバ２０３での負荷確認処理の負荷と同様である。すなわち、処理負荷判定部２４４が、ＣＰＵ負荷率が所定の規定負荷率（閾値）よりも大きいか否かを判定する（ステップＳ４０２）。ＣＰＵ負荷率が規定負荷率以下である場合、帯域使用率判定部２４５が、使用通信帯域の使用率が所定の規定使用率（閾値）よりも大きいか否かを判定する（ステップＳ４０３）。なお、第１中継サーバ２０３に関する規定負荷率及び規定使用率と第２中継サーバ２０４に関する規定負荷率及び規定使用率とは、同一であっても同一でなくてもよい。これは、中継サーバの処理能力、通信帯域が全て同じとは限らないため、各中継サーバで閾値（処理能力の限界）が異なる可能性があるためである。
【０１３７】
使用通信帯域の使用率が規定使用率以下である場合、多少通信量が増加しても第２中継サーバ２０４での処理能力を超過しない状態であるため、信号通信部２４２が、第１中継サーバ２０３からのＶＰＮセッション変更を受け入れ可能である旨を示すセッション変更状況確認応答（ＯＫ）メッセージを、呼制御サーバ２０２へ送信する（ステップＳ４０４）。
【０１３８】
一方、ＣＰＵ負荷率が規定負荷率よりも大きい場合、または、使用通信帯域の使用率が規定使用率よりも大きい場合、通信量が増加することで第２中継サーバ２０４での処理能力を超える可能性があるため、信号通信部２４２が、第１中継サーバ２０３からのＶＰＮセッション変更を受け入れ不可能である旨を示すセッション変更状況確認応答（ＮＧ）メッセージを、呼制御サーバ２０２へ送信する（ステップＳ４０５）。
【０１３９】
このように、セッション変更状況確認要求メッセージを受信した変更先中継サーバとしての第２中継サーバ２０４は、自サーバの処理状態（負荷状態）から新たにＶＰＮセッションを受け入れることが可能か否かを判定し、セッション変更状況確認応答メッセージにて、ＶＰＮセッション変更の可否を通知する。これにより、特定の中継サーバに負荷が偏ることを回避し、ＶＰＮシステム全体として負荷分散を行うことができる。
【０１４０】
次に、図１２はＶＰＮ装置１０１の中継サーバ変更指示受信時の処理の一例を示すフローチャートである。図１２では、ＶＰＮ装置１０１が呼制御サーバ２０２からの中継サーバ変更指示メッセージを受信する場合を想定している。また、第２中継サーバ２０４が変更先中継サーバとして選定されたことを想定している。
【０１４１】
まず、ＶＰＮ装置１０１は、呼制御機能部１４３が、呼制御サーバ２０２からの中継サーバ変更指示メッセージを受信すると（ステップＳ５０１）、中継サーバ指示変更メッセージに含まれる変更先中継サーバとしての第２中継サーバ２０４の識別情報に基づいて、第２中継サーバ２０４へのログインを試みる（ステップＳ５０２）。ログインの処理は先に詳述した通りである。
【０１４２】
第２中継サーバ２０４へのログインが完了したら、呼制御機能部１４３が、被呼側のＶＰＮ装置であるＶＰＮ装置３０１に対して、中継サーバ接続変更指示メッセージを送信する（ステップＳ５０３）。当該中継サーバ接続変更指示メッセージの情報には、通信セッション変更後の中継サーバである第２中継サーバ２０４の識別情報が含まれる。これにより、ＶＰＮ装置３０１においても、第２中継サーバ２０４へログインを行うことが可能となる。一方、第２中継サーバ２０４へのログインが失敗した場合には、通信セッション変更が出来ないため、そのまま処理を終了する。
【０１４３】
呼制御機能部１４３が、ＶＰＮ装置３０１からの中継サーバ接続変更応答メッセージを受信すると（ステップＳ５０４）、ＶＰＮ装置３０１が第２中継サーバ２０４へ接続できたか否かを判定する（ステップＳ５０５）。ＶＰＮ装置３０１が第２中継サーバ２０４へ接続できたか否かは、ＶＰＮ装置３０１が第２中継サーバ２０４へのログインが成功したことを示す中継サーバ接続変更応答（ＯＫ）メッセージであるか、ＶＰＮ装置３０１が第２中継サーバ２０４へのログインに失敗したことを示す中継サーバ接続変更応答（ＮＧ）メッセージであるか、により判定する。
【０１４４】
ＶＰＮ装置３０１が第２中継サーバ２０４へ接続できたと判定された場合、すなわち変更先中継サーバへのＶＰＮセッション変更が可能である場合には、データ中継部１３３が、第２中継サーバ２０４への通信データの送信を開始する（ステップＳ５０６）。
【０１４５】
通信データの送信の開始後、呼制御機能部１４３が、変更先中継サーバである第２中継サーバ２０４を介して、データ中継部１３３により被呼側ＶＰＮ装置）であるＶＰＮ装置３０１からの通信データを受信したか否かを判定する（ステップＳ５０７）。第２中継サーバ２０４を介してＶＰＮ装置３０１からの通信データを受信したと判定した場合、呼制御機能部１４３が、第２中継サーバ２０４を介したＶＰＮ装置１０１、３０１間のＶＰＮセッションが確立したとみなし、ＶＰＮセッション変更前に通信を行っていた第１中継サーバ２０３への通信データの送信を停止する（ステップＳ５０８）。ＶＰＮ装置１０１は、第１中継サーバ２０３への通信データの送信を、第２中継サーバ２０４を介してＶＰＮ装置３０１からの通信データを受信したと判定されるまで、継続する。
【０１４６】
このように、ＶＰＮ装置１０１は、第２中継サーバ２０４を介してＶＰＮ装置３０１からの通信データを受信したときに、呼制御機能部１４３がＶＰＮセッション変更前の中継サーバである第１中継サーバ２０３からログアウトを行い、ＶＰＮセッションを確立すべき中継サーバの変更を完了する。ログアウトの処理では、ログアウト対象のＶＰＮ装置であるＶＰＮ装置１０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等が第１中継サーバ２０３から削除される。これにより、第１中継サーバ２０３を介したＶＰＮ装置１０１、３０１間のＶＰＮセッションが切断される。
【０１４７】
一方、ステップＳ５０５において、ＶＰＮ装置３０１が第２中継サーバ２０４へ接続できなかったと判定された場合、すなわち変更先中継サーバへのＶＰＮセッション変更が不可能である場合には、呼制御機能部１４３が、第２中継サーバ２０４からのログアウトを行う（ステップＳ５０９）。
【０１４８】
図１２の処理によれば、いずかのＶＰＮ装置がＶＰＮセッションの中継先の変更を指示された場合に、ＶＰＮセッションを継続して接続された状態で、他の中継サーバへ変更することができる。
【０１４９】
次に、図１３はＶＰＮ装置３０１の中継サーバ接続変更指示受信時の処理の一例を示すフローチャートである。図１３では、第２中継サーバ２０４が変更先中継サーバとして選定されたことを想定している。また、ＶＰＮ装置３０１がＶＰＮ装置１０１からの中継サーバ接続変更指示メッセージを受信する場合を想定している。
【０１５０】
まず、ＶＰＮ装置３０１は、呼制御機能部１４３が、ＶＰＮ装置１０１からの中継サーバ接続変更指示メッセージを受信すると（ステップＳ６０１）、当該中継サーバ接続変更指示メッセージで指定された変更先中継サーバである第２中継サーバ２０４へのログインを試みる（ステップＳ６０２）。ログインの処理は先に詳述した通りである。
【０１５１】
ＶＰＮ装置３０１は、第２中継サーバ２０４へのログインが成功した場合、呼制御機能部１４３が、ログインが成功した旨を示す中継サーバ接続変更応答（ＯＫ）メッセージを発呼側ＶＰＮ装置であるＶＰＮ装置１０１へ送信する（ステップＳ６０３）。そして、中継サーバ接続変更応答（ＯＫ）メッセージの送信後に、データ中継部１３３が、ログインに成功した第２中継サーバ２０４に対して、通信データの送信を開始する（ステップＳ６０４）。
【０１５２】
通信データの送信の開始後、呼制御機能部１４３が、変更先中継サーバである第２中継サーバ２０４を介して、発呼側ＶＰＮ装置であるＶＰＮ装置１０１からの通信データを受信したか否かを判定する（ステップＳ６０５）。第２中継サーバ２０４を介してＶＰＮ装置１０１からの通信データを受信したと判定した場合、呼制御機能部１４３が、第２中継サーバ２０４を介したＶＰＮ装置１０１とＶＰＮ装置３０１とのＶＰＮセッションが確立したとみなし、ＶＰＮセッション変更前に通信を行っていた第１中継サーバ２０３への通信データの送信を停止する（ステップＳ６０６）。ＶＰＮ装置３０１は、第１中継サーバ２０３への通信データの送信を、第２中継サーバ２０４を介してＶＰＮ装置１０１からの通信データを受信したと判定されるまで、継続する。
【０１５３】
このように、ＶＰＮ装置３０１は、第２中継サーバ２０４を介してＶＰＮ装置１０１からの通信データを受信したときに、呼制御機能部１４３がＶＰＮセッション変更前の中継サーバである第１中継サーバ２０３からログアウトを行い、ＶＰＮセッションを確立すべき中継サーバの変更を完了する。ログアウトの処理では、ログアウト対象のＶＰＮ装置であるＶＰＮ装置３０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等が第１中継サーバ２０３から削除される。これにより、第１中継サーバ２０３を介したＶＰＮ装置１０１、３０１間のＶＰＮセッションが切断される。
【０１５４】
一方、ステップＳ６０２において、第２中継サーバ２０４へのログインが失敗した場合、呼制御機能部１４３が、ログインが失敗した旨を示す中継サーバ接続変更応答（ＮＧ）メッセージをＶＰＮ装置１０１へ送信する（ステップＳ６０７）。
【０１５５】
図１３の処理によれば、ＶＰＮセッションの中継先の変更を指示されたＶＰＮ装置からＶＰＮセッションの中継先変更を要求された場合に、ＶＰＮセッションを継続して接続された状態で、他の中継サーバへ変更することができる。
【０１５６】
次に、ＶＰＮ装置１０１、３０１間のＶＰＮ通信を中継する中継サーバの処理負荷に依存することなく、ユーザ操作によって、当該中継サーバで通信しているＶＰＮセッションを全て他の中継サーバへ変更する場合について説明する。
【０１５７】
図１４は、第１中継サーバ２０３のユーザ指示に基づくセッション変更処理の一例を示すフローチャートである。図１４では、第１中継サーバ２０３を介したＶＰＮ装置１０１、３０１間のＶＰＮセッションを確立しており、第２中継サーバ２０４が変更先中継サーバとして選定される場合を想定している。また、ユーザ指示は、管理者による第１中継サーバ２０３のメンテナンス指示であることを想定している。
【０１５８】
まず、第１中継サーバ２０３は、ユーザ指示に応じて、入出力インタフェース部２３２が中継サーバ変更指示を行うと（ステップＳ７０１）、変更セッション選定部２４６が、新規のＶＰＮセッションの確立を行わないように、新規ＶＰＮセッション受付不可の状態に設定する（ステップＳ７０２）。この後、メンテナンスを行う中継サーバである第１中継サーバ２０３において、変更セッション選定部２４６が、ＶＰＮセッションを変更する必要のあるＶＰＮセッションが存在するかを確認する（ステップＳ７０３）。
【０１５９】
変更する必要のあるＶＰＮセッションが存在する場合には、第１中継サーバ２０３は、図９のステップＳ２０３、Ｓ２０４と同様に、変更対象セッションの設定（ステップＳ７０４）、セッション変更要求の送信（ステップＳ７０５）を行う。
【０１６０】
ここで、第１中継サーバ２０３は、変更先中継サーバとしての第２中継サーバ２０４で全ての通信セッションを受け入れ可能か否かを把握できないため、第１中継サーバ２０３は、全てのＶＰＮセッション変更処理を同時には行わない。つまり、第１中継サーバ２０３は、第１中継サーバ２０３に存在するＶＰＮセッションを１つずつ順に第２中継サーバ２０４へ変更する。システム制御部１３０は、一の変更処理が他の変更処理との時間的な重複を回避し、前後の変更処理の時間が十分に確保できるよう変更処理待ちタイマを設定し、変更処理のスケジューリングをする（ステップＳ７０６）。そして、変更処理待ちタイマがタイムアウトすると、ステップＳ７０３に戻り、他のＶＰＮセッションの変更を行う。但し、第１中継サーバ２０３が、変更先中継サーバである第２中継サーバ２０４の処理能力を考慮したときに、第１中継サーバ２０３で通信している全ての通信セッションを変更しても問題ないと事前に認識可能な場合には、全ての通信セッションに対して変更処理を同時に行ってもよい。
【０１６１】
以上の処理を繰り返し、変更セッション選定部２４６が、第１中継サーバ２０３で通信しているＶＰＮセッションが存在しないと判定すると、ディスプレイ２１９などに、本中継サーバ変更指示元にセッション移行（変更）完了を通知して処理を終了する（ステップＳ７０７）。
【０１６２】
図１４の処理によれば、運用中の中継サーバをメンテナンスするために停止する場合や、より高性能、大容量のデータ通信が可能な中継サーバを新規導入、運用移行する場合に、現在のＶＰＮセッションを切断することなく、管理者等のユーザからの指示により当該ＶＰＮセッションを他の中継サーバに変更（移行）することができる。また、ＶＰＮセッションを有する中継サーバをアイドル状態にすることができる。
【産業上の利用可能性】
【０１６３】
本発明は、ＶＰＮ通信を継続したまま他の中継サーバにＶＰＮセッションを移行し、安定したＶＰＮ通信を行うことが可能な呼制御サーバ、中継サーバ、ＶＰＮ装置、ＶＰＮ通信システム、ＶＰＮネットワーキング方法、プログラム、記憶媒体等に有用である。
【符号の説明】
【０１６４】
１００、３００  ＬＡＮ
１０１、３０１  ＶＰＮ装置
１０２、３０２  ルータ
１０３、３０３  端末
１１１  中央演算処理装置（ＣＰＵ）
１１２  不揮発性メモリ
１１３  メモリ
１１４、１１５  ネットワークインタフェース
１１６  ＬＡＮ側ネットワーク制御部
１１７  ＷＡＮ側ネットワーク制御部
１１８  通信中継部
１１９  表示制御部
１２０  表示部
１３０  システム制御部
１３１  配下端末管理部
１３２  メモリ部
１３３  データ中継部
１３４  設定用インタフェース部
１３５  外部アドレス・ポート情報記憶部
１４０  通信制御部
１４１  外部アドレス・ポート取得部
１４２  ＶＰＮ機能部
１４３  呼制御機能部
１４４  暗号処理部
２００  ＷＡＮ
２０１  ＳＴＵＮサーバ
２０２  呼制御サーバ
２０３  第１中継サーバ
２０４  第２中継サーバ
２１１  中央演算処理装置（ＣＰＵ）
２１２  起動制御部
２１３  メモリ制御部
２１４  メモリ
２１５  ＶＰＮ情報記憶部
２１６  メモリインタフェース
２１７  ネットワークインタフェース
２１８  入出力制御部
２１９  ディスプレイ
２２０  キーボード
２２１  ＲＡＭ
２３０  システム制御部
２３１  メモリ部
２３２  入出力インタフェース部
２４０  通信制御部
２４１  データ中継部
２４２  信号通信部
２４３  中継サーバ選定部
２４４  処理負荷判定部
２４５  帯域使用率判定部
２４６  変更セッション選定部
２４７  セッション変更設定部
【図１】
2011160286.tif 000003
【図２】
2011160286.tif 000004
【図３】
2011160286.tif 000005
【図４】
2011160286.tif 000006
【図５】
2011160286.tif 000007
【図６】
2011160286.tif 000008
【図７】
2011160286.tif 000009
【図８】
2011160286.tif 000010
【図９】
2011160286.tif 000011
【図１０】
2011160286.tif 000012
【図１１】
2011160286.tif 000013
【図１２】
2011160286.tif 000014
【図１３】
2011160286.tif 000015
【図１４】
2011160286.tif 000016