(57)【要約】【課題】ネットワークを介してセキュリティを保護しながらデータ伝送を実行すること。【解決手段】ネットワークに接続され、外部装置とデータ通信を行う通信装置１２であって、通信装置１２は、セキュア通信で使用するセキュリティ共有情報を、外部装置との間で交換して、記憶手段に保持する交換手段４４と、通信装置１２または外部装置のいずれかが、保持していたセキュリティ共有情報の共有を消失させたことを検知し、セキュリティ共有情報の共有を消失させたことを検知した場合に、交換手段４４に対して、再び、新たなセキュリティ共有情報を交換させる再確立判断手段４８とを含む。【選択図】図２
2008205763.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され、外部装置とデータ通信を行う通信装置であって、前記通信装置は、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持する交換手段と、
前記通信装置または前記外部装置のいずれかが、保持していた前記セキュリティ共有情報の共有を消失させたことを検知し、前記セキュリティ共有情報の共有を消失させたことを検知した場合に、前記交換手段に対して、再び、新たなセキュリティ共有情報を交換させる再確立判断手段と
を含む通信装置。
【請求項２】
前記通信装置は、前記セキュリティ共有情報の交換を完了させた前記外部装置の識別値を格納する不揮発性記憶手段をさらに含み、前記再確立判断手段は、前記不揮発性記憶手段から前記識別値を取得して、前記セキュリティ共有情報を前記記憶手段が保持しているか否かを判定して、前記通信装置が前記セキュリティ共有情報の共有を消失させたことを検知する、請求項１に記載の通信装置。
【請求項３】
前記再確立判断手段は、前記セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があるか否かを判定することによって、前記外部装置が前記セキュリティ共有情報の共有を消失させたことを検知し、応答がないと判定された場合に、前記記憶手段が保持していた前記セキュリティ共有情報を消去し、さらに、非セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があると判定された場合に、前記交換手段に対して、前記新たなセキュリティ共有情報を交換させる、
請求項１または２に記載の通信装置。
【請求項４】
前記再確立判断手段は、再起動するごと、前記外部装置からのアドレス重複検知パケットの受信するごと、所定の通信量超過ごと、所定のセッション数超過ごと、または所定の時間経過ごとに、前記セキュリティ共有情報の共有を消失させたことの検知を試みる、請求項１〜３のいずれか１項に記載の通信装置。
【請求項５】
前記通信装置は、送信データを蓄積する送信バッファを備え、前記再確立判断手段は、前記新たなセキュリティ共有情報を交換させた後、前記送信バッファに蓄積された送信データを、前記新たなセキュリティ共有情報を使用して前記外部装置に送信する、請求項１〜４のいずれか１項に記載の通信装置。
【請求項６】
ネットワークに接続され、外部装置とデータ通信を行う通信装置が実行する装置実行可能な通信方法であって、前記通信方法は、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持するステップと、
前記セキュア通信による到達確認メッセージを前記外部装置に送信して、セキュア通信に対する応答があるか否かを判定するステップと、
前記セキュア通信に対する判定するステップで、応答がないと判定された場合に、前記記憶手段が保持していた前記セキュリティ共有情報を消去するステップと、
非セキュア通信による到達確認メッセージを前記外部装置に送信して、非セキュア通信に対する応答があるか否かを判定するステップと、
前記非セキュア通信に対する応答があると判定された場合に、前記外部装置と、新たなセキュリティ共有情報を交換させるステップと
を含む通信方法。
【請求項７】
ネットワークに接続され、外部装置とデータ通信を行う通信装置が実行する装置実行可能な通信方法であって、前記通信方法は、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持するステップと、
前記セキュリティ共有情報の交換を完了させた前記外部装置の識別値を、不揮発性記憶手段に格納するステップと、
前記不揮発性記憶手段から前記識別値を取得して、前記セキュリティ共有情報を前記記憶手段が保持しているか否かを判定するステップと、
前記判定するステップで、前記セキュリティ共有情報を前記記憶手段が保持していないと判定された場合に、前記外部装置と、新たなセキュリティ共有情報を交換させるステップと
を含む通信方法。
【請求項８】
ネットワークに接続され、外部装置とデータ通信を行う通信装置が実行可能なプログラムであって、前記プログラムは、前記通信装置に対し、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持する交換手段と、
前記通信装置または前記外部装置のいずれかが、保持していた前記セキュリティ共有情報の共有を消失させたことを検知し、前記セキュリティ共有情報の共有を消失させたことを検知した場合に、前記交換手段に対して、再び、新たなセキュリティ共有情報を交換させる再確立判断手段と
を実現するプログラム。
【請求項９】
前記プログラムは、前記通信装置に対し、前記セキュリティ共有情報の交換を完了させた前記外部装置の識別値を格納する不揮発性記憶手段をさら実現し、前記再確立判断手段は、前記不揮発性記憶手段から前記識別値を取得して、前記セキュリティ共有情報を前記記憶手段が保持しているか否かを判定して、前記通信装置が前記セキュリティ共有情報の共有を消失させたことを検知する、請求項８に記載のプログラム。
【請求項１０】
前記再確立判断手段は、前記セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があるか否かを判定することによって、前記外部装置が前記セキュリティ共有情報の共有を消失させたことを検知し、応答がないと判定された場合に、前記記憶手段が保持していた前記セキュリティ共有情報を消去し、さらに、非セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があると判定された場合に、前記交換手段に対して、前記新たなセキュリティ共有情報を交換させる、
請求項８または９に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティ技術に関し、より詳細には、ネットワークを介してセキュリティを保護しながらデータ通信を実行する通信装置、通信方法およびプログラムに関する。
【背景技術】
【０００２】
ＶＰＮ（Virtual Private Network）やＩＰｖ６（Internet Protocol Version 6）で使用されるセキュア通信規格であるＩＰｓｅｃ(Security
Architecture for Internet Protocol)通信は、アクセス制御、通信データの完全性および機密性の確保やデータ送信元の認証などの機能をＩＰ層レベルで提供し、伝送経路におけるデータの改竄や盗聴やなりすましなどを好適に防止することを可能とするセキュリティ通信基盤技術である。
【０００３】
ＩＰｓｅｃ通信においては、セキュア通信に先立ち、通信を開始しようとする通信装置（ノード）間で、通信データの完全性や機密性を確保するための情報（暗号化や認証のプロトコルや秘密鍵）を含むセキュリティ・アソシエーション情報（以降、ＳＡ情報として参照する。）が交換される。その後、両方の通信装置は、共有したＳＡ情報を使用してセキュア通信を実行する。このＳＡ情報を安全に交換するための手続として、ＲＦＣ２４０９にはＩＫＥｖ１（Internet
Key Exchange Version 1）が規定されている。
【０００４】
しかしＩＰｓｅｃ通信では、共有したＳＡ情報を使用して通信を行うため、万が一、一方の通信装置において共有されたＳＡ情報が失われた場合には、通信装置間でのセキュア通信を継続することができなくなってしまうという問題点があった。
【０００５】
例えば、ＩＫＥｖ１によるＳＡ情報交換の後、通信装置の不慮の電源断などで、ＳＡ情報消去メッセージの通知なしに一方の通信装置が、共有していたＳＡ情報を消失させてしまった場合、その通信相手である他方の通信装置は、相手側でＳＡ情報が消失してしまっていることを検知することができない。そのため、ＳＡ情報を消失させた通信装置が復旧した後も、他方の通信装置は、既に共有されていないＳＡ情報を使用して、ＩＰｓｅｃパケットを送信してしまい、セキュア通信を継続することできなくなってしまうという問題点があった。
【０００６】
特開２００６−１３６２８号公報（特許文献１）は、通信装置が記憶している情報の不一致から生じる通信断絶などの不都合を解消することができる通信システムを提供することを目的で、所定間隔ごとに鍵情報データベース部に記憶されている鍵情報を基にしてキープアライブメッセージを生成し、他の通信装置に対して送信する通信装置と、キープアライブメッセージを受信して、キープアライブメッセージを基にして鍵情報更新部が鍵情報データベース部に記憶されているデータの更新（補正など）を行う通信装置を具備することを特徴とする、通信システムを開示している。
【０００７】
しかしながら、上述した従来技術は、通信装置が記憶している情報（ＳＡ情報の有効期限など）の不一致から生じる通信断絶などの不都合を解消することを目的としており、鍵の有効期限などの情報をキープアライブメッセージに基づいて更新するというものであり、データ通信装置の不慮の電源断などで、一方の通信装置が共有されたＳＡ情報を消失してしまった場合に対応するものではなかった。
【０００８】
特開２００３−３２２８６号公報（特許文献２）は、インターネット上の無駄なトラフィックをなくし、ＶＰＮ装置の無駄な処理負荷の発生を防ぐ目的で、ＶＰＮ装置内で管理されるＳＡＤ上に存在するＳＡが削除されたときに、削除された当該ＳＡを用いたＩＰｓｅｃ通信の相手となるＶＰＮ装置に対し、当該ＳＡが削除されたことを通知する手段を備えたことＶＰＮ装置を開示しております。
【０００９】
しかしながら、上述した従来技術は、ＳＡが削除されたときに、その旨を通信相手となる装置へ通知するものであり、装置の不慮の電源断などで、ＳＡ情報消去メッセージの通知なしに一方の装置が共有していたＳＡ情報を消失してしまった場合に、充分に対応できるものではないという問題があった。
【００１０】
特開２００３−２０４３４９号公報（特許文献３）は、通信に先だって、セキュリティ・アソシエーション情報を交換するための交換手続きを行う交換手続き処理手段と、交換手続きにより交換されたセキュリティ・アソシエーション情報を記憶する記憶手段と、記憶手段に記憶された各々のセキュリティ・アソシエーション情報について、宛先アドレス及び識別情報並びに当該セキュリティ・アソシエーション情報の有効期限に関する情報を含む管理情報を、所定の不揮発性のメディアに記憶して管理する管理手段と、所定のセキュリティ・プロトコルに従う自ノード宛の受信パケットのヘッダに含まれる識別情報及び自ノードを示す宛先アドレスにより特定されるセキュリティ・アソシエーション情報が前記記憶手段に有効に存在せず、かつ、当該セキュリティ・アソシエーション情報に対応する管理情報が所定の不揮発性のメディアに有効に存在する場合に、その旨を前記通信相手となるノードへ通知するために、該宛先アドレス及び該識別情報を含む通知メッセージを前記通信相手となるノードへ送信するパケット処理手段とを備えたことを特徴とするノード装置を開示している。
【００１１】
しかしながら、上述した従来技術では、セキュリティ・アソシエーション情報が通信相手のノード装置において、削除されてしまったことを検知できるものではなかった。
【特許文献１】特開２００６−１３６２８号公報
【特許文献２】特開２００３−３２２８６号公報
【特許文献３】特開２００３−２０４３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は上記従来技術に鑑みてなされたものであり、セキュア通信の際に、通信装置と外部装置との間で共有され通信データの完全性や機密性を確保するためのセキュリティ共有情報（ＳＡ情報）が、どちらか一方の装置において消失してしまった場合に、その共有の消失を検知して、セキュア通信を効率良く迅速に再確立させることを可能とする通信装置、通信方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明では、通信装置が、保持していたセキュリティ共有情報を消失させてしまったことを、通信装置が備える不揮発性記憶手段から、通信相手となる外部装置の識別値を取得し、そのセキュリティ共有情報を保持しているか否かを判定することによって検知する。つまり、不揮発性記憶手段に通信相手として外部装置が登録されているにもかかわらず、セキュリティ共有情報が記憶手段に保持されていなかった場合は、通信装置自体に、電源断などの不慮の障害が発生して復旧し、記憶手段に保持されたセキュリティ共有情報が消失してしまったものと判断する。
【００１４】
あるいは、該通信装置の通信相手となる外部装置が、セキュリティ共有情報を消失させてしまったことを、セキュア通信による到達確認メッセージを外部装置に対し送信し、応答があるか否かを判定することによって検知する。つまり、セキュア通信による到達確認メッセージへの応答がない場合は、通信装置が保持するセキュリティ共有情報が消失してしまったものと判断する。
【００１５】
そして、一方の装置におけるセキュリティ共有情報の消失を検知した場合に、再び、新たなセキュリティ共有情報の交換を実行することにより、一方の装置が電源断などでセキュリティ共有情報を消失させてしまい、セキュリティ共有情報の共有が失われてしまった場合であっても、セキュア通信を効率良く迅速に再確立させる。
【００１６】
すなわち本発明によれば、ネットワークに接続され、外部装置とデータ通信を行う通信装置であって、前記通信装置は、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持する交換手段と、
前記通信装置または前記外部装置のいずれかが、保持していた前記セキュリティ共有情報の共有を消失させたことを検知し、前記セキュリティ共有情報の共有を消失させたことを検知した場合に、前記交換手段に対して、再び、新たなセキュリティ共有情報を交換させる再確立判断手段と
を含む通信装置が提供される。
【００１７】
前記通信装置は、前記セキュリティ共有情報の交換を完了させた前記外部装置の識別値を格納する不揮発性記憶手段をさらに含み、前記再確立判断手段は、前記不揮発性記憶手段から前記識別値を取得して、前記セキュリティ共有情報を前記記憶手段が保持しているか否かを判定して、前記通信装置が前記セキュリティ共有情報の共有を消失させたことを検知することができる。
【００１８】
また、前記再確立判断手段は、前記セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があるか否かを判定することによって、前記外部装置が前記セキュリティ共有情報の共有を消失させたことを検知し、応答がないと判定された場合に、前記記憶手段が保持していた前記セキュリティ共有情報を消去し、さらに、非セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があると判定された場合に、前記交換手段に対して、前記新たなセキュリティ共有情報を交換させることができる。
【００１９】
さらに、前記再確立判断手段は、再起動するごと、前記外部装置からのアドレス重複検知パケットの受信するごと、所定の通信量超過ごと、所定のセッション数超過ごと、または所定の時間経過ごとに、前記セキュリティ共有情報の共有を消失させたことの検知を試みることができる。前記通信装置は、送信データを蓄積する送信バッファを備え、前記再確立判断手段は、前記新たなセキュリティ共有情報を交換させた後、前記送信バッファに蓄積された送信データを、前記新たなセキュリティ共有情報を使用して前記外部装置に送信することができる。
【００２０】
さらに本発明によれば、ネットワークに接続され、外部装置とデータ通信を行う通信装置が実行する装置実行可能な通信方法であって、前記通信方法は、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持するステップと、
前記セキュア通信による到達確認メッセージを前記外部装置に送信して、セキュア通信に対する応答があるか否かを判定するステップと、
前記セキュア通信に対する判定するステップで、応答がないと判定された場合に、前記記憶手段が保持していた前記セキュリティ共有情報を消去するステップと、
非セキュア通信による到達確認メッセージを前記外部装置に送信して、非セキュア通信に対する応答があるか否かを判定するステップと、
前記非セキュア通信に対する応答があると判定された場合に、前記外部装置と、新たなセキュリティ共有情報を交換させるステップと
を含む通信方法が提供される。
【００２１】
さらにまた本発明によれば、ネットワークに接続され、外部装置とデータ通信を行う通信装置が実行する装置実行可能な通信方法であって、前記通信方法は、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持するステップと、
前記セキュリティ共有情報の交換を完了させた前記外部装置の識別値を、不揮発性記憶手段に格納するステップと、
前記不揮発性記憶手段から前記識別値を取得して、前記セキュリティ共有情報を前記記憶手段が保持しているか否かを判定するステップと、
前記判定するステップで、前記セキュリティ共有情報を前記記憶手段が保持していないと判定された場合に、前記外部装置と、新たなセキュリティ共有情報を交換させるステップと
を含む通信方法が提供される。
【００２２】
さらに本発明によれば、ネットワークに接続され、外部装置とデータ通信を行う通信装置が実行可能なプログラムであって、前記プログラムは、前記通信装置に対し、
セキュア通信で使用するセキュリティ共有情報を、前記外部装置との間で交換して、記憶手段に保持する交換手段と、
前記通信装置または前記外部装置のいずれかが、保持していた前記セキュリティ共有情報の共有を消失させたことを検知し、前記セキュリティ共有情報の共有を消失させたことを検知した場合に、前記交換手段に対して、再び、新たなセキュリティ共有情報を交換させる再確立判断手段と
を実現するプログラムが提供される。
【００２３】
前記プログラムは、前記通信装置に対し、前記セキュリティ共有情報の交換を完了させた前記外部装置の識別値を格納する不揮発性記憶手段をさら実現し、前記再確立判断手段は、前記不揮発性記憶手段から前記識別値を取得して、前記セキュリティ共有情報を前記記憶手段が保持しているか否かを判定して、前記通信装置が前記セキュリティ共有情報の共有を消失させたことを検知することができる。
【００２４】
前記再確立判断手段は、前記セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があるか否かを判定することによって、前記外部装置が前記セキュリティ共有情報の共有を消失させたことを検知し、応答がないと判定された場合に、前記記憶手段が保持していた前記セキュリティ共有情報を消去し、さらに、非セキュア通信による到達確認メッセージを前記外部装置に送信して、応答があると判定された場合に、前記交換手段に対して、前記新たなセキュリティ共有情報を交換させることができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明を図面に示した実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。
【００２６】
図１は、通信装置１２が接続されるネットワーク１０の実施形態を示した概略図である。本実施形態において、通信装置１２は、図示しないスイッチを介してルータ１４と接続され、ネットワーク１０を構成する。データリンク層のプロトコルを通じてアクセスリンクを形成することができる通信装置１２（近隣ノード）同士は、それぞれリンク１６とリンク１８とを構成し、ルータ１４は、ＯＳＩ参照モデルなどにおいて参照されるネットワーク層／トランスポート層レベルでのネットワーク制御を行っており、ＴＣＰ（Transmission Control Protocol）／ＩＰまたはＵＤＰ(User Datagram Protocol)／ＩＰなどの適切なネットワーク層／トランスポート層のプロトコルを使用して、リンク１６とリンク１８とを接続させている。
【００２７】
なお、リンク１６、１８は、ＩＰｖ６では、リンクローカル全ノードマルチキャスト・アドレスに参加し、近隣検索の対象となる近隣ノードから構成されるドメインとすることができ、ＩＰｖ４では、リンク層レベルでのブロードキャストによりアクセスできるドメインとすることができる。
【００２８】
例えば図１に示した実施形態では、通信装置１２ａと通信装置１２ｂとには、それぞれ「2001::2:2:2:2:a」と「2001::2:2:2:2:b」とのＩＰアドレスが割当てられ、第１リンク１６を構成し、一方、通信装置１２ｃと通信装置１２ｄとには、それぞれ「2001::1:1:1:1:a」と「2001::1:1:1:1:b」とのＩＰアドレスが割当てられて、第２リンク１８を構成している。ルータ１４には、「2001::2:3:3:3:3/64」と「2001::1:3:3:3:3/64」とのＩＰアドレスおよびプレフィックス長が設定され、第１リンク１６と第２リンク１８とを接続させ、ＩＰパケットをルーティングしている。
【００２９】
なお図１では、ＩＰｖ６に対応した実施形態をもって示しているが、ＩＰｖ４によるネットワークとして構成することもできる。また、割当てられるＩＰアドレスは、ＩＰｖ６の場合には、ＤＨＣＰｖ６プロトコルによるステートフル・アドレスとしても、ＩＰｖ６のプラグ・アンド・プレイ機能によるステートレス・アドレスとしても、管理ユーザによって設定された固定アドレスとしてもよく、特に限定されるものではない。
【００３０】
本実施形態の通信装置１２は、ＩＰｓｅｃプロトコルに対応し、他の通信装置１２と、ＩＰ層レベルでのセキュア通信を行っている。ＩＰｓｅｃ通信で使用されるセキュリティ・アソシエーション情報（セキュリティ共有情報：以下、ＳＡ情報として参照する。）は、例えば、ＩＫＥｖ１（インターネット鍵交換）プロトコルにより交換され、装置間のＩＰｓｅｃ通信は、交換され共有されたＳＡ情報を使用して実行される。さらに本実施形態の通信装置１２は、あらかじめ交換手続によりＳＡ情報を共有し、ＩＰｓｅｃ通信を実行していたにもかかわらず、通信装置１２または通信相手となる他の通信装置１２において、共有されていたＳＡ情報が消失した場合には、その消失を検知して、再交換する手続を開始させ、セキュア通信を再確立させ、通信を継続させる。
【００３１】
なおＳＡ情報は、ＩＰｓｅｃバージョン２では、宛先ＩＰアドレスと、ＩＰｓｅｃ通信のセキュリティ・プロトコルであるＡＨ（認証ヘッダ）でメッセージの完全性を保証するため使用される共有鍵および認証プロトコルや、ＥＳＰ（カプセル化セキュリティ・ペイロード）で暗号化通信を行うために使用される暗号化プロトコルおよび共有鍵などとを対応付け、それぞれのＳＡ情報には、ＳＰＩ（セキュリティ・パラメータ・インデックス）といった識別番号が割当てられる。そして、宛先ＩＰアドレスと、セキュリティ・プロトコルの種類と、ＳＰＩから、ＳＡ情報を識別することが可能である。
【００３２】
また、通信装置１２は、パーソナル・コンピュータ（ＰＣ）、サーバ、プリンタ、デジタル複合機などの通信機能を有する装置として構成することができ、他の実施形態ではセキュリティゲートウェイなどのネットワーク機器として使用することもできる。また図１に示した実施形態では、ネットワーク１０は、有線ネットワークであっても、無線ＬＡＮ技術によるワイヤレス・ネットワークであってもよい。また、インターネットなどの公衆ネットワークと接続することもできる。
【００３３】
図２は、本実施形態の通信装置１２のソフトウェア構成を示したブロック図である。通信装置１２は、ＯＳ３０と、ネットワーク制御部４０と、アプリケーション６０とを含み構成される。図に示した実施形態では、ＯＳ３０は、ネットワーク通信ドライバ３２と、ネットワーク・プロトコル３４とを含み構成される。ネットワーク通信ドライバ３２は、通信装置１２が備える図示しないネットワーク・インタフェース・カード（ＮＩＣ）などのネットワーク・インタフェース（Ｉ／Ｆ）を制御し、ネットワーク・プロトコル３４は、データリンク層および物理層の通信プロトコルによる通信制御を行う。
【００３４】
ネットワーク制御部４０は、ＩＰｓｅｃ通信部４２と、ＳＡ交換処理部４４と、パケットバッファ４６と、ＩＰｓｅｃ通信判定部４８と、ＩＰｓｅｃセッション情報管理部５０と、ＩＰｓｅｃ設定保存部５２とを含み構成される。ＩＰｓｅｃ通信部４２は、ＩＰｓｅｃ通信のパケット処理などの基本処理を実行し、ＳＡ交換処理部４４は、ＩＫＥｖ１プロトコルに従って、ＳＡ情報の交換手続を行い、ＩＰｓｅｃ通信を確立する。ＩＰｓｅｃセッション情報管理部５０は、パケットの処理方法を記述するＳＰＤ（セキュリティ・ポリシー・データベース）と、ＳＡ情報のデータベースであるＳＡＤ（セキュリティ・アソシエーション・データベース）とを含み、セキュリティ・ポリシーおよび交換されたＳＡ情報を管理している。
【００３５】
また、ＩＰｓｅｃセッション情報管理部５０には、ＳＡ交換処理部４４によってＳＡ情報を交換した際に、通信相手の装置識別値が格納され、通信装置１２の通信相手についても管理されている。なお、図に示した実施形態では、セキュア通信に使用されるＳＡ情報は、セキュリティ上の観点からＲＡＭなどの内部記憶装置５４に保持され、一方、通信相手の装置識別値は、ＨＤＤやＮＶＲＡＭなどの不揮発性記憶装置５６に格納され、通信装置における不慮の電源断やハングアップなどの障害が発生し復旧した場合にも対応可能に管理される。なお、装置識別値を格納する記憶手段は、ＳＤカードなどの不揮発性の記憶媒体とすることもできる。
【００３６】
ＩＰｓｅｃ通信判定部４８は、再確立判定を行い、通信装置１２と、通信相手の通信装置１２との間で、共有されているべきＳＡ情報が共有されているか否かの判定し、共有されていないと判定された場合（つまり、一方の装置でＳＡ情報が消失していた場合）には、ＩＰｓｅｃ通信を再確立する必要があると判断し、ＳＡ交換処理部４４に対して、新たなＳＡ情報の交換手続を開始させる。また、ＩＰｓｅｃ通信判定部４８は、共有されているべきＳＡ情報が共有されているか否かを判定する処理を、所定のタイミングで開始させる。
【００３７】
ＩＰｓｅｃ設定保存部５２は、共有されているべきＳＡ情報が共有されているか否かを判定する処理を行うタイミングを規定する情報などを格納し、例えば、所定の時間間隔で処理を発生させる場合にはその時間間隔を、所定の通信量超過ごとに処理を発生させる場合にはその通信量を、所定のセッション数超過ごとに処理を発生させる場合にはそのセッション数を設定情報として格納する。その他、ＩＰｓｅｃ通信における他の設定情報もＩＰｓｅｃ設定保存部５２に格納することができる。パケットバッファ４６は、アプリケーション６０から送信されたパケットを一時的に保持し、後述の送信パケットの再送する場合に使用される。
【００３８】
アプリケーション６０は、ネットワーク制御部４０を介して、パケットの送受信を行うソフトウェア手段であり、ネットワーク上の他の通信装置１２と通信して、所定のアプリケーション処理を実行する。
【００３９】
通信装置１２は、各種演算を行う図示しないＣＰＵと、各種制御プログラムを記憶する図示しないＲＯＭと、ＣＰＵの作業メモリ領域を提供する図示しないＲＡＭとを含み構成され、上記の各機能手段は、ＲＯＭやＨＤＤや外部デバイス（ＳＤメモリカード）などの外部記憶装置に格納されたプログラム（図示せず）をＲＡＭのメモリ領域にロードすることにより実現される。
【００４０】
以下、通信装置１２が保持していたＳＡ情報の消失を検知し、ＩＰｓｅｃ通信を再確立する場合の処理について、詳細を説明する。以降、検知する処理を実行する側を通信装置１２として参照し、通信装置１２の通信相手となる他の装置側を外部装置７０として参照して、説明する。
【００４１】
図３は、本実施形態の通信装置１２が実行する、通信装置１２におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のシーケンス図を示す。図３の制御は、ステップＳ１００から開始され、まず、通信装置１２と外部装置７０との間で、ＩＫＥｖ１プロトコルによるＳＡ情報の交換手続が実行される。ステップＳ１００で、ＳＡ情報交換が完了すると、通信装置１２および外部装置７０それぞれの内部記憶装置５４に、交換されたＳＡ情報が格納される。ＳＡ情報の共有と同時に通信装置１２は、外部装置７０の装置識別値と、対応するＳＡ情報の識別情報とを不揮発性記憶装置５６に格納し、通信相手を管理する。そしてステップＳ１０１で、両装置間でＩＰｓｅｃ通信が行われる。なお図３には、通信装置１２と外部装置７０との間で、「ＳＡ情報（１）」が共有されていることが例示されている。
【００４２】
しかし、ＩＰｓｅｃ通信が確立されている間に、通信装置１２において何らかの障害の発生し、再起動した場合、共有されているべき「ＳＡ情報（１）」は、内部記憶装置５４から消失することとなる。そして、図３に示した制御では、通信装置１２は、ステップＳ１０２で、内部記憶装置５４における「ＳＡ情報（１）」の消失を検知して、ステップＳ１０３で、新たな「ＳＡ情報(２)を交換して、ステップＳ１０４で、新たに交換した「ＳＡ情報(２)を使用して、ＩＰｓｅｃ通信を継続させる。ＳＡ情報の再交換が行われると、外部装置７０は、古いＳＡ情報（１）を破棄して、新しく交換された「ＳＡ情報(２)で更新し、新しく交換されたＳＡ情報を使用して、通信を継続させることが可能となる。
【００４３】
また、通信装置１２は、外部装置７０とのＩＰｓｅｃ通信の接続を終了させた場合には、外部装置７０の装置識別値と、対応するＳＡ情報の識別情報とを不揮発性記憶装置５６から消去し、また、対応するＳＡ情報についても内部記憶装置５４から消去する。なお、本実施形態では、装置識別値とＳＡ情報の識別情報とは、対応付けられて、テーブルとして不揮発性記憶装置５６に格納され、ＩＰｓｅｃセッション情報管理部５０により管理されている。上記テーブルについては後述する。
【００４４】
図４は、本実施形態の通信装置１２が実行する、通信装置１２が保持していたＳＡ情報の消失を検知する処理を示すフローチャート図である。図４に示した制御は、ステップＳ２００から、例えば通信装置１２の再起動を契機として処理が開始され、ＩＰｓｅｃ通信判定部４８は、ステップＳ２０１で、不揮発性記憶装置５６に格納された、装置識別値とＳＡ情報の識別情報とを対応づけるテーブルをルックアップし、不揮発性記憶装置５６に装置識別値が存在するか否かを判定する。
【００４５】
ステップＳ２０１の判定で、存在しないと判定された場合（ｎｏ）には、処理をステップＳ２０５へ分岐させ、処理を終了させる。この場合は、再起動した前後で、ＩＰｓｅｃ通信が実行されていなかったこと意味し、セキュア通信を再確立させる必要が無いためである。
【００４６】
一方、ステップＳ２０１で、装置識別値が存在した場合（ｙｅｓ）には、ステップＳ２０２で、上記テーブルをルックアップし、装置識別値に対応するＳＡ情報の識別情報を取得して、内部記憶装置５４のＳＡＤを検索し、対応するＳＡ情報が、内部記憶装置５４において保持されているか否かを判定する。ステップＳ２０２の判定で、ＳＡ情報が保持されている判定された場合（ｙｅｓ）には、通信装置１２と外部装置７０との間でＳＡ情報が共有されているため、処理をステップＳ２０４へ分岐させ、ＩＰｓｅｃ通信を継続させて、ステップＳ２０５で処理を終了させる。
【００４７】
一方ステップＳ２０２の判定で、対応するＳＡ情報が存在しなかった場合（ｎｏ）、つまり、不揮発性記憶装置５６には装置識別値が登録されているにもかかわらず、対応するＳＡ情報が内部記憶装置５４に保持されていない場合には、ステップＳ２０３へ分岐させ、再びＩＫＥｖプロトコルによるＳＡ情報の再交換を行い、セキュア通信を再確立させ、ステップＳ２０４で、ＩＰｓｅｃ通信を継続させて、ステップＳ２０５で処理を終了させる。
【００４８】
図４に示した処理で、不揮発性記憶装置５６には装置識別値が格納されているにもかかわらず、対応するＳＡ情報が内部記憶装置５４に保持されていないことを確認することにより、通信装置１２が、保持していたＳＡ情報を消失させてしまったことを、通信装置１２自体が検知することが可能となる。なお、本処理を開始するタイミングは、再起動時以外にも、他の実施形態では、所定の時間間隔ごと、所定の通信量超過ごと、所定のセッション数超過ごとに開始させることができ、さらに他の実施形態では、外部から重複検知パケットなどのパケットを受信したことを契機として開始させる制御とすることもできる。
【００４９】
図５は、本実施形態の通信装置１２が、図４のステップＳ２０１およびＳ２０２の判定処理の際にルックアップする、通信相手の装置識別値とＳＡ情報とを対応付ける通信相手管理テーブルのデータ構造を示す。通信相手管理テーブル８０は、フィールド８０ａとフィールド８０ｂとを含み構成される。フィールド８０ａには、通信相手となる外部装置７０の装置識別値がエントリされ、フィールド８０ｂには、ＳＡ情報に割当てられたＳＰＩ、および該ＳＰＩに対応したＳＡ情報のセキュリティ・プロトコルの種類（ＳＡ識別情報）がエントリされる。
【００５０】
図５に示した通信相手管理テーブル８０へのエントリは、通信装置１２が外部装置７０とＩＫＥｖ１プロトコルによりＳＡ情報の交換を完了させた後に実行され、装置識別値および対応するＳＰＩとそのプロトコルが、通信相手管理テーブル８０にエントリされる。なお、装置識別値としては、図５に示した実施形態では、ＩＰｖ６アドレスとしたが、特に限定されるものではなく、通信相手を特定することができる情報であれば、いかなるものを採用することができる。例えば、他の実施形態では、図示しないＮＩＣ（ネットワーク・インタフェース・カード）のＭＡＣ（媒体アクセス制御）アドレスなどのリンク層アドレスや、その他、装置に割当てた識別値を装置識別値として採用することができる。その際は、該装置識別値と、ＩＰアドレスとを対応付けるテーブルを不揮発性記憶装置５６に備えていてもよい。
【００５１】
また電源断の場合には、通信装置１２が保持していた全てのＳＡ情報が消失することとなるため、電源断に対応させることで充分であれば、不揮発性記憶装置５６には、通信相手の装置識別値のみをエントリする構成とすることもできる。
【００５２】
図４のステップＳ２０１の判定処理では、ＩＰｓｅｃ通信判定部４８は、通信相手管理テーブル８０をルックアップして、装置識別値がエントリされているか否かを判定する。また、図４のステップＳ２０２の判定処理では、ＩＰｓｅｃ通信判定部４８は、通信相手管理テーブル８０をルックアップして、該装置識別値に対応するＳＰＩおよびプロトコルの種類を取得して、ＳＡＤを検索し、該当するＳＡ情報が存在するか否かを判定する。
【００５３】
以下、通信装置１２が、通信相手となる外部装置７０において、保持されていたＳＡ情報を消失させてしまったことを検知し、ＩＰｓｅｃ通信を再確立する場合の処理について説明する。図６は、本実施形態の通信装置１２が実行する、外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のシーケンス図を示す。
【００５４】
図６の制御は、ステップＳ３００から開始され、まず通信装置１２と外部装置７０との間で、ＩＫＥｖ１プロトコルによるＳＡ情報の交換手続が実行される。ステップＳ３００で、ＳＡ情報交換が完了すると、ステップＳ３０１で、両装置間でＩＰｓｅｃ通信が行われる。図６には、通信装置１２と外部装置７０との間で、「ＳＡ情報（１）」が共有されていることが例示されている。
【００５５】
しかし、ＩＰｓｅｃ通信が確立されている間に、外部装置７０において何らかの障害の発生し、外部装置７０が再起動された場合、共有されているべき「ＳＡ情報（１）」は、外部装置７０から消失することとなる。そして、図６に示した制御では、通信装置１２は、ステップＳ３０２で、例えば、タイマイベントなど、外部装置７０におけるＳＡ情報の消失を検知する処理をトリガするイベントの発生を検出して、ステップＳ３０３で、パケットの到達確認を要求するメッセージ（図に示した例ではｐｉｎｇコマンド）を、ＩＰｓｅｃ通信により外部装置７０へ送信する。
【００５６】
そして、外部装置７０からの応答がなかった場合には、通信装置１２と外部装置７０との間で共有されるべきＳＡ情報が共有されていないとし、内部記憶装置５４に格納されたＳＡ情報を削除する。そして、ステップＳ３０４では、非ＩＰｓｅｃ通信により、再び到達確認を要求するメッセージ（図に示した例では、近隣探索プロトコル：ＮＤＰ）を外部装置７０へ送信する。
【００５７】
ステップＳ３０５で、外部装置７０からの非ＩＰｓｅｃ通信による到達確認メッセージに対する応答を受信して、該外部装置７０が、ネットワーク上に存在することを確認できた場合には、ステップＳ３０６で、再び新たな「ＳＡ情報(２)を交換させて、ステップＳ３０７で、「ＳＡ情報(２)を使用してＩＰｓｅｃ通信を継続させる。
【００５８】
図７は、本実施形態の通信装置１２が実行する、外部装置７０が保持していたＳＡ情報の消失を検知する処理を示すフローチャート図である。図７に示した制御は、ステップＳ４００から、例えばタイマイベントなど、外部装置７０におけるＳＡ情報の消失を検知する処理をトリガするイベント発生を契機として処理が開始され、ＩＰｓｅｃ通信判定部４８は、ステップＳ４０１で、ＩＰｓｅｃ通信による到達確認メッセージを、外部装置７０に対して送信する。
【００５９】
ステップＳ４０２では、ＩＰｓｅｃ通信判定部４８は、外部装置７０からの応答があるか否かを判定する。ステップＳ４０２の判定で、応答があった場合（ｙｅｓ）には、処理をステップＳ４０７へ分岐させ、ＩＰｓｅｃ通信を継続させ、ステップＳ４０８で処理を終了させる。一方、ステップＳ４０２の判定で、応答がなかった場合（ｎｏ）には、外部装置７０がＳＡ情報を消失させたものとし、ステップＳ４０３へ処理を分岐させ、通信装置１２側の対応するＳＡ情報を削除させる。
【００６０】
次にステップＳ４０４では、非ＩＰｓｅｃ通信による到達確認メッセージを送信させて、ステップＳ４０５で、応答があるか否かを判定する。ステップＳ４０５の判定で、応答がないと判定された場合（ｎｏ）には、処理をステップＳ４０８へ分岐させ処理を終了させる。この場合は、外部装置７０が、ネットワークに接続されていないことを意味し、セキュア通信を再確立させる処理を実行することが非効率であるためである。
【００６１】
一方、ステップＳ４０５の判定で、非ＩＰｓｅｃ通信による到達確認メッセージに対する応答があった場合（ｙｅｓ）には、ステップＳ４０６へ処理を分岐させ、再びＩＫＥｖプロトコルによるＳＡ情報の再交換を行い、セキュア通信を再確立させ、ステップＳ４０７で、ＩＰｓｅｃ通信を継続させて、ステップＳ４０８で処理を終了させる。
【００６２】
図７に示した処理で、ＩＰｓｅｃ通信による到達確認メッセージおよび非ＩＰｓｅｃ通信による到達確認メッセージを送信して、ＩＰｓｅｃ通信による到達確認メッセージに対する応答がなく、非ＩＰｓｅｃ通信による到達確認メッセージに対する応答があった場合に、ＩＰｓｅｃ通信を再確立させる制御とすることにより、外部装置７０において、共有されているべきＳＡ情報が消失してしまったことを検知し、効率的にＩＰｓｅｃ通信の再確立処理を開始させることができる。
【００６３】
ＩＫＥプロトコルによる鍵交換の手続は、手続を完了させるまでに処理時間がかかるため、次のデータ伝送の要求があってから接続の再確立処理を開始させたのでは、通信の迅速性の観点から充分ではない。そこで、本実施形態では上述のように、通信装置１２は、ＳＡ情報を削除した後に、引き続き非ＩＰｓｅｃ通信による到達確認メッセージを送信して、応答があった場合にＩＰｓｅｃ通信を再確立させる処理を開始させる。上記構成により、次のデータ伝送の要求が発生する前に、ＩＰｓｅｃ通信を再確立させることが可能となり、迅速で効率的にＩＰｓｅｃ通信を再確立することを可能としている。
【００６４】
なお、到達確認メッセージとしては、エコー要求メッセージ（タイプ：１２８）、近隣要請メッセージ（タイプ：１３５）などのＩＣＭＰｖ６パケット、ＡＲＰ（アドレス解決プロトコル）パケットを使用することができる。また、非ＩＰｓｅｃ通信による場合には、到達確認メッセージとしては、ＩＰｓｅｃの対象とならない近隣要請メッセージ（タイプ：１３５）やＡＲＰパケットなどを使用することができる。
【００６５】
ＩＰｖ６プロトコルに従えば、エコー要求メッセージ、あるいは近隣要請メッセージを正常に受信した通信相手（外部装置７０）は、それぞれ、エコー応答メッセージ（タイプ：１２９）、あるいは近隣広告メッセージ（タイプ：１３６）を応答することとなるため、通信相手の外部装置７０に対してソフトウェア上の改変を要求することなく、通信相手１２は、外部装置７０との間でＳＡ情報の共有が失われてしまったことを検知できる構成とすることが可能となる。
【００６６】
図８は、通信装置１２が実行する、外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理の他の実施形態示すシーケンス図である。なお、図８のシーケンス図は、図１のネットワーク１０において、通信装置１２と外部装置７０とが近隣ノードを構成する場合（同一のリンクに属する場合）を想定している。図８の処理は、図６に示した処理と同様に、ステップＳ５００から開始され、通信装置１２と外部装置７０との間でＳＡ情報「ＳＡ情報（１）」の交換手続が実行され、ステップＳ５０１で、両装置間でＩＰｓｅｃ通信が行われる。
【００６７】
ＩＰｓｅｃ通信が確立されている間に、外部装置７０において何らかの障害の発生し、外部装置７０が再起動された場合、一般に、外部装置７０は、同一リンクの近隣ノードに対して、重複アドレス検知のために近隣探索プロトコル（ＮＤＰ）を送信することとなる。ステップＳ５０２では、通信装置１２は、再起動した外部装置７０からのＮＤＰを受信して、ステップＳ５０３で、外部装置７０からのＮＤＰを、外部装置７０におけるＳＡ情報の消失を検知する処理をトリガするイベントとして検出し、ステップＳ５０４で、パケットの到達確認を要求するメッセージ（図の例ではｐｉｎｇ）を、ＩＰｓｅｃ通信により外部装置７０へ送信する。
【００６８】
そして、外部装置７０からの応答がなかった場合には、通信装置１２と外部装置７０との間で共有されるべきＳＡ情報が共有されていないとし、内部記憶装置５４に格納されたＳＡ情報を削除する。そして、ステップＳ５０５では、非ＩＰｓｅｃ通信により、再び到達確認を要求するメッセージ（図の例ではＮＤＰ）を外部装置７０へ送信する。
【００６９】
ステップＳ５０６で、外部装置７０からの非ＩＰｓｅｃ通信による到達確認メッセージに対する応答を受信して、該外部装置７０が、ネットワーク上に存在することを確認できた場合には、ステップＳ５０７で、再び新たなＳＡ情報「ＳＡ情報(２)を交換して、ステップＳ５０８で、新たなＳＡ情報を使用して、ＩＰｓｅｃ通信を継続させる。
【００７０】
上述のように、外部装置７０からの重複検知パケット（ＩＰｖ６ではＮＤＰ、ＩＰｖ４ではＡＲＰとすることができる。）を受信したことを契機として、外部装置７０におけるＳＡ情報の消失を検知する処理を開始させることによって、外部装置７０における再起動を効率的に検知し、無駄なトラフィックを好適に低減させつつ、ＩＰｓｅｃ通信の再確立を行うことができる。
【００７１】
図９は、通信装置１２が実行する、外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のさらに他の実施形態を示すシーケンス図である。図９の処理は、図６に示した処理と同様に、ステップＳ６００から開始され、通信装置１２と外部装置７０との間でＳＡ情報「ＳＡ情報（１）」の交換手続が実行され、ステップＳ６０１で、両装置間でＩＰｓｅｃ通信が行われる。
【００７２】
図９の例では、ＩＰｓｅｃ通信が確立されている間に、外部装置７０において何らかの障害の発生し、外部装置７０が再起動された場合、外部装置７０が保持していたＳＡ情報は、消失することとなる。しかしながら、その消失を検知していない通信装置１２は、そのまま共有されていないＳＡ情報を使用して、ＩＰｓｅｃ通信によるデータ送信を続けてしまうこととなる。そこで本実施形態では、通信装置１２は、一定量のパケットを送信するたびに、到達確認メッセージを送信して、外部装置７０において、ＳＡ情報が消失しているか否かを判定する。
【００７３】
ステップＳ６０２では、通信装置１２は、アプリケーションなどが要求する送信パケットをＩＰｓｅｃパケットとして送信する。この際に、パケットバッファ４６へ、送信パケットを蓄積させる。ステップＳ６０３では、一定量のパケットを送信したことを契機として、ステップＳ６０４で、到達確認を要求するメッセージ（ｐｉｎｇコマンド）をＩＰｓｅｃ通信により外部装置７０へ送信する。そして、外部装置７０からの応答がなかった場合には、内部記憶装置５４に格納されたＳＡ情報を削除する。
【００７４】
ステップＳ６０５では、さらに非ＩＰｓｅｃ通信により、到達確認メッセージ（ＮＤＰ）を外部装置７０へ送信する。そして、ステップＳ６０６で、外部装置７０からの非ＩＰｓｅｃ通信による到達確認メッセージに対する応答を受信して、該外部装置７０がネットワーク上に存在することを確認できた場合には、ステップＳ６０７で、再び新たなＳＡ情報「ＳＡ情報(２)を交換して、ステップＳ６０８で、パケットバッファに蓄積しておいた送信パケットを外部装置７０へ再送する。ステップＳ６０９では、新たなＳＡ情報を使用して、ＩＰｓｅｃ通信を継続させる。
【００７５】
図１０は、通信装置１２が実行する、一定量のパケットを送信するごとに、外部装置７０におけるＳＡ情報の消失の検知を試みる処理のフローチャートを示す。図１０に示した制御は、ステップＳ７００で、外部装置７０とＩＰｓｅｃ通信を確立させたことを受けて開始される。
【００７６】
通信装置１２は、ステップＳ７０１で、まず送信パケットのパケット量を計量するカウンタをリセットし、同時にパケットバッファ４６内のデータも消去して初期化する。ステップＳ７０２では、ＩＰｓｅｃ通信部４２は、アプリケーション６０からの送信パケットを受領して、ステップＳ７０３で、順次、パケットバッファ４６に格納するとともに、所定のセキュリティ・プロトコルによるＩＰｓｅｃパケットとして、外部装置７０へ送信する。その際には、送信パケットがカウンタにより計量され、ステップＳ７０４では、送信パケット量が、予め設定されたデータ量を超過したか否かの判定が行われる。
【００７７】
ステップＳ７０４の判定で、設定されたデータ量を超過していないと判定された場合（ｎｏ）には、処理はステップＳ７０２へ分岐させられ、設定されたデータ量を超過するまでループさせられる。一方、ステップＳ７０４の判定で、設定されたデータ量を超過したと判定された場合（ｙｅｓ）には、処理をステップＳ７０５へ分岐させ、ステップＳ７０５では、図７の処理フローが呼出され、到達確認メッセージにより、外部装置７０におけるＳＡ情報の消失の検知が試みられ、消失を検知した場合には、さらにＩＰｓｅｃ通信の再確立が試みられる。
【００７８】
ステップＳ７０６では、ステップＳ７０５で呼出された処理により、消失を検知したか否かの判定を行い、消失が検知されていなかった場合（ｎｏ）には、ステップＳ７０１へ分岐させられ、カウンタをリセットし、パケットバッファ４６をクリアして、処理を繰り返す。一方、ステップＳ７０６の判定で、消失を検知した場合（ｙｅｓ）は、ステップＳ７０７で、ＩＰｓｅｃ通信が再確立されていれば、再確立したＩＰｓｅｃ通信を使用して、パケットバッファ４６に蓄積されている送信パケットをＩＰｓｅｃパケット化して、外部装置７０へ再送し、ステップＳ７０１へ再びループさせる。
【００７９】
図１０に示した処理フローにより、通信装置１２が、外部装置７０におけるＳＡ情報の消失を検知しないまま送信し続けられた可能性のあるパケットを再送させることを可能とし、再びアプリケーション６０で再発行させる必要がなく、効率的にＩＰｓｅｃ通信を継続させることが可能となる。
【００８０】
図１１は、通信装置１２が実行する、外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のさらに他の実施形態を示すシーケンス図である。図１１の処理は、図９に示した処理と大部分において同一であるため、相違点のみを説明する。本実施形態では、通信装置１２は、一定量のセッション数を超過させるたびに、外部装置７０においてＳＡ情報が消失してしまっていないか否かを判定する処理を開始する。
【００８１】
ステップＳ８００およびステップＳ８０１の処理は、図９に示したステップＳ６００およびステップＳ６０１に対応する。ステップＳ８０２では、通信装置１２は、ＩＰｓｅｃ通信によりパケットを送信し、ステップＳ８０３で、所定のセッション数を超過したこと契機として、ステップＳ８０４で、パケットの到達確認メッセージを送信して、外部装置７０側でＳＡ情報が消失してしまったか否かを検知する。なお、ステップＳ８０４〜ステップＳ８０８の処理は、図９に示したステップＳ６０４〜ステップＳ６０９（ステップＳ６０８を除く）の処理に対応する。
【００８２】
図１２は、通信装置１２が実行する、外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のさらに他の実施形態を示すシーケンス図である。図１２の処理についても、図９に示した処理と大部分において同一であるため、相違点のみを説明する。本実施形態では、通信装置１２は、一定時間経過したごとに、外部装置７０においてＳＡ情報が消失してしまっていないか否かを判定する。
【００８３】
ステップＳ９００およびステップＳ９０１の処理は、図９に示したステップＳ６００およびステップＳ６０１に対応する。ステップＳ９０２では、通信装置１２は、ＩＰｓｅｃ通信によりパケットを送信し、ステップＳ９０３で、所定時間が経過したこと契機として、ステップＳ９０４で、パケットの到達確認メッセージを送信して、外部装置７０側でＳＡ情報が消失してしまったか否かを検知する。なお、ステップＳ９０４〜ステップＳ９０８の処理は、図９に示したステップＳ６０４〜ステップＳ６０９（ステップＳ６０８を除く）の処理に対応する。
【００８４】
以上、再起動したこと、重複検知パケット受信したこと、一定パケット量を送信したこと、一定セッション数を超過したこと、一定時間経過したことを外部装置７０におけるＳＡ情報の消失を検知する処理をトリガするイベントとして検出して、処理を開始させる処理フローについて説明してきた。なお、上記一定パケット量、一定セッション数、一定時間、またこれらイベントの中で、どのイベントをトリガイベントとするかについての設定情報は、ＩＰｓｅｃ設定保存部５２に保存しておくことができる。また、一定セッション数を超過したこと、一定時間経過したことを外部装置７０におけるＳＡ情報の消失を検知する処理をトリガするイベントとして検出して、処理を開始させる場合についても、充分な容量のパケットバッファ４６を確保することにより、再送させる制御とすることができる。
【００８５】
以下、上述の通信装置１２を、デジタル複合機などの複合機能を有する画像形成装置として構成した場合の、画像形成装置の概略構成を説明する。図１３は、複数の機能を備えた画像形成装置１００のハードウェアおよびソフトウェア構成の実施形態を示した概略図である。画像形成装置１００は、タッチパネルといった操作パネルまたはディスプレイ装置および入力キーなどを備えたユーザ・インタフェース（Ｉ／Ｆ）１６０を備えている。ユーザＩ／Ｆ１６０は、ユーザ指令に応答して、コピーやファクシミリやモノクロコピーやフルカラーコピーなど、画像形成装置としての機能をユーザに提供している。また、画像形成装置１００は、外部コンピュータからの入力に応答して、プリンタやファクシミリとしても機能する。
【００８６】
図１３に示した画像形成装置１００は、複数の機能を提供するための各種アプリケーション１３２〜１４０からなるアプリケーション部１３０と、プラットフォーム部１１０とを含んで構成される。アプリケーション部１３０は、プリンタ、コピー、ファックスやスキャナなどの画像形成装置に関連するユーザ・サービスに固有の処理を行い、図１３に示した実施形態では、コピー・アプリケーション１３２と、ファックス・アプリケーション１３４と、スキャナ・アプリケーション１３６と、ネットファイル・アプリケーション１３８と、プリンタ・アプリケーション１４０とを含み構成される。
【００８７】
プラットフォーム部１１０は、カーネル／ＯＳ１１２とともにアプリケーション部１３０からの処理要求を解釈して、ハードウェア等の各種リソースの獲得要求を発生する各種制御部１１４〜１２８を含み構成される。ＯＳとしては例えば、ＵＮＩＸ（登録商標）を採用することができるが、その他いかなるＯＳを採用することができる。各種制御部としては、図１３に示した実施形態では、ドキュメント制御部１１４と、オペレーション制御部１１６と、メモリ制御部１１８と、システム制御部１２０と、セキュリティ制御部１２２と、ネットワーク制御部１２４と、ファックス制御部１２６と、エンジン制御部１２８とを含んで構成される。プラットフォーム部１１０とアプリケーション部１３０との間には、アプリケーション・プログラム・インタフェース（ＡＰＩ）１４２が設けられていて、プラットフォーム部１１０は、ＡＰＩに含まれる予め定義された関数によりアプリケーション部１３０の各アプリケーションからの処理要求を受信している。
【００８８】
なお、アプリケーション部１３０に含まれる各種アプリケーション、プラットフォーム部６０に含まれる各種制御部の構成は任意であり、特定の用途に応じて、種々の組み合わせにより構成することができる
【００８９】
ネットワーク制御部（ＮＣＳ）１２４は、イーサネット（登録商標）などのネットワーク・インタフェース（Ｉ／Ｆ）１５４と接続され、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用可能なサービスを提供し、ネットワーク１６２側から各プロトコルによって受信したデータを各アプリケーションに振り分け、各アプリケーションからのデータをネットワーク１６２側に送信する際の仲介を行う。さらに、図２に示したネットワーク制御部４０の各機能部４２〜５２は、図１３に示した画像形成装置１００のネットワーク制御部１２４に含まれることとなる。
【００９０】
また、図１３に示した画像形成装置１００は、ＮＶＲＡＭ１５２と、その他外部デバイスと接続するための外部デバイス・インタフェース（Ｉ／Ｆ）１５６と、ＧＳＴＮインタフェース（Ｉ／Ｆ）１５８を備え、画像処理装置の入出力を可能としている。ＮＶＲＡＭ１５２には、各種ＩＰｓｅｃ設定情報や上述の通信相手管理テーブル８０を格納することができる。
【００９１】
画像形成装置１００は、各種演算を行う図示しないＣＰＵと、各種制御プログラムを記憶する図示しないＲＯＭと、ＣＰＵの作業メモリ領域を提供する図示しないＲＡＭとを含み構成され、上記機能手段は、ＲＯＭやＨＤＤ１５０や外部デバイス（ＳＤメモリカード）などの外部記憶装置に格納されたプログラム（図示せず）をＲＡＭのメモリ領域にロードすることにより実現される。
【００９２】
画像形成装置１００のように、ＰＣなどと比較して操作画面が限定されてしまう通信装置においては、ＳＡ情報の不整合などによりＩＰｓｅｃ通信が切断されてしまった場合、その原因の特定や復旧が困難であるという問題点がある。ＳＡ情報の共有が消失してしまったことを検知して、ＩＰｓｅｃ通信を再確立させる制御とすることによって、より安定性の高い、画像形成装置固有のサービスをユーザに提供することを可能とする。
【００９３】
以上、説明したように、本発明によれば、通信装置と通信相手との間で、セキュリティ共有情報の共有を消失してしまった場合であっても、効率的にその消失を検知し、セキュア通信を再確立させることを可能とし、セキュア通信の安定性を効果的に向上させることを可能とする通信装置、通信方法およびプログラムを提供することができる。
【００９４】
なお、明細書中では、ＩＰｓｅｃバージョン２および、ＲＦＣ２４０９に規定されるＩＫＥｖ１を用いて説明してきた。しかしながら、ＩＰｓｅｃバージョン３および、ＩＫＥｖ１の後継番であるＲＦＣ４３０６として規定されるＩＫＥｖ２であっても、同様に適用することができる。また、上述では、ＩＫＥｖ１プロトコルによるＳＡ交換手続として、詳細を省略して説明してきたが、ＳＡ情報交換手続は、フェーズ１およびフェーズ２の２段階の処理から構成され、それぞれおフェーズ１で確立される双方向性のＩＳＡＫＭＰ＿ＳＡおよびフェーズ２で確立される単方向性のＩＰｓｅｃ＿ＳＡとが交換されることとなる。ＩＰｓｅｃバージョン３では、これらのＳＡ情報は、ＳＰＩのみ（ＥＳＰとＡＨとの間で重複しないようにＳＰＩが割当てられる場合）、あるいはＳＰＩとセキュリティ・プロトコルの種類との組合わせにより識別することができる。
【００９５】
また、本発明の上記機能は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）、などのレガシープログラミング言語やオブジェクト指向ブログラミング言語などで記述された装置実行可能なプログラムにより実現でき、ＳＤメモリ、ＭＯ、ＥＥＰＲＯＭ、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤなど装置可読な記録媒体に格納して頒布することができる。また、上記機能は、システム・メモリおよびＣＰＵにより構成され、各機能を実現するためのプログラムをシステム・メモリにロードして実行することにより実現させることができる。
【００９６】
以上、本発明を図面に示した実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【図面の簡単な説明】
【００９７】
【図１】通信装置１２が接続されるネットワーク１０の実施形態を示した概略図。
【図２】通信装置１２のソフトウェア構成を示したブロック図。
【図３】通信装置１２におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のシーケンス図。
【図４】通信装置１２が保持していたＳＡ情報の消失を検知する処理を示すフローチャート。
【図５】通信相手の装置識別値とＳＡ情報とを対応付ける通信相手管理テーブルのデータ構造を示す図。
【図６】外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のシーケンス図。
【図７】外部装置７０が保持していたＳＡ情報の消失を検知する処理を示すフローチャート図。
【図８】外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理の他の実施形態示すシーケンス図。
【図９】外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のさらに他の実施形態を示すシーケンス図。
【図１０】一定量のパケットを送信するごとに、外部装置７０におけるＳＡ情報の消失の検知を試みる処理のフローチャート。
【図１１】外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のさらに他の実施形態を示すシーケンス図。
【図１２】外部装置７０におけるＳＡ情報の消失を検知して、ＩＰｓｅｃ通信を再確立する処理のさらに他の実施形態を示すシーケンス図。
【図１３】複数の機能を備えた画像形成装置１００のハードウェアおよびソフトウェア構成の実施形態を示した概略図。
【符号の説明】
【００９８】
１０…ネットワーク、１２…通信装置、１４…ルータ、１６、１８…リンク、３０…ＯＳ、３２…ネットワーク通信ドライバ、３４…ネットワーク・プロトコル、４０…ネットワーク制御部、４２…ＩＰｓｅｃ通信部、４４…ＳＡ交換処理部、４６…パケットバッファ、４８…ＩＰｓｅｃ通信判定部、５０…ＩＰｓｅｃセッション情報管理部、５２…ＩＰｓｅｃ設定保存部、５４…内部記憶装置、５６…不揮発性記憶装置、６０…アプリケーション、７０…外部装置、８０…通信相手管理テーブル、８０ａ、８０ｂ…フィールド、１００…画像形成装置、１１０…プラットフォーム部、１１２…カーネル／ＯＳ、１１４…ドキュメント制御部、１１６…オペレーション制御部、１１８…メモリ制御部、１２０…システム制御部、１２２…セキュリティ制御部、１２４…ネットワーク制御部、１２６…ファックス制御部、１２８…エンジン制御部、１３０…アプリケーション部、１３２…コピー・アプリケーション、１３４…ファックス・アプリケーション、１３６…スキャナ・アプリケーション、１３８…ネットファイル・アプリケーション、１４０…プリンタ・アプリケーション、１４２…ＡＰＩ、１５０…ＨＤＤ、１５２…ＮＶＲＡＭ、１５４…ネットワーク・インタフェース、１５６…外部デバイス・インタフェース、１５８…ＧＳＴＮインタフェース、１６０…ユーザ・インタフェース、１６２…ネットワーク
【図１】
2008205763.tif 000003
【図２】
2008205763.tif 000004
【図３】
2008205763.tif 000005
【図４】
2008205763.tif 000006
【図５】
2008205763.tif 000007
【図６】
2008205763.tif 000008
【図７】
2008205763.tif 000009
【図８】
2008205763.tif 000010
【図９】
2008205763.tif 000011
【図１０】
2008205763.tif 000012
【図１１】
2008205763.tif 000013
【図１２】
2008205763.tif 000014
【図１３】
2008205763.tif 000015