(57)【要約】【課題】中継装置の処理負荷が大きくなった場合に、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減する通信装置、暗号化通信プログラム、および暗号化通信方法を提供する。【解決手段】中継装置を介して通信相手の通信装置と暗号化通信する通信装置は、中継装置から第１切替指示と通信相手の通信装置とＶＰＮを構築するための構築情報とを受信し、リアルタイムパケットの暗号化通信が終了したと判断されてから、通信相手の通信装置との間に構築されたＶＰＮを介して暗号化通信を実行する。【選択図】図１
2013197907.tif 000002
【特許請求の範囲】
【請求項１】
暗号化通信を中継する中継装置に接続され、通信相手の通信装置と前記中継装置を介して通信可能な通信装置であって、
前記中継装置とＶＰＮを構築する第１構築手段と、
前記第１構築手段により構築されたＶＰＮおよび前記中継装置を介して前記通信相手の通信装置と暗号化通信を実行する第１暗号化通信手段と、
前記中継装置の処理負荷が閾値よりも大きくなった場合、前記通信相手の通信装置と前記中継装置を中継せずに暗号化通信させる指示である第１切替指示と前記通信相手の通信装置とＶＰＮを構築するための構築情報とを前記中継装置から受信する受信手段と、
前記受信された構築情報に基づき、前記通信相手の通信装置とＶＰＮを構築する第２構築手段と、
前記第２構築手段により構築されたＶＰＮを介して前記中継装置を中継せずに前記通信相手の通信装置と暗号化通信を実行する第２暗号化通信手段と、
前記受信手段により前記第１切替指示が受信された場合に、前記第１暗号化通信手段により実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断する第１判断手段と、
を備え、
前記第２暗号化通信手段は、前記第１判断手段によりリアルタイムパケットの暗号化通信が終了したと判断されてから、暗号化通信を実行すること
を特徴とする通信装置。
【請求項２】
前記受信手段により前記第１切替指示が受信された場合に、前記第１暗号化通信手段により実行される暗号化通信の有効期間を設定する設定手段と、
前記設定手段により設定された有効期間を経過しているか否かを判断する第２判断手段と、を備え
前記第１判断手段によりリアルタイムパケットの暗号化通信が終了していないと判断され、前記第２判断手段により、前記有効期間を経過していると判断された場合、前記第２暗号化通信手段は暗号化通信を実行すること
を特徴とする請求項１記載の通信装置。
【請求項３】
前記リアルタイムパケットの送信元、または宛先の通信端末に通信状態から保留状態に切り替える保留信号、および保留状態から通信状態に切り替える解除信号を送信する信号送信手段を備え、
前記第１判断手段によりリアルタイムパケットの暗号化通信が終了していないと判断され、第２判断手段により前記有効期間を経過していると判断された場合、前記信号送信手段は、前記通信端末に前記保留信号を送信し、
前記信号送信手段により前記通信端末に保留信号が送信された後に、前記第２構築手段は、前記通信相手の通信装置とＶＰＮを構築し、
前記第２構築手段により前記通信相手の通信装置とＶＰＮが構築された後に、前記信号送信手段は、前記解除信号を前記通信端末に送信すること
を特徴とする請求項２記載の通信装置。
【請求項４】
前記受信手段は、前記中継装置の処理負荷が閾値よりも小さくなった場合、前記中継装置を中継して前記通信相手の通信装置と暗号化通信させる指示である第２切替指示を前記中継装置から受信し、
前記受信手段により前記第２切替指示が受信された場合、前記第１判断手段は、前記第２暗号化通信手段により実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断し、
前記第１判断手段によりリアルタイムパケットの暗号化通信が終了したと判断されてから、前記第１暗号化通信手段は、前記中継装置を中継する暗号化通信を実行すること
を特徴とする請求項１〜３の何れか記載の通信装置。
【請求項５】
暗号化通信を中継する中継装置に接続され、通信相手の通信装置と前記中継装置を介して通信する通信装置のコンピュータに、
前記中継装置とＶＰＮを構築する第１構築ステップと、
前記第１構築ステップにより構築されたＶＰＮおよび前記中継装置を介して前記通信相手の通信装置と暗号化通信を実行する第１暗号化通信ステップと、
前記中継装置の処理負荷が閾値よりも大きくなった場合、前記通信相手の通信装置と前記中継装置を中継せずに暗号化通信させる指示である第１切替指示と前記通信相手の通信装置とＶＰＮを構築するための構築情報とを前記中継装置から受信する受信ステップと、
前記受信された構築情報に基づき、前記通信相手の通信装置とＶＰＮを構築する第２構築ステップと、
前記第２構築ステップにより構築されたＶＰＮを介して、前記通信相手の通信装置と前記中継装置を中継せず暗号化通信を実行する第２暗号化通信ステップと、
前記受信ステップにより前記第１切替指示が受信された場合に、前記第１暗号化通信ステップにより実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断する第１判断ステップと、
を実行させ、
前記第２暗号化通信ステップは、前記第１判断ステップによりリアルタイムパケットの暗号化通信が終了したと判断されてから、暗号化通信を実行すること
を特徴とする暗号化通信プログラム。
【請求項６】
暗号化通信を中継する中継装置に接続され、通信相手の通信装置と前記中継装置を介して暗号化通信する通信装置の通信方法であって、
前記中継装置とＶＰＮを構築する第１構築ステップと、
前記第１構築ステップにより構築されたＶＰＮ、および前記中継装置を介して前記通信相手の通信装置と暗号化通信を実行する第１暗号化通信ステップと、
前記中継装置の処理負荷が閾値よりも大きくなった場合、前記通信相手の通信装置と前記中継装置を中継せずに暗号化通信させる指示である第１切替指示とＶＰＮを構築するための構築情報とを前記中継装置から受信する受信ステップと、
前記受信された構築情報に基づき、前記通信相手の通信装置とＶＰＮを構築する第２構築ステップと、
前記第２構築ステップにより構築されたＶＰＮを介して、前記通信相手の通信装置と前記中継装置を中継せず暗号化通信を実行する第２暗号化通信ステップと、
前記受信ステップにより前記第１切替指示が受信された場合に、前記第１暗号化通信ステップにより実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断する第１判断ステップと、
を備え、
前記第２暗号化通信ステップは、前記第１判断ステップによりリアルタイムパケットの暗号化通信が終了したと判断されてから、暗号化通信を実行すること
を特徴とする暗号化通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信相手の通信装置と暗号化通信を行う際に、中継装置の処理負荷に応じて、中継装置を中継するＶＰＮと中継しないＶＰＮとを切り替える通信装置、暗号化通信プログラム、および暗号化通信方法に関するものである。
【背景技術】
【０００２】
従来、インターネットまたは専用／公衆回線を介して、複数のノードの間において暗号化通信を行う技術が知られている。例えば、特許文献１に開示されている技術では、ＩＰｓｅｃ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｓｅｃｕｒｉｔｙ）等のプロトコルに準拠して送信側のノードにおいてパケットが暗号化され、受信側のノードで復号される。特許文献１に開示された技術では、ハブ＆スポーク型と呼ばれる形式で、ＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）が構築され、暗号化通信が行われる。ハブ＆スポーク型でＶＰＮが構築された場合、送信側のノードがパケットを暗号化する。送信側のルータは、暗号化されたパケットを中継ノードへ送信する。中継ノードは暗号化されたパケットを復号し、送信すべき受信側のノードを選択し、再びパケットを暗号化する。次に、中継ノードは、再び暗号化されたパケットを選択された受信側のノードに送信する。
【０００３】
特許文献１に開示された技術では、送信側のノードが、送信側のノードと中継ノードとの間のトラフィック量が閾値を越えたことを検出すると、送信側のノードと受信側のノードとの間に直接ＶＰＮを構築する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−１４０４８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した特許文献１に記載された暗号化通信において、送信側のノードが、送信側のノードと中継ノードとの間のトラフィック量を検出するので、以下の問題が生じる可能性がある。
【０００６】
別の送信側のノードが中継ノードに接続され、暗号化通信している場合、送信側のノードは、別の送信側のノードと中継ノードとの間のトラフィック量を検出できない。これにより、別の送信側のノードと中継ノードとの間のトラフィック量が多い場合、送信側のノードと受信側のノードとの間で直接ＶＰＮが構築されず、中継ノードを介する暗号化通信が継続される。また、中継ノードと各送信側のノードとの間のトラフィック量が閾値を超えなければ、送信側のノードと受信側のノードとの間で直接ＶＰＮが構築されず、中継ノードを介する暗号化通信が継続される。
【０００７】
送信側のノードと中継ノードとの間におけるトラフィック量が多くなると、中継ノードにおいて、送信側のノードから送信されるパケットの暗号化処理、および復号処理の処理負荷が大きくなることが考えられる。この暗号化処理、及び復号処理の処理負荷が大きくなると、受信側のノードへ送信されるべき暗号化パケットが中継ノードから遅れて送信される場合、または受信側のノードへ送信されるべき暗号化パケットが中継ノードから送信されない場合が発生する恐れがある。
【０００８】
この問題を解消するために、中継ノードの処理負荷が大きくなった場合、中継ノードは、接続されている送信側ノード、および受信側ノードに対し、中継ノードを介さずに暗号化通信を実行させる通知である切替指示をお互いのＩＰアドレスを付与して送付することが考えられる。送信側ノード、および受信側ノードは、お互いのＩＰアドレスを基にＶＰＮを構築し、暗号化通信を開始する。このＶＰＮが構築され、暗号化通信を開始することに対し、次の問題がある。
【０００９】
送信側ノード、および受信側ノードは、中継ノードを介して、ＲＴＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｐｒｏｔｏｃｏｌ）、ＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）などのリアルタイムプロトコルに基づくパケットであるリアルタイムパケットを暗号化通信していることが考えられる。このパケットの暗号化通信中に、送信側ノード、および受信側ノードが、両ノードの間でＶＰＮを構築し、暗号化通信すると、音声および動画などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性がある。これは、暗号化通信の経路が、中継ノードを経由するＶＰＮから送信側ノードと受信側ノードとの間に構築されるＶＰＮに切り替えられるからである。
【００１０】
本発明の目的は、中継装置の処理負荷が大きくなった場合に、中継装置を介さずに暗号化通信を実行する２つの通信装置において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減する通信装置、暗号化通信プログラム、および暗号化通信方法を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、請求項１記載の本発明は、暗号化通信を中継する中継装置に接続され、通信相手の通信装置と前記中継装置を介して通信可能な通信装置であって、前記中継装置とＶＰＮを構築する第１構築手段と、前記第１構築手段により構築されたＶＰＮおよび前記中継装置を介して前記通信相手の通信装置と暗号化通信を実行する第１暗号化通信手段と、前記中継装置の処理負荷が閾値よりも大きくなった場合、前記通信相手の通信装置と前記中継装置を中継せずに暗号化通信させる指示である第１切替指示と前記通信相手の通信装置とＶＰＮを構築するための構築情報とを前記中継装置から受信する受信手段と、前記受信された構築情報に基づき、前記通信相手の通信装置とＶＰＮを構築する第２構築手段と、前記第２構築手段により構築されたＶＰＮを介して前記中継装置を中継せずに前記通信相手の通信装置と暗号化通信を実行する第２暗号化通信手段と、前記受信手段により前記第１切替指示が受信された場合に、前記第１暗号化通信手段により実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断する第１判断手段と、を備え、前記第２暗号化通信手段は、前記第１判断手段によりリアルタイムパケットの暗号化通信が終了したと判断されてから、暗号化通信を実行することを特徴とするものである。
【００１２】
請求項１記載の通信装置によれば、第１判断手段によりリアルタイムパケットの暗号化通信が終了したと判断されてから、第２暗号化通信手段は、第２構築手段により構築されたＶＰＮを介して中継装置を中継せずに通信相手の通信装置と暗号化通信を実行する。これにより、中継装置の処理負荷が閾値よりも大きくなった場合に、第１構築手段により構築されたＶＰＮから第２構築手段により構築されたＶＰＮに切替えられて、暗号化通信が実行される際に、音声などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、中継装置を介さずに暗号化通信を実行する２つの通信装置において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【００１３】
上記目的を達成するために、請求項２記載の本発明は、請求項１に記載の通信装置において、前記受信手段により前記第１切替指示が受信された場合に、前記第１暗号化通信手段により実行される暗号化通信の有効期間を設定する設定手段と、前記設定手段により設定された有効期間を経過しているか否かを判断する第２判断手段と、を備え、前記第１判断手段によりリアルタイムパケットの暗号化通信が終了していないと判断され、前記第２判断手段により、前記有効期間を経過していると判断された場合、前記第２暗号化通信手段は暗号化通信を実行することを特徴とするものである。
【００１４】
請求項２記載の通信装置によれば、設定手段により設定された有効期間において、リアルタイムパケットの暗号化通信が終了していないと第１判断手段により判断され、前記有効期間を経過していると第２判断手段により判断されると、第２暗号化通信手段は暗号化通信を実行する。これにより、中継装置の処理負荷が大きい状況が、継続されないので、中継装置の処理が停止して、中継装置を中継する暗号化通信が遮断されることが低減される。
【００１５】
上記目的を達成するために、請求項３記載の本発明は、請求項２に記載の通信装置において、前記リアルタイムパケットの送信元、または宛先の通信端末に通信状態から保留状態に切り替える保留信号、および保留状態から通信状態に切り替える解除信号を送信する信号送信手段を備え、前記第１判断手段によりリアルタイムパケットの暗号化通信が終了していないと判断され、第２判断手段により前記有効期間を経過していると判断された場合、前記信号送信手段は、前記通信端末に前記保留信号を送信し、前記信号送信手段により前記通信端末に前記保留信号が送信された後に、前記第２構築手段は、前記通信相手の通信装置とＶＰＮを構築し、前記第２構築手段により前記通信相手の通信装置とＶＰＮが構築された後に、前記信号送信手段は、前記解除信号を前記通信端末に送信することを特徴とするものである。
【００１６】
請求項３記載の通信装置によれば、信号送信手段が通信端末に保留信号、または解除信号を送信する。これにより、通信端末において保留状態が維持され、保留状態の間に通信装置自身と通信相手の通信装置との間にＶＰＮが構築される。これにより、通信端末のユーザは、保留状態において、通信相手の通信装置に接続された別の通信端末のユーザに対して音声などのリアルタイムパケットの暗号化通信を行うことは無いと考えられるので、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、中継装置を介さずに暗号化通信を実行する２つの通信装置において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。また、一般に、通信装置が、中継装置に接続されたＳＩＰサーバにＩＮＶＩＴＥ（ｈｏｌｄ）などの保留通知を送信することにより、通信装置に接続された通信端末において、保留状態が実現される。通信端末が、ＳＩＰサーバに保留通知を送信することで、通信端末と通信相手の通信装置に接続された通信端末とにおいて保留状態の同期が図られる。これに対し、本発明の通信装置は、管理装置に接続された中継装置に保留信号を送信しないので、中継装置の処理負荷を低減することが出来る。
【００１７】
上記目的を達成するために、請求項４記載の本発明は、請求項１〜３の何れか記載の通信装置において、前記受信手段は、前記中継装置の処理負荷が閾値よりも小さくなった場合、前記中継装置を中継して前記通信相手の通信装置と暗号化通信させる指示である第２切替指示を前記中継装置から受信し、前記受信手段により前記第２切替指示が受信された場合、前記第１判断手段は、前記第２暗号化通信手段により実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断し、前記第１判断手段によりリアルタイムパケットの暗号化通信が終了したと判断されてから、前記第１暗号化通信手段は、前記中継装置を中継する暗号化通信を実行することを特徴とするものである。
【００１８】
請求項４記載の通信装置によれば、第２切替指示を受信した場合、第２暗号化通信手段により実行されているリアルタイムパケットの暗号化通信が終了したと判断されてから、第１暗号化通信手段は、第１構築手段により構築されたＶＰＮおよび中継装置を介して通信相手の通信装置と暗号化通信を実行する。すなわち、第２切替指示を受信した場合、中継装置の処理負荷は低負荷状態なので、リアルタイムパケットの暗号化通信が終了したと判断されてから、第１暗号化通信手段により暗号化通信が実行されればよい。この結果、第２構築手段により構築されたＶＰＮから第１構築手段により構築されたＶＰＮに切替えられて、暗号化通信が実行される際に、音声などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、中継装置を介さずに暗号化通信を実行する２つの通信装置において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【００１９】
上記目的を達成するために、請求項５記載の本発明は、暗号化通信を中継する中継装置に接続され、通信相手の通信装置と前記中継装置を介して通信する通信装置のコンピュータに、前記中継装置とＶＰＮを構築する第１構築ステップと、前記第１構築ステップにより構築されたＶＰＮおよび前記中継装置を介して前記通信相手の通信装置と暗号化通信を実行する第１暗号化通信ステップと、前記中継装置の処理負荷が閾値よりも大きくなった場合、前記通信相手の通信装置と前記中継装置を中継せずに暗号化通信させる指示である第１切替指示と前記通信相手の通信装置とＶＰＮを構築するための構築情報とを前記中継装置から受信する受信ステップと、前記受信された構築情報に基づき、前記通信相手の通信装置とＶＰＮを構築する第２構築ステップと、前記第２構築ステップにより構築されたＶＰＮを介して、前記通信相手の通信装置と前記中継装置を中継せず暗号化通信を実行する第２暗号化通信ステップと、前記受信ステップにより前記第１切替指示が受信された場合に、前記第１暗号化通信ステップにより実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断する第１判断ステップと、を実行させ、前記第２暗号化通信ステップは、前記第１判断ステップによりリアルタイムパケットの暗号化通信が終了したと判断されてから、暗号化通信を実行することを特徴とする暗号化通信プログラムである。
【００２０】
請求項５記載の暗号化プログラムによれば、第１判断ステップによりリアルタイムパケットの暗号化通信が終了したと判断されてから、第２暗号化通信ステップは、第２構築ステップにより構築されたＶＰＮを介して中継装置を中継せずに通信相手の通信装置と暗号化通信を実行する。これにより、中継装置の処理負荷が閾値よりも大きくなった場合に、第１構築ステップにより構築されたＶＰＮから第２構築ステップにより構築されたＶＰＮに切替えられて、暗号化通信が実行される際に、音声などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、中継装置を介さずに暗号化通信を実行する２つの通信装置において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【００２１】
上記目的を達成するために、請求項６記載の本発明は、暗号化通信を中継する中継装置に接続され、通信相手の通信装置と前記中継装置を介して暗号化通信する通信装置の通信方法であって、前記中継装置とＶＰＮを構築する第１構築ステップと、前記第１構築ステップにより構築されたＶＰＮ、および前記中継装置を介して前記通信相手の通信装置と暗号化通信を実行する第１暗号化通信ステップと、前記中継装置の処理負荷が閾値よりも大きくなった場合、前記通信相手の通信装置と前記中継装置を中継せずに暗号化通信させる指示である第１切替指示とＶＰＮを構築するための構築情報とを前記中継装置から受信する受信ステップと、前記受信された構築情報に基づき、前記通信相手の通信装置とＶＰＮを構築する第２構築ステップと、前記第２構築ステップにより構築されたＶＰＮを介して、前記通信相手の通信装置と前記中継装置を中継せず暗号化通信を実行する第２暗号化通信ステップと、前記受信ステップにより前記第１切替指示が受信された場合に、前記第１暗号化通信ステップにより実行されているリアルタイムパケットの暗号化通信が終了したか否かを判断する第１判断ステップと、を備え、前記第２暗号化通信ステップは、前記第１判断ステップによりリアルタイムパケットの暗号化通信が終了したと判断されてから、暗号化通信を実行することを特徴とする暗号化通信方法である。
【００２２】
請求項６記載の暗号化通信方法によれば、第１判断ステップによりリアルタイムパケットの暗号化通信が終了したと判断されてから、第２暗号化通信ステップは、第２構築ステップにより構築されたＶＰＮを介して中継装置を中継せずに通信相手の通信装置と暗号化通信を実行する。これにより、中継装置の処理負荷が閾値よりも大きくなった場合に、第１構築ステップにより構築されたＶＰＮから第２構築ステップにより構築されたＶＰＮに切替えられて、暗号化通信が実行される際に、音声などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、中継装置を介さずに暗号化通信を実行する２つの通信装置において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【図面の簡単な説明】
【００２３】
【図１】本実施形態に係る暗号化通信システム１の概要構成を示す図である。
【図２】暗号化通信システム１におけるルータ２のハードウェア図である。
【図３】ＳＰＤの内容を表す模式図である。
【図４】ＳＡＤの内容を表す模式図である。
【図５】ルータ６の処理負荷が大きい場合の、暗号化パケットがＰＣ７からＰＣ８へ送信される処理を表すシーケンス図である。
【図６】ルータ２、ルータ６、およびルータ３を介するリアルタイムパケットの暗号化通信が、切替期限を経過しても終了しない場合の処理を表すシーケンス図である。
【図７】ルータ６の処理負荷が小さくなった場合の、暗号化パケットがＰＣ７からＰＣ８へ送信される処理を表すシーケンス図である。
【図８】ＶＰＮがメインモードで構築される際の処理を表すシーケンス図である。
【図９】ＶＰＮがアグレッシブモードで構築される際の処理を表すシーケンス図である。
【図１０】暗号化パケットの内容を表す模式図である。
【図１１】ルータ２のＶＰＮ切替処理を示すフローチャートである。
【発明を実施するための形態】
【００２４】
図１を参照して本発明の一実施形態に係る暗号化通信システム１について説明する。図１は、暗号化通信ステム１の概要構成を示す図である。
【００２５】
暗号化通信システム１は、ルータ２〜６と、パーソナルコンピュータ（ＰＣ）７〜９、データベースサーバ１０とを備える。ＰＣ７〜９は、ルータ２〜４とＬＡＮを介して接続する。データベースサーバ１０は、ルータ５とＬＡＮを介して接続する。ルータ２〜５は、ルータ６とＶＰＮを構築する。ＶＰＮは、ＩＰ網に構成される仮想的な私設網である。すなわち、ルータ２〜６はＶＰＮゲートウェイである。ＳＩＰ（Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバ６１がプライベートネットワークを介してルータ６と接続される。すなわち、ルータ２〜５は、ルータ６を介さずにＳＩＰサーバ６１に接続することは出来ない。ルータ２〜５が、本発明の通信装置の一例である。ルータ６が本発明の中継装置の一例である。
【００２６】
ルータ２〜５は、それぞれＰＣ７〜９、およびデータベースサーバ１０から送信されたパケットを暗号化する。次に、ルータ２〜５は、暗号化されたパケットをルータ６に送信する。ルータ６は、暗号化されたパケットを受信すると、この暗号化されたパケットを復号する。次に、ルータ６は、復号されたパケットを暗号化し、受信元のルータと異なるルータ２〜４に送信する。ルータ２〜４は、暗号化されたパケットを復号する。ルータ２〜４は、復号したパケットを、ＰＣ７〜９に送信する。すなわち、ＰＣ７〜９、およびデータベースサーバ１０から送信されたパケットはルータ６を介してＰＣ７〜９に送信される。この暗号化通信の形態はハブ＆スポーク型と呼ばれ、ルータ２〜５がスポーク、ルータ６がハブに相当する。
【００２７】
インターネットに構築されるＶＰＮを介して暗号化通信が行われる際に、本実施形態では、例えば、ＩＰｓｅｃ（Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）が採用される。ＩＰｓｅｃは、ネットワーク層においてデータを暗号化するプロトコルである。ＩＰｓｅｃはＡＨ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｈｅａｄｅｒ）、ＥＳＰ（Ｅｎｃａｐｓｕｌａｔｅｄ  Ｓｅｃｕｒｉｔｙ  Ｐａｙｌｏａｄ）、ＩＫＥ（Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）などの複数のプロトコルから構成される。これらのプロトコルは公知であるので簡単に説明する。
【００２８】
ＡＨは認証機能を有するセキュリティプロトコルである。ＥＳＰは、ペイロード部に対して暗号化するセキュリティプロトコルである。ＩＫＥは鍵交換を行うプロトコルである。
【００２９】
[ルータのハードウェア構成]
図２を参照して、ルータ２のハードウェア構成を説明する。ルータ３〜６のハードウェア構成は、ルータ２のハードウェア構成と同等であるので、説明を省略する。ルータ２は、ＣＰＵ２１、フラッシュメモリ２２、ＲＡＭ２３、ＷＡＮ側の通信インタフェース２４、およびＬＡＮ側の通信インタフェース２５を備える。ＣＰＵ２１、フラッシュメモリ２２、ＲＡＭ２３、ＷＡＮ側の通信インタフェース２４、およびＬＡＮ側のイーサネット（登録商標）インタフェース２５はバスを介して接続される。フラッシュメモリ２２は、ＣＰＵ２１により処理される後述のＶＰＮ切替処理などの制御プログラムを記憶する。フラッシュメモリ２２は後述するＳＡＤ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ  Ｄａｔａｂａｓｅ）として、ＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）を記憶する。フラッシュメモリ２２は、ＳＰＤ（Ｓｅｃｕｒｉｔｙ  Ｐｏｌｉｃｙ  Ｄａｔａｂａｓｅ）として、ＳＰ（Ｓｅｃｕｒｉｔｙ  Ｐｏｌｉｃｙ）を記憶する。ＲＡＭ２２は、ＣＰＵ２１が制御プログラムを実行する際の一時的なデータを記憶する。ＷＡＮ側の通信インタフェース２４は、ＬＡＮケーブルが接続されるポートを含み、ルータ６との間でＩＰ網に構築されたＶＰＮを介して暗号化されたパケットの送受信を行う。ＬＡＮ側の通信インタフェース２５は、ＬＡＮケーブルが接続されるポートを含み、ＬＡＮケーブルを介してＰＣ７との間で暗号化されていないパケットの送受信を行う。ルータ６のＬＡＮ側の通信インタフェースは、ＬＡＮケーブルを介してプライベートネットワークに接続される。ＳＩＰサーバ６１がプライベートネットワークに接続されており、ルータ６とＳＩＰサーバ６１とは、プライベートネットワークを介して接続される。ＣＰＵ２１が本発明のコンピュータの一例である。
【００３０】
図３を参照して、ＳＰＤを説明する。ＳＰＤはＳＰを記憶するデータベースである。ＳＰは、暗号化通信が可能な２つのルータとの間で暗号化通信を行うか否かを示す情報である。ＳＰは、送信元アドレス、宛先アドレス、上位層プロトコル、および動作などを１レコードに記憶している。送信元アドレスは、パケットの送信元のＰＣのＩＰアドレスである。宛先アドレスは、パケットの宛先のＰＣのＩＰアドレスである。上位層プロトコルは、ペイロード部を含むパケットのプロトコルである。動作は、暗号化通信を行うか否かの情報である。図３では暗号化通信せずに通信させる情報を「Ａｃｃｅｐｔ」、ＩＰｓｅｃにより暗号化通信させる情報を「ＩＰｓｅｃ」として図示してある。
【００３１】
図４を参照して、ＳＡＤを説明する。ＳＡＤはＳＡを記憶するデータベースである。ＳＡは、暗号化通信を行う２つのルータとの間で確立されるコネクションである。ＳＡは、送信元アドレス、宛先アドレス、始点アドレス、終点アドレス、セキュリティプロトコル、上位層プロトコル、ＳＰＩ（Ｓｅｃｕｒｉｔｙ  Ｐａｒａｍｅｔｅｒ  Ｉｎｄｅｘ）、暗号鍵、および暗号化アルゴリズムなどを１レコードに記憶する。始点アドレスは、暗号化されたパケットを送信するルータのＩＰアドレスである。終点アドレスは、暗号化されたパケットを受信するルータのＩＰアドレスである。セキュリティプロトコルとしては、ＡＨ、またはＥＳＰが指定される。ＳＰＩはＳＡを識別する情報である。暗号鍵は、２つのルータの間で暗号化通信が実行される際に、パケットの暗号化に使用される鍵である。暗号化アルゴリズムは、３ＤＥＳ−ＣＢＣ、ＤＥＳ−ＣＢＣなどのアルゴリズムである。
【００３２】
図５〜図７を参照して、ＰＣ７からＰＣ８にパケットが送信される際のシーケンスを説明する。
【００３３】
［ルータ６の処理負荷が小さい場合の動作］
Ｓ１において、ルータ２とルータ６とがＶＰＮを構築する。次に、Ｓ２においてルータ６とルータ３とがＶＰＮを構築する。Ｓ１の処理を実行するルータ２のＣＰＵ２１が本発明の第１構築手段の一例である。Ｓ１の処理が本発明の第１構築ステップの一例である。
【００３４】
Ｓ１、およびＳ２におけるＶＰＮの構築について、図８、および図９を参照して説明する。図８、および図９は、ルータ２とルータ６との間にＶＰＮが構築されるＳ１の処理の一例を示す。ＶＰＮが構築されるには、暗号化通信が実行される２つのルータの間において、ＳＡが生成されなければならない。ＳＡはＩＫＥ（Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）により、動的に生成される。このＳＡの生成過程において、ルータ２、およびルータ６はフェーズ１とフェーズ２と呼ばれる公知の処理を実行する。フェーズ１は、メインモードとアグレッシブモードとのどちらか一方のモードにより処理される。フェーズ１、およびフェーズ２の処理の実行が完了すると、ルータ２とルータ６との間にＶＰＮが構築される。図８はメインモードでフェーズ１の処理が実行されるシーケンス図である。図９はアグレッシブモードでフェーズ１の処理が実行されるシーケンス図である。
【００３５】
［メインモード］
図８に示すＳ１０１において、ルータ２は、ＩＳＡＫＭＰ  ＳＡ生成要求をルータ６に送信する。このＩＳＡＫＭＰ  ＳＡ生成要求は、ルータ２とルータ６との間でＩＳＡＫＭＰ  ＳＡの生成を提案するパケットである。ＩＳＡＫＭＰ  ＳＡは、ＩＫＥによりＳＡが自動的に生成される場合のＩＫＥの制御用チャネルである。この提案パケットをルータ６に送信すると、Ｓ１０２に処理を移行する。
【００３６】
提案パケットは、ＩＳＡＫＭＰ  ＳＡを確立するためのパラメータを含む。このパラメータは、暗号化アルゴリズム、ハッシュアルゴリズム、認証方式、およびＤｉｆｆｉｅ−Ｈｅｌｌｍａｎ交換に使用されるパラメータなどである。
【００３７】
暗号化アルゴリズムは、ＩＳＡＫＭＰ  ＳＡが暗号化される際のアルゴリズムである。この暗号化アルゴリズムは、３ＤＥＳ−ＣＢＣ、ＤＥＳ−ＣＢＣなどから後述するＳ１０２において１つ指定される。ハッシュアルゴリズムは、ＩＳＡＫＭＰ  ＳＡの確立過程において認証に使用されるアルゴリズムである。このハッシュアルゴリズムはＳＨＡ−１、ＭＤ５などから１つ指定される。認証方式は、通信先のルータを認証する際の方式である。認証方式は、ＰＳＫ（Ｐｒｅ−Ｓｈａｒｅｄ  Ｋｅｙ）認証、公開鍵認証から１つ指定される。以降の記載では、ＰＳＫ認証がパラメータとして指定されたとする。Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ交換に使用されるパラメータは、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ交換により共通鍵が生成される際に使用されるパラメータである。
【００３８】
Ｓ１０２において、ルータ６は、受信されたＩＳＡＫＭＰ  ＳＡの生成要求に含まれるパラメータの認証を行う。パラメータの認証を行うと、ＩＳＡＫＭＰ  ＳＡの生成を受諾すると判断し、ＩＳＡＫＭＰ  ＳＡの生成の受諾を通知するパケットをルータ２に送信する。この通知パケットをルータ２に送信すると、Ｓ１０３、およびＳ１０４に処理を移行する。
【００３９】
Ｓ１０３、およびＳ１０４において、ルータ２、およびルータ６は乱数を生成する。乱数の生成を終了すると、Ｓ１０５、およびＳ１０６に処理を移行する。
【００４０】
Ｓ１０５、およびＳ１０６において、ルータ２、およびルータ６は、発生された乱数を他方のルータ２、６に送信する。この乱数の送受信は、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ交換と呼ばれる。乱数の送信が終了すると、Ｓ１０７、およびＳ１０８に処理を移行する。
【００４１】
Ｓ１０７において、ルータ２はＳ１０３で生成された乱数と、Ｓ１０６で受信した乱数とから共通鍵を生成する。Ｓ１０８において、ルータ６はＳ１０４で生成された乱数と、Ｓ１０５で受信した乱数とから共通鍵を生成する。すなわち、ルータ２とルータ６とは、同じ共通鍵を生成する。共通鍵の生成が終了すると、Ｓ１０９に処理を移行する。
【００４２】
Ｓ１０９において、ルータ２は、ルータ２とルータ６との間で予め設定されるＰＳＫからハッシュ値を生成する。このＰＳＫは、ルータ２、およびルータ６のＩＰアドレスと対応付けてルータ２、およびルータ６のフラッシュメモリ２２に記憶される。ルータ２は、生成されたハッシュ値をルータ６に送信する。このハッシュ値は、Ｓ１０７において生成された共通鍵により暗号化されてルータ６に送信される。ハッシュ値の送信が終了すると、Ｓ１１０に処理を移行する。
【００４３】
Ｓ１１０において、ルータ６は、Ｓ１０８において生成された共通鍵を用いて、ハッシュ値を復号する。復号されたハッシュ値と、送信元のアドレスに付与されたルータ２のＩＰアドレスとから、Ｓ１０１〜Ｓ１０９の処理において、通信しているルータがルータ２であることを認証する。通信しているルータがルータ２であると判断すると、Ｓ１１１に処理を移行する。すなわち、ＰＳＫはＶＰＮを構築するための、通信相手の認証に用いられる。
【００４４】
Ｓ１１１において、ルータ６は、ルータ２とルータ６との間で予め設定されるＰＳＫからハッシュ値を生成する。このハッシュ値は、Ｓ１０８において生成された共通鍵により暗号化されてルータ６に送信される。ハッシュ値の送信が終了すると、Ｓ１１２に処理を移行する。
【００４５】
Ｓ１１２において、ルータ２は、Ｓ１０７において生成された共通鍵からハッシュ値を復号する。復号されたハッシュ値と送信元のアドレスに付与されたルータ６のＩＰアドレスとに基づき、Ｓ１０１〜Ｓ１０９の処理において、通信しているルータがルータ６であることを認証する。通信しているルータがルータ６であると判断すると、Ｓ１１３に処理を移行する。
【００４６】
Ｓ１０１〜Ｓ１１２の処理は、フェーズ１と呼ばれる。Ｓ１０１〜Ｓ１１２の処理により、ＩＳＡＫＭＰ  ＳＡが確立される。以降のＳ１１３〜Ｓ１１６において、ルータ２とルータ６との間で送受信されるパケットはＩＳＡＫＭＰ  ＳＡの確立過程において生成された共通鍵により暗号化される。
【００４７】
Ｓ１１３において、ルータ２は、ＩＰｓｅｃ  ＳＡ生成要求をルータ６に送信する。このＩＰｓｅｃ  ＳＡ生成要求は、ルータ２とルータ６との間でＩＰｓｅｃ  ＳＡの生成を提案するパケットである。ルータ２は、乱数、暗号化アルゴリズム、およびセキュリティプロトコルを提案パケットに付与する。Ｓ１１３において、提案パケットに付与される乱数は、ルータ２、およびルータ６に接続されたＰＣとの間で通信が実行される際に、パケットの暗号化に使用される暗号鍵を生成するための乱数である。暗号化アルゴリズムは、３ＤＥＳ−ＣＢＣ、ＤＥＳ−ＣＢＣなどのアルゴリズムである。セキュリティプロトコルとしては、ＡＨ、またはＥＳＰが指定される。この提案パケットをルータ６に送信すると、Ｓ１１４に処理を移行する。
【００４８】
Ｓ１１４において、ルータ６は、ルータ２とルータ６との間でＩＰｓｅｃ  ＳＡの生成を受諾すると、ルータ６は、受信した提案パケットに付与された乱数から暗号鍵を生成する。鍵の生成が終了すると、Ｓ１１５に処理を移行する。
【００４９】
Ｓ１１５において、ルータ６は、ＩＰｓｅｃ  ＳＡの生成の受諾を通知するパケットをルータ２に送信する。ルータ６はこの通知パケットに乱数を付与する。この通知パケットをルータ２に送信すると、Ｓ１１６に処理を移行する。
【００５０】
Ｓ１１６において、ルータ２は通知パケットに付与された乱数から暗号鍵を生成する。暗号鍵の生成が終了すると、ＩＰｓｅｃ  ＳＡが確立されたこと通知する確立通知パケットをルータ６に送信する。
【００５１】
Ｓ１１３〜Ｓ１１６の処理は、フェーズ２と呼ばれる。ＶＰＮは、Ｓ１０１〜Ｓ１１２の処理であるフェーズ１と、Ｓ１１３〜Ｓ１１６の処理であるフェーズ２とが実行されることにより構築される。すなわち、２つのルータ間でＶＰＮが構築されるためには、ルータ２とルータ６との間でＰＳＫが設定されていなければならない。ＶＰＮが構築されると、ルータ２とルータ６とのフラッシュメモリ２２に記憶されたＳＡの始点アドレス、および終点アドレスと対応付けて、セキュリティプロトコル、暗号鍵、および暗号化アルゴリズムが記憶される。この際、ＳＡを識別するＳＰＩがＳＡに付与される。ルータ２からルータ６へ送信される暗号化パケットのＳＡと、ルータ６からルータ２へ送信される暗号化パケットのＳＡとの２つのＳＡが作成される。
【００５２】
［アグレッシブモード］
図９を参照して、アグレッシブモードを説明する。Ｓ２０１において、ルータ２は乱数を生成する。乱数の生成が終了すると、Ｓ２０２に処理を移行する。
【００５３】
Ｓ２０２において、ルータ２は、ＩＳＡＫＭＰ  ＳＡ生成要求を送信する。このＩＳＡＫＭＰ  ＳＡ生成要求は、Ｓ２０１において生成された乱数を含む。ＩＳＡＫＭＰ  ＳＡ生成要求を送信すると、Ｓ２０３に処理を移行する。
【００５４】
Ｓ２０３において、ルータ６は、乱数を生成する。乱数を生成すると、Ｓ２０４に処理を移行する。
【００５５】
Ｓ２０４において、ルータ６は、ＩＳＡＫＭＰ  ＳＡの生成要求に含まれるパラメータを認証する。このパラメータを認証すると判断すると、ＩＳＡＫＭＰ  ＳＡの生成の受諾を通知するパケットをルータ２に送信する。この通知パケットは、Ｓ２０３において生成された乱数と、ルータ２とルータ６との間で予め設定されるＰＳＫから生成されるハッシュ値とを含む。通知パケットをルータ２に送信すると、Ｓ２０５に処理を移行する。
【００５６】
Ｓ２０５において、ルータ２は、受信された通知パケットに含まれるハッシュ値と、送信元のアドレスに付与されたルータ６のＩＰアドレスとに基づき、Ｓ２０１〜Ｓ２０４の処理において、通信しているルータがルータ６であることを認証する。通信しているルータがルータ６であると判断すると、Ｓ２０６に処理を移行する。
【００５７】
Ｓ２０６において、ルータ２は、受信された通知パケットに含まれる乱数から共通鍵を生成する。共通鍵の生成が終了すると、Ｓ２０７に処理を移行する。
【００５８】
Ｓ２０７において、ルータ２は、ルータ２とルータ６との間で予め設定されるＰＳＫから生成されるハッシュ値を含む認証パケットをルータ６に送信する。認証パケットの送信が終了すると、Ｓ２０８に処理を移行する。このハッシュ値は、Ｓ２０６において生成された共通鍵により暗号化される。
【００５９】
Ｓ２０８において、ルータ６は認証パケットに含まれるハッシュ値と、送信元のアドレスに付与されたルータ２のＩＰアドレスとに基づき、Ｓ２０１〜Ｓ２０４の処理において、通信しているルータがルータ２であることを認証する。通信しているルータがルータ６であると判断すると、アグレッシブモードにおけるフェーズ１を終了し、フェーズ２の処理に移行する。
【００６０】
図５に戻り、説明を続ける。以下の記載において、パケットの内容を示す図１０を参照して説明する。Ｓ３において、ルータ２は、ＰＣ７から暗号化されていないパケットを受信する。このパケットは、図１０（ａ）の表に示すように、ＰＣ８のＩＰアドレスが宛先のＩＰアドレスに指定され、ＰＣ７のＩＰアドレスが送信元のＩＰアドレスに指定されているパケットである。このパケットのペイロード部にリアルタイムプロトコル（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）に従うデータが含まれているとして説明する。以降の記載において、リアルタイムプロトコルをＲＴＰと記載する。
【００６１】
ルータ２は、ＰＣ７から送信されたパケットを受信すると、ルータ２のフラッシュメモリ２２に記憶されたＳＰＤを参照する。ルータ２は、ＰＣ７から送信されたパケットの宛先ＩＰアドレス、送信元のＩＰアドレス、およびペイロード部のプロトコルに一致するＳＰがあるか否かを判断する。ルータ２は、ＳＰがあると判断すると、そのＳＰの動作に示される通信方法で宛先のＰＣ８にパケットを送信すると判断する。ルータ２は、ＳＰが無いと判断すると、宛先のＰＣ８にパケットを送信しないと判断する。以降の記載では、ＳＰの動作にＩＰＳｅｃが記憶されているとして、暗号化通信でパケットが送信される場合を説明する。ルータ２は、暗号化通信でパケットを送信すると判断すると、ＳＡＤを参照する。次に、ルータ２は、パケットに付与された宛先ＩＰアドレス、送信元のＩＰアドレス、およびペイロード部のプロトコルと一致し、始点アドレスが、ルータ２のＩＰアドレスであるＳＡから、暗号鍵、および暗号化アルゴリズムを抽出する。ルータ２は、この暗号鍵、および暗号化アルゴリズムによりＰＣ７から送信されたパケットを暗号化する。ルータ２は、暗号化されたパケットに、宛先のルータのＩＰアドレス、送信元のルータのＩＰアドレス、およびＳＡに指定されたＳＰＩを付与する。宛先のルータのアドレスに、終点アドレスであるルータ６のＩＰアドレスが付与される。送信元のルータのアドレスに、始点アドレスであるルータ２のＩＰアドレスが付与される。図１０（ｂ）の表に暗号化されたパケットを示す。終点アドレス、始点アドレス、およびＳＰＩが、この暗号化されたパケットに付与される。以降の記載において、ルータ２とルータ６との間で使用される暗号鍵、暗号化方式をそれぞれ第１暗号鍵、第１暗号化アルゴリズムとする。宛先のルータのアドレスは、予めＳＡの終点アドレスとしてフラッシュメモリ２２に記憶されている。すなわち、宛先のルータのＩＰアドレスがフラッシュメモリ２２に記憶されていないと、そのルータと暗号化通信を行うことは出来ない。
【００６２】
次に、ルータ２は、暗号化されたパケットをルータ６に送信する。この暗号化されたパケットは、Ｓ１において構築されたＶＰＮを介して、ルータ６に送信される。以降の記載において、暗号化されたパケットを暗号化パケットと記載する。ルータ６は、ルータ２から送信された暗号化パケットを受信する。ルータ６が、暗号化パケットを受信すると、暗号化パケットに付与されたＳＰＩを参照し、第１暗号鍵、および第１暗号化アルゴリズムをルータ６のフラッシュメモリ２２に記憶されたＳＡＤから抽出する。ルータ６は、この第１暗号鍵、および第１暗号化アルゴリズムにより、暗号化パケットを復号する。復号されたパケットは、図１０（ａ）の表に示すＰＣ７から送信されたパケットと同じである。Ｓ３の処理を実行するルータ２のＣＰＵ２１が本発明の第１暗号化通信手段の一例である。ルータ２のＳ３の処理が本発明の第１暗号化通信ステップの一例である。
【００６３】
次に、ルータ６は、復号されたパケットに含まれる送信元アドレス、宛先アドレス、プロトコル、およびパケットサイズをルータ６のフラッシュメモリ２２に記憶する。後述するが、ＰＣ７のＩＰアドレスが送信元アドレス、ＰＣ８のＩＰアドレスが宛先アドレス、ペイロード部に含まれるデータのプロトコルであるＲＴＰがプロトコル、およびペイロード部に含まれるデータのサイズがパケットサイズである。フラッシュメモリ２２への記憶が終了すると、ルータ６は、ルータ６のフラッシュメモリ２２に記憶されたＳＰＤを参照する。ルータ６は、ＰＣ７から送信されたパケットの宛先ＩＰアドレス、送信元のＩＰアドレス、およびペイロード部のプロトコルに一致するＳＰがあるか否かを判断する。ルータ６は、ＳＰがあると判断すると、そのＳＰの動作に示される通信方法で宛先のＰＣ８にパケットを送信すると判断する。ルータ６は、ＳＰが無いと判断すると、宛先のＰＣ８にパケットを送信しないと判断する。ルータ６は、暗号化通信でパケットを送信すると判断すると、ＳＡＤを参照する。次に、ルータ６は、パケットに付与された宛先ＩＰアドレス、送信元のＩＰアドレス、およびペイロード部のプロトコルと一致し、始点アドレスが、ルータ６のＩＰアドレスであるＳＡから、暗号鍵、および暗号化アルゴリズムを抽出する。この暗号鍵、および暗号化アルゴリズムにより、ＰＣ７から送信されたパケットを暗号化する。Ｓ６において復号されたパケットに付与された宛先ＩＰアドレス、送信元のＩＰアドレス、およびペイロード部のプロトコルと一致し、始点アドレスが、ルータ６のＩＰアドレスであるＳＡから、ルータ６は、終点アドレスに記憶されたルータのＩＰアドレスを抽出する。暗号化されたパケットに、宛先のルータのＩＰアドレス、送信元のルータのＩＰアドレス、およびＳＡに指定されたＳＰＩを付与する。宛先のルータのアドレスは、抽出された終点アドレスであるルータ３のＩＰアドレスであり、送信元のルータのアドレスは、始点アドレスであるルータ６のＩＰアドレスである。暗号化が終了すると、ルータ６は、暗号化パケットをルータ３に送信する。以降の記載において、ルータ６とルータ３との間で使用される暗号鍵、暗号化アルゴリズムをそれぞれ第２暗号鍵、第２暗号化アルゴリズムとする。
【００６４】
次に、ルータ６から送信された暗号化パケットを受信したルータ３は、暗号化パケットに付与されたＳＰＩを参照し、第２暗号鍵、および第２暗号化アルゴリズムをルータ３のフラッシュメモリ２２に記憶されたＳＡＤから抽出する。ルータ３は、この第２暗号鍵、および第２暗号化アルゴリズムにより、暗号化パケットを復号する。復号が終了すると、ルータ３は、復号されたパケットのヘッダーに含まれる宛先アドレスを参照して、ＰＣ８にパケットを送信する。
【００６５】
［ルータ６の処理負荷が大きい場合の動作］
上述した図５のＳ１〜Ｓ３の処理において暗号化パケットを中継するルータ６は、定期的に処理負荷の検出を行う。ルータ６は、フラッシュメモリ２２に記憶されているパケットサイズに基づき、現在の処理負荷を検出する。Ｓ４において、ルータ６は、処理負荷が閾値よりも大きいか否かを判断する。この閾値は、予め設定されて、ルータ６のフラッシュメモリ２２に記憶される。以降の説明において、処理負荷が大きいと判断された場合の処理を説明する。
【００６６】
Ｓ５において、ルータ６は、ルータ６を介さずに暗号化通信させる切替対象のルータを選択する。ルータ６は、高負荷状態になると、暗号化通信を実行している２つのルータ毎に暗号化パケットのパケットサイズを算出する。この２つのルータ毎のパケットサイズが一番大きいデータに対応する２つのルータを切替対象として選択する。具体的に、始点アドレス、および終点アドレスを切替対象の情報として抽出する。以降の記載において、この一番大きいパケットサイズの暗号化通信を実行している２つのルータをルータ２とルータ３として説明する。切替対象を選択すると、Ｓ６に処理を移行する。
【００６７】
Ｓ６において、ルータ６はＰＳＫを生成する。このＰＳＫは、ルータ２とルータ３との間でＶＰＮを構築するために使用される。このＰＳＫは、Ｓ１、およびＳ２におけるＶＰＮ構築処理のＰＳＫと異なる。ＰＳＫの生成が終了すると、Ｓ７に処理を移行する。
【００６８】
Ｓ７において、ルータ６は、２つの構築情報パケットを生成する。構築情報パケットは、作成されたＰＳＫと、ルータ２、およびルータ３のＩＰアドレスとをペイロード部に含む。構築情報パケットの生成が終了すると、Ｓ８に処理を移行する。構築情報パケットが本発明の第１切替指示の一例である。構築情報パケットに含まれるＰＳＫと、ルータ２、およびルータ３のＩＰアドレスとが本発明の構築情報の一例である。
【００６９】
Ｓ８において、ルータ６は、フラッシュメモリ２２に記憶されたＳＡを参照し、構築情報パケットを暗号化する。一方の構築情報パケットは、第１暗号鍵、および第１暗号化アルゴリズムで暗号化される。他方の構築情報パケットは、第２暗号鍵、および第２暗号化アルゴリズムで暗号化される。構築情報パケットの暗号化が終了すると、ルータ６は、第１暗号鍵、および第１暗号化アルゴリズムで暗号化された構築情報パケットに、ルータ２のＩＰアドレス、およびＳＰＩを付与する。ルータ６は、ルータ２のＩＰアドレス、およびＳＰＩが付与された構築情報パケットをルータ２との間に構築されたＶＰＮを介して、ルータ２に送信する。ルータ６は、第２暗号鍵、および第２暗号化方式で暗号化された構築情報パケットにルータ３のＩＰアドレス、およびＳＰＩを付与する。ルータ６は、ルータ３のＩＰアドレス、およびＳＰＩが付与された構築情報パケットをルータ３との間に構築されたＶＰＮを介して、ルータ３に送信する。構築情報パケットの送信が終了すると、Ｓ９に処理を移行する。Ｓ８において、構築情報を受信するルータ２のＣＰＵ２１が本発明の受信手段の一例である。Ｓ８において、構築情報を受信するルータ２の処理が本発明の受信ステップの一例である。ルータ２、およびルータ３に送信される構築情報パケットが、ＶＰＮ構築通知である。
【００７０】
Ｓ９において、暗号化された構築情報パケットを受信したルータ２、およびルータ３は、パケットの監視を開始する。すなわち、暗号化された構築情報パケットを受信した直後に、ルータ３との間にＶＰＮを構築しない。これにより、暗号化された構築情報パケットを受信した時点において、Ｓ３の処理で暗号化通信を実行しているＰＣ７とＰＣ８との間のリアルタイム通信は、ルータ２、ルータ６およびルータ３を介して実行される。以降の説明において、ルータ２の処理とルータ３の処理は同様なので、ルータ２の処理を説明する。ルータ２が、通信終了パケットをＰＣ７から受信した場合、Ｓ１０において、この通信終了パケットを、ＩＰ網を介してルータ６に送信する。通信終了パケットをルータ６に送信すると、Ｓ１１に処理を移行する。ルータ３が本発明の通信相手の通信装置の一例である。
【００７１】
Ｓ１１において、ルータ６は、通信終了パケットを受信し、ＳＩＰサーバ６１に通信終了パケットを送信する。ＳＩＰサーバ６１は通信終了パケットを受信すると、ＰＣ７がＰＣ８に対し、通信の終了を指示したことを記憶する。この記憶が終了すると、ＳＩＰサーバ６１は、通信終了パケットを、ルータ６に送信する。ルータ６は、通信終了パケットを、ＩＰ網を介してルータ３に送信する。Ｓ１２において、ルータ３は通信終了パケットを受信すると、ＰＣ８に通信終了パケットを送信する。通信終了パケットは、ルータ６を介して暗号化通信を行っている暗号化通信の終了を示すパケットであり、ルータ２から送信される。具体的には、ＳＩＰのＢＹＥ、またはＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）のＴＥＡＲＤＯＷＮが通信終了パケットである。
【００７２】
通信終了パケットを受信したＰＣ８は、Ｓ１３において、ＰＣ７との通信が終了したことの了承を示す認可パケットをルータ３に送信する。認可パケットは、２００  ＯＫである。Ｓ１４において、ルータ３は認可パケットを受信すると、ＩＰ網を介して認可パケットをルータ６へ送信する。Ｓ１５において、ルータ６は、認可パケットを受信すると、ＳＩＰサーバ６１に認可パケットを送信する。認可パケットを受信したＳＩＰサーバ６１は、ＰＣ７とＰＣ８との通信が終了したことを記憶する。通信の終了を記憶したＳＩＰサーバ６１は、認可パケットをルータ６に送信する。ルータ６は、受信した認可パケットを、ルータ２との間に構築された、ＩＰ網を介してルータ２に送信する。Ｓ１６において、ルータ２は、認可パケットを受信すると、ＰＣ７に認可パケットを送信する。認可パケットをＰＣ７に送信すると、Ｓ１７に処理を移行する。一方ＰＣ７は、認可パケットを受信すると、ＰＣ８において通信終了が許可されたと認識する。
【００７３】
Ｓ１７において、ルータ２は、Ｓ８において受信された暗号化された構築情報パケットに付与されたＳＰＩを参照し、第１暗号鍵、および第１暗号化アルゴリズムを、フラッシュメモリ２２に記憶されたＳＡから抽出する。ルータ２は、この第１暗号鍵、および第１暗号化アルゴリズムにより、暗号化された構築情報パケットを復号する。構築情報パケットの復号が終了すると、ルータ２は、終点アドレスが、ルータ６のＩＰアドレスであり、上位層プロトコルがＲＴＰであるＳＡを抽出する。ルータ２は、抽出されたＳＡの終点アドレスを、復号された構築情報パケットに含まれるルータ３のＩＰアドレスに書き換え、上位層プロトコルがＲＴＰに設定されたＳＡを新たに作成する。次に、ルータ２は、抽出されたＳＡに切替済みフラグを付与する。ルータ３は、終点アドレスが、ルータ６のＩＰアドレスであり、上位層プロトコルがＲＴＰであるＳＡを抽出する。ルータ３は、抽出されたＳＡの終点アドレスを、復号された構築情報パケットに含まれるルータ２のＩＰアドレスに書き換え、上位層プロトコルがＲＴＰに設定されたＳＡを新たに作成する。次に、ルータ３は、抽出されたＳＡに切替済みフラグを付与する。新たなＳＡの作成、および切替済みフラグの付与が終了すると、ルータ２は、構築情報パケットに含まれるＰＳＫを使用して、ルータ２とルータ３との間でＶＰＮを構築する。ＰＳＫは構築情報パケットに含まれ、ルータ２、およびルータ３のＩＰアドレスと対応付けてフラッシュメモリ２２に記憶される。このＶＰＮ構築処理は、Ｓ１の処理と同様である。ＶＰＮの構築が終了すると、Ｓ１８に処理を移行する。Ｓ１７において、ルータ３とＶＰＮを構築するルータ２のＣＰＵ２１が本発明の第２構築手段の一例である。Ｓ１７において、ルータ３とＶＰＮを構築するルータ２の処理が本発明の第２構築ステップの一例である。
【００７４】
Ｓ１８において、ルータ２は、ルータ３との間のＶＰＮの構築過程において作成された暗号鍵、暗号化アルゴリズム、およびＳＰＩを、Ｓ１７において新たに作成されたＳＡに付与し、ＳＡＤを更新する。暗号鍵、暗号化アルゴリズム、およびＳＰＩの付与が終了すると、Ｓ１９に処理を移行する。以降の記載において、Ｓ１８においてＳＡに付与された暗号鍵、および暗号化アルゴリズムを第３暗号鍵、および第３暗号化アルゴリズムとする。
【００７５】
Ｓ１９において、ルータ２は、ＩＰ網を介してルータ６に切替完了通知を送信する。この切替完了通知は、ルータ２とルータ３との間でＶＰＮが構築されたことを示す通知である。切替完了通知を送信するとＳ２０に処理を移行する。
【００７６】
Ｓ２０において、ルータ６は、切替対象をフラッシュメモリ２２に記憶する。すなわち、構築情報パケットを送信したルータを示す情報がフラッシュメモリ２２に記憶される。具体的には、ルータ６は、始点アドレス、または終点アドレスにルータ２、およびルータ３のＩＰアドレスが付与されているＳＡに切替済みフラグを付与する。切替済みフラグは、暗号化通信の経路が切り替えられたことを示す。切替済みフラグが付与されると、Ｓ２１に処理を移行する。
【００７７】
Ｓ２１において、ルータ２は、ＰＣ７から暗号化されていないパケットを受信する。このパケットは、図１０（ａ）の表に示すように、ＰＣ８のＩＰアドレスが宛先アドレスに指定されているパケットである。次に、ルータ２は、宛先アドレスに指定されたＩＰアドレス、およびフラッシュメモリ２２に記憶されたＳＰＤを参照することにより、宛先のＰＣ８に暗号化通信でパケットを送信することを判断する。ルータ２は、暗号化通信でパケットを送信することを判断すると、フラッシュメモリ２２に記憶され、切替済みフラグが付与されていないＳＡを参照する。ＳＡは、終点アドレスがルータ３のＩＰアドレスであるので、ルータ２は、第３暗号鍵、および第３暗号化アルゴリズムをＳＡから抽出する。次に、ルータ２は、ＰＣ７から送信されたパケットを、第３暗号鍵、および第３暗号化アルゴリズムにより暗号化する。ルータ２は、暗号化されたパケットのヘッダーに宛先アドレス、始点アドレス、およびＳＰＩを付与する。ルータ３のＩＰアドレスが宛先アドレスに指定され、ルータ２のＩＰアドレスが始点アドレスに指定される。次に、ルータ２は、暗号化パケットをルータ３に送信する。ルータ３は、ルータ２から送信された暗号化パケットを受信する。次に、ルータ３は、暗号化パケットのヘッダーに付与されたＳＰＩから第３暗号鍵、および第３暗号化アルゴリズムを抽出し、暗号化パケットを復号する。ルータ３は、復号されたパケットに指定された宛先ＩＰアドレスに従い、ＰＣ８にパケットを送信する。この結果、ＰＣ７とＰＣ８とのリアルタイムパケットの暗号化通信は、ルータ６を介さず、ルータ２とルータ３とを介して実行される。Ｓ２１におけるルータ２のＣＰＵ２１が本発明の第２暗号化通信手段の一例である。Ｓ２１におけるルータ２処理が本発明の第２暗号化通信ステップの一例である。
【００７８】
ルータ２は、Ｓ１７において、通信終了パケット、および認可パケットを受信してから、上位層プロトコルがＲＴＰのＳＡであるＶＰＮをルータ３との間に構築したが、上位層プロトコルがＲＴＰ以外のＳＡであるＶＰＮは、通信終了パケット、および認可パケットを受信していない状態で、Ｓ８において構築情報パケットを受信してから、構築されれば良い。
【００７９】
［切替期限経過した場合の動作］
通信終了パケット、および認可パケットを受信してから、上位層プロトコルがＲＴＰのＳＡであるＶＰＮがルータ３との間に構築された。ルータ２が、暗号化された構築情報パケットを受信した時点において、ルータ６を介するリアルタイムパケットの暗号化通信が実行されている場合、この暗号化通信の認可パケットをルータ２が受信してから、ルータ３との間でＶＰＮが構築される。これにより、通信終了パケット、および認可パケットを受信する前にＶＰＮがルータ３との間で構築されることによるリアルタイム通信の途切れが低減され、ＰＣ７とＰＣ８との間のリアルタイム通信が行われる。しかし、ルータ２が暗号化された構築情報パケットを受信した時点において、ルータ６を介する暗号化通信の認可パケットをルータ２が長期間受信しない場合が考えられる。これは、ルータ６を介する暗号化通信が終了しない場合である。この場合、ルータ２が暗号化された構築情報パケットを受信しても、ルータ６を介する暗号化通信が実行されるので、ルータ６の処理負荷が低減しない。以下の説明では、図５に示すＳ８において、ルータ２、およびルータ３が暗号化された構築情報パケットを受信した時点から、ルータ２、およびルータ３が切替期限を設定し、この切替期限が経過すると、ルータ２とルータ３との間でＶＰＮが構築される。この切替期限が経過した時の処理を、図６を参照して説明する。この切替期限が経過した時の処理は、ルータ２とルータ３とで同様に実行されるので、ルータ２の処理を以下に説明する。
【００８０】
Ｓ３１において、ルータ２は、暗号化された構築情報パケットを受信してからの経過時間が切替期限を経過したか否かを判断する。以降の説明では、切替期限が経過したと判断されたとして以降の処理を説明する。Ｓ３２において、ルータ２は、保留信号をＰＣ７に送信する。保留信号は、ルータ２のフラッシュメモリ２２に記憶される。保留信号は、通信状態から保留状態に切り替える信号である。保留信号が送信されると、Ｓ３３に処理を移行する。
【００８１】
Ｓ３３において、保留信号を受信したＰＣ７は、保留信号を図示しないスピーカに出力する。これにより、ＰＣ７のユーザは、ＰＣ８とのリアルタイム通信が保留状態になったと想定するので、ＰＣ７のユーザは、図示しないマイクに音声を入力するのをやめると考えられる。これにより、ＰＣ８とのリアルタイム通信において、音声が途切れることが低減される。
【００８２】
Ｓ３４〜Ｓ３７において、ルータ２、およびルータ６は、図５に示すＳ１７〜Ｓ２０の処理と同様の処理を行う。Ｓ３８において、切替完了通知を送信したルータ２は、保留状態の解除信号を、ＰＣ７に送信する。Ｓ３９において、解除信号を受信したＰＣ７は、保留状態を解除し、通話状態に変化する。ＰＣ７のユーザは、ＰＣ８とのリアルタイム通信が通話状態になったと想定するので、ＰＣ７のユーザは、図示しないマイクに音声を入力すると考えられる。Ｓ４０の処理は、図５のＳ２１と同様なので説明を省略する。
【００８３】
保留状態について、説明する。一般にＳＩＰにより実現される通話状態において、一方の周知のＩＰ電話機などの通信機器に備えられる保留ボタンが押下されることにより、保留通知であるＩＮＶＩＴＥ（ｈｏｌｄ）がＳＩＰサーバに送信される。ＩＮＶＩＴＥ（ｈｏｌｄ）を受信したＳＩＰサーバは通話先の通信装置にＩＮＶＩＴＥ（ｈｏｌｄ）を送信し、通話先の通信装置から保留状態の認可を示す２００  ＯＫを受信する。次にＳＩＰサーバは、この２００  ＯＫを保留ボタンが押下された通信機器に送信する。このＩＮＶＩＴＥ（ｈｏｌｄ）と２００  ＯＫとをＳＩＰサーバが仲介することにより、２つの通信機器において、保留状態の同期が図られる。一方、本実施形態において、ルータ２、ルータ３、ＰＣ７、およびＰＣ８が、ルータ６に接続されたＳＩＰサーバにＩＮＶＩＴＥ（ｈｏｌｄ）を送信せずに、ＰＣ７、およびＰＣ８において同期した保留状態が実現される。これは、ルータ６が同じタイミングでルータ２、およびルータ３にＶＰＮ構築通知を送信し、ルータ２、及びルータ３は、構築情報パケットを受信した時にタイマの計時動作を開始するからである。これにより、高負荷状態のルータ６を介してＳＩＰサーバ６１にＩＮＶＩＴＥ（ｈｏｌｄ）を送信せずに、ＰＣ７、およびＰＣ８において同期した保留状態が実現されるので、ＩＮＶＩＴＥ（ｈｏｌｄ）を受信することによるルータ６の処理負荷が低減される。
【００８４】
［ルータ６の処理負荷が小さくなった場合の動作］
図７を参照して、ルータ６の処理負荷が小さくなった場合の動作を説明する。図５のＳ１、およびＳ２において構築されたＶＰＮは、図５のＳ２０、または図６のＳ３７おいてＳＡＤが更新されたので、Ｓ１−２、Ｓ２−２において、ＰＣ７から送信されたパケットはルータ６を介して暗号化通信されない。上述したように、Ｓ４１において、ルータ２とルータ３とは、図５のＳ１７において、ルータ２とルータ３との間に構築されたＶＰＮを介して暗号化通信を実行する。この暗号化通信は、図５のＳ２１と同様である。Ｓ４２において、ルータ６は、処理負荷が閾値よりも大きいか否かを判断する。以降の説明において、ルータ６が、処理負荷が閾値よりも大きくないと判断した場合を説明する。ルータ６が、処理負荷が閾値よりも大きくないと判断すると、Ｓ４３に移行する。
【００８５】
Ｓ４３において、ルータ６は、切替対象を取得する。具体的には、ルータ６は、切替済みフラグが付与されたＳＡを抽出する。この抽出されたＳＡの始点アドレス、および終点アドレスの２つのルータが切替対象である。以降の説明では、ルータ２、およびルータ３が切替対象として説明する。切替対象の取得が終了すると、Ｓ４４に処理を移行する。
【００８６】
Ｓ４４において、ルータ６は、ルータ２とルータ３とに、ＩＰ網を介して切替通知を送信する。切替通知は、ルータ６を介して暗号化通信を実行させる通知である。切替通知の送信が終了すると、Ｓ４５に処理を移行する。切替通知が本発明の第２切替指示の一例である。
【００８７】
Ｓ４５において、切替通知を受信したルータ２、およびルータ３は、パケットの監視を開始する。すなわち、切替通知を受信した直後に、ルータ６との間に構築されたＶＰＮにより暗号化パケットをルータ３に送信しない。これにより、切替通知を受信した時点において、Ｓ２１の処理で暗号化通信を実行しているＰＣ７とＰＣ８との間のリアルタイム通信は、ルータ２、およびルータ３を介して継続して実行される。以降の説明において、ルータ２の処理とルータ３の処理は同様なので、ルータ２の処理を説明する。ルータ２が、通信終了パケットをＰＣ７から受信した場合、Ｓ４６において、この通信終了パケットを、ＩＰ網を介してルータ６に送信する。ルータ２が通信終了パケットをルータ６に送信すると、Ｓ４６に処理を移行する。
【００８８】
Ｓ４６〜Ｓ５２の処理は、Ｓ１０〜Ｓ１６の処理と同様なので、説明を省略する。Ｓ５３において、ルータ２は、始点アドレスまたは終点アドレスが、ルータ３のＩＰアドレスであるＳＡに切替済みフラグを付与する。次に、ルータ２は、切替済みフラグが付与されたＳＡから切替済みフラグを削除する。ルータ２が切替済みフラグを削除し、ＳＡＤの更新が終了すると、Ｓ５４に処理を移行する。
【００８９】
Ｓ５４において、切替完了通知をルータ６に送信する。切替完了通知を受信したルータ６は、始点アドレス、および終点アドレスが、ルータ２、およびルータ３のＩＰアドレスであり、切り替え済みフラグが付与されたＳＡから切替済みフラグを削除する。ルータ６が切替済みフラグを削除し、ＳＡＤの更新が終了すると、Ｓ５６に処理を移行する。Ｓ５６の処理は、Ｓ３と同様なので、説明を省略する。
【００９０】
図１１を参照してルータ２のＣＰＵ２１が実行するＶＰＮ切替処理を説明する。この説明においては、図５〜図７に示すＶＰＮ構築通知、通信終了パケット、２００  ＯＫ、および切替完了通知を受信した場合の処理を説明する。従って、これらのパケット以外のパケットを受信した場合は、フラッシュメモリ２２に記憶されたＳＰ、およびＳＡに従い、送信されるべきルータ、およびＰＣ７にパケットを送信する。ＣＰＵ２１が実行するＶＰＮ切替処理のプログラムは、フラッシュメモリ２２に記憶される。このＶＰＮ切替処理のプログラムは、図示しないサーバに記憶され、ルータ２のダウンロード要求に応じて、ルータ２に送信される。
【００９１】
Ｓ６１において、ＶＰＮ構築通知を受信したか否かを判断する。ＶＰＮ構築通知は、図５のＳ８に示すＶＰＮ構築通知、または図７のＳ４４に示す切替通知である。ＶＰＮ構築通知を受信したと判断すると、Ｓ６２に処理を移行する。ＶＰＮ構築通知を受信していないと判断すると、Ｓ７４に処理を移行する。
【００９２】
Ｓ６２において、有効期間を設定する。この有効期間は、ルータ３との間でＶＰＮを構築してから、暗号化通信を開始するまでの猶予期限である。有効期間は、暗号化通信システム１に含まれるルータにおいて予め定められ、各ルータのフラッシュメモリ２２に記憶される。有効期間の設定が終了すると、Ｓ６３に処理を移行する。Ｓ６２において、有効期間を設定するルータ２のＣＰＵ２１が本発明の設定手段の一例である。
【００９３】
Ｓ６３において、設定された有効期間が経過したか否かを判断する。有効期間が経過していないと判断すると、Ｓ６４に処理を移行する。有効期間が経過したと判断すると、Ｓ６９に処理を移行する。Ｓ６３において、有効期間が経過したか否かを判断するルータ２のＣＰＵ２１が本発明の第２判断手段の一例である。
【００９４】
Ｓ６４において、受信されたパケットが通信終了パケットか否かを判断する。通信終了パケットであると判断すると、Ｓ６５に処理を移行する。通信終了パケットでないと判断すると、受信されたパケットを送信すべきルータ、またはＰＣ７に送信し、Ｓ６３に処理を移行する。Ｓ６４、およびＳ６５において、通信終了パケット、および認可パケットを受信したか否かを判断するルータ２のＣＰＵ２１が本発明の第１判断手段の一例である。Ｓ６４、およびＳ６５において、通信終了パケット、および認可パケットを受信したか否かを判断するルータ２の処理が本発明の第１判断ステップの一例である。
【００９５】
Ｓ６５において、受信されたパケットが、認可パケットである２００  ＯＫか否かを判断する。２００  ＯＫであると判断すると、Ｓ６６に処理を移行する。２００  ＯＫでないと判断すると、受信されたパケットを送信すべきルータ、またはＰＣ７に送信し、Ｓ６５の処理を繰り返す。
【００９６】
Ｓ６６において、ルータ３との間でＶＰＮを構築する。このＶＰＮ構築処理は、図５に示すＳ１７と同様である。ルータ３との間でＶＰＮを構築すると、Ｓ６７に処理を移行する。
【００９７】
Ｓ６７において、ルータ３との間で構築されたＶＰＮに対応するＳＡをＳＡＤに追加する。この処理は、図５に示すＳ１８と同様である。ＳＡを追加し、ＳＡＤの更新が終了すると、Ｓ６８に処理を移行する。
【００９８】
Ｓ６８において、ルータ３との間でＶＰＮが構築されたことを示す切替完了通知をルータ６に送信する。この処理は、図５に示すＳ１９と同様である。切替完了通知の送信が終了すると、Ｓ６１に処理を移行する。
【００９９】
Ｓ６３において、有効期間が切れたと判断された場合、Ｓ６９において、保留信号をＰＣ７に送信する。この処理は、図６に示すＳ３２と同様である。保留信号を送信すると、Ｓ７０に処理を移行する。ＰＣ７が本発明の通信端末の一例である。
【０１００】
Ｓ７０〜Ｓ７２の処理は、Ｓ６６〜Ｓ６８と同様なので説明を省略する。Ｓ７２において、切替完了通知を送信すると、Ｓ７３に処理を移行する。
【０１０１】
Ｓ７３において、解除信号をＰＣ７に送信する。この処理は、図６に示すＳ３８と同様である。解除信号をＰＣ７に送信すると、Ｓ６１に処理を移行する。Ｓ６９、およびＳ７３において、保留信号、および解除信号を送信するルータ２のＣＰＵ２１が本発明の信号送信手段の一例である。
【０１０２】
Ｓ６１において、ＶＰＮ構築通知を受信していないと判断した場合、Ｓ７４において切替通知を受信したか否かを判断する。切替通知は、ルータ３とのリアルタイム通信を、ルータ３との間に構築されたＶＰＮからルータ６との間に構築されたＶＰＮを介する暗号化通信に切り替える通知である。切替通知を受信したと判断すると、Ｓ７５に処理を移行する。切替完了通知を受信していないと判断すると、Ｓ６１に処理を移行する。
【０１０３】
Ｓ７５、およびＳ７６の処理は、Ｓ６４、およびＳ６５と同様なので説明を省略する。２００  ＯＫを受信したと判断すると、Ｓ７７に処理を移行する。
【０１０４】
Ｓ７７において、ＳＡＤを更新する。すなわち、切替フラグが付与されたＳＡの切替フラグを削除する。この削除処理は、図７に示すＳ５３と同様である。ＳＡＤの更新が終了すると、Ｓ７８に処理を移行する。
【０１０５】
Ｓ７８において、切替完了通知をルータ６に送信する。この送信処理は、図７に示すＳ５４と同様である。切替完了通知の送信を終了すると、Ｓ６１に処理を移行する。
【０１０６】
［実施形態の効果］
本実施形態のルータ２によれば、Ｓ６４、およびＳ６５において、ルータ２、ルータ６、およびルータ３を介して暗号化されたリアルタイム通信の通信終了パケット、および認可パケットを受信した後に、ルータ２とルータ３との間でＶＰＮが構築された。すなわち、暗号化されたリアルタイム通信が終了した後に、ルータ６を介さずに、ルータ２とルータ３との間の暗号化されたリアルタイム通信が行われる。これにより、ルータ６の処理負荷が大きくなった場合に、Ｓ１およびＳ２において構築されたＶＰＮから、Ｓ６６において構築されたＶＰＮに切替えられて、暗号化通信が実行される際に、音声などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、ルータ６を介さずに暗号化通信を実行するルータ２、およびルータ３において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【０１０７】
本実施形態のルータ２によれば、Ｓ６３において、前記有効期間が経過していると判断されると、Ｓ７０において、ルータ２とルータ３との間でＶＰＮが構築され、ルータ６を介さないリアルタイムパケットの暗号化通信が行われる。これにより、ルータ６の処理負荷が大きい状況が、継続されない。従って、ルータ６の処理が停止して、ルータ６を中継する暗号化通信が遮断されることが低減される。
【０１０８】
本実施形態のルータ２によれば、ＳＩＰサーバ６１に保留通知を送信せずにＰＣ７に保留信号を送信する。これにより、ＳＩＰサーバ６１に接続されたルータ６に保留信号を送信しないので、ルータ６の処理負荷が低減される。この処理負荷の低減と共に、ＰＣ７において保留状態が維持され、保留状態の間にルータ２とルータ３との間にＶＰＮが構築される。ＰＣ７のユーザは、保留状態において、ルータ３に接続されたＰＣ８のユーザに対して音声などのリアルタイムパケットの暗号化通信を行うことは無いと考えられる。これにより、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、ルータ６を介さずに暗号化通信を実行するルータ２、およびルータ３において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【０１０９】
本実施形態のルータ２によれば、切替通知を受信した場合、Ｓ６６、またはＳ７０において構築されたＶＰＮを介して実行されているリアルタイムパケットの暗号化通信が終了したと判断されてから、Ｓ１において構築されたＶＰＮおよびルータ６を介してルータ３と暗号化通信を実行する。すなわち、切替通知を受信した場合、ルータ６の処理負荷は低負荷状態なので、リアルタイムパケットの暗号化通信が終了したと判断されてから、ルータ６を介して暗号化通信が実行されればよい。この結果、Ｓ６６、またはＳ７０において構築されたＶＰＮからＳ１、およびＳ２において構築されたＶＰＮに切替えられて、暗号化通信が実行される際に、音声などのリアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性が低減される。従って、ルータ６を介さずに暗号化通信を実行するルータ２、およびルータ３において、リアルタイムパケットの暗号化通信が途切れる、または、その暗号化通信が遮断される可能性を低減することが出来る。
【０１１０】
［変形例１］
本実施形態では、ＰＣがルータ２〜４に接続され、パケットを送信したが、ＩＰ電話機スマートフォンなどの端末装置が、ルータ２〜４に接続され、パケットを送信してもよい。また、アナログ電話などの端末装置がルータ２〜４に接続され、ルータ２〜４がアナログ電話機からの信号をデジタルデータに変換してもよい。このデジタルデータがパケットを構成する。
【０１１１】
［変形例２］
本実施形態では、Ｓ６の処理においてＰＳＫが生成されたが、新たにＰＳＫを生成しなくても良い。Ｓ６において、ルータ６は、ルータ２、およびルータ３のＩＰアドレス、およびＳ２の処理において、ルータ３とルータ６との認証に使用されたＰＳＫを含む構築情報パケットを生成しても良い。ルータ６は、Ｓ７において、この構築情報パケットを暗号化し、ルータ２に送信する。ルータ２は、ルータ３のＩＰアドレスに基づいて、ＩＳＡＫＭＰ  ＳＡ生成要求をルータ３に送信し、ルータ３とルータ６との間でＶＰＮが構築された時のＰＳＫに基づき、ルータ２は、ルータ３との間のＶＰＮを構築する。これにより、ルータ６が構築情報パケットをルータ３に送信しなくても、ルータ２とルータ３との間でＶＰＮが構築される。また、Ｓ１において認証に使用されたＰＳＫ、ルータ２のＩＰアドレスを含む構築情報パケットをルータ２にのみ送信してもよい。
【０１１２】
［変形例３］
本実施形態では、ＰＳＫはルータのＩＰアドレスと関連付けられて、各ルータに記憶されたが、ＦＱＤＮ（Ｆｕｌｌｙ  Ｑｕａｌｉｆｉｅｄ  Ｄｏｍａｉｎ  Ｎａｍｅ）など、ルータを特定する情報であればよい。メインモードでフェーズ１の処理が行われる場合は、ＰＳＫから生成されたハッシュ値は暗号化される。従って、ルータを特定する情報は、ＩＰアドレスでしかない。よって、このＩＰアドレスが動的ＩＰアドレスである場合は、認証を行うことが出来ない。すなわち、ルータのＩＰアドレスが動的ＩＰアドレスである場合は、ＩＰアドレス以外のルータを特定する情報が用いられる。ＩＰアドレス以外のルータを特定する情報として、ｆｑｄｎなどの特定情報が用いられれば良い。よって、ｆｑｄｎなどの特定情報が構築情報パケットに含められる。アグレッシブモードで認証が実行される場合は、ＩＰアドレスが動的ＩＰでもよい。アグレッシブモードで認証が実行され、ルータを特定する情報がＩＰアドレスであれば、ｆｑｄｎなどの特定情報は構築情報パケットに含められなくてよい。
【０１１３】
［変形例４］
本実施形態では、Ｓ６３において、有効期間が切れたと判断されると、Ｓ６９において、保留信号がＰＣ７に送信されたが、送信されなくても良い。この場合、有効期間が切れたと判断されると、ルータ６を介してリアルタイムパケットが暗号化通信中の状態であっても、ルータ２とルータ３との間でＶＰＮが構築され、ルータ６を介さない暗号化通信が行われる。
【０１１４】
[変形例５]
本実施形態では、Ｓ１５において、ルータ２は、２００  ＯＫを受信してから、Ｓ１７においてルータ３との間でＶＰＮを構築したが、これに限られない。ルータ２は、Ｓ８において、切替通知を受信してから、ルータ３との間でＶＰＮを構築し、２００  ＯＫを受信してから、構築されたＶＰＮを介してルータ６を介さずに暗号化通信してもよい。
【符号の説明】
【０１１５】
１                暗号化通信システム
２〜６            ルータ
７〜９            ＰＣ
１０              データベースサーバ
２１              ＣＰＵ
２２              フラッシュメモリ
【図１】
2013197907.tif 000003
【図２】
2013197907.tif 000004
【図３】
2013197907.tif 000005
【図４】
2013197907.tif 000006
【図５】
2013197907.tif 000007
【図６】
2013197907.tif 000008
【図７】
2013197907.tif 000009
【図８】
2013197907.tif 000010
【図９】
2013197907.tif 000011
【図１０】
2013197907.tif 000012
【図１１】
2013197907.tif 000013