(57)【要約】【課題】ポリシーに従ってセキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを管理し、動的に前記のアドレス群からアドレスを選択し、セキュリティポリシーに応じたセッションを制御できるようにする。【解決手段】ポリシーによりセキュリティ通信を行うアドレスの適用とセキュリティ通信を行わないアドレスの適用とを動的に制御し、通信相手のネットワーク機器とポリシーの交換を行い、セキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを動的に生成または削除を行う。【選択図】図３
2008099211.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して通信相手と通信を行う通信手段と、
セキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを利用するアドレス利用手段と、
前記セキュリティ通信を行うアドレスを記憶したポリシーを記憶するポリシー記憶手段と、
前記ポリシーに応じて、前記セキュリティ通信を行うアドレスの適用と前記セキュリティ通信を行わないアドレスの適用とを動的に制御する制御手段と、
前記ポリシーの交換を通信相手と行うポリシー交換手段と、
前記ポリシーを記憶するポリシーデータベースを保持する保持手段と、
前記ポリシーデータベースから前記ポリシーの検索と、前記ポリシーを前記ポリシーデータベースへ追加または削除とを行うポリシー検索手段と、
前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとを動的に生成または削除する生成手段とを有することを特徴とするネットワーク接続装置。
【請求項２】
複数のセキュリティ通信を行うアドレスと複数のセキュリティ通信を行わないアドレスとを束ねたアドレスリストを保持し、前記アドレスリストの中の一つを代表するアドレスとして利用する代表アドレス利用手段を有することを特徴とする請求項１に記載のネットワーク接続装置。
【請求項３】
前記アドレスリストの生成または削除と、前記アドレスリストへのエントリーの追加、変更または削除とを行うアドレスリスト変更手段を有することを特徴とする請求項２に記載のネットワーク接続装置。
【請求項４】
前記アドレスリストに記載されるアドレスとは異なるアドレスを代表アドレスとして生成または選択する代表アドレス生成手段を有することを特徴とする請求項２に記載のネットワーク接続装置。
【請求項５】
送信されるデータに関するポリシーが不適合である場合、データを送信しないようにする送信制御手段を有することを特徴とする請求項１に記載のネットワーク接続装置。
【請求項６】
前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとを利用した通信を行う際に、前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとに対応するセキュリティのあるセッションとセキュリティのないセッションとの有無を確認する確認手段と、
前記セッションが存在しない場合にセッションを開始するセッション開始手段と、
前記セッションが既に存在する場合に前記セッションを利用するセッション利用手段と、
前記セッションを開始するかどうかの判断を前記ポリシーに応じて決定する決定手段とを有することを特徴とする請求項１に記載のネットワーク接続装置。
【請求項７】
ネットワークを介して通信相手と通信を行う通信ステップと、
セキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを利用するアドレス利用ステップと、
前記セキュリティ通信を行うアドレスを記憶したポリシーを記憶するポリシー記憶ステップと、
前記ポリシーに応じて、前記セキュリティ通信を行うアドレスの適用と前記セキュリティ通信を行わないアドレスの適用とを動的に制御する制御ステップと、
前記ポリシーの交換を通信相手と行うポリシー交換ステップと、
前記ポリシーを記憶するポリシーデータベースを保持する保持ステップと、
前記ポリシーデータベースから前記ポリシーの検索と、前記ポリシーを前記ポリシーデータベースへ追加または削除とを行うポリシー検索ステップと、
前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとを動的に生成または削除する生成ステップとを有することを特徴とするネットワーク接続方法。
【請求項８】
複数のセキュリティ通信を行うアドレスと複数のセキュリティ通信を行わないアドレスとを束ねたアドレスリストを保持し、前記アドレスリストの中の一つを代表するアドレスとして利用する代表アドレス利用ステップを有することを特徴とする請求項７に記載のネットワーク接続方法。
【請求項９】
前記アドレスリストの生成または削除と、前記アドレスリストへのエントリーの追加、変更または削除とを行うアドレスリスト変更ステップを有することを特徴とする請求項８に記載のネットワーク接続方法。
【請求項１０】
前記アドレスリストに記載されるアドレスとは異なるアドレスを代表アドレスとして生成または選択する代表アドレス生成ステップを有することを特徴とする請求項８に記載のネットワーク接続方法。
【請求項１１】
送信されるデータに関するポリシーが不適合である場合、データを送信しない送信制御ステップを有することを特徴とする請求項７に記載のネットワーク接続方法。
【請求項１２】
前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとを利用した通信を行う際に、前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとに対応するセキュリティのあるセッションとセキュリティのないセッションとの有無を確認する確認ステップと、
前記セッションが存在しない場合にセッションを開始するセッション開始ステップと、
前記セッションが既に存在する場合に前記セッションを利用するセッション利用ステップと、
前記セッションを開始するかどうかの判断をポリシーに応じて決定する決定ステップとを有することを特徴とする請求項７に記載のネットワーク接続方法。
【請求項１３】
請求項７に記載の方法の各ステップをコンピュータにて実施させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワーク接続装置、ネットワーク接続方法及びプログラムに関し、特に、アドレスの有無に応じてアドレスを生成するために用いて好適な技術に関する。
【背景技術】
【０００２】
ＩＰｖ４に変わるネットワークレイヤのプロトコルとして、ＩＰｖ６（Internet Protocol Version 6）プロトコルが、ＲＦＣ（Request for Comments）２４６０として規定された。インターネットにおいて、セキュリティは重要な地位を占めている。ＩＰｖ６においても、ＩＰｓｅｃと呼ばれるセキュリティプロトコルの実装が必須になっている。ＩＰｓｅｃはネットワークレイヤのセキュリティプロトコルであり、トランスポートプロトコル非依存であるため、様々なプロトコルへ適用できる。
【０００３】
また、ＩＰｓｅｃでは、データの認証、暗号化に共通鍵を使用するので、端末間で事前に暗号鍵を共有しておく必要がある。その端末間における共通鍵の折衝と管理を行うプロトコルとしてＩＫＥ（Internet Key Exchange）がある。ＩＫＥの処理はＩＰｓｅｃの処理と比較すると非常に重く、小型組み込み機器などへの適用は不向きである。
【０００４】
ＩＰｓｅｃにおいて、暗号化の設定を行うと、ＩＰｓｅｃの設定が有効である期間は、ＩＰｓｅｃが必要であるかどうかに拘らず、必ずＩＰｓｅｃが適用される。ＩＰｓｅｃの処理が必要ないパケットにとって、ＩＰｓｅｃの処理は負荷であり、大量のＩＰｓｅｃ処理が必要ないパケットを送信する時に大きな問題となる。
【０００５】
そこで、ＩＰｓｅｃを必要な時だけ利用することが求められる。例えば、ＩＰｓｅｃを必要な時だけ利用するために、ＩＰｓｅｃの適用・非適用に関する提案がなされている（例えば、特許文献１参照）。これはＩＫＥを利用したＩＰｓｅｃの適用・非適用の方法であり、ＩＰｓｅｃ自体の変更を行い新たに状態を追加することで実現している。
【０００６】
前述の通り、ＩＫＥをサポートする機器は少ない為、ＩＫＥを利用した方式は多くのホストに適用できるとはいえない。また、ＩＰｓｅｃの適用・非適用の際に、ＩＫＥが動作しなくてはならないため、オーバヘッドとなるため、高速な切り替えが不可能である。
【０００７】
【特許文献１】特開２００５−８６３８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
前記した技術では、高速なセキュリティプロトコルの適用・非適用が不可能であった。また、同時に複数のアドレスを、セキュリティポリシーに従って、セキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとして使い分けるといったことができなかった。一方、ストリーミングによる動画配信を見たいといった要望が高まってきている。
【０００９】
インターネットにおいてＮＡＴ（Network Address Translation）やＦＷ（Firewall）が通信相手との間に存在した場合、多くの場合においてＵＤＰよりもＴＣＰは適用範囲が広い為、ＴＣＰストリーミングが選択されている。既存のＴＣＰのストリーミングにおいて、コントロールパケットはセキュリティを持った通信路を通し、ストリーミングパケットはセキュリティを持たない高速な通信路を通すといった非対称のデータ送受信ができなかった。
【００１０】
本発明は前述の問題点に鑑み、ポリシーに従ってセキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを管理し、前記アドレス群からアドレスを選択しセキュリティポリシーに応じたセッションを制御できるようにすることを目的としている。
【課題を解決するための手段】
【００１１】
本発明のネットワーク接続装置は、ネットワークを介して通信相手と通信を行う通信手段と、セキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを利用するアドレス利用手段と、前記セキュリティ通信を行うアドレスを記憶したポリシーを記憶するポリシー記憶手段と、前記ポリシーに応じて、前記セキュリティ通信を行うアドレスの適用と前記セキュリティ通信を行わないアドレスの適用とを動的に制御する制御手段と、前記ポリシーの交換を通信相手と行うポリシー交換手段と、前記ポリシーを記憶するポリシーデータベースを保持する保持手段と、前記ポリシーデータベースから前記ポリシーの検索と、前記ポリシーを前記ポリシーデータベースへ追加または削除とを行うポリシー検索手段と、前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとを動的に生成または削除する生成手段とを有することを特徴とする。
【００１２】
本発明のネットワーク接続方法は、ネットワークを介して通信相手と通信を行う通信ステップと、セキュリティ通信を行うアドレスとセキュリティ通信を行わないアドレスとを利用するアドレス利用ステップと、前記セキュリティ通信を行うアドレスを記憶したポリシーを記憶するポリシー記憶ステップと、前記ポリシーに応じて、前記セキュリティ通信を行うアドレスの適用と前記セキュリティ通信を行わないアドレスの適用とを動的に制御する制御ステップと、前記ポリシーの交換を通信相手と行うポリシー交換ステップと、前記ポリシーを記憶するポリシーデータベースを保持する保持ステップと、前記ポリシーデータベースから前記ポリシーの検索と、前記ポリシーを前記ポリシーデータベースへ追加または削除とを行うポリシー検索ステップと、前記セキュリティ通信を行うアドレスと前記セキュリティ通信を行わないアドレスとを動的に生成または削除する生成ステップとを有することを特徴とする。
【００１３】
本発明のプログラムは、前記の方法の各ステップをコンピュータにて実施させることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、セキュリティの適用・非適用をポリシーにより制御することができ、ポリシーを記述するだけで、アプリケーションの変更なしにセキュリティの制御することができる。
【発明を実施するための最良の形態】
【００１５】
（第１の実施形態）
以下、本発明の実施形態について、図面を参照して詳細に説明する。
まず、図１を用いて、本実施形態のネットワーク構成図を説明する。
図１において、１００はインターネットに代表するネットワークであり、ＩＰｖ４通信プロトコルやＩＰｖ６通信プロトコルに代表するネットワークレイヤの通信プロトコルを利用した通信が可能である。
【００１６】
１０１はネットワーク接続装置であり、ネットワーク１００に接続し、ネットワークレイヤの通信プロトコルを利用した通信が可能である。ＩＰｓｅｃ、ＳＳＬ、ＴＬＳに代表するセキュリティプロトコルにより、ネットワーク接続装置１０２と通信内容が暗号化された暗号通信や通信内容の完全性が保たれた通信等を行うことができる。
【００１７】
１０２はネットワーク接続装置であり、ネットワーク１００に接続し、ネットワークレイヤの通信プロトコルを利用した通信が可能である。ＩＰｓｅｃ、ＳＳＬ、ＴＬＳに代表されるセキュリティプロトコルにより、ネットワーク接続装置１０１と通信内容が暗号化された暗号通信や通信内容の完全性が保たれた通信等を行うことができる。なお、図１において、ネットワーク１００には、ネットワーク接続装置１０１とネットワーク接続装置１０２が１台ずつ接続されているが、これに限らず、ネットワーク接続装置が複数台接続されていてもよい。
【００１８】
図２は、本実施形態のネットワーク接続装置１０１、１０２のハード構成例を示すブロック図である。なお、ネットワーク接続装置は、ＰＣ（パーソナルコンピュータ）などのコンピュータシステム以外でも実施可能である。例えば、ワークステーション、ノートブックＰＣ、パームトップＰＣ、コンピュータを内蔵したテレビ等の各種家電製品、通信機能を有するゲーム機、携帯電話、ＰＨＳ、等を含む他のネットワーク接続装置と通信するための通信機能を有する端末でもよい。または、これらの組合せによっても実施可能である。
【００１９】
図２において、２０１は、コンピュータシステムの制御をつかさどる中央演算装置（以下ＣＰＵと記す）である。２０２は、ランダムアクセスメモリ（以下ＲＡＭと記す）であり、ＣＰＵ２０１の主メモリとして、及び実行プログラムの領域や該プログラムの実行エリアならびにデータエリアとして機能する。
【００２０】
２０３は、ＣＰＵ２０１の動作処理手順を記録しているリードオンリーメモリー（以下ＲＯＭと記す）である。ＲＯＭ２０３には、コンピュータシステムの機器制御を行うシステムプログラムである基本ソフト（ＯＳ）を記録したプログラムＲＯＭと、システムを稼動するために必要な情報などが記録されたデータＲＯＭとがある。ＲＯＭ２０３の代わりに後述のＨＤＤ２０９を用いる場合もある。
【００２１】
２０４は、ネットワークインターフェース（以下ＮＥＴＩＦと記す）であり、ネットワーク１００を介してコンピュータシステム間のデータ転送を行うための制御や接続状況の診断を行う。２０５は、ビデオＲＡＭ（以下ＶＲＡＭと記す）であり、コンピュータシステムの稼動状態を示す後述するＣＲＴ２０６の画面に表示される画像を展開し、その表示の制御を行う。２０６は、表示装置であって、例えば、ディスプレイである。以下ＣＲＴと記す。
【００２２】
２０７は、後述する外部入力装置２０８からの入力信号を制御するコントローラ（ＫＢＣ）である。２０８は、コンピュータシステムの利用者がコンピュータシステムに対して行う操作を受け付けるための外部入力装置であり、例えば、キーボード（ＫＢ）などである。２０９は、記憶装置を示し、例えば、ハードディスクドライブ（ＨＤＤ）などである。ＨＤＤ２０９は、アプリケーションプログラムや、画像情報などのデータ保存用に用いられる。本実施形態におけるアプリケーションプログラムとは、本実施形態を構成する各種セキュリティプロトコル制御手段を実行するソフトウェアプログラムなどである。
【００２３】
２１０は、外部入出力装置であって、例えばフロッピー（登録商標）ディスクドライブ（ＦＤＤ）、ＣＤ−ＲＯＭドライブなどのリムーバブル（登録商標）を入出力するものであり、上述したアプリケーションプログラムの媒体からの読み出しなどに用いられる。以下、ＦＤＤと記す。なお、ＨＤＤ２０９に格納するアプリケーションプログラムやデータをＦＤＤ２１０に格納して使用することも可能である。２００は、上述した各ユニット間の接続するための入出力バス（アドレスバス、データバス、及び制御バス）である。
【００２４】
図３は、本実施形態におけるネットワーク接続装置１０１、１０２の内部モジュールの構成例を示すブロック図である。
３０１は、他のネットワーク接続装置上のアプリケーションと通信を行うアプリケーションである。アプリケーション３０１は、ポリシーデータベース３０６に対して、ポリシーの追加、削除、変更を行う。
【００２５】
３０２は、セキュアソケット部であって、一般的なソケットのインターフェースと同様のパラメータを持つ。セキュアソケット部３０２は、ポリシーデータベース３０６を参照し、パラメータがポリシーに合致する場合、マスタアドレス選択部３０３に渡す。３０３は、送信先のアドレスを鍵として、ポリシーデータベース３０６を検索、参照し、送信先と送信元のマスタアドレスの選択、削除、生成を行うマスタアドレス選択部である。
【００２６】
３０４は、インターフェースに付与されたアドレスから、利用するアドレスを選択するアドレス選択部である。アドレス選択部３０４は、ポリシーデータベース３０６中のポリシーに適合したアドレスがインターフェースに付与されていない場合、適合したアドレスの生成を行う。また、アドレス選択部３０４は、ポリシーデータベース３０６中のポリシーに適合しないアドレスがインターフェースに付与されていた場合、適合しないアドレスの削除を行う。
【００２７】
３０５は、ソケット生成部であって、ポリシーデータベース３０６を参照し、既に送信先に合致するソケットが開かれていた場合、送信先に合致するソケットを利用し、データの送信を行う。また、ソケット生成部３０５は、ポリシーデータベース３０６を参照し、送信先に合致するソケットが存在しない場合、送信先に合致するソケットを生成し、データの送信を行う。なお、ソケットを生成する際に、ソケット生成部３０５は、ポリシーデータベース３０６を参照し、ソケットを生成する際に複数のアドレスを使い分ける。
【００２８】
３０６は、送信先との間のセキュリティポリシーやアドレス選択ポリシーを保持するポリシーデータベースである。ポリシーデータベース３０６は、アプリケーション３０１、セキュアソケット部３０２、マスタアドレス選択部３０３、アドレス選択部３０４及びソケット生成部３０５から参照、検索され、ポリシーの生成、追加、削除が行われる。
【００２９】
３０７は、既存のソケットであり、ソケット生成部３０５により、既存のソケット３０７が複数個生成される。３０８及び３０９は、それぞれ実インターフェースに付与されたアドレスである。３１０は、暗号化する通信路である。暗号化する通信路３１０を通して送信されたデータは、全て暗号化される。３１１は、暗号化しない通信路である。暗号化しない通信路３１１を通して送信されたデータは、全て暗号化されない。
【００３０】
図４は、本実施形態の全体シーケンスの一例を示すタイミングチャートである。図４において、ネットワーク１００に接続しているネットワーク接続装置１０１がネットワーク１００に接続しているネットワーク接続装置１０２へ通信を開始する様子を示す。ネットワーク接続装置１０１のインターフェースにはアドレスＡ１が付与されており、ネットワーク接続装置１０２のインターフェースにはアドレスＢ１が付与されている。ネットワーク接続装置１０１は、ネットワーク接続装置１０２からＨＴＴＰによる動画ストリーミングを受信する。
【００３１】
初めに、ネットワーク接続装置１０１において、ユーザやアプリケーションが通信相手をネットワーク接続装置１０２と指定する。処理４０１では、ネットワーク接続装置１０１は、ネットワーク接続装置１０１のアドレスリストとポリシーをネットワーク接続装置１０２に送信する。次に、処理４０２では、ネットワーク接続装置１０２は、ネットワーク接続装置１０１から送られたアドレスリストとポリシーとを参照する。そして、ネットワーク接続装置１０１からの通信開始の要求を受理する場合は、通信開始受付を受理するメッセージをネットワーク接続装置１０１に送信する。
【００３２】
次に、処理４０３では、ネットワーク接続装置１０１は、通信開始受付を受理するメッセージを受信すると、ポリシーデータベースを参照し、セキュリティを付与する為のアドレスが存在しない場合、アドレスＡ２を生成する。そして、処理４０４では、ネットワーク接続装置１０２は、通信開始受付を受理するメッセージを送信すると、ポリシーデータベースを参照し、セキュリティを付与する為のアドレスが存在しない場合、アドレスＢ２を生成する。
【００３３】
次に、処理４０５では、ネットワーク接続装置１０１は、ユーザ名とパスワードなどの認証情報をアドレスＡ２からアドレスＢ２へ送信する。アドレスＡ２及びアドレスＢ２はセキュリティを付与したアドレスであり、アドレスＡ２及びアドレスＢ２の間では、暗号化などセキュリティを保った通信が可能となる。認証終了後、処理４０６では、ネットワーク接続装置１０１は、動画ストリーミングを開始するパケットをネットワーク接続装置１０２に、アドレスＡ２及びアドレスＢ２を利用し、送信する。
【００３４】
処理４０７〜４１０では、ネットワーク接続装置１０２は、動画ストリーミングを開始するパケットを受信後、動画ストリーミングをネットワーク接続装置１０１に、アドレスＡ１及びアドレスＢ１を利用し、送信する。アドレスＡ１及びアドレスＢ１はセキュリティを付与していないアドレスであり、アドレスＡ１及びアドレスＢ１の間では、暗号化などセキュリティを付与した通信を行わない。
【００３５】
そして、処理４１１では、ネットワーク接続装置１０１は、動画ストリーミングを終了するパケットをネットワーク接続装置１０２に、アドレスＡ２及びアドレスＢ２を利用し送信する。このように、認証及び動画をコントロールするパケットのみ、セキュリティを付与することが可能となる。
【００３６】
図５は、本実施形態の全体シーケンスの他の例を示すタイミングチャートである。図５において、ネットワーク１００に接続しているネットワーク接続装置１０１がネットワーク１００に接続しているネットワーク接続装置１０２へ通信を開始する様子を示す。ネットワーク接続装置１０１のインターフェースにはアドレスＡ１が付与されており、ネットワーク接続装置１０２のインターフェースにはアドレスＢ１が付与されている。ネットワーク接続装置１０１は、ネットワーク接続装置１０２からＨＴＴＰによる動画ストリーミングを受信する。
【００３７】
初めに、ネットワーク接続装置１０１において、ユーザやアプリケーションが通信相手をネットワーク接続装置１０２と指定する。処理５０１では、ネットワーク接続装置１０１は、ネットワーク接続装置１０１のアドレスリストとポリシーをネットワーク接続装置１０２に送信する。次に、処理５０２では、ネットワーク接続装置１０２は、ネットワーク接続装置１０１から送られたアドレスリストとポリシーとを参照する。そして、ネットワーク接続装置１０１からの通信開始の要求を受理する場合は、通信開始受付を受理するメッセージをネットワーク接続装置１０１に送信する。
【００３８】
次に、処理５０３では、ネットワーク接続装置１０１は、通信開始受付を受理するメッセージを受信すると、ポリシーデータベースを参照し、セキュリティを付与する為のアドレスが存在しない場合、アドレスＡ２を生成する。そして、処理５０４では、ネットワーク接続装置１０２は、通信開始受付を受理するメッセージを送信すると、ポリシーデータベースを参照し、セキュリティを付与する為のアドレスが存在しない場合、アドレスＢ２を生成する。
【００３９】
次に、処理５０５では、ネットワーク接続装置１０１は、ユーザ名とパスワードなどの認証情報をアドレスＡ１からアドレスＢ１へ送信する。アドレスＡ１及びアドレスＢ１はセキュリティを付与しないアドレスであり、アドレスＡ２及びアドレスＢ２の間では、暗号化などセキュリティを付与した通信を行わない。認証終了後、処理５０６では、ネットワーク接続装置１０１は、動画ストリーミングを開始するパケットをネットワーク接続装置１０２に、アドレスＡ１及びアドレスＢ１を利用し、送信する。
【００４０】
処理５０７〜５１０では、ネットワーク接続装置１０２は、動画ストリーミングを開始するパケットを受信後、動画ストリーミングをネットワーク接続装置１０１に、アドレスＡ２及びアドレスＢ２を利用し、送信する。アドレスＡ２及びアドレスＢ２はセキュリティを付与するアドレスであり、アドレスＡ２及びアドレスＢ２の間では、暗号化などセキュリティを付与した通信を行う。
【００４１】
そして、処理５１１では、ネットワーク接続装置１０１は、動画ストリーミングを終了するパケットをネットワーク接続装置１０２に、アドレスＡ１及びアドレスＢ１を利用し送信する。このように、コンテンツを送信するパケットのみ、セキュリティを付与することが可能となる。
【００４２】
図６は、本実施形態におけるネットワーク接続装置１０１のポリシーデータベース３０６の内容の一例を示す図である。
ポリシーデータベース３０６中の宛先とは、接続先のネットワーク接続装置を示す。宛先「Ｂ」はネットワーク接続装置１０２のことを示し、なお、「any」とは全てのネットワーク接続装置のことを示す。
【００４３】
ポリシーデータベース３０６中のポート番号とは、宛先のポート番号を示し、「any」とは全てのポート番号のことを示す。ポリシーデータベース中のin/outとは、データの方向を示し、「in」は受信データに対応し、「out」は送信データに対応する。ポリシーデータベース中の暗号化とは、データを暗号化の決定であり、「on」はデータの暗号化を行い、「off」はデータの暗号化を行わない。ポリシーデータベース３０６中のデータサイズとは、セキュアソケットに代入されるデータサイズであり、データサイズにより振り分けができる。このポリシーデータベース３０６のエントリーは、宛先やポート番号を書き入れているものを優先して適用する。
【００４４】
図７は、本実施形態におけるネットワーク接続装置１０１のアドレスリストの一例を示す図である。
アドレスリスト中のマスタアドレスとは、マスタアドレスの決定部分であり、マスタアドレスの場合、「on」となる。アドレスリスト中の暗号化とは、暗号化を行うかどうかを判断する部分であり、暗号化を行うアドレスの場合、「on」となる。アドレスリスト中のアドレスとは、実インターフェースに付与されるアドレスであり、実際のパケット配送に利用される。
【００４５】
図８は、本実施形態におけるネットワーク接続装置１０２のアドレスリストである。アドレスリスト中のマスタアドレスとは、マスタアドレスの決定部分であり、マスタアドレスの場合、「on」となる。アドレスリスト中の暗号化とは、暗号化を行うかどうかを判断する部分であり、暗号化を行うアドレスの場合、「on」となる。アドレスリスト中のアドレスとは、実インターフェースに付与されるアドレスであり、実際のパケット配送に利用される。
【００４６】
図６、図７、及び図８に示した情報を利用し、ネットワーク接続装置１０１は、ネットワーク接続装置１０２との通信の方針を決定する。ネットワーク接続装置１０１がネットワーク接続装置１０２へ通信を開始する場合、図６からネットワーク接続装置１０２のエントリーである「Ｂ」を参照し、ポート番号やデータサイズを参照する。ポート番号８０を利用し、１Mbyteよりも大きいデータを送信するとき、暗号化ありが適用されることがわかる。
【００４７】
また、図７より、ネットワーク接続装置１０１のマスタアドレスがＡ１であり、暗号化を行うアドレスはＡ２であることがわかる。そして、図８より、ネットワーク接続装置１０２のマスタアドレスがＢ１であり、暗号化を行うアドレスがＢ２であることがわかる。このように、図６、図７、図８に示した情報から、本実施形態に必要なパラメータを得ることができる。
【００４８】
図９は、本実施形態におけるネットワーク接続装置１０１の通信開始処理時の手順の一例を示すフローチャートである。
ステップＳ９０１において、ユーザやアプリケーション３０１からの指示により、ポリシーデータベース３０６へポリシーの作成を行い、ステップＳ９０２に進む。ステップＳ９０２において、ユーザやアプリケーション３０１によって指定されたソケットのパラメータを元にセキュアソケットを生成し、ステップＳ９０３に進む。
【００４９】
ステップＳ９０３において、ポリシーデータベース３０６から適合するポリシーの読み出しが行われ、ステップＳ９０４に進む。ステップＳ９０４において、読み出されたポリシーに従って、マスタアドレスの選択を行う際に、マスタアドレスが選択可能なアドレスであるか否かを判断する。この判断の結果、マスタアドレスが選択可能なアドレスである場合には、ステップＳ９０５に進む。一方、ステップＳ９０４の判断の結果、マスタアドレスが選択不可能なアドレスである場合には、処理を終了する。
【００５０】
ステップＳ９０５において、アドレスリストに従って、アドレスの選択を行う。そして、実インターフェースにアドレスが存在するか否かを判断する。この判断の結果、アドレスリストにアドレスが存在するが、実インターフェースにアドレスが存在しない場合には、ステップＳ９０６に進む。一方、ステップＳ９０５の判断の結果、アドレスリストにアドレスが存在し、実インターフェースにアドレスが存在する場合には、ステップＳ９０７に進む。
【００５１】
ステップＳ９０６において、アドレスリストにより、指定された実インターフェースに指定されたアドレスの生成を行い、ステップＳ９０７に進む。ステップＳ９０７において、ネットワーク接続装置１０１は、ネットワーク接続装置１０２とアドレスリストとポリシーの交換を行い、それが成功したか否かを判断する。
【００５２】
この判断の結果、交換が成功し、ネットワーク接続装置１０２がアドレスリストとポリシーとを受理し、ネットワーク接続装置１０１がネットワーク接続装置１０２のアドレスリストとポリシーとを受理した場合は、ステップＳ９０８に進む。
【００５３】
一方、ステップＳ９０７の判断の結果、交換に失敗し、ネットワーク接続装置１０２がアドレスリストとポリシーとを受理しなかった場合は、処理を終了する。また、ネットワーク接続装置１０２がアドレスリストとポリシーとを受理し、ネットワーク接続装置１０１がネットワーク接続装置１０２のアドレスリストとポリシーとを受理しなかった場合も、交換は失敗となるため、処理を終了する。
【００５４】
ステップＳ９０８において、ステップＳ９０７において受理したネットワーク接続装置１０２のアドレスリストとポリシーとをネットワーク接続装置１０１のポリシーデータベース３０６に追加し、ステップＳ９０９に進む。ステップＳ９０９において、アドレスリストとポリシーとから、ネットワーク接続装置１０１とネットワーク接続装置１０２との間にセッションを生成し、処理を終了する。
【００５５】
図１０は、本実施形態におけるネットワーク接続装置１０１の送信処理手順の一例を示すフローチャートである。
ステップＳ１００１において、ネットワーク接続装置１０１のアプリケーション３０１は、セキュアソケットにデータを送信し、ステップＳ１００２に進む。ステップＳ１００２において、ネットワーク接続装置１０１のポリシーデータベース３０６からポリシーを検索し、送信するデータがポリシーに適合しているかどうかを確認する。
【００５６】
この確認の結果、送信するデータがポリシーに適合している場合は、ステップＳ１００３に進む。一方、ステップＳ１００２の確認の結果、送信するデータがポリシーに不適合である場合は、ステップＳ１００８に進む。ステップＳ１００３において、ポリシーとアドレスリストとから、送信元と送信先のマスタアドレスを選択する際に、マスタアドレスが選択可能なアドレスであるか否かを判断する。
【００５７】
この判断の結果、マスタアドレスが選択可能なアドレスである場合には、ステップＳ１００４に進む。一方、ステップＳ１００３の判断の結果、マスタアドレスが選択不可能なアドレスである場合には、ステップＳ１００８に進む。
【００５８】
ステップＳ１００４において、ポリシーとアドレスリストとから、利用するセッションを選択する際に、利用するセッションが存在するか否かを判断する。この判断の結果、利用するセッションが存在する場合は、セッションを選択し、ステップＳ１００７に進む。一方、ステップＳ１００４の判断の結果、利用するセッションが存在しない場合、ステップＳ１００５に進む。
【００５９】
ステップＳ１００５において、ポリシーとアドレスリストとから、利用するアドレスを生成し、利用するアドレスを選択し、ステップＳ１００６に進む。なお、利用するアドレスが既にある場合は、利用するアドレスを選択し、ステップＳ１００６に進む。ステップＳ１００６において、選択されたアドレスを利用して、セッションを作成し、そして、セッションを選択して、ステップＳ１００７に進む。
【００６０】
ステップＳ１００７において、選択されたセッションを利用して、データの送信を行い、処理を終了する。一方、ステップＳ１００２の確認の結果、送信するデータがポリシーに不適合である場合は、ステップＳ１００８において、送信するデータを廃棄し、処理を終了する。
【００６１】
図１１は、本実施形態におけるネットワーク接続装置１０１の受信処理手順の一例を示すフローチャートである。
ステップＳ１１０１において、ネットワーク接続装置１０１は、ソケットから、データを受信し、ステップＳ１１０２に進む。
【００６２】
ステップＳ１１０２において、ネットワーク接続装置１０１はネットワーク接続装置１０１のポリシーデータベース３０６を検索して参照し、アドレスリストとポリシーとを取得する際に、適合するアドレスリストとポリシーとが存在するか否かを判断する。この判断の結果、適合するアドレスリストとポリシーとが存在する場合は、ステップＳ１１０３に進む。一方、ステップＳ１１０２の判断の結果、適合するアドレスリストとポリシーとが存在しない場合、ステップＳ１１０５に進む。
【００６３】
ステップＳ１１０３において、ネットワーク接続装置１０１は適合するアドレスリストとポリシーとから、マスタアドレスを取得する際に、マスタアドレスが存在するか否かを判断する。この判断の結果、マスタアドレスが存在する場合は、マスタアドレスに変換を行い、ステップＳ１００４に進む。一方、ステップＳ１００３の判断の結果、マスタアドレスが存在しない場合は、ステップＳ１００５に進む。ステップＳ１１０４において、セキュアソケットにデータを渡し、処理を終了する。一方、ステップＳ１１０５においては、受信したデータを廃棄し、処理を終了する。
【００６４】
図１２は、本実施形態におけるネットワーク接続装置１０１の終了処理手順の一例を示すフローチャートである。
ステップＳ１２０１において、ネットワーク接続装置１０１は、アドレスリストとポリシーとの読み出しを行い、ステップＳ１２０２に進む。
【００６５】
ステップＳ１２０２において、ネットワーク接続装置１０１は、終了処理を行っているネットワーク接続装置との間のアドレスリストとポリシーとに記述されているアドレスやポリシーのうち、他のネットワーク接続装置との間のアドレスリストやポリシーが参照しているものがあるかどうかを判断する。この判断の結果、他のネットワーク接続装置との間のアドレスリストやポリシーが参照しているものがある場合は、ステップＳ１２０４に進む。一方、ステップＳ１２０２の判断の結果、他のネットワーク接続装置との間のアドレスリストやポリシーが参照しているものがない場合、ステップＳ１２０３に進む。
【００６６】
ステップＳ１２０３において、ネットワーク接続装置１０１は、参照されていないアドレスリストやポリシーの削除を行い、また、他のアドレスリストやポリシーが利用していないアドレスの削除を行い、ステップＳ１２０４に進む。ステップＳ１２０４において、ネットワーク接続装置１０１は、他のアドレスリストやポリシーが利用していないセッションを終了させ、処理を終了する。
【００６７】
以上のように、本実施形態においては、セキュリティの適用・非適用をポリシーにより制御することができ、ポリシーを記述するだけで、アプリケーションの変更なしにセキュリティの制御することができる。また、セキュリティの適用・非適用によるシグナリングオーバヘッドが低減され、高速な変更が可能となる。
【００６８】
また、行きの経路のポリシーと帰りの経路のポリシーを変更変えることにより、行きの経路のみ、セキュリティ通信を行うアドレスを利用し、帰りの経路はセキュリティ通信を行わないアドレスを利用した通信を行うことができる。また、アドレスリストに記載されるアドレスとは異なるアドレスを代表アドレスとして生成および選択することができる。これにより、代表アドレスとして扱えるアドレス形式は、アドレスリストに記載されるアドレスの形式に制約されなくなる。
【００６９】
また、ポリシーに不適合なデータを送信しようとした場合、データを送信するのではなく、データ送信を中止し、データを廃棄することができる。また、セキュリティが必要なデータをセキュリティなしの経路で送信を防ぐことが可能となる。また、ネットワーク接続装置がアドレスを保持せずに、アドレスが存在しない場合においても、動的にアドレスを生成することが可能となる。また、ポリシーに応じたセッションが存在しない場合においても、動的にセッションを張ることが可能となる。
【００７０】
（本発明に係る他の実施形態）
前述した本発明の実施形態におけるネットワーク接続装置を構成する各手段、並びにネットワーク接続方法の各ステップは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００７１】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００７２】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図９〜１２に示すフローチャートに対応したプログラム）を、システムまたは装置に直接、または遠隔から供給する。そして、そのシステムまたは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００７３】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００７４】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００７５】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスクなどがある。さらに、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などもある。
【００７６】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する方法がある。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００７７】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００７８】
また、その他の方法として、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記録媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７９】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００８０】
さらに、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００８１】
【図１】本発明の実施形態におけるネットワーク構成例を示す図である。
【図２】本発明の実施形態に係るネットワーク接続装置のハード構成例を示すブロック図である。
【図３】本発明の実施形態に係るネットワーク接続装置の内部モジュール構成の一例を示すブロック図である。
【図４】本発明の実施形態における全体シーケンスの一例を示すタイミングチャートである。
【図５】本発明の実施形態における全体シーケンスの他の例を示すタイミングチャートである。
【図６】本発明の実施形態に係るネットワーク接続装置におけるポリシーデータベースのエントリーの一例を示す図である。
【図７】本発明の実施形態に係るネットワーク接続装置におけるアドレスリストのエントリーの一例を示す図である。
【図８】本発明の実施形態に係る他のネットワーク接続装置におけるアドレスリストのエントリーの一例を示す図である。
【図９】本発明の実施形態に係るネットワーク接続装置における通信開始時の手順の一例を示すフローチャートである。
【図１０】本発明の一実施形態に係るネットワーク接続装置における送信処理手順の一例を示すフローチャートである。
【図１１】本発明の一実施形態に係るネットワーク接続装置における受信処理手順の一例を示すフローチャートである。
【図１２】本発明の一実施形態に係るネットワーク接続装置における終了処理手順の一例を示すフローチャートである。
【符号の説明】
【００８２】
１００  ネットワーク
１０１  ネットワーク接続装置
１０２  ネットワーク接続装置
２００  入出力バス
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  ＮＥＴＩＦ
２０５  ＶＲＡＭ
２０６  ＣＲＴ
２０７  ＫＢＣ
２０８  ＫＢ
２０９  ＨＤＤ
２１０  ＦＤＤ
３０１  アプリケーション
３０２  セキュアソケット部
３０３  マスタアドレス選択部
３０４  アドレス選択部
３０５  ソケット生成部
３０６  ポリシーデータベース
３０７  ソケット
３０８  アドレス
３０９  アドレス
３１０  暗号化する通信路
３１１  暗号化しない通信路
【図１】
2008099211.tif 000003
【図２】
2008099211.tif 000004
【図３】
2008099211.tif 000005
【図４】
2008099211.tif 000006
【図５】
2008099211.tif 000007
【図６】
2008099211.tif 000008
【図７】
2008099211.tif 000009
【図８】
2008099211.tif 000010
【図９】
2008099211.tif 000011
【図１０】
2008099211.tif 000012
【図１１】
2008099211.tif 000013
【図１２】
2008099211.tif 000014