(57)【特許請求の範囲】
【請求項１】
ＶＰＮを用いて他の中継装置に接続し、前記他の中継装置に接続される通信端末と自装置に接続される通信端末とにおける通信を中継する中継装置であって、
前記他の中継装置との接続により構造化オーバレイを構成するとともに、当該構造化オーバレイを利用して、前記通信端末のプライベートアドレスに関する情報と当該通信端末が接続されている中継装置のグローバルアドレスを示す情報とを対応付けた経路データベースを、当該構造化オーバレイを構成する中継装置間で分散管理するオーバレイ構成手段と、
自装置に接続される前記通信端末から送信される通信データであって、当該通信データの宛先となる前記通信端末のプライベートアドレスを示す宛先情報を有する通信データを受信する第１受信手段と、
前記分散管理された経路データベースを参照し、前記第１受信手段によって受信した通信データの宛先情報が示すプライベートアドレスに対応するグローバルアドレスを特定する特定手段と、
前記特定手段によって特定されたグローバルアドレスが設定された前記他の中継装置に対して、前記第１受信手段によって受信した通信データを送信する第２送信手段と、
前記他の中継装置から送信される前記通信データを受信する第２受信手段と、
前記第２受信手段によって受信された通信データを、当該通信データの宛先情報が示すプライベートアドレスの前記通信端末に対して送信する第１送信手段と、
前記他の中継装置に接続すると、前記分散管理された経路データベースを参照し、当該経路データベースに含まれるプライベートアドレス以外のプライベートアドレスに関する情報を、自装置のグローバルアドレスに対応付けて当該経路データベースに登録する登録手段と、
前記登録手段によって登録された情報に係るプライベートアドレスを、自装置に接続される前記通信端末に割り当てる割当手段と
を具備する中継装置。
【請求項２】
前記第２送信手段は、通信データを送信するときには、特定の暗号鍵を用いて暗号化し、
前記第１送信手段は、前記第２受信手段によって受信された通信データを復号化して、当該通信データの宛先情報に係る通信端末に対して送信し、
前記第２送信手段における暗号化は、前記構造化オーバレイを構成するどの前記他の中継装置に送信する場合であっても、共通の暗号鍵を用いる
ことを特徴とする請求項１に記載の中継装置。
【請求項３】
前記特定手段によって特定された前記他の中継装置のグローバルアドレスと、当該グローバルアドレスを特定するために用いられた前記通信端末のプライベートアドレスに関する情報とを対応付けた情報を一定時間記憶する一時記憶手段をさらに具備し、
前記第２送信手段は、前記一時記憶手段に記憶された情報を参照して、当該情報に、前記第１受信手段によって受信された通信データの宛先情報が示すプライベートアドレスに対応付けられたグローバルアドレスが存在する場合には、前記第１受信手段によって受信された通信データを、当該グローバルアドレスが設定された他の中継装置に対して送信する
ことを特徴とする請求項１または請求項２に記載の中継装置。
【請求項４】
前記分散管理された経路データベースにおける前記通信端末のプライベートアドレスに関する情報とは、当該プライベートアドレスが含まれるネットワークアドレスを示し、
前記通信端末のプライベートアドレスと前記ネットワークアドレスとの対応関係を示すプレフィックスルールテーブルを記憶する記憶手段をさらに具備し、
前記特定手段は、前記記憶手段に記憶されたプレフィックスルールテーブルおよび前記分散管理された経路データベースを参照し、前記第１受信手段によって受信した通信データの宛先情報に示されるプライベートアドレスに対応するグローバルアドレスを特定する
ことを特徴とする請求項１乃至請求項３のいずれかに記載の中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のＬＡＮ（Local Area Network）をＶＰＮ（Virtual Private Network）により相互に接続する技術に関する。
【背景技術】
【０００２】
ＬＡＮなどのネットワーク間を相互に接続するための中継装置であるＶＰＮルータは、ネットワーク間で行われる通信をトンネリング・暗号化して通信データの中継をする。ＶＰＮを実現するプロトコルとしては、ＩＰｓｅｃ（Security Architecture for Internet Protocol）、ＰＰＴＰ（Point-to-Point Tunneling Protocol）、Ｌ２ＴＰ（Layer-2 Tunneling Protocol）が広く用いられている。
【０００３】
一般に、ＶＰＮルータにおけるＶＰＮの設定は複雑になることが多い。そのため、設定を簡素化する構成として、設定内容をサーバで一元的に生成し、ネットワークを介して各ルータに提供する技術が、例えば、特許文献１、２に開示されている。一方、この構成においては、サーバに処理の負荷が集中するため、大規模なネットワークへの適用が難しく、サーバが故障するとシステム全体が動作しなくなる。
【０００４】
ところで、端末間における通信において、分散ハッシュテーブルなどの構造化オーバレイを用いる技術が、例えば、特許文献３に開示されている。この技術によれば、通信への参加離脱において、設定を変更する必要がなく、情報を一元管理するサーバも不要である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１０４５４２号公報
【特許文献２】特開２００６−５４７０４号公報
【特許文献３】特開２００８−１７２７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献３に示すように、構造化オーバレイを用いた拠点の通信を実現することは可能であるが、この場合、通信に参加する端末全てにおいて、構造化オーバレイを構成するためのソフトウエアをインストールして予め設定を登録する必要があった。また、従来のＩＰｓｅｃなどを用いた構成の場合、ＶＰＮに参加する全ての機器の追加・削除に伴い、論理パスの設定や経路の設定を変更する必要があり、また、フルメッシュ通信を実現するためには、参加する端末の数に応じて多くの論理パスの設定、経路の設定を行わなくてはならなかった。
【０００７】
本発明は、上述の事情に鑑みてなされたものであり、異なる中継装置に接続された通信端末間におけるＶＰＮを用いた通信を容易に行うことを目的とする。
【課題を解決するための手段】
【０００８】
上述の課題を解決するため、本発明は、ＶＰＮを用いて他の中継装置に接続し、前記他の中継装置に接続される通信端末と自装置に接続される通信端末とにおける通信を中継する中継装置であって、前記他の中継装置との接続により構造化オーバレイを構成するとともに、当該構造化オーバレイを利用して、前記通信端末のプライベートアドレスに関する情報と当該通信端末が接続されている中継装置のグローバルアドレスを示す情報とを対応付けた経路データベースを、当該構造化オーバレイを構成する中継装置間で分散管理するオーバレイ構成手段と、自装置に接続される前記通信端末から送信される通信データであって、当該通信データの宛先となる前記通信端末のプライベートアドレスを示す宛先情報を有する通信データを受信する第１受信手段と、前記分散管理された経路データベースを参照し、前記第１受信手段によって受信した通信データの宛先情報が示すプライベートアドレスに対応するグローバルアドレスを特定する特定手段と、前記特定手段によって特定されたグローバルアドレスが設定された前記他の中継装置に対して、前記第１受信手段によって受信した通信データを送信する第２送信手段と、前記他の中継装置から送信される前記通信データを受信する第２受信手段と、前記第２受信手段によって受信された通信データを、当該通信データの宛先情報が示すプライベートアドレスの前記通信端末に対して送信する第１送信手段と、前記他の中継装置に接続すると、前記分散管理された経路データベースを参照し、当該経路データベースに含まれるプライベートアドレス以外のプライベートアドレスに関する情報を、自装置のグローバルアドレスに対応付けて当該経路データベースに登録する登録手段と、前記登録手段によって登録された情報に係るプライベートアドレスを、自装置に接続される前記通信端末に割り当てる割当手段と、を具備する中継装置を提供する。
【０００９】
また、別の好ましい態様において、前記第２送信手段は、通信データを送信するときには、特定の暗号鍵を用いて暗号化し、前記第１送信手段は、前記第２受信手段によって受信された通信データを復号化して、当該通信データの宛先情報に係る通信端末に対して送信し、前記第２送信手段における暗号化は、前記構造化オーバレイを構成するどの前記他の中継装置に送信する場合であっても、共通の暗号鍵を用いることを特徴とする。
【００１０】
また、別の好ましい態様において、前記特定手段によって特定された前記他の中継装置のグローバルアドレスと、当該グローバルアドレスを特定するために用いられた前記通信端末のプライベートアドレスに関する情報とを対応付けた情報を一定時間記憶する一時記憶手段をさらに具備し、前記第２送信手段は、前記一時記憶手段に記憶された情報を参照して、当該情報に、前記第１受信手段によって受信された通信データの宛先情報が示すプライベートアドレスに対応付けられたグローバルアドレスが存在する場合には、前記第１受信手段によって受信された通信データを、当該グローバルアドレスが設定された他の中継装置に対して送信することを特徴とする。
【００１１】
また、別の好ましい態様において、前記分散管理された経路データベースにおける前記通信端末のプライベートアドレスに関する情報とは、当該プライベートアドレスが含まれるネットワークアドレスを示し、前記通信端末のプライベートアドレスと前記ネットワークアドレスとの対応関係を示すプレフィックスルールテーブルを記憶する記憶手段をさらに具備し、前記特定手段は、前記記憶手段に記憶されたプレフィックスルールテーブルおよび前記分散管理された経路データベースを参照し、前記第１受信手段によって受信した通信データの宛先情報に示されるプライベートアドレスに対応するグローバルアドレスを特定することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、異なる中継装置に接続された通信端末間におけるＶＰＮを用いた通信を容易に行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る通信システムの構成を示すブロック図である。
【図２】本発明の実施形態に係る中継装置の構成を示すブロック図である。
【図３】中継装置における通信処理機能を実現する構成を説明する図である。
【図４】ＰＲテーブルの構成を説明する図である。
【図５】経路データベースの構成を説明する図である。
【図６】通信端末間のデータの通信における通信処理の動作を説明する図である。
【図７】変形例１に係る中継装置におけるネットワークアドレス登録処理を説明する図である。
【発明を実施するための形態】
【００１５】
以下、本発明の一実施形態について説明する。
【００１６】
＜実施形態＞
図１は、本発明の実施形態に係る通信システム１の構成を示すブロック図である。通信システム１は、拠点Ａ、Ｂ、Ｃ、Ｄのそれぞれに設けられた中継装置２０Ａ、２０Ｂ、２０Ｃ、２０Ｄ（以下、それぞれを区別しない場合には、中継装置２０という）、および各中継装置２０に接続される通信端末（図示略）により構成されるＬＡＮ３０Ａ、３０Ｂ、３０Ｃ、３０Ｄ（以下、それぞれを区別しない場合には、ＬＡＮ３０という）を有している。各中継装置２０は、各ＬＡＮ３０をインターネットなどの公衆網である通信網１０に接続し、各ＬＡＮ３０における通信端末から他のＬＡＮ３０における通信端末への通信を中継する。
【００１７】
中継装置２０は、例えばＶＰＮルータであり、特定の通信プロトコル（例えば、ＩＰ（Internet Protocol））に従って、通信網１０から送信されてくるデータのブロックであるパケットを受信し、接続されているＬＡＮ３０における各通信端末宛てのパケットである場合に、その宛先の通信端末にそのパケットを伝送する。一方、ＬＡＮ３０から送信されてくるパケットについては、パケットの宛先の通信端末が接続されている中継装置２０に伝送する。また、中継装置２０は、他の中継装置２０と通信網１０を介して後述するＶＰＮ処理部２１３（図３参照）によってＶＰＮにより接続する。さらに、後述する構造化オーバレイ処理部２１２（図３参照）によって、分散ハッシュテーブルなどの構造化オーバレイを構成する。中継装置２０の構成について図２を用いて説明する。
【００１８】
図２は、本発明の実施形態に係る中継装置２０の構成を示すブロック図である。中継装置２０は、制御部２１、ＵＩ（User Interface）部２２、第１通信ＩＦ（Interface）部２３、第２通信ＩＦ部２４、記憶部２５を有し、これらの各構成はバス２６を介して接続されている。
【００１９】
制御部２１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを有する。ＣＰＵは、ＲＯＭに記憶されている制御プログラムを読み出して、ＲＡＭにロードして実行することにより、中継装置２０の各部について、バス２６を介して制御し、後述する通信処理機能などを実現する。また、ＲＡＭは、ＣＰＵが各データの加工などを行う際のワークエリアとして機能する。
【００２０】
ＵＩ部２２は、中継装置２０の管理者によって各種設定が行われるときに用いられるキーボード、操作ボタンなどの操作部、設定画面表示など制御部２１の制御に応じた表示を行う液晶ディスプレイなどの表示部を有している。ＵＩ部２２は、操作部が操作されると、その操作内容を示すデータが制御部２１へ出力される。なお、このＵＩ部２２は無くてもよく、この場合には、通信網１０、ＬＡＮ３０などのネットワークを介して、図示しない管理装置における遠隔操作により各種設定を行う。
【００２１】
第１通信ＩＦ部２３、第２通信ＩＦ部２４は、ＮＩＣ（Network Interface Card）などの通信手段である。第１通信ＩＦ部２３はＬＡＮ３０に接続し、より詳細には、中継装置２０Ａ、２０Ｂ、２０Ｃ、２０Ｄにおける第１通信ＩＦ部２３は、それぞれＬＡＮ３０Ａ、３０Ｂ、３０Ｃ、３０Ｄと接続する。一方、第２通信ＩＦ部２４は、通信網１０と接続する。
【００２２】
第１通信ＩＦ部２３、第２通信ＩＦ部２４は、それぞれ接続されるネットワークからパケットを受信すると、制御部２１に出力する一方、制御部２１から出力されるパケットを接続されるネットワーク（通信網１０またはＬＡＮ３０）に送出する。
【００２３】
記憶部２５は、例えば、ハードディスク、不揮発性メモリなどであり、制御部２１によりデータの読み出し、書き込みが行われる。記憶部２５には、例えば、ＵＩ部２２の操作などにより中継装置２０に設定された内容を示す設定情報、制御プログラムの一部などが記憶されている。また、その他にも、ＰＲ（プレフィックスルール（Prefix Rule））テーブル２５１、経路表２５２、経路レコード２５３、経路キャッシュ２５４、暗号鍵２５５（図３参照）などについても記憶されている。これらの詳細については後述する。以上が、中継装置２０の構成についての説明である。
【００２４】
次に、制御部２１が制御プログラムを実行することによって実現される通信処理機能について、図３から図５を用いて説明する。通信処理機能とは、通信網１０に接続されている各中継装置２０と構造化オーバレイを構成するとともに、この中継装置２０に接続されたＬＡＮ３０における通信端末と他の中継装置２０に接続されたＬＡＮ３０における通信端末との通信を中継する機能である。なお、以下に説明する通信処理機能における各構成については、ハードウエアによって実現してもよい。
【００２５】
図３は、通信処理機能を実現する構成を説明する図である。この通信処理機能の実現には、パケット処理部２１１、構造化オーバレイ処理部２１２、ＶＰＮ処理部２１３、経路管理部２１４および記憶部２５に記憶されたＰＲテーブル２５１、経路表２５２、経路レコード２５３、経路キャッシュ２５４、暗号鍵２５５を用いる。まず、記憶部２５に記憶された各情報について説明する。
【００２６】
図４は、ＰＲテーブル２５１の構成を説明する図である。ＰＲテーブル２５１は、パケットの宛先情報に示されるプライベートアドレスが含まれるネットワークアドレスを示す情報であり、後述する経路データベースに問い合わせるときの検索キーとなるネットワークアドレスと、そのネットワークアドレスにおけるプレフィックスレングス（ＰＬ：Prefix Length）とを対応付けた情報である。
【００２７】
例えば、図４に示すＰＲテーブル２５１においては、ネットワークアドレス「１９２．１６８．１００．０」は、プレフィックスレングス「２６」であり、「１９２．１６８．１００．０」から「１９２．１６８．１００．６３」の範囲のプライベートアドレスを含んでいることを示す。そのため、例えば、プライベートアドレスが「１９２．１６８．１００．７」であれば、対応するネットワークアドレスは「１９２．１６８．１００．０」となる。そして、プライベートアドレスに対応するネットワークアドレスがＰＲテーブル２５１上に無いものについては、デフォルトとしてプレフィックスレングスが「２４」であるものとして扱われる。
【００２８】
このように、ＰＲテーブル２５１は、ネットワークアドレスとプライベートアドレスとの対応関係を示すものである。なお、このＰＲテーブル２５１は、通信網１０に接続されるものとして予定されている中継装置２０の各々が配下にもつネットワークアドレス全てとプレフィックスレングスの関係が予め対応付けられて登録されているものとするが、後述する経路データベースのように構造化オーバレイを利用して分散管理するようにすれば、自装置の配下のネットワークアドレスとプレフィックスレングスの対応関係を記憶するだけでもよい。
【００２９】
経路表２５２は、この経路表２５２を記憶する中継装置２０自身が配下に持つネットワークアドレスが登録されている。すなわち、この中継装置２０に接続されるＬＡＮ３０におけるネットワークアドレスと、この中継装置２０自身に設定されているグローバルアドレスとを対応付けた情報である。なお、中継装置２０自身のグローバルアドレスをホスト経路として登録してもよい。また、従来の技術で用いられているルーティングテーブルなどの経路表に対応する情報が登録されていてもよい。
【００３０】
経路レコード２５３は、構造化オーバレイを利用して分散管理される経路データベースの一部を記憶する。この経路データベースは、通信網１０に接続される各中継装置２０において記憶されている経路表２５２を統合したものである。そのため、経路レコード２５３は、各中継装置２０の経路表２５２に応じた内容であり、例えば、自装置の経路表２５２と、他の中継装置２０の経路表２５２の一部とを含むものである。この経路レコード２５３は、通信網１０に接続される他の中継装置２０が変更されたり、他の中継装置２０の経路表２５２が変更されたりして、経路データベースが変更されると、構造化オーバレイ処理部２１２によって内容が更新される。
【００３１】
図５は、経路データベースの構成を説明する図である。経路データベースは、上述したように、構造化オーバレイを利用して、各中継装置２０の経路レコード２５３として分散管理されるものであり、データベース全体として、各中継装置２０における経路表２５２を統合した内容となっている。したがって、経路データベースは、ネットワークアドレスとそのネットワークアドレスを配下にもつ中継装置２０のグローバルアドレスとを対応付けたものとなっている。
【００３２】
例えば、図５に示す経路データベースにおいては、ネットワークアドレス「１９２．１６８．１００．０」は、グローバルアドレスが「２ｘｘ．１００．２００．１」の中継装置２０の配下にあることを示している。後述する構造化オーバレイ処理部２１２により、ネットワークアドレスを検索キーとして経路データベースに問い合わせると、対応する中継装置２０のグローバルアドレスを応答として取得できるようになっている。このように経路データベースを構造化オーバレイにより分散管理することにより、各中継装置２０の経路表２５２を経路データベースと同じものとしなくてよい。
【００３３】
なお、経路データベースは、通信網１０に接続される各中継装置２０のグローバルアドレスと、各中継装置２０に接続されるＬＡＮ３０の通信端末のプライベートアドレスとの対応関係が分かるような構成となっていればよいから、グローバルアドレスに対応する情報がネットワークアドレスで表されるものでなくてもよく、プライベートアドレスに関する情報であればどのようなものであってもよい。例えば、プライベートアドレスに関する情報を、プライベートアドレスをそのものとしてもよいし、範囲で指定した情報であってもよい。また、ネットワークアドレスとプレフィックスレングスとにより示される情報とすれば、ＰＲテーブル２５１が無くてもよい。
【００３４】
経路キャッシュ２５４は、上述のようにして取得したネットワークアドレスとグローバルアドレスとの対応関係を一定時間記憶しておき、同じネットワークアドレスについては、経路データベースへの問い合わせをしなくても、経路キャッシュ２５４を参照することにより、この対応関係の取得を高速化する。
【００３５】
暗号鍵２５５は、後述するＶＰＮ処理部２１３における暗号化、復号化において用いられる鍵である。この例においては、各中継装置２０に対する送信に対して暗号化するときでも共通の鍵を用いるものとするが、中継装置２０毎に対応する鍵を用いてもよい。以上が、記憶部２５に記憶された各情報についての説明である。
【００３６】
次に、図３に戻って、パケット処理部２１１、構造化オーバレイ処理部２１２、ＶＰＮ処理部２１３、経路管理部２１４について説明する。
【００３７】
パケット処理部２１１は、第１通信ＩＦ部２３において、この中継装置２０に接続されるＬＡＮ３０の通信端末から送信された通信データであるパケットを受信すると、受信したパケットを取得する。このパケットには、宛先となる通信端末のプライベートアドレスを示す宛先情報が含まれている。パケット処理部２１１は、経路表２５２を参照して、このパケットの宛先のプライベートアドレスがこの中継装置２０に接続されたＬＡＮ３０の通信端末でない場合には、このパケットをＶＰＮ処理部２１３に出力する。そして、出力の応答として、後述するＶＰＮ送信処理が施されたパケットを取得して第２通信ＩＦ部２４から通信網１０を介して、後述のようにして決められたグローバルアドレスの他の中継装置２０に対して送信する。
【００３８】
パケット処理部２１１は、第２通信ＩＦ部２４において、通信網１０からＶＰＮ送信処理が施されたパケットを受信すると、受信したパケットを取得する。そして、このパケットをＶＰＮ処理部２１３に出力する。出力の応答として、後述するＶＰＮ受信処理が施されたパケットを取得して、経路表２５２を参照して第１通信ＩＦ部２３から宛先情報に示されるプライベートアドレスの通信端末に送信する。
【００３９】
構造化オーバレイ処理部２１２は、予め決められた構造化オーバレイのプロトコルに則って、パケット処理部２１１、第２通信ＩＦ部２４を介して行われる他の中継装置２０との通信を制御して、通信網１０に接続された中継装置２０間で構造化オーバレイを構成する。そして、構造化オーバレイ処理部２１２は、経路データベースを、構造化オーバレイを利用して各中継装置２０で経路レコード２５３として分散管理し、この経路データベースにネットワークアドレスを検索キーとして問合せを行うと、応答として他の中継装置２０を示すグローバルアドレスを取得することにより、パケットを送信すべき中継装置２０のグローバルアドレスを特定するようになっている。
【００４０】
構造化オーバレイ処理部２１２は、後述するようにＶＰＮ処理部２１３から通知されるプライベートアドレスに対応するネットワークアドレスを、ＰＲテーブル２５１を参照して認識し、このネットワークアドレスを経路データベースに問合せを行うときの検索キーとする。そして、特定したグローバルアドレスをＶＰＮ処理部２１３に通知する。
【００４１】
ＶＰＮ処理部２１３は、第１通信ＩＦ部２３によって受信されたパケットがパケット処理部２１１から入力されると、ＶＰＮ送信処理を行う。ＶＰＮ送信処理は、以下のように行う。まず、入力されたパケットの宛先情報に示されるプライベートアドレスを取得する。そして、経路キャッシュ２５４を参照して、このプライベートアドレスに対応するグローバルアドレスが存在するか否かを判定し、存在する場合には、そのグローバルアドレスを取得する。一方、存在しない場合には、構造化オーバレイ処理部２１２に対して、このプライベートアドレスを通知し、経路データベースからの応答であるグローバルアドレスを取得する。このとき、プライベートアドレスと取得したグローバルアドレスとの対応関係を経路キャッシュ２５４に一定時間記憶させる。
【００４２】
そして、暗号鍵２５５を参照して、このパケットを暗号化してパケット処理部２１１、第２通信ＩＦ部２４を介して、暗号化したパケットを取得したグローバルアドレスの中継装置２０に送信する。以上が、ＶＰＮ送信処理である。
【００４３】
ＶＰＮ処理部２１３は、第２通信ＩＦ部２４によって受信されたパケット（他の中継装置２０においてＶＰＮ送信処理済みのパケット）がパケット処理部２１１から入力されると、ＶＰＮ受信処理を行う。ＶＰＮ受信処理は、暗号鍵２５５を参照して、暗号化されたパケットの復号化を行いパケット処理部２１１に出力する処理である。上述したように、復号化したパケットを出力すると、このパケットは、パケット処理部２１１、第１通信ＩＦ部２３を介して、パケットの宛先情報に示されるプライベートアドレスの通信端末に送信される。
【００４４】
経路管理部２１４は、ＯＳＰＦ（Open Shortest Path First）、ＲＩＰ（routing information protocol）などのルーティングプロトコルにより、構造化オーバレイ処理部２１２における経路を管理、および経路表２５２の更新を行う。なお、ルーティングプロトコルを使用せずに静的に経路を設定してもよい。
【００４５】
一般的に、ＶＰＮの経路を設定するときには、送信先の中継装置のそれぞれに対応する仮想的なインターフェースを定義し、それを宛先とするような経路を記述することが多い。しかし、この方法では、ネットワークに参加する中継装置の増減に合わせて経路を変更する必要が生じ、管理の負担が大きくなる。これに対して本発明では、送信先の複数の中継装置２０を集約した仮想的なインターフェースを１つだけ定義し、このインターフェースを宛先とする経路を記述すればよい。このようにすることで、ネットワークに参加する中継装置２０の増減があっても経路の設定を変えずに運用でき、管理の負担を低減できる。以上が、通信処理機能についての説明である。
【００４６】
次に、中継装置２０の動作について説明する。まず、ネットワークに参加するときの動作を説明し、その後、通信端末間の通信を行うときの通信システム１の動作について、図６を用いて説明する。
【００４７】
まず、中継装置２０の管理者は、各中継装置２０について、初期ノード、事前共有鍵、装置名称を設定する。初期ノードとは、ネットワークに参加するために最初にアクセスする装置を示し、サーバなどの特殊なノードでなく、ネットワークに参加する任意のノード、例えば、他の中継装置２０のグローバルアドレスが設定される。事前共有鍵は、ＶＰＮ処理部２１３で用いられる暗号鍵２５５とは異なり、構造化オーバレイ処理部２１２で用いられ、構造化オーバレイのメッセージなどの制御メッセージを暗号化する鍵である。装置名称とは、ネットワーク上でこの中継装置２０を識別するための名前であって、構造化オーバレイ上でのノードの識別子として利用される。
【００４８】
各中継装置２０は、これらの設定を元にネットワークに参加し、構造化オーバレイを利用して分散管理される経路データベースのうち、自装置に記憶されている経路レコード２５３を初期化する。経路データベースが分散管理されることにより、新たに中継装置２０がネットワークに参加しても、新たな中継装置に上記設定がされていれば、すでにネットワーク上にある中継装置２０については、設定を変更する必要はない。そして、中継装置２０は、ネットワークに参加すると、構造化オーバレイを利用して分散管理される経路データベースに対して自装置の経路表２５２を登録することにより、他の中継装置２０に対して自装置の存在を知らせることができる。
【００４９】
図６は、通信端末間のデータの通信における通信処理の動作を説明する図である。この説明においては、中継装置２０Ａに接続された通信端末Ａ−Ｘからパケットにより通信データが送信され、パケットの宛先情報は、中継装置２０Ｂ（グローバルアドレス「２ｘｘ．１００．２００．１」）に接続された通信端末Ｂ−Ｙ（プライベートアドレス「１９２．１６８．１００．２」）を示すものとする。また、ＰＲテーブル２５１は図４に示す内容であり、構造化オーバレイを利用して分散管理された経路データベースは図５に示す内容であるものとする。
【００５０】
まず、通信端末Ａ−Ｘは、通信端末Ｂ−Ｙに対するデータ送信の処理を行う（ステップＳ１１０）。これにより送信されるデータのパケットが中継装置２０Ａにおいて受信されると、中継装置２０Ａは、このパケットの宛先情報を参照して、宛先となる通信端末のプライベートアドレスを認識する（ステップＳ１２０）。中継装置２０Ａは、プライベートアドレス「１９２．１６８．１００．２」を認識すると、ＰＲテーブル２５１を参照し、対応するネットワークアドレスを検索キーとして抽出する（ステップＳ１３０）。これにより抽出される検索キーは、ネットワークアドレス「１９２．１６８．１００．０」となる。
【００５１】
そして、中継装置２０Ａは、自装置の経路キャッシュ２５４に検索キーに対応したアドレスがあるか否かを判定（ステップＳ１３５）し、対応するアドレスがある場合（ステップＳ１３５；Ｙｅｓ）には、そのアドレスの中継装置２０Ｂを、パケットを送信する経路として認識する（ステップＳ１６０）。一方、対応するアドレスが無い場合（ステップＳ１３５；Ｎｏ）には、構造化オーバレイを利用して分散管理される経路データベース（経路ＤＢ）に対して、検索キーにより問い合わせを行う（ステップＳ１４０）。そして、経路データベースを参照（ステップＳ１５０）した結果得られる検索キーに対応したアドレス（グローバルアドレス「２ｘｘ．１００．２００．１」）が中継装置２０Ａに通知され、中継装置２０Ａにおいて、このグローバルアドレスの中継装置２０Ｂを、パケットを送信する経路として認識する（ステップＳ１６０）。ここで、経路データベースを参照することによって認識した経路については、自装置の経路キャッシュ２５４に登録しておく。
【００５２】
中継装置２０Ａは、通信端末Ａ−Ｘから受信したパケットにＶＰＮ送信処理（ステップＳ１７０）を施し、中継装置２０Ｂを宛先として、暗号化されたパケットを仮想インターフェースにより通信網１０を通して中継装置２０Ｂへ送信する。
【００５３】
中継装置２０Ｂは、仮想インターフェースにより構造化オーバレイのネットワークから、中継装置２０ＡにおいてＶＰＮ送信処理が施されたパケットを受信し、ＶＰＮ受信処理（ステップＳ１８０）を施して復号化する。そして、復号化されたパケットの宛先情報が示すプライベートアドレス「１９２．１６８．１００．２」の通信端末（通信端末Ｂ−Ｙ）を認識（ステップＳ１９０）し、その通信端末Ｂ−Ｙに復号化されたパケットを送信する。そして、通信端末Ｂ−Ｙは、中継装置２０Ｂから送信されたパケットを受信することによって、通信端末Ａ−Ｘから送信されたデータを受信する（ステップＳ２００）。
【００５４】
このように、本発明の実施形態における中継装置２０は、構造化オーバレイを利用して分散管理される経路データベースを参照して、接続される通信端末から送信されるパケットの宛先情報に対応した他の中継装置２０を送信経路として認識し、このパケットを送信経路に従って送信することにより、送信先の中継装置２０に接続された通信端末に対して受信させることができる。このとき、経路データベースが分散管理されているから、新たに中継装置２０がネットワークに参加したり、離脱したりしても、他の中継装置２０の設定を事前に変更する必要はなく、また各中継装置２０において記憶すべき経路表２５２のデータ量も少なくすることができる。さらに、中継装置２０に接続される通信端末においては、構造化オーバレイを利用するための特別なソフトウエアなどを必要とせず、この中継装置２０に接続して通信を行えばよく、単一障害点となるような全体を管理するサーバが存在しなくてもよいから、システムが堅牢である。
【００５５】
以上、本発明の実施形態について説明したが、本発明は以下のように、さまざまな態様で実施可能である。
【００５６】
＜変形例１＞
上述した実施形態においては、経路表２５２には、中継装置２０の配下のネットワークアドレスが予め登録されていたが、登録されていない、また配下のネットワークアドレスを追加する場合などにより、ネットワークアドレスの登録指示があったときには、中継装置２０がネットワークに参加するときに、他の中継装置２０の配下のネットワークアドレス以外のネットワークアドレスを自動的に登録するようにしてもよい。この登録処理の一例について、図７を用いて説明する。
【００５７】
図７は、変形例１に係る中継装置２０におけるネットワークアドレス登録処理を説明する図である。中継装置２０は、経路表２５２へのネットワークアドレスの登録指示があると、ネットワークアドレス登録処理を開始する。まず、中継装置２０は、登録すべきネットワークアドレスの候補となる仮アドレスを決定する（ステップＳ３１０）。そして、その仮アドレスを検索キーとして、構造化オーバレイを利用して分散管理された経路データベース（ＤＢ）に問い合わせる（ステップＳ３２０）。
【００５８】
問い合わせの応答として、対応するグローバルアドレスが通知された場合（ステップＳ３３０；Ｙｅｓ）には、仮アドレスとして決定したネットワークアドレスは、そのグローバルアドレスの中継装置２０の配下にあるものであるから、仮アドレスを変更（ステップＳ３４０）して、再び経路データベースに問い合わせる（ステップＳ３２０）。
【００５９】
一方、問い合わせの応答として、対応するグローバルアドレスがなく、エラーが通知された場合（ステップＳ３３０；Ｎｏ）には、仮アドレスとして決定したネットワークアドレスは、どの中継装置２０においても配下としていないものであるから、これを自装置の配下のネットワークアドレスとして経路表２５２に登録するとともに経路データベースにも登録する（ステップＳ３５０）。このようにすれば、各中継装置２０において配下とするネットワークアドレスが、他の中継装置２０と重複することがなくなる。なお、このようにして登録されたネットワークアドレスに含まれるプライベートアドレスを自装置に接続されている通信端末に自動的に割り当ててもよい。
【００６０】
また、中継装置２０がネットワークに参加して、経路データベースに配下とするネットワークアドレスを登録するときに、すでにそのネットワークアドレスとグローバルアドレスとの対応関係が登録されているときには、エラー通知をして管理者に変更を促してもよいし、自装置の経路表２５２を初期化して上記のネットワークアドレス登録処理を開始してもよい。
【００６１】
また、特定の中継装置２０の配下となるネットワークアドレスとその中継装置２０のグローバルアドレスとの対応関係を、その中継装置２０がネットワークに参加しているか否かにかかわらず、経路データベースに登録されるようにして、他の中継装置２０においてそのネットワークアドレスが用いられないように予約しておいてもよい。
【００６２】
＜変形例２＞
上述した実施形態において、各中継装置２０のＶＰＮ処理部２１３における暗号化、復号化において用いられる暗号鍵は、予め記憶部２５に記憶された暗号鍵２５５であったが、構造化オーバレイを利用して、各中継装置２０において分散管理されるようにしてもよい。
【００６３】
＜変形例３＞
上述した実施形態における制御プログラムは、磁気記録媒体（磁気テープ、磁気ディスクなど）、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリなどのコンピュータ読取り可能な記録媒体に記憶した状態で提供し得る。この場合には、記録媒体を読み取るインターフェイスを中継装置２０に設ければよい。また、ネットワーク経由でダウンロードさせることも可能である。
【符号の説明】
【００６４】
１…通信システム、１０…通信網、２０，２０Ａ，２０Ｂ，２０Ｃ，２０Ｄ…中継装置、２１…制御部、２２…ＵＩ部、２３…第１通信ＩＦ部、２４…第２通信ＩＦ部、２５…記憶部、２６…バス、２１１…パケット処理部、２１２…構造化オーバレイ処理部、２１３…ＶＰＮ処理部、２１４…経路管理部、２５１…ＰＲテーブル、２５２…経路表、２５３…経路レコード、２５４…経路キャッシュ、２５５…暗号鍵、３０，３０Ａ，３０Ｂ，３０Ｃ，３０Ｄ…ＬＡＮ
【図１】
0005601067.tif 000002
【図２】
0005601067.tif 000003
【図３】
0005601067.tif 000004
【図４】
0005601067.tif 000005
【図５】
0005601067.tif 000006
【図６】
0005601067.tif 000007
【図７】
0005601067.tif 000008