(57)【要約】【課題】  突発的なＳＡ情報消失の際にも、不要なＳＡ情報がＳＡＤに残留することを防止することができるＩＰｓｅｃ通信装置を提供する。【解決手段】  ＳＡ確立シーケンスが完了する度に、不要ＳＡ情報処理部１０４は、ＳＡＤ１０１内の全てのＳＡ情報について、その必要性の有無を判断する。その後、不要と判断したＳＡ情報を削除する。【選択図】      図４
2009219106.tif 000002
【特許請求の範囲】
【請求項１】
通信相手装置との間でＩＰｓｅｃを用いた暗号化通信を行う暗号化通信パラメータであるセキュリティアソシエーション情報を蓄積するデータベースを備えたＩＰｓｅｃ通信装置であって、
通信相手装置間で暗号化通信パラメータを相互に確立すると、前記通信相手装置との間で不要な暗号化通信パラメータが前記データベースに存在しているか否かを識別し、前記不要な暗号化通信パラメータが存在することを識別した場合には前記不要な暗号化通信パラメータを削除する不要パラメータ処理手段
を備えることを特徴とするＩＰｓｅｃ通信装置。
【請求項２】
前記不要パラメータ処理手段は、
通信相手装置間で暗号化通信パラメータを相互に確立すると、前記データベースに存在する暗号化通信パラメータに関し、当該暗号化通信パラメータで識別される通信相手装置に対して、当該通信相手装置に同一の暗号化通信パラメータの存在有無を問い合わせる存在確認パケットを送信する存在確認パケット送信手段と、
前記存在確認パケットを受信すると、前記データベースに当該存在確認パケットに対応する暗号化通信パラメータが存在する場合にのみ、その旨を通知する存在確認応答パケットを返送する存在確認パケット応答手段と、
送信した前記存在確認パケットに対する前記存在確認応答パケットを受信しない場合に、当該存在確認パケットに対応する前記暗号化通信パラメータを削除する削除手段と
を備えることを特徴とする請求項１記載のＩＰｓｅｃ通信装置。
【請求項３】
前記不要パラメータ処理手段は、
通信相手装置間で暗号化通信パラメータを相互に確立すると、前記データベースに存在する同一通信相手装置に対応する異なる暗号化通信パラメータの有無を識別する重複確認手段と、
前記重複確認手段が、同一通信相手装置に対応する異なる暗号化通信パラメータが前記データベースに存在することを識別すると、前記データベースに存在する同一通信相手装置に対応する異なる暗号化通信パラメータを削除する削除手段と
を備えることを特徴とする請求項１記載のＩＰｓｅｃ通信装置。
【請求項４】
前記存在確認パケット送信手段は、
前記データベースの前記暗号化通信パラメータを登録する登録領域の空塞状況を確認し、前記登録領域が満杯の場合にのみ、前記存在確認パケットを前記データベースに存在する暗号化通信パラメータで識別される通信相手装置に対して送信することを特徴とする請求項２記載のＩＰｓｅｃ通信装置。
【請求項５】
前記データベースに登録される前記暗号化通信パラメータは、存在確認フラグを有し、
前記存在確認パケット送信手段は、前記存在確認パケットを送信する前に前記存在確認フラグを０クリアし、予め定めた時間内に受信した前記存在確認応答パケットに対応する前記存在確認フラグを立て、
前記削除手段は、予め定めた時間を経過した後においても、前記存在確認フラグが０クリアされている暗号化通信パラメータを削除する
ことを特徴とする請求項２または４記載のＩＰｓｅｃ通信装置。
【請求項６】
前記重複確認手段は、
前記通信相手装置のネットワークアドレスを含むキーを使用して前記データベースを検索することにより、同一通信相手装置に対応する異なる暗号化通信パラメータの有無を識別することを特徴とする請求項３記載のＩＰｓｅｃ通信装置。
【請求項７】
前記重複確認手段は、
前記通信相手装置のＭＡＣアドレスを含むキーを使用して前記データベースを検索することにより、同一通信相手装置に対応する異なる暗号化通信パラメータの有無を識別することを特徴とする請求項３または６記載のＩＰｓｅｃ通信装置。
【請求項８】
通信相手装置との間でＩＰｓｅｃを用いた暗号化通信を行う暗号化通信パラメータであるセキュリティアソシエーション情報を蓄積するデータベースを備えたＩＰｓｅｃ通信装置によるＩＰｓｅｃ通信方法であって、
通信相手装置間で暗号化通信パラメータを相互に確立すると、前記通信相手装置との間で不要な暗号化通信パラメータが前記データベースに存在しているか否かを識別する識別ステップと、
前記不要な暗号化通信パラメータが存在することを識別した場合には前記不要な暗号化通信パラメータを削除する削除ステップと
を備えたことを特徴とするＩＰｓｅｃ通信方法。
【請求項９】
前記識別ステップは、
通信相手装置間で暗号化通信パラメータを相互に確立すると、前記データベースに存在する暗号化通信パラメータに関し、当該暗号化通信パラメータで識別される通信相手装置に対して、当該通信相手装置に同一の暗号化通信パラメータの存在有無を問い合わせる存在確認パケットを送信する存在確認パケット送信ステップと、前記存在確認パケットを受信した場合には、前記データベースに当該存在確認パケットに対応する暗号化通信パラメータが存在する場合にのみ、その旨を通知する存在確認応答パケットを返送する存在確認パケット応答ステップとを含み、
前記削除ステップは、送信した前記存在確認パケットに対する前記存在確認応答パケットを受信しない場合に、当該存在確認パケットに対応する前記暗号化通信パラメータを削除する
ことを特徴とする請求項８記載のＩＰｓｅｃ通信方法。
【請求項１０】
前記識別ステップは、
通信相手装置間で暗号化通信パラメータを相互に確立すると、前記データベースに存在する同一通信相手装置に対応する異なる暗号化通信パラメータの有無を識別する重複確認ステップを含み、
前記削除ステップは、前記重複確認ステップで、同一通信相手装置に対応する異なる暗号化通信パラメータが前記データベースに存在することを識別すると、前記データベースに存在する同一通信相手装置に対応する異なる暗号化通信パラメータを削除する
ことを特徴とする請求項８記載のＩＰｓｅｃ通信方法。
【請求項１１】
前記存在確認パケット送信ステップは、
前記データベースの前記暗号化通信パラメータを登録する登録領域の空塞状況を確認し、前記登録領域が満杯の場合にのみ、前記存在確認パケットを前記データベースに存在する暗号化通信パラメータで識別される通信相手装置に対して送信することを特徴とする請求項９記載のＩＰｓｅｃ通信方法。
【請求項１２】
前記データベースに登録される前記暗号化通信パラメータは、存在確認フラグを有し、
前記存在確認パケット送信ステップは、前記存在確認パケットを送信する前に前記存在確認フラグを０クリアし、予め定めた時間内に受信した前記存在確認応答パケットに対応する前記存在確認フラグを立てるフラグ制御ステップを含み、
前記削除ステップは、予め定めた時間を経過した後においても、前記存在確認フラグが０クリアされている暗号化通信パラメータを削除する
ことを特徴とする請求項９または１１記載のＩＰｓｅｃ通信方法。
【請求項１３】
前記重複確認ステップは、
前記通信相手装置のネットワークアドレスを含むキーを使用して前記データベースを検索することにより、同一通信相手装置に対応する異なる暗号化通信パラメータの有無を識別することを特徴とする請求項１０記載のＩＰｓｅｃ通信方法。
【請求項１４】
前記重複確認ステップは、
前記通信相手装置のＭＡＣアドレスを含むキーを使用して前記データベースを検索することにより、同一通信相手装置に対応する異なる暗号化通信パラメータの有無を識別することを特徴とする請求項１０または１３記載のＩＰｓｅｃ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は暗号化したＩＰパケットを送受信するＩＰｓｅｃ通信装置およびＩＰｓｅｃ通信方法に関し、特に、通信相手装置間での不要な暗号化通信パラメータを削除することができるＩＰｓｅｃ通信装置およびＩＰｓｅｃ通信方法に関する。
【背景技術】
【０００２】
ＩＰｓｅｃ(Security Architecture for Internet Protocol)は、暗号技術を用いて、ＩＰパケット単位でデータの改竄防止や秘匿機能を提供するプロトコルである。これによって、第三者が通信路の途中で通信内容を覗き見たり改竄したりすることを防止できる。
【０００３】
ＩＰｓｅｃを用いて通信を行う装置（以下「ＩＰｓｅｃ通信装置」と称する）は、ＳＡ(Security Association)と呼ばれる論理的な通信路上で暗号通信を行う。ＳＡを確立するために必要な、暗号化方式や暗号鍵などの暗号化通信パラメータをＳＡ情報と呼ぶ。また、ＳＡ情報を管理・保持するデータベースをＳＡＤ(Security Association Database)と呼ぶ。
【０００４】
ＩＰｓｅｃにより暗号化されたＩＰパケット（以下「ＩＰｓｅｃパケット」と称する）を送信するＩＰｓｅｃ通信装置は、パケットの送信先アドレスや通信プロトコル等により、対応するＳＡ情報に基づいて暗号化処理を行う。またＩＰｓｅｃパケットを受信するＩＰｓｅｃ通信装置は、ＩＰｓｅｃパケットのヘッダ情報から対応するＳＡ情報を検索して復号処理を行う。ある２つのＩＰｓｅｃ通信装置がＩＰｓｅｃパケットの通信を行なうためには、お互いの装置のＳＡＤに共通のＳＡ情報を構築する必要がある。
【０００５】
ある２つのＩＰｓｅｃ通信装置が、お互いのＳＡＤにＳＡ情報が存在しない状態から、お互いのＳＡＤに共通のＳＡ情報を構築し、ＩＰｓｅｃによるパケット通信が行なえる状態になるまでの過程をＳＡ確立シーケンスと呼ぶ。また、ＳＡＤに共通のＳＡ情報を構築するために必要な暗号鍵の交換を安全に行うプロトコルをＩＫＥプロトコル(Internet Key Exchange Protocol)と呼ぶ。
【０００６】
図１３にＩＰｓｅｃ通信装置Ｂ主導でＩＰｓｅｃ通信装置Ａに対してＳＡ確立シーケンスが行なわれた場合の動作を示す。
【０００７】
ＳＡ確立シーケンスでは、フェーズ１、フェーズ２と呼ばれる二段階の手順で鍵交換を行う。
【０００８】
まずフェーズ１でＩＫＥプロトコル同士の認証と暗号鍵の交換を行う。これをＩＳＡＫＭＰ(Internet Security Association and Key Management Protocol)ＳＡ交換と呼ぶ（Ｓ１０１〜Ｓ１０２）。
【０００９】
更にフェーズ２でＩＰｓｅｃの適用条件と暗号鍵の交換を行う。これをＩＰｓｅｃ  ＳＡ交換と呼ぶ（Ｓ１０３〜Ｓ１０４）。
【００１０】
ここで、フェーズ１、フェーズ２での暗号鍵交換時に、通信路に公開せずにＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂで同じ値となる共有秘密鍵を生成し、その共有秘密鍵を使用して送信パケットの暗号化、受信パケットの復号を行なっている。
【００１１】
ＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂが、ＩＳＡＫＭＰ  ＳＡ交換およびＩＰｓｅｃ  ＳＡ交換において共有秘密鍵を生成するときの詳細動作について、図１４に示すシーケンスを使用して以下に説明する。
【００１２】
まず、ＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂは、共に装置内において乱数を発生させる（Ｓ２０１）。次に、その乱数をＤＨ計算（Diffie-Hellman鍵共有アルゴリズムによる計算）して、通信路に公開しても良い鍵（公開鍵α、公開鍵β）を作成する（Ｓ２０２）。次に、お互いの装置の公開鍵α、公開鍵βを交換する（Ｓ２０３）。ＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂは、公開鍵αと公開鍵βでＤＨ計算することにより、共有秘密鍵Ｘを得ることが出来る（Ｓ２０４）。なおＤＨ計算の具体的な計算式については公知のためここには記載しない。
【００１３】
以上のように、ＩＰｓｅｃ通信装置は乱数を発生させて共有秘密鍵を生成する。このため、ＳＡ確立シーケンスが行なわれるたびに異なる共有秘密鍵が生成され、新たなＳＡ情報がＳＡＤ内に保持される。これは同一の装置間の通信でも同様である。また、一旦保持されたＳＡ情報は、有効期限が切れるか、相手装置からの削除通知メッセージが受信されなければ削除されない。
【００１４】
ＩＰｓｅｃ通信装置がＳＡ情報を削除する場合は、対向する相手装置のＳＡ情報も同時に削除し、片方の装置に不要なＳＡ情報が残留しないようにする。この目的のため、ＩＰｓｅｃ通信装置は、相手装置のＳＡ情報の削除を依頼する削除通知メッセージを送信する。しかし何らかの理由で片方の装置のＳＡ情報が削除できなかった場合、このＳＡ情報は有効期限が切れるまでＳＡＤ内に残留する。このような、使用されないＳＡ情報が残留することに起因して、ＩＰｓｅｃを用いた通信がその残留時間の間だけ不可能になることがある。
【００１５】
特許文献１は、通信を切断する際に送信した削除通知メッセージがネットワーク上で何らかの理由で破棄され、相手装置側にその削除通知メッセージが到達しないことに起因するＳＡ情報の残留の問題を解決する技術を開示している。この技術によれば、削除通知メッセージが相手装置側に到達したか否かを確認する確認パケットを送信し、その応答状況で相手装置側におけるＳＡ情報の残留状況を判断している。そして、所定の条件が満たされるまで削除通知メッセージの再送と確認メッセージの再送を行うことによりＳＡ情報の残留問題の発生を防止している。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２００６−３５２５００
【発明の概要】
【発明が解決しようとする課題】
【００１７】
しかしながら、特許文献１に開示された技術は、アプリケーションが終了して通信を切断する際のＳＡ情報の削除に関わるものである。したがって、このような明示的にＳＡ情報を削除する場合ではなく、例えば、通信中の片方の装置において予期せぬ再起動やメモリ化け等が発生して、突発的にＳＡ情報が消失してしまったような場合には、特許文献１に開示された技術では対処できない。なぜなら、このような状況においては削除通知メッセージを相手装置に送信することができないからである。
【００１８】
このような突発的な原因で片方の装置でＳＡ情報が消失してしまうと、以下に説明するような問題が発生する。
【００１９】
図１５は、ＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂとの間でＳＡ確立後に、ＩＰｓｅｃ通信装置Ｂにおいて、前述したような突発的なＳＡ情報の消失が頻発する障害が発生した場合の状況を説明する図である。
【００２０】
また、ここでは説明の都合上、ＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂにおいてそれぞれ保持できるＳＡ情報の最大数を３個までとしている。
【００２１】
初めに、ＩＰｓｅｃ通信装置ＡとＩＰｓｅｃ通信装置Ｂ間においてＳＡ確立シーケンス１が発生し、ＩＰｓｅｃ通信装置ＡのＳＡＤとＩＰｓｅｃ通信装置ＢのＳＡＤにＳＡ情報１が保持される（Ｓ３０１〜Ｓ３０３）。
【００２２】
ここで、ＩＰｓｅｃ通信装置Ｂに障害が発生し、ＩＰｓｅｃ通信装置ＢのＳＡＤのＳＡ情報１が消去される（Ｓ３１１〜Ｓ３１２）。この状態からＩＰｓｅｃ通信装置ＡがＩＰｓｅｃパケットを送信した場合、ＩＰｓｅｃ通信装置ＢはＳＡ情報を保持していないため、ＩＰｓｅｃパケットの復号を行うことが出来ない。その結果、ＩＰｓｅｃ通信装置Ａにはエラーが返信される。また、ＩＰｓｅｃ通信装置ＢがＩＰｓｅｃパケットの送信を行なう場合、ＳＡ情報が存在しないため、再度、ＳＡ確立シーケンスを行う必要がある。いずれの場合においても、ＳＡ確立シーケンス２が発生し、ＩＰｓｅｃ通信装置ＡのＳＡＤとＩＰｓｅｃ通信装置ＢのＳＡＤにＳＡ情報２が保持される（Ｓ３２１〜Ｓ３２３）。
【００２３】
ここで更に、ＩＰｓｅｃ通信装置Ｂに障害が発生し、ＩＰｓｅｃ通信装置ＢのＳＡＤのＳＡ情報２が消去される（Ｓ３３１〜Ｓ３３２）。この状態からＩＰｓｅｃ通信装置ＡまたはＩＰｓｅｃ通信装置ＢがＩＰｓｅｃパケットの送信を行なう場合、再度、ＳＡ確立シーケンス３が発生し、ＩＰｓｅｃ通信装置ＡのＳＡＤとＩＰｓｅｃ通信装置ＢのＳＡＤにＳＡ情報３が保持される（Ｓ３４１〜Ｓ３４３）。
【００２４】
このとき、ＩＰｓｅｃ通信装置ＡのＳＡＤには、ＩＰｓｅｃ通信装置Ｂでは消去されてしまった不要なＳＡ情報（ＳＡ情報１とＳＡ情報２）が保持されたままとなっている。また、ＩＰｓｅｃ通信装置ＡのＳＡＤが保持しているＳＡ情報は３個となり、保持できる最大数となる。
【００２５】
この状態で、ＩＰｓｅｃ通信装置Ｂに障害が発生し、ＩＰｓｅｃ通信装置ＢのＳＡＤのＳＡ情報３が消去され（Ｓ３５１〜Ｓ３５２）、その後ＩＰｓｅｃ通信装置ＡまたはＩＰｓｅｃ通信装置ＢがＩＰｓｅｃによるパケット通信を実施しようとした場合、ＳＡ確立シーケンス４により新たなＳＡ情報４が生成される。しかし、ＩＰｓｅｃ通信装置Ａ内に保持しているＳＡ情報の数が最大の３個であるため、ＳＡ確立シーケンス４を完了することができない（Ｓ３６１）。
【００２６】
従って、ＩＰｓｅｃ通信装置Ａは、ＳＡ情報の有効期限が切れてＳＡＤに空きができるまで、ＩＰｓｅｃによるパケット通信を行なえない状態になる。なお、ＳＡ情報の有効期限は、一般的に時間単位で設定される。
【００２７】
本発明は、上記のような突発的なＳＡ情報消失の際にも、不要なＳＡ情報がＳＡＤに残留することを防止することができるＩＰｓｅｃ通信装置およびＩＰｓｅｃ通信方法を提供することを目的とする。
【課題を解決するための手段】
【００２８】
本発明に係るＩＰｓｅｃ通信装置は、
通信相手装置との間でＩＰｓｅｃを用いた暗号化通信を行う暗号化通信パラメータであるセキュリティアソシエーション情報を蓄積するデータベースを備えたＩＰｓｅｃ通信装置であって、
通信相手装置間で暗号化通信パラメータを相互に確立すると、通信相手装置との間で不要な暗号化通信パラメータがデータベースに存在しているか否かを識別し、不要な暗号化通信パラメータが存在することを識別した場合には不要な暗号化通信パラメータを削除する不要パラメータ処理手段を備える。
【００２９】
本発明に係るＩＰｓｅｃ通信方法は、
通信相手装置との間でＩＰｓｅｃを用いた暗号化通信を行う暗号化通信パラメータであるセキュリティアソシエーション情報を蓄積するデータベースを備えたＩＰｓｅｃ通信装置によるＩＰｓｅｃ通信方法であって、
通信相手装置間で暗号化通信パラメータを相互に確立すると、通信相手装置との間で不要な暗号化通信パラメータがデータベースに存在しているか否かを識別する識別ステップと、
不要な暗号化通信パラメータが存在することを識別した場合には不要な暗号化通信パラメータを削除する削除ステップとを備える。
【発明の効果】
【００３０】
本発明に係るＩＰｓｅｃ通信装置およびＩＰｓｅｃ通信方法は、削除通知メッセージが送信できないような突発的な原因でＳＡ情報が消失した場合でも、不要なＳＡ情報がＳＡＤに残留することを防止する。
【図面の簡単な説明】
【００３１】
【図１】本発明に係るＩＰｓｅｃ通信装置が適用される通信システムを示すシステム構成図である。
【図２】本発明の第１・第２の実施形態に係るＩＰｓｅｃ通信装置の主要な機能構成を示すブロック構成図である。
【図３】第１・第２の実施形態における、図２のＳＡＤ１０１に格納されるＳＡ情報の一例を示す図である。
【図４】第１の実施形態におけるＳＡ存在確認パケット送受信処理の送信側処理を説明するフローチャートである。
【図５】第１・第２の実施形態におけるＳＡ存在確認パケット送受信処理の受信側処理を説明するフローチャートである。
【図６】第１の実施形態における、図１のＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２が連携して行なうＳＡ存在確認パケット送受信処理動作を示す説明図である。
【図７】第２の実施形態におけるＳＡ存在確認パケット送受信処理の送信側処理を説明するフローチャートである。
【図８】第２の実施形態における、図１のＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２が連携して行なうＳＡ存在確認パケット送受信処理動作を示す説明図である。
【図９】本発明の第３・第４の実施形態に係るＩＰｓｅｃ通信装置の主要な機能構成を示すブロック構成図である。
【図１０】第３の実施形態における、図９のＳＡＤ１０１に格納されるＳＡ情報の一例を示す図である。
【図１１】第３の実施形態におけるＳＡ重複確認処理を説明するフローチャートである。
【図１２】第３の実施形態における、図１のＩＰｓｅｃ通信装置１が行なうＳＡ重複確認処理動作を示す説明図である。
【図１３】ＩＰｓｅｃ通信装置間のＳＡ確立シーケンスの動作を示す図である。
【図１４】２台のＩＰｓｅｃ通信装置が、ＩＳＡＫＭＰ  ＳＡ交換およびＩＰｓｅｃ  ＳＡ交換において共有秘密鍵を生成するときの詳細動作を説明する図である。
【図１５】特許文献１に記載のＩＰｓｅｃ通信装置において、ＳＡ確立後に突発的なＳＡ情報の消失が頻発する障害が発生した場合の状況を説明する図である。
【図１６】第４の実施形態における、図９のＳＡＤ１０１に格納されるＳＡ情報の一例を示す図である。
【図１７】第４の実施形態におけるＳＡ重複確認処理を説明するフローチャートである。
【図１８】第４の実施形態における、図１のＩＰｓｅｃ通信装置１が行なうＳＡ重複確認処理動作を示す説明図である。
【発明を実施するための形態】
【００３２】
次に、本発明の実施形態について図面を参照して説明する。
【００３３】
［第１の実施形態］
図１は、本発明の第１の実施形態に係るＩＰｓｅｃ通信装置が適用される通信システムを示すシステム構成図である。本発明に係るＩＰｓｅｃ通信装置１およびＩＰｓｅｃ通信装置２は、通信ネットワーク３を介して接続され、パケットを暗号化したＩＰｓｅｃパケットを送受信する。ＩＰｓｅｃ通信装置１およびＩＰｓｅｃ通信装置２は、ＩＰｓｅｃを用いた暗号化通信パラメータであるＳＡ情報を蓄積するデータベースであるＳＡＤ１０１およびＳＡＤ２０１を備え、ＳＡ確立シーケンスの発生をトリガーとして、通信相手装置との間で不要なＳＡ情報がＳＡＤに存在しているか否かを識別し、不要なＳＡ情報が存在することを識別した場合にはその不要なＳＡ情報を削除する不要ＳＡ情報処理部１０４および不要ＳＡ情報処理部２０４を備えている。このようなＩＰｓｅｃ通信装置の構成を図２を参照して説明する。図２は、ＩＰｓｅｃ通信装置１の本発明に係る主要な機能構成を示すブロック構成図である。なおＩＰｓｅｃ通信装置２も同様な構成となっている。
【００３４】
ＩＰｓｅｃ通信装置１は、図２に示すように、通常のパケットを暗号化して通信ネットワーク３にＩＰｓｅｃパケットとして送信し、また通信ネットワーク３から受信するＩＰｓｅｃパケットを復号して通常のパケットとして取り込むＩＰｓｅｃ処理部１０、通信データを通常のパケットとして送受信するパケット送受信処理部１１、暗号化のための暗号鍵の生成、ＳＡ確立処理およびその他装置全般の制御を実行する制御処理部１２、および通信ネットワーク３とのインタフェース処理を実行するネットワークインタフェース部１３を主要な構成要素として備えている。これらの構成要素は、ハードウェアで構成されていてもよいし、ソフトウェアで構成されていてもよい。
【００３５】
さらに、ＩＰｓｅｃ処理部１０は、ＩＰｓｅｃ処理を行うために、制御処理部１２で確立したＳＡのＳＡ情報を格納するＳＡＤ１０１、ＩＰｓｅｃパケットの送受信を行うパケット処理部１０２、暗号化／復号処理を行う暗号処理部１０３、および後述するＳＡ情報の存在確認処理を行う不要ＳＡ情報処理部１０４を備えている。さらに、不要ＳＡ情報処理部１０４は、ＳＡ情報存在確認処理部１０４１、ＳＡ情報存在確認応答処理部１０４２、およびＳＡ情報削除処理部１０４３を備えている。このような構成のもとに、パケット処理部１０２は、パケット送受信処理部１１から転送された送信用パケットを、ＳＡＤ１０１に格納されているＳＡ情報に基づいて暗号処理部１０３で暗号化を行い、ＩＰｓｅｃパケットとしてネットワークインタフェース部１３を介して通信ネットワーク３に送信する。また、パケット処理部１０２は、ネットワークインタフェース部１３を介して通信ネットワーク３から受信したＩＰｓｅｃパケットを、ＳＡＤ１０１に格納されているＳＡ情報に基づいて暗号処理部１０３で復号を行い、パケット送受信処理部１１に転送する。
【００３６】
ここで、ＳＡＤに格納されるＳＡ情報について図３を参照して説明する。ＳＡＤには、ＳＡ情報として、ＳＡ情報の識別ＩＤであるＳＰＩ(Security Parameter Index)、相手装置のネットワークアドレス、相手装置との通信で使用されるプロトコル種別、暗号化／復号に使用する暗号鍵、存在確認フラグを含む。なお、ＳＡＤ１０１は、このＳＡ情報を最大３個まで保持するものとする。
【００３７】
第１の実施形態におけるＩＰｓｅｃ通信装置は、このＳＡ情報の存在確認フラグをＳＡＤに保持し、相手装置との間でＳＡ確立シーケンスが完了する度に自装置で保持しているＳＡ情報が相手装置に存在しているかを確認し、その必要性の有無を判断することを特徴としている。この確認処理をＳＡ存在確認パケット送受信処理と称する。図４〜６を参照して、以下に第１の実施形態におけるＩＰｓｅｃ通信装置のＳＡ存在確認パケット送受信処理動作を説明する。
【００３８】
ＳＡ存在確認パケット送受信処理は、ＳＡ存在確認パケットを送信する送信側処理と、ＳＡ存在確認パケットに対する受信・応答を行う受信側処理に分けられる。
【００３９】
図４は、第１の実施形態におけるＳＡ存在確認パケット送受信処理の送信側処理を説明するフローチャートである。送信側処理は、ＩＰｓｅｃ通信装置相互でＳＡ確立シーケンスが完了し、そのＳＡ情報をＳＡＤに登録した直後に実行を開始する。以下は、送信側処理がＩＰｓｅｃ通信装置１で実行されるものとして説明する。
【００４０】
ＩＰｓｅｃ通信装置１の制御処理部１２は、ＳＡ確立シーケンスが完了すると、不要ＳＡ情報処理部１０４にＳＡ存在確認パケット送受信処理の送信側処理の開始を指示する。これを受けて、不要ＳＡ情報処理部１０４は、ＳＡ情報存在確認処理部１０４１に以下の処理を指示する。最初に、ＳＡＤ１０１に保持している全てのＳＡ情報について、相手装置のネットワークアドレスに向けてネットワークインタフェース部１３を介してＳＡ存在確認パケットを送信する。同時に、ＳＡＤ１０１の全てのＳＡ情報の存在確認フラグに未確認を意味する“０”を設定する（Ｓ４０１）。ＳＡ存在確認パケットは、自身がＳＡ存在確認パケットであることを示す情報と、該当するＳＡを特定するためのＳＰＩを含む。
【００４１】
次に、不要ＳＡ情報処理部１０４は、ＳＡ情報存在確認処理部１０４１に、ＳＡ存在確認パケットに対する応答の受信確認処理を指示する。ＳＡ情報存在確認処理部１０４１は、ＳＡ存在確認応答パケットをネットワークインタフェース部１３が受信したかどうかをチェックする（Ｓ４１１）。受信した場合は、ＳＡＤ１０１内の該当するＳＡ情報の存在確認フラグに確認済を意味する“１”を設定する（Ｓ４２１）。
【００４２】
次に、不要ＳＡ情報処理部１０４は、ＳＡ存在確認パケットの送信からタイムアウト時間が経過したかどうかを判断する（Ｓ４３１）。タイムアウト時間は、ＳＡ存在確認パケットに対する応答に要する時間を考慮して、ＩＰｓｅｃ通信装置１に事前に設定される。経過していない場合は、再度ＳＡ存在確認応答パケットの受信の確認を行う（Ｓ４１１）。経過した場合は、不要ＳＡ情報処理部１０４は、ＳＡ情報削除処理部１０４３に存在未確認のＳＡ情報の削除を指示する。ＳＡ情報削除処理部１０４３は、ＳＡＤ１０１内の存在確認フラグが“０”である全てのＳＡ情報を削除し（Ｓ４４１）、ＳＡ存在確認パケット送受信処理の送信側処理を終了する。
【００４３】
図５は、第１の実施形態におけるＳＡ存在確認パケット送受信処理の受信側処理を説明するためのフローチャートである。受信側処理は、ＩＰｓｅｃ通信装置がＳＡ存在確認パケットを受信した直後に実行を開始する。以下は、受信側処理がＩＰｓｅｃ通信装置１で実行されるものとして説明する。
【００４４】
ＩＰｓｅｃ通信装置１のパケット処理部１０２は、ＳＡ存在確認パケットをネットワークインタフェース部１３が受信すると、不要ＳＡ情報処理部１０４にＳＡ存在確認パケット送受信処理の受信側処理の開始を指示する。これを受けて、不要ＳＡ情報処理部１０４は、ＳＡ情報存在確認応答処理部１０４２に以下の処理を指示する。まず、受信したＳＡ存在確認パケットに該当するＳＡ情報がＳＡＤ１０１内に存在するかどうかを判断する（Ｓ５０１）。具体的には、ＳＡ存在確認パケットに付与されたＳＰＩをキーとしてＳＡＤ１０１を検索し、一致するＳＰＩを持つＳＡ情報が存在するかどうかを判断する。存在した場合は、ＳＡ存在確認パケットの送信元に対し、ネットワークインタフェース部１３を介してＳＡ存在確認応答パケットを送信し（Ｓ５１１）、ＳＡ存在確認パケット送受信処理の受信側処理を終了する。存在しない場合は、何も行わずに処理を終了する。
【００４５】
このように、第１の実施形態におけるＩＰｓｅｃ通信装置は、ＳＡ確立シーケンスが完了して、そのＳＡ情報がＳＡＤに登録されたことを契機に、ＳＡ存在確認パケットの送受信処理を行って、ＳＡＤに現在登録されているＳＡ情報が相手装置においても登録されているのか否かを確認する。そして、相手装置に登録されていないＳＡ情報を識別した場合にはそれを削除する。このような処理を実行することにより、突発的にＳＡ情報が消滅してしまうような障害が発生したとしても、両装置間でのＳＡ情報の不整合を防ぐことができる。以下、図６を参照してこのことを説明する。
【００４６】
図６は、第１の実施形態における、図１のＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２が連携して行なうＳＡ存在確認パケット送受信処理動作を示す説明図である。ＩＰｓｅｃ通信装置１もＩＰｓｅｃ通信装置２も送信側処理と受信側処理の両方の機能を持つが、ここでは説明の都合上、送信側処理はＩＰｓｅｃ通信装置１のみ、受信側処理はＩＰｓｅｃ通信装置２のみで実行されるものとする。
【００４７】
最初に、ＳＡが確立していない状態で、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２の間にＩＰｓｅｃパケットの送信が行われようとする。これはどちらが送信元であるかを問わない。その結果、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２との間にＳＡ確立シーケンス１が開始される（Ｓ６０２）。ＳＡ確立シーケンス１が完了してＳＡ情報１がそれぞれの装置のＳＡＤに保持された後（Ｓ６０１，Ｓ６０３）、ＩＰｓｅｃ通信装置１はＳＡ存在確認パケット送受信処理の送信側処理を開始し、ＩＰｓｅｃ通信装置２に対してＳＡ１存在確認パケットを送信する（Ｓ６０４）。なお、ＳＡ１存在確認パケットとは、ＳＡ情報１に対応するＳＡ存在確認パケットの意味である。
【００４８】
ＳＡ１存在確認パケットを受信すると、ＩＰｓｅｃ通信装置２はＳＡ存在確認パケット送受信処理の受信側処理を開始する。ＩＰｓｅｃ通信装置２のＳＡＤにはＳＡ情報１が存在しているため、ＩＰｓｅｃ通信装置２は、ＩＰｓｅｃ通信装置１に対してＳＡ１存在確認応答パケットを送信し（Ｓ６０５）、受信側処理を終了する。なお、ＳＡ１存在確認応答パケットとは、ＳＡ１存在確認パケットに対する応答パケットの意味である。
【００４９】
ＩＰｓｅｃ通信装置１は、ＳＡ１存在確認応答パケットを受信し、その結果ＳＡ情報１をそのまま保持し（Ｓ６０６）、送信側処理を終了する。
【００５０】
ここで、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報１が消去される（Ｓ６１１〜Ｓ６１２）。この状態からＩＰｓｅｃ通信装置１がＩＰｓｅｃ通信装置２に対してＩＰｓｅｃパケットを送信すると、ＩＰｓｅｃ通信装置２がＳＡ情報１を保持していないため、ＩＰｓｅｃパケットを復号できず、通信できない。また、ＩＰｓｅｃ通信装置２がＩＰｓｅｃ通信装置１に対してＩＰｓｅｃパケットを送信しようとすると、ＳＡ情報が存在しないため、そのままでは送信できない。いずれの場合においても、再度、ＳＡ確立シーケンス２が開始され（Ｓ６２２）、それぞれの装置のＳＡＤにＳＡ情報２が保持される（Ｓ６２１，Ｓ６２３）。その後、ＩＰｓｅｃ通信装置１はＩＰｓｅｃ通信装置２に対してＳＡ１存在確認パケットとＳＡ２存在確認パケットとを送信する（Ｓ６２４〜Ｓ６２５）。
【００５１】
ＩＰｓｅｃ通信装置２は、ＳＡ１存在確認パケットとＳＡ２存在確認パケットを受信すると、ＳＡＤ内にはＳＡ情報２しか存在しないため、ＩＰｓｅｃ通信装置１に対してＳＡ２存在確認応答パケットのみを送信する（Ｓ６２６）。
【００５２】
ＩＰｓｅｃ通信装置１は、ＳＡ２存在確認応答パケットを受信するため、ＳＡ情報２をそのまま保持する。ＳＡ情報１については、ＳＡ存在確認応答パケットを受信しないため、ＳＡＤより削除する（Ｓ６２７）。
【００５３】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報２が消去される（Ｓ６３１〜Ｓ６３２）。この状態からＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２の間でＩＰｓｅｃパケットが送信されようとすると、ＳＡ情報が存在しないため、再度、ＳＡ確立シーケンス３が開始され（Ｓ６４２）、それぞれの装置のＳＡＤにＳＡ情報３が保持される（Ｓ６４１，Ｓ６４３）。その後、ＩＰｓｅｃ通信装置１はＩＰｓｅｃ通信装置２に対してＳＡ２存在確認パケットとＳＡ３存在確認パケットとを送信する（Ｓ６４４〜Ｓ６４５）。
【００５４】
ＩＰｓｅｃ通信装置２は、ＳＡ２存在確認パケットとＳＡ３存在確認パケットを受信すると、ＳＡＤ内にはＳＡ情報３しか存在しないため、ＩＰｓｅｃ通信装置１に対してＳＡ３存在確認応答パケットのみを送信する（Ｓ６４６）。
【００５５】
ＩＰｓｅｃ通信装置１は、ＳＡ３存在確認応答パケットを受信するため、ＳＡ情報３をそのまま保持する。ＳＡ情報２については、ＳＡ存在確認応答パケットを受信しないため、ＳＡＤより削除する（Ｓ６４７）。
【００５６】
この時点において、それぞれの装置のＳＡＤに保持されているＳＡ情報は、共にＳＡ情報３のみであり、一致している。すなわち、不要なＳＡ情報であるＳＡ情報１およびＳＡ情報２はＩＰｓｅｃ通信装置１のＳＡＤから削除済であり、存在しない。
【００５７】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報３が消去される（Ｓ６５１〜Ｓ６５２）。この状態から新たなＳＡ情報４を生成しようとした場合でも、ＩＰｓｅｃ通信装置１のＳＡＤに空きがあるため、ＳＡ確立シーケンス４を完了することができる（Ｓ６６１〜Ｓ６６３）。
【００５８】
以上の説明においては、説明の都合上、送信側処理はＩＰｓｅｃ通信装置１のみ、受信側処理はＩＰｓｅｃ通信装置２のみで実行されるものとしたが、ＩＰｓｅｃ通信装置２が送信側処理を、ＩＰｓｅｃ通信装置１が受信側処理を行ってもよい。例えば、ＳＡ確立シーケンス完了後にＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２が同時に送信側処理を実行してもよく、ＳＡ存在確認パケットを受信したＩＰｓｅｃ通信装置１が受信側処理を実行してもよい。この場合でも、以上の説明の動作に影響は無い。
【００５９】
このように第１の実施形態に係るＩＰｓｅｃ通信装置は、ＳＡ確立シーケンスが完了した後に相手装置にＳＡ情報の存在確認を行うため、突発的にＳＡ情報が消失してしまうというような障害の際においても、不要なＳＡ情報の残留を防ぐことができる。
【００６０】
［第２の実施形態］
次に、本発明の第２の実施形態を説明する。
【００６１】
第２の実施形態におけるＩＰｓｅｃ通信装置は、第１の実施形態同様、ＳＡ確立シーケンスが完了する度にＳＡ存在確認パケット送受信処理を実行することを特徴とする。ただし、ＳＡ存在確認パケット送受信処理の送信側処理が一部異なっている。
【００６２】
なお、第２の実施形態のシステム構成は、図１と同様であるため、説明を省略する。また、ＩＰｓｅｃ通信装置の主要な機能構成も、図２と同様であるため、説明を省略する。また、ＳＡＤに格納されるＳＡ情報も、図３と同様であるため、説明を省略する。
【００６３】
図７〜８を参照して、以下に第２の実施形態におけるＩＰｓｅｃ通信装置のＳＡ存在確認パケット送受信処理動作を説明する。
【００６４】
図７は、第２の実施形態におけるＳＡ存在確認パケット送受信処理の送信側処理を説明するフローチャートである。送信側処理は、第１の実施形態同様、ＩＰｓｅｃ通信装置相互でＳＡ確立シーケンスが完了し、そのＳＡ情報をＳＡＤに登録した直後に実行を開始する。以下は、送信側処理がＩＰｓｅｃ通信装置１で実行されるものとして説明する。
【００６５】
ＩＰｓｅｃ通信装置１の制御処理部１２は、ＳＡ確立シーケンスが完了すると、不要ＳＡ情報処理部１０４にＳＡ存在確認パケット送受信処理の送信側処理の開始を指示する。ここまでは第１の実施形態と同様である。
【００６６】
次に、不要ＳＡ情報処理部１０４は、ＳＡ情報存在確認処理部１０４１に以下の処理を指示する。最初に、ＳＡＤ１０１に空き領域が存在するかどうかをチェックする（Ｓ７０１）。空き領域が存在する場合は、何も行わずにＳＡ存在確認パケット送受信処理の送信側処理を終了する。ＳＡ情報が保持できる最大数まで保持されており、空き領域が存在しない場合は、次ステップ（Ｓ７１１）以降の処理を行う。それ以降は第１の実施形態の送信側処理と同様である。
【００６７】
第２の実施形態におけるＳＡ存在確認パケット送受信処理の受信側処理は、図５と同様であるため、説明を省略する。
【００６８】
第１の実施形態において図６を参照して説明したように、第２の実施形態においても、突発的にＳＡ情報が消滅してしまうような障害が発生したとしても、両装置間でのＳＡ情報の不整合を防ぐことができることを、図８を参照して説明する。
【００６９】
図８は、第２の実施形態における、図１のＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２が連携して行なうＳＡ存在確認パケット送受信処理動作を示す説明図である。本実施形態の説明においても、説明の都合上、送信側処理はＩＰｓｅｃ通信装置１のみ、受信側処理はＩＰｓｅｃ通信装置２のみで実行されるものとする。また、ＩＰｓｅｃパケット送信のタイミングや、障害発生のタイミングは第１の実施形態と同様とする。
【００７０】
最初に、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２との間でＳＡ確立シーケンス１が完了し、ＳＡ情報１がそれぞれの装置のＳＡＤに保持された後（Ｓ８０１〜Ｓ８０３）、ＩＰｓｅｃ通信装置１はＳＡ存在確認パケット送受信処理の送信側処理を開始する。ここで、ＩＰｓｅｃ通信装置１のＳＡＤに空き領域が存在するため、何も行わずに送信側処理を終了する。
【００７１】
ここで、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報１が消去される（Ｓ８１１〜Ｓ８１２）。この後、再度、ＳＡ確立シーケンス２が開始され（Ｓ８２２）、それぞれの装置のＳＡＤにＳＡ情報２が保持される（Ｓ８２１，Ｓ８２３）。その後、ＩＰｓｅｃ通信装置１はＳＡ存在確認パケット送受信処理の送信側処理を開始し、ＳＡＤに空き領域が存在するため、何も行わずに送信側処理を終了する。
【００７２】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報２が消去される（Ｓ８３１〜Ｓ８３２）。この後、再度、ＳＡ確立シーケンス３が開始され（Ｓ８４２）、それぞれの装置のＳＡＤにＳＡ情報３が保持される（Ｓ８４１，Ｓ８４３）。その後、ＩＰｓｅｃ通信装置１はＳＡ存在確認パケット送受信処理の送信側処理を開始する。ここで、ＳＡＤに空き領域が存在しないため、ＩＰｓｅｃ通信装置２に対してＳＡ１存在確認パケットとＳＡ２存在確認パケットとＳＡ３存在確認パケットとを送信する（Ｓ８４４〜Ｓ８４６）。
【００７３】
ＳＡ１存在確認パケットとＳＡ２存在確認パケットとＳＡ３存在確認パケットを受信すると、ＩＰｓｅｃ通信装置２はＳＡ存在確認パケット送受信処理の受信側処理を開始する。ＳＡＤ内にはＳＡ情報３しか存在しないため、ＩＰｓｅｃ通信装置２は、ＩＰｓｅｃ通信装置１に対してＳＡ３存在確認応答パケットのみを送信し（Ｓ８４７）、受信側処理を終了する。
【００７４】
ＩＰｓｅｃ通信装置１は、ＳＡ３存在確認応答パケットを受信するため、ＳＡ情報３をそのまま保持する。ＳＡ情報１とＳＡ情報２については、ＳＡ存在確認応答パケットを受信しないため、ＳＡＤより削除する（Ｓ８４８）。
【００７５】
第１の実施形態同様、この時点において、それぞれの装置のＳＡＤに保持されているＳＡ情報は、共にＳＡ情報３のみであり、一致している。すなわち、不要なＳＡ情報であるＳＡ情報１およびＳＡ情報２はＩＰｓｅｃ通信装置１のＳＡＤから削除済であり、存在しない。
【００７６】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報３が消去される（Ｓ８５１〜Ｓ８５２）。この状態から新たなＳＡ情報４を生成しようとした場合でも、ＩＰｓｅｃ通信装置１のＳＡＤに空きがあるため、ＳＡ確立シーケンス４を完了することができる（Ｓ８６１〜Ｓ８６３）。
【００７７】
このように第２の実施形態に係るＩＰｓｅｃ通信装置は、ＳＡＤに空き容量が存在する場合はＳＡ情報の存在確認を行わないため、第１の実施形態に比べて通信量を削減することができる。一方で、ＳＡＤに空き容量が存在しない場合は、ＳＡ確立シーケンスが完了した後に相手装置にＳＡ情報の存在確認を行う。このため、第１の実施形態同様に、不要なＳＡ情報の残留により新たなＳＡ確立シーケンスが完了しないことを防止することができる。
【００７８】
［第３の実施形態］
次に、本発明の第３の実施形態を説明する。
【００７９】
図９は、第３の実施形態における、ＩＰｓｅｃ通信装置１の本発明に係る主要な機能構成を示すブロック構成図である。なおＩＰｓｅｃ通信装置２も同様な構成となっている。
【００８０】
第１の実施形態および第２の実施形態との相違点として、第３の実施形態のＩＰｓｅｃ通信装置１は、ＳＡ情報存在確認処理部１０４１とＳＡ情報存在確認応答処理部１０４２に替えて、ＳＡ情報重複確認処理部１０４４を備えている。なおそれ以外の構成は同様であるため、説明を省略する。
【００８１】
また、第３の実施形態のシステム構成は、図１と同様であるため、説明を省略する。
【００８２】
次に、第３の実施形態における、ＳＡＤに格納されるＳＡ情報について図１０を参照して説明する。第１の実施形態および第２の実施形態との相違点として、第３の実施形態のＳＡＤは、存在確認フラグを備えていない。なおそれ以外の構成は同様であるため、説明を省略する。
【００８３】
第３の実施形態におけるＩＰｓｅｃ通信装置は、相手装置との間でＳＡ確立シーケンスが完了する度に、相手装置のネットワークアドレスと通信で使用されるプロトコル種別をキーとして、生成されたＳＡ情報とキーが重複するものを自装置のＳＡＤ内のＳＡ情報から抽出することを特徴としている。ここで、抽出された、キーが重複するＳＡ情報は必要性が無いと判断できる。この確認処理をＳＡ重複確認処理と称する。図１１〜１２を参照して、以下に第３の実施形態におけるＩＰｓｅｃ通信装置のＳＡ重複確認処理動作を説明する。
【００８４】
図１１は、第３の実施形態におけるＳＡ重複確認処理を説明するフローチャートである。ＳＡ重複確認処理は、ＩＰｓｅｃ通信装置相互でＳＡ確立シーケンスが完了し、そのＳＡ情報をＳＡＤに登録した直後に実行を開始する。以下は、ＳＡ重複確認処理がＩＰｓｅｃ通信装置１で実行されるものとして説明する。
【００８５】
ＩＰｓｅｃ通信装置１の制御処理部１２は、ＳＡ確立シーケンスが完了すると、不要ＳＡ情報処理部１０４にＳＡ重複確認処理の開始を指示する。これを受けて、不要ＳＡ情報処理部１０４は、ＳＡ情報重複確認処理部１０４４に以下の処理を指示する。最初に、処理開始の契機となったたった今確立したＳＡの、相手装置のネットワークアドレスと通信に使用するプロトコル種別をキーにＳＡＤ１０１のＳＡ情報を検索する（Ｓ９０１）。次に、ＳＡＤ１０１内にキーが一致するＳＡ情報が他に存在するかどうかをチェックする（Ｓ９１１）。存在した場合は、重複している不要なＳＡ情報と判断し、不要ＳＡ情報処理部１０４は、ＳＡ情報削除処理部１０４３に該当するＳＡ情報の削除を指示する。ＳＡ情報削除処理部１０４３は、該当するＳＡ情報をＳＡＤ１０１より削除し（Ｓ９２１）、ＳＡ重複確認処理を終了する。キーが一致するＳＡ情報が存在しない場合は、何も行わずに処理を終了する。
【００８６】
図１２は、第３の実施形態における、図１のＩＰｓｅｃ通信装置１が行なうＳＡ重複確認処理動作を示す説明図である。ＩＰｓｅｃ通信装置２もＳＡ重複確認処理の機能を持つが、ここでは説明の都合上、この処理はＩＰｓｅｃ通信装置１のみで実行されるものとして説明する。
【００８７】
最初に、ＳＡが確立していない状態で、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２の間にＩＰｓｅｃパケットの送信が行われようとする。これはどちらが送信元であるかを問わない。その結果、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２との間にＳＡ確立シーケンス１が開始される（Ｓ１００２）。ＳＡ確立シーケンス１が完了してＳＡ情報１がそれぞれの装置のＳＡＤに保持された後（Ｓ１００１，Ｓ１００３）、ＩＰｓｅｃ通信装置１はＳＡ重複確認処理を開始し、確立したＳＡ（ＳＡ情報１）より、プロトコル種別とネットワークアドレスをキーに自装置のＳＡＤを検索する（Ｓ１００４）。その結果、ＳＡ情報１とキーが重複するＳＡ情報は存在しないため、何も行わない。
【００８８】
ここで、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報１が消去される（Ｓ１０１１〜Ｓ１０１２）。この後、再度、ＳＡ確立シーケンス２が開始され（Ｓ１０２２）、それぞれの装置のＳＡＤにＳＡ情報２が保持される（Ｓ１０２１，Ｓ１０２３）。その後、ＩＰｓｅｃ通信装置１はＳＡ重複確認処理を開始し、確立したＳＡ（ＳＡ情報２）より、プロトコル種別とネットワークアドレスをキーに自装置のＳＡＤを検索する。その結果、ＳＡ情報１が重複するＳＡ情報として抽出され、削除される（Ｓ１０２４）。
【００８９】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報２が消去される（Ｓ１０３１〜Ｓ１０３２）。この後、再度、ＳＡ確立シーケンス３が開始され（Ｓ１０４２）、それぞれの装置のＳＡＤにＳＡ情報３が保持される（Ｓ１０４１，Ｓ１０４３）。その後、ＩＰｓｅｃ通信装置１はＳＡ重複確認処理を開始し、確立したＳＡ（ＳＡ情報３）より、プロトコル種別とネットワークアドレスをキーに自装置のＳＡＤを検索する。その結果、ＳＡ情報２が重複するＳＡ情報として抽出され、削除される（Ｓ１０４４）。
【００９０】
第１の実施形態および第２の実施形態同様、この時点において、それぞれの装置のＳＡＤに保持されているＳＡ情報は、共にＳＡ情報３のみであり、一致している。すなわち、不要なＳＡ情報であるＳＡ情報１およびＳＡ情報２はＩＰｓｅｃ通信装置１のＳＡＤから削除済であり、存在しない。
【００９１】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報３が消去される（Ｓ１０５１〜Ｓ１０５２）。この状態から新たなＳＡ情報４を生成しようとした場合でも、ＩＰｓｅｃ通信装置１のＳＡＤに空きがあるため、ＳＡ確立シーケンス４を完了することができる（Ｓ１０６１〜Ｓ１０６３）。
【００９２】
このように第３の実施形態に係るＩＰｓｅｃ通信装置は、ＳＡ確立が完了した後に自装置のＳＡＤにおけるＳＡ情報の重複確認を行うため、第１の実施形態および第２の実施形態同様に、突発的にＳＡ情報が消失してしまうというような障害の際においても、不要なＳＡ情報の残留を防ぐことができる。また、ＳＡ情報の重複確認処理にパケットの送信を必要としないため、第１の実施形態および第２の実施形態に比べて通信量を削減することができる。
【００９３】
［第４の実施形態］
次に、本発明の第４の実施形態を説明する。
【００９４】
第４の実施形態におけるＩＰｓｅｃ通信装置は、第３の実施形態同様、ＳＡ確立シーケンスが完了する度にＳＡ重複確認処理を実行することを特徴とする。ただし、ＳＡ重複確認処理において、ネットワークアドレスの替わりにＭＡＣアドレス(Media Access Control address)を検索キーとして使用する点が異なっている。
【００９５】
なお、第４の実施形態のシステム構成は、図１と同様であるため、説明を省略する。また、ＩＰｓｅｃ通信装置の主要な機能構成も、図９と同様であるため、説明を省略する。
【００９６】
次に、第４の実施形態における、ＳＡＤに格納されるＳＡ情報について図１６を参照して説明する。第３の実施形態との相違点として、第４の実施形態のＳＡＤは、ＳＡ情報として相手装置のＭＡＣアドレスをさらに含む。このＭＡＣアドレスは、ネットワークアドレスと同様に、ＳＡ確立シーケンス時に保存される。なおそれ以外の構成は同様であるため、説明を省略する。
【００９７】
図１７〜１８を参照して、以下に第４の実施形態におけるＩＰｓｅｃ通信装置のＳＡ重複確認処理動作を説明する。
【００９８】
図１７は、第４の実施形態におけるＳＡ重複確認処理を説明するフローチャートである。ＳＡ重複確認処理は、ＩＰｓｅｃ通信装置相互でＳＡ確立シーケンスが完了し、そのＳＡ情報をＳＡＤに登録した直後に実行を開始する。以下は、ＳＡ重複確認処理がＩＰｓｅｃ通信装置１で実行されるものとして説明する。
【００９９】
ＩＰｓｅｃ通信装置１の制御処理部１２は、ＳＡ確立シーケンスが完了すると、不要ＳＡ情報処理部１０４にＳＡ重複確認処理の開始を指示する。ここまでは第３の実施形態と同様である。
【０１００】
この指示を受けて、不要ＳＡ情報処理部１０４は、ＳＡ情報重複確認処理部１０４４に以下の処理を指示する。最初に、処理開始の契機となったたった今確立したＳＡの、相手装置のＭＡＣアドレスと通信に使用するプロトコル種別をキーにＳＡＤ１０１のＳＡ情報を検索する（Ｓ１１０１）。それ以降は第３の実施形態のＳＡ重複確認処理と同様に、次ステップ（Ｓ１１１１）以降の処理を行う。
【０１０１】
図１８は、第４の実施形態における、図１のＩＰｓｅｃ通信装置１が行なうＳＡ重複確認処理動作を示す説明図である。ＩＰｓｅｃ通信装置２もＳＡ重複確認処理の機能を持つが、ここでは説明の都合上、この処理はＩＰｓｅｃ通信装置１のみで実行されるものとして説明する。
【０１０２】
最初に、ＳＡが確立していない状態で、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２の間にＩＰｓｅｃパケットの送信が行われようとする。これはどちらが送信元であるかを問わない。その結果、ＩＰｓｅｃ通信装置１とＩＰｓｅｃ通信装置２との間にＳＡ確立シーケンス１が開始される（Ｓ１２０２）。ＳＡ確立シーケンス１が完了してＳＡ情報１がそれぞれの装置のＳＡＤに保持された後（Ｓ１２０１，Ｓ１２０３）、ＩＰｓｅｃ通信装置１はＳＡ重複確認処理を開始し、確立したＳＡ（ＳＡ情報１）より、プロトコル種別とＭＡＣアドレスをキーに自装置のＳＡＤを検索する（Ｓ１２０４）。その結果、ＳＡ情報１とキーが重複するＳＡ情報は存在しないため、何も行わない。
【０１０３】
ここで、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報１が消去される（Ｓ１２１１〜Ｓ１２１２）。この後、再度、ＳＡ確立シーケンス２が開始され（Ｓ１２２２）、それぞれの装置のＳＡＤにＳＡ情報２が保持される（Ｓ１２２１，Ｓ１２２３）。その後、ＩＰｓｅｃ通信装置１はＳＡ重複確認処理を開始し、確立したＳＡ（ＳＡ情報２）より、プロトコル種別とＭＡＣアドレスをキーに自装置のＳＡＤを検索する。その結果、ＳＡ情報１が重複するＳＡ情報として抽出され、削除される（Ｓ１２２４）。
【０１０４】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報２が消去される（Ｓ１２３１〜Ｓ１２３２）。この後、再度、ＳＡ確立シーケンス３が開始され（Ｓ１２４２）、それぞれの装置のＳＡＤにＳＡ情報３が保持される（Ｓ１２４１，Ｓ１２４３）。その後、ＩＰｓｅｃ通信装置１はＳＡ重複確認処理を開始し、確立したＳＡ（ＳＡ情報３）より、プロトコル種別とＭＡＣアドレスをキーに自装置のＳＡＤを検索する。その結果、ＳＡ情報２が重複するＳＡ情報として抽出され、削除される（Ｓ１２４４）。
【０１０５】
第１〜第３の実施形態同様、この時点において、それぞれの装置のＳＡＤに保持されているＳＡ情報は、共にＳＡ情報３のみであり、一致している。すなわち、不要なＳＡ情報であるＳＡ情報１およびＳＡ情報２はＩＰｓｅｃ通信装置１のＳＡＤから削除済であり、存在しない。
【０１０６】
ここで更に、ＩＰｓｅｃ通信装置２に障害が発生し、ＳＡＤ内のＳＡ情報３が消去される（Ｓ１２５１〜Ｓ１２５２）。この状態から新たなＳＡ情報４を生成しようとした場合でも、ＩＰｓｅｃ通信装置１のＳＡＤに空きがあるため、ＳＡ確立シーケンス４を完了することができる（Ｓ１２６１〜Ｓ１２６３）。
【０１０７】
このように第４の実施形態に係るＩＰｓｅｃ通信装置は、ＳＡ確立が完了した後に自装置のＳＡＤにおけるＳＡ情報の重複確認を行うため、第１〜第３の実施形態同様に、突発的にＳＡ情報が消失してしまうというような障害の際においても、不要なＳＡ情報の残留を防ぐことができる。また、第３の実施形態同様に、ＳＡ情報の重複確認処理にパケットの送信を必要としないため、第１の実施形態および第２の実施形態に比べて通信量を削減することができる。
【０１０８】
さらに、第４の実施形態に係るＩＰｓｅｃ通信装置は、第３の実施形態に係るＩＰｓｅｃ装置が削除できない不要なＳＡ情報をも削除することもできる。例えば、障害が発生した前後でＩＰｓｅｃ通信装置２のネットワークアドレスが変更されたような場合も、ＩＰｓｅｃ通信装置１に残留する不要なＳＡ情報を検出できる。その理由は、ネットワークアドレスが変更されてもＭＡＣアドレスは変化しないため、重複するＳＡ情報として不要なＳＡ情報を抽出・削除できるからである。
【０１０９】
第３の実施形態においてはプロトコル種別とネットワークアドレスが、第４の実施形態においてはプロトコル種別とＭＡＣアドレスが、ＳＡ重複確認処理における検索キーとして使用された。しかし、これら検索キーは上記の組合せに限定されない。例えば、プロトコル種別とネットワークアドレスとＭＡＣアドレスを検索キーとして、それらが全て一致するＳＡ情報を抽出してもよい。あるいは、プロトコル種別が一致し、かつ、ネットワークアドレスとＭＡＣアドレスのいずれかが一致するＳＡ情報を抽出してもよい。
【符号の説明】
【０１１０】
１，２          ＩＰｓｅｃ通信装置
３              通信ネットワーク
１０，２０      ＩＰｓｅｃ処理部
１１，２１      パケット送受信処理部
１２            制御処理部
１３            ネットワークインタフェース部
１０１，２０１  ＳＡＤ
１０２          パケット処理部
１０３          暗号処理部
１０４，２０４  不要ＳＡ情報処理部
１０４１        ＳＡ情報存在確認処理部
１０４２        ＳＡ情報存在確認応答処理部
１０４３        ＳＡ情報削除処理部
１０４４        ＳＡ情報重複確認処理部
【図１】
2009219106.tif 000003
【図２】
2009219106.tif 000004
【図３】
2009219106.tif 000005
【図４】
2009219106.tif 000006
【図５】
2009219106.tif 000007
【図６】
2009219106.tif 000008
【図７】
2009219106.tif 000009
【図８】
2009219106.tif 000010
【図９】
2009219106.tif 000011
【図１０】
2009219106.tif 000012
【図１１】
2009219106.tif 000013
【図１２】
2009219106.tif 000014
【図１３】
2009219106.tif 000015
【図１４】
2009219106.tif 000016
【図１５】
2009219106.tif 000017
【図１６】
2009219106.tif 000018
【図１７】
2009219106.tif 000019
【図１８】
2009219106.tif 000020