(57)【要約】【課題】  暗号化や復号、認証等を行う通信装置において、メモリを有効利用し、処理負荷を軽減させる。【解決手段】  通信装置は、所定のプロトコルにより、他の通信装置との通信における暗号化処理または認証処理を行うための第１の鍵を記憶部に記憶し、第１の鍵を記憶している場合に、所定のプロトコルによる暗号化処理または認証処理を行うための第２の鍵を用いた通信を他の通信装置と行い、他の通信装置と第２の鍵を用いた通信を行ったことに応じて、第１の鍵を記憶部から削除するまでの期間を設定し、設定された期間が経過したことに応じて、記憶部から第１の鍵を削除する。【選択図】  図１３
2016015697.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
所定のプロトコルにより、他の通信装置との通信における暗号化処理または認証処理を行うための第１の鍵を記憶する記憶手段と、
前記記憶手段が前記第１の鍵を記憶している場合に、前記所定のプロトコルによる暗号化処理または認証処理を行うための第２の鍵を用いた通信を前記他の通信装置と行う通信手段と、
前記他の通信装置と前記第２の鍵を用いた通信を行ったことに応じて、前記第１の鍵を前記記憶手段から削除するまでの期間を設定する設定手段と、
前記期間が経過したことに応じて、前記記憶手段から前記第１の鍵を削除する削除手段と、
を有することを特徴とする通信装置。
【請求項２】
前記第１の鍵を更新する期限が切れた場合に、前記他の通信装置と前記第２の鍵を共有する共有手段を更に有することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記共有手段は、ＩＫＥ（Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）によって前記第２の鍵を共有することを特徴とする請求項２に記載の通信装置。
【請求項４】
前記記憶手段は、前記共有手段により前記第２の鍵が共有された場合、前記第２の鍵と前記第１の鍵とを関連付けて記憶することを特徴とする請求項２または３に記載の通信装置。
【請求項５】
前記記憶手段は、前記設定手段による設定が行われると、前記第２の鍵と前記第１の鍵との関連付けを解除することを特徴とする請求項４に記載の通信装置。
【請求項６】
前記設定手段は、前記他の通信装置と前記第２の鍵を用いた通信における前記暗号化処理または前記認証処理に成功した場合、前記第１の鍵を前記記憶手段から削除するまでの期間を設定することを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
前記設定手段は、前記第１の鍵を前記記憶手段から削除するまでの期間を所定の閾値以上となるように設定することを特徴とする請求項１から６のいずれか１項に記載の通信装置。
【請求項８】
前記所定の閾値は、前記通信装置において予め定められた値であることを特徴とする請求項７に記載の通信装置。
【請求項９】
前記所定の閾値は、前記他の通信装置の前記通信装置との間のＲＴＴ（ラウンドトリップタイム）であることを特徴とする請求項７に記載の通信装置。
【請求項１０】
前記所定のプロトコルは、ＩＰＳｅｃ（Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）であることを特徴とする請求項１から９のいずれか１項に記載の通信装置。
【請求項１１】
前記第１の鍵および前記第２の鍵は、ＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）に含まれる鍵であることを特徴とする請求項１０に記載の通信装置。
【請求項１２】
通信装置の制御方法であって、
所定のプロトコルにより、他の通信装置との通信における暗号化処理または認証処理を行うための第１の鍵を記憶部に記憶させる記憶工程と、
前記記憶部が前記第１の鍵を記憶している場合に、前記所定のプロトコルによる暗号化処理または認証処理を行うための第２の鍵を用いた通信を前記他の通信装置と行う通信工程と、
前記他の通信装置と前記第２の鍵を用いた通信を行ったことに応じて、前記第１の鍵を前記記憶部から削除するまでの期間を設定する設定工程と、
前記期間が経過したことに応じて、前記記憶部から前記第１の鍵を削除する削除工程と、
を有することを特徴とする制御方法。
【請求項１３】
請求項１から１１のいずれか１項に記載の通信装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、他の通信装置との間で通信されるパケットの暗号・復号または認証に用いる鍵を更新する通信装置、通信装置の制御方法、および、プログラムに関する。
【背景技術】
【０００２】
近年、ネットワークを介したデータの送受信における、セキュリティ確保の必要性が高まっている。ＩＰネットワーク上を流れるＩＰパケットのセキュリティを確保するためのプロトコルとして、ＩＰＳｅｃ（ＩＰ  Ｓｅｃｕｒｉｔｙ  Ｐｒｏｔｏｃｏｌ）がある（特許文献１）。ＩＰＳｅｃで用いられる暗号鍵や認証鍵等はＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）として管理される。ＩＰＳｅｃに準拠したパケットは、ＳＡによって管理されている暗号鍵や認証鍵等を用いて、暗号化や復号、認証等が行われる。
【０００３】
ＳＡは、ソフト有効期限（更新期限）ごとに定期的に旧ＳＡから新ＳＡに更新される。一方、更新前に利用されていた旧ＳＡは、通信相手からＳＡの削除指示を受信するか、ハード有効期限（削除期限）が来るまで保持される。ハード有効期限を設けることで、旧ＳＡを利用したパケットが遅延して届く場合や、通信相手が旧ＳＡから新ＳＡに移行するのに時間がかかった場合であっても、パケットの受信に失敗する可能性を低減させている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３５２５００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、通信相手からのＳＡの削除指示がネットワークにおいて消失してしまうと、通信装置は当該削除指示を受信することができず、ハード有効期限が来るまで削除できなくなってしまう。また、ハード有効期限は、ユーザが任意の値を設定できるので、更新された後、長時間にわたり旧ＳＡが削除されずにメモリに残ってしまう場合がある。旧ＳＡが削除されずに長時間メモリに残ってしまうと、メモリ空間が圧迫され、また、ＳＡを検索する際の処理負荷が高まってしまうという課題がある。
【０００６】
本発明は、上記課題に鑑みてなされたものであり、暗号化や復号、認証等を行う通信装置において、メモリを有効利用し、処理負荷を軽減させることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するための一手段として、本発明の通信手段は以下の構成を有する。すなわち、所定のプロトコルにより、他の通信装置との通信における暗号化処理または認証処理を行うための第１の鍵を記憶する記憶手段と、前記記憶手段が前記第１の鍵を記憶している場合に、前記所定のプロトコルによる暗号化処理または認証処理を行うための第２の鍵を用いた通信を前記他の通信装置と行う通信手段と、前記他の通信装置と前記第２の鍵を用いた通信を行ったことに応じて、前記第１の鍵を前記記憶手段から削除するまでの期間を設定する設定手段と、前記期間が経過したことに応じて、前記記憶手段から前記第１の鍵を削除する削除手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、暗号化や復号、認証等を行う通信装置において、メモリを有効利用し、処理負荷を軽減させることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】実施形態１による通信装置１０１のハードウェア構成図。
【図２】実施形態１による通信装置１０１のソフトウェアブロック図。
【図３】実施形態１による通信装置１０１のパケット受信処理のフローチャート。
【図４】実施形態１による通信装置１０１のＳＡ要求処理のフローチャート。
【図５】実施形態１による通信装置１０１のパケット送信処理のフローチャート。
【図６】実施形態２による通信装置１０１のソフトウェアブロック図。
【図７】実施形態２による通信装置１０１のパケット送信処理のフローチャート。
【図８】通信装置２による通信装置１０１のＳＡ折衝要求処理のフローチャート。
【図９】実施形態２による通信装置１０１のパケット受信処理のフローチャート
【図１０】実施形態２による通信装置１０１のＳＡ登録処理のフローチャート。
【図１１】実施形態２による通信装置１０１の不要ＳＡ削除設定処理のフローチャート。
【図１２】実施形態３による通信装置１０１のソフトウェアブロック図。
【図１３】実施形態３による通信装置１０１のパケット受信処理のフローチャート。
【図１４】実施形態３による通信装置１０１のパケット送信処理のフローチャート。
【図１５】実施形態３による通信装置１０１の不要ＳＡ削除タイマ設定処理のフローチャート。
【発明を実施するための形態】
【００１０】
＜実施形態１＞
本実施形態では、通信装置１０１が不図示の他の通信装置とＩＰＳｅｃにより暗号化されたデータパケット（以下、パケット）を通信する場合について説明する。ここで、ＩＰＳｅｃとは、Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌの略である。
【００１１】
図１に、本実施形態による通信装置１０１のハードウェア構成を示す。主プロセッサ１１１はデータの表示（投影を含む）や印刷等のアプリケーション処理を行う。主プロセッサ１１１は、後述するサブプロセッサ１２１に対して、不図示の他の通信装置へのデータ送信指示も行う。主メモリ１１２はアプリケーション処理に用いるためのデータや、他の通信装置とのデータ通信に用いる各種パラメータ、および、後述する各種フローチャートを実現するためのプログラム等を記憶する。ＴＯＥ（ＴＣＰ／ＩＰオフロードエンジン）１１３は、他の通信装置とデータ通信するためのプロトコル処理を行う。主プロセッサ１１１、主メモリ１１２、および、ＴＯＥ１１３は、バス１１４により接続されている。
【００１２】
次に、ＴＯＥ１１３の内部構成について説明する。サブプロセッサ１２１は他の通信装置とのデータ通信のための各種プロトコル処理を行う。検索装置１２２は共有メモリ１２３の中から、他の通信装置とのデータ通信に必要な各種情報を検索する。検索装置１２２の動作については後述する。共有メモリ１２３は、他の通信装置とのデータ通信に必要な各種情報や、通信するデータを記憶する。鍵管理部１２４は、他の通信装置とのデータ通信に用いる暗号鍵や認証鍵等を管理する。なお、暗号鍵や認証鍵は共有メモリ１２３に記憶（格納）されているものとする。暗号・復号器１２５は、鍵管理部１２４により管理されている暗号鍵を用いて、他の通信装置との間で通信されるデータの暗号化および復号化を行う。
【００１３】
データパス制御部１２６は、共有メモリ１２３とＭＡＣ部１２７との間のデータ転送（ＤＭＡ転送）を制御する。ＭＡＣ部１２７は、ＯＳＩ参照モデルのデータリンク層（第２層）の下位副層に相当するＭＡＣ層のプロトコル処理を行う。ＰＨＹ部１２８は、ＯＳＩ参照モデルの第１層に位置するＰＨＹ（物理）層のプロトコル処理と電気信号の処理を行う。バス１２９は、ＴＯＥ１１３内部の各種ハードウェアを接続している。バスブリッジ１３０は、バス１１４およびバス１２９を接続している。ネットワーク１３１は、通信装置１０１と不図示の他の通信装置とを接続している。なお、ネットワーク１３１は有線でも無線でもよい。
【００１４】
図２に、本実施形態による通信装置１０１のソフトウェアブロック図を示す。図２に示される複数のソフトウェアブロックは、主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。なお、図２に示される複数のソフトウェアブロックを１つのソフトウェアブロックとして構成してもよいし、１つのソフトウェアブロックを複数のソフトウェアブロックとして構成してもよい。また、図２に示されるソフトウェアブロックの一部または全部をハードウェアとして構成してもよい。
【００１５】
検索部２０１は、パケット（送信パケットもしくは受信パケット）に対応するＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）（以下、対応ＳＡ）を検索する。ここで、検索部２０１は、当該受信パケットの送信元である他の通信装置のＩＰアドレスとポート番号、通信装置１０１自身のＩＰアドレスとポート番号、プロトコル種別、ＳＰＩ等を検索キーとして、共有メモリ１２３の中から対応ＳＡを検索する。また、ＳＰＩとはＳｅｃｕｒｉｔｙ  Ｐａｒａｍｅｔｅｒ  Ｉｎｄｅｘの略であり、ＳＡで用いられる暗号鍵や認証鍵を識別するための情報である。また、ＳＡでは、他の通信装置との暗号通信で用いる暗号鍵情報や暗号化アルゴリズム、認証鍵や認証アルゴリズムなどの暗号化通信パラメータが管理されている。ただし、ＳＡに暗号鍵と暗号化アルゴリズムの情報を含まないようにしてもよいし、認証鍵と認証アルゴリズムの情報を含まないようにしてもよい。
【００１６】
破棄部２０２は、パケット（送信パケットもしくは受信パケット）を破棄する。判定部２０３は、検索部２０１により検出されたＳＡに旧ＳＡの情報が関連付けられているか否かを判定する。なお、旧ＳＡについての説明は後述する。削除部２０４は、ＳＡを共有メモリ１２３から削除する。
【００１７】
ＩＰｓｅｃ処理部２０５は、受信パケットに対して所定のＩＰｓｅｃ処理を施す。具体的には、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている暗号鍵情報および暗号化アルゴリズムに従って受信パケットの復号を行う。また、ＩＰＳｅｃ処理部２０５は、対応ＳＡにおいて管理されている認証鍵および認証アルゴリズムに従って受信パケットの認証を行う。これにより、受信パケットの復号に失敗した場合や、受信パケットの認証に失敗した場合には、破棄部２０２は当該受信パケットを破棄する。なお、ＩＰｓｅｃ処理部２０５は、受信パケットに対して、復号もしくは認証のいずれか一方のみを行うようにしてもよい。
【００１８】
更に、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている暗号鍵情報および暗号化アルゴリズムに従って送信パケットを暗号化する。また、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている認証鍵および認証アルゴリズムに従って送信パケットの認証情報を作成して当該送信パケットに付加する。なお、ＩＰｓｅｃ処理部２０５は、送信パケットに対して、暗号化もしくは認証情報の付加のいずれか一方のみを行うようにしてもよい。
【００１９】
期限管理部２０６は、対応ＳＡのソフト有効期限（更新期限）、および、ハード有効期限（削除期限）が切れているか否かを判定する。なお、ここでは、ソフト有効期限およびハード有効期限は、通信装置１０１において予め定められている所定の値とする。しかし、これに限らず、これらの有効期限は、通信装置１０１の通信相手である他の通信装置において予め定められている所定の値としてもよい。また、通信装置１０１および他の通信装置の各々において定められている値のうち小さい方、または、大きい方を有効期限としてもよい。
【００２０】
処理判定部２１１は、新しいＳＡの要求処理を既に実行中か否かを判定する。フラグ部２１２は、新しいＳＡの要求処理を既に実行していることを示すフラグの管理を行う。ＩＫＥ部２１３は、Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅプロトコルに従って、新たなＳＡを取得するための処理を他の通信装置との間で行う。ＳＡ判定部２１４は、新たなＳＡに対応する旧ＳＡ、即ち、ソフト有効期限が切れたＳＡが共有メモリ１２３に記憶されているかを判定する。記憶部２１５は、ＩＫＥ部２１３により新たに取得されたＳＡを共有メモリ１２３に記憶する。
【００２１】
図３に、本実施形態による通信装置１０１が不図示の他の通信装置からＩＰｓｅｃに準拠したパケットを受信する処理のフローチャートを示す。図３に示すフローチャートの各処理は、通信装置１０１が主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。
【００２２】
まず、検索部２０１は、他の通信装置から受信したパケット（以下、受信パケット）に対応するＳＡを検索する（Ｓ３０１）。ここでは、検索部２０１は、ＳＰＩを参照することで新ＳＡと旧ＳＡとを区別して検索する。即ち、検索部２０１は、新ＳＡで管理されている暗号鍵や認証鍵を用いて復号や認証をすべきパケットを受信したのか、旧ＳＡで管理されている暗号鍵や認証鍵を用いて復号や認証をすべきパケットを受信したのか、を判別することができる。
【００２３】
対応ＳＡが検出されなかった場合（Ｓ３０２のＮＯ）、破棄部２０２は、受信パケットを破棄する（Ｓ３０３）。一方、対応ＳＡが検出された場合（Ｓ３０２のＹＥＳ）、判定部２０３は、検出された対応ＳＡに旧ＳＡの情報が関連付けられているか否かを判定する（Ｓ３０４）。旧ＳＡの情報が関連付けられていない場合（Ｓ３０４のＮＯ）、処理はＳ３０６に進む。一方、旧ＳＡの情報が関連付けられている場合（Ｓ３０４のＹＥＳ）、削除部２０４は、当該旧ＳＡを共有メモリ１２３から削除して（Ｓ３０５）、処理はＳ３０６に進む。
【００２４】
Ｓ３０６において、ＩＰｓｅｃ処理部２０５は、受信パケットに対して所定のＩＰｓｅｃ処理を施す。具体的には、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている暗号鍵情報および暗号化アルゴリズムに従って受信パケットの復号を行う。また、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている認証鍵および認証アルゴリズムに従って受信パケットの認証を行う。これにより、受信パケットの復号に失敗した場合や、受信パケットの認証に失敗した場合には、破棄部２０２は当該受信パケットを破棄する。なお、ＩＰｓｅｃ処理部２０５は、復号もしくは認証のいずれか一方のみを行うようにしてもよい。
【００２５】
なお、本実施形態では、検索部２０１が対応ＳＡを検出し、そのＳＡに旧ＳＡ情報が付加されていた場合に削除部２０４が当該旧ＳＡを削除した。他の例として、ＩＰｓｅｃ処理の結果、対応ＳＡに基づいたＩＰｓｅｃ処理に成功した場合であって、対応ＳＡに旧ＳＡ情報が付加されていた場合に削除部２０４が当該旧ＳＡを削除するようにしてもよい。
【００２６】
次に、期限管理部２０６は、対応ＳＡのソフト有効期限（更新期限）が切れているか否かを判定する（Ｓ３０７）。ソフト有効期限が切れている場合（Ｓ３０７のＹＥＳ）、対応ＳＡの更新処理が行われる（Ｓ３０８）。具体的には、新たなＳＡの要求処理が行われる。なお、この要求処理については、図４を用いて後述する。
【００２７】
ここで、有効期限は時間で設定されてもよいし、バイト数で設定されてもよい。時間により有効期限が設定される場合、ＳＡが取得されてからの時間がタイマ（不図示）により計測され、予め設定された有効期限よりも長い時間が計測された場合に有効期限が切れたものと判定される。また、バイト数により有効期限が設定される場合、当該ＳＡにより通信したパケットのバイト数が加算器（不図示）により加算され、所定バイト数に達した場合に有効期限が切れたものと判定される。
【００２８】
続いて、期限管理部２０６は、対応ＳＡのハード有効期限（削除期限）が切れているか否かを判定する（Ｓ３０９）。ハード有効期限が切れている場合（Ｓ３０９のＹＥＳ）、削除部２０４は、対応ＳＡを共有メモリ１２３から削除する（Ｓ３１０）。ハード有効期限が切れていない場合（Ｓ３０９のＮＯ）またはＳ３１０で対応ＳＡが削除された場合、図３に示すＩＰｓｅｃパケット受信処理は終了する。
【００２９】
次に、図３のＳ３０８で行われるＳＡ要求処理について、図４を用いて説明する。図４は、ＳＡ要求処理のフローチャートである。処理判定部２１１は、ソフト有効期限の切れたＳＡの代わりとなる新しいＳＡの要求処理を既に実行中か否かを判定する（Ｓ４０１）。実行中である場合（Ｓ４０１のＹＥＳ）、図４に示す処理を終了する。一方、実行中ではない場合（Ｓ４０１のＮＯ）、フラグ部２１２は、新しいＳＡの要求処理を既に実行していることを示すフラグを立てる（Ｓ４０２）。本実施形態では、当該フラグとして仮ＳＡを共有メモリ１２３に記憶させ、Ｓ４０１の判定は、仮ＳＡが共有メモリ１２３に記憶されているか否かにより行われるものとする。なお、処理判定部２１１とフラグ部２１２によるＳ４０１とＳ４０２の処理は、仮ＳＡ以外のフラグを用いた処理であってもよい。
【００３０】
そして、ＩＫＥ部２１３は、所定プロトコルに従って新たなＳＡを取得して他の通信装置と共有するための処理を該他の通信装置との間で行う（Ｓ４０３）。ＩＫＥ部２１３により新たなＳＡが取得されると、ＳＡ判定部２１４は、新たなＳＡに対応する旧ＳＡ、即ち、ソフト有効期限が切れたＳＡが共有メモリ１２３に記憶されているかを判定する。判定の結果、旧ＳＡが記憶されている場合には（Ｓ４０４のＹＥＳ）、記憶部２１５はＳ４０３において新たに取得したＳＡに旧ＳＡの情報を関連付けて共有メモリ１２３に記憶する（Ｓ４０５）。また、旧ＳＡが記憶されていない場合には（Ｓ４０４のＮＯ）、記憶部２１５はＳ４０３において新たに取得したＳＡを共有メモリ１２３に記憶する。この場合、新たに取得したＳＡに対応する旧ＳＡが存在しないので、関連付けは行われない。
【００３１】
その後、フラグ部２１２は、新しいＳＡの要求処理を既に実行していることを示すフラグを削除する（Ｓ４０７）。本実施形態では、フラグ部２１２は、共有メモリ１２３に記憶させていた仮ＳＡを削除する。このようにして、新たなＳＡと旧ＳＡとが関連付けられて共有メモリ１２３に記憶され、図３におけるＳ３０４の判定に用いられることになる。
【００３２】
図５に、本実施形態による通信装置１０１が不図示の他の通信装置にＩＰＳｅｃに準拠したパケットを送信する処理のフローチャートを示す。図５に示すフローチャートの各処理は、通信装置１０１が主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。
【００３３】
まず、検索部２０１は、他の通信装置に送信するパケット（以下、送信パケット）に対応するＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）を検索する（Ｓ５０１）。対応ＳＡが検出されなかった場合（Ｓ５０２のＮＯ）、図４に示す新たなＳＡの要求処理が行われる（Ｓ５０３）。更に、破棄部２０２は送信パケットを破棄して（Ｓ５０４）、図５に示すＩＰｓｅｃパケット送信処理は終了する。
【００３４】
一方、対応ＳＡが検出された場合（Ｓ５０２のＹＥＳ）、判定部２０３は、検出された対応ＳＡに旧ＳＡの情報が関連付けられているか否かを判定する（Ｓ５０５）。旧ＳＡの情報が関連付けられていない場合（Ｓ５０５のＮＯ）、処理はＳ５０７に進む。一方、旧ＳＡの情報が関連付けられている場合（Ｓ５０５のＹＥＳ）、削除部２０４は当該旧ＳＡを共有メモリ１２３から削除して（Ｓ５０６）、処理はＳ５０７に進む。
【００３５】
Ｓ５０７において、ＩＰｓｅｃ処理部２０５は、送信パケットに対して所定のＩＰｓｅｃ処理を施す。具体的には、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている暗号鍵情報および暗号化アルゴリズムに従って送信パケットを暗号化する。また、ＩＰｓｅｃ処理部２０５は、対応ＳＡにおいて管理されている認証鍵および認証アルゴリズムに従って送信パケットの認証情報を作成して、当該認証情報を当該送信パケットに付加する。なお、ＩＰｓｅｃ処理部２０５は、暗号化もしくは認証情報の付加のいずれか一方のみを行うようにしてもよい。
【００３６】
次に、期限管理部２０６は、対応ＳＡのソフト有効期限（更新期限）が切れているか否かを判定する（Ｓ５０８）。ソフト有効期限が切れている場合（Ｓ５０８のＹＥＳ）、対応ＳＡの更新処理が行われる（Ｓ５０９）。具体的には、図４に示す新たなＳＡの要求処理が行われ、該新たなＳＡは通信相手と共有される。続いて、期限管理部２０６は、対応ＳＡのハード有効期限（削除期限）が切れているか否かを判定する（Ｓ５１０）。ハード有効期限が切れている場合（Ｓ５１０のＹＥＳ）、削除部２０４は、対応ＳＡを共有メモリ１２３から削除する（Ｓ５１１）。ハード有効期限が切れていない場合（Ｓ５１０のＮＯ）またはＳ３１０で対応ＳＡが削除された場合、図５に示すＩＰｓｅｃパケット送信処理は終了する。
【００３７】
このように、本実施形態による通信装置は、ソフト有効期限が切れた旧ＳＡに対応する新たなＳＡを取得してから、新たなＳＡを利用したパケットを他の通信装置から受信するまで旧ＳＡを記憶部に記憶しておく。従って、本実施形態による通信装置は、新たなＳＡを取得した後に、他の通信装置から旧ＳＡを利用したパケットを受信した場合であっても、記憶されている旧ＳＡを利用して当該パケットを正常に受信することができる。即ち、他の通信装置が旧ＳＡを利用したパケット送信から、新たなＳＡを利用したパケット送信までの切替えに時間がかかったとしても、パケットをロストする可能性を低下させることができる。
【００３８】
また、本実施形態による通信装置は、ＩＰｓｅｃに対応したパケットを送信する際に、当該パケット送信に利用するＳＡに関連付けられた旧ＳＡが存在するか否かを判定し、存在している場合には当該旧ＳＡを削除する。なお、これに限らず、通信装置が送信時に用いる新たなＳＡを取得したことに応じて、当該新ＳＡに対応する旧ＳＡを削除するようにしてもよい。これにより、本実施形態による通信装置は、必要としない旧ＳＡを早く削除することができるので、メモリをより有効に活用することができる。
【００３９】
＜実施形態２＞
次に、実施形態２について説明する。本実施形態による通信装置１０１のハードウェア構成（図１）は実施形態１と同様である。図６に、本実施形態による通信装置１０１のソフトウェアブロック図を示す。図６に示される複数のソフトウェアブロックは、主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。なお、図６に示される複数のソフトウェアブロックを１つのソフトウェアブロックとして構成してもよいし、１つのソフトウェアブロックを複数のソフトウェアブロックとして構成してもよい。また、図６に示されるソフトウェアブロックの一部または全部をハードウェアとして構成してもよい。なお、本実施形態による通信装置１０１は、図２に示した実施形態１による通信装置１０１のソフトウェアブロックを有してもよい。
【００４０】
ネットワークプロトコル処理部６０４は、ＴＣＰ、ＵＤＰ、ＩＰ等のネットワークプロトコル処理を行う。ネットワークインタフェース部６０３を介して受信されたパケットに対し、ネットワークプロトコル処理部６０４でＭＡＣ、ＩＰプロトコル処理が行われ、ＩＰｓｅｃ処理部６０７でＩＰｓｅｃ受信処理が行われる。ＩＰｓｅｃ処理部６０７でＩＰｓｅｃ受信処理が完了すると、再びネットワークプロトコル処理部６０４がＴＣＰ、ＵＤＰ等のプロトコル処理を行う。その後、アプリケーション処理部６０５がアプリケーション処理を行う。また、受信パケットがＩＫＥパケットであった場合は、ＩＫＥ処理部６０６がＩＫＥ処理を行う。
【００４１】
アプリケーション処理部６０５及びＩＫＥ処理部６０６が通信相手へパケットを送信する場合は、ネットワークプロトコル処理部６０４に送信要求を行う。ネットワークプロトコル処理部６０４は、当該送信要求に応じて、ＴＣＰ、ＵＤＰ、ＩＰ等のプロトコル処理を行う。その後、ＩＰｓｅｃ処理部６０７がＩＰｓｅｃ処理を行い、ネットワークプロトコル処理部６０４がＩＰ、ＭＡＣプロトコル処理を行い、ネットワークインタフェース部６０３を介してパケットが送信される。
【００４２】
ＩＰｓｅｃプロトコル処理部６１２は、パケットの送受信におけるＩＰｓｅｃプロトコル処理を行い、ＥＳＰ、ＡＨといったＩＰｓｅｃプロトコル処理を行う。また、ＩＰｓｅｃプロトコル処理部６１２は、送受信パケットのポリシーを特定するため、ＳＰ管理部６０９に登録されたＳＰの検索要求を行う。ここで、ＳＰとはＳｅｃｕｒｉｔｙ  Ｐｏｌｉｃｙの略である。また、ＩＰｓｅｃプロトコル処理部６１２は、暗号化処理・認証処理で必要となるＳＡを特定するため、ＳＡ管理部６１０に対して登録されたＳＡの検索要求を行う。また、ＩＰｓｅｃプロトコル処理部６１２は、バイト数による有効期限のカウントを行い、ＳＡ管理部６１０に対して有効期限カウントの更新要求を行う。
【００４３】
暗号・認証処理部６０８は、ＳＡの暗号化アルゴリズム、暗号鍵、認証アルゴリズム、認証鍵等に基づいて、暗号、認証処理を行う。ＳＰ、ＳＡテーブル更新管理部６１１は、ＩＫＥ処理部６０６からのＳＰ、ＳＡの登録、更新、削除、参照処理を制御し、ＳＡ管理部６１０、ＳＰ管理部６０９に対して処理要求を行う。
【００４４】
パケット送信時にＩＰｓｅｃプロトコル処理部６１２がＳＡ管理部６１０に対してＳＡ検索要求を行った結果、該当するＳＡがなかった場合は、ＩＰｓｅｃプロトコル処理部６１２はＳＰ、ＳＡテーブル更新管理部６１１に対してＳＡ折衝要求を行う。ＳＰ、ＳＡテーブル更新管理部６１１は、ＳＡ折衝要求を受け付け、ＩＫＥ処理部６０６に対して通知を行う。また、ＳＰ、ＳＡテーブル更新管理部６１１は、ＩＰｓｅｃプロトコル処理部６１２によりソフト有効期限切れの通知を受けてＳＡ折衝要求を受け付け、ＩＫＥ処理部６０６に対して通知を行う。
【００４５】
タイマ部６１３は、ＳＡ管理部６１０、ＳＰ、ＳＡテーブル更新管理部６１１からの設定により指定された時間が経過したこと通知する。ＳＡ管理部６１０は、ＳＡＤを保持し、要求された処理に基づいてＳＡＤに対する操作を行い、処理結果を返す。また、ＳＰ管理部６０９は、ＳＰＤを保持し、要求された処理に基づいて操作を行い、処理結果を返す。なお、ＳＡＤとは、Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ  Ｄａｔａｂｅｓｅの略であり、ＳＡを管理・保持するデータベースのことである。また、ＳＰＤとは、Ｓｅｃｕｒｉｔｙ  Ｐｏｌｉｃｙ  Ｄａｔａｂａｓｅの略であり、ＳＰを管理・保持するデータベースのことである。
【００４６】
次に、通信装置１０１のＩＰｓｅｃパケット送信処理フローについて説明する。図７に、本実施形態による通信装置１０１が不図示の他の通信装置にパケットを送信する処理のフローチャートを示す。図７に示すフローチャートの各処理は、通信装置１０１が主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。
【００４７】
まず、アプリケーション処理部６０５は通信相手へのパケット送信処理を行い、ネットワークプロトコル処理部６０４に対して送信要求を行う（Ｓ７０１）。なお、ＩＫＥ処理部６０６がＩＫＥパケットを送信する際は、ＩＫＥ処理部６０６からネットワークプロトコル処理部６０４に対して送信要求が行われる。次に、ネットワークプロトコル処理部６０４は、アプリケーション処理部６０５よりデータの送信要求を受け付ける。ネットワークプロトコル処理部６０４は、アプリケーション処理部６０５により指定されたＴＣＰまたはＵＤＰのトランスポート層プロトコル処理およびＩＰプロトコル処理を行い、ＩＰパケットを作成する（Ｓ７０２）。次に、ネットワークプロトコル処理部６０４は、作成したＩＰパケットをＩＰｓｅｃ処理部６０７へ通知する。
【００４８】
ＩＰｓｅｃ処理部６０７は、送信するＩＰパケットを受け取る。すると、ＩＰｓｅｃプロトコル処理部６１２がＩＰパケットに含まれる、ＩＰアドレスやトランスポート層プロトコル種別、ポート番号等のパケット情報に基づいて、ＳＰ管理部６０９に対してＳＰ検索要求を行う（Ｓ７０３）。ＳＰ検索要求を受け付けたＳＰ管理部６０９は、ＳＰＤに指定パケット情報に該当するＳＰが登録されているかを検索し、検索結果をＩＰｓｅｃプロトコル処理部６１２に通知する。
【００４９】
ＩＰｓｅｃプロトコル処理部６１２は、ＳＰ管理部６０９から通知された検索結果を判定する（Ｓ７０４）。該当するＳＰがあり、かつ、該ＳＰに指定されたポリシーが「ＩＰｓｅｃ適用（Ａｐｐｌｙ  ＩＰｓｅｃ）」であった場合は（Ｓ７０４のＹＥＳ）、処理はＳ７０５へ進む。該当するＳＰがなかった場合もしくは、該当するＳＰに指定されたポリシーがＩＰｓｅｃ適用以外であった場合は（Ｓ７０４のＮＯ）、処理はＳ７１６へ進む。
【００５０】
Ｓ７０４において該当するＳＰがなかった場合は、Ｓ７１６において、ＩＰｓｅｃプロトコル処理部６１２は、暗号通信のポリシーを確認する。ポリシーが「破棄（Ｄｉｓｃａｒｄ）」であれば（Ｓ７１６のＹＥＳ）、ＩＰｓｅｃプロトコル処理部６１２は、パケットを破棄して（Ｓ７１８）、処理は終了する。一方、ポリシーが「通過（Ｂｙｐａｓｓ  ＩＰｓｅｃ）」であった場合は（Ｓ７１６のＮＯ）、処理はＳ７１４へ進む。また、Ｓ７０４において該当するＳＰがあった場合は、ＩＰｓｅｃプロトコル処理部６１２は、該ＳＰのポリシーを確認し、ポリシーが破棄であった場合は（Ｓ７１６のＹＥＳ）、パケットを破棄して（Ｓ７１８）、処理は終了する。ポリシーが通過であった場合は（Ｓ７１６のＮＯ）、処理はＳ７１４へ進む。
【００５１】
Ｓ７０５において、ＩＰｓｅｃプロトコル処理部６１２は、ＳＰに関連づけられたＳＡの情報とパケット情報に基づいて、ＳＡ管理部６１０に対してＳＡ検索要求を行う。ＳＡ検索要求を受け付けたＳＡ管理部６１０は、ＳＡＤに、指定されたＳＰに関連付けられたＳＡ情報とパケット情報に該当するＳＡが登録されているかを検索し、検索結果をＩＰｓｅｃプロトコル処理部６１２に通知する。
【００５２】
次に、ＩＰｓｅｃプロトコル処理部６１２は、ＳＡ管理部６１０から通知された検索結果を判定する（Ｓ７０６）。該当するＳＡがあった場合は（Ｓ７０６のＹＥＳ）、そのＳＡを特定して、処理はＳ７０７へ進む。該当するＳＡがなかった場合は（Ｓ７０６のＮＯ）、処理はＳ７１７へ進む。Ｓ７１７において、ＩＰｓｅｃ処理部６０７は、ＳＡ折衝要求処理を行う。
【００５３】
ここで、Ｓ７１７のＳＡ折衝要求処理について、図８を用いて説明する。図８は、ＳＡ折衝要求処理のフローチャートである。ＩＰｓｅｃプロトコル処理部６１２は、ＳＡ折衝要求をＳＰ、ＳＡテーブル更新管理部６１１に対して行う。ＳＰ、ＳＡテーブル更新管理部６１１は、ＳＡ折衝要求を受け付けると、すでにＳＡ要求を行っているかを確認するため仮ＳＡを検索する（Ｓ８０１）。なお、ＳＰ、ＳＡテーブル更新管理部６１１は、仮ＳＡはＳＡ要求を行う際に作成して保持し、ＳＡ折衝が完了した際に削除する。また一定時間経過してもＳＡ要求が完了しない場合はタイムアウトし仮ＳＡを削除する。なお、ＳＰ、ＳＡテーブル更新管理部６１１は、ＳＡ要求を行っているかを確認できれば、仮ＳＡを用いる以外の手段をとってもよい。
【００５４】
検索の結果、該当する仮ＳＡが登録されていた場合は（Ｓ８０２のＹＥＳ）、ＩＰｓｅｃプロトコル処理部６１２は、ＳＡ要求がすでに行われていると判断し、ＳＡ要求を破棄して終了する。仮ＳＡが登録されていなかった場合は（Ｓ８０２のＮＯ）、ＳＰ、ＳＡテーブル更新管理部６１１は、仮ＳＡを作成して保持する（Ｓ８０３）。次に、ＳＰ、ＳＡテーブル更新管理部６１１は、ＩＫＥ処理部６０６に対してＳＡ要求を通知する（Ｓ８０４）。
【００５５】
ＳＡ要求を受け取ると、ＩＫＥ処理部６０６は、ＩＫＥプロトコルに基づいてＳＡ折衝を通信相手と行う（Ｓ８０５）。また、ＳＰ、ＳＡテーブル更新管理部６１１は、ＳＡ要求をした仮ＳＡのためのタイマとなるタイマ処理要求をタイマ部６１３に対して行い（Ｓ８０５）、処理を終了する。なお、タイマ部６１３は、仮ＳＡのタイマがタイムアウトすると、ＳＰ、ＳＡテーブル更新管理部６１１に対して、タイムアウトしたことの通知を行なう。通知を受けたＳＰ、ＳＡテーブル更新管理部６１１は、仮ＳＡを削除する。このように、Ｓ７１７のＳＡ折衝要求処理が行われた後、ＩＰｓｅｃ処理部６０７は、送信パケットを破棄して処理を終了する。
【００５６】
また、Ｓ７０７において、ＩＰｓｅｃプロトコル処理部６１２は、特定されたＳＡを用いて、ＳＡに指定されたＥＳＰまたはＡＨのＩＰｓｅｃプロトコル処理を行う。次に、ＩＰｓｅｃプロトコル処理部６１２は、ＩＰｓｅｃプロトコル処理の中での暗号、認証処理を暗号・認証処理部６０８へ要求する。暗号・認証処理部６０８は、要求を受け付けると暗号鍵、暗号アルゴリズム及び認証鍵、認証アルゴリズム等のＳＡ情報に基づいて、暗号、認証処理を行う（Ｓ７０８）。
【００５７】
ＩＰｓｅｃプロトコル処理部６１２は、使用したＳＡのバイト数による有効期限のカウント値を更新し、ＳＡ管理部６１０に対してカウント値の更新要求を行う。ＳＡ管理部６１０は、カウント値の更新要求を受け付けると、該当するＳＡのバイト数カウンタを更新する（Ｓ７０９）。次に、ＩＰｓｅｃプロトコル処理部６１２は、該当するＳＡのソフト有効期限が切れたかを確認する（Ｓ７１０）。ソフト有効期限が切れた場合は（Ｓ７１０のＹＥＳ）、ＩＰｓｅｃ処理部６０７は、ＳＡ折衝要求処理を行う（Ｓ７１１）。このＳＡ折衝要求処理は、Ｓ７１７のＳＡ折衝要求処理と共通の処理である。ソフト有効期限が切れていないかもしくは、すでに切れていた場合は（Ｓ７１０のＮＯ）、処理はＳ７１２へ進む。
【００５８】
Ｓ７１２において、ＩＰｓｅｃプロトコル処理部６１２は、ハード有効期限が切れたかを確認する（Ｓ７１２）。ハード有効期限が切れた場合は（Ｓ７１２のＹＥＳ）、処理はＳ７１３へ進む。ハード有効期限が切れていない場合は（Ｓ７１２のＮＯ）、処理はＳ７１４へ進む。Ｓ７１３において、ＩＰｓｅｃプロトコル処理部６１２は、ハード有効期限が切れたことをＳＰ、ＳＡテーブル更新管理部６１１に対し通知する。ハード有効期限切れの通知を受けたＳＰ、ＳＡテーブル更新管理部６１１は、ＩＫＥ処理部６０６にハード有効期限切れを通知し、ＳＡ管理部６１０に対して該当ＳＡの削除要求を行い、ＳＡ管理部６１０はＳＡＤから該当ＳＡを削除する。
【００５９】
Ｓ７１４において、ＩＰｓｅｃ処理部６０７によってＩＰｓｅｃ処理されたＩＰｓｅｃパケットは、ネットワークプロトコル処理部６０４でフラグメント処理等のＩＰプロトコル処理、ＭＡＣヘッダ処理が行われる。その後、ネットワークプロトコル処理部６０４は、ネットワークインタフェース部６０３にパケットの送信要求を行う。最後に、ネットワークインタフェース部６０３は、ネットワークへパケットを送信して（Ｓ７１５）、図７に示すＩＰｓｅｃパケット送信処理は終了する。なお、以上のフローは、図６に示すソフトウェアブロック図に基づいて説明したが、本実施形態による通信装置１０１が図２に示すソフトウェアも含む場合、破棄部２０２が送信パケットを破棄し、期限管理部２０６がソフト／ハード有効期限が切れてたか否かを確認するようにしてもよい。
【００６０】
次に、通信装置１０１のＩＰｓｅｃパケット受信処理フローについて説明する。図９に、本実施形態による通信装置１０１が不図示の他の通信装置からパケットを受信する処理のフローチャートを示す。図９に示すフローチャートの各処理は、通信装置１０１が主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。
【００６１】
まず、ネットワークインタフェース部６０３は、ネットワークから受信パケットを検知すると、受信パケットを取得してネットワークプロトコル処理部６０４へ通知する（Ｓ９０１）。ネットワークプロトコル処理部６０４は、受信パケットのヘッダ解析を行い、ＭＡＣ、ＩＰプロトコル処理を行う（Ｓ９０２）。ネットワークプロトコル処理部６０４は、受信パケットをＩＰｓｅｃ処理部６０７へと通知する。ＩＰｓｅｃ処理部６０７は、受信パケットを受け取ると、ＩＰｓｅｃプロトコル処理部６１２はヘッダ解析を行い、ＩＰｓｅｃパケットであるか判断する（Ｓ９０３）。ＩＰｓｅｃパケットであった場合は（Ｓ９０３のＹＥＳ）、処理はＳ９０４へ進む。ＩＰｓｅｃパケットでなかった場合は（Ｓ９０３のＮＯ）、処理はＳ９１３へ進む。
【００６２】
Ｓ９０４において、ＩＰｓｅｃプロトコル処理部６１２は、受信したＩＰｓｅｃパケットのＩＰアドレスやＩＰｓｅｃプロトコル種別、ＩＰｓｅｃヘッダ等のパケット情報に基づいて、ＳＡ管理部６１０に対してＳＡ検索要求を行う。ＳＡ検索要求を受け付けたＳＡ管理部６１０は、ＳＡＤに指定したパケット情報に該当するＳＡが登録されているかを検索し、検索結果をＩＰｓｅｃプロトコル処理部６１２に通知する。次に、ＩＰｓｅｃプロトコル処理部６１２は、検索結果を判定する。該当するＳＡがなかった場合（Ｓ９０５のＮＯ）、ＩＰｓｅｃプロトコル処理部６１２は、受信パケットを破棄し（Ｓ９１９）、処理を終了する。該当するＳＡがあった場合は（Ｓ９０５のＹＥＳ）、処理はＳ９０６へ進む。
【００６３】
Ｓ９０６において、ＩＰｓｅｃプロトコル処理部６１２は、検索の結果得られたＳＡを用いてＥＳＰまたはＡＨのＩＰｓｅｃプロトコル処理を行う。次に、ＩＰｓｅｃプロトコル処理部６１２は、ＩＰｓｅｃプロトコル処理の中での暗号（復号）、認証処理を暗号・認証処理部６０８に要求する。暗号・認証処理部６０８は要求を受け付けると暗号鍵、暗号アルゴリズム及び認証鍵、認証アルゴリズム等のＳＡ情報に基づいて暗号、認証処理を行う（Ｓ９０７）。ＩＰｓｅｃプロトコル処理部６１２は、使用したＳＡのバイト数による有効期限のカウント値を更新し、ＳＡ管理部６１０にカウント値の更新要求を行う。ＳＡ管理部６１０は、カウント値の更新要求を受け付けると該当するＳＡのバイト数カウンタを更新する（Ｓ９０８）。なお、実施形態１において述べたように、有効期限はバイト数以外で設定されてもよい。
【００６４】
ＩＰｓｅｃプロトコル処理部６１２は、ソフト有効期限が切れたかを確認する（Ｓ９０９）。ソフト有効期限が切れた場合は（Ｓ９０９のＹＥＳ）、処理はＳ９１０へ進む。ソフト有効期限が切れていないかもしくは、すでに切れていた場合は（Ｓ９０９のＮＯ）、ステップＳ９１１へ進む。Ｓ９１０において、ＩＰｓｅｃ処理部６０７は、ＳＡ折衝要求処理を行う。このＳＡ折衝要求処理は、Ｓ７１７のＳＡ折衝要求処理と共通の処理である。Ｓ９１１において、ＩＰｓｅｃプロトコル処理部６１２は、ハード有効期限が切れたかを確認する。ハード有効期限が切れた場合は（Ｓ９１１のＹＥＳ）、処理はＳ９１２へ進む。ハード有効期限が切れていない場合は（Ｓ９１１のＮＯ）、処理はＳ９１３へ進む。
【００６５】
Ｓ９１２において、ＩＰｓｅｃプロトコル処理部６１２は、ハード有効期限が切れたことをＳＰ、ＳＡテーブル更新管理部６１１に対して通知する。ハード有効期限切れの通知を受けたＳＰ、ＳＡテーブル更新管理部６１１は、ＩＫＥ処理部６０６にハード有効期限切れを通知し、ＳＡ管理部６１０に対して該当ＳＡの削除要求を行う。ＳＡ管理部６１０は、削除要求に応じて、ＳＡＤから該当ＳＡを削除する。
【００６６】
Ｓ９１３において、ＩＰｓｅｃプロトコル処理部６１２は、受信したＩＰパケットに含まれる、ＩＰアドレスやトランスポート層プロトコル種別、ポート番号等のパケット情報に基づいて、ＳＰ管理部６０９に対してＳＰ検索要求を行う。ＳＰ検索要求を受け付けたＳＰ管理部６０９は、ＳＰＤに指定パケット情報に該当するＳＰが登録されているかを検索し、検索結果をＩＰｓｅｃプロトコル処理部６１２に通知する。
【００６７】
Ｓ９１４において、ＩＰｓｅｃプロトコル処理部６１２は、ＳＰ管理部６０９から通知された検索結果を判定する。該当するＳＰがありかつ、該ＳＰに指定されたポリシーがＩＰｓｅｃ適用であった場合は（Ｓ９１４のＹＥＳ）、処理はＳ９１６へ進む。該当するＳＰがなかった場合もしくは、該当するＳＰに指定されたポリシーがＩＰｓｅｃ適用以外であった場合は（Ｓ９１４のＮＯ）、処理はＳ９１５へ進む。
【００６８】
Ｓ９１４において該当するＳＰがなかった場合は、Ｓ９１６において、ＩＰｓｅｃプロトコル処理部６１２は、暗号通信のポリシーを確認する。ポリシーが破棄（Ｄｉｓｃａｒｄ）であれば（Ｓ９１５のＹＥＳ）、ＩＰｓｅｃプロトコル処理部６１２は、受信パケットを破棄して（Ｓ９１９）、処理を終了する。一方、ポリシーが通過（Ｂｙｐａｓｓ  ＩＰｓｅｃ）であった場合は（Ｓ９１５のＮＯ）、処理はＳ９１７へ進む。また、Ｓ９１４において該当するＳＰがあった場合は、ＩＰｓｅｃプロトコル処理部６１２は、該ＳＰのポリシーを確認し、ポリシーが破棄であった場合は（Ｓ９１５のＹＥＳ）、受信パケットを破棄して（Ｓ９１９）、処理を終了する。ポリシーが通過であった場合は（Ｓ９１５のＮＯ）、処理はＳ９１７へ進む。
【００６９】
Ｓ９１６において、ＩＰｓｅｃプロトコル処理部６１２は、ＳＰに指定されたポリシーにおいて使用されるＳＡがＩＰｓｅｃプロトコル処理において使用したＳＡをマッチしているかを判定する。使用したＳＡがポリシーにマッチしていなければ（Ｓ９１６のＮＯ）、ＩＰｓｅｃプロトコル処理部６１２は、受信パケットを破棄して（Ｓ９１９）、処理を終了する。マッチしている場合は（Ｓ９１６のＹＥＳ）、処理はＳ９１７へ進む。
【００７０】
Ｓ９１７において、ネットワークプロトコル処理部６０４は、ＩＰｓｅｃ処理が完了したＩＰパケットのヘッダ解析を行い、ＩＰプロトコルの処理を行う。その後、ネットワークプロトコル処理部６０４は、ＩＰ上位プロトコルヘッダを解析してＴＣＰやＵＤＰといったトランスポート層プロトコルの処理を行う。トランスポート層プロトコル処理を終えたパケットデータはアプリケーションへ通知される。Ｓ９１８において、アプリケーション処理部６０５は、受信したデータからアプリケーション処理を行う。なお、受信したパケットがＩＫＥパケットであった場合、ネットワークプロトコル処理部６０４はＩＫＥ処理部６０６へ通知を行い、ＩＫＥ処理部６０６は、ＩＫＥプロトコル処理を行う。以上により、図９に示すＩＰｓｅｃパケット受信処理は終了する。なお、以上のフローは、図６に示すソフトウェアブロック図に基づいて説明したが、本実施形態による通信装置１０１が図２に示すソフトウェアも含む場合、破棄部２０２が受信パケットを破棄し、期限管理部２０６がソフト／ハード有効期限が切れてたか否かを確認するようにしてもよい。
【００７１】
次に、ＩＰｓｅｃ処理部６０７におけるＳＡ登録処理フローについて説明する。このＳＡ登録処理は、図８のＳＡ折衝要求処理フローにおいて、Ｓ８０５でＩＫＥ処理部６０６がＳＡ折衝によって受け取ったＳＡを、ＩＰｓｅｃ処理部６０７が登録する際の処理である。図１０に、ＳＡ登録処理のフローチャートを示す。Ｓ１００１において、ＳＰ、ＳＡテーブル更新管理部６１１は、登録を行うＳＡに該当する仮ＳＡがあるかを検索する。該当する仮ＳＡがあった場合は、ＳＰ、ＳＡテーブル更新管理部６１１は、該当仮ＳＡのタイマを停止する要求をタイマ部６１３に対して行う。その後、ＳＰ、ＳＡテーブル更新管理部６１１は、該当仮ＳＡを削除する。ＳＰ、ＳＡテーブル更新管理部６１１は、該当仮ＳＡがなかった場合は何もしない。
【００７２】
次に、Ｓ１００２において不要ＳＡ削除設定処理が行われる。図１１にステップＳ１００２の不要ＳＡ削除設定処理のフローチャートを示す。Ｓ１１０１において、ＳＰ、ＳＡテーブル更新管理部６１１は、所定の条件として、新規に登録するＳＡのパラメータであるセレクタと同一のセレクタをもつＳＡが登録されているかを調べるため、ＳＡ管理部６１０に対してＳＡ検索要求を行う。ＳＡ管理部６１０は、新規に追加するＳＡのセレクタ等をキーとしてＳＡＤを検索し、結果をＳＰ、ＳＡテーブル更新管理部６１１に通知する。ここで、キーとしては、動作モード、自局ＩＰアドレス、宛先ＩＰアドレス、セキュリティプロトコル及び、ＳＡの状態等が用いられる。ＳＡの状態以外のパラメータは、新規に登録するＳＡと同じである。また、ＳＡの状態とは、ソフト有効期限切れなのか、ソフト有効期限切れでないのかといった状態である。また、動作モードとは、ＩＰｓｅｃで利用されるトランスポートモード、もしくはトンネルモードのいずれかである。検索の結果、新規に登録するＳＡのセレクタ等と一致するセレクタ等をもつＳＡが登録されていない場合は（Ｓ１１０１のＮＯ）、処理は終了する。登録されている場合は（Ｓ１１０１のＹＥＳ）、処理はＳ１１０２へ進む。
【００７３】
Ｓ１１０２において、ＳＰ、ＳＡテーブル更新管理部６１１は、検索の結果見つかった該当ＳＡのハード有効期限時間が設定されているか確認する。ハード有効期限時間が設定されていない場合は、処理はＳ１１０４へ進む。ハード有効期限時間が設定されている場合は、処理はＳ１１０３へ進む。なお、Ｓ１１０２の判定処理を行わず、Ｓ１１０４へ進んでもよい。この場合は、ハード有効期限時間が設定されているかどうかにかかわらず強制的にハード有効期限時間を設定されることとなる。
【００７４】
Ｓ１１０３において、ＳＰ、ＳＡテーブル更新管理部６１１は、設定されているハード有効期限時間が閾値以下であるかを判断し、閾値以下である場合は（Ｓ１１０３のＹＥＳ）不要ＳＡ削除設定処理を終了する。閾値以下ではない場合は（Ｓ１１０３のＮＯ）、処理はＳ１１０４へ進む。なお、閾値は、システムであらかじめ定めた所定の値（所定時間）である。または、閾値は、ＴＣＰやＩＣＭＰ等を利用して別途計測したＲＴＴ（ラウンドトリップタイム）であってもよい。さらには、閾値は、ＳＡのソフト有効期限が切れてから更新ーされたＳＡが登録されるまでの時間であってもよい。その他、閾値は、ハード有効期限時間と比較するにあたっての適切な任意の値であればよい。また、ＳＰ、ＳＡテーブル更新管理部６１１は、Ｓ１１０３の判定処理を行わず、ハード有効期限時間が設定されていた場合にはそのまま不要ＳＡ削除設定処理を終了してもよい。
【００７５】
Ｓ１１０４において、ＳＰ、ＳＡテーブル更新管理部６１１は、該当するソフト有効期限切れのＳＡのハード有効期限を更新して不要ＳＡ削除設定処理を終了する。更新する際の値はステップＳ１１０３において閾値として示したいずれかの値を用いる。また本値はステップＳ１１０３において比較した値と同一の値であってもよいし、異なっていてもよい。ハード有効期限時間の設定されたＳＡは、ＳＡ管理部６１０及び、タイマ部６１３の処理によってハード有効期限切れとなる。その後ＳＰ、ＳＡテーブル更新管理部６１１へと通知される。ＳＰ、ＳＡテーブル更新管理部６１１は、ＳＡ管理部６１０へＳＡ削除要求を行い、ＳＡ管理部６１０はＳＡＤから該当ＳＡを削除する。ステップＳ１１０４の処理では、ＳＰ、ＳＡテーブル更新管理部６１１がハード有効期限時間を設定し、ＳＡ管理部６１０及びタイマ部６１３の処理によってハード有効期限切れが検知される。しかし、ＳＰ、ＳＡテーブル更新管理部６１１が不要ＳＡ削除タイマをセットし、ＳＡ管理部６１０に対して削除要求を行ってもよい。
【００７６】
図１０に戻り、Ｓ１００３において、ＳＰ、ＳＡテーブル更新管理部６１１は、ＳＡ管理部６１０に対して新規ＳＡの追加要求を行う。ＳＡ管理部６１０は新規ＳＡ追加要求を受け付けるとＳＡＤに新規ＳＡを登録して、図１０に示すＳＡ登録処理を終了する。
【００７７】
このように、本実施形態による通信装置は、ＳＡを登録する際にソフト有効期限が切れた同一セレクタを有するＳＡがあるかを判定し、不要ＳＡ削除設定処理を行うことにより、ソフト有効期限の切れたＳＡを削除することが可能となる。これにより、不要なＳＡによってメモリリソースを圧迫することを防ぐことが可能となる。また、本実施形態による通信装置は、一定期間、ソフト有効期限切れのＳＡを保持することで、ソフト有効期限切れのＳＡを使用したパケットを破棄せず、本来受信可能なパケットをロストすることを防ぐことが可能となる。また、本実施形態による通信装置において、ユーザの設定ミスによってソフト有効期限切れのＳＡが残り続けることを防ぐことができる。さらには、本実施形態による通信装置は、通信相手のＳＡ削除メッセージによらずソフト有効期限切れのＳＡを削除することができ、例えＩＫＥパケットがネットワーク上でロストした場合であっても適切にＳＡを削除することが可能となる。また、本実施形態による通信装置は、不要ＳＡを適切に削除することができるため、ＩＰｓｅｃパケット送受信時のＳＡＤの検索処理負荷を低減することも可能となる。
【００７８】
また、上記実施形態を組み合わせてもよい。例えば、旧ＳＡのハード有効期限の時間を本実施形態のように設定するとともに、実施形態１のように相手から新たなＳＡを利用したパケットを受信した場合には当該ＳＡに関連付けられた旧ＳＡを削除するようにしてもよい。また、上述のフローチャートをコンピュータに実現させるためのプログラムや、当該プログラムを記憶した記憶媒体であっても、同様の作用効果を得ることができる。
【００７９】
＜実施形態３＞
次に、実施形態３について説明する。図１に示した通信装置１０１のハードウェア構成は実施形態１と同様である。実施形態１では新ＳＡを使ったことに応じて、旧ＳＡを削除するというものであった。また実施形態２では、ＳＡを更新後、任意の時間経過後に旧ＳＡを削除するというものであった。さらにこれら実施形態１及び実施形態２を単純に組み合わせたものでは、任意の時間経過後、もしくは、新ＳＡを使った場合に旧ＳＡを削除するというものである。
【００８０】
しかし、以上の実施形態に説明されている手法では、新しいＳＡを使い、ＳＡが旧ＳＡから新ＳＡに切り替わったことを保証すること、もしくは、一定時間経過後に旧ＳＡを削除することでリソースの圧迫を防ぐというものである。そのため、実施形態１の手法では、新しいＳＡを使ったＩＰｓｅｃパケットを受信後、ネットワークの揺らぎ等で旧ＳＡを使ったパケットが新ＳＡを使ったパケットよりも遅れて届いた場合に、旧ＳＡを使ったパケットは破棄されてしまう。また、一定時間経過後に旧ＳＡを削除するという実施形態２の手法では、新ＳＡを使ったＩＰｓｅｃパケットを受信していることを保証できていないため、まだ旧ＳＡでＩＰｓｅｃパケットを受信する可能性が考えられる。そこで、本実施形態による通信装置は、新たなＳＡを使用してから任意の時間経過後に旧ＳＡを削除することを特徴とする。
【００８１】
図１２に、本実施形態による通信装置１０１のソフトウェアブロック図を示す。図１２に示される複数のソフトウェアブロックは、主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。なお、図１２に示された複数のソフトウェアブロックを１つのソフトウェアブロックとして構成してもよいし、１つのソフトウェアブロックを複数のソフトウェアブロックとして構成してもよい。また、図１２に示すソフトウェアブロックの一部または全部をハードウェアとして構成してもよい。
【００８２】
タイマ部１２１６以外の構成は、実施形態１において説明した図２と同様であるため、説明を省略する。タイマ部１２１６は時間によるＳＡの有効期限管理のためのタイマ処理を行う。
【００８３】
図１３に、本実施形態による通信装置１０１が、不図示の他の通信装置からＩＰｓｅｃに準拠したパケットを受信する処理のフローチャートを示す。図１３に示すフローチャートの各処理は、通信装置１０１が主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。
【００８４】
まず、検索部１２０１は、他の通信装置から受信したパケット（以下、受信パケット）に対応するＳＡを検索する（Ｓ１３０１）。ここでは、検索部１２０１は、ＳＰＩを参照することで新ＳＡと旧ＳＡとを区別して検索する。即ち、検索部１２０１は、新ＳＡで管理されている暗号鍵や認証鍵を用いて復号や認証をすべきパケットを受信したのか、旧ＳＡで管理されている暗号鍵や認証鍵を用いて復号や認証をすべきパケットを受信したのか、を判別することができる。
【００８５】
対応ＳＡが検出されなかった場合（Ｓ１３０２のＮＯ）、破棄部１２０２は受信パケットを破棄する（Ｓ１３０３）。一方、対応ＳＡが検出された場合（Ｓ１３０２のＹＥＳ）、ＩＰｓｅｃ処理部１２０５は受信パケットに対して所定のＩＰｓｅｃ処理を施す（Ｓ１３０４）。具体的には、ＩＰｓｅｃ処理部１２０５は、対応ＳＡにおいて管理されている暗号鍵情報および暗号化アルゴリズムに従って受信パケットの復号を行う。また、ＩＰｓｅｃ処理部１２０５は、対応ＳＡにおいて管理されている認証鍵および認証アルゴリズムに従って受信パケットの認証を行う。これにより、受信パケットの復号に失敗した場合や、受信パケットの認証に失敗した場合には（Ｓ１３０５のＮＯ）、破棄部１２０２は当該受信パケットを破棄する（Ｓ１３０３）。なお、Ｓ１３０４において、ＩＰｓｅｃ処理部１２０５は、復号もしくは認証のいずれか一方のみを行うようにしてもよい。
【００８６】
一方、受信パケットの復号および認証に成功した場合（Ｓ１３０５のＹＥＳ）、判定部１２０３は、ＩＰｓｅｃ処理に使用した対応ＳＡのバイト有効期限カウンタが０であるかを判定する（Ｓ１３０６）。これにより、判定部１２０３は、使用したＳＡが初めて使われたかどうかを判定する。なお、本実施形態では、判定部１２０３がバイト有効期限カウンタが０であるかどうかで初めて対応ＳＡが使われたか否かを判定したが、対応ＳＡを初めて使用したことが判定できる手段であれば判定部１２０３以外の手段が行ってもよい。
【００８７】
そして、対応ＳＡが初めて使用されたＳＡであった場合（Ｓ１３０６のＹＥＳ）、判定部１２０３、期限管理部１２０６、タイマ部１２１６は、不要ＳＡ削除タイマ設定処理（Ｓ１３０７）を行う。次に、期限管理部１２０６は、バイト有効期限管理処理を行う（Ｓ１３０８）。そして対応ＳＡのソフト有効期限（更新期限）が切れているか否かを判定する（Ｓ１３０９）。ソフト有効期限が切れている場合（Ｓ１３０９のＹＥＳ）、対応ＳＡの更新処理が行われる（Ｓ１３１０）。具体的には、新たなＳＡの要求処理が行われ、該新たなＳＡは通信相手と共有される。このＳＡ要求処理は、図４に示したＳＡ要求処理と同様である。
【００８８】
ここで、有効期限は、時間で設定されてもよいし、バイト数で設定されてもよい。時間により有効期限が設定される場合、ＳＡが取得されてからの時間をタイマ部１２１６で計測し、予め設定された有効期限よりも長い時間が計測された場合に有効期限が切れたものと判定される。また、バイト数により有効期限が設定される場合、当該ＳＡにより通信したパケットのバイト数が加算器（不図示）により加算され、所定バイト数に達した場合に有効期限が切れたものと判定される。なお、時間によるソフト有効期限が切れたことによるＳＡ要求処理（Ｓ１３１０）は、対応ＳＡに従って通信したタイミングではなく、タイマ部１２１６の通知により通信とは非同期で実施されてもよい。
【００８９】
続いて、期限管理部１２０６は、対応ＳＡのハード有効期限（削除期限）が切れているか否かを判定する（Ｓ１３１１）。ハード有効期限が切れている場合（Ｓ１３１１のＹＥＳ）、削除部１２０４は対応ＳＡを共有メモリ１２３から削除する（Ｓ１３１２）。なお、時間で設定されたハード有効期限が切れたことによる対応ＳＡ削除（Ｓ１３１２）の処理は、対応ＳＡに従って通信したタイミングではなく、タイマ部１２１６の通知により通信とは非同期で実施されてもよい。ハード有効期限が切れていない場合（Ｓ１３１１のＮＯ）、またはＳ１３１２で対応ＳＡが削除された場合、図１３に示すＩＰｓｅｃパケット受信処理は終了する。
【００９０】
図１５に、Ｓ１３０７で行われる不要ＳＡ削除タイマ設定処理のフローチャートを示す。判定部１２０３は、共有メモリ１２３において、使用されたＳＡ（対応ＳＡ）に旧ＳＡの情報が関連付けられて保存されているか否かを判定する（Ｓ１５０１）。そして対応ＳＡに旧ＳＡの情報が関連付けられていない場合（Ｓ１５０１のＮＯ）は、不要ＳＡ削除タイマ設定処理は終了する。一方、対応ＳＡに旧ＳＡの情報が関連づけられている場合（Ｓ１５０１のＹＥＳ）は、判定部１２０３は、旧ＳＡのハード有効期限時間が設定されているかを判定する（Ｓ１５０２）。なお、Ｓ１５０１において、共有メモリ１２３において対応ＳＡと旧ＳＡが関連付けて保存されているか否かに関係なく、処理はＳ１５０２に進むようにしてもよい。
【００９１】
旧ＳＡのハード有効期限時間が設定されている場合は（Ｓ１５０２のＹＥＳ）、判定部１２０３は、そのハード有効期限の残り時間が閾値以下かを判定する（Ｓ１５０３）。なお、閾値は、システムであらかじめ定めた所定の値（所定時間）である。または、閾値は、ＴＣＰやＩＣＭＰ等を利用して別途計測したＲＴＴ（ラウンドトリップタイム）であってもよい。さらには、閾値は、ＳＡのソフト有効期限が切れてから更新されたＳＡが登録されるまでの時間であってもよい。その他、閾値は、ハード有効期限時間と比較するにあたっての適切な任意の値であればよい。そして、閾値以下ではない場合（Ｓ１５０３のＮＯ）及び旧ＳＡのハード有効期限時間が設定されていない場合（Ｓ１５０２のＮＯ）、期限管理部１２０６は、旧ＳＡのハード有効期限時間を更新し、タイマ部１２１６に上述の閾値以上となるタイムアウト時間を設定する（Ｓ１５０４）。次に、削除部１２０４は、新ＳＡと旧ＳＡとの関連付けを解除する。すなわち、削除部１２０４は、新ＳＡに関連付けられている旧ＳＡへの関連付け情報を削除する。このようにして不要ＳＡ削除タイマの設定処理が行われる。
【００９２】
図１４に、本実施形態による通信装置１０１が不図示の他の通信装置にＩＰＳｅｃに準拠したパケットを送信する処理のフローチャートを示す。図１４に示すフローチャートの各処理は、通信装置１０１が主メモリ１１２により記憶されたプログラムを主プロセッサ１１１もしくはサブプロセッサ１２１が読み出すことで実現される。
【００９３】
まず、検索部１２０１は、他の通信装置に送信するパケット（以下、送信パケット）に対応するＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）を検索する（Ｓ１４０１）。対応ＳＡが検出されなかった場合（Ｓ１４０２のＮＯ）、図４に示す新たなＳＡの要求処理が行われる（Ｓ１４０３）。更に、破棄部１２０２は、送信パケットを破棄して（Ｓ１４０４）、図１４に示す処理を終了する。
【００９４】
一方、対応ＳＡが検出された場合（Ｓ１４０２のＹＥＳ）、ＩＰｓｅｃ処理部１２０５は、送信パケットに対して所定のＩＰｓｅｃ処理を施す（Ｓ１４０５）。具体的には、ＩＰｓｅｃ処理部１２０５は、対応ＳＡにおいて管理されている暗号鍵情報および暗号化アルゴリズムに従って、送信パケットを暗号化する。また、ＩＰｓｅｃ処理部１２０５は、対応ＳＡにおいて管理されている認証鍵および認証アルゴリズムに従って送信パケットの認証情報を作成して、当該認証情報を当該送信パケットに付加する。なお、ＩＰｓｅｃ処理部１２０５は、暗号化もしくは認証情報の付加のいずれか一方のみを行うようにしてもよい。
【００９５】
次に、判定部１２０３は、ＩＰｓｅｃ処理に使用したＳＡのバイト有効期限カウンタが０であるかを判定する。これにより、判定部１２０３は、使用したＳＡ（対応ＳＡ）が初めて使われたかどうかを判定する。（Ｓ１４０７）。なお、判定部１２０３により、本実施形態ではバイト有効期限カウンタが０であるかどうかで初めてＳＡが使われたか否かを判定されるが、対応ＳＡを初めて使用したことが判定できる手段であればよい。そして、対応ＳＡが初めて使用されたＳＡであった場合（Ｓ１４０７のＹＥＳ）、図１５に示す不要ＳＡ削除タイマ設定処理（Ｓ１４０８）が行われる。
【００９６】
次に、期限管理部１２０６は、対応ＳＡのソフト有効期限（更新期限）が切れているか否かを判定する（Ｓ１４１０）。ソフト有効期限が切れている場合（Ｓ１４１０のＹＥＳ）、対応ＳＡの更新処理が行われる（Ｓ１４０９）。具体的には、新たなＳＡの要求処理が行われる。続いて、期限管理部１２０６は、対応ＳＡのハード有効期限（削除期限）が切れているか否かを判定する（Ｓ１４１２）。ハード有効期限が切れている場合（Ｓ１４１２のＹＥＳ）、削除部１２０４は対応ＳＡを共有メモリ１２３から削除する（Ｓ１４１３）。
【００９７】
このようにして、本実施形態による通信装置は、ソフト有効期限が切れた旧ＳＡに対応する新たなＳＡが取得されてから、新たなＳＡを利用したパケットを他の通信装置から受信するまで旧ＳＡに関連付けて記憶部に記憶しておく。また、本実施形態による通信装置は、新たなＳＡが初めて使用された時点で旧ＳＡのハード有効期限の更新を行う。従って、本実施形態による通信装置は、新たなＳＡが取得した後に、他の通信装置から旧ＳＡを利用したパケットを受信した場合であっても、当該パケットを正常に受信することができる。即ち、他の通信装置が旧ＳＡを利用したパケット送信から、新たなＳＡを利用したパケット送信までの切替えに時間がかかったとしても、パケットをロストする可能性を低下させることができる。さらに、ネットワークの揺らぎ等で新たなＳＡを利用したパケットを受信した後に旧ＳＡを利用したパケットを受信した場合であっても、パケットをロストすることなく正常に受信することができる。
【００９８】
また、本実施形態による通信装置は、ＩＰｓｅｃに対応したパケットを送信する際に、バイト有効期限カウンタが０か否かを判定する。その後、当該パケット送信に利用するＳＡに関連付けられた旧ＳＡが存在するか否かを判定し、存在している場合には残りのハード有効期限と比較して閾値以下ではない場合に当該旧ＳＡのハード有効期限時間を更新した。これに限らず、通信装置１０１が送信時に用いる新たなＳＡを取得したことに応じて、当該新ＳＡに対応する旧ＳＡを削除するようにしてもよい。これにより、旧ＳＡを早く削除することができるので、メモリをより有効に活用することができる。
【００９９】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１００】
１０１  通信装置、１１１  主プロセッサ、１１２  主メモリ、１１３  ＴＯＥ、１１４  バス、１２１  サブプロセッサ、１２２  検索装置、１２３  共有メモリ、１２４  鍵管理部、１２５  暗号・復号器、１２６  データバス制御部、１２７  ＭＡＣ部、１２８  ＰＨＹ部、１２９  バス、１３０  バスブリッジ、１３１  ネットワーク
【図１】
2016015697.tif 000003
【図２】
2016015697.tif 000004
【図３】
2016015697.tif 000005
【図４】
2016015697.tif 000006
【図５】
2016015697.tif 000007
【図６】
2016015697.tif 000008
【図７】
2016015697.tif 000009
【図８】
2016015697.tif 000010
【図９】
2016015697.tif 000011
【図１０】
2016015697.tif 000012
【図１１】
2016015697.tif 000013
【図１２】
2016015697.tif 000014
【図１３】
2016015697.tif 000015
【図１４】
2016015697.tif 000016
【図１５】
2016015697.tif 000017