JP4583978B2 - ルーティング方法及びルーティング装置 - Google Patents

ルーティング方法及びルーティング装置 Download PDF

Info

Publication number
JP4583978B2
JP4583978B2 JP2005062818A JP2005062818A JP4583978B2 JP 4583978 B2 JP4583978 B2 JP 4583978B2 JP 2005062818 A JP2005062818 A JP 2005062818A JP 2005062818 A JP2005062818 A JP 2005062818A JP 4583978 B2 JP4583978 B2 JP 4583978B2
Authority
JP
Japan
Prior art keywords
server
client
address
transmission data
side transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005062818A
Other languages
English (en)
Other versions
JP2006246385A (ja
Inventor
賀昭 石崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Fielding Ltd
Original Assignee
NEC Fielding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Fielding Ltd filed Critical NEC Fielding Ltd
Priority to JP2005062818A priority Critical patent/JP4583978B2/ja
Publication of JP2006246385A publication Critical patent/JP2006246385A/ja
Application granted granted Critical
Publication of JP4583978B2 publication Critical patent/JP4583978B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、グローバルネットワーク上のサーバと、プライベートネットワーク上のクライアントとの間の通信のルーティングを行うルーティング方法及びルーティング装置に関する。
グローバルネットワーク(例えば、インターネット)上のサーバとプライベートネットワーク(例えば、ホームネットワークやLAN)上のクライアントとの間で、グローバルネットワーク及びプライベートネットワークを介して相互に通信を行うことがある。この場合、例えば、インターネット上のサーバはグローバルアドレスを用いてデータを送受信し、プライベートネットワーク上のクライアントはプライベートアドレスを用いてデータを送受信する。そのため、ルーティング装置(例えば、ルータ)を用いて、グローバルアドレスとプライベートアドレスとの間のアドレス変換を行うことによって、サーバとクライアントとの間の通信を中継する。
アドレス変換処理を行うルーティング装置として、例えば、特許文献1及び特許文献2には、Network Address Translator(NAT)やマスカレード機能を用いてアドレス変換処理を行うルータが記載されている。
特開2000−270004号公報(段落0010−0013、図1−5) 特開2002−374275号公報(段落0064−0069、図1−2)
特許文献1や特許文献2に記載されたルータ等の従来のルーティング装置を用いる場合、インターネット上のサーバがプライベートネットワーク上のクライアントにデータを送信すると、ルーティング装置は、例えば、サーバのポート番号に基づいて宛先のクライアントの振り分けを行う。そして、ルーティング装置は、振り分け処理によって特定した送信先のクライアントにデータを中継する。また、ルーティング装置は、例えば、サーバから受信した全てのデータを、予め指定された1つの利用者機器(クライアント)に中継する。
しかし、一般に、ルーティング装置は、インターネット上の1つのサーバからのデータを中継するだけでなく、複数のサーバからのデータを中継する。この場合、インターネット上の複数のサーバが偶然同じポート番号を用いてデータの送受信を行うことがある。そのため、ルーティング装置は、同じポート番号を用いるサーバが複数存在すると送信元のサーバと特定できず、宛先のクライアントの振り分けを行えないことがある。また、それぞれのサーバに対して個別に接続を要求するクライアントが複数の存在する場合、ルーティング装置がポート番号による振り分けを行えず、サーバとクライアントとの間の通信を適切に行えないことがある。
また、同じポート番号を用いるサーバが複数存在すると、ルーティング装置は、ポート番号に基づいて宛先のサーバを特定することができず、クライアントからのデータを中継できないことがある。また、ルーティング装置が、予測されるポート番号の全てのサーバに宛先を振り分けることも考えられるが、サーバ及びクライアントが複数存在する場合にはポート番号に基づいて適切に宛先を振り分けることできず、サーバとクライアントとの間の通信を適切に行えないことがある。
また、サーバから受信した全てのデータを、ルーティング装置が予め指定された1つのクライアントに振り分ける方法を用いると、プライベートネットワーク上でデータの送受信を行えるクライアントが1つに制限されてしまう。
そこで、本発明は、サーバが複数存在する場合であっても、インターネット上の複数のサーバと、プライベートネットワーク上の複数のクライアントとの間の通信を適切に行えるルーティング方法及びルーティング装置を提供することを目的とする。
本発明によるルーティング方法は、グローバルネットワーク(例えば、インターネット)に接続される複数のサーバと、プライベートネットワーク(例えば、企業内のLAN)に接続される複数のクライアントとの通信のルーティングを行うルーティング方法であって、クライアントを特定可能なプライベートアドレスとサーバを特定可能なグローバルアドレスとを対応付けた対応テーブルを、予め記憶手段に記憶し、いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すグローバルアドレス(例えば、グローバルアドレス)を、サーバ側送信データから抽出する送信元サーバ抽出ステップと、抽出したグローバルアドレスに対応するプライベートアドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のクライアントを特定する送信先クライアント特定ステップと、抽出したプライベートアドレスで特定されるクライアントに、プライベートネットワークを介してサーバ側送信データを送信するサーバ側送信データ送信ステップと、いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信すると、当該クライアント側送信データに含まれる送信元のクライアントを示すプライベートアドレスを所定のグローバルアドレスに変換するアドレス変換ステップと、アドレス変換したクライアント側送信データを、グローバルネットワークを介して送信先のサーバに送信するクライアント側送信データ送信ステップとを含むことを特徴とする。
また、ルーティング方法は、いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信したときに、当該クライアント側送信データに送信先のサーバを示すポート番号が含まれる場合には、送信元のクライアントを示すプライベートアドレスを、クライアント側送信データから抽出する送信元クライアント抽出ステップと、抽出したプライベートアドレスに対応するグローバルアドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のサーバを特定する送信先サーバ特定ステップとを含み、クライアント側送信データ送信ステップで、抽出したグローバルアドレスで特定されるサーバに、グローバルネットワークを介してクライアント側送信データを送信するものであってもよい。
また、ルーティング方法は、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを、予め記憶手段に記憶し、送信先クライアント特定ステップで、サーバ側送信データから抽出したグローバルアドレスの一部分が、記憶手段が記憶する対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応するプライベートアドレスを対応テーブルから抽出するものであってもよい。
また、ルーティング方法は、サーバを特定可能なドメインネームを、プライベートアドレスに対応付けた対応テーブルを予め記憶手段に記憶し、送信元サーバ抽出ステップで、いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すドメインネームを、サーバ側送信データから抽出し、送信先クライアント特定ステップで、サーバ側送信データから抽出したドメインネームに対応するプライベートアドレスを、記憶手段が記憶する対応テーブルから抽出するものであってもよい。
本発明によるルーティング装置は、グローバルネットワークに接続される複数のサーバと、プライベートネットワークに接続される複数のクライアントとの通信のルーティングを行うルーティング装置(例えば、ルータ30)であって、クライアントを特定可能なプライベートアドレスとサーバを特定可能なグローバルアドレスとを対応付けた対応テーブルを、予め記憶する記憶手段と、いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すグローバルアドレスを、サーバ側送信データから抽出する送信元サーバ抽出手段(例えば、ルータ30のCPUによって実現される)と、送信元サーバ抽出手段が抽出したグローバルアドレスに対応するプライベートアドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のクライアントを特定する送信先クライアント特定手段(例えば、ルータ30のCPUによって実現される)と、送信先クライアント特定手段が抽出したプライベートアドレスで特定されるクライアントに、プライベートネットワークを介してサーバ側送信データを送信するサーバ側送信データ送信手段(例えば、ルータ30のCPU及びネットワークインタフェース部によって実現される)と、いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信すると、当該クライアント側送信データに含まれる送信元のクライアントを示すプライベートアドレスを所定のグローバルアドレスに変換するアドレス変換手段と、アドレス変換手段によってアドレス変換されたクライアント側送信データを、グローバルネットワークを介して送信先のサーバに送信するクライアント側送信データ送信手段とを備えたことを特徴とする。
また、ルーティング装置は、いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信したときに、当該クライアント側送信データに送信先のサーバを示すポート番号が含まれる場合には、送信元のクライアントを示すプライベートアドレスを、クライアント側送信データから抽出する送信元クライアント抽出手段と、送信元クライアント抽出手段が抽出したプライベートアドレスに対応するグローバルアドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のサーバを特定する送信先サーバ特定手段とを備え、クライアント側送信データ送信手段は、送信先サーバ特定手段が抽出したグローバルアドレスで特定されるサーバに、グローバルネットワークを介してクライアント側送信データを送信するものであってもよい。
また、記憶手段は、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを記憶し、送信先クライアント特定手段は、サーバ側送信データから抽出したグローバルアドレスの一部分が、記憶手段が記憶する対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応するプライベートアドレスを対応テーブルから抽出するものであってもよい。
また、記憶手段は、サーバを特定可能なドメインネームを、プライベートアドレスに対応付けた対応テーブルを予め記憶し、送信元サーバ抽出手段は、いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すドメインネームを、サーバ側送信データから抽出し、送信先クライアント特定手段は、サーバ側送信データから抽出したドメインネームに対応するプライベートアドレスを、記憶手段が記憶する対応テーブルから抽出するものであってもよい。
本発明によれば、サーバからのサーバ側送信データに含まれるグローバルアドレスに基づいて、送信先のクライアントを特定する。サーバ毎にユニークに設定されるグローバルアドレスを用いるので、複数のサーバが存在する場合であっても、送信先のクライアントを適切に特定することができる。従って、サーバが複数存在する場合であっても、グローバルネットワーク上の複数のサーバと、プライベートネットワーク上の複数のクライアントとの間の通信を適切に行うことができる。
また、本発明によれば、プライベートアドレスとグローバルアドレスとを対応付けた対応テーブルを用いて、送信先のクライアントを特定する。従って、サーバ側送信データから抽出したグローバルアドレスに基づいて、容易に送信先のクライアントを特定することができる。
また、本発明によれば、いずれかのクライアントからクライアント側送信データを受信すると、クライアント側送信データから抽出したプライベートアドレスに基づいて、送信先のサーバのグローバルアドレスを特定する。従って、サーバが複数存在する場合であっても、送信先のサーバを特定することができ、クライアントからのデータを適切にサーバに中継することができる。
また、本発明によれば、サーバ側送信データから抽出したグローバルアドレス又はドメインネームに基づいて、送信先のクライアントを特定する。ユニークに設定されるグローバルアドレス又はドメインネームに基づいて判断するので、サーバが用いるポート番号に基づいて判断する場合と比較して、より適切に送信先のクライアントを特定することができる。
以下、本発明の実施の形態を図面を参照して説明する。図1は、本発明によるルーティング装置を用いた通信システムの構成の一例を示すブロック図である。図1に示すように、通信システムは、クライアント1,2と、ルーティング装置3と、サーバ5,6とを含む。また、図1に示すように、ルーティング装置3及びサーバ5,6は、インターネット等のグローバルネットワーク4を介して接続される。また、図1に示すように、ルーティング装置3及びクライアント1,2は、ホームネットワーク等のプライベートネットワーク9を介して接続される。
クライアント1,2は、例えば、パーソナルコンピュータ等の情報処理端末である。また、クライアント1,2は、例えば、ネットワーク対応型のビデオデッキ(ビデオテープレコーダ)やDVDレコーダ等の家電製品である。更に、クライアント1,2は、ネットワーク対応型の装置であれば、エア−コンディショナ(エアコンともいう)等の装置であってもよい。なお、図1では、2つのクライアント1,2を示しているが、通信システムは、3以上のクライアントを含んでいてもよい。
各クライアント1,2は、プライベートネットワーク9を介して、ルーティング装置3に接続される。また、クライアント1,2は、ルーティング装置3及びグローバルネットワーク4を介して、サーバ5,6と各種データを送受信する機能を備える。本実施の形態では、各クライアント1,2は、それぞれ予めプライベートアドレス(プライベートIPアドレス)を設定している。そして、クライアント1,2は、プライベートアドレスを送信元アドレスとして用いて、サーバ5,6に各種データを送信する。
サーバ5,6は、具体的には、ワークステーションやパーソナルコンピュータ等の情報処理装置である。サーバ5,6は、グローバルネットワーク4及びルーティング装置3を介して、クライアント1,2と各種データを送受信する機能を備える。本実施の形態では、各サーバ5,6は、それぞれ予めグローバルアドレス(グローバルIPアドレス)を設定している。そして、サーバ5,6は、グローバルアドレスを送信元アドレスとして用いて、クライアント1,2に各種データを送信する。なお、図1では、2つのサーバ5,6を示しているが、通信システムは、3以上のサーバを含んでいてもよい。
ルーティング装置3は、具体的には、ルータ等のネットワーク装置である。例えば、ルーティング装置3は、ホームネットワーク等のプライベートネットワーク9を用いるユーザ宅に設置される。ルーティング装置3は、各クライアント1,2と各サーバ5,6との間の通信をルーティングする機能を備える。本実施の形態では、ルーティング装置3は、クライアント1,2がプライベートアドレスを用いてサーバ5,6宛のデータを送信すると、データに送信元として含まれるプライベートアドレスをグローバルアドレスに変換する。この場合、ルーティング装置3は、IPマスカレードやポート・フォワーディング等のルーティング技術を用いてアドレス変換を行う。また、ルーティング装置3は、アドレス変換後のデータを、グローバルネットワーク4を介してサーバ5,6に送信(中継)する。
また、ルーティング装置3は、サーバ5,6からデータを受信すると、受信したデータの宛先のクライアント1,2を特定する機能を備える。本実施の形態では、ルーティング装置3は、受信したデータの宛先がクライアントA1又はクライアントB2のいずれであるかを判断する。また、ルーティング装置3は、受信したデータを、特定した宛先のクライアント1,2に、プライベートネットワーク9を介して送信(中継)する機能を備える。
ルーティング装置3は、図1に示すように、送信先となりうるクライアント1,2を示す送信先アドレスと、送信元となりうるサーバ5,6を示す送信元アドレスとを対応付けた変換表7を含む。本実施の形態では、ルーティング装置3は、各クライアント1,2のプライベートアドレスと、各サーバ5,6のグローバルアドレスとを対応付けた変換表7を含む。変換表7は、具体的には、ルーティング装置3が備えるメモリ等の記憶装置に予め記憶される。
本実施の形態では、ルーティング装置3は、サーバ5,6からデータを受信すると、受信したデータに含まれる送信元サーバのグローバルアドレスに基づいて、宛先のクライアント1,2を特定する。この場合、ルーティング装置3は、送信元サーバのグローバルアドレスに対応するプライベートアドレスを変換表7から抽出し、抽出したプライベートアドレスに対応するクライアントを宛先として特定する。そして、ルーティング装置3は、抽出したプライベートアドレスに従って、受信したデータを、宛先のクライアント1,2に、プライベートネットワーク9を介して送信(中継)する。
なお、ルーティング装置3は、例えば、予め各クライアント1,2や各サーバ5,6から受信したアドレス情報に基づいて、変換表7を予め設定する。この場合、例えば、ルーティング装置3は、ユーザの指示操作に従って、グローバルネットワーク4を介して各サーバ5,6にアドレス情報を要求し、予め各サーバ5,6からアドレス情報を受信する。また、ルーティング装置3は、ユーザの指示操作に従って、プライベートネットワーク9を介して各クライアント1,2にアドレス情報を要求し、予め各クライアント1,2からアドレス情報を受信する。そして、ルーティング装置3は、それぞれ受信したアドレス情報を格納することによって、変換表7を予め設定する。また、ルーティング装置3は、例えば、ユーザの入力操作に従って、各クライアント1,2や各サーバ5,6のアドレスを入力し、入力した各アドレスを格納することによって、変換表7を予め設定してもよい。
次に、動作について説明する。図2は、ルーティング装置3が、各クライアント1,2と各サーバ5,6との間の通信を中継する中継処理の一例を示す流れ図である。本実施の形態において、各サーバ5,6は、各クライアント1,2のうちのいずれかのクライアント向けのデータ(コンテンツ)を提供する。本実施の形態では、サーバ5は、クライアントA1用のデータを提供するサーバ(以下、クライアントA向けサーバともいう)である。また、サーバ6は、クライアントB2用のデータを提供するサーバ(以下、クライアントB向けサーバともいう)である。
本実施の形態において、クライアントA向けサーバ5は、グローバルネットワーク4及びルーティング装置3を介して、クライアントA1とデータを送受信する。また、クライアントB向けサーバ6は、グローバルネットワーク4及びルーティング装置3を介して、クライアントB2とデータを送受信する。また、本実施の形態において、ルーティング装置3は、クライアントA1とクライアントA向けサーバ5とのアドレスを対応付け、且つクライアントB2とクライアントB向けサーバ6とのアドレスを対応付けた変換表7を含む。
まず、クライアント1,2からサーバ5,6にデータを送信する場合の動作を説明する。クライアント1,2は、ユーザの操作に従って、プライベートネットワーク9を介して、ルーティング装置3にデータ(例えば、コンテンツのダウンロード要求)を送信する(ステップS11)。この場合、クライアント1,2は、予め指定されたサーバ5,6のポート番号や、サーバ5,6のグローバルアドレスを宛先として、データを送信する。例えば、クライアントA1は、クライアントA向けサーバ5のポート番号やグローバルアドレスを宛先として、データを送信する。また、クライアント1,2は、送信元としてクライアント1,2自身のプライベートアドレスを含むデータを、ルーティング装置3に送信する。
ルーティング装置3は、クライアント1,2からデータを受信すると、受信データに送信元として含まれるプライベートアドレスを、グローバルアドレスに変換する。本実施の形態では、ルーティング装置3は、予めルーティング装置3自身のグローバルアドレスを設定している。そして、ルーティング装置3は、受信データに含まれるプライベートアドレス(クライアント1,2のアドレス)を、ルーティング装置3自身のグローバルアドレスに変換する。
アドレス変換を行うと、ルーティング装置3は、アドレス変換後のデータを、グローバルネットワーク4を介してサーバ5,6に送信する(ステップS12)。この場合、ルーティング装置3は、例えば、受信データに送信先として含まれるサーバ5,6のグローバルアドレスに従って、グローバルネットワーク4を介してデータをサーバ5,6に送信する。
なお、受信データに送信先としてサーバ5,6のポート番号が含まれる場合、ルーティング装置3は、変換表7に基づいて送信先のサーバ5,6のグローバルアドレスを求め、求めたグローバルアドレスに従ってデータをサーバ5,6に中継してもよい。この場合、例えば、ルーティング装置3は、受信データに送信元として含まれるクライアント1,2のプライベートアドレスを抽出する。また、ルーティング装置3は、変換表7に含まれる送信先アドレス(本例では、プライベートアドレス)のうち、抽出したプライベートアドレスに合致する情報を特定する。また、ルーティング装置3は、特定したプライベートアドレスに対応するグローバルアドレスを、変換表7から抽出する。
そして、ルーティング装置3は、抽出したグローバルアドレスに従って、アドレス変換後のデータをサーバ5,6に送信する。そのようにすることによって、サーバ5,6が偶然同じポート番号を用いている場合であっても、送信先のサーバ5,6を特定することができ、クライアント1,2からのデータをサーバ5,6に中継することができる。
次に、サーバ5,6からクライアント1,2にデータを送信する場合の動作を説明する。サーバ5,6は、ルーティング装置3からデータを受信すると、グローバルネットワーク4を介して、ルーティング装置3にデータを送信する(ステップS13)。例えば、ダウンロード要求を受信すると、サーバ5,6は、グローバルネットワーク4を介して、ルーティング装置3にコンテンツを送信する。
本実施の形態では、サーバ5,6は、受信データに送信元として含まれるグローバルアドレスに従って、ルーティング装置3のグローバルアドレスを宛先として含むデータを送信する。また、サーバ5,6は、サーバ5,6自身ののグローバルアドレスを送信元として含むデータを送信する。
ルーティング装置3は、サーバ5,6からデータを受信すると、受信データに含まれる送信元アドレスに基づいて、宛先のクライアント1,2を求める(ステップS14)。本実施の形態では、ルーティング装置3は、送信元を示す送信元アドレスを受信データから抽出する。また、ルーティング装置3は、変換表7が含むグローバルアドレスのうち、いずれのアドレスが受信データに含まれる送信元アドレスに合致するかを判断する。また、ルーティング装置3は、判断結果に基づいて、送信元アドレスに合致するグローバルアドレスに対応するプライベートアドレスを、変換表7から抽出する。そして、ルーティング装置3は、抽出したプライベートアドレスに対応するクライアント1,2を宛先として特定する。
なお、変換表7は、各サーバ5,6のグローバルアドレスをそのまま含んでいる場合に限らず、グローバルアドレスのうちの所定範囲の断片的な情報(以下、断片情報ともいう)を、各クライアント1,2のプライベートアドレスに対応付けて含んでいてもよい。この場合、ルーティング装置3は、受信データに送信元として含まれるグローバルアドレスの一部が、変換表7に含まれる断片情報のうちのいずれかと合致するか否かを判断する。そして、ルーティング装置3は、送信元アドレスの一部と合致する断片情報に対応するプライベートアドレスを、変換表7から抽出する。
また、Domain Name System(DNS)を用いる場合、ルーティング装置3は、サーバ5,6のドメインネームとグローバルアドレスとを比較し、宛先のクライアント1,2を求めてもよい。例えば、ルーティング装置3は、予め各サーバ5,6のドメインネームとグローバルアドレスとを対応付けた対応表を含む。この場合、ルーティング装置3は、例えば、受信データに含まれるドメインネームに対応するグローバルアドレスを対応表から抽出し、抽出したグローバルアドレスに対応するプライベートアドレスを変換表7から抽出する。
また、DNSを用いる場合、例えば、ルーティング装置3は、予め各サーバ5,6のドメインネームとプライベートアドレスとを対応付けた変換表7を含んでもよい。この場合、ルーティング装置3は、例えば、受信データに含まれるドメインネームに対応するプライベートアドレスを変換表7から抽出する。
宛先のクライアント1,2を特定すると、ルーティング装置3は、特定した宛先のクライアント1,2に、プライベートネットワーク9を介して受信データを送信(中継)する(ステップS15)。この場合、ルーティング装置3は、ステップS14で抽出したプライベートアドレスに従って、受信データをクライアント1,2に中継送信する。
以上のように、本実施の形態によれば、ルーティング装置3は、サーバ5,6からの受信データの送信元アドレスに基づいて、宛先のクライアント1,2を求める。そして、ルーティング装置3は、求めた宛先のクライアント1,2にデータを中継する。そのため、複数のクライアント1,2と複数のサーバ5,6との間で複数の通信がある場合であっても、サーバ5,6とクライアント1,2との間で個別の通信を行うことができる。従って、サーバが複数存在する場合であっても、インターネット上の複数のサーバと、プライベートネットワーク9上の複数のクライアントとの間の通信を適切に行うことができる。
例えば、ルーティング装置は、一般に、通信ポート番号に基づいて、送信元を判断しサーバからのデータをクライアントに中継する。一般に通信ポート番号はサーバ側で比較的自由に設定が可能であるので、複数のサーバが同じ通信ポート番号を用いている場合、ルーティング装置は、送信先のクライアントを特定することができず、適切な通信を行えないことがある。
本実施の形態によれば、インターネット上のサーバがユニークなグローバルアドレスやドメインネームをもつという特徴に着目し、送信先のクライアントの振り分けを行う。すなわち、本実施の形態によれば、ルーティング装置は、サーバからの通信をプライベートネットワーク9上のクライアントに振り分ける際に、送信元アドレス(又は、ドメインネーム)に基づいて、送信先のクライアントを特定する。そのため、複数のサーバが同じ通信ポート番号を用いている場合であっても、送信先のクライアントを特定することができ、各サーバと各クライアントとの間の通信を適切に行うことができる。また、インターネット上のサーバから直接認識できないプライベートネットワーク9上のクライアントへの通信を、適切に振り分けることができる。
なお、本実施の形態では、プライベートネットワーク9がホームネットワークである場合を例に説明したが、プライベートネットワーク9は、企業内のLAN等のネットワークであってもよい。この場合、例えば、ルーティング装置3は、LANを介して、企業内の各パーソナルコンピュータ等のクライアントとデータを送受信する。
次に、本発明の具体的な実施例を説明する。図3は、ルーティング装置を用いた通信システムの具体的な構成の一例を示すブロック図である。なお、図3に示す通信システムは、図1に示す通信システムを具体化したものに相当する。また、本実施例では、図3に示すように、グローバルネットワーク4がインターネット40である場合を説明する。また、本実施例では、図3に示すように、プライベートネットワーク9がホームネットワーク90である場合を説明する。
図3に示すように、本実施例では、通信システムは、クライアントA1として、パーソナルコンピュータであるPC装置10を含む。本実施例において、PC装置10は、予めプライベートアドレス「192.168.0.25」を設定している。また、PC装置10は、アドレス「192.168.0.25」を用いてデータの送受信を行う。
また、通信システムは、クライアントB2として、ネットワーク対応ビデオデッキ20を含む。本実施例において、ビデオデッキ20は、予めプライベートアドレス「192.168.0.10」を設定している。また、ビデオデッキ20は、アドレス「192.168.0.10」を用いてデータの送受信を行う。
また、通信システムは、クライアントA向けサーバ5として、aaa社サーバ50を含む。aaa社サーバ50は、パーソナルコンピュータ等の情報処理端末向けに、各種ソフトウェアのダウンロードサービスを提供する。本実施例では、aaa社サーバ50は、ダウンロード要求に応じて、コンテンツである各種ソフトウェアを、インターネット40及びルーティング装置30を介してPC装置10に送信する。
また、本実施例において、aaa社サーバ50は、予め「os.aaa.com」という名前でドメインネームを設定している。また、aaa社サーバ50は、ドメインネーム「os.aaa.com」を用いてデータの送受信を行う。
また、通信システムは、クライアントB向けサーバ6として、bbb社サーバ60を含む。bbb社サーバ60は、ビデオデッキやDVDレコーダ等のネットワーク対応型の家電製品向けに、映像や音声を含むコンテンツのダウンロードサービスを提供する。本実施例では、bbb社サーバ60は、ダウンロード要求に応じて、映像や音声を含むコンテンツを、インターネット40及びルーティング装置30を介してビデオデッキ20に送信する。
また、本実施例において、bbb社サーバ60は、予め「video.bbb.co.jp 」という名前でドメインネームを設定している。また、bbb社サーバ60は、ドメインネーム「video.bbb.co.jp 」を用いてデータの送受信を行う。
また、通信システムは、ルーティング装置3として、ルータ30を含む。本実施例において、ルータ30は、予めグローバルアドレス「11.22.33.44 」を設定している。また、ルータ30は、アドレス「11.22.33.44 」を用いて、aaa社サーバ50又はbbb社サーバ60とデータの送受信を行う。また、本実施例において、ルータ30は、予めプライベートアドレス「192.168.0.1 」を設定している。また、ルータ30は、アドレス「192.168.0.1 」を用いて、PC装置10又はビデオデッキ20とデータの送受信を行う。
ルータ30は、メモリ等の記憶装置80を含む。また、記憶装置80は、送信元アドレスと送信先アドレスとを対応付けた変換表70を予め記憶する。本実施例において、ルータ30は、記憶装置80が記憶する変換表70に基づいて、インターネット40を介して受信したコンテンツを、いずれの機器(本例では、PC装置10又はビデオデッキ20)に中継するかを判断する。
図4は、記憶装置80が記憶する変換表70の一例を示す説明図である。図4に示すように、記憶装置80は、送信元アドレスとして各サーバ50,60のドメインネーム又はグローバルアドレスと、送信先アドレスとして各機器10,20のプライベートアドレスとを対応付けた変換表70を記憶する。
次に、本実施例の動作を説明する。本実施例では、PC装置10が、aaa社サーバ50から、コンテンツとしてソフトウェアをダウンロードする場合の動作を説明する。PC装置10は、ユーザの指示操作に従って、コンテンツのダウンロード要求を、ホームネットワーク90を介してルータ30に送信する。この場合、PC装置10とルータ30とは、ともにプライベートアドレスを用いて通信を行う。例えば、PC装置10は、アドレス「192.168.0.25」を用いて、ダウンロード要求をルータ30に送信する。
ルータ30は、受信したダウンロード要求に送信元として含まれるアドレス「192.168.0.25」を、ルータ30自身のグローバルアドレス「11.22.33.44 」に変換する。そして、ルータ30は、送信元としてアドレス「11.22.33.44 」を含むダウンロード要求を、インターネット40を介してaaa社サーバ50に中継送信する。
すなわち、ダウンロード要求に含まれる送信元アドレスがプライベートアドレスであるので、その送信元アドレスのままでは、グローバルアドレスを用いるaaa社サーバ50に、インターネット40を介してダウンロード要求を送信することはできない。そのため、ルータ30は、PC装置10からのダウンロード要求を、ルータ30自身のグローバルアドレス「11.22.33.44 」を用いて、恰もルータ30からの送信であるかのように見せかけて、aaa社サーバ50に送信する。なお、ルータ30は、例えば、IPマスカレード等のルーティング技術を用いて、送信元のアドレス変換を行い、aaa社サーバ50への通信を中継する。
aaa社サーバ50は、ダウンロード要求を受信すると、受信データに含まれる送信元アドレスに従って、コンテンツを、インターネット40を介してルータ30に送信する。ルータ30は、コンテンツを受信すると、変換表70に基づいて宛先の機器を特定する。この場合、ルータ30は、変換表70に含まれる送信元アドレスのうち、いずれの情報が受信データに含まれるドメインネーム「os.aaa.com」に合致するかを判断する。そして、ルータ30は、ドメインネーム「os.aaa.com」に合致する送信元アドレスに対応する送信先アドレスを特定する。本実施例では、ルータ30は、図4に示す変換表70に基づいて、対応する送信先アドレスがプライベートアドレス「192.168.0.25」であると特定する。
送信先アドレスを特定すると、ルータ30は、特定したアドレスに従って、受信コンテンツをホームネットワーク90を介して送信する。本実施例では、ルータ30は、特定したプライベートアドレス「192.168.0.25」に従って、受信コンテンツをPC装置10に送信する。
なお、本実施例では、PC装置10がソフトウェアをダウンロードする場合を例に説明したが、ビデオデッキ20が、bbb社サーバ60から、映像や音声を含むコンテンツをダウンロードする場合の動作も同様である。この場合、ルータ30は、bbb社サーバ60からコンテンツを受信すると、変換表70に含まれる送信元アドレスのうち、受信コンテンツに含まれるドメインネーム「video.bbb.co.jp 」に合致する送信元アドレスを特定する。また、ルータ30は、特定した送信元アドレスに対応する送信先アドレスを特定する。本実施例では、ルータ30は、図4に示す変換表70に基づいて、対応する送信先アドレスがプライベートアドレス「192.168.0.10」であると特定し、特定したアドレスに従って、コンテンツをビデオデッキ20に送信する。
また、本実施例では、クライアントがPC装置10及びビデオデッキ20である場合を説明したが、クライアントは、ネットワーク対応型の装置であれば、PC装置10やビデオデッキ20に限られない。例えば、他の例として、通信システムが、クライアントとして、A社製のエアコン及びビデオデッキと、B社製のパーソナルコンピュータとを含む場合を説明する。この場合、各クライアントは、ネットワークへの接続機能を備え、各メーカ(A社又はB社)のサーバと通信を行うことによって、各種サービスの提供を受ける。
例えば、通信システムは、A社が運営するサーバとして、エアコン向けのデータを提供するエアコン用サーバと、ビデオデッキ向けのコンテンツを提供するビデオ用サーバとを含む。また、通信システムは、B社が運営するサーバとして、パーソナルコンピュータ向けのコンテンツを提供するパソコン用サーバを含む。また、エアコン用サーバはドメインネーム「air.A.com 」を用いて通信を行い、ビデオ用サーバはドメインネーム「video.A.com 」を用いて通信を行い、パソコン用サーバはドメインネーム「pc.B.com」を用いて通信を行うとする。
ルータ30は、A社のサーバからA社製機器へのデータを受信した場合、変換表70に基づいて、送信元アドレス「air.A.com 」を含むデータをエアコンに中継し、送信元アドレス「video.A.com 」を含むデータをビデオデッキに中継する。また、ルータ30は、B社のサーバからB社製機器へのデータを受信した場合、変換表70に基づいて、送信元アドレス「pc.B.com」を含むデータをパーソナルコンピュータに中継する。そのようにすることによって、複数のサーバと複数のクライアントとの間の通信を適切に行うことができる。
例えば、従来のポート番号に基づく振り分け方法を用いると、クライアント(例えば、エアコン)がサーバと通信を行うために、前回ルーティング装置がサーバと通信を行った際に用いたポート番号に従って応答するというルールに従って、通信先の振り分けを行うことになる。しかし、ポート番号はIPアドレスのようにユニークに設定されるとは限らない。そのため、A社のサーバとB社のサーバとが偶然同じポート番号を用いて通信を行っている場合があり、その場合にはクライアントとサーバとが適切に通信を行うことができない。特に、IPアドレスの組み合わせの数が40億個程度あるのと比較して、ポート番号の組み合わせは6万個程度しかなく、偶然同じポート番号を用いているために適切に通信を行えない可能性は少なくない。
また、1つのポート番号だけでなく複数のポート番号を用いて通信を行う場合や、サーバが用いるポート番号をルーティング装置側で予測できない場合もあり、複数の機器間でネットワークを介した通信を制限してしまうこともある。
本実施例では、ユニークに設定されるグローバルアドレスやドメインネームに基づいて、通信先の振り分けを行うので、複数サーバが同じ通信ポート番号を用いている場合であっても、サーバとクライアントとの通信を適切に行うことができる。
本発明は、グローバルネットワーク上のサーバと、プライベートネットワーク上のクライアントとの間の通信を中継する用途に適用できる。
本発明によるルーティング装置を用いた通信システムの構成の一例を示すブロック図である。 ルーティング装置3が、各クライアント1,2と各サーバ5,6との間の通信を中継する中継処理の一例を示す流れ図である。 ルーティング装置を用いた通信システムの具体的な構成の一例を示すブロック図である。 記憶装置80が記憶する変換表70の一例を示す説明図である。
符号の説明
1,2 クライアント
3 ルーティング装置
4 グローバルネットワーク
5,6 サーバ
7,70 変換表
9 プライベートネットワーク
10 PC装置
20 ネットワーク対応ビデオデッキ
30 ルータ
40 インターネット
50 aaa社サーバ
60 bbb社サーバ
80 記憶装置
90 ホームネットワーク

Claims (8)

  1. グローバルネットワークに接続される複数のサーバと、プライベートネットワークに接続される複数のクライアントとの通信のルーティングを行うルーティング方法であって、
    クライアントを特定可能なプライベートアドレスとサーバを特定可能なグローバルアドレスとを対応付けた対応テーブルを、予め記憶手段に記憶し、
    いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すグローバルアドレスを、前記サーバ側送信データから抽出する送信元サーバ抽出ステップと、
    前記抽出したグローバルアドレスに対応するプライベートアドレスを、前記記憶手段が記憶する対応テーブルから抽出することによって、送信先のクライアントを特定する送信先クライアント特定ステップと、
    抽出したプライベートアドレスで特定されるクライアントに、プライベートネットワークを介して前記サーバ側送信データを送信するサーバ側送信データ送信ステップと
    いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信すると、当該クライアント側送信データに含まれる送信元のクライアントを示すプライベートアドレスを所定のグローバルアドレスに変換するアドレス変換ステップと、
    アドレス変換した前記クライアント側送信データを、グローバルネットワークを介して送信先のサーバに送信するクライアント側送信データ送信ステップとを含む
    ことを特徴とするルーティング方法。
  2. いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信したときに、当該クライアント側送信データに送信先のサーバを示すポート番号が含まれる場合には、送信元のクライアントを示すプライベートアドレスを、前記クライアント側送信データから抽出する送信元クライアント抽出ステップと、
    抽出したプライベートアドレスに対応するグローバルアドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のサーバを特定する送信先サーバ特定ステップとを含み、
    クライアント側送信データ送信ステップで、抽出したグローバルアドレスで特定されるサーバに、グローバルネットワークを介して前記クライアント側送信データを送信する
    請求項1記載のルーティング方法。
  3. サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを、予め記憶手段に記憶し、
    送信先クライアント特定ステップで、サーバ側送信データから抽出したグローバルアドレスの一部分が、前記記憶手段が記憶する対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応するプライベートアドレスを前記対応テーブルから抽出する
    請求項1又は請求項2記載のルーティング方法。
  4. ーバを特定可能なドメインネームを、プライベートアドレスに対応付けた対応テーブルを予め記憶手段に記憶し、
    送信元サーバ抽出ステップで、いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すドメインネームを、前記サーバ側送信データから抽出し、
    送信先クライアント特定ステップで、前記サーバ側送信データから抽出したドメインネームに対応するプライベートアドレスを、前記記憶手段が記憶する対応テーブルから抽出する
    請求項1から請求項3のうちのいずれか1項に記載のルーティング方法。
  5. グローバルネットワークに接続される複数のサーバと、プライベートネットワークに接続される複数のクライアントとの通信のルーティングを行うルーティング装置であって、
    クライアントを特定可能なプライベートアドレスとサーバを特定可能なグローバルアドレスとを対応付けた対応テーブルを、予め記憶する記憶手段と、
    いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すグローバルアドレスを、前記サーバ側送信データから抽出する送信元サーバ抽出手段と、
    前記送信元サーバ抽出手段が抽出したグローバルアドレスに対応するプライベートアドレスを、前記記憶手段が記憶する対応テーブルから抽出することによって、送信先のクライアントを特定する送信先クライアント特定手段と、
    前記送信先クライアント特定手段が抽出したプライベートアドレスで特定されるクライアントに、プライベートネットワークを介して前記サーバ側送信データを送信するサーバ側送信データ送信手段と
    いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信すると、当該クライアント側送信データに含まれる送信元のクライアントを示すプライベートアドレスを所定のグローバルアドレスに変換するアドレス変換手段と、
    前記アドレス変換手段によってアドレス変換された前記クライアント側送信データを、グローバルネットワークを介して送信先のサーバに送信するクライアント側送信データ送信手段とを備えた
    ことを特徴とするルーティング装置。
  6. いずれかのクライアントからプライベートネットワークを介してクライアント側送信データを受信したときに、当該クライアント側送信データに送信先のサーバを示すポート番号が含まれる場合には、送信元のクライアントを示すプライベートアドレスを、前記クライアント側送信データから抽出する送信元クライアント抽出手段と、
    前記送信元クライアント抽出手段が抽出したプライベートアドレスに対応するグローバルアドレスを、記憶手段が記憶する対応テーブルから抽出することによって、送信先のサーバを特定する送信先サーバ特定手段とを備え、
    クライアント側送信データ送信手段は、前記送信先サーバ特定手段が抽出したグローバルアドレスで特定されるサーバに、グローバルネットワークを介して前記クライアント側送信データを送信する
    請求項5記載のルーティング装置。
  7. 記憶手段は、各サーバのグローバルアドレスの一部分である部分アドレスを含む対応テーブルを記憶し、
    送信先クライアント特定手段は、サーバ側送信データから抽出したグローバルアドレスの一部分が、前記記憶手段が記憶する対応テーブルに含まれる部分アドレスのうちのいずれと合致するかを判断し、合致すると判断した部分アドレスに対応するプライベートアドレスを前記対応テーブルから抽出する
    請求項5又は請求項6記載のルーティング装置。
  8. 記憶手段は、サーバを特定可能なドメインネームを、プライベートアドレスに対応付けた対応テーブルを予め記憶し、
    送信元サーバ抽出手段は、いずれかのサーバからグローバルネットワークを介してサーバ側送信データを受信すると、送信元のサーバを示すドメインネームを、前記サーバ側送信データから抽出し、
    送信先クライアント特定手段は、前記サーバ側送信データから抽出したドメインネームに対応するプライベートアドレスを、前記記憶手段が記憶する対応テーブルから抽出する
    請求項5から請求項7のうちのいずれか1項に記載のルーティング装置。
JP2005062818A 2005-03-07 2005-03-07 ルーティング方法及びルーティング装置 Expired - Fee Related JP4583978B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005062818A JP4583978B2 (ja) 2005-03-07 2005-03-07 ルーティング方法及びルーティング装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005062818A JP4583978B2 (ja) 2005-03-07 2005-03-07 ルーティング方法及びルーティング装置

Publications (2)

Publication Number Publication Date
JP2006246385A JP2006246385A (ja) 2006-09-14
JP4583978B2 true JP4583978B2 (ja) 2010-11-17

Family

ID=37052277

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005062818A Expired - Fee Related JP4583978B2 (ja) 2005-03-07 2005-03-07 ルーティング方法及びルーティング装置

Country Status (1)

Country Link
JP (1) JP4583978B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5377615B2 (ja) * 2011-11-30 2013-12-25 株式会社東芝 インタフェース装置、このインタフェース装置を備えた電子機器及びインタフェース装置で使用される制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000512096A (ja) * 1996-05-31 2000-09-12 オクテル コミュニケーションズ コーポレイション 拡張アドレシング計画のための方法およびシステム
JP2001520857A (ja) * 1998-02-20 2001-10-30 ジーティーイー モービルネット サービス コーポレイション 伝送の認証、ルーティング、及び伝達のための方法及びシステム
JP2004363785A (ja) * 2003-06-03 2004-12-24 Nippon Telegr & Teleph Corp <Ntt> ネットワーク間接続装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1031638A (ja) * 1996-07-16 1998-02-03 Toshiba Corp ネットワーク管理システム及びネットワーク管理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000512096A (ja) * 1996-05-31 2000-09-12 オクテル コミュニケーションズ コーポレイション 拡張アドレシング計画のための方法およびシステム
JP2001520857A (ja) * 1998-02-20 2001-10-30 ジーティーイー モービルネット サービス コーポレイション 伝送の認証、ルーティング、及び伝達のための方法及びシステム
JP2004363785A (ja) * 2003-06-03 2004-12-24 Nippon Telegr & Teleph Corp <Ntt> ネットワーク間接続装置

Also Published As

Publication number Publication date
JP2006246385A (ja) 2006-09-14

Similar Documents

Publication Publication Date Title
US7339895B2 (en) Gateway device and control method for communication with IP and IPV6 protocols
US7251486B2 (en) System and method for assigning a network address
US20090041058A1 (en) Network system and an interworking apparatus
US8438614B2 (en) Communication system, relay apparatus, terminal apparatus and computer readable medium
US10462232B2 (en) Non-transitory computer-readable medium for server
US20080059611A1 (en) Network Device Allowing Easy Setup and Computer Program Therefor
JP2011077804A (ja) 通信装置およびその通信方法
US10075354B2 (en) Identification of servers by common wide area network addresses
US10257254B2 (en) Method and associated server for providing user-friendly operation
JP2008148243A (ja) 通信装置、通信システム、通信方法及び通信プログラム
JP4583978B2 (ja) ルーティング方法及びルーティング装置
JP5638063B2 (ja) 通信装置、通信装置の制御方法、プログラム
US20060112192A1 (en) Method and apparatus to facilitate universal plug and play interaction between different local networks
US9929951B1 (en) Techniques for using mappings to manage network traffic
JP2005197936A (ja) 通信システム、登録装置及び通信装置
US20080212587A1 (en) Relay apparatus and packet relay method
JP5640764B2 (ja) 信号処理装置及びプログラム
JP4911570B2 (ja) 電力線ネットワークの優先通信方法およびシステム
WO2019142327A1 (ja) 中継装置および中継方法
JP5535254B2 (ja) ネットワークシステム、端末識別方法、およびプログラム
JP2008206081A (ja) マルチホーミング通信システムに用いられるデータ中継装置およびデータ中継方法
JPH10257085A (ja) データ通信システム装置、接続端末装置及びサーバ装置
JP6327146B2 (ja) カラオケシステム、アドレスリースサーバ
JP2005318121A (ja) セッション管理装置
JP2011151604A (ja) 信号処理装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100514

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100824

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100901

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees