(57)【要約】【課題】  サーバが複数存在する場合であっても、インターネット上の複数のサーバと、プライベートネットワーク上の複数のクライアントとの間の通信を適切に行えるようにする。【解決手段】  ルーティング装置３は、送信先アドレスと送信元アドレスとを対応付けた変換表７を予め記憶装置に記憶する。ルーティング装置３は、グローバルネットワーク４を介して、サーバ５，６からデータを受信する。すると、ルーティング装置３は、受信データに含まれる送信元アドレス（グローバルアドレス）を抽出する。また、ルーティング装置３は、抽出した送信元アドレスに対応する送信先アドレス（プライベートアドレス）を、変換表７から抽出する。そして、ルーティング装置３は、抽出した送信先アドレスに示されるクライアント１，２に、プライベートネットワークを介してデータを中継送信する。【選択図】  図１
2006246385.tif 000002
【特許請求の範囲】
【請求項１】
グローバルネットワークに接続される複数のサーバと、プライベートネットワークに接続される複数のクライアントとの通信のルーティングを行うルーティング方法であって、
いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示す送信元アドレスを、前記受信データから抽出する送信元抽出ステップと、
前記抽出した送信元アドレスに基づいて、送信先のクライアントを特定する送信先特定ステップと、
前記特定したクライアントに、プライベートネットワークを介して前記受信データを送信するデータ送信ステップとを含む
ことを特徴とするルーティング方法。
【請求項２】
送信先となりうるクライアントを示す送信先アドレスと、送信元となりうるサーバを示す送信元アドレスとを対応付けた対応テーブルを、予め記憶する記憶ステップを含み、
送信先特定ステップで、受信データから抽出した送信元アドレスに対応する送信先アドレスを前記対応テーブルから抽出することによって、送信先のクライアントを特定し、
データ送信ステップで、前記抽出した送信先アドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信する
請求項１記載のルーティング方法。
【請求項３】
いずれかのクライアントからプライベートネットワークを介してデータを受信すると、送信元のクライアントを示すクライアント側送信元アドレスを、前記受信データから抽出するステップと、
対応テーブルに含まれる送信先アドレスのうち、前記抽出したクライアント側送信元アドレスに合致する送信先アドレスを特定するステップと、
前記特定した送信先アドレスに対応する送信元アドレスを、前記対応テーブルから抽出するステップと、
前記抽出した送信元アドレスに示されるサーバに、グローバルネットワークを介して前記受信データを送信するステップとを含む
請求項２記載のルーティング方法。
【請求項４】
記憶ステップで、送信先アドレスとして、各クライアントのプライベートアドレスを含む対応テーブルを記憶し、
送信先特定ステップで、受信データから抽出した送信元アドレスに対応するプライベートアドレスを、前記対応テーブルから抽出し、
データ送信ステップで、前記抽出したプライベートアドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信する
請求項２又は請求項３記載のルーティング方法。
【請求項５】
記憶ステップで、送信元アドレスとして、各サーバのグローバルアドレスを含む対応テーブルを記憶する請求項２から請求項４のうちのいずれか１項に記載のルーティング方法。
【請求項６】
記憶ステップで、送信元アドレスとして、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを記憶し、
送信先特定ステップで、受信データから抽出した送信元アドレスの一部分が、前記対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応する送信先アドレスを前記対応テーブルから抽出する
請求項２から請求項５のうちのいずれか１項に記載のルーティング方法。
【請求項７】
記憶ステップで、送信元となりうるサーバを示すドメインネームを、送信先アドレスに対応付けた対応テーブルを予め記憶し、
送信元抽出ステップで、いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示すドメインネームを、前記受信データから抽出し、
送信先特定ステップで、受信データから抽出したドメインネームに対応する送信先アドレスを、前記対応テーブルから抽出する
請求項２から請求項６のうちのいずれか１項に記載のルーティング方法。
【請求項８】
グローバルネットワークに接続される複数のサーバと、プライベートネットワークに接続される複数のクライアントとの通信のルーティングを行うルーティング装置であって、
いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示す送信元アドレスを、前記受信データから抽出する送信元抽出手段と、
前記送信元抽出手段が抽出した送信元アドレスに基づいて、送信先のクライアントを特定する送信先特定手段と、
前記送信先特定手段が特定したクライアントに、プライベートネットワークを介して前記受信データを送信するデータ送信手段とを備えた
ことを特徴とするルーティング装置。
【請求項９】
送信先となりうるクライアントを示す送信先アドレスと、送信元となりうるサーバを示す送信元アドレスとを対応付けた対応テーブルを、予め記憶する記憶手段を備え、
送信先特定手段は、送信元抽出手段が抽出した送信元アドレスに対応する送信先アドレスを、前記記憶手段が記憶する対応テーブルから抽出することによって、送信先のクライアントを特定し、
データ送信手段は、前記送信先特定手段が抽出した送信先アドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信する
請求項８記載のルーティング装置。
【請求項１０】
いずれかのクライアントからプライベートネットワークを介してデータを受信すると、送信元のクライアントを示すクライアント側送信元アドレスを、前記受信データから抽出する抽出手段と、
記憶手段が記憶する対応テーブルに含まれる送信先アドレスのうち、前記抽出手段が抽出したクライアント側送信元アドレスに合致する送信先アドレスを特定する特定手段と、
前記特定手段が特定した送信先アドレスに対応する送信元アドレスを、前記記憶手段が記憶する対応テーブルから抽出する抽出手段と、
前記抽出手段が抽出した送信元アドレスに示されるサーバに、グローバルネットワークを介して前記受信データを送信する送信手段とを備えた
請求項９記載のルーティング装置。
【請求項１１】
記憶手段は、送信先アドレスとして、各クライアントのプライベートアドレスを含む対応テーブルを記憶し、
送信先特定手段は、受信データから抽出した送信元アドレスに対応するプライベートアドレスを、前記記憶手段が記憶する対応テーブルから抽出し、
データ送信手段は、前記送信先特定手段が抽出したプライベートアドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信する
請求項９又は請求項１０記載のルーティング装置。
【請求項１２】
記憶手段は、送信元アドレスとして、各サーバのグローバルアドレスを含む対応テーブルを記憶する請求項９から請求項１１のうちのいずれか１項に記載のルーティング装置。
【請求項１３】
記憶手段は、送信元アドレスとして、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを記憶し、
送信先特定手段は、受信データから抽出した送信元アドレスの一部分が、前記記憶手段が記憶する対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応する送信先アドレスを前記対応テーブルから抽出する
請求項９から請求項１２のうちのいずれか１項に記載のルーティング装置。
【請求項１４】
記憶手段は、送信元となりうるサーバを示すドメインネームを、送信先アドレスに対応付けた対応テーブルを予め記憶し、
送信元抽出手段は、いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示すドメインネームを、前記受信データから抽出し、
送信先特定手段は、受信データから抽出したドメインネームに対応する送信先アドレスを、前記記憶手段が記憶する対応テーブルから抽出する
請求項９から請求項１３のうちのいずれか１項に記載のルーティング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グローバルネットワーク上のサーバと、プライベートネットワーク上のクライアントとの間の通信のルーティングを行うルーティング方法及びルーティング装置に関する。
【背景技術】
【０００２】
グローバルネットワーク（例えば、インターネット）上のサーバとプライベートネットワーク（例えば、ホームネットワークやＬＡＮ）上のクライアントとの間で、グローバルネットワーク及びプライベートネットワークを介して相互に通信を行うことがある。この場合、例えば、インターネット上のサーバはグローバルアドレスを用いてデータを送受信し、プライベートネットワーク上のクライアントはプライベートアドレスを用いてデータを送受信する。そのため、ルーティング装置（例えば、ルータ）を用いて、グローバルアドレスとプライベートアドレスとの間のアドレス変換を行うことによって、サーバとクライアントとの間の通信を中継する。
【０００３】
アドレス変換処理を行うルーティング装置として、例えば、特許文献１及び特許文献２には、Network Address Translator（ＮＡＴ）やマスカレード機能を用いてアドレス変換処理を行うルータが記載されている。
【０００４】
【特許文献１】特開２０００−２７０００４号公報（段落００１０−００１３、図１−５）
【特許文献１】特開２００２−３７４２７５号公報（段落００６４−００６９、図１−２）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１や特許文献２に記載されたルータ等の従来のルーティング装置を用いる場合、インターネット上のサーバがプライベートネットワーク上のクライアントにデータを送信すると、ルーティング装置は、例えば、サーバのポート番号に基づいて宛先のクライアントの振り分けを行う。そして、ルーティング装置は、振り分け処理によって特定した送信先のクライアントにデータを中継する。また、ルーティング装置は、例えば、サーバから受信した全てのデータを、予め指定された１つの利用者機器（クライアント）に中継する。
【０００６】
しかし、一般に、ルーティング装置は、インターネット上の１つのサーバからのデータを中継するだけでなく、複数のサーバからのデータを中継する。この場合、インターネット上の複数のサーバが偶然同じポート番号を用いてデータの送受信を行うことがある。そのため、ルーティング装置は、同じポート番号を用いるサーバが複数存在すると送信元のサーバと特定できず、宛先のクライアントの振り分けを行えないことがある。また、それぞれのサーバに対して個別に接続を要求するクライアントが複数の存在する場合、ルーティング装置がポート番号による振り分けを行えず、サーバとクライアントとの間の通信を適切に行えないことがある。
【０００７】
また、同じポート番号を用いるサーバが複数存在すると、ルーティング装置は、ポート番号に基づいて宛先のサーバを特定することができず、クライアントからのデータを中継できないことがある。また、ルーティング装置が、予測されるポート番号の全てのサーバに宛先を振り分けることも考えられるが、サーバ及びクライアントが複数存在する場合にはポート番号に基づいて適切に宛先を振り分けることできず、サーバとクライアントとの間の通信を適切に行えないことがある。
【０００８】
また、サーバから受信した全てのデータを、ルーティング装置が予め指定された１つのクライアントに振り分ける方法を用いると、プライベートネットワーク上でデータの送受信を行えるクライアントが１つに制限されてしまう。
【０００９】
そこで、本発明は、サーバが複数存在する場合であっても、インターネット上の複数のサーバと、プライベートネットワーク上の複数のクライアントとの間の通信を適切に行えるルーティング方法及びルーティング装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明によるルーティング方法は、グローバルネットワーク（例えば、インターネット）に接続される複数のサーバと、プライベートネットワーク（例えば、企業内のＬＡＮ）に接続される複数のクライアントとの通信のルーティングを行うルーティング方法であって、いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示す送信元アドレス（例えば、グローバルアドレス）を、受信データから抽出する送信元抽出ステップと、抽出した送信元アドレスに基づいて、送信先のクライアントを特定する送信先特定ステップと、特定したクライアントに、プライベートネットワークを介して受信データを送信するデータ送信ステップとを含むことを特徴とする。
【００１１】
また、ルーティング方法は、送信先となりうるクライアントを示す送信先アドレス（例えば、プライベートアドレス）と、送信元となりうるサーバを示す送信元アドレスとを対応付けた対応テーブル（例えば、変換表７によって実現される）を、予め記憶する記憶ステップを含み、送信先特定ステップで、受信データから抽出した送信元アドレスに対応する送信先アドレスを対応テーブルから抽出することによって、送信先のクライアントを特定し、データ送信ステップで、抽出した送信先アドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信するものであることが望ましい。
【００１２】
また、ルーティング方法は、いずれかのクライアントからプライベートネットワークを介してデータを受信すると、送信元のクライアントを示すクライアント側送信元アドレス（例えば、プライベートアドレス）を、受信データから抽出するステップと、対応テーブルに含まれる送信先アドレスのうち、抽出したクライアント側送信元アドレスに合致する送信先アドレスを特定するステップと、特定した送信先アドレスに対応する送信元アドレスを、対応テーブルから抽出するステップと、抽出した送信元アドレスに示されるサーバに、グローバルネットワークを介して受信データを送信するステップとを含むものであってもよい。
【００１３】
また、ルーティング方法は、記憶ステップで、送信先アドレスとして、各クライアントのプライベートアドレスを含む対応テーブルを記憶し、送信先特定ステップで、受信データから抽出した送信元アドレスに対応するプライベートアドレスを、対応テーブルから抽出し、データ送信ステップで、抽出したプライベートアドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信するものであってもよい。
【００１４】
また、ルーティング方法は、記憶ステップで、送信元アドレスとして、各サーバのグローバルアドレスを含む対応テーブルを記憶するものであってもよい。
【００１５】
また、ルーティング方法は、記憶ステップで、送信元アドレスとして、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを記憶し、送信先特定ステップで、受信データから抽出した送信元アドレスの一部分が、対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応する送信先アドレスを対応テーブルから抽出するものであってもよい。
【００１６】
また、ルーティング方法は、記憶ステップで、送信元となりうるサーバを示すドメインネームを、送信先アドレスに対応付けた対応テーブルを予め記憶し、送信元抽出ステップで、いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示すドメインネームを、受信データから抽出し、送信先特定ステップで、受信データから抽出したドメインネームに対応する送信先アドレスを、対応テーブルから抽出するものであってもよい。
【００１７】
本発明によるルーティング装置は、グローバルネットワークに接続される複数のサーバと、プライベートネットワークに接続される複数のクライアントとの通信のルーティングを行うルーティング装置（例えば、ルータ３０）であって、いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示す送信元アドレスを、受信データから抽出する送信元抽出手段（例えば、ルータ３０のＣＰＵによって実現される）と、送信元抽出手段が抽出した送信元アドレスに基づいて、送信先のクライアントを特定する送信先特定手段（例えば、ルータ３０のＣＰＵによって実現される）と、送信先特定手段が特定したクライアントに、プライベートネットワークを介して受信データを送信するデータ送信手段（例えば、ルータ３０のＣＰＵ及びネットワークインタフェース部によって実現される）とを備えたことを特徴とする。
【００１８】
また、ルーティング装置は、送信先となりうるクライアントを示す送信先アドレスと、送信元となりうるサーバを示す送信元アドレスとを対応付けた対応テーブルを、予め記憶する記憶手段（例えば、記憶装置８０によって実現される）を備え、送信先特定手段は、送信元抽出手段が抽出した送信元アドレスに対応する送信先アドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のクライアントを特定し、データ送信手段は、送信先特定手段が抽出した送信先アドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信するものであることが望ましい。
【００１９】
また、ルーティング装置は、いずれかのクライアントからプライベートネットワークを介してデータを受信すると、送信元のクライアントを示すクライアント側送信元アドレスを、受信データから抽出する抽出手段（例えば、ルータ３０のＣＰＵによって実現される）と、記憶手段が記憶する対応テーブルに含まれる送信先アドレスのうち、抽出手段が抽出したクライアント側送信元アドレスに合致する送信先アドレスを特定する特定手段（例えば、ルータ３０のＣＰＵによって実現される）と、特定手段が特定した送信先アドレスに対応する送信元アドレスを、記憶手段が記憶する対応テーブルから抽出する抽出手段（例えば、ルータ３０のＣＰＵによって実現される）と、抽出手段が抽出した送信元アドレスに示されるサーバに、グローバルネットワークを介して受信データを送信する送信手段（例えば、ルータ３０のＣＰＵ及びネットワークインタフェース部によって実現される）とを備えたものであってもよい。
【００２０】
また、記憶手段は、送信先アドレスとして、各クライアントのプライベートアドレスを含む対応テーブルを記憶し、送信先特定手段は、受信データから抽出した送信元アドレスに対応するプライベートアドレスを、記憶手段が記憶する対応テーブルから抽出し、データ送信手段は、送信先特定手段が抽出したプライベートアドレスに示されるクライアントに、プライベートネットワークを介して受信データを送信するものであってもよい。
【００２１】
また、記憶手段は、送信元アドレスとして、各サーバのグローバルアドレスを含む対応テーブルを記憶するものであってもよい。
【００２２】
また、記憶手段は、送信元アドレスとして、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを記憶し、送信先特定手段は、受信データから抽出した送信元アドレスの一部分が、記憶手段が記憶する対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応する送信先アドレスを対応テーブルから抽出するものであってもよい。
【００２３】
また、記憶手段は、送信元となりうるサーバを示すドメインネームを、送信先アドレスに対応付けた対応テーブルを予め記憶し、送信元抽出手段は、いずれかのサーバからグローバルネットワークを介してデータを受信すると、送信元のサーバを示すドメインネームを、受信データから抽出し、送信先特定手段は、受信データから抽出したドメインネームに対応する送信先アドレスを、記憶手段が記憶する対応テーブルから抽出するものであってもよい。
【発明の効果】
【００２４】
本発明によれば、サーバからの受信データに含まれる送信元アドレスに基づいて、送信先のクライアントを特定する。サーバ毎にユニークに設定される送信元アドレスを用いるので、複数のサーバが存在する場合であっても、送信先のクライアントを適切に特定することができる。従って、サーバが複数存在する場合であっても、インターネット上の複数のサーバと、プライベートネットワーク上の複数のクライアントとの間の通信を適切に行うことができる。
【００２５】
また、本発明によれば、送信先アドレスと送信元アドレスとを対応付けた対応テーブルを用いて、送信先のクライアントを特定する。従って、受信データから抽出した送信元アドレスに基づいて、容易に送信先のクライアントを特定することができる。
【００２６】
また、本発明によれば、いずれかのクライアントからデータを受信すると、受信データから抽出したクライアント側送信元アドレスに基づいて、送信先のサーバのアドレスを特定する。従って、サーバが複数存在する場合であっても、送信先のサーバを特定することができ、クライアントからのデータを適切にサーバに中継することができる。
【００２７】
また、本発明によれば、受信データから抽出したグローバルアドレス又はドメインネームに基づいて、送信先のクライアントを特定する。ユニークに設定されるグローバルアドレス又はドメインネームに基づいて判断するので、サーバが用いるポート番号に基づいて判断する場合と比較して、より適切に送信先のクライアントを特定することができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施の形態を図面を参照して説明する。図１は、本発明によるルーティング装置を用いた通信システムの構成の一例を示すブロック図である。図１に示すように、通信システムは、クライアント１，２と、ルーティング装置３と、サーバ５，６とを含む。また、図１に示すように、ルーティング装置３及びサーバ５，６は、インターネット等のグローバルネットワーク４を介して接続される。また、図１に示すように、ルーティング装置３及びクライアント１，２は、ホームネットワーク等のプライベートネットワーク９を介して接続される。
【００２９】
クライアント１，２は、例えば、パーソナルコンピュータ等の情報処理端末である。また、クライアント１，２は、例えば、ネットワーク対応型のビデオデッキ（ビデオテープレコーダ）やＤＶＤレコーダ等の家電製品である。更に、クライアント１，２は、ネットワーク対応型の装置であれば、エア−コンディショナ（エアコンともいう）等の装置であってもよい。なお、図１では、２つのクライアント１，２を示しているが、通信システムは、３以上のクライアントを含んでいてもよい。
【００３０】
各クライアント１，２は、プライベートネットワーク９を介して、ルーティング装置３に接続される。また、クライアント１，２は、ルーティング装置３及びグローバルネットワーク４を介して、サーバ５，６と各種データを送受信する機能を備える。本実施の形態では、各クライアント１，２は、それぞれ予めプライベートアドレス（プライベートＩＰアドレス）を設定している。そして、クライアント１，２は、プライベートアドレスを送信元アドレスとして用いて、サーバ５，６に各種データを送信する。
【００３１】
サーバ５，６は、具体的には、ワークステーションやパーソナルコンピュータ等の情報処理装置である。サーバ５，６は、グローバルネットワーク４及びルーティング装置３を介して、クライアント１，２と各種データを送受信する機能を備える。本実施の形態では、各サーバ５，６は、それぞれ予めグローバルアドレス（グローバルＩＰアドレス）を設定している。そして、サーバ５，６は、グローバルアドレスを送信元アドレスとして用いて、クライアント１，２に各種データを送信する。なお、図１では、２つのサーバ５，６を示しているが、通信システムは、３以上のサーバを含んでいてもよい。
【００３２】
ルーティング装置３は、具体的には、ルータ等のネットワーク装置である。例えば、ルーティング装置３は、ホームネットワーク等のプライベートネットワーク９を用いるユーザ宅に設置される。ルーティング装置３は、各クライアント１，２と各サーバ５，６との間の通信をルーティングする機能を備える。本実施の形態では、ルーティング装置３は、クライアント１，２がプライベートアドレスを用いてサーバ５，６宛のデータを送信すると、データに送信元として含まれるプライベートアドレスをグローバルアドレスに変換する。この場合、ルーティング装置３は、ＩＰマスカレードやポート・フォワーディング等のルーティング技術を用いてアドレス変換を行う。また、ルーティング装置３は、アドレス変換後のデータを、グローバルネットワーク４を介してサーバ５，６に送信（中継）する。
【００３３】
また、ルーティング装置３は、サーバ５，６からデータを受信すると、受信したデータの宛先のクライアント１，２を特定する機能を備える。本実施の形態では、ルーティング装置３は、受信したデータの宛先がクライアントＡ１又はクライアントＢ２のいずれであるかを判断する。また、ルーティング装置３は、受信したデータを、特定した宛先のクライアント１，２に、プライベートネットワーク９を介して送信（中継）する機能を備える。
【００３４】
ルーティング装置３は、図１に示すように、送信先となりうるクライアント１，２を示す送信先アドレスと、送信元となりうるサーバ５，６を示す送信元アドレスとを対応付けた変換表７を含む。本実施の形態では、ルーティング装置３は、各クライアント１，２のプライベートアドレスと、各サーバ５，６のグローバルアドレスとを対応付けた変換表７を含む。変換表７は、具体的には、ルーティング装置３が備えるメモリ等の記憶装置に予め記憶される。
【００３５】
本実施の形態では、ルーティング装置３は、サーバ５，６からデータを受信すると、受信したデータに含まれる送信元サーバのグローバルアドレスに基づいて、宛先のクライアント１，２を特定する。この場合、ルーティング装置３は、送信元サーバのグローバルアドレスに対応するプライベートアドレスを変換表７から抽出し、抽出したプライベートアドレスに対応するクライアントを宛先として特定する。そして、ルーティング装置３は、抽出したプライベートアドレスに従って、受信したデータを、宛先のクライアント１，２に、プライベートネットワーク９を介して送信（中継）する。
【００３６】
なお、ルーティング装置３は、例えば、予め各クライアント１，２や各サーバ５，６から受信したアドレス情報に基づいて、変換表７を予め設定する。この場合、例えば、ルーティング装置３は、ユーザの指示操作に従って、グローバルネットワーク４を介して各サーバ５，６にアドレス情報を要求し、予め各サーバ５，６からアドレス情報を受信する。また、ルーティング装置３は、ユーザの指示操作に従って、プライベートネットワーク９を介して各クライアント１，２にアドレス情報を要求し、予め各クライアント１，２からアドレス情報を受信する。そして、ルーティング装置３は、それぞれ受信したアドレス情報を格納することによって、変換表７を予め設定する。また、ルーティング装置３は、例えば、ユーザの入力操作に従って、各クライアント１，２や各サーバ５，６のアドレスを入力し、入力した各アドレスを格納することによって、変換表７を予め設定してもよい。
【００３７】
次に、動作について説明する。図２は、ルーティング装置３が、各クライアント１，２と各サーバ５，６との間の通信を中継する中継処理の一例を示す流れ図である。本実施の形態において、各サーバ５，６は、各クライアント１，２のうちのいずれかのクライアント向けのデータ（コンテンツ）を提供する。本実施の形態では、サーバ５は、クライアントＡ１用のデータを提供するサーバ（以下、クライアントＡ向けサーバともいう）である。また、サーバ６は、クライアントＢ２用のデータを提供するサーバ（以下、クライアントＢ向けサーバともいう）である。
【００３８】
本実施の形態において、クライアントＡ向けサーバ５は、グローバルネットワーク４及びルーティング装置３を介して、クライアントＡ１とデータを送受信する。また、クライアントＢ向けサーバ６は、グローバルネットワーク４及びルーティング装置３を介して、クライアントＢ２とデータを送受信する。また、本実施の形態において、ルーティング装置３は、クライアントＡ１とクライアントＡ向けサーバ５とのアドレスを対応付け、且つクライアントＢ２とクライアントＢ向けサーバ６とのアドレスを対応付けた変換表７を含む。
【００３９】
まず、クライアント１，２からサーバ５，６にデータを送信する場合の動作を説明する。クライアント１，２は、ユーザの操作に従って、プライベートネットワーク９を介して、ルーティング装置３にデータ（例えば、コンテンツのダウンロード要求）を送信する（ステップＳ１１）。この場合、クライアント１，２は、予め指定されたサーバ５，６のポート番号や、サーバ５，６のグローバルアドレスを宛先として、データを送信する。例えば、クライアントＡ１は、クライアントＡ向けサーバ５のポート番号やグローバルアドレスを宛先として、データを送信する。また、クライアント１，２は、送信元としてクライアント１，２自身のプライベートアドレスを含むデータを、ルーティング装置３に送信する。
【００４０】
ルーティング装置３は、クライアント１，２からデータを受信すると、受信データに送信元として含まれるプライベートアドレスを、グローバルアドレスに変換する。本実施の形態では、ルーティング装置３は、予めルーティング装置３自身のグローバルアドレスを設定している。そして、ルーティング装置３は、受信データに含まれるプライベートアドレス（クライアント１，２のアドレス）を、ルーティング装置３自身のグローバルアドレスに変換する。
【００４１】
アドレス変換を行うと、ルーティング装置３は、アドレス変換後のデータを、グローバルネットワーク４を介してサーバ５，６に送信する（ステップＳ１２）。この場合、ルーティング装置３は、例えば、受信データに送信先として含まれるサーバ５，６のグローバルアドレスに従って、グローバルネットワーク４を介してデータをサーバ５，６に送信する。
【００４２】
なお、受信データに送信先としてサーバ５，６のポート番号が含まれる場合、ルーティング装置３は、変換表７に基づいて送信先のサーバ５，６のグローバルアドレスを求め、求めたグローバルアドレスに従ってデータをサーバ５，６に中継してもよい。この場合、例えば、ルーティング装置３は、受信データに送信元として含まれるクライアント１，２のプライベートアドレスを抽出する。また、ルーティング装置３は、変換表７に含まれる送信先アドレス（本例では、プライベートアドレス）のうち、抽出したプライベートアドレスに合致する情報を特定する。また、ルーティング装置３は、特定したプライベートアドレスに対応するグローバルアドレスを、変換表７から抽出する。
【００４３】
そして、ルーティング装置３は、抽出したグローバルアドレスに従って、アドレス変換後のデータをサーバ５，６に送信する。そのようにすることによって、サーバ５，６が偶然同じポート番号を用いている場合であっても、送信先のサーバ５，６を特定することができ、クライアント１，２からのデータをサーバ５，６に中継することができる。
【００４４】
次に、サーバ５，６からクライアント１，２にデータを送信する場合の動作を説明する。サーバ５，６は、ルーティング装置３からデータを受信すると、グローバルネットワーク４を介して、ルーティング装置３にデータを送信する（ステップＳ１３）。例えば、ダウンロード要求を受信すると、サーバ５，６は、グローバルネットワーク４を介して、ルーティング装置３にコンテンツを送信する。
【００４５】
本実施の形態では、サーバ５，６は、受信データに送信元として含まれるグローバルアドレスに従って、ルーティング装置３のグローバルアドレスを宛先として含むデータを送信する。また、サーバ５，６は、サーバ５，６自身ののグローバルアドレスを送信元として含むデータを送信する。
【００４６】
ルーティング装置３は、サーバ５，６からデータを受信すると、受信データに含まれる送信元アドレスに基づいて、宛先のクライアント１，２を求める（ステップＳ１４）。本実施の形態では、ルーティング装置３は、送信元を示す送信元アドレスを受信データから抽出する。また、ルーティング装置３は、変換表７が含むグローバルアドレスのうち、いずれのアドレスが受信データに含まれる送信元アドレスに合致するかを判断する。また、ルーティング装置３は、判断結果に基づいて、送信元アドレスに合致するグローバルアドレスに対応するプライベートアドレスを、変換表７から抽出する。そして、ルーティング装置３は、抽出したプライベートアドレスに対応するクライアント１，２を宛先として特定する。
【００４７】
なお、変換表７は、各サーバ５，６のグローバルアドレスをそのまま含んでいる場合に限らず、グローバルアドレスのうちの所定範囲の断片的な情報（以下、断片情報ともいう）を、各クライアント１，２のプライベートアドレスに対応付けて含んでいてもよい。この場合、ルーティング装置３は、受信データに送信元として含まれるグローバルアドレスの一部が、変換表７に含まれる断片情報のうちのいずれかと合致するか否かを判断する。そして、ルーティング装置３は、送信元アドレスの一部と合致する断片情報に対応するプライベートアドレスを、変換表７から抽出する。
【００４８】
また、Domain Name System（ＤＮＳ）を用いる場合、ルーティング装置３は、サーバ５，６のドメインネームとグローバルアドレスとを比較し、宛先のクライアント１，２を求めてもよい。例えば、ルーティング装置３は、予め各サーバ５，６のドメインネームとグローバルアドレスとを対応付けた対応表を含む。この場合、ルーティング装置３は、例えば、受信データに含まれるドメインネームに対応するグローバルアドレスを対応表から抽出し、抽出したグローバルアドレスに対応するプライベートアドレスを変換表７から抽出する。
【００４９】
また、ＤＮＳを用いる場合、例えば、ルーティング装置３は、予め各サーバ５，６のドメインネームとプライベートアドレスとを対応付けた変換表７を含んでもよい。この場合、ルーティング装置３は、例えば、受信データに含まれるドメインネームに対応するプライベートアドレスを変換表７から抽出する。
【００５０】
宛先のクライアント１，２を特定すると、ルーティング装置３は、特定した宛先のクライアント１，２に、プライベートネットワーク９を介して受信データを送信（中継）する（ステップＳ１５）。この場合、ルーティング装置３は、ステップＳ１４で抽出したプライベートアドレスに従って、受信データをクライアント１，２に中継送信する。
【００５１】
以上のように、本実施の形態によれば、ルーティング装置３は、サーバ５，６からの受信データの送信元アドレスに基づいて、宛先のクライアント１，２を求める。そして、ルーティング装置３は、求めた宛先のクライアント１，２にデータを中継する。そのため、複数のクライアント１，２と複数のサーバ５，６との間で複数の通信がある場合であっても、サーバ５，６とクライアント１，２との間で個別の通信を行うことができる。従って、サーバが複数存在する場合であっても、インターネット上の複数のサーバと、プライベートネットワーク９上の複数のクライアントとの間の通信を適切に行うことができる。
【００５２】
例えば、ルーティング装置は、一般に、通信ポート番号に基づいて、送信元を判断しサーバからのデータをクライアントに中継する。一般に通信ポート番号はサーバ側で比較的自由に設定が可能であるので、複数のサーバが同じ通信ポート番号を用いている場合、ルーティング装置は、送信先のクライアントを特定することができず、適切な通信を行えないことがある。
【００５３】
本実施の形態によれば、インターネット上のサーバがユニークなグローバルアドレスやドメインネームをもつという特徴に着目し、送信先のクライアントの振り分けを行う。すなわち、本実施の形態によれば、ルーティング装置は、サーバからの通信をプライベートネットワーク９上のクライアントに振り分ける際に、送信元アドレス（又は、ドメインネーム）に基づいて、送信先のクライアントを特定する。そのため、複数のサーバが同じ通信ポート番号を用いている場合であっても、送信先のクライアントを特定することができ、各サーバと各クライアントとの間の通信を適切に行うことができる。また、インターネット上のサーバから直接認識できないプライベートネットワーク９上のクライアントへの通信を、適切に振り分けることができる。
【００５４】
なお、本実施の形態では、プライベートネットワーク９がホームネットワークである場合を例に説明したが、プライベートネットワーク９は、企業内のＬＡＮ等のネットワークであってもよい。この場合、例えば、ルーティング装置３は、ＬＡＮを介して、企業内の各パーソナルコンピュータ等のクライアントとデータを送受信する。
【実施例】
【００５５】
次に、本発明の具体的な実施例を説明する。図３は、ルーティング装置を用いた通信システムの具体的な構成の一例を示すブロック図である。なお、図３に示す通信システムは、図１に示す通信システムを具体化したものに相当する。また、本実施例では、図３に示すように、グローバルネットワーク４がインターネット４０である場合を説明する。また、本実施例では、図３に示すように、プライベートネットワーク９がホームネットワーク９０である場合を説明する。
【００５６】
図３に示すように、本実施例では、通信システムは、クライアントＡ１として、パーソナルコンピュータであるＰＣ装置１０を含む。本実施例において、ＰＣ装置１０は、予めプライベートアドレス「192.168.0.25」を設定している。また、ＰＣ装置１０は、アドレス「192.168.0.25」を用いてデータの送受信を行う。
【００５７】
また、通信システムは、クライアントＢ２として、ネットワーク対応ビデオデッキ２０を含む。本実施例において、ビデオデッキ２０は、予めプライベートアドレス「192.168.0.10」を設定している。また、ビデオデッキ２０は、アドレス「192.168.0.10」を用いてデータの送受信を行う。
【００５８】
また、通信システムは、クライアントＡ向けサーバ５として、ａａａ社サーバ５０を含む。ａａａ社サーバ５０は、パーソナルコンピュータ等の情報処理端末向けに、各種ソフトウェアのダウンロードサービスを提供する。本実施例では、ａａａ社サーバ５０は、ダウンロード要求に応じて、コンテンツである各種ソフトウェアを、インターネット４０及びルーティング装置３０を介してＰＣ装置１０に送信する。
【００５９】
また、本実施例において、ａａａ社サーバ５０は、予め「os.aaa.com」という名前でドメインネームを設定している。また、ａａａ社サーバ５０は、ドメインネーム「os.aaa.com」を用いてデータの送受信を行う。
【００６０】
また、通信システムは、クライアントＢ向けサーバ６として、ｂｂｂ社サーバ６０を含む。ｂｂｂ社サーバ６０は、ビデオデッキやＤＶＤレコーダ等のネットワーク対応型の家電製品向けに、映像や音声を含むコンテンツのダウンロードサービスを提供する。本実施例では、ｂｂｂ社サーバ６０は、ダウンロード要求に応じて、映像や音声を含むコンテンツを、インターネット４０及びルーティング装置３０を介してビデオデッキ２０に送信する。
【００６１】
また、本実施例において、ｂｂｂ社サーバ６０は、予め「video.bbb.co.jp 」という名前でドメインネームを設定している。また、ｂｂｂ社サーバ６０は、ドメインネーム「video.bbb.co.jp 」を用いてデータの送受信を行う。
【００６２】
また、通信システムは、ルーティング装置３として、ルータ３０を含む。本実施例において、ルータ３０は、予めグローバルアドレス「11.22.33.44 」を設定している。また、ルータ３０は、アドレス「11.22.33.44 」を用いて、ａａａ社サーバ５０又はｂｂｂ社サーバ６０とデータの送受信を行う。また、本実施例において、ルータ３０は、予めプライベートアドレス「192.168.0.1 」を設定している。また、ルータ３０は、アドレス「192.168.0.1 」を用いて、ＰＣ装置１０又はビデオデッキ２０とデータの送受信を行う。
【００６３】
ルータ３０は、メモリ等の記憶装置８０を含む。また、記憶装置８０は、送信元アドレスと送信先アドレスとを対応付けた変換表７０を予め記憶する。本実施例において、ルータ３０は、記憶装置８０が記憶する変換表７０に基づいて、インターネット４０を介して受信したコンテンツを、いずれの機器（本例では、ＰＣ装置１０又はビデオデッキ２０）に中継するかを判断する。
【００６４】
図４は、記憶装置８０が記憶する変換表７０の一例を示す説明図である。図４に示すように、記憶装置８０は、送信元アドレスとして各サーバ５０，６０のドメインネーム又はグローバルアドレスと、送信先アドレスとして各機器１０，２０のプライベートアドレスとを対応付けた変換表７０を記憶する。
【００６５】
次に、本実施例の動作を説明する。本実施例では、ＰＣ装置１０が、ａａａ社サーバ５０から、コンテンツとしてソフトウェアをダウンロードする場合の動作を説明する。ＰＣ装置１０は、ユーザの指示操作に従って、コンテンツのダウンロード要求を、ホームネットワーク９０を介してルータ３０に送信する。この場合、ＰＣ装置１０とルータ３０とは、ともにプライベートアドレスを用いて通信を行う。例えば、ＰＣ装置１０は、アドレス「192.168.0.25」を用いて、ダウンロード要求をルータ３０に送信する。
【００６６】
ルータ３０は、受信したダウンロード要求に送信元として含まれるアドレス「192.168.0.25」を、ルータ３０自身のグローバルアドレス「11.22.33.44 」に変換する。そして、ルータ３０は、送信元としてアドレス「11.22.33.44 」を含むダウンロード要求を、インターネット４０を介してａａａ社サーバ５０に中継送信する。
【００６７】
すなわち、ダウンロード要求に含まれる送信元アドレスがプライベートアドレスであるので、その送信元アドレスのままでは、グローバルアドレスを用いるａａａ社サーバ５０に、インターネット４０を介してダウンロード要求を送信することはできない。そのため、ルータ３０は、ＰＣ装置１０からのダウンロード要求を、ルータ３０自身のグローバルアドレス「11.22.33.44 」を用いて、恰もルータ３０からの送信であるかのように見せかけて、ａａａ社サーバ５０に送信する。なお、ルータ３０は、例えば、ＩＰマスカレード等のルーティング技術を用いて、送信元のアドレス変換を行い、ａａａ社サーバ５０への通信を中継する。
【００６８】
ａａａ社サーバ５０は、ダウンロード要求を受信すると、受信データに含まれる送信元アドレスに従って、コンテンツを、インターネット４０を介してルータ３０に送信する。ルータ３０は、コンテンツを受信すると、変換表７０に基づいて宛先の機器を特定する。この場合、ルータ３０は、変換表７０に含まれる送信元アドレスのうち、いずれの情報が受信データに含まれるドメインネーム「os.aaa.com」に合致するかを判断する。そして、ルータ３０は、ドメインネーム「os.aaa.com」に合致する送信元アドレスに対応する送信先アドレスを特定する。本実施例では、ルータ３０は、図４に示す変換表７０に基づいて、対応する送信先アドレスがプライベートアドレス「192.168.0.25」であると特定する。
【００６９】
送信先アドレスを特定すると、ルータ３０は、特定したアドレスに従って、受信コンテンツをホームネットワーク９０を介して送信する。本実施例では、ルータ３０は、特定したプライベートアドレス「192.168.0.25」に従って、受信コンテンツをＰＣ装置１０に送信する。
【００７０】
なお、本実施例では、ＰＣ装置１０がソフトウェアをダウンロードする場合を例に説明したが、ビデオデッキ２０が、ｂｂｂ社サーバ６０から、映像や音声を含むコンテンツをダウンロードする場合の動作も同様である。この場合、ルータ３０は、ｂｂｂ社サーバ６０からコンテンツを受信すると、変換表７０に含まれる送信元アドレスのうち、受信コンテンツに含まれるドメインネーム「video.bbb.co.jp 」に合致する送信元アドレスを特定する。また、ルータ３０は、特定した送信元アドレスに対応する送信先アドレスを特定する。本実施例では、ルータ３０は、図４に示す変換表７０に基づいて、対応する送信先アドレスがプライベートアドレス「192.168.0.10」であると特定し、特定したアドレスに従って、コンテンツをビデオデッキ２０に送信する。
【００７１】
また、本実施例では、クライアントがＰＣ装置１０及びビデオデッキ２０である場合を説明したが、クライアントは、ネットワーク対応型の装置であれば、ＰＣ装置１０やビデオデッキ２０に限られない。例えば、他の例として、通信システムが、クライアントとして、Ａ社製のエアコン及びビデオデッキと、Ｂ社製のパーソナルコンピュータとを含む場合を説明する。この場合、各クライアントは、ネットワークへの接続機能を備え、各メーカ（Ａ社又はＢ社）のサーバと通信を行うことによって、各種サービスの提供を受ける。
【００７２】
例えば、通信システムは、Ａ社が運営するサーバとして、エアコン向けのデータを提供するエアコン用サーバと、ビデオデッキ向けのコンテンツを提供するビデオ用サーバとを含む。また、通信システムは、Ｂ社が運営するサーバとして、パーソナルコンピュータ向けのコンテンツを提供するパソコン用サーバを含む。また、エアコン用サーバはドメインネーム「air.A.com 」を用いて通信を行い、ビデオ用サーバはドメインネーム「video.A.com 」を用いて通信を行い、パソコン用サーバはドメインネーム「pc.B.com」を用いて通信を行うとする。
【００７３】
ルータ３０は、Ａ社のサーバからＡ社製機器へのデータを受信した場合、変換表７０に基づいて、送信元アドレス「air.A.com 」を含むデータをエアコンに中継し、送信元アドレス「video.A.com 」を含むデータをビデオデッキに中継する。また、ルータ３０は、Ｂ社のサーバからＢ社製機器へのデータを受信した場合、変換表７０に基づいて、送信元アドレス「pc.B.com」を含むデータをパーソナルコンピュータに中継する。そのようにすることによって、複数のサーバと複数のクライアントとの間の通信を適切に行うことができる。
【００７４】
例えば、従来のポート番号に基づく振り分け方法を用いると、クライアント（例えば、エアコン）がサーバと通信を行うために、前回ルーティング装置がサーバと通信を行った際に用いたポート番号に従って応答するというルールに従って、通信先の振り分けを行うことになる。しかし、ポート番号はＩＰアドレスのようにユニークに設定されるとは限らない。そのため、Ａ社のサーバとＢ社のサーバとが偶然同じポート番号を用いて通信を行っている場合があり、その場合にはクライアントとサーバとが適切に通信を行うことができない。特に、ＩＰアドレスの組み合わせの数が４０億個程度あるのと比較して、ポート番号の組み合わせは６万個程度しかなく、偶然同じポート番号を用いているために適切に通信を行えない可能性は少なくない。
【００７５】
また、１つのポート番号だけでなく複数のポート番号を用いて通信を行う場合や、サーバが用いるポート番号をルーティング装置側で予測できない場合もあり、複数の機器間でネットワークを介した通信を制限してしまうこともある。
【００７６】
本実施例では、ユニークに設定されるグローバルアドレスやドメインネームに基づいて、通信先の振り分けを行うので、複数サーバが同じ通信ポート番号を用いている場合であっても、サーバとクライアントとの通信を適切に行うことができる。
【産業上の利用可能性】
【００７７】
本発明は、グローバルネットワーク上のサーバと、プライベートネットワーク上のクライアントとの間の通信を中継する用途に適用できる。
【図面の簡単な説明】
【００７８】
【図１】本発明によるルーティング装置を用いた通信システムの構成の一例を示すブロック図である。
【図２】ルーティング装置３が、各クライアント１，２と各サーバ５，６との間の通信を中継する中継処理の一例を示す流れ図である。
【図３】ルーティング装置を用いた通信システムの具体的な構成の一例を示すブロック図である。
【図４】記憶装置８０が記憶する変換表７０の一例を示す説明図である。
【符号の説明】
【００７９】
１，２  クライアント
３  ルーティング装置
４  グローバルネットワーク
５，６  サーバ
７，７０  変換表
９  プライベートネットワーク
１０  ＰＣ装置
２０  ネットワーク対応ビデオデッキ
３０  ルータ
４０  インターネット
５０  ａａａ社サーバ
６０  ｂｂｂ社サーバ
８０  記憶装置
９０  ホームネットワーク
【図１】
2006246385.tif 000003
【図２】
2006246385.tif 000004
【図３】
2006246385.tif 000005
【図４】
2006246385.tif 000006