(57)【要約】【課題】ＶＰＮセッションによりかかるネットワークの負担を低減させることが可能なＶＰＮ装置を提供する。【解決手段】ネットワーク上１００〜３００で、他のＶＰＮ装置３０１との間でＶＰＮを構築して通信を行うＶＰＮ装置１０１であって、ＶＰＮ装置１０１の外部アドレス・ポート情報を取得し、ＶＰＮ装置１０１の外部アドレス・ポート情報をＶＰＮ装置３０１へ送信し、ＶＰＮ装置３０１からのＶＰＮ装置３０１の外部アドレス・ポート情報を受信し、ＶＰＮ装置３０１の外部アドレス・ポート情報を用いて、ＶＰＮ装置３０１との間で通信パケットを通信する。そして、パケット群不在区間を測定し、測定されたパケット群不在区間に基づいて、セッションタイマのタイマ値を設定し、パケット群不在区間の開始時点（Ｔｇａｐ−Ｓ、Ｔｔｉｍｅ）からセッションタイマのタイマ値Ｔｇｒｐに相当する時間が経過したときに、通信パケットの通信を終了するよう制御する。【選択図】図１２
2011166438.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上で、他のＶＰＮ装置との間で仮想プライベートネットワークを構築して通信を行うＶＰＮ装置であって、
前記ネットワークを介して、当該ＶＰＮ装置のグローバルアドレス情報及びポート情報を取得する外部アドレス・ポート情報取得部と、
前記ネットワークを介して、当該ＶＰＮ装置の前記グローバルアドレス情報及び前記ポート情報を前記他のＶＰＮ装置へ送信する外部アドレス・ポート情報送信部と、
前記ネットワークを介して、前記他のＶＰＮ装置からの前記他のＶＰＮ装置のグローバルアドレス情報及びポート情報を受信する外部アドレス・ポート情報受信部と、
前記他のＶＰＮ装置の前記グローバルアドレス情報及び前記ポート情報を用いて、前記他のＶＰＮ装置との間で通信パケットを通信するパケット通信部と、
前記パケット通信部により連続的に通信される通信パケット群が不在であるパケット群不在区間を測定するパケット群不在区間測定部と、
前記パケット群不在区間測定部により測定されたパケット群不在区間に基づいて、前記パケット通信部による通信パケットの通信を行うためのＶＰＮセッションを維持する時間としてのセッションタイマのタイマ値を設定するタイマ値設定部と、
前記パケット群不在区間の開始時点から前記セッションタイマのタイマ値に相当する時間が経過したときに、前記パケット通信部による通信パケットの通信を終了するよう制御するパケット通信終了制御部と、
を備えるＶＰＮ装置。
【請求項２】
請求項１に記載のＶＰＮ装置であって、
前記パケット通信部は、当該ＶＰＮ装置配下の通信端末からの通信パケットを受信し、受信されたパケットを前記他のＶＰＮ装置へ通信するＶＰＮ装置。
【請求項３】
請求項１または２に記載のＶＰＮ装置であって、
前記タイマ値設定部は、前記パケット群不在区間測定部により測定された複数のパケット群不在区間の長さの平均値を算出し、前記複数のパケット不在区間の長さの各々と算出された平均値との差のいずれかが所定範囲外である場合、前記セッションタイマのタイマ値を所定の規定値に設定するＶＰＮ装置。
【請求項４】
請求項３に記載のＶＰＮ装置であって、
所定の閾値である第１閾値及び前記第１閾値よりも小さい第２閾値を記憶する閾値記憶部を備え、
前記タイマ値設定部は、前記複数のパケット不在区間の長さの各々と算出された平均値との差がいずれも前記所定範囲内であり、かつ、前記平均値が前記第１閾値よりも大きい場合、前記セッションタイマのタイマ値が前記規定値よりも小さくなるよう設定するＶＰＮ装置。
【請求項５】
請求項４に記載のＶＰＮ装置であって、
前記タイマ値設定部は、前記複数のパケット不在区間の長さの各々と算出された平均値との差がいずれも前記所定範囲内であり、かつ、前記平均値が前記第２閾値よりも小さい場合、前記セッションタイマのタイマ値が前記規定値よりも大きくなるよう設定するＶＰＮ装置。
【請求項６】
請求項５に記載のＶＰＮ装置であって、
前記タイマ値設定部は、前記複数のパケット不在区間の長さの各々と算出された平均値との差が前記所定範囲内であり、かつ、前記平均値が前記第１閾値以下前記第２閾値以上である場合、前記セッションタイマのタイマ値を前記規定値に設定するＶＰＮ装置。
【請求項７】
ネットワーク上で、他のＶＰＮ装置との間で仮想プライベートネットワークを構築して通信を行うＶＰＮ装置のＶＰＮネットワーキング方法であって、
前記ネットワークを介して、当該ＶＰＮ装置のグローバルアドレス情報及びポート情報を取得するステップと、
前記ネットワークを介して、当該ＶＰＮ装置の前記グローバルアドレス情報及び前記ポート情報を前記他のＶＰＮ装置へ送信するステップと、
前記ネットワークを介して、前記他のＶＰＮ装置からの前記他のＶＰＮ装置のグローバルアドレス情報及びポート情報を受信するステップと、
前記他のＶＰＮ装置の前記グローバルアドレス情報及び前記ポート情報を用いて、前記他のＶＰＮ装置との間で通信パケットを通信するステップと、
連続的に通信される通信パケット群が不在であるパケット群不在区間を測定するステップと、
測定されたパケット群不在区間に基づいて、前記通信パケットの通信を終了するためのセッションタイマのタイマ値を設定するステップと、
前記パケット群不在区間の開始時点から前記セッションタイマのタイマ値に相当する時間が経過したときに、通信パケットの通信を終了するよう制御するステップと、
を有するＶＰＮネットワーキング方法。
【請求項８】
請求項７に記載のＶＰＮネットワーキング方法の各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信相手の固定された専用通信回線（専用線）の代わりに、多数の加入者で帯域を共用する通信網を利用してネットワーク間などを接続するＶＰＮ（Virtual Private Network：仮想プライベートネットワーク）技術に関する。
【背景技術】
【０００２】
仮想プライベートネットワーク（以下、ＶＰＮと記載する）は、一般に、企業内等の２以上の拠点のローカルエリアネットワーク（ＬＡＮ：Local Area Network）などの異なるネットワークセグメントを、広域ネットワーク（ＷＡＮ：Wide Area Network）などを介して互いに接続する。そして、通信の秘匿性を担保することで、仮想的に全体が１つのプライベートネットワークであるように構成する。これにより、専用線を利用する場合と同様の通信サービスを可能にする。
【０００３】
このようなＶＰＮは、インターネット等のＷＡＮや公衆回線網を利用して構築するいわゆるインターネットＶＰＮや、通信事業者閉域網などのインターネット等とは異なる通信網を使用して構築するＩＰ−ＶＰＮなどに大別される。特に、インターネットＶＰＮは、昨今のネットワークインフラのブロードバンド化と、インターネットを使った構築による安価な価格設定に伴い、利用者が増加している。
【０００４】
ＶＰＮを構築するにあたり、例えば異なる拠点間で通信を行う場合に、通信経路の途中にインターネット等の共用の通信網が介在するので、通信の漏洩、盗聴、改竄などの危険性がある。そこで、ＶＰＮ技術においては、通信の秘匿性を担保するために、ネットワークのいずれかの階層において、データを暗号化しカプセリングすることを基本的な技術思想としている。ここで、ある通信プロトコルを他の通信プロトコルのパケットで包んで送ることを「カプセル化（カプセリング）」という。
【０００５】
ＶＰＮ技術で用いられる暗号化プロトコルの具体例としては、ＩＰ（Internet Protocol）層で暗号化を施すＩＰｓｅｃ（Security Architecture for Internet Protocol）や、ＴＣＰ（Transmission Control Protocol）層（特にＨＴＴＰ：Hyper Text Transfer Protocolで使用）で暗号化を施すＳＳＬ（Secure Sockets Layer）などが知られている。また、他のＶＰＮ技術の例として、ＳＳＨ、ＴＬＳ、ＳｏｆｔＥｔｈｅｒ、ＰＰＴＰ、Ｌ２ＴＰ、Ｌ２Ｆ、ＭＰＬＳなどが知られている。ソフトウェアによってＶＰＮを構築するソフトウェアＶＰＮでは、上記のＩＰｓｅｃやＳＳＬを使用したトンネリング技術を使用する。ここで、ある通信プロトコルを、同じまたはより上位の階層のプロトコルのデータとして通信することを「トンネリング」という。ＶＰＮを構築する場合は、ネットワークの中継装置または通信を行う端末等（以降、これらを「ピア」とも称する）に設けたＶＰＮ装置によって、パケットを暗号化及びカプセル化して仮想トンネルを構築する。これにより、ピア間を結ぶ閉じられた仮想的な直結通信回線を確立する。
【０００６】
例えば、ネットワーク間を相互接続する技術として、リバーストンネル技術を用いて通信路を構築し、通信路を維持するために通信路維持データを送信し、さらに、通信漏洩等を防止するために電子署名や暗号化を施すものが提案されている（例えば、特許文献１参照）。この特許文献１では、外部ネットワーク内の外部ホストがファイアウォールを越えて内部ネットワーク内の内部ホストとの間でトンネルを構築して通信を行うために、トンネルを維持するのに必要なタイミングに応じてトンネルを維持するための通信路維持データを送信する送信手段と、通信路維持データの中に電子署名を施す電子署名手段とを設けている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１６０４９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１のＶＰＮ技術では、拠点毎のＶＰＮ装置において、適正なアドレスやポート番号を指定し、所定の識別番号等を付与し、これらの暗号化、復号化を実行するために、ＶＰＮ装置を設置するにあたり予め各種パラメータの設定作業を行う必要があった。
【０００９】
したがって、例えば企業内の複数の特定オフィス同士をＶＰＮで接続する場合のように、接続先やその範囲が予め固定されている場合であれば特に問題はない。しかし、例えば１回だけ、あるいは短い期間だけ一時的に所定の接続先に対してＶＰＮを構成しようとすると、その都度、各種パラメータの設定作業が必要になるため、利便性の面で実現が困難であった。つまり、必要に応じて一時的にネットワークを構成される環境（アドホックネットワークと呼ばれる）でＶＰＮを利用することは困難であった。
【００１０】
そこで、ＳＩＰ等のシグナリングによってピアリングを行って、拠点間でＶＰＮ通信セッションを確立した後に、データを暗号化してＵＤＰカプセリングを行うＶＰＮ技術が考えられる。このＶＰＮ技術によれば、各種パラメータの設定作業が不要もしくは容易になるだけでなく、例えば、ネットワーク内部に接続されたアプリケーション端末での通信が完了した時に、ＶＰＮのセッションを開放することが可能であり、外部ネットワーク上でルータでのポート開放を含めたＶＰＮセッションを張り続ける必要がない。なお、ＶＰＮセッションを張るとは、ＶＰＮ通信経路を確立することである。
【００１１】
しかしながら、アプリケーション端末からＶＰＮ装置に対してＶＰＮセッションの終了を通知するしくみがないため、適切なタイミングでＶＰＮセッションを解放することができない。そのため、例えばユーザの手動操作によりＶＰＮセッションを終了するか、あるいは適当なタイマを用いてタイムアウトを検出した時にＶＰＮセッションを終了することになる。そのため、必要以上にＶＰＮセッションが確立された時間が長くなることがある。つまり、実際に通信を行っている時間と比べて長い時間に渡って、ＶＰＮセッションを維持することになる。
【００１２】
一方、短い時間でタイムアウトが発生してＶＰＮセッションが解放されると、ＶＰＮセッションを解放した後あまり時間が経過していないうちに改めてパケットを受信する可能性があり、その場合には再度ＶＰＮセッションを確立し直すことになるため、ネットワークに大きな負担がかかることがある。
【００１３】
本発明は、上記事情に鑑みてなされたものであって、ＶＰＮセッションにかかるネットワークの負担を低減させることが可能なＶＰＮ装置、ＶＰＮネットワーキング方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明のＶＰＮ装置は、ネットワーク上で、他のＶＰＮ装置との間で仮想プライベートネットワークを構築して通信を行うＶＰＮ装置であって、ネットワークを介して、当該ＶＰＮ装置のグローバルアドレス情報及びポート情報を取得する外部アドレス・ポート情報取得部と、ネットワークを介して、当該ＶＰＮ装置のグローバルアドレス情報及びポート情報を他のＶＰＮ装置へ送信する外部アドレス・ポート情報送信部と、ネットワークを介して、他のＶＰＮ装置からの他のＶＰＮ装置のグローバルアドレス情報及びポート情報を受信する外部アドレス・ポート情報受信部と、他のＶＰＮ装置のグローバルアドレス情報及びポート情報を用いて、他のＶＰＮ装置との間で通信パケットを通信するパケット通信部と、パケット通信部により連続的に通信される通信パケット群が不在であるパケット群不在区間を測定するパケット群不在区間測定部と、パケット群不在区間測定部により測定されたパケット群不在区間に基づいて、前記パケット通信部による通信パケットの通信を行うためのＶＰＮセッションを維持する時間としてのセッションタイマのタイマ値を設定するタイマ値設定部と、パケット群不在区間の開始時点からセッションタイマのタイマ値に相当する時間が経過したときに、前記パケット通信部による通信パケットの通信を終了するよう制御するパケット通信終了制御部と、を備える。
【００１５】
このＶＰＮ装置によれば、パケット群不在区間に基づいてセッションタイマのタイマ値を設定するので、適切なタイミングでセッションを終了することができ、ネットワークの負担を低減することが可能である。
【００１６】
また、本発明のＶＰＮ装置は、前記パケット通信部が、当該ＶＰＮ装置配下の通信端末からの通信パケットを受信し、受信されたパケットを前記他のＶＰＮ装置へ送信する。
【００１７】
このＶＰＮ装置によれば、ＶＰＮ装置とは別体で配下の通信端末からの通信パケットを受け、その通信パケットを送信するときのパケット群不在区間に基づいて、セッションタイマのタイマ値を適切な長さに調整できる。
【００１８】
また、本発明のＶＰＮ装置は、タイマ値設定部が、パケット群不在区間測定部により測定された複数のパケット群不在区間の長さの平均値を算出し、複数のパケット群不在区間の長さの各々と算出された平均値との差のいずれかが所定範囲外である場合、前記セッションタイマのタイマ値を所定の規定値に設定する。
【００１９】
このＶＰＮ装置によれば、複数のパケット群不在区間の長さが大きくばらついている場合には、セッションタイマのタイマ値を初期値に設定することで、タイマ値が短すぎたり長すぎたりする事象が発生しにくくすることができる。
【００２０】
また、本発明のＶＰＮ装置は、所定の閾値である第１閾値及び第１閾値よりも小さい第２閾値を記憶する閾値記憶部を備え、タイマ値設定部が、複数のパケット不在区間の長さの各々と算出された平均値との差がいずれも所定範囲内であり、かつ、平均値が第１閾値よりも大きい場合、セッションタイマのタイマ値が規定値よりも小さくなるよう設定する。
【００２１】
このＶＰＮ装置によれば、パケット群不在区間の長さが大きくばらついておらず、かつ、複数のパケット群不在区間の長さの平均値が大きい場合には、セッションタイマのタイマ値を規定値よりも小さく設定する。これにより、長いパケット群不在区間に渡って無駄にＶＰＮセッションを維持することを防止することができる。
【００２２】
また、本発明のＶＰＮ装置は、タイマ値設定部が、複数のパケット不在区間の長さの各々と算出された平均値との差がいずれも所定範囲内であり、かつ、平均値が第２閾値よりも小さい場合、セッションタイマのタイマ値が規定値よりも大きくなるよう設定する。
【００２３】
このＶＰＮ装置によれば、パケット群不在区間の長さが大きくばらついておらず、かつ、複数のパケット群不在区間の長さの平均値が小さい場合、セッションタイマのタイマ値を規定値よりも大きく設定する。これにより、頻繁に短いパケット群不在区間にセッションを終了し再度ＶＰＮセッションを確立しなおすという状況を回避できる。
【００２４】
また、本発明のＶＰＮ装置は、前記タイマ値設定部が、複数のパケット不在区間の長さの各々と算出された平均値との差がいずれも所定範囲内であり、かつ、平均値が第１閾値以下第２閾値以上である場合、セッションタイマのタイマ値を規定値に設定する。
【００２５】
このＶＰＮ装置によれば、パケット群不在区間の長さが大きくばらついておらず、かつ、複数のパケット群不在区間の長さの平均値が大きくも小さくもなく中程度の場合、セッションタイマのタイマ値を規定値に設定する。これにより、セッションタイマのタイマ値が短すぎたり長すぎたりする事象が発生しにくくすることができる。
【００２６】
また、本発明のＶＰＮネットワーキング方法は、ネットワーク上で、他のＶＰＮ装置との間で仮想プライベートネットワークを構築して通信を行うＶＰＮ装置のＶＰＮネットワーキング方法であって、ネットワークを介して、ＶＰＮ装置のグローバルアドレス情報及びポート情報を取得するステップと、ネットワークを介して、ＶＰＮ装置のグローバルアドレス情報及びポート情報を他のＶＰＮ装置へ送信するステップと、ネットワークを介して、他のＶＰＮ装置からの他のＶＰＮ装置のグローバルアドレス情報及びポート情報を受信するステップと、他のＶＰＮ装置のグローバルアドレス情報及びポート情報を用いて、他のＶＰＮ装置との間で通信パケットを通信するステップと、連続的に通信される通信パケット群が不在であるパケット群不在区間を測定するステップと、測定されたパケット群不在区間に基づいて、通信パケットの通信を行うためのＶＰＮセッションを維持する時間としてのセッションタイマのタイマ値を設定するステップと、前記パケット群不在区間の開始時点から前記セッションタイマのタイマ値に相当する時間が経過したときに、通信パケットの通信を終了するよう制御するステップと、を有する。
【００２７】
この方法によれば、パケット群不在区間に基づいてセッションタイマのタイマ値を設定するので、適切なタイミングでセッションを終了することができ、ネットワークの負担を低減することが可能である。
【００２８】
また、本発明のプログラムは、上記ＶＰＮネットワーキング方法の各ステップを実行させるためのプログラムである。
【００２９】
このプログラムによれば、上記ＶＰＮネットワーキング方法の各ステップを実行することが可能である。
【発明の効果】
【００３０】
本発明によれば、ＶＰＮセッションにかかるネットワークの負担を低減させることが可能である。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態に係るＶＰＮシステムの構成例を示すブロック図
【図２】本発明の実施形態に係るＶＰＮ装置のハードウェア構成の構成例を示すブロック図
【図３】本発明の実施形態に係るＶＰＮ装置の機能的な構成例を示すブロック図
【図４】本発明の実施形態に係るＶＰＮシステムにおけるＶＰＮ構築時の処理手順を示すシーケンス図
【図５】本発明の実施形態に係るＶＰＮ装置におけるＶＰＮ構築時の処理内容を示すフローチャート
【図６】本発明の実施形態に係るパケット群不在区間の長さに関する頻度分布の一例を示す図
【図７】本発明の実施形態に係るパケット群不在区間の長さに関する頻度分布の別の一例を示す図
【図８】本発明の実施形態に係る統計テーブルの構成例を示す模式図
【図９】本発明の実施形態に係るタイマ値設定処理の一例を示すフローチャート
【図１０】本発明の実施形態に係るパケット群検出チェック処理の一例を示すフローチャート
【図１１】本発明の実施形態に係るパケット群と検出中フラグとの関係の一例を示すタイムチャート
【図１２】本発明の実施形態に係る周期解析処理の一例を示すフローチャート
【図１３】本発明の実施形態に係るパケット群不在区間の長さに関する頻度分布と閾値との関係の一例を示す図
【発明を実施するための形態】
【００３２】
以下に、本発明に係るＶＰＮ装置、ＶＰＮネットワーキング方法、及びプログラムの一例としての実施形態を説明する。ここでは、広域ネットワーク（ＷＡＮ、グローバルネットワーク）を介して２つのローカルエリアネットワークの経路を（ＬＡＮ、ローカルネットワーク）経路接続して仮想プライベートネットワーク（ＶＰＮ）システムを構築する場合の構成例を示す。ＬＡＮとしては、有線ＬＡＮまたは無線ＬＡＮなどが用いられる。ＷＡＮとしては、インターネット等が用いられる。
【００３３】
図１は本発明の実施形態に係るＶＰＮシステムの構成例を示す図である。本実施形態のＶＰＮシステムは、一つの拠点に設けられたＬＡＮ（第１のネットワークに相当）１００と、他の拠点に設けられたＬＡＮ（第３のネットワークに相当）３００とを、インターネット等のＷＡＮ（第２のネットワークに相当）２００を介して通信経路を接続する。そして、ＬＡＮ１００の配下に接続された端末１０３とＬＡＮ３００の配下に接続された端末３０３との間で、ＶＰＮによる秘匿性を担保した通信（以下、「ＶＰＮ通信」と称する）を可能にしている。具体的なＶＰＮ通信の用途（アプリケーションプログラム等）としては、ＩＰ電話（音声通話）、ネットミーティング（動画＆音声通信）、ネットワークカメラ（ビデオ伝送）などが想定される。
【００３４】
ＬＡＮ１００とＷＡＮ２００との境界にはルータ１０２が配設され、ＷＡＮ２００とＬＡＮ３００との境界にはルータ３０２が配設されている。また、本実施形態では、ＶＰＮの構築を可能にするために、ＬＡＮ１００にはＶＰＮ装置１０１が接続され、ＬＡＮ３００にはＶＰＮ装置３０１が接続されている。そして、ＶＰＮ装置１０１には配下の端末１０３が接続され、ＶＰＮ装置３０１には配下の端末３０３が接続されている。なお、ＶＰＮ装置１０１、３０１は、ここでは中継装置等において構成される独立した装置の構成例を示しているが、ＬＡＮ内の他の通信機器や端末等においてＶＰＮ機能を有する装置として構成することも可能である。
【００３５】
また、ＷＡＮ２００上には、ＶＰＮ装置１０１とＶＰＮ装置３０１との間のＶＰＮによる接続（以下、「ＶＰＮ接続」と称する）を可能にするために、ＳＴＵＮサーバ２０１と呼制御サーバ２０２とが接続されている。ＳＴＵＮサーバ２０１は、ＳＴＵＮ（Simple Traversal of User Datagram Protocol (UDP) through Network Address Translators (NATs)）プロトコルを実行するために用いられるサーバである。呼制御サーバ２０２は、ＶＰＮ装置や端末等のピア間の発呼、被呼（着呼）のために用いられるサーバである。
【００３６】
図１において、破線は外部アドレスとポートの情報を含む外部アドレス・ポート情報の流れを示している。また、一点鎖線は発呼及び被呼の制御に関する呼制御信号の流れを示している。また、実線はピア間で伝送される通信データに関するピア間通信の流れを示している。さらに、ピア間通信のためにＶＰＮ接続された通信経路を仮想トンネルとして、図中に表す。
【００３７】
各機器がＷＡＮ２００を介して通信する場合、ＷＡＮ２００上では、伝送するパケットの送信元や送信先を特定するためのアドレス情報として、ＷＡＮにおいて特定可能なグローバルなアドレス情報が用いられる。一般にはＩＰネットワークが用いられるため、グローバルＩＰアドレス及びポート番号が用いられる。しかし、各ＬＡＮ１００、３００内の通信においては、送信元や送信先を特定するためのアドレス情報として、ＬＡＮ内のみで特定可能なローカルなアドレス情報が用いられる。一般にはＩＰネットワークが用いられるため、ローカルＩＰアドレス及びポート番号が用いられる。したがって、各ＬＡＮ１００、３００とＷＡＮ２００との間の通信を可能にするために、ローカルなアドレス情報とグローバルなアドレス情報との相互変換を行うＮＡＴ（Network Address Translation）機能が各ルータ１０２、３０２に搭載されている。
【００３８】
ただし、ＬＡＮ１００、３００の配下の各端末においては、外部からアクセス可能なグローバルなアドレス情報を自身で持っていない。また、特別な設定を行わない限り、ＬＡＮ１００配下の端末１０３が他のＬＡＮ３００配下の端末３０３と直接通信することはできない。また、各ルータ１０２、３０２のＮＡＴ機能のため、普通の状態ではＷＡＮ２００側から各ＬＡＮ１００、３００内の各端末にアクセスすることもできない。
【００３９】
このような状況であっても、本実施形態では、各拠点のＬＡＮにＶＰＮ装置１０１、３０１を設けることにより、図１において実線で示すピア間通信の経路のように、ＬＡＮ間をＶＰＮ接続して端末１０３と端末３０３との間で仮想的な閉じられた通信経路を通じて直接通信することが可能になる。本実施形態のＶＰＮ装置の構成、機能、及び動作について以下に順を追って説明する。
【００４０】
ＳＴＵＮサーバ２０１は、ＳＴＵＮプロトコルの実行に関するサービスを行うもので、いわゆるＮＡＴ越えの通信を行うために必要な情報を提供するアドレス情報サーバである。ＳＴＵＮは、音声、映像、文章などの双方向リアルタイムＩＰ通信を行うアプリケーションにおいて、ＮＡＴ通過の方法の１つとして使われる標準化されたクライアントサーバ型のインターネットプロトコルである。ＳＴＵＮサーバ２０１は、アクセス元からの要求に応じて、外部からアクセス可能な当該アクセス元のグローバルなアドレス情報として、外部ネットワークから見える外部アドレスとポートの情報を含む外部アドレス・ポート情報を返信する。外部アドレス・ポート情報としては、ＩＰネットワークにおいてはグローバルＩＰアドレス及びポート番号が用いられる。
【００４１】
各ＶＰＮ装置１０１、３０１は、ＳＴＵＮサーバ２０１との間で所定のテスト手順の通信を実行し、ＳＴＵＮサーバ２０１から自装置のグローバルＩＰアドレス及びポート番号が含まれる応答パケットを受信する。これにより、各ＶＰＮ装置１０１、３０１は自装置のグローバルＩＰアドレス及びポート番号を取得することができる。また、自装置の位置するＬＡＮとＷＡＮとの間にルータが複数存在する場合等であっても、これらのルータ等がＵＰｎＰ（Universal Plug and Play）の機能を有していない場合であっても、確実にグローバルＩＰアドレス及びポート番号を取得できるという効果もある。
【００４２】
なお、ＶＰＮ装置１０１、３０１がグローバルＩＰアドレス及びポート番号を取得するための方法に関しては、ＩＥＴＦのＲＦＣ ３４８９（ＳＴＵＮ）にて記載された手法を利用することもできる。
【００４３】
呼制御サーバ２０２は、特定の相手先を呼び出して通信経路を確立するための通信装置間の呼制御に関するサービスを行う中継サーバである。呼制御サーバ２０２は、登録された各ユーザまたは端末の識別情報を保持しており、例えばＩＰ電話の機能を有する通信システムの場合には、接続相手の電話番号に基づいて特定の相手先を呼び出すことができる。また、呼制御サーバ２０２は、信号やデータを中継する機能を有しており、発呼側の装置から送出されたパケットを被呼側の装置に転送したり、被呼側の装置から送出されたパケットを発呼側の装置に転送したりすることも可能である。
【００４４】
なお、ＳＴＵＮサーバ２０１及び呼制御サーバ２０２は、ここでは別個のサーバによる構成例を示しているが、１つのサーバにこれらのアドレス情報サーバと中継サーバの２つのサーバの機能を搭載して構成してもよいし、ＷＡＮ上の他のいずれかのサーバに同様の機能を搭載して構成することも可能である。
【００４５】
次に、本実施形態のＶＰＮ装置の構成及び機能について説明する。なお、ＶＰＮ装置１０１とＶＰＮ装置３０１の構成及び機能は同様であり、本実施形態では、主にＶＰＮ装置１０１によって説明する。図２は本実施形態のＶＰＮ装置のハードウェア構成の構成例を示すブロック図である。
【００４６】
ＶＰＮ装置１０１は、中央演算処理装置（ＣＰＵ）１１１、フラッシュＲＡＭ等による不揮発性メモリ１１２、ＳＤ ＲＡＭ等によるメモリ１１３、ネットワークインタフェース１１４、ネットワークインタフェース１１５、ＬＡＮ側ネットワーク制御部１１６、ＷＡＮ側ネットワーク制御部１１７、通信中継部１１８、表示制御部１１９、表示部１２０を有して構成される。
【００４７】
ＣＰＵ１１１は、所定のプログラムを実行することによりＶＰＮ装置１０１全体の制御を実施する。不揮発性メモリ１１２は、ＣＰＵ１１１が実行するプログラムを保持している。このプログラムの中には、ＶＰＮ装置１０１が外部アドレス・ポート情報を取得するための外部アドレス・ポート取得プログラムも含まれている。
【００４８】
なお、ＣＰＵ１１１が実行するプログラムについては、任意の通信経路を経由してオンラインで外部のサーバから取得することもできるし、例えばメモリカードやＣＤ−ＲＯＭのような記録媒体から読み込んで取得することもできる。換言すれば、汎用のコンピュータにＶＰＮ装置の機能を実現するプログラムを記録媒体から読み込むことによってＶＰＮ装置、およびＶＰＮネットワーキング方法を実現することができる。
【００４９】
なお、ＣＰＵ１１１がプログラムを実行する時には、不揮発性メモリ１１２上のプログラムの一部がメモリ１１３上に展開され、メモリ１１３上のプログラムが実行される場合もある。
【００５０】
メモリ１１３は、ＶＰＮ装置１０１の運用中のデータ管理や、各種設定情報、各種閾値情報などを記憶するためのものである。設定情報としては、自端末の外部アドレス・ポート取得要求の応答に含まれる外部アドレス・ポート情報等、通信に必要なあて先アドレス情報などが含まれる。
【００５１】
ネットワークインタフェース１１４は、ＶＰＮ装置１０１と自装置が管理する配下の端末１０３とを通信可能な状態で接続するためのインタフェースである。ネットワークインタフェース１１５は、ＶＰＮ装置１０１とＬＡＮ１００とを通信可能な状態で接続するためのインタフェースである。ＬＡＮ側ネットワーク制御部１１６は、ＬＡＮ側のネットワークインタフェース１１４に関する通信制御を行うものである。ＷＡＮ側ネットワーク制御部１１７は、ＷＡＮ側のネットワークインタフェース１１５に関する通信制御を行うものである。
【００５２】
通信中継部１１８は、ＬＡＮ側に接続された配下の端末１０３から外部のＶＰＮ接続先（ＶＰＮ装置３０１配下の端末３０３）へ送出するパケットデータと、反対に、外部のＶＰＮ接続先（ＶＰＮ装置３０１配下の端末３０３）から配下の端末１０３宛に到着したパケットデータとをそれぞれ中継する。
【００５３】
表示部１２０は、ＶＰＮ装置１０１としての動作状態の表示等を行う表示器により構成され、各種状態をユーザあるいは管理者に通知する。表示部１２０は、複数の発光ダイオード（ＬＥＤ）や液晶表示器（ＬＣＤ）等により構成される。表示制御部１１９は、表示部１２０の表示制御を行うもので、ＣＰＵ１１１からの表示信号に従って表示部１２０に表示する内容等を制御する。
【００５４】
図３は本実施形態のＶＰＮ装置の機能的な構成例を示すブロック図である。
【００５５】
ＶＰＮ装置１０１は、機能構成として、システム制御部１３０、配下端末管理部１３１、メモリ部１３２、データ中継部１３３、設定用インタフェース部１３４、通信制御部１４０を有して構成される。メモリ部１３２は、外部アドレス・ポート情報記憶部１３５を有する。通信制御部１４０は、外部アドレス・ポート取得部１４１、ＶＰＮ機能部１４２、呼制御機能部１４３、パケット周期解析部１４４、終了判定部１４６、終了部１４７、統計テーブル１４８を有する。ＶＰＮ機能部１４２は、暗号処理部１４５を有する。これらの各機能は、図２に示した各ブロックのハードウェアの動作、またはＣＰＵ１１１が所定のプログラムを実行することにより実現する。
【００５６】
なお、ＶＰＮ装置１０１のＬＡＮ側のネットワークインタフェース１１４は、配下の端末１０３と接続され、ＷＡＮ側のネットワークインタフェース１１５は、ＬＡＮ１００及びルータ１０２を経由してＷＡＮ２００と接続される。
【００５７】
システム制御部１３０は、ＶＰＮ装置１０１の全体の制御を行う。配下端末管理部１３１は、ＶＰＮ装置１０１配下の端末１０３の管理を行う。メモリ部１３２は、外部アドレス・ポート情報記憶部１３５において、外部アドレス（ＷＡＮ２００上でのグローバルＩＰアドレス）とポート（ＩＰネットワークのポート番号）の情報を含む外部アドレス・ポート情報を記憶する。外部アドレス・ポート情報としては、発呼側である配下の端末１０３に対してルータ１０２により割り当てられたグローバルＩＰアドレス及びポート番号の情報や、被呼側の端末３０３に対してルータ３０２により割り当てられたグローバルＩＰアドレス及びポート番号の情報などを記憶する。
【００５８】
データ中継部１３３は、発呼側の端末１０３から被呼側の端末３０３に向かって送信されるパケットや、逆に被呼側の端末３０３から発呼側の端末１０３に向かって送信されるパケットをそれぞれ中継する。設定用インタフェース部１３４は、ユーザあるいは管理者がＶＰＮ装置１０１に対する設定操作等の各種操作を行うためのユーザインタフェースである。このユーザインタフェースの具体例として、端末上で動作するブラウザによって表示するＷｅｂページなどが用いられる。
【００５９】
外部アドレス・ポート取得部１４１は、ＶＰＮ装置１０１の配下の端末１０３がＷＡＮ２００との通信に使用するためにルータ１０２から割り当てられた外部アドレス・ポート情報をＳＴＵＮサーバ２０１を使用して取得する。また、被呼側の端末３０３の外部アドレス・ポート情報を含むパケットを呼制御サーバ２０２を経由して受信し、被呼側の端末３０３と通信するためにルータ３０２で割り当てられた外部アドレス・ポート情報を取得する。外部アドレス・ポート取得部１４１が取得した情報は、メモリ部１３２の外部アドレス・ポート情報記憶部１３５に保持される。
【００６０】
ＶＰＮ機能部１４２は、暗号処理部１４５において、ＶＰＮ通信のために必要な暗号処理を行う。すなわち、暗号処理部１４５は、送信するパケットをカプセリングして暗号化したり、受信したパケットをアンカプセリングして復号化して元のパケットを抽出したりする。この暗号処理動作については後で説明する。なお、ＶＰＮ通信は、図１に示したようなピア間通信（Ｐ２Ｐ通信）ではなく、ＷＡＮ２００上に設けられるサーバでパケットの中継を行い、クライアント／サーバ方式でＶＰＮ通信を行うことも可能である。この場合には、サーバ側で暗号処理を行うようにしてもよい。また、カプセリングされたパケット中には、自装置配下の端末１０３を特定するための情報や、相手装置配下の端末３０３を特定するための情報が含まれる。この特定情報に基づいて、ＶＰＮ装置及びＶＰＮ装置配下の端末間でデータ中継部１３３により通信データ（通信パケット）が中継される。
【００６１】
呼制御機能部１４３は、目的の被呼側に接続するための接続要求を呼制御サーバ２０２に送信したり、被呼側からの接続応答を呼制御サーバ２０２を経由して受信するための処理を実施したりする。
【００６２】
パケット周期解析部１４４は、他の端末３０３との間でＶＰＮセッションを張った端末１０３のアプリケーションにより送出されるデータを監視する。そして、パケット周期解析部１４４は、このデータに含まれる連続的な一連のパケット（以下、「パケット群」という）が終了してから次のパケット群が現れるまでのパケットが途絶えている時間間隔、つまり時間軸上でパケット群が不在となる期間を示すパケット群不在区間を測定する。そして、パケット周期解析部１４４は、この測定結果を統計的に処理して解析を行い、この解析結果からＶＰＮセッションを終了するための（ＶＰＮセッションを維持する時間を計測するための）セッションタイマのタイマ値に反映する。したがって、パケット周期解析部１４４は、セッションタイマのタイマ値を最適な値に自動的に調整する。なお、セッションタイマのタイマ値とは、ＶＰＮセッションを終了するためのセッションタイマがタイムアウトする時間であり、ネットワーク環境に合わせて調整される。これにより、使用されていないＶＰＮセッションを維持するために消費されるリソースを好適に解放し、使用するＶＰＮセッションへリソースを割り当て、有効なリソース活用が可能となる。
【００６３】
終了判定部１４６は、セッションタイマのタイマ値に基づいてＶＰＮセッションを終了するか否かを判定する。このとき、パケット群が途絶えている期間の時間を計数し、パケット周期解析部１４４が決定したタイマ値の時間が経過したか否か、つまりタイムアウトしたか否かを判定する。なお、終了判定部１４６がセッションタイマを有している。
【００６４】
終了部１４７は、終了判定部１４６によりタイムアウトしたと判定された場合に、ＶＰＮセッションの終了を呼制御機能部１４３に対して通知する。呼制御機能部１４３は、当該通知に基づいてＶＰＮセッションつまりＶＰＮ通信を終了する。
【００６５】
統計テーブル１４８は、パケット周期解析部１４４が処理途中で使用するデータや、パケット周期解析部１４４により得られた統計情報などを保持するための記憶領域である。
【００６６】
すなわち、通信制御部１４０は、自装置の外部アドレス・ポート情報を取得する外部アドレス・ポート取得部、パケット群不在区間を測定し、セッションタイマのタイマ値を設定するパケット周期解析部、セッション終了タイミングを判定する終了判定部、相手装置との間での通信パケットの通信を終了するよう制御する終了部、の各機能を実現する。
【００６７】
次に、本実施形態のＶＰＮ装置によるＶＰＮ構築時の動作について説明する。
図４は本実施形態のＶＰＮシステムにおけるＶＰＮ構築時の処理手順を示すシーケンス図である。この図４では、ＶＰＮ装置を含むネットワークにおいて、ＶＰＮ装置１０１の配下の端末１０３からＷＡＮ２００を経由して他のＶＰＮ装置３０１の配下の端末３０３に接続しようとする場合の処理を示している。
【００６８】
まず、図４に示す処理に先立ち、ＶＰＮ装置１０１は呼制御サーバ２０２にログインしてユーザ認証を受けるようにする。ＶＰＮ装置１０１がユーザ認証に成功した場合、呼制御サーバ２０２において、ＶＰＮ装置１０１の識別情報（ＭＡＣアドレス、ユーザＩＤ、電話番号など）やネットワーク上の位置情報（グローバルＩＰアドレス）等の登録、設定が行われる。以降、ＶＰＮ装置１０１と呼制御サーバ２０２との間で通信可能となる。なお、ＶＰＮ装置１０１は発呼側であるが、被呼側であるＶＰＮ装置３０１についても同様に、呼制御サーバ２０２にログインしてユーザ認証を受け、呼制御サーバ２０２においてＶＰＮ装置３０１の識別情報等の登録、設定が行われる。
【００６９】
この状態で、ＶＰＮ装置１０１は、ＶＰＮ通信を行うアプリケーションの起動に伴って外部アドレス・ポート取得部１４１により、配下の端末１０３からのＶＰＮ接続の接続要求を受けると、ＳＴＵＮサーバ２０１との間で外部アドレス・ポート取得手順を行う（ＰＲ１）。このとき、ＶＰＮ装置１０１は、自装置に割り当てられた外部アドレス・ポート情報（ＷＡＮ２００側からみたグローバルＩＰアドレス及びポート番号）を取得するため、ＳＴＵＮサーバ２０１に対して、外部アドレス・ポート取得要求としてバインディングリクエスト（Binding Request 接続要求、RFC3489参照；以下同じ）パケットを送出する。一方、ＳＴＵＮサーバ２０１は、外部アドレス・ポート取得要求に対して応答し、ＶＰＮ装置１０１に外部アドレス・ポート情報返信として外部アドレス・ポート情報を含むバインディングレスポンス（Binding Response 接続応答、RFC3489参照；以下同じ）パケットを返送する。そして、ＶＰＮ装置１０１は、外部アドレス・ポート情報返信により得られた外部アドレス・ポート情報を記憶する。
【００７０】
続いて、ＶＰＮ装置１０１は、呼制御サーバ２０２に対して、接続先の端末３０３を配下に持つＶＰＮ装置３０１へのＶＰＮ通信経路を構築するための接続要求を行う（ＰＲ２）。このとき、ＶＰＮ装置１０１は、発呼側アドレス情報として、外部アドレス・ポート取得手順ＰＲ１で取得した自装置の外部アドレス・ポート情報（グローバルＩＰアドレス及びポート番号）を含む接続要求を呼制御サーバ２０２へ送信する。呼制御サーバ２０２は、この接続要求を中継してＶＰＮ接続の接続先となるＶＰＮ装置３０１へ送信する。この接続要求により、呼制御サーバ２０２は、ＶＰＮ装置１０１がＶＰＮ装置３０１へ通信経路構築のためのＶＰＮ接続をしたいという要求を接続先に通知する。
なお、ＶＰＮ通信経路としては直接通信を行うＰ２Ｐ通信経路とＷＡＮ２００に設置された中継サーバを経由する通信経路とが考えられるが、主にＰ２Ｐ通信経路として説明を行う。中継サーバ経由の通信経路を想定しても同様の処理となる。
【００７１】
接続先のＶＰＮ装置３０１は、呼制御サーバ２０２からの接続要求を受けると、ＳＴＵＮサーバ２０１との間で外部アドレス・ポート取得手順を行う（ＰＲ３）。このとき、ＶＰＮ装置３０１は、上記ＶＰＮ装置１０１と同様、自装置に割り当てられた外部アドレス・ポート情報（ＷＡＮ２００側からみたグローバルＩＰアドレス及びポート番号）を取得するため、ＳＴＵＮサーバ２０１に対して、外部アドレス・ポート取得要求としてバインディングリクエストパケットを送出する。一方、ＳＴＵＮサーバ２０１は、外部アドレス・ポート取得要求に対して応答し、ＶＰＮ装置３０１に外部アドレス・ポート情報返信として外部アドレス・ポート情報を含むバインディングレスポンスパケットを返送する。そして、ＶＰＮ装置３０１は、外部アドレス・ポート情報返信により得られた外部アドレス・ポート情報を記憶する。
【００７２】
続いて、ＶＰＮ装置３０１は、呼制御サーバ２０２に対して、接続要求に対する接続応答を行う（ＰＲ４）。このとき、ＶＰＮ装置３０１は、被呼側アドレス情報として、外部アドレス・ポート取得手順ＰＲ３で取得した自装置の外部アドレス・ポート情報（グローバルＩＰアドレス及びポート番号）を含む接続応答を呼制御サーバ２０２へ送信する。呼制御サーバ２０２は、この接続応答を中継してＶＰＮ接続の接続要求元となるＶＰＮ装置１０１へ送信する。この接続応答により、呼制御サーバ２０２は、接続要求に対する応答をＶＰＮ装置３０１からＶＰＮ装置１０１へ通知する。
【００７３】
この段階で、発呼側のＶＰＮ装置１０１と被呼側のＶＰＮ装置３０１とは、お互いに相手の外部アドレス・ポート情報を取得している。したがって、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、互いに相手の外部アドレス・ポート情報（グローバルＩＰアドレス及びポート番号）を設定してＷＡＮ２００を経由してパケットを送信し、通信可能であること（ＶＰＮ接続）を確認し、ＶＰＮ通信経路で暗号化したデータ通信を開始する（ＰＲ５）。
【００７４】
図５は本実施形態のＶＰＮ装置におけるＶＰＮ構築時の処理内容を示すフローチャートである。この図５は、図４のＶＰＮ構築時の処理に関する具体的な処理内容を示したものである。図５において、ステップＳ１１〜Ｓ１６は発呼側のＶＰＮ装置１０１が行う処理の内容を示し、ステップＳ２１〜Ｓ２６は被呼側のＶＰＮ装置３０１が行う処理の内容を示している。
【００７５】
ＶＰＮの構築にあたってＶＰＮ接続するために、発呼側のＶＰＮ装置１０１は、まず、待受用の外部アドレス及びポートの情報として、自装置のグローバルＩＰアドレス及びポート番号を含む外部アドレス・ポート情報を取得する処理を行う（ＰＲ１、ステップＳ１１）。
【００７６】
続いて、ＶＰＮ装置１０１は、被呼側のＶＰＮ装置３０１に対する接続要求を送信する（ＰＲ２、ステップＳ１２）。この接続要求は、被呼側の端末３０３を特定するための識別情報などを含むものである。また、接続要求には、ステップＳ１１で取得した自装置の外部アドレス・ポート情報を含めて送信する。この接続要求は、呼制御サーバ２０２を経由してＶＰＮ装置３０１に伝送される。
【００７７】
被呼側のＶＰＮ装置３０１は、ＶＰＮ装置１０１からの接続要求を受信する（ステップＳ２１）。接続要求を受信すると、ＶＰＮ装置３０１は、この接続要求に含まれている接続元（ＶＰＮ装置１０１側）の外部アドレス・ポート情報を取り出し、この情報をメモリに記憶する（ステップＳ２２）。そして、ＶＰＮ装置３０１は、待受用の外部アドレス及びポートの情報として、ステップＳ１１と同様にして、自装置のグローバルＩＰアドレス及びポート番号を含む外部アドレス・ポート情報を取得する処理を行う（ステップＳ２３）。
【００７８】
続いて、ＶＰＮ装置３０１は、発呼側のＶＰＮ装置１０１から受信した接続要求に対する接続応答を送信する（ステップＳ２４）。この接続応答には、ステップＳ２３で取得した自装置の外部アドレス・ポート情報を含めて送信する。この接続応答は、呼制御サーバ２０２を経由してＶＰＮ装置１０１に伝送される。
【００７９】
発呼側のＶＰＮ装置１０１は接続応答の待ち受け状態で、接続応答を受信したかを判定する処理を行う（ステップＳ１３）。接続応答を受信すると、ＶＰＮ装置１０１は、この接続応答に含まれている被呼側（ＶＰＮ装置３０１側）の外部アドレス・ポート情報を取り出し、この情報をメモリに記憶する（ステップＳ１４）。
【００８０】
上記の処理により、データ通信開始処理ＰＲ５を実行する時点では、発呼側のＶＰＮ装置１０１は、自装置の外部アドレス・ポート情報と、被呼側のＶＰＮ装置３０１の外部アドレス・ポート情報とを取得している。一方、被呼側のＶＰＮ装置３０１は、自装置の外部アドレス・ポート情報と、発呼側のＶＰＮ装置１０１の外部アドレス・ポート情報とを取得している。
【００８１】
データ通信開始後、発呼側のＶＰＮ装置１０１は、被呼側のＶＰＮ装置３０１に直接通信が可能なグローバルＩＰアドレス及びポート番号を宛先として、ＶＰＮ装置３０１に向けてＷＡＮ２００上にデータを送信する（ステップＳ１５）。一方、ＶＰＮ装置３０１は、自装置宛のデータの待ち受けを行い、発呼側のＶＰＮ装置１０１から送信されたデータを受信する（ステップＳ２５）。また、被呼側のＶＰＮ装置３０１は、発呼側のＶＰＮ装置１０１に直接通信可能なグローバルＩＰアドレス及びポート番号を宛先として、ＶＰＮ装置１０１に向けてＷＡＮ２００上にデータを送信する（ステップＳ２６）。
【００８２】
一方、ＶＰＮ装置１０１は、自装置宛のデータの待ち受けを行い、被呼側のＶＰＮ装置３０１から送信されたデータを受信する（ステップＳ１６）。
【００８３】
ＶＰＮ装置１０１及びＶＰＮ装置３０１の双方でデータの送受信に成功すると、ＶＰＮ装置１０１とＶＰＮ装置３０１との間でＶＰＮ接続されたことが認識される。以降は、サーバを経由することなくＰ２Ｐで直接通信可能であり、ＶＰＮ装置１０１配下の端末１０３とＶＰＮ装置３０１配下の端末３０３との間で暗号化したＶＰＮ通信を行う。
【００８４】
ＶＰＮ通信を終了する際は、ＶＰＮ装置１０１及びＶＰＮ装置３０１は当該ＶＰＮ通信に用いていたポートを閉じるようにする。これにより、該当するポートに対して外部からのアクセスが不能になるので、セキュリティホールを塞ぐことができる。ここで、各ポートはアプリケーションに対応しており、ＶＰＮ接続時にアプリケーションごとに割り当てたポート番号を指定して通信を行う。
【００８５】
例えば、端末１０３側でアプリケーションを終了した場合などは、端末１０３からＶＰＮ装置１０１へ一定時間パケットが送られて来ないから、ＶＰＮ装置１０１は端末１０３への通信が終了したものと判断してルータ１０２との通信を停止する。その結果、ＶＰＮ通信は終了すると共にルータ１０２のポートは閉じられる。こうして、必要なときに通信相手の端末との間でＶＰＮ通信を行い、通信を終了するとＶＰＮ通信を終了しセキュリティホールを塞ぐことができる。
【００８６】
このように、通信パケットの通信（送信もしくは受信）が所定期間行われない状態が継続されると、終了判定部１４６がＶＰＮ通信を終了すべきものと判断し、ＶＰＮセッションを開放する。上記所定期間は、セッションタイマのタイマ値に基づいて判断される。セッションタイマのタイマ値は、所定期間が経過した後、任意のタイミングでＶＰＮセッションを終了するよう設定される。ネットワークリソースを有効活用するためには、このセッションタイマのタイマ値をネットワーク環境に応じて柔軟に変更することが好ましい。以下、セッションタイマのタイマ値を設定するための処理について、詳細に説明する。
【００８７】
本実施形態では、図３のパケット周期解析部１４４が、パケット群不在区間の開始時点から、セッションタイマのタイマ値に相当する時間が経過したときつまりセッションタイマがタイムアウトしたと判断したときに、終了判定部１４６が、上記所定期間にわたって通信パケットの通信がなかったものと判断する。そして、終了部１４７が、通信パケットの通信を終了するよう制御する。通信パケットの通信を終了することで、ＶＰＮセッションが開放され、前記ＶＰＮセッションが解放された後に任意のタイミングでルータ１０２のポートは閉じられる。
【００８８】
次に、パケット群不在区間の長さに関する頻度分布の例が図６、図７に示されている。図６、図７における横軸は、前のパケット群の最後のパケットが終了してから次のパケット群の先頭のパケットを検出するまでに、セッションタイマが計数する時間ｔの長さを表している。ここでは、図６、図７のいずれの例においても、検出されるパケット群不在区間が平均周期Ｔｍ（後述する平均値Ｔａｖｅと同義）の近傍に集中している（間隔のばらつきが小さい）場合を想定している。
【００８９】
図６に示す例のように、平均周期Ｔｍがセッションタイマのタイマ値よりも小さいネットワーク環境においては、セッションタイマのタイムアウトが発生する前に次のパケット群が到来してセッションタイマの計数値がリセットされることが多い。この場合、長時間にわたってＶＰＮセッションの通信経路を維持することができる。しかし、セッションタイマのタイマ値がパケット群不在区間に比べ大きすぎる場合には、実際に通信が終了した後も長時間に渡りＶＰＮセッションが維持されることになり、ネットワークのリソースを不要に消費することがある。
【００９０】
一方、図７に示す例のように、平均周期Ｔｍがセッションタイマのタイマ値よりも大きいネットワーク環境においては、１つのパケット群が終了する毎にセッションタイマのタイムアウトが発生し、ＶＰＮセッションが終了することが多い。この場合、次に現れるパケット群を宛先の端末３０３に届けるためには、ＶＰＮセッションを再び確立する必要がある。従って、セッションタイマのタイマ値と平均周期Ｔｍとが近い場合には、ＶＰＮセッションの終了処理と、ＶＰＮセッションの確立処理とが頻繁に行われることになり、ネットワークに大きな負担がかかることになる。
本実施形態では、これらの状況を回避する。
【００９１】
次に、図３の統計テーブル１４８について説明する。
図８は、例えば図１のＶＰＮ装置１０１が有する統計テーブル１４８に関する具体的な構成例を示す図である。図８に示す統計テーブル１４８には、セッション番号領域１４８ａ、送信元アドレス領域１４８ｂ、宛先アドレス領域１４８ｃ、時刻情報領域１４８ｄ、不在区間情報領域１４８ｅ、平均不在区間情報領域１４８ｆ、セッションタイマ値領域１４８ｇが含まれている。
【００９２】
セッション番号領域（Ｓｅｓｓｉｏｎ）１４８ａには、それぞれのＶＰＮセッションを特定するための管理番号が記録される。
【００９３】
送信元アドレス領域（Ｓｏｕｒｃｅ）１４８ｂには、当該ＶＰＮセッションで利用される送信元の図１の端末１０３（Ａ）のＩＰアドレス及びポートの情報が記録される。
【００９４】
宛先アドレス領域（Ｄｅｓｔｉｎａｔｉｏｎ）１４８ｃには、当該ＶＰＮセッションで利用される宛先の図１の端末３０３（Ｄ）のＩＰアドレス及びポートの情報が記録される。
【００９５】
時刻情報領域１４８ｄには、パケット群の終了を最後に（前回）検出した時刻の情報（Ｔｔｉｍｅ）が記録される。
【００９６】
不在区間情報領域１４８ｅには、複数個（ｎ個）のパケット群不在区間の情報を記録するための領域が存在し、それぞれの領域には測定により得られたパケット群不在区間の時間Ｔｄ（パケット群が終了してから次のパケット群の先頭が現れるまでの時間）が記録される。
【００９７】
平均不在区間情報領域１４８ｆには、不在区間情報領域１４８ｅにある複数のパケット群不在区間の長さの情報（Ｔｄ（１）〜Ｔｄ（ｎ））を統計処理して得られる統計情報（例えばパケット群不在区間の長さの平均値Ｔａｖｅ）が記録される。
【００９８】
セッションタイマ値領域１４８ｇには、パケット周期解析部１４４により決定され、当該ＶＰＮセッションに割り当てたセッションタイマのタイマ値が記録される。
【００９９】
次に、ＶＰＮ装置によるセッションタイマのタイマ値を設定するための処理（タイマ値設定処理）の詳細について説明する。図９は、ＶＰＮ装置によるタイマ値設定処理の一例を示すフローチャートである。また、図９のパケット群検出チェック処理（ステップＳ１２１）の内容の一例が図１０に示されており、図９の周期解析処理（ステップＳ１２７）の内容の一例が図１２に示されている。また、パケット群及び本パケット群を検出する際に使用する検出中Ｆｌａｇの状態変化の一例が図１１にタイムチャートで示されている。
【０１００】
本実施形態では、予めシステムで定められた所定期間内に連続的に現れる複数のパケットを同一のパケット群に属するパケットの集合とみなす。従って、互いに隣接する複数のパケットの間が所定時間以上離れている場合には、これらのパケットは互いに異なるパケット群に属することになる。
【０１０１】
図９の処理は定期的に実行され、その処理の中ではまず、図３のパケット周期解析部１４４が、データ中継部１３３から入力されたパケットについて、ＶＰＮセッション毎にパケット群検出チェック処理、すなわち図１０に示す処理を実行する。
【０１０２】
ここで、図１０に示すパケット群検出チェック処理について以下に説明する。「パケット群検出チェック処理」とは、入力されたパケットをパケット群毎に区別すると共に、互いに隣接するパケット群とパケット群との間隔（パケット群不在区間）の時間（Ｔｄ）を計測するための処理である。なお、「検出中フラグ（Ｆｌａｇ）」とは、連続的に現れるパケットを同一のパケット群に属するか否かを判定するためのフラグである。同一パケット群に属する（パケット群としてパケット検出処理を行っている）場合にはＯＮ、同一パケット群に属しない（パケット群としてのパケット検出処理を終了している）場合にはＯＦＦとなる。また、「タイマＴｇｒｐ」とは、パケット不在区間が同一のパケット群として認識される所定時間間隔（Ｔｇｒｐ）以内か否かを判定するためのタイマである（図１１参照）。なお、所定時間（Ｔｇｒｐ）はシステムで予め規定される閾値の１つである。
【０１０３】
図１０の処理では、まず、パケット周期解析部１４４は、新たなパケットの到着を検出したか否かを判定する（ステップＳ１３１）。到着を検出した場合はステップＳ１３２に進み、パケットの到着を検出しない場合はステップＳ１３６に進む。
【０１０４】
新たなパケットの到着を検出した場合、パケット周期解析部１４４は、検出中Ｆｌａｇの状態を参照し、パケット群の検出処理中か否かを判定する（ステップＳ１３２）。パケット群の検出処理中ならステップＳ１３４に進み、パケット群の検出処理を行っていなければステップＳ１３３に進む。
【０１０５】
例えば、図１１に示す時刻ｔ１でパケットＰ０２の到着をパケット周期解析部１４４が検出した時には、検出中ＦｌａｇがＯＮ（検出処理中）なので、図１０のステップＳ１３１からＳ１３２、Ｓ１３４と進む。一方、図１１に示す時刻ｔ３でパケットＰ１１（パケット群の先頭）の到着を検出した時には、検出中ＦｌａｇがＯＦＦ（検出処理を行ってない）なので、ステップＳ１３１からＳ１３２、Ｓ１３３と進む。
【０１０６】
パケット群の検出処理を行ってない場合、パケット周期解析部１４４は、現在時刻計測用の手段により検出された現在時刻をパケット群不在区間の終了時刻（Ｔｇａｐ−Ｅ）として保存する（ステップＳ１３３）。
【０１０７】
パケット群を検出処理中である場合もしくはステップＳ１３３の終了後、パケット周期解析部１４４は、検出中ＦｌａｇをＯＮ状態にセットする（ステップＳ１３４）。
【０１０８】
続いて、パケット周期解析部１４４は、パケット群を検出、判定処理するためのタイマの計数値をクリア（初期化）する（ステップＳ１３５）。パケット群を検出、判定処理するためのタイマは、クリアされると時間の計数を０から再開する。
【０１０９】
一方、図１０のステップＳ１３１において新たなパケットを検出しなかった場合、パケット周期解析部１４４は、検出中Ｆｌａｇの状態を参照し、パケット群の検出処理中か否かを判定する（ステップＳ１３６）。パケット群の検出処理中ならステップＳ１３７に進み、パケット群を検出中でなければステップＳ１３１に戻る。
【０１１０】
パケット群の検出処理中である場合、パケット周期解析部１４４は、パケット群を検出、判定処理するためのタイマを参照し、パケット群を検出、判定処理するためのタイマの計数値が所定時間（Ｔｇｒｐ：パケット群が終了したと判定される時間）を経過したか否かを識別する（ステップＳ１３７）。所定時間（Ｔｇｒｐ）を経過した場合はステップＳ１３８に進み、経過していない場合はステップＳ１３１に戻る。
【０１１１】
例えば、図１１に示す時刻ｔ２１では、パケットＰ０２が終了した時刻ｔ２でパケット群を検出、判定処理するためのタイマがクリアされてから所定時間（Ｔｇｒｐ）を経過するので、この場合はステップＳ１３７からＳ１３８に進む。すなわち、１つのパケット群が終了したものとみなす。
【０１１２】
パケット群を検出、判定処理するためのタイマの計数値が所定時間（Ｔｇｒｐ）を経過した場合には、パケット周期解析部１４４は、検出中ＦｌａｇをＯＦＦ状態にする（ステップＳ１３８）。
【０１１３】
続いて、パケット周期解析部１４４は、パケット群の最後のパケットを検出した時刻（（現在時刻計測用の手段により検出された現在時刻）−（Ｔｇａｐ−Ｅ）−（Ｔｇｒｐ））を、パケット群不在区間の開始時刻（Ｔｇａｐ−Ｓ）として保存する（ステップＳ１３９）。
【０１１４】
従って、例えば図１１に示すパケット群Ａ２が途絶えてから次のパケット群Ａ３が始まるまでのパケット群不在区間Ｔｄ（ｎ）については、パケット群が終了した時刻ｔ４の時間情報（Ｔｇａｐ−Ｓ）と、次のパケット群が開始した時刻ｔ５の時間情報（Ｔｇａｐ−Ｅ）との差分として求めることができる。
【０１１５】
なお、図１１のパケットＰ０１とＰ０２とはそれらの間のパケット群間隔が所定時間（Ｔｇｒｐ）以内なので、これらは同じパケット群Ａ１として区分される。同様に、パケットＰ１１、Ｐ１２はこれらの隙間が所定時間（Ｔｇｒｐ）以内なので、これらは同じパケット群Ａ２として区分される。同じパケット群として区分されたときには、パケット群不在区間とはみなされず、統計テーブル１４８の不在区間情報（図８の１４８ｅ）には記録されない。
【０１１６】
図９に戻り、図３のパケット周期解析部１４４は、パケット群検出チェックの処理の結果、パケット群を検出したか否かを判定する（ステップＳ１２２）。パケット群を検出した場合はステップＳ１２３に進み、検出していない場合はステップＳ１２１に戻る。
【０１１７】
ステップＳ１２３〜Ｓ１２５では、パケット周期解析部１４４は、パケット群検出チェックで得られた情報を、後述する周期解析の際に利用できるように、図３の統計テーブル１４８に書き込むための処理を行う。
【０１１８】
パケット周期解析部１４４は、最も新しい計測値を統計テーブル１４８に残すための処理を行う。すなわち、既にｎ個の計測値が不在区間情報領域（図８の１４８ｅ）に記録されている場合には、これらの計測値の記録領域を古い方向（ｎ→ｎ−１方向）に向かって１個分ずらし、最も古い計測値は削除して、新しい計測値１個分の記録領域を確保する（ステップＳ１２３）。
【０１１９】
続いて、パケット周期解析部１４４は、パケット群検出チェック処理で得られたパケット群不在区間の開始時刻（Ｔｇｒａｐ−Ｓ）とパケット群不在区間の終了時刻（Ｔｇａｐ−Ｅ）とに基づいて、最新のパケット群不在区間の時間（長さ）Ｔｄを計算し、これを統計テーブル１４８の不在区間情報領域１４８ｅの最後の位置にＴｄ（ｎ）として記録する（ステップＳ１２４）。ここでは、パケット群不在区間の時間Ｔｄは、今回検出されたパケット群不在区間の終了時刻（Ｔｇａｐ−Ｅ）から、前回検出されたパケット群のパケット群不在区間の開始時刻を表す時刻の情報（Ｔｔｉｍｅ：前回検出したＴｇｒａｐ−Ｓ）を減算した結果である。
【０１２０】
続いて、パケット周期解析部１４４は、今回検出したパケット群の情報を次のパケット群を検出した時に利用するために、今回のパケット群不在区間の開始時刻（Ｔｇａｐ−Ｓ）を統計テーブル１４８の時刻情報領域１４８ｄに前回検出されたパケット群のパケット群不在区間の開始時刻を表す時刻の情報（Ｔｔｉｍｅ）として保存する（ステップＳ１２５）。
【０１２１】
続いて、パケット周期解析部１４４は、統計テーブル１４８の内容を参照し、統計情報の計算に必要な複数（ｎ個）のパケット群不在区間の時間（Ｔｄ）のサンプル情報取得が終了しているか否かを判定する（ステップＳ１２６）。終了している場合はステップＳ１２７に進み、終了していない場合はステップＳ１２１に戻る。
【０１２２】
ステップＳ１２７では、パケット周期解析部１４４は、データ中継部１３３から入力されたパケットについて、ＶＰＮセッション毎に周期解析処理、すなわち図１２に示す処理を実行する。
【０１２３】
ここで、図１２に示す周期解析処理について以下に説明する。なお、図１２中の処理で用いられる２つの閾値ＴｔｈＬ（第１閾値に相当）とＴｔｈＳ（第２閾値に相当）については、図１３に示すように、両者はＴｔｈＳはＴｔｈＬよりも小さいという関係がある。なお、図１３は、パケット群不在区間の長さに関する頻度と閾値ＴｔｈＳ、ＴｔｈＬとの関係の一例を示す図である。ここで、ＴｔｈＳはこれ以上短いとセッション継続時間を長くするという閾値で、ＴｔｈＬはこれ以上長いとセッション継続時間を短くするという閾値である。
【０１２４】
図１２の処理では、まず、図３のパケット周期解析部１４４は、統計テーブル１４８の内容に基づいて、統計情報を算出する（ステップＳ１４１）。具体的には、ｎ個のパケット群不在区間の長さＴｄ（１）〜Ｔｄ（ｎ）の情報からこれらの平均値をＴａｖｅとして算出し、更に最大値をＴｍａｘとして算出する。算出した平均値Ｔａｖｅは統計テーブル１４８の領域（図８の１４８ｆ）に記録する。また、最大値Ｔｍａｘを統計テーブル１４８に記録するようにしてもよい。
【０１２５】
続いて、パケット周期解析部１４４は、パケット群不在区間の時間Ｔｄの周期性の有無を調べるために、取得したパケット群不在区間の時間Ｔｄ（１）〜Ｔｄ（ｎ）のばらつきが所定範囲内に収まっているか否かを判定する（ステップＳ１４２）。具体的には、平均値Ｔａｖｅと予め定めた定数ΔＳ（％）とを用いて、パケット群不在区間の時間Ｔｄ（１）〜Ｔｄ（ｎ）の全てが（Ｔａｖｅ±（Ｔａｖｅ＊ΔＳ（％）／１００））で表される時間範囲内に属するか否かを判定する（ステップ１４２）。この条件を満たす場合はステップＳ１４３に進み、満たさない場合はステップＳ１４４に進む。
【０１２６】
ステップＳ１４２の条件を満たす場合、つまり、複数のパケット群不在区間の時間Ｔｄの各々と算出された平均値Ｔａｖｅとの差のいずれも所定範囲内である場合、パケット周期解析部１４４は、当該ＶＰＮセッションについて、パケット群不在区間の長さＴｄ（１）〜Ｔｄ（ｎ）に周期性がある（ばらつきが小さい）と判定する（ステップＳ１４３）。
【０１２７】
一方、ステップＳ１４２の条件を満たさない場合、つまり、複数のパケット群不在区間の時間Ｔｄの各々と算出された平均値Ｔａｖｅとの差のいずれかが所定範囲外である場合、パケット周期解析部１４４は、当該ＶＰＮセッションについて、パケット群不在区間の長さＴｄ（１）〜Ｔｄ（ｎ）に周期性がない（ばらつきが大きい）と判定する（ステップＳ１４４）。
【０１２８】
ステップＳ１４３の処理後、パケット周期解析部１４４は、平均値Ｔａｖｅと予め定めた閾値ＴｔｈＬ（図１３参照）とを比較する（ステップＳ１４５）。（Ｔａｖｅ＞ＴｔｈＬ）の条件を満たす場合はステップＳ１４６に進み、満たさない場合はステップＳ１４７に進む。
【０１２９】
ステップＳ１４５の条件を満たす場合、パケット周期解析部１４４は、当該ＶＰＮセッションについて、セッションタイマのタイマ値を閾値ＴｔｈＬ以下となるように変更する。例えば、セッションタイマのタイマ値を初期値（例えば６０秒、予め定めた規定値）よりも短い長さ（Ｔｓｈｏｒｔ、予め定めた定数）に変更する（ステップＳ１４６）。そして、変更後のタイマ値を、統計テーブル１４８の領域１４８ｇに書き込む。
【０１３０】
つまり、例えば図１の端末１０３（Ａ）のアプリケーションによるパケット群の送出が休止されてから次のパケット群が送出されるまでの間隔が非常に長い（例えば６０分）場合には、セッションタイマがタイムアウトするまでの時間（タイマ値）が短縮される。その結果、パケット群の送出が休止されてからタイムアウトが発生し当該ＶＰＮセッションが解放されるまでの時間が短縮されるので、使用されていないＶＰＮセッションのために確保されているリソースを短時間で解放し、解放されたリソースを別のセッションで有効に使用することができる。
【０１３１】
一方、ステップＳ１４５の条件を満たさない場合では、パケット周期解析部１４４は、平均値Ｔａｖｅと予め定めた閾値ＴｔｈＳ（図１３参照）とを比較する（ステップＳ１４７）。（Ｔａｖｅ＜ＴｔｈＳ）の条件を満たす場合はステップＳ１４８に進み、満たさない場合はステップＳ１４９に進む。
【０１３２】
ステップＳ１４７の条件を満たす場合、パケット周期解析部１４４は、当該ＶＰＮセッションについて、セッションタイマのタイマ値をタイムアウトしない値となるように変更する。例えば、セッションタイマのタイマ値をステップＳ１４１で求めた最大値Ｔｍａｘに予め定めた定数Ｔｂｕｆを加算した値（Ｔｍａｘ＋Ｔｂｕｆ）に変更する（ステップＳ１４８）。そして、変更後のタイマ値を、統計テーブル１４８の領域１４８ｇに書き込む。Ｔｍａｘ＋Ｔｂｕｆの値は、規定値（例えば６０秒）よりも大きな値である。
【０１３３】
つまり、例えば端末１０３（Ａ）のアプリケーションによるパケット群の送出が休止されてから次のパケット群が送出されるまでの間隔が短い（例えば９０秒）場合には、セッションタイマがタイムアウトするまでの時間（タイマ値）がそのパケット群送出間隔より十分長ければ、セッションタイマのタイムアウトは発生しない（セッションタイマのタイムアウトの前に次のパケット群が送出される）。その結果、端末１０３（Ａ）のアプリケーションによるパケット群の送出が休止されてから次のパケット群が送出されるまでの間に、セッションタイマがタイムアウトすることがほとんどの確率でなく、ＶＰＮセッションを張り直す必要がないので、ネットワークの負担が軽減される。
【０１３４】
ステップＳ１４４で周期性なしと判断された場合もしくはステップＳ１４７の条件を満たさない場合、パケット周期解析部１４４は、当該ＶＰＮセッションについて、セッションタイマのタイマ値を規定値、例えば初期値と同値に戻す（ステップＳ１４９）。そして、変更後のタイマ値を、統計テーブル１４８の領域１４８ｇに書き込む。なお、初期値と同値にする代わりに、現在のセッションタイマのタイマ値を変更しないようにしてもよい。
【０１３５】
つまり、例えば端末１０３（Ａ）のアプリケーションによるパケット群の送出が休止されてから次のパケット群が送出されるまでの間隔が大きくばらついている場合には、パケット群間隔に周期性がないと判断され、セッションタイマのタイマ値は変更されない、もしくは初期値に戻される。これにより、セッションタイマのタイムアウトが頻繁に発生する場合や、ＶＰＮセッションを維持する時間が長くなる場合など動作にバラツキが発生せず、ＶＰＮセッションを終了する動作が不安定になるのを防止できる。
【０１３６】
このような図９、図１０、図１２に示したセッションタイマのタイマ値設定処理によれば、実際の様々なネットワーク環境に応じて、柔軟にセッションタイマのタイマ値を設定できる。例えば、セッションタイマのタイマ値が長く設定されている場合であっても、長時間に渡って使用されていないＶＰＮセッションのためにネットワークのリソースが消費され続け、他の通信でリソースが取得できないという事象を回避することができる。また、セッションタイマのタイマ値が短く設定されている場合であっても、セッションタイマのタイムアウトが頻繁に発生し、ＶＰＮセッションが終了した後に短時間で次のパケットが到来し、その都度ＶＰＮセッションを確立することでネットワーク負荷が増大してしまうことを回避することができる。
【０１３７】
なお、内容に限らず、本発明の装置を実際に構成したり本発明の方法を実施したりする場合には、様々な変形が考えられる。例えば、図１２においては統計情報としてｎ個のＴｄの平均値Ｔａｖｅや最大値Ｔｍａｘを利用しているが、これらと同等の特性を有する値であれば他の計算方法で算出された統計情報を用いても良い。また、図１２に示す例では、パケット群間隔Ｔｄのばらつきの範囲を特定するためにステップＳ１４２で定数（ΔＳ％）を用いているが、これの代わりに例えば標準偏差などを利用しても良い。また、図８に示した統計テーブル１４８の構成についても様々な変形が考えられる。
【０１３８】
さらに、本発明の趣旨ならびに範囲を逸脱することなく、明細書の記載、並びに周知の技術に基づいて、当業者が様々な変更、応用することも本発明の予定するところであり、保護を求める範囲に含まれる。たとえば、本発明はＷＡＮ２００上におけるＳＴＵＮサーバ２０１や呼制御サーバ２０２の存在が必須であるものと限定的に解釈されるものではない。自装置の外部アドレス・ポート情報を取得可能な手段・情報源はＳＴＵＮサーバ２０１に代替可能であり、たとえば、ハイブリッドＰ２Ｐや、ピュアＰ２Ｐや、ＤＨＴなどの技術が対応可能となる。また、ノードを順にたどって通信相手と通信経路を構築する技術は呼制御サーバ２０２に代替可能であり、たとえば、ＳＭＴＰやＤＮＳの技術が対応可能となる。
【０１３９】
さらにまた、ＶＰＮ装置１０１，３０１が通信するパケットはＵＤＰに限られると限定的に解釈されるものでもない。あるいは、ＶＰＮ装置１０１、３０１は必ずしもその配下に端末１０３，３０３を有する必要はなく、端末１０３，３０３に本発明のＶＰＮ装置のプログラムを読み込むことによって、端末自身がＶＰＮ装置と一体化して機能することも、本発明が保護を求める範囲に含まれる。つまり、ＶＰＮ装置１０１及びＶＰＮ装置３０１は、ＶＰＮ装置１０１及びＶＰＮ装置３０１自身が送信すべきパケットについてパケット群不在区間を測定し、測定結果に基づいてセッションタイマのタイマ値を設定し、設定されたタイマ値に基づいてＶＰＮセッションを終了させてもよい。
【産業上の利用可能性】
【０１４０】
本発明によれば、ＶＰＮセッションにかかるネットワークの負担を低減させることが可能なＶＰＮ装置、ＶＰＮネットワーキング方法及びプログラム等として有用である。
【符号の説明】
【０１４１】
１００、３００  ＬＡＮ
１０１、３０１  ＶＰＮ装置
１０２、３０２  ルータ
１０３、３０３  端末
１１１  マイクロコンピュータ（ＣＰＵ）
１１２  不揮発性メモリ
１１３  メモリ
１１４、１１５  ネットワークインタフェース
１１６  ＬＡＮ側ネットワーク制御部
１１７  ＷＡＮ側ネットワーク制御部
１１８  通信中継部
１１９  表示制御部
１２０  表示部
１３０  システム制御部
１３１  配下端末管理部
１３２  メモリ部
１３３  データ中継部
１３４  設定用インタフェース部
１３５  外部アドレス・ポート情報記憶部
１４０  通信制御部
１４１  外部アドレス・ポート取得部
１４２  ＶＰＮ機能部
１４３  呼制御機能部
１４４  パケット周期解析部
１４５  暗号処理部
１４６  終了判定部
１４７  終了部
１４８  統計テーブル
２００  ＷＡＮ
２０１  ＳＴＵＮサーバ
２０２  呼制御サーバ
【図１】
2011166438.tif 000003
【図２】
2011166438.tif 000004
【図３】
2011166438.tif 000005
【図４】
2011166438.tif 000006
【図５】
2011166438.tif 000007
【図６】
2011166438.tif 000008
【図７】
2011166438.tif 000009
【図８】
2011166438.tif 000010
【図９】
2011166438.tif 000011
【図１０】
2011166438.tif 000012
【図１１】
2011166438.tif 000013
【図１２】
2011166438.tif 000014
【図１３】
2011166438.tif 000015