JP4352645B2 - Terminal device, relay device, communication method, and recording medium recording the communication program - Google Patents

Terminal device, relay device, communication method, and recording medium recording the communication program Download PDF

Info

Publication number
JP4352645B2
JP4352645B2 JP2001311892A JP2001311892A JP4352645B2 JP 4352645 B2 JP4352645 B2 JP 4352645B2 JP 2001311892 A JP2001311892 A JP 2001311892A JP 2001311892 A JP2001311892 A JP 2001311892A JP 4352645 B2 JP4352645 B2 JP 4352645B2
Authority
JP
Japan
Prior art keywords
terminal device
packet
address
network
entry
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
JP2001311892A
Other languages
Japanese (ja)
Other versions
JP2002185517A (en
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP2001311892A priority Critical patent/JP4352645B2/en
Publication of JP2002185517A publication Critical patent/JP2002185517A/en
Application granted granted Critical
Publication of JP4352645B2 publication Critical patent/JP4352645B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、端末装置、中継装置、通信方法及びその通信プログラムを記録した記録媒体に関し、異なるアドレス体系によって構成される複数ネットワーク間でのアドレス変換方法に関する。
【0002】
【従来の技術】
近年、「Internet Protocol-DARPA Internet Program Protocol Specification, RFC791」に記載されるIPv4(Internet Protocol version 4)技術を基盤としたインターネットの普及は顕著であり、既存のインターネット普及の対象であった専用線や加入者電話、ISDN市場での拡充のみならず、「Wireless Application Protocol Architectural Overview, WAP Architecture Version 30-Apr-1988」に記載されているWAP(Wireless Application Protocol)技術を利用したシステムの登場など移動体通信市場をもその対象にしてきている。
【0003】
端末装置をインターネットに接続してデータ通信をするためにはインターネットでその端末装置を識別するためのアドレス(IPアドレス)が必要である。IPアドレスは、32ビットのアドレス空間を持ち、インターネットで通信する端末装置に割り当てられるIPアドレス(グローバルアドレス)はインターネットにおいて唯一のものでなければならない。そのため、インターネット普及の拡大、それに伴う端末装置の増加に従い、端末装置に割り当てるアドレスの不足が問題になってきている。なお、IPアドレスの割り当てに関しては、米国IANA(Internet Assigned Numbers Authority)によって全世界的に管理され、基本的に利用者が勝手に端末装置に割り当てて使うことはできない。
【0004】
このような問題を解決するために、長期的には「Internet Protocol, Version 6 (IPv6) Specification, RFC2460」に記載されているIPv6(Internet Protocol version 6)技術の適用が決定されているが、IPv4技術で広く普及した現在のインターネットにおいてはIPv6が普及するまでの現実解としてIPv4技術上での解決が求められる。
【0005】
IPv4技術上で本問題を解決する従来の技術として、「The IP Network Address Translator (NAT), RFC1631」に記載されているNAT(Network Address Translator)技術や、「IP Network Address Translator (NAT) Terminology and Considerations, RFC2663」に記載されているNAPT(Network Address Port Translator)技術等がある。
【0006】
これらの技術は、基本的に、アドレス体系の異なる二つの接続されたネットワーク間で一方のネットワークともう一方のネットワークのアドレス変換を行なう技術で、プライベートアドレスの適用と組み合わせることにより、IPアドレスの効率的な利用を実現するものである。
【0007】
ここで、プライベートアドレスとは、「Address Allocation for Private Internets, RFC1918」で定められており、IANAの管理とは無関係に使用できるIPアドレスのことである。プライベートアドレスとしてIPアドレス"10.x.x.x"、"172.16.x.x"、"192.168.x.x"(但し、xは0〜255の任意の値を表す)が割り当てられている。なお、プライベートアドレスに割り当てられているIPアドレスはグローバルアドレスとして使用しないことになっている。
【0008】
また、「ネットワークNaとネットワークNbのアドレス体系が異なる」とは、以下の条件が成り立つことである。
【0009】
「ネットワークNaとネットワークNbが、それぞれ、あるメタネットワーク(互いに直接、または、間接的に接続されたネットワークの集合体)の一部を構成するネットワークである(部分条件1)」、かつ、
「ネットワークNaとネットワークNbが、それぞれ、接続される端末装置にそのネットワークにおいて一意に識別可能な識別子をアドレスとして割り当てることを基本としたアドレス体系を使用している(部分条件2)、かつ、
「ネットワークNaに接続された任意の端末装置Tについて、『端末装置Tのアドレスの値AがネットワークNbのアドレス体系においてアドレスを表す識別子として意味をなさない(アドレスを表す識別子として用いられない等)(部分条件3−1)』、または、『該アドレスの値AがネットワークNbのアドレス体系においてアドレスを表す識別子として意味をなす(アドレスを表す識別子として用いられる)が、ネットワークNbでは該アドレスの値AをネットワークNaに接続された端末装置に割り当てていることを関知していない(部分条件3−2)』(部分条件3)」。
【0010】
例えば、図25に示すように、ネットワークNと第1のネットワークN1、第2のネットワークN2、第3のネットワークN3、第4のネットワークN4が図25のように接続されたメタネットワークがあり、各ネットワークのアドレス体系は、ネットワークNがグローバルアドレス(但し、133.x.x.xは第1のネットワークN1で使用できるように、ネットワークN内では運用上割り当てていない)、第1のネットワークN1がグローバルアドレス133.x.x.x、第2のネットワークN2がプライベートアドレス10.x.x.x、第3のネットワークN3がプライベートアドレス、第4のネットワークN4がプライベートアドレス10.255.x.xを採用しており、第3のネットワークN3と第4のネットワークN4は一つのプライベートアドレス10.x.x.xのうち、10.0.x.x〜10.254.x.x を第3のネットワークN3に、残りの10.255.x.xを第4のネットワークN4にサブネット化したものとする。ここで、図25を構成する任意の二つのネットワークは上記条件の内、部分条件1と部分条件2が成り立つことになる。
【0011】
グローバルアドレス体系とプライベートアドレス体系は、どちらもアドレスの値として32ビット空間の値の一部を使用するが、グローバルアドレス体系ではプライベートアドレス体系で使用するアドレスの値を使用しないことになっている。そのため、グローバルアドレス体系を採るネットワークとプライベートアドレス体系を採るネットワークでは上記の部分条件3−1が成り立ち上記条件が成立することになるため、アドレス体系が異なる。すなわち、ネットワークNと第1のネットワークN1は、第2のネットワークN2と第3のネットワークN3、第4のネットワークN4のそれぞれに対してアドレス体系が異なる。
【0012】
また、ネットワークトNと第1のネットワークN1は、条件3が成り立たないため、アドレス体系が異ならない。第2のネットワークN2は、第3のネットワークN3と第4のネットワークN4に対して、条件3−1は成り立たないが条件3−2が成り立つため、アドレス体系が異なる。第3のネットワークN3と第4のネットワークN4は、条件3が成り立たないため、アドレス体系は異ならない。
【0013】
図22にNAPT技術を適用した既存の通信システムの構成を示す。
【0014】
図22に示すとおり、NAPT技術を適用した既存の通信システムは、端末装置T、NAPT中継装置R、サーバ装置S、グローバルネットワークNg、プライベートネットワークNpから構成される。端末装置Tからサーバ装置SへはNAPT中継装置Rを経由してアクセスされ、端末装置TとNAPT中継装置R間はプライベートネットワークNpで接続される。一方、NAPT中継装置Rとサーバ装置S間はグローバルネットワークNgで接続されている。
【0015】
グローバルネットワークNgとプライベートネットワークNpはそれぞれ異なるアドレス体系を適用している。グローバルネットワークNgに接続される端末装置には、グローバルアドレスが割り当てられ、プライベートネットワークNpでは接続される端末装置には、プライベートアドレスが割り当てられる。端末装置Tは、TCP/IP(Transmission Control Protocol / Internet Protocol)による通信手段を備え、該通信手段を利用してサーバ装置Sのサーバプログラムに接続し、該サーバプログラムと通信するクライアントプログラムを搭載した情報処理機器で、プライベートネットワークNpの一つのプライベートアドレス(Ap−tとする)が割り当てられている。
【0016】
サーバ装置Sは、TCP/IPによる通信手段を備え、該通信手段を利用して端末装置Tのクライアントプログラムからの接続を待ち、接続してきたクライアントプログラムと通信するサーバプログラムを搭載した情報処理機器で、グローバルネットワークNgの一つのグローバルアドレス(Ag−sとする)が割り当てられている。
【0017】
サーバプログラムはサーバ装置Sにおいて、ポート番号P−sで識別されるポートでクライアントプログラムからの接続を待っている。クライアントプログラムは該ポートのポート番号P−sを知っている必要があり、サーバプログラムに接続する際には通信手段に対して該ポート番号P−sを宛先のポートのポート番号として指定することにより、サーバプログラムと接続し、サーバプログラムとの通信セッションを開始する。
【0018】
NAPT中継装置Rは、パケット受信手段1021、1023、パケット送信手段1022、1024、アドレス変換手段1025、1026、記憶手段1027から構成される、IPパケット中継機能を備えるルータで、プライベートネットワークNpに対して一つのプライベートアドレス(Ap−rとする)が、また、グローバルネットワークNgに対して一つのグローバルアドレス(Ag−rとする)が割り当てられている。
【0019】
記憶手段1027は対応管理テーブルを保持する。対応管理テーブルの構成を図4に示す。
【0020】
図4に示すとおり、対応管理テーブルは、エントリ識別子フィールド、第1のソケットフィールド、第2のソケットフィールド、第3のソケットフィールドからなるエントリを持つ。エントリ識別子フィールドは、NAPT中継装置Rにおいて対応管理テーブルの各エントリを一意に識別するエントリ識別子の値が格納される。第1のソケットフィールドは、プライベートネットワークNpのアドレスとポート番号の組からなり、第2のソケットフィールドと第3のソケットフィールドはそれぞれグローバルネットワークNgのIPアドレスとポート番号の組からなる。
【0021】
パケット受信手段1021は、プライベートネットワークNpから送られてくるグローバルネットワークNg宛てのIPパケットを受信し、受信したIPパケットをアドレス変換手段1025に渡す。
【0022】
パケット送信手段1022は、アドレス変換手段1025から渡されるIPパケットをグローバルネットワークNgに送出する。
【0023】
パケット受信手段1023は、グローバルネットワークNgから送られてくるプライベートネットワークNp宛てのIPパケットを受信し、受信したIPパケットをアドレス変換手段1026に渡す。
【0024】
パケット送信手段1024は、アドレス変換手段1026から渡されるIPパケットをプライベートネットワークNpに送出する。
【0025】
図23に示されるように、アドレス変換手段1025は、対応検索手段1251、パケット変換手段1252、登録手段1254から構成される。
【0026】
対応検索手段1251はパケット受信手段1021からアドレス変換手段1025に渡されるIPパケットを受取る。対応検索手段1251は、パケット受信手段1021からパケットを渡されると、記憶手段1027の対応管理テーブルから、第1のソケットフィールドの値が該IPパケットの送信元アドレス、送信元ポート番号の組と等しく、かつ、第2のソケットフィールドの値が該IPパケットの宛先アドレス、宛先ポート番号の組と同じ値を持つエントリを検索する。
【0027】
該検索により該エントリが検出された場合、対応検索手段1251は、該IPパケットと該エントリのエントリ識別子フィールドに格納されているエントリ識別子をパケット変換手段1252に渡す。該検索により該エントリが検出されなかった場合、対応検索手段1251は、該IPパケットを登録手段1254に渡す。
【0028】
パケット変換手段1252は、IPパケットとエントリ識別子を渡されると、該IPパケットの送信元アドレスと送信元ポート番号をそれぞれ該エントリ識別子から識別される対応管理テーブルのエントリの第3のソケットフィールドに示されるIPアドレスとポート番号の値に書き換え、該書き換えたIPパケットをパケット送信手段1022に渡す。
【0029】
登録手段1254は、IPパケットを渡されると、未使用のエントリ識別子を生成するとともに、未使用のポート番号を一つ選ぶ。そして、登録手段1254は、該エントリ識別子をエントリ識別子フィールドの値とし、該IPパケットの送信元アドレスと送信元ポート番号の組と宛先アドレスと宛先ポート番号の組をそれぞれ第1のソケットフィールドと第2のソケットフィールドの値とし、NAPT中継装置RのグローバルネットワークNgのIPアドレスと該選ばれたポート番号の組を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段1027の対応管理テーブルに記憶する。そして、登録手段1254は、該IPパケットと該エントリ識別子をパケット変換手段1252に渡す。
【0030】
図24に示されるように、アドレス変換手段1026は、対応検索手段1261、パケット変換手段1262から構成される。
【0031】
対応検索手段1261はパケット受信手段1023からアドレス変換手段1026に渡されるIPパケットを受取る。対応検索手段1261は、パケット受信手段1023からIPパケットを渡されると、記憶手段1027の対応管理テーブルから、第2のソケットフィールドの値が該IPパケットの送信元アドレスと送信元ポート番号の組と等しく、かつ、第3のソケットフィールドの値が該IPパケットの宛先アドレスと宛先ポート番号の組と等しいエントリを検索する。
【0032】
該検索により該エントリが検出された場合、対応検索手段1261は、該IPパケットと該エントリのエントリ識別子フィールドに格納されているエントリ識別子をパケット変換手段1262に渡す。該検索により該エントリが検出されなかった場合、対応検索手段1261は、該IPパケットの宛先がわからないため該IPパケットを廃棄する。
【0033】
パケット変換手段1262は、IPパケットとエントリ識別子を渡されると、該IPパケットの宛先アドレスと宛先ポート番号をそれぞれ該エントリ識別子から識別される対応管理テーブルのエントリに示される第1のソケットのIPアドレスとポート番号の値に書き換え、該書き換えたIPパケットをパケット送信手段1024に渡す。
【0034】
次に、NAPT技術の動作について説明する。
【0035】
ここでは、まず、端末装置Tが、端末装置TのポートP−tとサーバ装置SのポートP−s間での通信セッションを開始するべく、端末装置TのポートP−tとサーバ装置SのポートP−s間で最初のIPパケット(IPパケットAと呼ぶ)をプライベートネットワークNpに送出した場合の動作について説明する。このとき、該IPパケットAは、宛先アドレスがサーバ装置SのIPアドレスAg−s、送信元アドレスが端末装置TのIPアドレスAp−t、該IPパケットAが含むトランスポート層プロトコルヘッダにおける宛先ポート番号がP−s、同じく送信元ポート番号がP−tになる。また、記憶手段1027の対応管理テーブルは、初期状態として、エントリが一つも登録されていないとする。
【0036】
端末装置Tからサーバ装置Sへ宛てられたIPパケットAは、プライベートネットワークNpを介してNAPT中継装置Rのパケット受信手段1021によって受信され、パケット受信手段1021は該IPパケットAをアドレス変換手段1025に渡す。
【0037】
アドレス変換手段1025に渡された上記IPパケットAは対応検索手段1251で受取られる。対応検索手段1251は、上記IPパケットAを渡されると、記憶手段1027の対応管理テーブルから、第2のソケットフィールドの値が該IPパケットAの送信元アドレスと送信元ポート番号の組[Ap−t、P−t]と等しく、かつ、第3のソケットフィールドの値が該IPパケットAの宛先アドレスと宛先ポート番号の組[Ag−r、P−r]と等しいエントリを検索する。
【0038】
この場合、対応管理テーブルには上記エントリが存在しないため、上記検索によって該エントリは検出されない。
【0039】
対応検索手段261は、上記検索で上記エントリが検出されなかったため、上記IPパケットAを登録手段1254に渡す。
【0040】
登録手段1254は、上記IPパケットAを渡されると、未使用のエントリ識別子を生成し、かつ、NAPT中継装置Rにおいて未使用のポート番号を一つ選ぶ(選ばれたポート番号をP−rとする)。そして、登録手段1254は、該エントリ識別子をエントリ識別子フィールドの値とし、該IPパケットAの送信元アドレスと送信元ポート番号の組[Ap−t、P−t]と、宛先アドレスと宛先ポート番号の組[Ag−s、P−s]をそれぞれ第1のソケットフィールドと第2のソケットフィールドの値とし、NAPT中継装置RのグローバルネットワークNgのIPアドレスと該選ばれたポート番号の組[Ag―r、P−r]を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段1027の対応管理テーブルに記憶する。そして、登録手段1254は、該IPパケットAと該エントリ識別子をパケット変換手段1252に渡す。
【0041】
パケット変換手段1252は、上記IPパケットAと上記エントリ識別子を渡されると、該IPパケットAの送信元アドレスAp−tと送信元ポート番号P−tをそれぞれ該エントリ識別子から識別される対応管理テーブルのエントリの第3のソケットフィールドに示されるIPアドレスAg−rとポート番号P−rの値に書き換え、該書き換えたIPパケット(IPパケットBと呼ぶ)をパケット送信手段1022に渡す。
【0042】
パケット送信手段1022は、上記IPパケットBを渡されると、該IPパケットBをグローバルネットワークNgに送出する。
【0043】
NAPT中継装置Rから送出された上記IPパケットBは、グローバルネットワークNgを介してサーバ装置Sで受信される。サーバ装置Sは、該IPパケットBの含む送信元アドレス、送信元ポート番号、宛先アドレス、宛先ポート番号の内容から、該IPパケットBは、IPアドレスがAg−rである装置のポートP−rと自分自身(サーバ装置S)のポートP−s間のIPパケットであると識別し、該データ通信セッションでIPパケットを送信する場合は、該IPパケットの宛先アドレスをAg−r、宛先ポート番号をP−r、送信元アドレスをAg−s、送信元ポート番号をP−sにする。
【0044】
以降、NAPT中継装置Rは、プライベートネットワークNpから該通信セッションのIPパケット(IPパケットCと呼ぶ)を受信すると、上記のIPパケットAの処理と同様に動作するが、対応検索手段1251の検索の処理において、対応検索手段1251が、記憶手段1027の対応管理テーブルから、第1のソケットフィールドの値が該IPパケットCの送信元アドレス、送信元ポート番号の組[Ap−t、P−t]と等しく、かつ、第2のソケットフィールドの値が該IPパケットCの宛先アドレス、宛先ポート番号の組[Ag−s、P−s]と等しい値を持つエントリを検出し、該IPパケットCと該検出されたエントリのエントリ識別子を、登録手段1254を経由せずに、直接、パケット変換手段1252に渡す。パケット変換手段1252以降の処理は、上記IPパケットAの場合と同様に行なわれ、該IPパケットCは上記IPパケットBと同じ送信元アドレスAg−r、送信元ポート番号P−rをもつIPパケットに変換され(変換されたIPパケットをIPパケットDと呼ぶ)、該変換されたIPパケットDとしてグローバルネットワークNgを介してサーバ装置Sに送られる。
【0045】
また、上記IPパケットA、IPパケットBを処理した後のサーバ装置Sから送出される該通信セッションのIPパケット(IPパケットEと呼ぶ)は、上記のとおり、宛先アドレスがAg−r、宛先ポート番号がP−r、送信元アドレスがAg−s、送信元ポート番号がP−sとなり、グローバルネットワークNgを介して、NAPT中継装置Rのパケット受信手段1023に受信され、パケット受信手段1023は該IPパケットEをアドレス変換手段1026に渡す。
【0046】
アドレス変換手段1026に渡された上記IPパケットEは対応検索手段1261で受取られる。対応検索手段1261は、上記IPパケットEを渡されると、記憶手段1027の対応管理テーブルから、第2のソケットフィールドの値が該IPパケットEの送信元アドレスと送信元ポート番号の組[Ag−s、P−s]と等しく、かつ、第3のソケットフィールドの値が該IPパケットEの宛先アドレスと宛先ポート番号の組[Ag−r、P−r]と等しいエントリを検索する。
【0047】
この場合、対応管理テーブルには、上記IPパケットA処理時に登録したエントリが存在し、該エントリが上記検索するエントリに対応するため、対応検索手段1261は該IPパケットEと該エントリのエントリ識別子をパケット変換手段1262に渡す。
【0048】
パケット変換手段1262は、上記IPパケットEと上記エントリ識別子を渡されると、該IPパケットEの宛先アドレスAg−rと宛先ポート番号P−rをそれぞれ該エントリ識別子から識別される対応管理テーブルのエントリの第1のソケットのIPアドレスAp−tとポート番号P−tの値に書き換え、該書き換えたIPパケット(IPパケットFと呼ぶ)をパケット送信手段1024に渡す。
【0049】
パケット送信手段1024は、上記IPパケットFを渡されると、該IPパケットFをプライベートネットワークNpに送出する。
【0050】
NAPT中継装置Rから送出された上記IPパケットFは、プライベートネットワークNpを介して端末装置Tに受信される。
【0051】
上述のように、NAPT技術を適用した既存の通信システムでは、NAPT中継装置Rによりプライベートアドレスとポート番号の組で構成されるソケットと、グローバルアドレスとポート番号の組で構成されるソケットの対で識別される一つの通信セッションと、一つのグローバルアドレスとポート番号の組とを対応づけ、中継の際にプライベートネットワークNp側のIPアドレスとポート番号と、該通信セッションに対応づけられたグローバルネットワークNg側のIPアドレスとポート番号を相互に変換することによって、アドレス体系の異なるプライベートネットワークNpに接続された装置とグローバルネットワークNgに接続された装置間のIPによる通信を可能ならしめている。本技術は、一つのグローバルネットワークに対して、同じプライベートアドレス体系を使用している複数のプライベートネットワークが接続している構成の通信システムにおいても適用可能である。個々のプライベートネットワークとグローバルネットワーク間をそれぞれNAPT中継装置で接続することにより、各プライベートネットワークに接続された端末装置とグローバルネットワークに接続されたサーバ装置間の通信を実現することが出来る。そのため、NAPT中継装置で接続されたプライベートネットワークを増やすことによって、端末装置に割り当てるIPアドレスを増やすことができる。
【0052】
【発明が解決しようとする課題】
第1の問題点は、グローバルネットワークに接続されたサーバ装置とプライベートネットワークに接続された端末装置間で通信する際に、サーバ装置から通信を開始することができないことである。
【0053】
その理由は、サーバ装置から通信を開始する場合には、まず、サーバ装置は端末装置の名前から該端末装置のIPアドレスを知る必要があるが、このときのアドレス解決ができないからである。
【0054】
第2の問題点は、異なるプライベートネットワークに接続された端末装置間で通信ができないことである。
【0055】
その理由は、上述の第1の問題点の理由と同様、通信を開始する端末装置において、通信相手となる端末装置のアドレス解決ができないからである。
本発明の目的は、このような問題点を解決する端末装置、中継装置、通信方法等を提供することにある。
【0056】
【課題を解決するための手段】
本発明では、記憶手段27に予め第1のネットワーク(図1の例では、プライベートネットワーク4)に接続される端末装置1―x(x=1、2、…、n)のアドレスと該端末装置1―xが提供するサービスに対応するポート番号を登録しておく。中継装置2は第1のネットワークとアドレス体系の異なる第2のネットワーク(図1の例ではグローバルネットワーク5)に接続された端末装置3からのデータ通信を開始するパケットを受信すると、アドレス変換手段26が、記憶手段27から該パケットが含む宛先ポート番号と等しいポート番号を登録した端末装置のアドレスを検索し、該パケットの宛先アドレスを該検索されたアドレスに変換して第1のネットワークに送出する。
【0057】
このような構成を採用することにより第2のネットワークに接続されたサーバ装置と第1のネットワークに接続された端末装置間で通信する際に、サーバ装置からの通信を開始することを可能とし、アドレス体系の異なるネットワークに接続された端末装置間での通信を可能とし、上記第1及び第2の問題点を解決する。
【0058】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0059】
図1には、本発明の端末装置、中継装置、及びその通信方法に係る第1の実施形態が示されている。
【0060】
従来の技術では、グローバルアドレスのアドレス体系をとるネットワーク(グローバルネットワーク)とプライベートアドレスのアドレス体系をとるネットワーク(プライベートネットワーク)を中継装置により接続した場合、グローバルネットワークにおいて一つのグローバルアドレスに対してプライベートネットワークに接続された複数の端末装置を対応させており、グローバルネットワークに接続された第1の端末装置はプライベートネットワークに接続された第2の端末装置のアドレスを一意に識別することができず、第1の端末装置から第2の端末装置へのデータ通信を開始することができなかった。本実施の形態では、既存の通信システムの構成に加え、中継装置の記憶手段(記憶手段1027)に記憶するテーブルとして新たに処理端末登録テーブルを導入し、かつ、一方のアドレス変換手段(既存の技術におけるアドレス変換手段1026に相当する)に登録検索手段と登録手段を導入する。予め、第1の端末装置から第2の端末装置へのデータ通信を開始することを可能とするサービスを定めておき、該サービスに対応するサービス識別子の一つであるポート番号と第2の端末装置のアドレスとの対応を処理端末登録テーブルに記憶しておき、中継装置は、第1の端末装置から第2の端末装置へのある通信セッションを開始するパケットを受信すると、上記登録検索手段が該パケットの宛先ポート番号に対応する第2の端末装置のアドレスを該処理端末登録テーブルから検索し、該パケットの宛先を検索された第2の端末装置とすることにより、第1の端末装置から第2の端末装置へのデータ通信の開始を可能とする。また、この際に上記登録手段が既存の技術と同様にこれらのソケットの対応を対応管理テーブルに登録することにより、これ以降の該通信セッションの双方向のパケットを同様に中継することを可能とする。
【0061】
本発明の第1の実施の形態の構成を図1、図2、図3、図4に示す。
【0062】
図1に示されるように、本発明の第1の実施の形態は、複数の端末装置(端末装置1―1、端末装置1―2、...、端末装置1―n)、中継装置2、端末装置3とネットワーク4、5から構成され、端末装置1―x(x=1、2、...、n。以降も同様。)と中継装置2はネットワーク4を介して接続され、中継装置2と端末装置3はネットワーク5を介して接続される。
【0063】
ネットワーク4、5はそれぞれ異なるアドレス体系を適用しているネットワークである。
【0064】
ネットワーク4は、IP、または、その他の技術で構成されたネットワークであり、IPネットワークやISDN網、移動通信網などデータ転送サービスを提供するネットワークである。ネットワーク4では、端末装置1―xと中継装置2の間でユーザデータや制御情報を運ぶパケットが転送される。
【0065】
ネットワーク5はグローバルアドレスを適用したIPネットワークである。ネットワーク5では、中継装置2と端末装置3との間でアドレス解決のための問合せを行うアドレス解決問合せメッセージと、該アドレス解決の問合せに応答するアドレス解決応答メッセージと、その他の制御情報やユーザデータを運ぶIPパケットが転送される。
【0066】
端末装置1―xは、ネットワーク4で利用可能な通信機能を備え、該通信機能を利用して端末装置3の通信プログラムと通信する通信プログラムを搭載した情報処理機器で、端末装置名と、ネットワーク4の一つのアドレス(A1―xとする)が割り当てられている。端末装置名は、FQDN(Fully Qualified Domain Name)形式のように該端末装置が接続されるネットワークの情報と該ネットワーク内で一意に識別できる識別子から構成されており、他の端末装置、または、他の端末装置のプログラムや利用者が該端末装置を識別するために使用される。
【0067】
端末装置3は、既存のインターネットで利用されている端末装置であり、TCP/IPによる通信機能を備え、該通信機能を利用して端末装置1―xの通信プログラムと通信する通信プログラムを搭載した情報処理機器で、端末装置名と、ネットワーク5の一つのアドレス(A2−1とする)が割り当てられている。端末装置名は、端末装置1―xと同様、FQDN形式のように該端末装置が接続されるネットワークの情報と該ネットワーク内で一意に識別できる識別子から構成されており、他の端末装置、または、他の端末装置のプログラムや利用者が該端末装置を識別するために使用される。また、端末装置3は、他の端末装置と通信を開始する場合に、他の端末装置の名前から該他の端末装置のIPアドレス(、または、該他の端末装置へ送るIPパケットの宛先となる装置のIPアドレス)を問い合わせる、アドレス解決手段を有する。該アドレス解決手段は、RFC1035“DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION”に記載されているDNS(Domain Name System)技術などで実現される。
【0068】
中継装置2は、パケット受信手段21、23、パケット送信手段22、24、アドレス変換手段25、26、記憶手段27,アドレス問合せ応答手段28から構成され、ネットワーク4の一つのアドレス(A1−rとする)と、ネットワーク5の一つのIPアドレス(A2−2とする)が割り当てられている。
【0069】
記憶手段27は処理端末登録テーブルと対応管理テーブルを保持する。処理端末登録テーブルと対応管理テーブルの構成を図4に示す。
【0070】
図4に示すとおり、処理端末登録テーブルは、中継装置2において処理端末登録テーブルのエントリを一意に識別する第1のエントリ識別子の値を格納するエントリ識別子フィールドとネットワーク4のアドレスを格納するアドレスフィールドとポート番号を格納するポート番号フィールドの組をエントリとして持つ。処理端末登録テーブルには、予め、端末装置3に提供するサービスを処理する端末装置を決めておき、該サービスを処理する端末装置のアドレスをアドレスフィールドに、該サービスに対応するポート番号をポート番号フィールドに設定したエントリを記憶しておく。例えば、端末装置3に対してFTPサービスを提供する端末装置を端末装置1―1と決めておき、処理端末登録テーブルに端末装置1―1のアドレスA1−1と、FTPサービスに対応するポート番号20の組を設定しておく。
【0071】
対応管理テーブルは、エントリ識別子フィールド、第1のソケットフィールド、第2のソケットフィールド、第3のソケットフィールドからなるエントリを持つ。エントリ識別子フィールドは、中継装置2において対応管理テーブルの各エントリを一意に識別する第2のエントリ識別子の値が格納される。第1のソケットフィールドは、ネットワーク4のアドレスとポート番号の組からなり、第2のソケットフィールドと第3のソケットフィールドはそれぞれネットワーク5のIPアドレスとポート番号の組からなる。
【0072】
パケット受信手段21は、ネットワーク4から送られてくるネットワーク5宛てのパケットを受信し、受信したパケットをアドレス変換手段25に渡す。
【0073】
パケット送信手段22は、アドレス変換手段25から渡されるIPパケットをネットワーク5に送出する。
【0074】
パケット受信手段23は、ネットワーク5から送られてくるネットワーク4宛てのIPパケットを受信し、受信したIPパケットをアドレス変換手段26に渡す。
【0075】
パケット送信手段24は、アドレス変換手段26から渡されるパケットをネットワーク4に送出する。
【0076】
図2に示されるように、アドレス変換手段25は、対応検索手段251、パケット変換手段252、登録手段254から構成される。
【0077】
対応検索手段251はパケット受信手段21からアドレス変換手段25に渡されるパケットを受取る。対応検索手段251は、パケット受信手段21からパケットを渡されると、記憶手段27の対応管理テーブルから、第1のソケットフィールドの値が該パケットの送信元アドレス、送信元ポート番号の組と等しく、かつ、第2のソケットフィールドの値が該パケットの宛先アドレス、宛先ポート番号の組と等しい値を持つエントリを検索する。
【0078】
該検索により該エントリが検出された場合、対応検索手段251は、該パケットと該エントリのエントリ識別子フィールドに格納されている第2のエントリ識別子をパケット変換手段252に渡す。該検索により該エントリが検出されなかった場合、対応検索手段251は、該パケットを登録手段254に渡す。
【0079】
パケット変換手段252は、パケットと第2のエントリ識別子を渡されると、該パケットをIPパケットに変換し、該IPパケットの送信元アドレスと送信元ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第3のソケットフィールドに示されるIPアドレスとポート番号の値に書き換え、該書き換えたIPパケットをパケット送信手段22に渡す。
【0080】
登録手段254は、パケットを渡されると、未使用の第2のエントリ識別子を生成し、かつ、未使用のポート番号を一つ選ぶ。そして、登録手段254は、該第2のエントリ識別子をエントリ識別子フィールドの値とし、該パケットの送信元アドレスと送信元ポート番号の組と宛先アドレスと宛先ポート番号の組をそれぞれ第1のソケットフィールドと第2のソケットフィールドの値とし、中継装置2のネットワーク5のIPアドレスと該選ばれたポート番号の組を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに記憶する。そして、登録手段254は、該パケットと該第2のエントリ識別子をパケット変換手段252に渡す。
【0081】
図3に示されるように、アドレス変換手段26は、対応検索手段261、パケット変換手段262、登録検索手段263、登録手段264から構成される。
【0082】
対応検索手段261はパケット受信手段23からアドレス変換手段26に渡されるIPパケットを受取る。対応検索手段261は、パケット受信手段23からIPパケットを渡されると、記憶手段27の対応管理テーブルから、第2のソケットフィールドの値が該IPパケットの送信元アドレスと送信元ポート番号の組と等しく、かつ、第3のソケットフィールドの値が該IPパケットの宛先アドレスと宛先ポート番号の組と等しいエントリを検索する。
【0083】
該検索により該エントリが検出された場合、対応検索手段261は、該IPパケットと該エントリのエントリ識別子フィールドに格納されている第2のエントリ識別子をパケット変換手段262に渡す。該検索により該エントリが検出されなかった場合、対応検索手段261は、該IPパケットを登録検索手段263に渡す。
【0084】
パケット変換手段262は、IPパケットと第2のエントリ識別子を渡されると、該IPパケットをネットワーク4のパケットに変換し、該パケットの宛先アドレスと宛先ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第1のソケットのIPアドレスとポート番号の値に書き換え、該書き換えたパケットをパケット送信手段24に渡す。
【0085】
登録検索手段263は、IPパケットを渡されると、処理端末登録テーブルを参照し、ポート番号フィールドの値として該IPパケットの宛先ポート番号の値を持つエントリを検索する。
【0086】
該検索により処理端末登録テーブルから該エントリが検出されなかった場合、登録検索手段263は、該IPパケットを廃棄し、処理を終了する。
【0087】
該検索により処理端末登録テーブルから該エントリが検出された場合、登録検索手段263は、該エントリのエントリ識別子フィールドに格納されている第1のエントリ識別子と該IPパケットを登録手段264に渡す。
【0088】
登録手段264は、第1のエントリ識別子とIPパケットを渡されると、該第1のエントリ識別子で識別される記憶手段27の処理端末登録テーブルのエントリのアドレスフィールドに格納されているアドレスとポート番号フィールドに格納されているポート番号を読み出し、かつ、未使用の第2のエントリ識別子を生成し、該第2のエントリ識別子をエントリ識別子フィールドの値とし、該アドレスと該ポート番号の組を第1のソケットフィールドの値とし、該IPパケットの送信元アドレスと送信元ポート番号の組を第2のソケットフィールドとし、該IPパケットの宛先アドレスと宛先ポート番号の組を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに記憶する。そして、登録手段264は、該IPパケットと該第2のエントリ識別子をパケット変換手段262に渡す。
【0089】
アドレス問合せ応答解決手段28は、ネットワーク5より送られてくるアドレス解決問合せメッセージに対して、該アドレス解決問合せメッセージで問い合わされる端末装置の名前がネットワーク4で接続される端末装置1―xの名前である場合、該アドレス解決問合せメッセージの応答として中継装置2に割り当てられたネットワーク5のIPアドレスA2−2をその応答とするアドレス解決応答メッセージを該アドレス解決問合せメッセージの送信者に送信する。
【0090】
ここで、本実施の形態で使用するメッセージの構造について図5を用いて説明する。なお、図5に示される各メッセージの構造は、本発明に関わるフィールドのみを抜き出して模式的に表現されたものである。
【0091】
ネットワーク5で使用されるIPパケットは、送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号、各種制御情報やユーザデータを含む。IPパケットの構造の例を図5の(a)に示す。図5の(a)を参照すると、IPパケットは、IPヘッダ、トランスポートヘッダ、データ部とからなる。トランスポートヘッダにはTCPヘッダ、または、UDPヘッダ、または、他のトランスポートプロトコルのヘッダのいずれかが用いられ得るが、いずれのトランスポートプロトコルのヘッダを用いているかはIPヘッダのプロトコル識別子フィールドで指示される。IPパケットでは、送信元アドレスと宛先アドレスはIPヘッダ中に含まれ、送信元ポート番号と宛先ポート番号はトランスポートヘッダ中に含まれる。各種制御情報やユーザデータはデータ部に含まれる。
【0092】
アドレス解決問合せメッセージは、問い合わせる端末装置の名前を含み、アドレス解決応答メッセージは応答するアドレス解決問合せメッセージに含まれる名前の端末装置のアドレスを含む。アドレス解決を上記のDNSで実現した場合の各メッセージの構成を図5に示す。図5を参照すると、アドレス解決問合せメッセージとアドレス解決応答メッセージは共にIPパケットと同様にIPヘッダとトランスポートヘッダを有するが、IPパケットにおけるデータ部がDNSメッセージになっている点で異なる。IPパケットと他のメッセージの違いは、アドレス解決問合せメッセージとアドレス解決要求メッセージでは送信元ポート番号、または、宛先ポート番号のいずれかががDNSサービスを表す値53になっており、IPパケットは送信元ポート番号、および、宛先ポート番号がいずれも53以外であることにより識別する。さらに、アドレス解決問合せメッセージとアドレス解決応答メッセージの識別は、DNSメッセージにおける問合せ/応答フラグの値で行う(該問合せ/応答フラグの値が0の場合はアドレス解決問合せメッセージで、値が1の場合はアドレス解決応答メッセージ)。
【0093】
アドレス解決で問い合わせる端末装置の名前はアドレス解決問合せメッセージのDNSメッセージ中の名前フィールドに格納され、問い合わされた名前の端末装置のアドレスはアドレス解決応答メッセージのDNSメッセージ中のアドレスフィールドに格納される。
【0094】
端末装置3は、アドレス解決問合せメッセージを作成する度ごとに、端末装置3において一意に識別できる識別子を生成し、該作成したアドレス解決問合せメッセージに含まれるDNSメッセージ中の識別子フィールドに該生成した識別子を格納する。中継装置2は受信したアドレス解決問合せメッセージに応答するアドレス解決応答メッセージを作成する際に、該アドレス解決問合せメッセージのDNSメッセージ中の識別子フィールドに格納されている識別子を取り出し、該アドレス解決応答メッセージのDNSメッセージ中の識別子フィールドに該識別子を格納する。これにより、端末装置3は、受信したアドレス問合せ応答メッセージのDNSメッセージ中の識別子フィールドの値を参照することにより、該アドレス問合せ応答メッセージが応答するアドレス問合せ要求メッセージを識別することができる。
【0095】
ネットワーク4で使用されるパケットは送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号、各種制御情報やユーザデータを含む。ネットワーク4がIPで構成されるネットワークならば、ネットワーク5のIPパケットと同様に図5の(a)のように構成することができる。ネットワーク4で使用されるパケットの構成はネットワーク4で使用されるプロトコル技術の種類に依存するため、一意に表現できないが、例えば、図5の(d)のように表現することができる。
【0096】
また、ここでは図示していないが、端末装置1―x、中継装置2、端末装置3にはそれぞれ全メッセージを受信し、受信した各メッセージのメッセージ種類フィールドに含まれるメッセージ種類情報からそのメッセージ種類を識別し、該当するメッセージ種類を処理する手段に渡すメッセージ振分け手段を備える。例えば、中継装置2はネットワーク5からIPパケットとアドレス解決問合せメッセージの2種類のメッセージを受信するが、これらは中継装置2のメッセージ振分け手段で受信され、該メッセージ振分け手段は、受信したメッセージがIPパケットならば該IPパケットをパケット受信手段23に渡し、受信したメッセージがアドレス解決問合せメッセージならば該アドレス解決問合せメッセージをアドレス問合せ応答手段28に渡す。このようなメッセージ振分け手段は本発明の実施にあたっては必要なものであるが、該メッセージ振分け手段は本発明の実施の形態の技術的特徴を実現する本質的な構成要素でないことから、説明を単純化し本発明の実施の形態の技術的特徴を明確にするために、該メッセージ振分け手段の図示および説明は省略する。
【0097】
また、以降に記載する他の発明の実施の形態においても同様に該メッセージ振分け手段は必要なものであるが、同様の理由で該メッセージ振分け手段の図示および説明は省略する。
【0098】
次に、図1、図2、図3、図4、図6を参照して、本発明の第1の実施の形態の動作について説明する。
【0099】
本発明の第1の実施の形態において実行されるデータ通信は、データ通信セッションを端末装置1―xが開始する場合と、端末装置3が開始する場合の2種類がある。
【0100】
データ通信セッションを端末装置1―xが開始する場合については既存の技術であるNAPT技術と同様に実施されるためその動作の説明を省略し、ここでは、データ通信セッションを端末装置3が開始する場合の動作について説明する。
【0101】
ネットワーク4において、ポート番号P1に対応するサービスを処理する端末装置を端末装置1―xと定め、中継装置において処理端末登録テーブルにアドレスA1−xとポート番号P1の対応が記憶されている状態で、端末装置3がポート番号P2のポートから端末装置1―xのポート番号P1のポートとのデータ通信を開始する場合について説明する。
【0102】
端末装置3が端末装置1―xとのデータ通信を開始する場合、まず、端末装置1―xの名前からアドレス解決を行う。これは、端末装置3が端末装置1―xの名前を解決対象装置名として含むアドレス解決問合せメッセージをネットワーク5に送信することによって開始される(図6のステップA1)。
【0103】
上記アドレス解決問合せメッセージは、中継装置2のアドレス問合せ応答手段28で受信され、アドレス問合せ応答手段28は、該アドレス解決問合せメッセージで問い合わされている装置が端末装置1―xであることから、中継装置2のネットワーク5におけるIPアドレスA2−2を該問合せの応答とするアドレス解決応答メッセージを作成し、ネットワーク5に送信する(ステップA2)。
【0104】
上記アドレス解決応答メッセージは端末装置3で受信され、端末装置3は、該アドレス解決応答メッセージの内容から、端末装置1―x宛てのIPパケットの宛先IPアドレスがA2−2であることを知る。
【0105】
次に、端末装置3は、端末装置1―x宛てのデータを含むIPパケットを生成し、ネットワーク5に送信する(ステップA3)。該IPパケットは、宛先アドレスがA2−2、送信元アドレスがA2−1、宛先ポート番号P1、送信元ポート番号はP2となる。
【0106】
上記IPパケットはパケット受信手段23で受信され、パケット受信手段23は、該IPパケットをアドレス変換手段26に渡す。
【0107】
アドレス変換手段26に渡された上記IPパケットは対応検索手段261で受取られる。対応検索手段261は、上記IPパケットを渡されると、記憶手段27の対応管理テーブルから、第2のソケットフィールドと第3のソケットフィールドの値がそれぞれ該IPパケットの送信元アドレスと送信元ポート番号の組[A2−1、P2]と該IPパケットの宛先アドレスと宛先ポート番号の組[A2−2、P1]と等しい値であるエントリを検索する。
【0108】
この場合、端末装置3のポート番号P2のポートと端末装置1―xのポート番号P1のポートとのデータ通信は過去に行われておらず、対応管理テーブルには上記エントリは存在しないため、該検索によって該エントリは検出されない。
【0109】
対応検索手段261は、該検索で該エントリが検出されなかったため、該IPパケットを登録検索手段263に渡す。
【0110】
登録検索手段263は、上記IPパケットを渡されると、処理端末登録テーブルを参照し、ポート番号フィールドの値として該IPパケットの宛先ポート番号の値P1を持つエントリを検索する。
【0111】
この場合、前述の通り、予め設定されたアドレスA1−xとポート番号P1のエントリが存在し、該検索により、該エントリを検出する。
【0112】
登録検索手段263は、該検索で該エントリを検出したため、該エントリのエントリ識別子フィールドに格納されている第1のエントリ識別子と該IPパケットを登録手段264に渡す。
【0113】
登録手段264は、上記第1のエントリ識別子と上記IPパケットを渡されると、該第1のエントリ識別子で識別される記憶手段27の処理端末登録テーブルのエントリのアドレスフィールドに格納されているアドレスとポート番号フィールドに格納されているポート番号を読み出し、かつ、未使用の第2のエントリ識別子を生成し、該第2のエントリ識別子をエントリ識別子フィールドの値とし、該アドレスと該ポート番号の組[A1−x、P1]を第1のソケットフィールドの値とし、該IPパケットの送信元アドレスと送信元ポート番号の組[A2―1、P2]を第2のソケットフィールドの値とし、該IPパケットの宛先アドレスと宛先ポート番号の組[A2−2、P1]を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに記憶する。そして、登録手段264は、該IPパケットと該第2のエントリ識別子をパケット変換手段262に渡す。
【0114】
パケット変換手段262は、上記IPパケットと上記第2のエントリ識別子を渡されると、該IPパケットをネットワーク4のパケットに変換し、該パケットの宛先アドレスと宛先ポート番号をそれぞれ該第2のエントリ識別子から識別される記憶手段27の対応管理テーブルのエントリの第1のソケットフィールドに示されるIPアドレスとポート番号の値A1−x、P1に書き換え、該書き換えたパケットをパケット送信手段24に渡す。
【0115】
パケット送信手段24は、上記パケットを渡されると、該パケットをネットワーク4に送出し、該パケットは端末装置1―xによって受信される(ステップA4)。
【0116】
以降端末装置3からネットワーク5に送出された端末装置1―xのポート番号P1宛てのIPパケット(宛先アドレスがA2−2、送信元アドレスがA2−1、宛先ポート番号がP1、送信元ポート番号がP2)は、同様に中継装置2のパケット受信手段23で受信され、該IPパケットはパケット受信手段23によって対応検索手段261に渡されるが、記憶手段27の対応管理テーブルには第2のソケットフィールドの値が該IPパケットの送信元アドレスと送信元ポート番号の組[P2−1、P2]と等しく、かつ、第3のソケットフィールドの値が該IPパケットの宛先アドレスと宛先ポート番号の組[P2−2、P1]と等しいエントリが存在するため、対応検索手段261は、対応管理テーブルの検索により該エントリを検出し、該IPパケットと該エントリの第2のエントリ識別子をパケット変換手段262に渡し、パケット変換手段262により該IPパケットは端末装置1―xのポート番号P1宛てのネットワーク4のパケットに変換され、該パケットはパケット送信手段24によってネットワーク4を介して端末装置1―xに送信される。
【0117】
また、同様に、ステップA4以降は、端末装置1―xのポート番号P1からネットワーク4に送出された端末装置3のポート番号P2宛てのパケット(宛先アドレスがA2−1、送信元アドレスがA1―x、宛先ポート番号がP2、送信元ポート番号がP1)は、中継装置2でパケット受信手段21、アドレス変換手段25、パケット送信手段22を経て、宛先アドレスがA2−1、送信元アドレスがA2−2、宛先ポート番号がP2、送信元ポート番号がP1のIPパケットに変換され、該変換されたIPパケットはネットワーク5を介して端末装置3に送信される。
【0118】
上述のように、ネットワーク5からネットワーク4宛てのIPパケットを中継する際、中継装置2が、事前に登録したポート番号とそのポート番号宛てのIPパケットを処理するネットワーク4に接続された端末装置のアドレスの対応を参照し、該IPパケットの宛先となる端末装置を決定し、該IPパケットを該端末装置宛てのパケットに変換することにより、グローバルアドレスのアドレス体系を適用するネットワーク5の端末装置から異なるアドレス体系を用いるネットワーク4の端末装置への通信が可能になる。
【0119】
本発明の実施の形態では、ネットワーク5に接続される端末装置が一つの場合について説明したが、ネットワーク5に接続される端末装置が複数の場合においても同様に実施することができる。
【0120】
また、本発明の実施の形態では、グローバルネットワークと異なるネットワーク(非グローバルネットワークと呼ぶ)に接続された端末装置(端末装置1―x)と、グローバルネットワークに接続された端末装置(端末装置3)の間での通信について説明したが、複数の非グローバルネットワークがそれぞれ本発明の実施の形態の中継装置でアドレス体系の異なるネットワークに接続された通信システムにおいても任意の非グローバルネットワークに接続された任意の端末装置間の通信も同様に実現される。すなわち、図7に示される通信システムにおいて、任意の端末装置間での通信が可能である。これは、第iの非グローバルネットワーク(ただし、iは1、2、…、nのいずれか)に接続された端末装置(端末装置Aとする)から第jの非グローバルネットワーク(ただし、jは1、2、…、nのいずれかであり、かつ、j≠i)に接続された端末装置(端末装置Bとする)に対して通信セッションを開始するパケットを送信する場合、第iの中継装置の第jの中継装置と端末装置Bに対する動作が、上記、本発明の実施の形態における端末装置3と等しくなるためである。ただし、中継ネットワークが非グローバルネットワークの場合、中継ネットワークのアドレス体系は第iの非グローバルネットワークのアドレス体系と第jの非グローバルネットワークのアドレス体系のいずれとも異ならなければならない。
【0121】
また、本発明の実施の形態では、端末装置3がデータ通信を開始する際に名前を知っている相手側の端末装置として端末装置1―xの場合について説明したが、このとき端末装置3は中継装置2の名前のみを知っていて、中継装置2の名前を指定してアドレス解決を行っても良い。
【0122】
次に、図8を参照して、本発明の第2の実施の形態について説明する。
【0123】
図8を参照すると、本発明の第2の実施の形態は、端末装置1―xが、図1に示された第1の実施の形態における端末装置1―xの構成に加え、電源操作監視手段11と登録要求送信手段12、削除要求送信手段13、動作確認応答手段14、記憶手段15を有し、また、中継装置2が、図1に示された第1の実施の形態における中継装置2の構成に加え、登録要求受信手段291と削除要求受信手段292、動作確認要求手段293を有する点で異なる。なお、アドレス変換手段26の構成も図3に示された第1の実施の形態におけるアドレス変換手段26の構成と等しい。
【0124】
記憶手段15には、提供サービスリストが記憶されている。
【0125】
提供サービスリストは、端末装置1―xが端末装置3に対して提供するサービスに対応するポート番号からなるリストであり、予め、端末装置1―xの利用者により設定されているものである。
【0126】
電源操作監視手段11は、利用者による端末装置1―xの電源操作を監視し、電源ONの操作を検出すると電源ONを登録要求送信手段12に通知し、電源OFFの操作を検出すると電源OFFを削除要求送信手段13に通知する。
【0127】
登録要求送信手段12は、電源ONを通知されると、記憶手段15の提供サービスリストを参照し、該提供サービスリストに設定されている全てのポート番号からなるポート番号リストと端末装置1―xのアドレスを含む登録要求メッセージを作成し、該登録要求メッセージをネットワーク4を介して中継装置2に送信する。
【0128】
削除要求送信手段13は、電源OFFが通知されると、端末装置1―xのアドレスを含む削除要求メッセージを作成し、該削除要求メッセージをネットワーク4を介して中継装置2に送信する。
【0129】
動作確認応答手段14は、ネットワーク4を介して中継装置2から送信される動作確認要求メッセージを受信し、該動作確認要求メッセージを受信すると、中継装置2宛てに該動作確認要求メッセージの応答となる動作確認応答メッセージを作成し、該動作確認応答メッセージをネットワーク4を介して中継装置2に送信する。
【0130】
登録要求受信手段291は、ネットワーク4を介して端末装置1―xから送信される登録要求メッセージを受信し、該登録要求メッセージを受信すると、未使用の第1のエントリ識別子を生成し、エントリ識別子フィールドの値が該第1のエントリ識別子であり、アドレスフィールドの値が該登録要求メッセージに含まれるアドレスで、ポート番号フィールドの値が該登録要求メッセージに含まれるポート番号リストであるエントリを作成し、該エントリを記憶手段27の処理端末登録テーブルに記憶し、さらには、動作確認要求手段293に該アドレスに対応する端末装置の起動を通知する。
【0131】
削除要求受信手段292は、ネットワーク4を介して端末装置1―xから送信される削除要求メッセージを受信し、該削除要求メッセージを受信すると、記憶手段27の処理端末登録テーブルから、アドレスフィールドの値が該削除要求メッセージに含まれるアドレスと等しい全てのエントリを削除し、動作確認要求手段293に該アドレスに対応する端末装置の終了を通知する。
【0132】
動作確認要求手段293は、動作確認要求メッセージを作成し、該動作確認要求メッセージをネットワーク4を介して端末装置1―xに送信し、端末装置1―xからの該動作確認要求メッセージに応答する動作確認応答メッセージの受信を待つ。その後、該動作確認応答メッセージの受信に成功すれば、動作確認要求手段293は、端末装置1―xが動作していることを確認する。また、その後、該動作確認応答メッセージの受信に失敗すれば、動作確認要求手段293は、端末装置1―xが停止しているとみなし、記憶手段27の処理端末登録テーブルから、アドレスフィールドの値が端末装置1―xのアドレスと等しい全てのエントリを削除する。
【0133】
動作確認要求手段293は、上記動作確認応答メッセージの受信失敗を判断する方法として、対応する動作確認要求メッセージ送信直後にタイマを起動し、該タイマの満了をもって該動作確認応答メッセージの受信失敗とする方法などを用いることができる。また、動作確認要求手段293は、上記端末装置1―xに対する動作確認要求メッセージの作成および送信を、端末装置1―xの起動が通知されてから、端末装置1―xの終了が通知されるまで、または、端末装置1―xからの動作確認応答メッセージの受信に失敗するまで繰り返す。
【0134】
次に、図8、図9、図10を参照して本発明の第2の実施の形態の動作について説明する。
【0135】
端末装置1―xの利用者が停止している端末装置1―xの電源をONにする(図9のステップB1)と、電源操作監視手段11が、該電源をONにする操作を検出し、電源ONを登録要求送信手段12に通知する。
【0136】
登録要求送信手段12は、記憶手段15の提供サービスリストを参照し、該提供サービスリストに設定されている全てのポート番号からなるポート番号リストと端末装置1―xのアドレスを含む登録要求メッセージを作成し、該登録要求メッセージをネットワーク4を介して中継装置2に送信する(ステップB2)。
【0137】
中継装置2に送信された前記登録要求メッセージは登録要求受信手段291によって受信され、登録要求受信手段291は、未使用の第1のエントリ識別子を生成し、また、該登録要求メッセージに含まれるポート番号リストとアドレスから、エントリ識別子フィールドの値が該第1のエントリ識別子であり、アドレスフィールドの値が該アドレスで、ポート番号フィールドの値が該ポート番号リストであるエントリを作成し、該エントリを記憶手段27の処理端末登録テーブルに記憶し、さらには、動作確認要求手段293に端末装置1―xの起動を通知する。
【0138】
この時点で中継装置2は、端末装置3から端末装置1―xの上記登録されたポート番号宛てのデータ通信開始を中継することが可能になる。
【0139】
動作確認要求手段293は、上記端末装置1―xの起動を通知されると、端末装置1―xへの確認動作を開始する(ステップB3)。すなわち、動作確認要求手段293は、動作確認要求メッセージを作成し、該動作確認要求メッセージをネットワーク4を介して端末装置1―xに送信する(ステップB4)。
【0140】
上記動作確認要求メッセージは端末装置1―xの動作確認応答手段14によって受信され、動作確認応答手段14は、該動作確認要求メッセージの応答となる動作確認応答メッセージを作成し、該動作確認応答メッセージをネットワーク4を介して中継装置2に送信する(ステップB5)。
【0141】
上記動作確認応答メッセージは動作確認要求手段293によって受信され、動作確認要求手段293は該動作確認応答メッセージの受信をもって端末装置1―xが動作していることを確認する(ステップB6)。
【0142】
以降、動作確認要求手段293は、上記ステップB4〜B6を周期的に実行することにより、端末装置1―xが動作していることを確認し続ける。
【0143】
その後、端末装置1―xの利用者が端末装置1―xの電源をOFFにする(ステップB7)と、電源操作監視手段11が、該電源をOFFにする操作を検出し、電源OFFを削除要求送信手段13に通知する。
【0144】
削除要求送信手段13は、端末装置1―xのアドレスを含む削除要求メッセージを作成し、該削除要求メッセージをネットワーク4を介して中継装置2に送信する(ステップB8)。
【0145】
中継装置2に送信された前記削除要求メッセージは削除要求受信手段292によって受信され、削除要求受信手段292は、記憶装置27の処理端末登録テーブルから、アドレスフィールドの値が該削除要求メッセージに含まれるアドレスと等しい全てのエントリを削除し、動作確認要求手段293に端末装置1―xの終了を通知する。
【0146】
動作確認要求手段293は、端末装置1―xの終了が通知されると、それまで周期的に行っていた端末装置1―xへの動作確認要求メッセージの送信を停止し、端末装置1―xへの確認動作を終了する(ステップB9)。
【0147】
また、動作確認要求手段293は、端末装置1―xへの確認動作の実行中、常に動作確認要求メッセージ送信直後に該動作確認要求メッセージの応答となる動作確認応答メッセージの受信を待つためのタイマを起動するが、これは端末装置1―xの制御システムの動作不良や異常停止により端末装置1―xの正常な動作が停止した場合に中継装置2が端末装置1―xの動作停止を検出するために用いられる。すなわち、端末装置1―xの正常な動作が停止した時(図10のステップC1)以降に行なわれる動作確認要求手段293による確認動作において、動作確認要求手段293は動作確認要求メッセージを送信し(ステップC2)、タイマを起動する(ステップC3)が、該動作確認要求メッセージの応答となる動作確認応答メッセージを受信しないまま該タイマが満了する(ステップC4)。この時、動作確認要求手段293は、端末装置1―xの動作が停止したことを検出し(ステップC5)、記憶手段27の処理端末登録テーブルから、アドレスフィールドの値が端末装置1―xのアドレスと等しい全てのエントリを削除し、端末装置1―xへの確認動作を終了する(ステップC6)。
【0148】
中継装置2は、ネットワーク5からIPパケットを受信すると、上述した第1の発明の実施の形態と同様に動作する。
【0149】
上述したとおり、本実施の形態においては、端末装置1―xに設定した提供サービスリストを端末装置1―xの起動時に中継装置2に登録し、端末装置1―xの終了時に中継装置2から削除するため、端末装置1―xの設定に依存した情報を自動的に中継装置2に登録することができ、かつ、端末装置1―xの動作時にはネットワーク5からのIPパケットを端末装置1―xに中継するが、端末装置1―xが非動作時にはネットワーク5からのIPパケットを端末装置1―xに中継しないことが可能になる。
【0150】
本実施の形態では、端末装置1―xの電源ON時に記憶手段15に記憶されている提供サービスリストを構成するポート番号集合を中継装置2に通知し、該ポート番号集合の各ポート番号を記憶手段27の処理端末登録テーブルに記憶させたが、これは、端末装置1―xが動作時、利用者が記憶手段15に記憶されている提供サービスリストの内容を変更し、その際に変更された提供サービスリストを構成するポート番号集合を中継装置2に通知し、記憶手段27の処理端末登録テーブルに記憶されているアドレスフィールドの値が端末装置1―xのアドレスであるエントリを全て削除し、該ポート番号集合の各ポート番号を記憶手段27の処理端末登録テーブルに記憶するようにしても良い。
【0151】
また、本発明の実施の形態では、ネットワーク5に接続される端末装置が一つの場合について説明したが、ネットワーク5に接続される端末装置が複数の場合においても同様に実施することができる。
【0152】
また、本発明の実施の形態では、グローバルネットワークと異なるネットワーク(非グローバルネットワークと呼ぶ)に接続された端末装置(端末装置1―x)と、グローバルネットワークに接続された端末装置(端末装置3)の間での通信について説明したが、複数の非グローバルネットワークがそれぞれ本発明の実施の形態の中継装置でアドレス体系の異なるネットワークに接続された通信システムにおいても任意の非グローバルネットワークに接続された任意の端末装置間の通信も同様に実現される。すなわち、図7に示される通信システムにおいて、任意の端末装置間での通信が可能である。これは、第iの非グローバルネットワーク(ただし、iは1、2、…、nのいずれか)に接続された端末装置(端末装置Aとする)から第jの非グローバルネットワーク(ただし、jは1、2、…、nのいずれかであり、かつ、j≠i)に接続された端末装置(端末装置Bとする)に対して通信セッションを開始するパケットを送信する場合、第iの中継装置の第jの中継装置と端末装置Bに対する動作が、上記、本発明の実施の形態における端末装置3と等しくなるためである。ただし、中継ネットワークが非グローバルネットワークの場合、中継ネットワークのアドレス体系は第iの非グローバルネットワークのアドレス体系と第jの非グローバルネットワークのアドレス体系のいずれとも異ならなければならない。
【0153】
また、本発明の実施の形態では、端末装置3がデータ通信を開始する際に名前を知っている相手側の端末装置として端末装置1―xの場合について説明したが、このとき端末装置3は中継装置2の名前のみを知っていて、中継装置2の名前を指定してアドレス解決を行っても良い。
【0154】
次に、図11と図12を参照して、本発明の第3の実施の形態について説明する。
【0155】
図11を参照すると、本発明の第3の実施の形態は、端末装置1―xが、図8に示された第2の実施の形態における端末装置1―xの構成に加え、能力情報送信手段16を有し、中継装置2が、図8に示された第2の実施の形態における中継装置2の構成に加え、能力情報受信手段294を有すること、また、図12を参照すると、アドレス変換装置26の構成が、図3に示す第1の実施の形態におけるアドレス変換装置26の構成に加え、宛先選択手段265を有する点で異なる。また、記憶手段15には端末装置1―xの処理能力情報が格納され、記憶手段27に記憶される処理端末登録テーブルのエントリには、図13に示す通り、処理能力情報フィールドが追加される。
【0156】
記憶手段15に記憶されている端末装置1―xの処理能力情報は、端末装置1―xの処理能力に関する情報であり、例えば、CPUの処理能力や、テキスト、音声、画像等の各種メディアの処理・表示能力に関するものがある。
【0157】
記憶手段27に記憶される処理端末登録テーブルは、そのエントリを構成するフィールドの構成が、上述した第1の実施の形態、および、第2の実施の形態におけるフィールドの構成に加え、端末装置1―xの処理能力情報を格納する処理能力情報フィールドを有し、端末装置1―xのアドレスと端末装置1―xが提供するサービスに対応するポート番号、端末装置1―xの処理能力情報の対応を管理する点が異なっている。
【0158】
能力情報送信手段16は、電源操作監視手段11から電源ONを通知されると、記憶手段15に記憶されている端末装置1―xの処理能力情報を読み出し、該処理能力情報と端末装置1―xのアドレスを含む能力通知メッセージを作成し、該能力通知メッセージを中継装置2に送信する。
【0159】
能力情報受信手段294は、端末装置1―xから送信される能力通知メッセージを受信し、記憶手段27の処理端末登録テーブルからアドレスフィールドの値が該能力通知メッセージに含まれる端末装置1―xと等しいエントリを検索し、該エントリの処理能力情報フィールドに該能力通知メッセージに含まれる処理能力情報の対応を記憶する。
【0160】
宛先選択手段265は、登録検索手段263から一つ、または、複数の第1のエントリ識別子と一つのIPパケット通知されると、記憶手段27の処理端末登録テーブルから該通知された一つ、または、複数の第1のエントリ識別子で識別されるエントリを読み出し、更に、該読み出したエントリから各端末装置の処理能力情報を読み出し、該読み出した処理能力情報を比較して、最適な端末装置を一つ選び、該選ばれたアドレスとポート番号の組と該IPパケットを登録手段264に通知する。
【0161】
複数の端末装置の処理能力情報から一つの端末装置を選ぶ方法としては、最も処理能力の高い端末装置を選択する方法などがある。
【0162】
次に、図14を参照して、本発明の第3の実施の形態の動作について説明する。
【0163】
端末装置1―xの利用者が停止している端末装置1―xの電源をONにする(図14のステップD1)と、上述した第2の実施の形態の動作と同様に、電源操作監視手段11が電源ONを登録要求送信手段12に通知し、登録要求送信手段12が端末装置1―xのアドレスと端末装置1―xが提供するサービスに対応するポート番号のリストを含む登録要求メッセージを中継装置2に送信し(ステップD2)、中継装置2の登録要求受信手段291が、該登録要求メッセージを受信し、該登録要求メッセージに含まれるポート番号リストとアドレスを含む記憶手段27の処理端末登録テーブルのエントリを作成し、該エントリを記憶手段27の処理端末登録テーブルに記憶し、動作確認要求手段293による端末装置1―xの動作確認が開始される(ステップD3)。
【0164】
これと同時に、端末装置1―xの電源操作監視手段11は電源ONを能力情報送信手段16にも通知する。
【0165】
能力情報送信手段16は、電源ONを通知されると、記憶手段15に記憶されている端末装置1―xの処理能力情報を読みだし、該処理能力情報と端末装置1―xのアドレスを含む能力通知メッセージを作成し、該能力通知メッセージを中継装置2に送信する(ステップD4)。
【0166】
中継装置2に送信された前記能力通知メッセージは能力情報受信手段294によって受信され、能力情報受信手段294は、記憶手段27の処理端末登録テーブルからアドレスフィールドの値が該能力通知メッセージに含まれる端末装置1―xと等しいエントリを検索し、該エントリの処理能力情報フィールドに該能力通知メッセージに含まれる処理能力情報を記憶する。
【0167】
これ以降、中継装置2は、ネットワーク5からIPパケットを受信すると、該IPパケットはパケット受信手段23に受信され、パケット受信手段23は、上述した第1の実施の形態の動作と同様に、該IPパケットを対応検索手段261に渡し、対応検索手段261も、同様に、記憶手段27の対応管理テーブルから第2のソケットフィールドの値と第3のソケットフィールドの値がそれぞれ該IPパケットの送信元アドレスと送信元ポート番号の組と宛先アドレスと宛先ポート番号の組に等しいエントリを検索する。
【0168】
対応検索手段261は、該検索により該エントリが検出された場合も、検出されなかった場合も、上述した第1の実施の形態の動作と同様に処理を行う。特に、該エントリが検出された場合の、以降の処理は上述の第1の実施の形態の動作と同じであるためここでは説明を省略する。
【0169】
該検索により該エントリが検出されなかった場合、上述した第1の実施の形態の動作と同様に、登録検索手段263は、記憶手段27の処理端末登録テーブルからポート番号フィールドの値が該IPパケットの宛先ポート番号と等しいエントリを検索するが、ここでは、検索した結果一つ、または、複数のエントリが検出された場合、該検出されたエントリの全て第1のエントリ識別子と該IPパケットを宛先選択手段265に渡す。
【0170】
宛先選択手段265は、記憶手段27の処理端末登録テーブルから渡された第1のエントリ識別子で識別されるエントリを読み出し、更に、該読み出したエントリから各端末装置の処理能力情報を読み出し、該読み出した処理能力情報を比較して、最適な端末装置を一つ選ぶ。例えば、処理端末登録テーブルの内容が図13の通りであり、該IPパケットの宛先ポート番号が10000であり、通知された第1のエントリ識別子が1と2の場合、ここでは、エントリ識別子フィールドの値「1」の端末装置1―1のCPU処理能力がエントリ識別子フィールドの値「2」の端末装置1−2のCPU処理能力よりも優れているため、宛先選択手段265は、端末装置1―1を選択し、該第1のエントリ識別子「1」と該IPパケットを登録手段264に渡す。
【0171】
上記エントリ識別子と上記IPパケットを登録手段264に渡した後、端末装置1―xへパケットを送信するまでの処理は、上述の第1の実施の形態の動作と同じであるため、以降の動作の説明は省略する。
【0172】
また、記憶手段27の処理端末登録テーブルに記憶された端末装置1―xのエントリは、端末装置1―xの電源OFF時、または、何らかの理由で中継装置2が端末装置1―xと正常に通信できなくなった時、上述の第2の実施の形態の動作と同様に、削除要求受信手段292、または、動作確認要求手段293によって削除される。
【0173】
上述の通り、中継装置2がデータ通信を開始するIPパケットをネットワーク5から受信した際、該IPパケットの宛先ポート番号と等しいポート番号に対応するサービスを提供する端末装置が複数中継装置2に登録されていても、宛先選択手段265が、該複数の端末装置の処理能力情報をもとに一つの端末装置を選択することにより、該IPパケットで要求されるサービスを提供する端末装置の内最適な端末装置を選択することができる。
【0174】
また、端末装置1―xの処理能力情報を端末装置1―xの記憶手段15に格納しておき、端末装置1―xの電源が投入されるたびに能力情報送信手段16が該処理能力情報を中継装置2に通知し、能力情報受信手段294が該処理能力情報を記憶手段27の処理端末登録テーブルに登録し、かつ、端末装置1―xの電源がOFFにされたとき、または、何らかの理由で中継装置2との正常な通信ができなくなった場合に削除要求受信手段292、または、動作確認要求手段293が処理端末登録テーブルから端末装置1―xに関するエントリを削除することにより、端末装置1―xが非動作時、または、中継装置2が端末装置1―xとの通信が不可能な場合に、ネットワーク5から受信したデータ通信を開始するIPパケットを端末装置1―xに中継することを避けることができる。
【0175】
本発明の実施の形態では、ネットワーク5に接続される端末装置が一つの場合について説明したが、ネットワーク5に接続される端末装置が複数の場合においても同様に実施することができる。
【0176】
また、本発明の実施の形態では、グローバルネットワークと異なるネットワーク(非グローバルネットワークと呼ぶ)に接続された端末装置(端末装置1―x)と、グローバルネットワークに接続された端末装置(端末装置3)の間での通信について説明したが、複数の非グローバルネットワークがそれぞれ本発明の実施の形態の中継装置でアドレス体系の異なるネットワークに接続された通信システムにおいても任意の非グローバルネットワークに接続された任意の端末装置間の通信も同様に実現される。すなわち、図7に示される通信システムにおいて、任意の端末装置間での通信が可能である。これは、第iの非グローバルネットワーク(ただし、iは1、2、…、nのいずれか)に接続された端末装置(端末装置Aとする)から第jの非グローバルネットワーク(ただし、jは1、2、…、nのいずれかであり、かつ、j≠i)に接続された端末装置(端末装置Bとする)に対して通信セッションを開始するパケットを送信する場合、第iの中継装置の第jの中継装置と端末装置Bに対する動作が、上記、本発明の実施の形態における端末装置3と等しくなるためである。ただし、中継ネットワークが非グローバルネットワークの場合、中継ネットワークのアドレス体系は第iの非グローバルネットワークのアドレス体系と第jの非グローバルネットワークのアドレス体系のいずれとも異ならなければならない。
【0177】
また、本発明の実施の形態では、端末装置3がデータ通信を開始する際に名前を知っている相手側の端末装置として端末装置1―xの場合について説明したが、このとき端末装置3は中継装置2の名前のみを知っていて、中継装置2の名前を指定してアドレス解決を行っても良い。
【0178】
次に、図1、図15、図16、図17を参照して、本発明の第4の実施の形態について説明する。
【0179】
本発明の第1の実施の形態ではネットワーク4におけるポート番号体系とネットワーク5におけるポート番号体系が等しい場合を想定していた。これに対して本実施の形態では、中継装置の記憶手段にネットワーク4のポート番号を格納する第1のポート番号フィールドと、ネットワーク5のポート番号フィールドを格納する第2のポート番号フィールドからなるエントリを持つポートテーブルを備え、該ポートテーブルで同じサービスに対応するネットワーク4のポート番号とネットワーク5のポート番号の対応を管理し、中継装置の各手段がネットワーク4側のポート番号として第1のポート番号フィールドを参照し、ネットワーク5側のポート番号として第2のポート番号フィールドを参照することを特徴とする。これにより、ネットワーク4とネットワーク5のポート番号体系が異なる場合においても端末装置1−xと端末装置3の通信が可能になる。
【0180】
本発明の第4の実施の形態の構成は、本発明の第1の実施の形態と同様に図1の構成をとるが、記憶手段27がポートテーブルを備えることと、アドレス変換手段25とアドレス変換手段26の内部の構成が異なる。
【0181】
本実施の形態で記憶手段27が備えるテーブルである処理端末登録テーブルと対応管理テーブルとポートテーブルの構成を図17に示す。
【0182】
図17に示すとおり、処理端末登録テーブルと対応管理テーブルの構成、および、用途、使用方法は本発明の第1の実施の形態における処理端末登録テーブルと対応管理テーブルと等しい。ただし、処理端末登録テーブルのポート番号フィールドにはネットワーク4におけるポート番号が格納され、対応管理テーブルの第1のソケットフィールドに示されるポート番号にはネットワーク4におけるポート番号が、第2のソケットフィールドに示されるポート番号と第3のソケットフィールドに示されるポート番号にはネットワーク5のポート番号が格納される。
【0183】
ポートテーブルは、ネットワーク4のポート番号を格納する第1のポート番号フィールドと、ネットワーク5のポート番号フィールドを格納する第2のポート番号フィールドからなるエントリを持ち、同じサービスに対応するネットワーク4のポート番号とネットワーク5のポート番号の対応があらかじめ記憶されている。例えば、FTPサービスに対応するポート番号が、ネットワーク4では値10、ネットワーク5では値20とすると図17の(3)に示すようにこれらの対応が記憶される。
【0184】
本実施の形態におけるアドレス変換手段25の構成を図15に示す。
【0185】
図15に示されるように、アドレス変換手段25は、対応検索手段2251、パケット変換手段2252、登録手段2254から構成される。本発明の第1の実施の形態におけるアドレス変換手段25の対応検索手段251が対応検索手段2251に、同じくパケット変換手段252がパケット変換手段2252に、同じく登録手段254が登録手段2254に変更されていることを特徴とする。
【0186】
対応検索手段2251はパケット受信手段21からアドレス変換手段25に渡されるパケットを受取る。対応検索手段2251は、パケット受信手段21からパケットを渡されると、まず、記憶手段27のポートテーブルから、第1のポート番号フィールドの値が該パケットの宛先ポート番号の値と等しいエントリを検索する。
【0187】
該検索により該エントリが検出されなかった場合、対応検索手段2251は、該パケットを廃棄し、処理を終了する。
【0188】
該検索により該エントリが検出された場合、対応検索手段2251は、記憶手段27の対応管理テーブルから、第1のソケットフィールドの値が該パケットの送信元アドレス、送信元ポート番号の組と等しく、かつ、第2のソケットフィールドの値が該パケットの宛先アドレスと、上記ポートテーブルの検索において検出されたポートテーブルのエントリの第2のポート番号フィールドの値の組と等しい値を持つエントリを検索する。
【0189】
該検索により対応管理テーブルから該エントリが検出された場合、対応検索手段2251は、該パケットと該エントリのエントリ識別子フィールドに格納されている第2のエントリ識別子をパケット変換手段2252に渡す。該検索により該エントリが検出されなかった場合、対応検索手段2251は、該パケットを登録手段2254に渡す。
【0190】
パケット変換手段2252は、パケットと第2のエントリ識別子を渡されると、該パケットをIPパケットに変換し、該IPパケットの送信元アドレスと送信元ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第3のソケットフィールドに示されるIPアドレスとポート番号の値に書き換え、さらに、該IPパケットの宛先アドレスと宛先ポート番号を該エントリの第2のソケットフィールドに示されるIPアドレスとポート番号に書き換え、該書き換えたIPパケットをパケット送信手段22に渡す。
【0191】
登録手段2254は、パケットを渡されると、ポートテーブルから該パケットの宛先ポート番号を第1のポート番号フィールドの値に持つエントリを検索し、これに対応する第2のポート番号を読み込み、未使用の第2のエントリ識別子を生成し、未使用のネットワーク5のポート番号を一つ選ぶ。そして、登録手段2254は、該生成した第2のエントリ識別子をエントリ識別子フィールドの値とし、該パケットの送信元アドレスと送信元ポート番号の組を第1のソケットフィールドの値とし、該パケットの宛先アドレスと該検索によって検出されたポートテーブルのエントリの第2のポート番号フィールドの値の組を第2のソケットフィールドの値とし、中継装置2のネットワーク5のIPアドレスと該選ばれたポート番号の組を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに記憶する。さらには、該パケットの送信元ポート番号を第1のポート番号フィールドの値とし、該選ばれたポート番号を第2のポート番号フィールドの値とするポートテーブルのエントリを作成し、該エントリをポートテーブルに登録する。そして、登録手段2254は、該パケットと該第2のエントリ識別子をパケット変換手段2252に渡す。
【0192】
本実施の形態におけるアドレス変換手段26の構成を図16に示す。図16に示されるように、アドレス変換手段26は、対応検索手段261、パケット変換手段2262、登録検索手段2263、登録手段2264から構成される。本発明の第1の実施の形態におけるアドレス変換手段26のパケット変換手段262がパケット変換手段2262に、同じく登録検索手段263が登録検索手段2263に、同じく登録手段264が登録手段2264に変更されていることを特徴とする。
【0193】
パケット変換手段2262は、IPパケットと第2のエントリ識別子を渡されると、記憶手段27のポートテーブルから、該IPパケットの送信元ポート番号を第2のポート番号フィールドに持つエントリを検索し、検出されたポートテーブルのエントリの第1のポート番号フィールドの値を読み出す。そして、パケット変換手段2262は、該IPパケットをネットワーク4のパケットに変換し、該パケットの宛先アドレスと宛先ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第1のソケットのIPアドレスとポート番号の値に書き換え、さらに、該パケットの送信元ポート番号を上記読み出したポートテーブルのエントリの第1のポート番号フィールドの値に書き換え、該書き換えたパケットをパケット送信手段24に渡す。
【0194】
登録検索手段2263は、IPパケットを渡されると、ポートテーブルから、該IPパケットの宛先ポート番号を第2のポート番号フィールドの値とするエントリを検索する。
【0195】
該検索によりポートテーブルから該エントリが検出されなかった場合、登録検索手段2263は、該IPパケットを廃棄し、処理を終了する。
【0196】
該検索によりポートテーブルから該エントリが検出された場合、登録検索手段2263は、さらに、処理端末登録テーブルを参照し、ポート番号フィールドの値として該検出されたポートテーブルのエントリの第1のポート番号フィールドの値を持つエントリを検索する。
【0197】
該検索により処理端末登録テーブルから該エントリが検出されなかった場合、登録検索手段2263は、該IPパケットを廃棄し、処理を終了する。
【0198】
該検索により処理端末登録テーブルから該エントリが検出された場合、登録検索手段2263は該エントリのエントリ識別子フィールドに格納されている第1のエントリ識別子の値と該IPパケットを登録手段2264に渡す。
【0199】
登録手段2264は、第1のエントリ識別子とIPパケットを渡されると、該第1のエントリ識別子で識別される記憶手段27の処理端末登録テーブルのエントリのアドレスフィールドに格納されているアドレスとポート番号フィールドに格納されているポート番号を読み出し、かつ、未使用の第2のエントリ識別子を生成し、該第2のエントリ識別子をエントリ識別子フィールドの値とし、該アドレスと該ポート番号の組を第1のソケットフィールドの値とし、該IPパケットの送信元アドレスと送信元ポート番号の組を第2のソケットフィールドとし、該IPパケットの宛先アドレスと宛先ポート番号の組を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに記憶する。さらには、未使用のネットワーク4のポート番号を一つ選び、該選ばれたポート番号を第1のポート番号フィールドの値とし、該IPパケットの送信元ポート番号を第2のポート番号フィールドの値とするポートテーブルのエントリを作成し、該ポートテーブルのエントリをポートテーブルに登録する。そして、登録手段2264は、該IPパケットと該第2のエントリ識別子をパケット変換手段2262に渡す。
【0200】
次に、本発明の第4の実施の形態の動作について説明する。
【0201】
本発明の第4の実施の形態において実行されるデータ通信は通信セッションを端末装置1―xが開始する場合と、端末装置3が開始する場合の2種類がある。いずれの場合においても、開始される通信セッションで利用するサービスに対応するネットワーク4のポート番号とネットワーク5のポート番号の対応はあらかじめポートテーブルに登録されているとする。
【0202】
まず、通信セッションを端末装置1―xが開始する場合の動作について説明する。
【0203】
ここでは、まず、端末装置1−xが端末装置3の提供するサービスを利用すべく、該サービス利用のための通信セッションを開始する際の動作について説明するが、該サービスに対応するネットワーク4におけるポート番号をP4、ネットワーク5におけるポート番号をP2とし、中継装置2には、この対応を示すために、ポートテーブルに第1のポート番号フィールドの値がP4、第2のポート番号フィールドの値がP2であるエントリが登録されているとする。また、端末装置1−xはポート番号P1のポートを利用するとする。
【0204】
端末装置1−xは上記サービスを利用するために最初のパケット(パケットAと呼ぶ)を送出する。該パケットAは、宛先アドレスがA2−1、宛先ポート番号がP4、送信元アドレスがA1−x、送信元ポート番号がP1となる。
【0205】
端末装置1−xから送出された上記パケットAはネットワーク4を介して中継装置2のパケット受信手段21によって受信され、パケット受信手段21は該パケットAをアドレス変換手段25に渡す。
【0206】
アドレス変換手段25に渡された上記パケットAは対応検索手段2251で受取られる。
【0207】
対応検索手段2251は、上記パケットAを渡されると、まず、記憶手段27のポートテーブルから、第1のポート番号フィールドの値が該パケットの宛先ポート番号の値P4と等しいエントリを検索する。
【0208】
この場合、ポートテーブルには該エントリが存在するため、該検索により該エントリが検出される。
【0209】
そして、対応検索手段2251は、記憶手段27の対応管理テーブルから、第1のソケットフィールドの値が該パケットAの送信元アドレス、送信元ポート番号の組[A1−x、P1]と等しく、かつ、第2のソケットフィールドの値が該パケットAの宛先アドレスと、上記ポートテーブルの検索において検出されたポートテーブルのエントリの第2のポート番号フィールドの値の組[A2−1、P2]と等しい値を持つエントリを検索する。
【0210】
この場合、対応管理テーブルには該エントリが存在しないため、該検索により該エントリは検出されない。
【0211】
そこで、対応検索手段2251は、該パケットAを登録手段2254に渡す。
【0212】
登録手段2254は、該パケットAを渡されると、ポートテーブルから該パケットAの宛先ポート番号P4を第1のポート番号フィールドの値に持つエントリを検索し、未使用の第2のエントリ識別子を生成し、未使用のネットワーク5のポート番号を一つ選ぶ(選ばれたネットワーク5のポート番号をP5とする)。そして、登録手段2254は、該生成した第2のエントリ識別子をエントリ識別子フィールドの値とし、該パケットAの送信元アドレスと送信元ポート番号の組[A1−x、P1]を第1のソケットフィールドの値とし、該パケットAの宛先アドレスと該検索によって検出されたポートテーブルのエントリの第2のポート番号フィールドの値の組[A2−1、P2]を第2のソケットフィールドの値とし、中継装置2のネットワーク5のIPアドレスと該選ばれたポート番号の組[A2−2、P5]を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに記憶する。さらには、該パケットAの送信元ポート番号P1を第1のポート番号フィールドの値とし、該選ばれたポート番号P5を第2のポート番号フィールドの値とするポートテーブルのエントリを作成し、該エントリをポートテーブルに登録する。そして、登録手段2254は、該パケットAと該第2のエントリ識別子をパケット変換手段2252に渡す。
【0213】
パケット変換手段2252は、上記パケットAと上記第2のエントリ識別子を渡されると、該パケットAをIPパケットに変換し、該IPパケットの送信元アドレスと送信元ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第3のソケットフィールドに示されるIPアドレスA2−2とポート番号P5の値に書き換え、さらに、該IPパケットの宛先アドレスと宛先ポート番号を該エントリの第2のソケットフィールドに示されるIPアドレスA2−1とポート番号P2に書き換え、該書き換えたIPパケット(IPパケットBと呼ぶ)をパケット送信手段22に渡す。このとき、IPパケットBは、宛先アドレスがA2−1、宛先ポート番号がP2、送信元アドレスがA2−2、送信元ポート番号がP5となる。
【0214】
パケット送信手段22に渡されたIPパケットBは、ネットワーク5を介して、端末装置3に送信される。IPパケットBの宛先アドレスがA2−1、宛先ポート番号がP2、送信元アドレスがA2−2、送信元ポート番号がP5であることから、端末装置3においては、該通信セッションはアドレスA2−2の端末装置のポートP5と自端末装置のポートP2間の通信セッションであると解釈され、該通信セッションに関する端末装置3から送出されるIPパケットは、宛先アドレスがA2−2、宛先ポート番号がP5、送信元アドレスが、A2−1、送信元ポート番号がP2となる。
【0215】
以降、中継装置2は、ネットワーク4からの該通信セッションのパケット(パケットCと呼ぶ)を受信すると、上記のパケットAの処理と同様に動作するが、対応検索手段2251の対応管理テーブル検索の処理において、今度は、対応検索手段2252が、記憶手段27の対応管理テーブルから、第1のソケットフィールドの値が該パケットCの送信元アドレス、送信元ポート番号の組[A1−x、P1]と等しく、かつ、第2のソケットフィールドの値が該パケットCの宛先アドレスとポートテーブルの検索において検出されたポートテーブルのエントリの第2のポート番号フィールドの値の組[A2−1、P2]と等しいエントリを検出する。そして、対応検索手段2251は、該パケットCと該エントリのエントリ識別子フィールドに格納されている第2のエントリ識別子を、登録手段2254を経由せずに、直接、パケット変換手段2252に渡す。これ以降の処理は、上記パケットAの場合と同様に行なわれ、該パケットCは上記IPパケットBと同じ送信元アドレスA2−2、送信元ポート番号P5、宛先アドレスA2−1、宛先ポート番号P2を持つIPパケットに変換され(変換されたIPパケットをIPパケットDと呼ぶ)、該変換されたIPパケットDとしてネットワーク5を介して端末装置3に送られる。
【0216】
また、上記パケットA、IPパケットBを処理した後の端末装置3から送出される該通信セッションのIPパケット(IPパケットEと呼ぶ)は、上記の通り、宛先アドレスがA2−2、宛先ポート番号がP5、送信元アドレスがA2−1、送信元ポート番号がP2となり、ネットワーク5を介して、中継装置2のパケット受信手段23に受信され、パケット受信手段23は該IPパケットEをアドレス変換手段26に渡す。
【0217】
アドレス変換手段26に渡された上記IPパケットEは対応検索手段261で受取られる。対応検索手段261は、記憶手段27の対応管理テーブルから、第2のソケットフィールドの値が該IPパケットEの送信元アドレスと送信元ポート番号の組[A2−1、P2]と等しく、かつ、第3のソケットフィールドの値が該IPパケットの宛先アドレスと宛先ポート番号の組[A2−2、P5]と等しいエントリを検索する。
【0218】
この場合、対応管理テーブルには、上記パケットA処理時に登録したエントリが存在し、該エントリが上記検索するエントリに対応するため、対応検索手段261は該IPパケットEと該エントリのエントリ識別子をパケット変換手段2262に渡す。
【0219】
パケット変換手段2262は、上記IPパケットEと第2のエントリ識別子を渡されると、記憶手段27のポートテーブルから、該IPパケットの送信元ポート番号P2を第2のポート番号フィールドに持つエントリを検索し、検出されたポートテーブルのエントリの第1のポート番号フィールドの値P4を読み出す。そして、パケット変換手段2262は、該IPパケットEをネットワーク4のパケットに変換し、該パケットの宛先アドレスと宛先ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第1のソケットのIPアドレスA1−xとポート番号の値P1に書き換え、さらに、該パケットの送信元ポート番号を上記読み出したP4に書き換え、該書き換えたパケット(パケットFと呼ぶ)をパケット送信手段24に渡す。
【0220】
パケット送信手段24は、上記パケットFを渡されると、該パケットFをネットワーク4に送出し、該パケットFは端末装置1−xに受信される。
【0221】
次に、通信セッションを端末装置3が開始する場合の動作について説明する。
【0222】
ここでは、まず、端末装置3が端末装置1−xの提供するサービスを利用すべく、該サービス利用のための通信セッションを開始する際の動作について説明するが、該サービスに対応するネットワーク4におけるポート番号をP1、ネットワーク5におけるポート番号をP5とし、中継装置2には、この対応を示すために、ポートテーブルに第1のポート番号フィールドの値がP1、第2のポート番号フィールドの値がP5であるエントリが登録されており、かつ、処理端末登録テーブルにアドレスA1−xとポート番号P1の対応が記憶されているとする。また、端末装置3はポート番号P2のポートを利用するとする。
【0223】
端末装置3は上記サービスを利用するために最初のIPパケット(IPパケットAと呼ぶ)を送出する前に本発明の第1の実施の形態の動作と同様に、まず、端末装置1―xの名前からアドレス解決を行い、端末装置1―x宛てのIPパケットの宛先IPアドレスがA2−2であることを知るが、ここでは説明を省略する。
【0224】
次に、端末装置3は、上記IPパケットAを送出する。該IPパケットAは、宛先アドレスがA2−2、宛先ポート番号がP5、送信元アドレスがA2−1、送信元ポート番号がP2となる。
【0225】
上記IPパケットAはネットワーク5を介して中継装置2のパケット受信手段23で受信され、パケット受信手段23は、該IPパケットAをアドレス変換手段26に渡す。
【0226】
アドレス変換手段26に渡された上記IPパケットAは対応検索手段261で受取られる。対応検索手段261は、上記IPパケットAを渡されると、記憶手段27の対応管理テーブルから、第2のソケットフィールドと第3のソケットフィールドの値がそれぞれ該IPパケットAの送信元アドレスと送信元ポート番号の組[A2−1、P2]と該IPパケットAの宛先アドレスと宛先ポート番号の組[A2−2、P5]と等しい値であるエントリを検索する。
【0227】
この場合、対応管理テーブルには上記エントリは存在しないため、該検索によって該エントリは検出されない。
【0228】
対応検索手段261は、該検索で該エントリが検出されなかったため、該IPパケットAを登録検索手段2263に渡す。
【0229】
登録検索手段2263は、上記IPパケットAを渡されると、ポートテーブルから、該IPパケットAの宛先ポート番号P5を第2のポート番号フィールドの値とするエントリを検索する。
【0230】
この場合、前述の通り、ポートテーブルに第1のポート番号フィールドの値がP1、第2のポート番号フィールドの値がP5であるエントリが登録されており、該エントリが検出される。
【0231】
該検索によりポートテーブルから該エントリが検出されたので、登録検索手段2263は、さらに、処理端末登録テーブルを参照し、ポート番号フィールドの値として該検出されたポートテーブルのエントリの第1のポート番号フィールドの値P1を持つエントリを検索する。
【0232】
この場合も、前述の通り、処理端末登録テーブルにアドレスA1−xとポート番号P1の対応が記憶されており、該エントリが検出される。
【0233】
該検索により処理端末登録テーブルから該エントリが検出されたので、登録検索手段2263は、該エントリのエントリ識別子フィールドに格納されている第1のエントリ識別子の値と該IPパケットAを登録手段2264に渡す。
【0234】
登録手段2264は、上記第1のエントリ識別子と上記IPパケットAを渡されると、該第1のエントリ識別子で識別される記憶手段27の処理端末登録テーブルのエントリのアドレスフィールドに格納されているアドレスA1−xとポート番号フィールドに格納されているポート番号P1を読み出し、かつ、未使用の第2のエントリ識別子を生成し、該第2のエントリ識別子をエントリ識別子フィールドの値とし、該アドレスと該ポート番号の組[A1−x、P1]を第1のソケットフィールドの値とし、該IPパケットAの送信元アドレスと送信元ポート番号の組[A2―1、P2]を第2のソケットフィールドの値とし、該IPパケットの宛先アドレスと宛先ポート番号の組[A2−2、P5]を第3のソケットフィールドの値とするエントリを作成し、該エントリを記憶手段27の対応管理テーブルに登録する。さらには、未使用のネットワーク4のポート番号を一つ選び(選ばれたポート番号をP4とする)、該選ばれたポート番号P4を第1のポート番号フィールドの値とし、該IPパケットAの送信元ポート番号P2を第2のポート番号フィールドの値とするポートテーブルのエントリを作成し、該ポートテーブルのエントリをポートテーブルに登録する。そして、登録手段2264は、該IPパケットAと該第2のエントリ識別子をパケット変換手段2262に渡す。
【0235】
パケット変換手段2262は、上記IPパケットAと上記第2のエントリ識別子を渡されると、記憶手段27のポートテーブルから、該IPパケットAの送信元ポート番号P2を第2のポート番号フィールドに持つエントリを検索し、検出されたポートテーブルのエントリの第1のポート番号フィールドの値P4を読み出す。そして、パケット変換手段2262は、該IPパケットAをネットワーク4のパケットに変換し、該パケットの宛先アドレスと宛先ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第1のソケットのIPアドレスA1−xとポート番号P1の値に書き換え、さらに、該パケットの送信元ポート番号を上記読み出したP4に書き換え、該書き換えたパケット(パケットBと呼ぶ)をパケット送信手段24に渡す。
【0236】
パケット送信手段24は、上記パケットBを渡されると、該パケットBをネットワーク4に送出し、該パケットBは端末装置1―xによって受信される。パケットBの宛先アドレスがA1−x、宛先ポート番号がP1、送信元アドレスがA2−1、送信元ポート番号がP4であることから、端末装置1−xにおいては、該通信セッションはアドレスA2−1の端末装置のポートP4と自端末装置のポートP1間の通信セッションであると解釈され、該通信セッションに関する端末装置1−xから送出されるパケットは、宛先アドレスがA2−1、宛先ポート番号がP4、送信元アドレスが、A1−x、送信元ポート番号がP1となる。
【0237】
以降中継装置2は、ネットワーク5からの該通信セッションのIPパケット(IPパケットCと呼ぶ)を受信すると、上記のIPパケットAの処理と同様に動作するが、対応検索手段261の対応管理テーブル検索の処理において、今度は、対応検索手段261が、記憶手段27の対応管理テーブルから、第2のソケットフィールドと第3のソケットフィールドの値がそれぞれ該IPパケットCの送信元アドレスと送信元ポート番号の組[A2−1、P2]と該IPパケットCの宛先アドレスと宛先ポート番号の組[A2−2、P5]と等しい値であるエントリを検出する。そして、対応検出手段261は、該IPパケットCと該エントリのエントリ識別子フィールドに格納されている第2のエントリ識別子を、登録検索手段2263と登録手段2264を経由せずに、直接、パケット変換手段2262に渡す。これ以降の処理は、上記IPパケットAの場合と同様に行なわれ、該IPパケットCは、上記パケットBと同じ送信元アドレスA2−2、送信元ポート番号P4、宛先アドレスA1−x、宛先ポート番号P1を持つパケットに変換され(変換されたパケットをパケットDと呼ぶ)、該変換されたパケットDとしてネットワーク4を介して端末装置1−xに送られる。
【0238】
また、上記IPパケットA、パケットBを処理した後の端末装置1−xから送出される該通信セッションのパケット(パケットEと呼ぶ)は、上記の通り、宛先アドレスがA2−1、宛先ポート番号がP4、送信元アドレスがA1−x、送信元ポート番号がP1となり、ネットワーク4を介して、中継装置2のパケット受信手段21に受信され、パケット受信手段21は該パケットEをアドレス変換手段25に渡す。
【0239】
アドレス変換手段25に渡された上記パケットEは対応検索手段2251で受取られる。対応検索手段2251は、上記パケットEを渡されると、まず、記憶手段27のポートテーブルから、第1のポート番号フィールドの値が該パケットEの宛先ポート番号の値P4と等しいエントリを検索する。
【0240】
この場合、ポートテーブルには、上記IPパケットA処理時に登録したエントリが存在し、該エントリが上記検索するエントリに対応するため、対応検索手段2251は、さらに、記憶手段27の対応管理テーブルから、第1のソケットフィールドの値が該パケットEの送信元アドレス、送信元ポート番号の組[A1−x、P1]と等しく、かつ、第2のソケットフィールドの値が該パケットEの宛先アドレスと、上記ポートテーブルの検索において検出されたポートテーブルのエントリの第2のポート番号フィールドの値の組[A2−1、P2]と等しい値を持つエントリを検索する。
【0241】
この場合、対応管理テーブルには、上記IPパケットA処理時に登録したエントリが存在し、該エントリが上記検索するエントリに対応するため、対応検索手段2251は該パケットEと該エントリのエントリ識別子フィールドに格納された第2のエントリ識別子をパケット変換手段2252に渡す。
【0242】
パケット変換手段2252は、上記パケットEと上記第2のエントリ識別子を渡されると、該パケットEをIPパケットに変換し、該IPパケットの送信元アドレスと送信元ポート番号をそれぞれ該第2のエントリ識別子から識別される対応管理テーブルのエントリの第3のソケットフィールドに示されるIPアドレスA2−2とポート番号P5の値に書き換え、さらに、該IPパケットの宛先アドレスと宛先ポート番号を該エントリの第2のソケットフィールドに示されるIPアドレスA2−1とポート番号P2に書き換え、該書き換えたIPパケット(IPパケットFと呼ぶ)をパケット送信手段22に渡す。
【0243】
パケット送信手段22は、上記IPパケットFを渡されると、該IPパケットFをネットワーク5に送出し、該IPパケットは端末装置3に受信される。
【0244】
本発明の実施の形態では、ネットワーク5に接続される端末装置が一つの場合について説明したが、ネットワーク5に接続される端末装置が複数の場合においても同様に実施することができる。
【0245】
また、本発明の実施の形態では、グローバルネットワークと異なるネットワーク(非グローバルネットワークと呼ぶ)に接続された端末装置(端末装置1―x)と、グローバルネットワークに接続された端末装置(端末装置3)の間での通信について説明したが、複数の非グローバルネットワークがそれぞれ本発明の実施の形態の中継装置でアドレス体系の異なるネットワークに接続された通信システムにおいても任意の非グローバルネットワークに接続された任意の端末装置間の通信も同様に実現される。すなわち、図7に示される通信システムにおいて、任意の端末装置間での通信が可能である。これは、第iの非グローバルネットワーク(ただし、iは1、2、…、nのいずれか)に接続された端末装置(端末装置Aとする)から第jの非グローバルネットワーク(ただし、jは1、2、…、nのいずれかであり、かつ、j≠i)に接続された端末装置(端末装置Bとする)に対して通信セッションを開始するパケットを送信する場合、第iの中継装置の第jの中継装置と端末装置Bに対する動作が、上記、本発明の実施の形態における端末装置3と等しくなるためである。ただし、中継ネットワークが非グローバルネットワークの場合、中継ネットワークのアドレス体系は第iの非グローバルネットワークのアドレス体系と第jの非グローバルネットワークのアドレス体系のいずれとも異ならなければならない。
【0246】
また、本発明の実施の形態では、端末装置3がデータ通信を開始する際に名前を知っている相手側の端末装置として端末装置1―xの場合について説明したが、このとき端末装置3は中継装置2の名前のみを知っていて、中継装置2の名前を指定してアドレス解決を行っても良い。
【0247】
また、本発明の第4の実施の形態では、本発明の第1の実施の形態図1の構成に対して、記憶手段27がポートテーブルを備えることと、アドレス変換手段25とアドレス変換手段26の内部の構成が異なる形態について説明したが、第2、3の実施の形態である図8、11の構成に対しても、記憶手段27にポートテーブルを備え、同様にアドレス変換手段25とアドレス変換手段26の内部の構成が異ならせ、アドレス変換手段25の対応検索手段251と、アドレス変換手段26の登録検索手段263にてポートテーブルの検索後に処理端末登録テーブルを検索するようにすることにより適用することができる。
【0248】
次に本発明の通信プログラムを記録した媒体媒体の実施の形態について説明する。本実施の形態では、本発明の第1、2、3及び4の実施の形態における、本発明の端末装置1−x及び中継装置2は、それぞれデータ処理装置、記憶装置を備え、さらに通信プログラムを記録した記憶媒体を備える(特に図示せず)。この記録媒体は、磁気ディスク、半導体メモリ、CD-ROMその他の記録媒体であってよい。
【0249】
中継装置2を制御する通信プログラムは、記録媒体から中継装置2の記憶装置に読み込まれ、記憶手段27に処理端末登録テーブル、対応管理テーブルが記憶される。また、第3の実施の形態に対応する媒体の実施の形態では、更に、能力情報を含む処理端末登録テーブルが記憶され、第4の実施の形態に対応する媒体の実施の形態では、更に、ポートテーブルが記憶される。
【0250】
そして、データ処理装置にパケット受信手段21及び23、パケット送信手段22及び24、アドレス変換手段25及び26、アドレス問合せ応答手段28を生成させ、その動作を制御する。また、第2の実施の形態に対応する媒体の実施の形態では、更に、登録要求受信手段291、動作確認要求手段293、削除要求受信手段292を生成し、第3の実施の形態に対応する媒体の実施の形態では、更に、能力情報受信手段294を生成し、それらの動作を制御する。
【0251】
データ処理装置は、上述の通信プログラムの制御により第1、2、3及び4の実施の形態における中継装置2で説明した通信処理と同一の処理を実行する。
【0252】
端末装置1−xを制御する通信プログラムは、第2の実施の形態に対応する媒体の実施の形態では、記録媒体から端末装置1−xに読み込まれ、データ処理装置に電源操作監視手段11、登録要求送信手段12、動作確認応答手段14、削除要求送信手段13を生成させ、その動作を制御する。また、第3の実施の形態に対応する媒体の実施の形態では、更に能力情報送信手段16を生成させ、その動作を制御する。また第2の実施の形態に対応する媒体の実施の形態では、記憶手段15に提供サービスリストが記憶される。また、第3の実施の形態に対応する媒体の実施の形態では、記憶手段15に更に処理能力情報が記憶される。
【0253】
データ処理装置は、この通信プログラムの制御により第2、3の実施の形態における端末装置1−xによる通信処理と同一の処理を実行する。
【0254】
【実施例】
次に、本発明の第1の実施例を、図面を参照して説明する。かかる実施例は本発明の第1の実施の形態に対応するものである。
【0255】
図18に示すとおり、本実施例は、ネットワーク4としてEthernet(R)網で構成され、該Ethernet(R)網の所有者によって管理されるプライベートアドレス体系(192.168.xxx.xxx)を採用するIPネットワークを、ネットワーク5としてグローバルアドレス体系を採用する既存のインタネットを、端末装置1―xとしてパーソナルコンピュータを、中継装置2としてISDNルータを、端末装置3として外部の利用者が利用する端末装置を備えている。ISDNルータはISDN網でISP(Internet Service Provider)網に接続されている。
【0256】
ネットワーク4、および、ネットワーク4に接続される装置で構成されるネットワークシステムは、個人の宅内に配線されたEthernet(R)ケーブルと該Ethernet(R)ケーブルに直接、または、Ethernet(R)ハブを介して接続されるパーソナルコンピュータからなる個人の宅内ネットワークシステムや、または、同様な構成で構築された小規模事業所のSOHO(Small Office Home Office)で有り得る。ここでは、該Ethernet(R)に、FTP(File Transfer Protocol)サービスを提供するFTPサーバプログラムが搭載され、名前がftp.user−a.isp1.ne.jpでアドレスが192.168.0.2である端末装置と、電子メールを送受信するプログラムが搭載され、名前がpc1.user−1.isp1.ne.jpである端末装置とが接続されているとする。
【0257】
ISDNルータは、名前がuser−a.isp1.ne.jpで、該Ethernet(R)側のアドレスとして192.168.0.1が、また、該ISPから割り当てられたグローバルアドレスとして、133.1.1.5が割り当てられているとする。
【0258】
ここで、FTPサーバが外部利用者端末装置に対して、FTPサービスを提供するとする。この場合、ISDNルータの処理端末登録テーブルには、FTPサーバのアドレスと、FTPサービスに対応するポート番号20が、予め、登録されている(図19の(1))。また、対応管理テーブルにはエントリが存在しないものとする。
【0259】
このとき、外部利用者端末がポート番号1024のポートからuser−a.isp1.ne.jp宛てにFTPサービスを利用するためのデータ通信を開始するとする。
【0260】
外部利用者端末装置は、user−a.isp1.ne.jpの名前からアドレス解決問合せメッセージを作成し、該アドレス解決問合せメッセージを送信する(図6のステップA1)と、ISDNルータ装置、または、ISP内で該ISDNルータ装置のアドレスを解決できるネットワークサーバが該アドレス解決問合せメッセージに応答するアドレス解決応答メッセージを作成し、該アドレス解決応答メッセージを外部利用者端末装置に送信する(ステップA2)。このとき、該アドレス解決応答メッセージには、該アドレス解決問合せメッセージで問い合わされたISDNルータのアドレスが133.1.1.5であるとの情報が内包されている。
【0261】
外部利用者端末装置は、上記アドレス解決応答メッセージを受信すると、宛先アドレスを該アドレス解決応答メッセージで通知されたアドレス133.1.1.5であり、宛先ポート番号がFTPサービスに対応する20であり、送信元アドレスが外部利用者端末装置のアドレスである208.192.0.1であり、送信元ポート番号が1024であるIPパケットを作成し、該IPパケットをISDNルータに送信する。
【0262】
ISDNルータでは、上記IPパケットを受信すると、該IPパケットはパケット受信手段23から対応検索手段261と渡され、対応管理テーブルには該IPパケットに対応するエントリが存在しないため、該IPパケットは登録検索手段263に渡される。
【0263】
登録検索手段263は、処理端末登録テーブルを参照し、ここでは、処理端末登録テーブルに、ポート番号フィールドが該IPパケットの宛先ポート番号と等しい20の値を持つエントリが存在するため、登録手段264に該エントリのエントリ識別子1と該IPパケットを渡す。
【0264】
登録手段264では、渡されたエントリ識別子に対応する処理端末登録テーブルのエントリの内容と、渡されたIPパケットの内容から、対応管理テーブルに該IPパケットに関する対応を登録する(図19の(2))。
【0265】
以降、ISDNルータは、該登録した対応管理テーブルのエントリを参照し、FTPサーバのポート番号20と外部利用者端末装置のポート番号1024の間でのIPパケットを中継する。
【0266】
本第1の実施例において、ネットワーク4をEthernet(R)で構成する例を示したが、ネットワーク4はIEEE1394や無線LAN等他の通信媒体や通信プロトコルを用いたネットワークであってもよい。
【0267】
また、中継装置2からネットワーク5への接続が専用線であり、かつ、中継装置2は該専用線を収容するインタフェース装置を備えたIPルータであっても良い。
【0268】
次に、本発明の第2の実施例を、図面を参照して説明する。かかる実施例は本発明の第4の実施の形態に対応するものである。
【0269】
図20に示すとおり、本実施例は、ネットワーク4として「Bluetooth Specification version 1.0 A」に記載されるBluetooth技術を利用した無線網を、ネットワーク5として既存のインタネットと移動通信網から構成されるIPネットワークを、端末装置1―xとしてBluetooth技術でのslaveとしての通信機能を有する携帯情報機器を、中継装置2としてIPネットワークとのTCP/IP通信機能とBluetooth技術でのmasterとしての通信機能とさらにはこれらのプロトコル間のプロトコル変換機能を有し、ネットワーク4とネットワーク5間の通信を中継する機能を搭載した携帯電話端末装置を、端末装置3として外部の利用者が利用する端末装置を備えている。
【0270】
端末装置1―xとして利用される携帯情報機器として、ここでは、カメラ、ビデオカメラ、ノートPCを例に挙げ、それぞれ、Bluetoothにおけるアドレス1、2、3を割り当てられているとする。また、該ノートPCは、FTPプロトコルを解釈してFTPサービスを提供するFTPサーバプログラムとファイルを記憶する記憶装置とを搭載し、携帯電話端末とBluetooth技術によって直接通信を行うFTPサーバ専用機器であるとする。
【0271】
携帯電話端末は、ネットワーク5から識別するための名前user−a.op1.co.jpが割り当てられており、かつ、ネットワーク5のグローバルアドレス133.1.1.5が割り当てられているとする。
【0272】
また、FTPサービスに対応するネットワーク4のポート番号は10、ネットワーク5のポート番号を20とする。
【0273】
ここで、ノートPCが外部利用者端末装置に対して、FTPサービスを提供するとする。この場合、携帯電話装置のポートテーブルには、FTPサービスに対応するネットワーク4のポート番号10とネットワーク5のポート番号20の対応が(図21の(3))、また、処理端末登録テーブルには、ノートPCのアドレス3と、FTPサービスに対応するネットワーク4のポート番号10の対応が(図21の(1))、予め、登録されている。また、対応管理テーブルにはエントリが存在しないものとする。
【0274】
このとき、外部利用者端末がポート番号1024のポートからuser−a.op1.co.jp宛てにFTPサービスを利用するためのデータ通信を開始するとする。
【0275】
外部利用者端末装置は、user−a.op1.co.jpの名前からアドレス解決問合せメッセージを作成し、該アドレス解決問合せメッセージを送信する(図6のステップA1)と、携帯電話端末、または、移動通信網内で該携帯端末装置のアドレスを解決できるネットワークサーバが該アドレス解決問合せメッセージに応答するアドレス解決応答メッセージを作成し、該アドレス解決応答メッセージを外部利用者端末装置に送信する(ステップA2)。このとき、該アドレス解決応答メッセージには、該アドレス解決問合せメッセージで問い合わされた携帯電話端末のアドレスが133.1.1.5であるとの情報が内包されている。
【0276】
外部利用者端末装置は、上記アドレス解決応答メッセージを受信すると、宛先アドレスを該アドレス解決応答メッセージで通知されたアドレス133.1.1.5であり、宛先ポート番号がFTPサービスに対応する20であり、送信元アドレスが外部利用者端末装置のアドレスである208.192.0.1であり、送信元ポート番号が1024であるIPパケットを作成し、該IPパケットを携帯電話端末に送信する。
【0277】
携帯電話端末では、上記IPパケットを受信すると、該IPパケットはパケット受信手段23から対応検索手段261と渡され、対応管理テーブルには該IPパケットに対応するエントリが存在しないため、該IPパケットは登録検索手段2263に渡される。
【0278】
登録検索手段2263は、ポートテーブルの検索により、該IPパケットの宛先ポート番号20に対応するネットワーク4のポート番号が10である事を知り、さらに、処理端末登録テーブルの検索により、ポート番号10のサービスを提供するネットワーク4の端末装置のアドレスを登録したエントリが検出されるため、登録検索手段2263は該IPパケットと該エントリのエントリ識別子1を登録手段2264に渡す。
【0279】
登録手段2264では、渡されたエントリ識別子1に対応する処理端末登録テーブルのエントリの内容と、渡されたIPパケットの内容から、対応管理テーブルに該IPパケットに関する対応を登録する(図21の(2))。
【0280】
以降、携帯電話端末は、該登録した対応管理テーブルのエントリを参照し、ノートPCのFTPサーバプログラムとのBluetoothによる通信と外部利用者端末装置のポート番号1024の間でのTCP/IPによる通信を中継する。
【0281】
【発明の効果】
第1の効果は、グローバルネットワークに接続された端末装置からプライベートネットワークに接続された端末装置に対してデータ通信を開始することができることである。
【0282】
その理由は、グローバルネットワークとプライベートネットワークを接続する中継装置においてプライベートネットワークに接続された端末装置のアドレスと該端末装置が提供するサービスに対応するポート番号の対応を管理し、該対応を参照して、グローバルネットワークに接続された端末装置からのデータ通信を開始するパケットの宛先を変換して中継するため、該中継装置がプライベートネットワークに接続された複数の端末装置に対して一つのグローバルアドレスを対応させた場合にも、データ通信を開始するIPパケットに含まれる宛先ポート番号の値により該IPパケットを転送する端末装置を識別できるからである。
【0283】
第2の効果は、異なるプライベートネットワークに接続された端末装置間で相手側の端末装置のアドレス解決ができることである。これにより、異なるプライベートネットワークに接続された端末装置間でのデータ通信が可能になる。
【0284】
その理由は、上記第1の効果の理由と同じである。
【0285】
第3の効果は、プライベートネットワークに接続された端末装置が動作しているときのみデータ通信を開始するIPパケットが中継されることである。これにより、受取る端末装置が存在しないIPパケットを無駄に中継することを防ぐことができる。
【0286】
その理由は、プライベートネットワークに接続される端末装置は、起動する際に中継装置に提供するサービスを登録し、終了する際に該登録したサービスを削除するからである。
【0287】
第4の効果は、プライベートネットワークに接続された端末装置が何らかの異常により正常な動作ができなくなったときにはデータ通信を開始するIPパケットが中継されなくなることである。これにより、受取る端末装置が正常に動作していないIPパケットを無駄に中継することを防ぐことができる。
【0288】
その理由は、中継装置がサービスを登録しているプライベートネットワークに接続された端末装置に対して周期的に正常に動作しているか否かを確認しているからである。
【0289】
第5の効果は、特に、第1の実施例と第2の実施例で示したように、プライベートネットワークを一利用者が管理するような状況においては、プライベートネットワークに接続され同じサービスを提供可能な複数の端末装置が存在する場合に、現在該サービスを提供している端末装置が動作を終了しても、その後の該サービスの要求に対して自動的に他の該サービスを提供可能な端末装置との通信が可能になることである。
【0290】
その理由は、プライベートネットワークにおいてはポート番号リソースを該プライベートネットワークに接続される端末装置間で共有しており、かつ、上記の第3の効果と第4の効果の理由で説明したとおり端末装置が非動作状態になった場合は自動的に該端末装置の提供サービスの登録が削除されるため、現在該サービスを提供している端末装置が動作を終了しても、中継装置はその後の該サービスの要求に対して該サービスの提供を登録している他の端末装置へ中継することができるからである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を示すブロック図
【図2】本発明の第1の実施の形態の一部の構成を示すブロック図
【図3】本発明の第1の実施の形態の一部の構成を示すブロック図
【図4】本発明の第1の実施の形態におけるテーブルの構成を示す図
【図5】本発明の第1の実施の形態におけるメッセージの構成を示す図
【図6】本発明の第1の実施の形態の動作を示すシーケンス図
【図7】本発明の実施の形態における他の構成を示すブロック図
【図8】本発明の第2の実施の形態の構成を示すブロック図
【図9】本発明の第2の実施の形態の動作を示す第1のシーケンス図
【図10】本発明の第2の実施の形態の動作を示す第2のシーケンス図
【図11】本発明の第3の実施の形態の構成を示すブロック図
【図12】本発明の第3の実施の形態の一部の構成を示すブロック図
【図13】本発明の第3の実施の形態における一部のテーブルの構成を示す図
【図14】本発明の第3の実施の形態の動作を示すシーケンス図
【図15】本発明の第4の実施の形態の一部の構成を示すブロック図
【図16】本発明の第4の実施の形態の一部の構成を示すブロック図
【図17】本発明の第4の実施の形態におけるテーブルの構成を示すブロック図
【図18】本発明の第1の実施例の構成を示すブロック図
【図19】本発明の第1の実施例におけるテーブルの内容を示す図
【図20】本発明の第2の実施例の構成を示すブロック図
【図21】本発明の第2の実施例におけるテーブルの内容を示す図
【図22】既存の技術の構成を示すブロック図
【図23】既存の技術の一部の構成を示すブロック図
【図24】既存の技術の一部の構成を示すブロック図
【図25】既存のIPネットワーク構成の例を示すブロック図
【符号の説明】
1 携帯端末
2 中継装置
3 端末装置
4 ネットワーク
5 ネットワーク
6 電源操作監視手段
12 登録要求送信手段
13 削除要求送信手段
14 動作確認応答手段
15 記憶手段
21 パケット受信手段
22 パケット送信手段
23 パケット受信手段
24 パケット送信手段
25 アドレス変換手段
26 アドレス変換手段
27 記憶手段
28 アドレス問合せ応答手段
251 対応検索手段
252 パケット変換手段
254 登録手段
261 対応検索手段
262 パケット変換手段
263 登録検索手段
264 登録手段
265 宛先選択手段
291 登録要求受信手段
292 削除要求受信手段
293 動作確認要求手段
294 能力情報受信手段
1021 パケット受信手段
1022 パケット送信手段
1023 パケット受信手段
1024 パケット送信手段
1025 アドレス変換手段
1026 アドレス変換手段
1027 記憶手段
1251 対応検索手段
1252 パケット変換手段
1254 登録手段
1261 対応検索手段
1262 パケット変換手段
2251 対応検索手段
2252 パケット変換手段
2254 登録手段
2262 パケット変換手段
2263 登録検索手段
2264 登録手段
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a terminal device, a relay device, a communication method, and a recording medium recording the communication program, and relates to an address conversion method between a plurality of networks configured by different address systems.
[0002]
[Prior art]
In recent years, the spread of the Internet based on the IPv4 (Internet Protocol version 4) technology described in "Internet Protocol-DARPA Internet Program Protocol Specification, RFC791" has been remarkable, In addition to expansion in the subscriber phone and ISDN markets, mobile devices such as the appearance of systems using WAP (Wireless Application Protocol) technology described in "Wireless Application Protocol Architectural Overview, WAP Architecture Version 30-Apr-1988" The telecom market has also been targeted.
[0003]
In order to connect a terminal device to the Internet for data communication, an address (IP address) for identifying the terminal device on the Internet is required. An IP address has a 32-bit address space, and an IP address (global address) assigned to a terminal device communicating on the Internet must be unique on the Internet. For this reason, the lack of addresses to be assigned to terminal devices has become a problem with the spread of the Internet and the accompanying increase in terminal devices. Note that the IP address assignment is managed worldwide by the US IANA (Internet Assigned Numbers Authority), and the user cannot basically assign it to a terminal device without permission.
[0004]
In order to solve such a problem, the application of IPv6 (Internet Protocol version 6) technology described in “Internet Protocol, Version 6 (IPv6) Specification, RFC2460” has been decided in the long term. In the current Internet, which is widely used in technology, a solution on the IPv4 technology is required as an actual solution until IPv6 becomes popular.
[0005]
As conventional techniques for solving this problem in IPv4 technology, NAT (Network Address Translator) technology described in “The IP Network Address Translator (NAT), RFC1631”, “IP Network Address Translator (NAT) Terminology and NAPT (Network Address Port Translator) technology described in "Considerations, RFC2663".
[0006]
These technologies are basically technologies for translating addresses between one network and another network between two connected networks with different address systems. By combining with the application of private addresses, the efficiency of IP addresses can be improved. It is to realize a practical use.
[0007]
Here, the private address is an IP address that is defined in “Address Allocation for Private Internets, RFC 1918” and that can be used regardless of IANA management. IP addresses “10.xxx”, “172.16.xx”, and “192.168.xx” (where x represents an arbitrary value from 0 to 255) are assigned as private addresses. Note that the IP address assigned to the private address is not used as a global address.
[0008]
Further, “the address systems of the network Na and the network Nb are different” means that the following conditions are satisfied.
[0009]
“Network Na and Network Nb are each a network that forms part of a certain metanetwork (a collection of networks directly or indirectly connected to each other (partial condition 1)”), and
“The network Na and the network Nb each use an address system based on the assignment of an identifier uniquely identifiable in the network to the connected terminal device (partial condition 2), and
“For any terminal device T connected to the network Na,“ the address value A of the terminal device T does not make sense as an identifier representing an address in the address system of the network Nb (such as not being used as an identifier representing an address). (Partial condition 3-1) ”or“ the value A of the address makes sense as an identifier representing an address in the address system of the network Nb (used as an identifier representing an address), but the value of the address in the network Nb It does not know that A is assigned to the terminal device connected to the network Na (partial condition 3-2) "(partial condition 3)".
[0010]
For example, as shown in FIG. 25, there is a meta network in which a network N and a first network N1, a second network N2, a third network N3, and a fourth network N4 are connected as shown in FIG. As for the network address system, the network N has a global address (however, 133.xxx is not allocated in the network N so that it can be used in the first network N1), and the first network N1 has a global address 133. xxx, the second network N2 employs the private address 10.xxx, the third network N3 employs the private address, and the fourth network N4 employs the private address 10.255.xx. The third network N3 and the fourth network N4 is 10.0.xx to 10.254.xx out of one private address 10.xxx Is subnetted to the third network N3, and the remaining 10.255.xx is subnetted to the fourth network N4. Here, in any two networks constituting FIG. 25, partial condition 1 and partial condition 2 are satisfied among the above conditions.
[0011]
The global address system and the private address system both use a part of the 32-bit space value as the address value, but the global address system does not use the address value used in the private address system. For this reason, in the network employing the global address system and the network employing the private address system, the above partial condition 3-1 is satisfied and the above condition is satisfied, so that the address systems are different. That is, the network N and the first network N1 have different address systems from the second network N2, the third network N3, and the fourth network N4.
[0012]
In addition, since the condition 3 does not hold for the network N and the first network N1, the address system is not different. The second network N2 is different from the third network N3 and the fourth network N4 in that the address system is different because the condition 3-1 is not satisfied but the condition 3-2 is satisfied. Since the third network N3 and the fourth network N4 do not satisfy the condition 3, the address systems are not different.
[0013]
FIG. 22 shows the configuration of an existing communication system to which the NAPT technology is applied.
[0014]
As shown in FIG. 22, an existing communication system to which the NAPT technology is applied includes a terminal device T, a NAPT relay device R, a server device S, a global network Ng, and a private network Np. The terminal device T is accessed to the server device S via the NAPT relay device R, and the terminal device T and the NAPT relay device R are connected by a private network Np. On the other hand, the NAPT relay device R and the server device S are connected by a global network Ng.
[0015]
Different address systems are applied to the global network Ng and the private network Np. A global address is assigned to a terminal device connected to the global network Ng, and a private address is assigned to a terminal device connected to the private network Np. The terminal device T includes communication means based on TCP / IP (Transmission Control Protocol / Internet Protocol), and uses the communication means to connect to the server program of the server apparatus S and mount a client program that communicates with the server program. In the information processing device, one private address (referred to as Ap-t) of the private network Np is assigned.
[0016]
The server device S is an information processing device equipped with a communication program based on TCP / IP, which is equipped with a server program that waits for a connection from the client program of the terminal device T using the communication device and communicates with the connected client program. , One global address (assumed to be Ag-s) of the global network Ng is assigned.
[0017]
In the server apparatus S, the server program waits for a connection from the client program at the port identified by the port number Ps. The client program needs to know the port number Ps of the port, and when connecting to the server program, by specifying the port number Ps as the port number of the destination port to the communication means. Connect to the server program and start a communication session with the server program.
[0018]
The NAPT relay device R is a router having an IP packet relay function, which is composed of packet receiving means 1021, 1023, packet transmitting means 1022, 1024, address converting means 1025, 1026, and storage means 1027. One private address (Ap-r) is assigned to the global network Ng, and one global address (Ag-r) is assigned.
[0019]
The storage unit 1027 holds a correspondence management table. The configuration of the correspondence management table is shown in FIG.
[0020]
As shown in FIG. 4, the correspondence management table has an entry including an entry identifier field, a first socket field, a second socket field, and a third socket field. The entry identifier field stores an entry identifier value that uniquely identifies each entry in the correspondence management table in the NAPT relay device R. The first socket field is composed of a pair of private network Np address and port number, and the second socket field and the third socket field are composed of a pair of global network Ng IP address and port number, respectively.
[0021]
The packet receiving unit 1021 receives an IP packet addressed to the global network Ng sent from the private network Np, and passes the received IP packet to the address converting unit 1025.
[0022]
The packet transmission unit 1022 transmits the IP packet passed from the address translation unit 1025 to the global network Ng.
[0023]
The packet receiving unit 1023 receives an IP packet addressed to the private network Np sent from the global network Ng, and passes the received IP packet to the address converting unit 1026.
[0024]
The packet transmission means 1024 sends the IP packet passed from the address translation means 1026 to the private network Np.
[0025]
As shown in FIG. 23, the address conversion unit 1025 includes a correspondence search unit 1251, a packet conversion unit 1252, and a registration unit 1254.
[0026]
The correspondence search unit 1251 receives the IP packet passed from the packet reception unit 1021 to the address conversion unit 1025. When the packet is received from the packet receiving unit 1021, the correspondence search unit 1251 indicates that the value of the first socket field is equal to the set of the source address and source port number of the IP packet from the correspondence management table of the storage unit 1027. And an entry having the same value as the combination of the destination address and the destination port number of the IP packet is retrieved.
[0027]
When the entry is detected by the search, the correspondence search unit 1251 passes the IP packet and the entry identifier stored in the entry identifier field of the entry to the packet conversion unit 1252. When the entry is not detected by the search, the correspondence search unit 1251 passes the IP packet to the registration unit 1254.
[0028]
When the IP packet and the entry identifier are passed, the packet conversion unit 1252 indicates the source address and the source port number of the IP packet in the third socket field of the entry of the correspondence management table identified from the entry identifier. The IP address and the port number are rewritten, and the rewritten IP packet is transferred to the packet transmission unit 1022.
[0029]
Upon receiving the IP packet, the registration unit 1254 generates an unused entry identifier and selects one unused port number. Then, the registration means 1254 uses the entry identifier as the value of the entry identifier field, and sets the combination of the source address and source port number, the destination address and the destination port number of the IP packet as the first socket field and the first address, respectively. 2, an entry is created in which the combination of the IP address of the global network Ng of the NAPT relay device R and the selected port number is the value of the third socket field, and the entry is stored in the storage means 1027. Store in the correspondence management table. Then, the registration unit 1254 passes the IP packet and the entry identifier to the packet conversion unit 1252.
[0030]
As shown in FIG. 24, the address translation unit 1026 includes a correspondence search unit 1261 and a packet translation unit 1262.
[0031]
The correspondence search unit 1261 receives the IP packet passed from the packet receiving unit 1023 to the address converting unit 1026. When the correspondence retrieval unit 1261 receives the IP packet from the packet reception unit 1023, the value of the second socket field is set from the correspondence management table of the storage unit 1027 to the combination of the transmission source address and the transmission source port number of the IP packet. An entry is searched for which is equal and the value of the third socket field is equal to the pair of the destination address and the destination port number of the IP packet.
[0032]
When the entry is detected by the search, the correspondence search unit 1261 passes the IP packet and the entry identifier stored in the entry identifier field of the entry to the packet conversion unit 1262. When the entry is not detected by the search, the correspondence search unit 1261 discards the IP packet because the destination of the IP packet is not known.
[0033]
When the IP packet and the entry identifier are passed, the packet converting unit 1262 receives the IP address of the first socket indicated in the entry of the correspondence management table identified from the entry identifier by specifying the destination address and the destination port number of the IP packet. And the port number value are rewritten, and the rewritten IP packet is transferred to the packet transmission means 1024.
[0034]
Next, the operation of the NAPT technology will be described.
[0035]
Here, first, the terminal device T starts a communication session between the port P-t of the terminal device T and the port P-s of the server device S, so that the port P-t of the terminal device T and the server device S An operation when the first IP packet (referred to as IP packet A) is transmitted to the private network Np between the ports P-s will be described. At this time, in the IP packet A, the destination address is the IP address Ag-s of the server device S, the source address is the IP address Ap-t of the terminal device T, and the destination port in the transport layer protocol header included in the IP packet A The number is Ps, and the source port number is Pt. In the correspondence management table of the storage unit 1027, it is assumed that no entry is registered as an initial state.
[0036]
The IP packet A addressed from the terminal apparatus T to the server apparatus S is received by the packet receiving means 1021 of the NAPT relay apparatus R via the private network Np, and the packet receiving means 1021 sends the IP packet A to the address converting means 1025. hand over.
[0037]
The IP packet A passed to the address translation unit 1025 is received by the correspondence search unit 1251. When the correspondence search means 1251 receives the IP packet A, the correspondence management table of the storage means 1027 indicates that the value of the second socket field is a set of the transmission source address and transmission source port number of the IP packet A [Ap− An entry that is equal to t, P-t] and whose value in the third socket field is equal to the destination address and destination port number pair [Ag-r, P-r] of the IP packet A is searched.
[0038]
In this case, since the entry does not exist in the correspondence management table, the entry is not detected by the search.
[0039]
The correspondence search unit 261 passes the IP packet A to the registration unit 1254 because the entry is not detected in the search.
[0040]
Upon receiving the IP packet A, the registration unit 1254 generates an unused entry identifier and selects one unused port number in the NAPT relay device R (the selected port number is designated as Pr). To do). Then, the registration unit 1254 uses the entry identifier as the value of the entry identifier field, sets the source address and source port number of the IP packet A [Ap-t, Pt], the destination address and the destination port number. [Ag−s, P−s] are values of the first socket field and the second socket field, respectively, and the set of the IP address of the global network Ng of the NAPT relay device R and the selected port number [Ag -R, P-r] is created as the value of the third socket field, and the entry is stored in the correspondence management table of the storage means 1027. Then, the registration unit 1254 passes the IP packet A and the entry identifier to the packet conversion unit 1252.
[0041]
The packet conversion means 1252 receives the IP packet A and the entry identifier, and the correspondence management table for identifying the source address Ap-t and the source port number Pt of the IP packet A from the entry identifier, respectively. The IP address Ag-r and the port number Pr shown in the third socket field of the entry are rewritten, and the rewritten IP packet (referred to as IP packet B) is passed to the packet transmitting means 1022.
[0042]
When the packet transmission means 1022 receives the IP packet B, it transmits the IP packet B to the global network Ng.
[0043]
The IP packet B transmitted from the NAPT relay device R is received by the server device S via the global network Ng. From the contents of the source address, source port number, destination address, and destination port number included in the IP packet B, the server device S uses the port Pr of the device whose IP address is Ag-r. When the IP packet is transmitted in the data communication session, the destination address of the IP packet is Ag-r, and the destination port number Is set to Pr, the source address is set to Ag-s, and the source port number is set to Ps.
[0044]
Thereafter, when the NAPT relay device R receives the IP packet (referred to as IP packet C) of the communication session from the private network Np, it operates in the same manner as the processing of the IP packet A described above. In the processing, the correspondence search unit 1251 determines from the correspondence management table of the storage unit 1027 that the value of the first socket field is a set [Ap-t, P-t] of the source address and source port number of the IP packet C. And an entry having a value of the second socket field equal to the destination address and destination port number pair [Ag-s, P-s] of the IP packet C is detected. The entry identifier of the detected entry is directly passed to the packet conversion unit 1252 without going through the registration unit 1254. The processing after the packet conversion means 1252 is performed in the same manner as in the case of the IP packet A, and the IP packet C is an IP packet having the same source address Ag-r and source port number Pr as the IP packet B. (The converted IP packet is referred to as IP packet D), and the converted IP packet D is sent to the server device S via the global network Ng.
[0045]
Further, as described above, the IP packet (referred to as IP packet E) of the communication session sent from the server apparatus S after processing the IP packet A and IP packet B has a destination address of Ag-r, a destination port, The number is Pr, the transmission source address is Ag-s, and the transmission source port number is Ps. The packet reception unit 1023 of the NAPT relay device R receives the packet via the global network Ng, and the packet reception unit 1023 The IP packet E is passed to the address translation means 1026.
[0046]
The IP packet E passed to the address translation unit 1026 is received by the correspondence search unit 1261. When the IP packet E is passed, the correspondence search means 1261 receives a value of the second socket field from the correspondence management table of the storage means 1027 and sets the combination of the source address and the source port number of the IP packet E [Ag− s, P−s], and an entry in which the value of the third socket field is equal to the destination address and destination port number pair [Ag−r, P−r] of the IP packet E is searched.
[0047]
In this case, since the entry registered at the time of processing the IP packet A exists in the correspondence management table, and the entry corresponds to the entry to be searched, the correspondence search means 1261 indicates the entry identifier of the IP packet E and the entry. The packet is transferred to the packet conversion unit 1262.
[0048]
When the IP packet E and the entry identifier are passed, the packet conversion unit 1262 receives the destination address Ag-r and the destination port number Pr of the IP packet E from the entry of the correspondence management table identified from the entry identifier. The first socket IP address Ap-t and port number P-t are rewritten, and the rewritten IP packet (referred to as IP packet F) is passed to the packet transmission means 1024.
[0049]
When receiving the IP packet F, the packet transmission means 1024 sends the IP packet F to the private network Np.
[0050]
The IP packet F sent from the NAPT relay device R is received by the terminal device T via the private network Np.
[0051]
As described above, in the existing communication system to which the NAPT technology is applied, the NAPT relay device R includes a pair of a socket configured with a private address and port number and a socket configured with a global address and port number. One communication session to be identified is associated with a set of one global address and port number, and the IP address and port number on the private network Np side at the time of relaying, and the global network Ng associated with the communication session By mutually converting the IP address and the port number on the side, communication by IP between a device connected to the private network Np having a different address system and a device connected to the global network Ng is made possible. The present technology can also be applied to a communication system having a configuration in which a plurality of private networks using the same private address system are connected to one global network. By connecting each private network and the global network with a NAPT relay device, communication between the terminal device connected to each private network and the server device connected to the global network can be realized. Therefore, it is possible to increase the number of IP addresses assigned to the terminal device by increasing the number of private networks connected by the NAPT relay device.
[0052]
[Problems to be solved by the invention]
The first problem is that communication cannot be started from the server device when communicating between the server device connected to the global network and the terminal device connected to the private network.
[0053]
The reason is that when communication is started from the server device, the server device must first know the IP address of the terminal device from the name of the terminal device, but the address cannot be resolved at this time.
[0054]
The second problem is that communication is not possible between terminal devices connected to different private networks.
[0055]
The reason is that, similarly to the reason for the first problem described above, in the terminal device that starts communication, the address of the terminal device that is the communication partner cannot be resolved.
An object of the present invention is to provide a terminal device, a relay device, a communication method, and the like that solve such problems.
[0056]
[Means for Solving the Problems]
In the present invention, the address of the terminal device 1-x (x = 1, 2,..., N) connected to the first network (the private network 4 in the example of FIG. 1) in advance in the storage means 27 and the terminal device. A port number corresponding to the service provided by 1-x is registered. When the relay device 2 receives a packet for starting data communication from the terminal device 3 connected to a second network (global network 5 in the example of FIG. 1) having a different address system from the first network, the address conversion means 26 Searches the storage means 27 for the address of the terminal device in which the port number equal to the destination port number included in the packet is registered, converts the destination address of the packet into the searched address, and sends it to the first network. .
[0057]
By adopting such a configuration, when communicating between a server device connected to the second network and a terminal device connected to the first network, it is possible to start communication from the server device, Communication between terminal devices connected to networks with different address systems is made possible, and the first and second problems are solved.
[0058]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described in detail with reference to the drawings.
[0059]
FIG. 1 shows a first embodiment relating to a terminal device, a relay device, and a communication method thereof according to the present invention.
[0060]
In the conventional technology, when a network using a global address system (global network) and a network using a private address system (private network) are connected by a relay device, a private network is assigned to one global address in the global network. The first terminal device connected to the global network cannot uniquely identify the address of the second terminal device connected to the private network. Data communication from one terminal device to the second terminal device could not be started. In the present embodiment, in addition to the configuration of the existing communication system, a processing terminal registration table is newly introduced as a table to be stored in the storage unit (storage unit 1027) of the relay apparatus, and one address conversion unit (existing Registration search means and registration means are introduced into the address conversion means 1026 in the technology). A service that can start data communication from the first terminal device to the second terminal device is determined in advance, and a port number that is one of service identifiers corresponding to the service and the second terminal The correspondence with the address of the device is stored in the processing terminal registration table, and when the relay device receives a packet for starting a communication session from the first terminal device to the second terminal device, the registration search means By searching the address of the second terminal device corresponding to the destination port number of the packet from the processing terminal registration table and setting the destination of the packet as the searched second terminal device, the first terminal device The data communication to the second terminal device can be started. Further, at this time, the registration means registers the correspondence of these sockets in the correspondence management table in the same manner as the existing technology, so that the bidirectional packets of the communication session thereafter can be relayed in the same manner. To do.
[0061]
The configuration of the first embodiment of the present invention is shown in FIG. 1, FIG. 2, FIG. 3, and FIG.
[0062]
As shown in FIG. 1, the first embodiment of the present invention includes a plurality of terminal devices (terminal device 1-1, terminal device 1-2,..., Terminal device 1-n), relay device 2 Terminal device 3 and networks 4 and 5, terminal device 1 -x (x = 1, 2,..., N, and so on) and relay device 2 are connected via network 4 and relayed. The device 2 and the terminal device 3 are connected via the network 5.
[0063]
The networks 4 and 5 are networks to which different address systems are applied.
[0064]
The network 4 is a network configured by IP or other technology, and is a network that provides a data transfer service such as an IP network, an ISDN network, and a mobile communication network. In the network 4, a packet carrying user data and control information is transferred between the terminal device 1-x and the relay device 2.
[0065]
The network 5 is an IP network to which a global address is applied. In the network 5, an address resolution inquiry message that makes an inquiry for address resolution between the relay device 2 and the terminal device 3, an address resolution response message that responds to the address resolution inquiry, and other control information and user data IP packets carrying are forwarded.
[0066]
The terminal device 1-x is an information processing device having a communication function that can be used in the network 4, and is equipped with a communication program that communicates with the communication program of the terminal device 3 using the communication function. 4 address (referred to as A1-x) is assigned. The terminal device name is composed of information about the network to which the terminal device is connected and an identifier that can be uniquely identified within the network, as in FQDN (Fully Qualified Domain Name) format. The terminal device program or user is used to identify the terminal device.
[0067]
The terminal device 3 is a terminal device that is used in the existing Internet, has a communication function by TCP / IP, and is equipped with a communication program that communicates with the communication program of the terminal device 1-x using the communication function. In the information processing device, a terminal device name and one address (referred to as A2-1) of the network 5 are assigned. Similarly to the terminal device 1-x, the terminal device name is composed of information on the network to which the terminal device is connected and an identifier that can be uniquely identified in the network, as in the FQDN format. It is used for programs of other terminal devices and users to identify the terminal devices. When the terminal device 3 starts communication with another terminal device, the terminal device 3 receives the IP address of the other terminal device from the name of the other terminal device (or the destination of the IP packet to be sent to the other terminal device). Address resolution means for inquiring about the IP address of the device. The address resolution means is realized by a DNS (Domain Name System) technique described in RFC 1035 “DOMAIN NAMES-IMPLEMENTATION AND SPECIFICATION”.
[0068]
The relay device 2 is composed of packet receiving means 21 and 23, packet transmitting means 22 and 24, address converting means 25 and 26, storage means 27, and address inquiry response means 28, and one address (A1-r and And one IP address (A2-2) of the network 5 is assigned.
[0069]
The storage means 27 holds a processing terminal registration table and a correspondence management table. The configuration of the processing terminal registration table and the correspondence management table is shown in FIG.
[0070]
As shown in FIG. 4, the processing terminal registration table includes an entry identifier field that stores a value of a first entry identifier that uniquely identifies an entry in the processing terminal registration table in the relay device 2, and an address field that stores an address of the network 4. And a port number field pair for storing the port number as an entry. In the processing terminal registration table, a terminal device that processes a service to be provided to the terminal device 3 is determined in advance, the address of the terminal device that processes the service is in the address field, and the port number corresponding to the service is the port number. The entry set in the field is stored. For example, the terminal device that provides the FTP service to the terminal device 3 is determined as the terminal device 1-1, the address A1-1 of the terminal device 1-1 in the processing terminal registration table, and the port number corresponding to the FTP service Set 20 groups.
[0071]
The correspondence management table has an entry including an entry identifier field, a first socket field, a second socket field, and a third socket field. The entry identifier field stores a value of a second entry identifier that uniquely identifies each entry in the correspondence management table in the relay device 2. The first socket field consists of a set of the network 4 address and port number, and the second socket field and the third socket field consist of a set of the network 5 IP address and port number, respectively.
[0072]
The packet receiving unit 21 receives a packet addressed to the network 5 sent from the network 4 and passes the received packet to the address converting unit 25.
[0073]
The packet transmission unit 22 transmits the IP packet passed from the address conversion unit 25 to the network 5.
[0074]
The packet receiving unit 23 receives an IP packet addressed to the network 4 sent from the network 5 and passes the received IP packet to the address converting unit 26.
[0075]
The packet transmission unit 24 transmits the packet passed from the address conversion unit 26 to the network 4.
[0076]
As shown in FIG. 2, the address conversion unit 25 includes a correspondence search unit 251, a packet conversion unit 252, and a registration unit 254.
[0077]
The correspondence search unit 251 receives the packet passed from the packet receiving unit 21 to the address converting unit 25. When the correspondence retrieval unit 251 receives the packet from the packet reception unit 21, the value of the first socket field is equal to the combination of the transmission source address and the transmission source port number of the packet from the correspondence management table of the storage unit 27. In addition, an entry having a value equal to the combination of the destination address and the destination port number of the packet is retrieved.
[0078]
When the entry is detected by the search, the correspondence search unit 251 passes the packet and the second entry identifier stored in the entry identifier field of the entry to the packet conversion unit 252. If the entry is not detected by the search, the correspondence search unit 251 passes the packet to the registration unit 254.
[0079]
When the packet conversion unit 252 receives the packet and the second entry identifier, the packet conversion unit 252 converts the packet into an IP packet, and the source address and source port number of the IP packet are identified from the second entry identifier. The IP address and port number values shown in the third socket field of the corresponding management table entry are rewritten, and the rewritten IP packet is transferred to the packet transmitting means 22.
[0080]
When receiving the packet, the registration unit 254 generates an unused second entry identifier and selects one unused port number. Then, the registration unit 254 uses the second entry identifier as the value of the entry identifier field, and sets the combination of the transmission source address, the transmission source port number, the destination address, and the destination port number of the packet in the first socket field. And the second socket field value, an entry is created in which the combination of the IP address of the network 5 of the relay device 2 and the selected port number is the third socket field value. Store in the correspondence management table. Then, the registration unit 254 passes the packet and the second entry identifier to the packet conversion unit 252.
[0081]
As shown in FIG. 3, the address conversion unit 26 includes a correspondence search unit 261, a packet conversion unit 262, a registration search unit 263, and a registration unit 264.
[0082]
The correspondence search unit 261 receives the IP packet passed from the packet receiving unit 23 to the address converting unit 26. When the correspondence retrieval unit 261 receives the IP packet from the packet reception unit 23, the value of the second socket field is set from the correspondence management table of the storage unit 27 to the combination of the transmission source address and the transmission source port number of the IP packet. An entry is searched for which is equal and the value of the third socket field is equal to the pair of the destination address and the destination port number of the IP packet.
[0083]
When the entry is detected by the search, the correspondence search unit 261 passes the IP packet and the second entry identifier stored in the entry identifier field of the entry to the packet conversion unit 262. When the entry is not detected by the search, the correspondence search unit 261 passes the IP packet to the registration search unit 263.
[0084]
When the IP packet and the second entry identifier are passed, the packet conversion unit 262 converts the IP packet into a packet of the network 4, and identifies the destination address and the destination port number of the packet from the second entry identifier, respectively. The correspondence management table entry is rewritten with the IP address and port number values of the first socket, and the rewritten packet is transferred to the packet transmitting means 24.
[0085]
When receiving the IP packet, the registration search means 263 refers to the processing terminal registration table and searches for an entry having the value of the destination port number of the IP packet as the value of the port number field.
[0086]
If the entry is not detected from the processing terminal registration table by the search, the registration search means 263 discards the IP packet and ends the processing.
[0087]
When the entry is detected from the processing terminal registration table by the search, the registration search unit 263 passes the first entry identifier stored in the entry identifier field of the entry and the IP packet to the registration unit 264.
[0088]
When the first entry identifier and the IP packet are passed, the registration means 264 receives the address and port number stored in the address field of the entry in the processing terminal registration table of the storage means 27 identified by the first entry identifier. The port number stored in the field is read, an unused second entry identifier is generated, the second entry identifier is set as the value of the entry identifier field, and the set of the address and the port number is set to the first The socket field value of the IP packet, a pair of the source address and source port number of the IP packet as a second socket field, and a pair of the destination address and destination port number of the IP packet as a value of the third socket field. The entry is created and stored in the correspondence management table of the storage means 27. Then, the registration unit 264 passes the IP packet and the second entry identifier to the packet conversion unit 262.
[0089]
In response to the address resolution inquiry message sent from the network 5, the address inquiry response resolution means 28 uses the name of the terminal device 1 -x connected by the network 4 as the name of the terminal device inquired by the address resolution inquiry message. If there is, an address resolution response message is sent to the sender of the address resolution query message as a response to the IP address A2-2 of the network 5 assigned to the relay device 2 as a response to the address resolution query message.
[0090]
Here, the structure of the message used in the present embodiment will be described with reference to FIG. Note that the structure of each message shown in FIG. 5 is schematically expressed by extracting only the fields related to the present invention.
[0091]
The IP packet used in the network 5 includes a source address, a destination address, a source port number, a destination port number, various control information, and user data. An example of the structure of the IP packet is shown in FIG. Referring to (a) of FIG. 5, the IP packet includes an IP header, a transport header, and a data part. As the transport header, either a TCP header, a UDP header, or a header of another transport protocol can be used. The header of which transport protocol is used is determined by the protocol identifier field of the IP header. Instructed. In the IP packet, the source address and the destination address are included in the IP header, and the source port number and the destination port number are included in the transport header. Various control information and user data are included in the data part.
[0092]
The address resolution inquiry message includes the name of the terminal device to be inquired, and the address resolution response message includes the address of the terminal device having the name included in the responding address resolution inquiry message. FIG. 5 shows the structure of each message when address resolution is realized by the above DNS. Referring to FIG. 5, both the address resolution inquiry message and the address resolution response message have an IP header and a transport header like the IP packet, but differ in that the data part in the IP packet is a DNS message. The difference between the IP packet and other messages is that in the address resolution inquiry message and the address resolution request message, either the source port number or the destination port number has a value 53 representing the DNS service, and the IP packet is transmitted. The source port number and the destination port number are both identified by other than 53. Further, the address resolution inquiry message and the address resolution response message are identified by the value of the query / response flag in the DNS message (if the value of the query / response flag is 0, it is an address resolution query message, and the value is 1). Is an address resolution response message).
[0093]
The name of the terminal device inquired by address resolution is stored in the name field in the DNS message of the address resolution inquiry message, and the address of the terminal device of the inquired name is stored in the address field in the DNS message of the address resolution response message.
[0094]
Each time the terminal device 3 creates an address resolution inquiry message, the terminal device 3 generates an identifier that can be uniquely identified by the terminal device 3, and generates the identifier in the identifier field in the DNS message included in the created address resolution inquiry message. Is stored. When the relay device 2 creates an address resolution response message in response to the received address resolution query message, the relay device 2 extracts the identifier stored in the identifier field in the DNS message of the address resolution query message, The identifier is stored in the identifier field in the DNS message. Thereby, the terminal device 3 can identify the address inquiry request message to which the address inquiry response message responds by referring to the value of the identifier field in the DNS message of the received address inquiry response message.
[0095]
A packet used in the network 4 includes a source address, a destination address, a source port number, a destination port number, various control information, and user data. If the network 4 is a network configured by IP, it can be configured as shown in FIG. Since the configuration of the packet used in the network 4 depends on the type of protocol technology used in the network 4, it cannot be uniquely expressed. For example, it can be expressed as shown in FIG.
[0096]
Although not shown here, the terminal device 1-x, the relay device 2, and the terminal device 3 each receive all messages, and the message type from the message type information included in the message type field of each received message. And a message distribution means for passing the message type to the means for processing the corresponding message type. For example, the relay device 2 receives two types of messages, that is, an IP packet and an address resolution inquiry message from the network 5, which are received by the message distribution unit of the relay device 2, and the message distribution unit transmits the received message to the IP If it is a packet, the IP packet is passed to the packet receiving means 23, and if the received message is an address resolution inquiry message, the address resolution inquiry message is passed to the address inquiry response means 28. Such message distribution means is necessary for the implementation of the present invention. However, since the message distribution means is not an essential component for realizing the technical features of the embodiment of the present invention, the description will be simplified. In order to clarify the technical features of the embodiment of the present invention, illustration and description of the message distribution means are omitted.
[0097]
Also, in other embodiments of the invention described below, the message distribution unit is also necessary, but the illustration and description of the message distribution unit are omitted for the same reason.
[0098]
Next, the operation of the first embodiment of the present invention will be described with reference to FIGS. 1, 2, 3, 4, and 6. FIG.
[0099]
There are two types of data communication executed in the first embodiment of the present invention: a case where the terminal device 1-x starts a data communication session and a case where the terminal device 3 starts.
[0100]
Since the case where the terminal device 1-x starts the data communication session is performed in the same manner as the NAPT technology that is an existing technology, description of the operation is omitted, and here, the terminal device 3 starts the data communication session. The operation in this case will be described.
[0101]
In the network 4, the terminal device that processes the service corresponding to the port number P1 is defined as the terminal device 1-x, and the correspondence between the address A1-x and the port number P1 is stored in the processing terminal registration table in the relay device. The case where the terminal device 3 starts data communication from the port having the port number P2 to the port having the port number P1 of the terminal device 1-x will be described.
[0102]
When the terminal device 3 starts data communication with the terminal device 1-x, first, address resolution is performed from the name of the terminal device 1-x. This is started when the terminal device 3 transmits an address resolution inquiry message including the name of the terminal device 1-x as a resolution target device name to the network 5 (step A1 in FIG. 6).
[0103]
The address resolution inquiry message is received by the address inquiry response means 28 of the relay device 2, and the address inquiry response means 28 relays since the device inquired by the address resolution inquiry message is the terminal device 1-x. An address resolution response message with the IP address A2-2 in the network 5 of the device 2 as a response to the inquiry is created and transmitted to the network 5 (step A2).
[0104]
The address resolution response message is received by the terminal device 3, and the terminal device 3 knows from the contents of the address resolution response message that the destination IP address of the IP packet addressed to the terminal device 1-x is A2-2.
[0105]
Next, the terminal device 3 generates an IP packet including data addressed to the terminal device 1-x and transmits it to the network 5 (step A3). The IP packet has a destination address of A2-2, a source address of A2-1, a destination port number P1, and a source port number of P2.
[0106]
The IP packet is received by the packet receiving unit 23, and the packet receiving unit 23 passes the IP packet to the address converting unit 26.
[0107]
The IP packet transferred to the address translation unit 26 is received by the correspondence search unit 261. When the correspondence search unit 261 receives the IP packet, the values of the second socket field and the third socket field are determined from the correspondence management table of the storage unit 27, and the source address and source port number of the IP packet, respectively. Entry [A2-1, P2] and an entry having a value equal to the destination address and destination port number set [A2-2, P1] of the IP packet are searched.
[0108]
In this case, data communication between the port with the port number P2 of the terminal device 3 and the port with the port number P1 of the terminal device 1-x has not been performed in the past, and the entry does not exist in the correspondence management table. The entry is not detected by the search.
[0109]
The correspondence search unit 261 passes the IP packet to the registration search unit 263 because the entry is not detected in the search.
[0110]
When the IP packet is passed, the registration search means 263 refers to the processing terminal registration table and searches for an entry having the destination port number value P1 of the IP packet as the value of the port number field.
[0111]
In this case, as described above, there is an entry with the preset address A1-x and the port number P1, and the entry is detected by the search.
[0112]
Since the registration search unit 263 has detected the entry by the search, the registration search unit 263 passes the first entry identifier and the IP packet stored in the entry identifier field of the entry to the registration unit 264.
[0113]
When the registration means 264 receives the first entry identifier and the IP packet, the registration means 264 receives the address stored in the address field of the entry in the processing terminal registration table of the storage means 27 identified by the first entry identifier. The port number stored in the port number field is read, an unused second entry identifier is generated, the second entry identifier is set as the value of the entry identifier field, and the set of the address and the port number [ A1-x, P1] is the value of the first socket field, the pair [A2-1, P2] of the source address and source port number of the IP packet is the value of the second socket field, and the IP packet Create an entry whose destination socket number and destination port number pair [A2-2, P1] is the value of the third socket field; Storing an entry in the correspondence management table of the storage unit 27. Then, the registration unit 264 passes the IP packet and the second entry identifier to the packet conversion unit 262.
[0114]
When the IP packet and the second entry identifier are passed, the packet conversion unit 262 converts the IP packet into a packet of the network 4, and sets the destination address and the destination port number of the packet to the second entry identifier, respectively. Are rewritten to the IP address and port number values A1-x and P1 shown in the first socket field of the entry of the correspondence management table of the storage means 27 identified by the data, and the rewritten packet is transferred to the packet transmission means 24.
[0115]
When the packet transmitting means 24 receives the packet, it sends the packet to the network 4 and the packet is received by the terminal device 1-x (step A4).
[0116]
Thereafter, the IP packet addressed to the port number P1 of the terminal device 1-x sent from the terminal device 3 to the network 5 (the destination address is A2-2, the source address is A2-1, the destination port number is P1, the source port number P2) is similarly received by the packet receiving means 23 of the relay device 2, and the IP packet is passed to the correspondence search means 261 by the packet receiving means 23, but the correspondence management table of the storage means 27 contains the second socket. The value of the field is equal to the pair [P2-1, P2] of the source address and source port number of the IP packet, and the value of the third socket field is the pair of the destination address and destination port number of the IP packet Since there is an entry equal to [P2-2, P1], the correspondence search means 261 detects the entry by searching the correspondence management table. The IP packet and the second entry identifier of the entry are passed to the packet conversion unit 262. The packet conversion unit 262 converts the IP packet into a packet of the network 4 addressed to the port number P1 of the terminal device 1-x. Is transmitted to the terminal device 1-x via the network 4 by the packet transmission means 24.
[0117]
Similarly, after step A4, packets addressed to the port number P2 of the terminal device 3 sent from the port number P1 of the terminal device 1-x to the network 4 (the destination address is A2-1, the source address is A1- x, the destination port number is P2, and the source port number is P1), the destination address is A2-1 and the source address is A2 through the packet receiving unit 21, the address converting unit 25, and the packet transmitting unit 22 in the relay apparatus 2. -2, the destination port number is converted to an IP packet with P2 and the transmission source port number is P1, and the converted IP packet is transmitted to the terminal device 3 via the network 5.
[0118]
As described above, when relaying an IP packet addressed to the network 4 from the network 5, the relay device 2 is a terminal device connected to the network 4 that processes the port number registered in advance and the IP packet addressed to the port number. From the terminal device of the network 5 to which the address system of the global address is applied by referring to the address correspondence, determining the terminal device that is the destination of the IP packet, and converting the IP packet into a packet addressed to the terminal device Communication to the terminal device of the network 4 using a different address system becomes possible.
[0119]
In the embodiment of the present invention, the case where there is one terminal device connected to the network 5 has been described. However, the present invention can be similarly implemented even when there are a plurality of terminal devices connected to the network 5.
[0120]
In the embodiment of the present invention, a terminal device (terminal device 1-x) connected to a network different from the global network (referred to as a non-global network), and a terminal device connected to the global network (terminal device 3) In the communication system in which a plurality of non-global networks are each connected to a network having a different address system by the relay device according to the embodiment of the present invention, any communication connected to any non-global network is described. Communication between the terminal devices is also realized in the same manner. That is, in the communication system shown in FIG. 7, communication between arbitrary terminal devices is possible. This is because the terminal device (terminal device A) connected to the i-th non-global network (where i is any one of 1, 2,..., N) to the j-th non-global network (where j is When transmitting a packet for starting a communication session to a terminal device (terminal device B) connected to any one of 1, 2,..., N and j ≠ i), the i-th relay This is because the operations of the device with respect to the j-th relay device and the terminal device B are equal to those of the terminal device 3 in the embodiment of the present invention. However, when the relay network is a non-global network, the address system of the relay network must be different from both the address system of the i-th non-global network and the address system of the j-th non-global network.
[0121]
Further, in the embodiment of the present invention, the case where the terminal device 1-x is the terminal device on the other side that knows the name when the terminal device 3 starts data communication has been described. Only the name of the relay device 2 may be known, and address resolution may be performed by designating the name of the relay device 2.
[0122]
Next, a second embodiment of the present invention will be described with reference to FIG.
[0123]
Referring to FIG. 8, in the second embodiment of the present invention, the terminal device 1-x has a power supply operation monitoring in addition to the configuration of the terminal device 1-x in the first embodiment shown in FIG. Means 11, registration request transmission means 12, deletion request transmission means 13, operation confirmation response means 14, and storage means 15, and the relay apparatus 2 is the relay apparatus in the first embodiment shown in FIG. In addition to the configuration of 2, the registration request receiving unit 291, the deletion request receiving unit 292, and the operation check request unit 293 are different. The configuration of the address conversion unit 26 is also the same as the configuration of the address conversion unit 26 in the first embodiment shown in FIG.
[0124]
The storage means 15 stores a provided service list.
[0125]
The provided service list is a list including port numbers corresponding to services provided to the terminal device 3 by the terminal device 1-x, and is set in advance by a user of the terminal device 1-x.
[0126]
The power supply operation monitoring means 11 monitors the power supply operation of the terminal device 1-x by the user. When the power supply ON operation is detected, the power supply operation monitoring means 11 notifies the registration request transmitting means 12 of the power supply ON. Is sent to the deletion request transmission means 13.
[0127]
When the registration request transmission unit 12 is notified of the power ON, the registration request transmission unit 12 refers to the provided service list in the storage unit 15 and the port number list including all the port numbers set in the provided service list and the terminal device 1-x. A registration request message including the address is generated, and the registration request message is transmitted to the relay apparatus 2 via the network 4.
[0128]
When the power-off notification is sent, the deletion request transmission unit 13 creates a deletion request message including the address of the terminal device 1 -x, and transmits the deletion request message to the relay device 2 via the network 4.
[0129]
The operation confirmation response means 14 receives the operation confirmation request message transmitted from the relay device 2 via the network 4 and, when receiving the operation confirmation request message, responds to the operation confirmation request message to the relay device 2. An operation confirmation response message is created, and the operation confirmation response message is transmitted to the relay apparatus 2 via the network 4.
[0130]
The registration request receiving unit 291 receives a registration request message transmitted from the terminal device 1-x via the network 4, and upon receiving the registration request message, generates an unused first entry identifier, An entry is created in which the field value is the first entry identifier, the address field value is the address included in the registration request message, and the port number field value is the port number list included in the registration request message. The entry is stored in the processing terminal registration table of the storage unit 27, and the operation check request unit 293 is notified of the activation of the terminal device corresponding to the address.
[0131]
The deletion request receiving unit 292 receives the deletion request message transmitted from the terminal device 1-x via the network 4, and when receiving the deletion request message, the value of the address field is read from the processing terminal registration table of the storage unit 27. Deletes all entries equal to the address included in the deletion request message, and notifies the operation check request means 293 of the termination of the terminal device corresponding to the address.
[0132]
The operation confirmation request unit 293 creates an operation confirmation request message, transmits the operation confirmation request message to the terminal device 1-x via the network 4, and responds to the operation confirmation request message from the terminal device 1-x. Wait for receipt of operation confirmation response message. Thereafter, if the operation confirmation response message is successfully received, the operation confirmation request unit 293 confirms that the terminal device 1-x is operating. After that, if reception of the operation confirmation response message fails, the operation confirmation requesting unit 293 considers that the terminal device 1-x has stopped, and the value of the address field is determined from the processing terminal registration table of the storage unit 27. Delete all entries whose address is equal to the address of the terminal device 1-x.
[0133]
The operation confirmation requesting unit 293 activates a timer immediately after transmission of the corresponding operation confirmation request message as a method for determining the reception failure of the operation confirmation response message, and sets the operation confirmation response message as a failure when the timer expires. A method or the like can be used. In addition, the operation check request unit 293 notifies the end of the terminal device 1-x after the activation of the terminal device 1-x is notified of the creation and transmission of the operation check request message to the terminal device 1-x. Or until it fails to receive the operation confirmation response message from the terminal device 1-x.
[0134]
Next, the operation of the second embodiment of the present invention will be described with reference to FIG. 8, FIG. 9, and FIG.
[0135]
When the user of the terminal device 1-x turns on the power of the terminal device 1-x that is stopped (step B1 in FIG. 9), the power operation monitoring means 11 detects an operation to turn on the power. Then, the power-on is notified to the registration request transmission means 12.
[0136]
The registration request transmitting unit 12 refers to the provided service list in the storage unit 15 and sends a registration request message including the port number list including all the port numbers set in the provided service list and the address of the terminal device 1-x. The registration request message is created and transmitted to the relay device 2 via the network 4 (step B2).
[0137]
The registration request message transmitted to the relay apparatus 2 is received by the registration request receiving unit 291. The registration request receiving unit 291 generates an unused first entry identifier, and the port included in the registration request message. From the number list and address, an entry is created in which the value of the entry identifier field is the first entry identifier, the value of the address field is the address, and the value of the port number field is the port number list. The data is stored in the processing terminal registration table of the storage unit 27, and further, the operation check request unit 293 is notified of the activation of the terminal device 1-x.
[0138]
At this time, the relay device 2 can relay the start of data communication from the terminal device 3 to the registered port number of the terminal device 1-x.
[0139]
When notified of the activation of the terminal device 1-x, the operation confirmation requesting unit 293 starts a confirmation operation for the terminal device 1-x (step B3). In other words, the operation confirmation request unit 293 creates an operation confirmation request message and transmits the operation confirmation request message to the terminal device 1-x via the network 4 (step B4).
[0140]
The operation confirmation request message is received by the operation confirmation response unit 14 of the terminal device 1-x. The operation confirmation response unit 14 creates an operation confirmation response message as a response to the operation confirmation request message, and the operation confirmation response message Is transmitted to the relay device 2 via the network 4 (step B5).
[0141]
The operation confirmation response message is received by the operation confirmation requesting means 293, and the operation confirmation requesting means 293 confirms that the terminal device 1-x is operating upon receipt of the operation confirmation response message (step B6).
[0142]
Thereafter, the operation confirmation requesting unit 293 continues to confirm that the terminal device 1-x is operating by periodically executing the steps B4 to B6.
[0143]
Thereafter, when the user of the terminal device 1-x turns off the power of the terminal device 1-x (step B7), the power operation monitoring means 11 detects an operation of turning off the power and deletes the power off. The request transmission means 13 is notified.
[0144]
The deletion request transmission means 13 creates a deletion request message including the address of the terminal device 1-x, and transmits the deletion request message to the relay device 2 via the network 4 (step B8).
[0145]
The delete request message transmitted to the relay device 2 is received by the delete request receiving means 292. The delete request receiving means 292 includes the value of the address field in the delete request message from the processing terminal registration table of the storage device 27. All entries equal to the address are deleted, and the operation confirmation requesting means 293 is notified of the termination of the terminal device 1-x.
[0146]
When the end of the terminal device 1-x is notified, the operation check requesting unit 293 stops the transmission of the operation check request message to the terminal device 1-x that has been periodically performed until then, and the terminal device 1-x The confirmation operation is terminated (step B9).
[0147]
The operation confirmation requesting unit 293 is a timer for waiting for reception of an operation confirmation response message that is a response to the operation confirmation request message immediately after the operation confirmation request message is transmitted during execution of the confirmation operation to the terminal device 1-x. This is because when the normal operation of the terminal device 1-x is stopped due to a malfunction or abnormal stop of the control system of the terminal device 1-x, the relay device 2 detects the stop of the operation of the terminal device 1-x. Used to do. That is, in the confirmation operation by the operation confirmation request unit 293 performed after the normal operation of the terminal device 1-x is stopped (step C1 in FIG. 10), the operation confirmation request unit 293 transmits an operation confirmation request message ( In step C2), a timer is started (step C3), but the timer expires without receiving an operation confirmation response message as a response to the operation confirmation request message (step C4). At this time, the operation confirmation request unit 293 detects that the operation of the terminal device 1-x has stopped (step C5), and the value of the address field is the value of the terminal device 1-x from the processing terminal registration table of the storage unit 27. All entries equal to the address are deleted, and the confirmation operation to the terminal device 1-x is terminated (step C6).
[0148]
When receiving an IP packet from the network 5, the relay device 2 operates in the same manner as in the above-described first embodiment.
[0149]
As described above, in the present embodiment, the provided service list set in the terminal device 1-x is registered in the relay device 2 when the terminal device 1-x is activated, and is transmitted from the relay device 2 when the terminal device 1-x is terminated. In order to delete the information, the information depending on the setting of the terminal device 1-x can be automatically registered in the relay device 2, and when the terminal device 1-x operates, the IP packet from the network 5 is transmitted to the terminal device 1- However, when the terminal device 1-x is not operating, it is possible not to relay the IP packet from the network 5 to the terminal device 1-x.
[0150]
In the present embodiment, when the terminal device 1-x is powered on, the relay device 2 is notified of the set of port numbers constituting the provided service list stored in the storage means 15, and each port number of the set of port numbers is stored. This is stored in the processing terminal registration table of the means 27. This is because when the terminal device 1-x is operating, the user changes the contents of the provided service list stored in the storage means 15, and is changed at that time. The relay device 2 is notified of the set of port numbers constituting the provided service list, and all entries whose address field value stored in the processing terminal registration table of the storage means 27 is the address of the terminal device 1-x are deleted. Each port number of the set of port numbers may be stored in the processing terminal registration table of the storage means 27.
[0151]
In the embodiment of the present invention, the case where there is one terminal device connected to the network 5 has been described. However, the present invention can be similarly implemented even when there are a plurality of terminal devices connected to the network 5.
[0152]
In the embodiment of the present invention, a terminal device (terminal device 1-x) connected to a network different from the global network (referred to as a non-global network), and a terminal device connected to the global network (terminal device 3) In the communication system in which a plurality of non-global networks are each connected to a network having a different address system by the relay device according to the embodiment of the present invention, any communication connected to any non-global network is described. Communication between the terminal devices is also realized in the same manner. That is, in the communication system shown in FIG. 7, communication between arbitrary terminal devices is possible. This is because the terminal device (terminal device A) connected to the i-th non-global network (where i is any one of 1, 2,..., N) to the j-th non-global network (where j is When transmitting a packet for starting a communication session to a terminal device (terminal device B) connected to any one of 1, 2,..., N and j ≠ i), the i-th relay This is because the operations of the device with respect to the j-th relay device and the terminal device B are equal to those of the terminal device 3 in the embodiment of the present invention. However, when the relay network is a non-global network, the address system of the relay network must be different from both the address system of the i-th non-global network and the address system of the j-th non-global network.
[0153]
Further, in the embodiment of the present invention, the case where the terminal device 1-x is the terminal device on the other side that knows the name when the terminal device 3 starts data communication has been described. Only the name of the relay device 2 may be known, and address resolution may be performed by designating the name of the relay device 2.
[0154]
Next, a third embodiment of the present invention will be described with reference to FIGS.
[0155]
Referring to FIG. 11, in the third embodiment of the present invention, terminal device 1-x transmits capability information in addition to the configuration of terminal device 1-x in the second embodiment shown in FIG. Means 16 and the relay device 2 has capability information receiving means 294 in addition to the configuration of the relay device 2 in the second embodiment shown in FIG. 8, and referring to FIG. The configuration of the conversion device 26 is different in that it includes destination selection means 265 in addition to the configuration of the address conversion device 26 in the first embodiment shown in FIG. Further, the processing capability information of the terminal device 1-x is stored in the storage unit 15, and a processing capability information field is added to the entry of the processing terminal registration table stored in the storage unit 27 as shown in FIG. .
[0156]
The processing capability information of the terminal device 1-x stored in the storage unit 15 is information relating to the processing capability of the terminal device 1-x. For example, the processing capability of the CPU and various media such as text, sound, and image are stored. There are things related to processing and display capabilities.
[0157]
In the processing terminal registration table stored in the storage unit 27, the field configuration constituting the entry is the terminal device 1 in addition to the field configuration in the first embodiment and the second embodiment described above. -It has a processing capability information field for storing processing capability information of x, the address of the terminal device 1-x, the port number corresponding to the service provided by the terminal device 1-x, and the processing capability information of the terminal device 1-x The point of managing correspondence is different.
[0158]
When the power supply operation monitoring unit 11 is notified of the power ON, the capability information transmission unit 16 reads the processing capability information of the terminal device 1-x stored in the storage unit 15, and the processing capability information and the terminal device 1- A capability notification message including the address of x is created, and the capability notification message is transmitted to the relay apparatus 2.
[0159]
The capability information receiving unit 294 receives the capability notification message transmitted from the terminal device 1-x, and the terminal device 1-x whose address field value is included in the capability notification message from the processing terminal registration table of the storage unit 27. An equal entry is searched, and the correspondence of the processing capability information included in the capability notification message is stored in the processing capability information field of the entry.
[0160]
When one or more first entry identifiers and one IP packet are notified from the registration search unit 263, the destination selection unit 265 receives the one notified from the processing terminal registration table of the storage unit 27, or Then, an entry identified by a plurality of first entry identifiers is read, and further, the processing capability information of each terminal device is read from the read entry, and the read processing capability information is compared to determine an optimum terminal device. The registration unit 264 is notified of the selected address / port number pair and the IP packet.
[0161]
As a method of selecting one terminal device from the processing capability information of a plurality of terminal devices, there is a method of selecting a terminal device having the highest processing capacity.
[0162]
Next, the operation of the third exemplary embodiment of the present invention will be described with reference to FIG.
[0163]
When the user of the terminal device 1-x turns off the power of the terminal device 1-x (step D1 in FIG. 14), the power operation monitoring is performed as in the operation of the second embodiment described above. The means 11 notifies the registration request transmission means 12 that the power is ON, and the registration request transmission means 12 includes a list of port numbers corresponding to the address of the terminal device 1-x and the service provided by the terminal device 1-x. Is transmitted to the relay device 2 (step D2), and the registration request receiving unit 291 of the relay device 2 receives the registration request message and processes the storage unit 27 including the port number list and address included in the registration request message. An entry of the terminal registration table is created, the entry is stored in the processing terminal registration table of the storage unit 27, and the operation check of the terminal device 1-x by the operation check request unit 293 is started. It is (step D3).
[0164]
At the same time, the power source operation monitoring unit 11 of the terminal device 1-x notifies the capability information transmission unit 16 of power ON.
[0165]
When the power information is notified, the capability information transmitting unit 16 reads the processing capability information of the terminal device 1-x stored in the storage unit 15 and includes the processing capability information and the address of the terminal device 1-x. A capability notification message is created, and the capability notification message is transmitted to the relay device 2 (step D4).
[0166]
The capability notification message transmitted to the relay apparatus 2 is received by the capability information receiving unit 294, and the capability information receiving unit 294 includes a terminal whose address field value is included in the capability notification message from the processing terminal registration table of the storage unit 27. An entry equal to the device 1-x is searched, and the processing capability information included in the capability notification message is stored in the processing capability information field of the entry.
[0167]
Thereafter, when the relay device 2 receives an IP packet from the network 5, the IP packet is received by the packet receiving unit 23, and the packet receiving unit 23 performs the same operation as in the above-described first embodiment. The IP packet is passed to the correspondence search unit 261. Similarly, the correspondence search unit 261 also sends the value of the second socket field and the value of the third socket field from the correspondence management table of the storage unit 27, respectively. An entry that is equal to the set of the address and the source port number and the set of the destination address and the destination port number is searched.
[0168]
Correspondence search means 261 performs the same processing as in the first embodiment described above, regardless of whether the entry is detected by the search or not. In particular, since the subsequent processing when the entry is detected is the same as the operation of the first embodiment described above, description thereof is omitted here.
[0169]
When the entry is not detected by the search, the registration search means 263 determines that the value of the port number field is the IP packet from the processing terminal registration table of the storage means 27, as in the operation of the first embodiment described above. In this case, when one or a plurality of entries are detected as a result of the search, all the first entry identifiers of the detected entries and the IP packet are destined as destinations. It passes to the selection means 265.
[0170]
The destination selection unit 265 reads the entry identified by the first entry identifier passed from the processing terminal registration table of the storage unit 27, and further reads the processing capability information of each terminal device from the read entry. The processing capability information is compared to select one optimal terminal device. For example, when the contents of the processing terminal registration table are as shown in FIG. 13, the destination port number of the IP packet is 10,000, and the notified first entry identifiers are 1 and 2, here the entry identifier field Since the CPU processing capability of the terminal device 1-1 having the value “1” is superior to the CPU processing capability of the terminal device 1-2 having the value “2” in the entry identifier field, the destination selection unit 265 selects the terminal device 1— 1 is selected, and the first entry identifier “1” and the IP packet are transferred to the registration unit 264.
[0171]
The processing from when the entry identifier and the IP packet are transferred to the registration unit 264 until the packet is transmitted to the terminal device 1-x is the same as the operation of the first embodiment described above. Description of is omitted.
[0172]
Further, the entry of the terminal device 1-x stored in the processing terminal registration table of the storage means 27 indicates that the terminal device 1-x is normally turned off by the relay device 2 when the power of the terminal device 1-x is turned off or for some reason. When communication becomes impossible, the deletion request receiving unit 292 or the operation confirmation requesting unit 293 deletes the same as in the operation of the second embodiment described above.
[0173]
As described above, when the relay device 2 receives an IP packet for starting data communication from the network 5, a terminal device that provides a service corresponding to a port number equal to the destination port number of the IP packet is registered in the multiple relay device 2. Even if the destination selection unit 265 selects one terminal device based on the processing capability information of the plurality of terminal devices, the terminal device that provides the service requested by the IP packet is optimized. Terminal devices can be selected.
[0174]
In addition, the processing capability information of the terminal device 1-x is stored in the storage unit 15 of the terminal device 1-x, and the capability information transmission unit 16 makes the processing capability information every time the terminal device 1-x is powered on. To the relay device 2, the capability information receiving unit 294 registers the processing capability information in the processing terminal registration table of the storage unit 27, and the terminal device 1-x is turned off, or When the normal communication with the relay device 2 cannot be performed due to the reason, the deletion request receiving unit 292 or the operation confirmation requesting unit 293 deletes the entry related to the terminal device 1-x from the processing terminal registration table, so that the terminal device When 1-x is not operating, or when the relay device 2 cannot communicate with the terminal device 1-x, an IP packet for starting data communication received from the network 5 is transmitted to the terminal device 1- It is possible to avoid having to relay on.
[0175]
In the embodiment of the present invention, the case where there is one terminal device connected to the network 5 has been described. However, the present invention can be similarly implemented even when there are a plurality of terminal devices connected to the network 5.
[0176]
In the embodiment of the present invention, a terminal device (terminal device 1-x) connected to a network different from the global network (referred to as a non-global network), and a terminal device connected to the global network (terminal device 3) In the communication system in which a plurality of non-global networks are each connected to a network having a different address system by the relay device according to the embodiment of the present invention, any communication connected to any non-global network is described. Communication between the terminal devices is also realized in the same manner. That is, in the communication system shown in FIG. 7, communication between arbitrary terminal devices is possible. This is because the terminal device (terminal device A) connected to the i-th non-global network (where i is any one of 1, 2,..., N) to the j-th non-global network (where j is When transmitting a packet for starting a communication session to a terminal device (terminal device B) connected to any one of 1, 2,..., N and j ≠ i), the i-th relay This is because the operations of the device with respect to the j-th relay device and the terminal device B are equal to those of the terminal device 3 in the embodiment of the present invention. However, when the relay network is a non-global network, the address system of the relay network must be different from both the address system of the i-th non-global network and the address system of the j-th non-global network.
[0177]
Further, in the embodiment of the present invention, the case where the terminal device 1-x is the terminal device on the other side that knows the name when the terminal device 3 starts data communication has been described. Only the name of the relay device 2 may be known, and address resolution may be performed by designating the name of the relay device 2.
[0178]
Next, a fourth embodiment of the present invention will be described with reference to FIG. 1, FIG. 15, FIG. 16, and FIG.
[0179]
In the first embodiment of the present invention, it is assumed that the port number system in the network 4 and the port number system in the network 5 are equal. On the other hand, in the present embodiment, an entry comprising a first port number field for storing the port number of the network 4 in the storage means of the relay apparatus and a second port number field for storing the port number field of the network 5 is provided. The port table manages the correspondence between the port number of the network 4 and the port number of the network 5 corresponding to the same service, and each means of the relay device uses the first port as the port number on the network 4 side. The second field is referred to as the port number on the network 5 side with reference to the number field. Thereby, even when the port number systems of the network 4 and the network 5 are different, the terminal device 1-x and the terminal device 3 can communicate.
[0180]
The configuration of the fourth embodiment of the present invention is the same as that of the first embodiment of the present invention shown in FIG. 1 except that the storage means 27 includes a port table, the address conversion means 25 and the address. The internal structure of the conversion means 26 is different.
[0181]
FIG. 17 shows the configuration of a processing terminal registration table, a correspondence management table, and a port table, which are tables provided in the storage means 27 in the present embodiment.
[0182]
As shown in FIG. 17, the configuration, usage, and usage of the processing terminal registration table and the correspondence management table are the same as those of the processing terminal registration table and the correspondence management table in the first embodiment of the present invention. However, the port number in the network 4 is stored in the port number field of the processing terminal registration table, and the port number in the network 4 is stored in the second socket field in the port number indicated in the first socket field of the correspondence management table. The port number of the network 5 is stored in the port number indicated and the port number indicated in the third socket field.
[0183]
The port table has an entry including a first port number field for storing the port number of the network 4 and a second port number field for storing the port number field of the network 5, and the port of the network 4 corresponding to the same service. The correspondence between the number and the port number of the network 5 is stored in advance. For example, assuming that the port number corresponding to the FTP service has a value of 10 in the network 4 and a value of 20 in the network 5, these correspondences are stored as shown in (3) of FIG.
[0184]
FIG. 15 shows the configuration of the address conversion means 25 in the present embodiment.
[0185]
As shown in FIG. 15, the address conversion unit 25 includes a correspondence search unit 2251, a packet conversion unit 2252, and a registration unit 2254. In the first embodiment of the present invention, the correspondence search means 251 of the address conversion means 25 is changed to the correspondence search means 2251, the packet conversion means 252 is changed to the packet conversion means 2252, and the registration means 254 is changed to the registration means 2254. It is characterized by being.
[0186]
The correspondence search unit 2251 receives the packet passed from the packet receiving unit 21 to the address converting unit 25. When the packet is received from the packet receiving unit 21, the correspondence searching unit 2251 first searches the port table of the storage unit 27 for an entry in which the value of the first port number field is equal to the value of the destination port number of the packet. .
[0187]
If the entry is not detected by the search, the correspondence search unit 2251 discards the packet and ends the process.
[0188]
When the entry is detected by the search, the correspondence search unit 2251 has a value of the first socket field equal to the set of the source address and the source port number of the packet from the correspondence management table of the storage unit 27. An entry having a value equal to the set of the destination address of the packet and the value of the second port number field of the port table entry detected in the search of the port table is searched for. .
[0189]
When the entry is detected from the correspondence management table by the search, the correspondence search unit 2251 passes the packet and the second entry identifier stored in the entry identifier field of the entry to the packet conversion unit 2252. When the entry is not detected by the search, the correspondence search unit 2251 passes the packet to the registration unit 2254.
[0190]
When the packet conversion means 2252 receives the packet and the second entry identifier, the packet conversion means 2252 converts the packet into an IP packet, and the source address and source port number of the IP packet are identified from the second entry identifier. The IP address and port number values shown in the third socket field of the corresponding management table entry are rewritten, and the destination address and destination port number of the IP packet are changed to the IP address shown in the second socket field of the entry. The address and port number are rewritten, and the rewritten IP packet is transferred to the packet transmission means 22.
[0191]
When the registration unit 2254 receives the packet, the registration unit 2254 searches the port table for an entry having the destination port number of the packet as the value of the first port number field, reads the second port number corresponding to the entry, and is unused. The second entry identifier is generated and one port number of the unused network 5 is selected. Then, the registration means 2254 uses the generated second entry identifier as the value of the entry identifier field, sets the combination of the source address and source port number of the packet as the value of the first socket field, and sets the destination of the packet. The combination of the address and the value of the second port number field of the entry of the port table detected by the search is set as the value of the second socket field, and the IP address of the network 5 of the relay device 2 and the selected port number An entry having the set as the value of the third socket field is created, and the entry is stored in the correspondence management table of the storage means 27. Further, a port table entry is created with the source port number of the packet as the value of the first port number field and the selected port number as the value of the second port number field. Register in the table. Then, the registration unit 2254 passes the packet and the second entry identifier to the packet conversion unit 2252.
[0192]
FIG. 16 shows the configuration of the address conversion means 26 in the present embodiment. As shown in FIG. 16, the address conversion unit 26 includes a correspondence search unit 261, a packet conversion unit 2262, a registration search unit 2263, and a registration unit 2264. In the first embodiment of the present invention, the packet conversion unit 262 of the address conversion unit 26 is changed to the packet conversion unit 2262, the registration search unit 263 is changed to the registration search unit 2263, and the registration unit 264 is also changed to the registration unit 2264. It is characterized by being.
[0193]
Upon receiving the IP packet and the second entry identifier, the packet conversion unit 2262 searches the port table of the storage unit 27 for an entry having the source port number of the IP packet in the second port number field, and detects it. The value of the first port number field of the entered port table entry is read. Then, the packet conversion unit 2262 converts the IP packet into a packet of the network 4, and sets the first address of the entry of the correspondence management table identified from the second entry identifier with the destination address and the destination port number of the packet. The IP address and port number of the socket are rewritten, and the transmission source port number of the packet is rewritten to the value of the first port number field of the read port table entry. To pass.
[0194]
When receiving the IP packet, the registration search means 2263 searches the port table for an entry having the destination port number of the IP packet as the value of the second port number field.
[0195]
If the entry is not detected from the port table by the search, the registration search means 2263 discards the IP packet and ends the processing.
[0196]
When the entry is detected from the port table by the search, the registration search unit 2263 further refers to the processing terminal registration table, and uses the first port number of the detected port table entry as the value of the port number field. Search for entries with field values.
[0197]
If the entry is not detected from the processing terminal registration table by the search, the registration search means 2263 discards the IP packet and ends the processing.
[0198]
When the entry is detected from the processing terminal registration table by the search, the registration search means 2263 passes the value of the first entry identifier stored in the entry identifier field of the entry and the IP packet to the registration means 2264.
[0199]
When the first entry identifier and the IP packet are passed, the registration means 2264 receives the address and port number stored in the address field of the entry in the processing terminal registration table of the storage means 27 identified by the first entry identifier. The port number stored in the field is read, an unused second entry identifier is generated, the second entry identifier is set as the value of the entry identifier field, and the set of the address and the port number is set to the first The socket field value of the IP packet, a pair of the source address and source port number of the IP packet as a second socket field, and a pair of the destination address and destination port number of the IP packet as a value of the third socket field. The entry is created and stored in the correspondence management table of the storage means 27. Further, one port number of the unused network 4 is selected, the selected port number is set as the value of the first port number field, and the source port number of the IP packet is set as the value of the second port number field. The port table entry is created, and the port table entry is registered in the port table. Then, the registration unit 2264 passes the IP packet and the second entry identifier to the packet conversion unit 2262.
[0200]
Next, the operation of the fourth exemplary embodiment of the present invention will be described.
[0201]
There are two types of data communication executed in the fourth embodiment of the present invention: a case where the terminal device 1-x starts a communication session and a case where the terminal device 3 starts. In any case, it is assumed that the correspondence between the port number of the network 4 corresponding to the service used in the communication session to be started and the port number of the network 5 is registered in the port table in advance.
[0202]
First, the operation when the terminal device 1-x starts a communication session will be described.
[0203]
Here, first, the operation when the terminal device 1-x starts a communication session for using the service in order to use the service provided by the terminal device 3 will be described. In the network 4 corresponding to the service, The port number is P4, the port number in the network 5 is P2, and the relay device 2 indicates that this is indicated by the first port number field value P4 and the second port number field value in the port table. It is assumed that an entry that is P2 is registered. Further, it is assumed that the terminal device 1-x uses the port having the port number P1.
[0204]
The terminal device 1-x sends the first packet (referred to as packet A) in order to use the service. In the packet A, the destination address is A2-1, the destination port number is P4, the source address is A1-x, and the source port number is P1.
[0205]
The packet A sent from the terminal device 1-x is received by the packet receiving means 21 of the relay apparatus 2 via the network 4, and the packet receiving means 21 passes the packet A to the address converting means 25.
[0206]
The packet A passed to the address conversion unit 25 is received by the correspondence search unit 2251.
[0207]
When the packet A is passed, the correspondence search unit 2251 first searches the port table of the storage unit 27 for an entry in which the value of the first port number field is equal to the destination port number value P4 of the packet.
[0208]
In this case, since the entry exists in the port table, the entry is detected by the search.
[0209]
Then, the correspondence search means 2251 determines from the correspondence management table of the storage means 27 that the value of the first socket field is equal to the set [A1-x, P1] of the source address and source port number of the packet A, and The value of the second socket field is equal to the set [A2-1, P2] of the destination address of the packet A and the value of the second port number field of the port table entry detected in the port table search. Search for entries with values.
[0210]
In this case, since the entry does not exist in the correspondence management table, the entry is not detected by the search.
[0211]
Therefore, the correspondence search unit 2251 passes the packet A to the registration unit 2254.
[0212]
Upon receiving the packet A, the registration unit 2254 searches the port table for an entry having the destination port number P4 of the packet A as the value of the first port number field, and generates an unused second entry identifier. Then, one port number of the unused network 5 is selected (the port number of the selected network 5 is P5). Then, the registration means 2254 uses the generated second entry identifier as the value of the entry identifier field, and sets the pair [A1-x, P1] of the source address and source port number of the packet A to the first socket field. And the pair [A2-1, P2] of the second port number field of the port table entry detected by the search and the destination address of the packet A is set as the value of the second socket field, and the relay An entry having the set [A2-2, P5] of the IP address of the network 2 of the apparatus 2 and the selected port number as the value of the third socket field is created, and the entry is stored in the correspondence management table of the storage means 27. Remember. Furthermore, a port table entry is created with the source port number P1 of the packet A as the value of the first port number field and the selected port number P5 as the value of the second port number field, Register the entry in the port table. Then, the registration unit 2254 passes the packet A and the second entry identifier to the packet conversion unit 2252.
[0213]
The packet converting means 2252 receives the packet A and the second entry identifier, converts the packet A into an IP packet, and sets the source address and source port number of the IP packet to the second entry, respectively. The IP address A2-2 and port number P5 indicated in the third socket field of the entry of the correspondence management table identified from the identifier are rewritten, and the destination address and destination port number of the IP packet are changed to the first address of the entry. 2 is rewritten to the IP address A2-1 and the port number P2 shown in the socket field 2 and the rewritten IP packet (referred to as IP packet B) is passed to the packet transmitting means 22. At this time, in the IP packet B, the destination address is A2-1, the destination port number is P2, the source address is A2-2, and the source port number is P5.
[0214]
The IP packet B passed to the packet transmission unit 22 is transmitted to the terminal device 3 via the network 5. Since the destination address of the IP packet B is A2-1, the destination port number is P2, the transmission source address is A2-2, and the transmission source port number is P5, in the terminal device 3, the communication session is address A2-2. The IP packet transmitted from the terminal device 3 relating to the communication session is interpreted as a communication session between the port P5 of the terminal device and the port P2 of the own terminal device, and the destination address is A2-2 and the destination port number is P5. The source address is A2-1 and the source port number is P2.
[0215]
Thereafter, when the relay device 2 receives the packet (referred to as packet C) of the communication session from the network 4, it operates in the same manner as the processing of the packet A described above, but the correspondence management table retrieval processing of the correspondence retrieval means 2251. In this case, the correspondence search means 2252 then reads from the correspondence management table of the storage means 27 that the value of the first socket field is a set [A1-x, P1] of the source address and source port number of the packet C. A pair [A2-1, P2] in which the second socket field value is equal and the destination address of the packet C and the second port number field value of the port table entry detected in the port table search are Find equal entries. Then, the correspondence search unit 2251 passes the packet C and the second entry identifier stored in the entry identifier field of the entry directly to the packet conversion unit 2252 without going through the registration unit 2254. The subsequent processing is performed in the same manner as in the case of the packet A, and the packet C has the same source address A2-2, source port number P5, destination address A2-1, destination port number P2 as the IP packet B. (The converted IP packet is called an IP packet D), and is sent to the terminal device 3 via the network 5 as the converted IP packet D.
[0216]
Further, as described above, the IP packet (referred to as IP packet E) of the communication session transmitted from the terminal device 3 after processing the packet A and the IP packet B has a destination address of A2-2 and a destination port number. Is P5, the source address is A2-1, and the source port number is P2, and is received by the packet receiving unit 23 of the relay apparatus 2 via the network 5, and the packet receiving unit 23 converts the IP packet E into the address converting unit. 26.
[0217]
The IP packet E passed to the address translation unit 26 is received by the correspondence search unit 261. Correspondence search means 261 determines from the correspondence management table of storage means 27 that the value of the second socket field is equal to the pair [A2-1, P2] of the source address and source port number of IP packet E, and An entry in which the value of the third socket field is equal to the set [A2-2, P5] of the destination address and destination port number of the IP packet is searched.
[0218]
In this case, since the entry registered at the time of packet A processing exists in the correspondence management table, and the entry corresponds to the entry to be searched, the correspondence search means 261 uses the IP packet E and the entry identifier of the entry as a packet. It passes to the conversion means 2262.
[0219]
Upon receiving the IP packet E and the second entry identifier, the packet conversion unit 2262 searches the port table of the storage unit 27 for an entry having the source port number P2 of the IP packet in the second port number field. Then, the value P4 of the first port number field of the detected port table entry is read. Then, the packet converting means 2262 converts the IP packet E into a packet of the network 4, and the first address of the entry of the correspondence management table identified from the second entry identifier by the destination address and the destination port number of the packet. Is rewritten to the IP address A1-x and the port number value P1, and the transmission source port number of the packet is rewritten to the read P4, and the rewritten packet (referred to as packet F) is sent to the packet transmission means 24. hand over.
[0220]
When the packet transmission means 24 is passed the packet F, the packet transmission means 24 sends the packet F to the network 4 and the packet F is received by the terminal device 1-x.
[0221]
Next, an operation when the terminal device 3 starts a communication session will be described.
[0222]
Here, the operation when the terminal device 3 starts a communication session for using the service in order to use the service provided by the terminal device 1-x will be described. In the network 4 corresponding to the service, The port number is P1, the port number in the network 5 is P5, and in order to indicate this correspondence to the relay device 2, the value of the first port number field is P1 and the value of the second port number field is in the port table. It is assumed that the entry P5 is registered and the correspondence between the address A1-x and the port number P1 is stored in the processing terminal registration table. Further, it is assumed that the terminal device 3 uses the port having the port number P2.
[0223]
Before the terminal device 3 transmits the first IP packet (referred to as IP packet A) to use the above service, first, the terminal device 1-x first operates in the same manner as the operation of the first embodiment of the present invention. Address resolution is performed from the name, and it is known that the destination IP address of the IP packet addressed to the terminal device 1-x is A2-2, but the description is omitted here.
[0224]
Next, the terminal device 3 sends out the IP packet A. The IP packet A has a destination address A2-2, a destination port number P5, a source address A2-1, and a source port number P2.
[0225]
The IP packet A is received by the packet receiving unit 23 of the relay apparatus 2 via the network 5, and the packet receiving unit 23 passes the IP packet A to the address converting unit 26.
[0226]
The IP packet A passed to the address translation unit 26 is received by the correspondence search unit 261. When the correspondence search means 261 receives the IP packet A, the correspondence management table of the storage means 27 indicates that the values of the second socket field and the third socket field are the sender address and sender of the IP packet A, respectively. An entry having a value equal to the set [A2-1, P2] of the port number and the set [A2-2, P5] of the destination address and destination port number of the IP packet A is searched.
[0227]
In this case, since the entry does not exist in the correspondence management table, the entry is not detected by the search.
[0228]
The correspondence search unit 261 passes the IP packet A to the registration search unit 2263 because the entry has not been detected in the search.
[0229]
Upon receiving the IP packet A, the registration search means 2263 searches the port table for an entry having the destination port number P5 of the IP packet A as the value of the second port number field.
[0230]
In this case, as described above, an entry in which the value of the first port number field is P1 and the value of the second port number field is P5 is registered in the port table, and the entry is detected.
[0231]
Since the entry is detected from the port table by the search, the registration search means 2263 further refers to the processing terminal registration table, and uses the first port number of the detected port table entry as the value of the port number field. The entry having the field value P1 is searched.
[0232]
Also in this case, as described above, the correspondence between the address A1-x and the port number P1 is stored in the processing terminal registration table, and the entry is detected.
[0233]
Since the entry is detected from the processing terminal registration table by the search, the registration search means 2263 sends the value of the first entry identifier stored in the entry identifier field of the entry and the IP packet A to the registration means 2264. hand over.
[0234]
When the registration means 2264 is passed the first entry identifier and the IP packet A, the address stored in the address field of the entry in the processing terminal registration table of the storage means 27 identified by the first entry identifier. A1-x and the port number P1 stored in the port number field are read out, an unused second entry identifier is generated, the second entry identifier is set as the value of the entry identifier field, and the address and the address A set of port numbers [A1-x, P1] is set as the value of the first socket field, and a set of the source address and source port number of the IP packet A [A2-1, P2] is set in the second socket field. And a pair [A2-2, P5] of the destination address and destination port number of the IP packet is set as the value of the third socket field. Create an entry, and registers the entry in the corresponding management table of the storage unit 27. Furthermore, one port number of the unused network 4 is selected (the selected port number is P4), the selected port number P4 is set as the value of the first port number field, and the IP packet A A port table entry is created with the source port number P2 as the value of the second port number field, and the port table entry is registered in the port table. Then, the registration unit 2264 passes the IP packet A and the second entry identifier to the packet conversion unit 2262.
[0235]
When the packet converting unit 2262 receives the IP packet A and the second entry identifier, the packet converting unit 2262 has an entry having the source port number P2 of the IP packet A in the second port number field from the port table of the storage unit 27. And the value P4 of the first port number field of the detected port table entry is read. Then, the packet conversion unit 2262 converts the IP packet A into a packet of the network 4, and sets the first address of the entry of the correspondence management table identified from the second entry identifier with the destination address and the destination port number of the packet. The socket IP address A1-x and the port number P1 are rewritten, the transmission source port number of the packet is rewritten to the read P4, and the rewritten packet (referred to as packet B) is sent to the packet transmission means 24. hand over.
[0236]
When the packet B is delivered, the packet transmission means 24 sends the packet B to the network 4 and the packet B is received by the terminal device 1-x. Since the destination address of the packet B is A1-x, the destination port number is P1, the transmission source address is A2-1, and the transmission source port number is P4, in the terminal device 1-x, the communication session is address A2- A packet transmitted from the terminal device 1-x relating to the communication session is interpreted as a communication session between the port P4 of the terminal device 1 and the port P1 of the own terminal device, and the destination address is A2-1. Is P4, the source address is A1-x, and the source port number is P1.
[0237]
Thereafter, when receiving the IP packet (referred to as IP packet C) of the communication session from the network 5, the relay device 2 operates in the same manner as the processing of the IP packet A described above, but searches the correspondence management table of the correspondence search means 261. In this processing, the correspondence search unit 261 now determines that the values of the second socket field and the third socket field are the source address and source port number of the IP packet C from the correspondence management table of the storage unit 27, respectively. Entry [A2-1, P2] and an entry having a value equal to the destination address and destination port number set [A2-2, P5] of the IP packet C are detected. Then, the correspondence detection unit 261 directly transmits the IP packet C and the second entry identifier stored in the entry identifier field of the entry without using the registration search unit 2263 and the registration unit 2264. 2262. Subsequent processing is performed in the same manner as in the case of the IP packet A, and the IP packet C has the same source address A2-2, source port number P4, destination address A1-x, destination port as the packet B. The packet is converted into a packet having the number P1 (the converted packet is called a packet D), and the converted packet D is sent to the terminal device 1-x via the network 4.
[0238]
Further, as described above, the packet (referred to as packet E) of the communication session sent from the terminal device 1-x after processing the IP packet A and packet B has the destination address A2-1 and the destination port number. Is P4, the source address is A1-x, and the source port number is P1, and is received by the packet receiving unit 21 of the relay apparatus 2 via the network 4, and the packet receiving unit 21 converts the packet E into the address converting unit 25. To pass.
[0239]
The packet E passed to the address translation means 25 is received by the correspondence search means 2251. When the packet E is passed, the correspondence search means 2251 first searches the port table of the storage means 27 for an entry whose value of the first port number field is equal to the destination port number value P4 of the packet E.
[0240]
In this case, in the port table, there is an entry registered at the time of the IP packet A processing, and the entry corresponds to the entry to be searched. Therefore, the correspondence search means 2251 further reads from the correspondence management table of the storage means 27. The value of the first socket field is equal to the source address and source port number pair [A1-x, P1] of the packet E, and the value of the second socket field is the destination address of the packet E. An entry having a value equal to the value set [A2-1, P2] in the second port number field of the port table entry detected in the port table search is searched.
[0241]
In this case, since the entry registered at the time of processing the IP packet A exists in the correspondence management table and the entry corresponds to the entry to be searched, the correspondence search means 2251 stores the packet E and the entry identifier field of the entry. The stored second entry identifier is transferred to the packet converting means 2252.
[0242]
When the packet conversion unit 2252 receives the packet E and the second entry identifier, the packet conversion unit 2252 converts the packet E into an IP packet, and sets the source address and the source port number of the IP packet to the second entry. The IP address A2-2 and port number P5 indicated in the third socket field of the entry of the correspondence management table identified from the identifier are rewritten, and the destination address and destination port number of the IP packet are changed to the first address of the entry. 2 is rewritten to the IP address A2-1 and the port number P2 shown in the socket field 2, and the rewritten IP packet (referred to as IP packet F) is passed to the packet transmitting means 22.
[0243]
When receiving the IP packet F, the packet transmission means 22 sends the IP packet F to the network 5, and the IP packet is received by the terminal device 3.
[0244]
In the embodiment of the present invention, the case where there is one terminal device connected to the network 5 has been described. However, the present invention can be similarly implemented even when there are a plurality of terminal devices connected to the network 5.
[0245]
In the embodiment of the present invention, a terminal device (terminal device 1-x) connected to a network different from the global network (referred to as a non-global network), and a terminal device connected to the global network (terminal device 3) In the communication system in which a plurality of non-global networks are each connected to a network having a different address system by the relay device according to the embodiment of the present invention, any communication connected to any non-global network is described. Communication between the terminal devices is also realized in the same manner. That is, in the communication system shown in FIG. 7, communication between arbitrary terminal devices is possible. This is because the terminal device (terminal device A) connected to the i-th non-global network (where i is any one of 1, 2,..., N) to the j-th non-global network (where j is When transmitting a packet for starting a communication session to a terminal device (terminal device B) connected to any one of 1, 2,..., N and j ≠ i), the i-th relay This is because the operations of the device with respect to the j-th relay device and the terminal device B are equal to those of the terminal device 3 in the embodiment of the present invention. However, when the relay network is a non-global network, the address system of the relay network must be different from both the address system of the i-th non-global network and the address system of the j-th non-global network.
[0246]
Further, in the embodiment of the present invention, the case where the terminal device 1-x is the terminal device on the other side that knows the name when the terminal device 3 starts data communication has been described. Only the name of the relay device 2 may be known, and address resolution may be performed by designating the name of the relay device 2.
[0247]
Further, in the fourth embodiment of the present invention, the first embodiment of the present invention is different from the configuration of FIG. 1 in that the storage means 27 includes a port table, and the address conversion means 25 and the address conversion means 26. 8 and 11 are the second and third embodiments, the storage means 27 is provided with a port table, and the address conversion means 25 and the address are similarly provided. By making the internal structure of the conversion unit 26 different, the correspondence search unit 251 of the address conversion unit 25 and the registration search unit 263 of the address conversion unit 26 search the processing terminal registration table after searching the port table. Can be applied.
[0248]
Next, an embodiment of a medium that records the communication program of the present invention will be described. In the present embodiment, the terminal device 1-x and the relay device 2 according to the first, second, third, and fourth embodiments of the present invention each include a data processing device and a storage device, and further a communication program. (Not shown in particular). This recording medium may be a magnetic disk, semiconductor memory, CD-ROM or other recording medium.
[0249]
The communication program for controlling the relay device 2 is read from the recording medium into the storage device of the relay device 2, and the processing terminal registration table and the correspondence management table are stored in the storage unit 27. In the medium embodiment corresponding to the third embodiment, a processing terminal registration table including capability information is further stored, and in the medium embodiment corresponding to the fourth embodiment, further, A port table is stored.
[0250]
Then, the data processing device generates packet receiving means 21 and 23, packet transmitting means 22 and 24, address conversion means 25 and 26, and address inquiry response means 28, and controls their operations. In the medium embodiment corresponding to the second embodiment, a registration request receiving unit 291, an operation confirmation requesting unit 293, and a deletion request receiving unit 292 are further generated to correspond to the third embodiment. In the embodiment of the medium, the capability information receiving means 294 is further generated and its operation is controlled.
[0251]
The data processing device executes the same processing as the communication processing described in the relay device 2 in the first, second, third, and fourth embodiments under the control of the communication program described above.
[0252]
In the embodiment of the medium corresponding to the second embodiment, the communication program for controlling the terminal device 1-x is read from the recording medium into the terminal device 1-x, and the power operation monitoring means 11, A registration request transmission unit 12, an operation confirmation response unit 14, and a deletion request transmission unit 13 are generated and their operations are controlled. In the medium embodiment corresponding to the third embodiment, the capability information transmitting means 16 is further generated and its operation is controlled. In the medium embodiment corresponding to the second embodiment, the provided service list is stored in the storage unit 15. In the embodiment of the medium corresponding to the third embodiment, the processing capability information is further stored in the storage unit 15.
[0253]
The data processing device executes the same processing as the communication processing by the terminal device 1-x in the second and third embodiments under the control of this communication program.
[0254]
【Example】
Next, a first embodiment of the present invention will be described with reference to the drawings. This example corresponds to the first embodiment of the present invention.
[0255]
As shown in FIG. 18, the present embodiment employs a private address system (192.168..xxx.xxx) configured by an Ethernet (R) network as the network 4 and managed by the owner of the Ethernet (R) network. A terminal device used by an external user as an IP network, an existing Internet adopting a global address system as a network 5, a personal computer as a terminal device 1-x, an ISDN router as a relay device 2, and a terminal device 3 It has. The ISDN router is connected to an ISP (Internet Service Provider) network by an ISDN network.
[0256]
A network system composed of the network 4 and devices connected to the network 4 is directly connected to the Ethernet (R) cable and the Ethernet (R) cable wired in the individual's home or the Ethernet (R) hub. It can be a personal in-home network system composed of personal computers connected via the network, or a small office home office (SOHO) of a small-scale office constructed with a similar configuration. Here, an FTP server program that provides FTP (File Transfer Protocol) service is installed in the Ethernet (R), and the name is ftp. user-a. isp1. ne. a terminal device whose address is 192.168.0.2 and a program for sending and receiving e-mail are installed, and the name is pc1. user-1. isp1. ne. It is assumed that a terminal device that is jp is connected.
[0257]
The ISDN router is named user-a. isp1. ne. It is assumed that 192.168.0.1 is assigned as the Ethernet (R) side address and 133.1.1.5 is assigned as the global address assigned by the ISP.
[0258]
Here, it is assumed that the FTP server provides the FTP service to the external user terminal device. In this case, the address of the FTP server and the port number 20 corresponding to the FTP service are registered in advance in the processing terminal registration table of the ISDN router ((1) in FIG. 19). It is assumed that there is no entry in the correspondence management table.
[0259]
At this time, the external user terminal is connected to the user-a. isp1. ne. It is assumed that data communication for using the FTP service is started for jp.
[0260]
The external user terminal device is user-a. isp1. ne. When an address resolution inquiry message is created from the name of jp and the address resolution inquiry message is transmitted (step A1 in FIG. 6), an ISDN router device or a network server that can resolve the address of the ISDN router device in the ISP An address resolution response message is generated in response to the address resolution inquiry message, and the address resolution response message is transmitted to the external user terminal device (step A2). At this time, the address resolution response message includes information that the address of the ISDN router inquired by the address resolution inquiry message is 133.1.1.5.
[0261]
When the external user terminal device receives the address resolution response message, the destination address is the address 133.1.1.5 notified by the address resolution response message, and the destination port number is 20 corresponding to the FTP service. Yes, an IP packet whose source address is 208.192.0.1 which is the address of the external user terminal device and whose source port number is 1024 is created, and the IP packet is transmitted to the ISDN router.
[0262]
In the ISDN router, when the IP packet is received, the IP packet is transferred from the packet receiving means 23 to the correspondence search means 261. Since there is no entry corresponding to the IP packet in the correspondence management table, the IP packet is registered. Passed to the search means 263.
[0263]
The registration retrieval unit 263 refers to the processing terminal registration table. Here, since the entry having a value of 20 in which the port number field is equal to the destination port number of the IP packet exists in the processing terminal registration table, the registration unit 264 Is passed the entry identifier 1 of the entry and the IP packet.
[0264]
The registration unit 264 registers the correspondence regarding the IP packet in the correspondence management table from the contents of the entry in the processing terminal registration table corresponding to the passed entry identifier and the contents of the passed IP packet ((2 in FIG. 19). )).
[0265]
Thereafter, the ISDN router refers to the registered correspondence management table entry and relays the IP packet between the port number 20 of the FTP server and the port number 1024 of the external user terminal device.
[0266]
In the first embodiment, an example in which the network 4 is configured by Ethernet (R) has been shown. However, the network 4 may be a network using another communication medium or communication protocol such as IEEE 1394 or wireless LAN.
[0267]
The connection from the relay device 2 to the network 5 may be a dedicated line, and the relay device 2 may be an IP router provided with an interface device that accommodates the dedicated line.
[0268]
Next, a second embodiment of the present invention will be described with reference to the drawings. Such an example corresponds to the fourth embodiment of the present invention.
[0269]
As shown in FIG. 20, in this embodiment, a wireless network using the Bluetooth technology described in “Bluetooth Specification version 1.0 A” is used as the network 4, and an IP network including the existing Internet and a mobile communication network as the network 5. A portable information device having a communication function as a slave in the Bluetooth technology as the terminal device 1-x, a TCP / IP communication function with the IP network as a relay device 2, and a communication function as a master in the Bluetooth technology A mobile phone terminal device having a protocol conversion function between these protocols and having a function of relaying communication between the network 4 and the network 5 is provided as a terminal device 3 used by an external user. .
[0270]
Here, as a portable information device used as the terminal device 1-x, a camera, a video camera, and a notebook PC are taken as examples, and it is assumed that addresses 1, 2, and 3 in Bluetooth are assigned. The notebook PC is an FTP server dedicated device that is equipped with an FTP server program that interprets the FTP protocol and provides an FTP service and a storage device that stores files, and performs direct communication with a mobile phone terminal using Bluetooth technology. And
[0271]
The mobile phone terminal has a name user-a. op1. co. It is assumed that jp is assigned and the global address 133.1.1.5 of the network 5 is assigned.
[0272]
The port number of the network 4 corresponding to the FTP service is 10 and the port number of the network 5 is 20.
[0273]
Here, it is assumed that the notebook PC provides an FTP service to the external user terminal device. In this case, the port table of the cellular phone device shows the correspondence between the port number 10 of the network 4 corresponding to the FTP service and the port number 20 of the network 5 ((3) in FIG. 21), and the processing terminal registration table shows The correspondence between the address 3 of the notebook PC and the port number 10 of the network 4 corresponding to the FTP service ((1) in FIG. 21) is registered in advance. It is assumed that there is no entry in the correspondence management table.
[0274]
At this time, the external user terminal is connected to the user-a. op1. co. It is assumed that data communication for using the FTP service is started for jp.
[0275]
The external user terminal device is user-a. op1. co. When an address resolution inquiry message is created from the name of jp and the address resolution inquiry message is transmitted (step A1 in FIG. 6), the mobile phone terminal or a network that can resolve the address of the mobile terminal device in the mobile communication network The server creates an address resolution response message in response to the address resolution inquiry message, and transmits the address resolution response message to the external user terminal device (step A2). At this time, the address resolution response message includes information that the address of the mobile phone terminal inquired by the address resolution inquiry message is 133.1.1.5.
[0276]
When the external user terminal device receives the address resolution response message, the destination address is the address 133.1.1.5 notified by the address resolution response message, and the destination port number is 20 corresponding to the FTP service. Yes, an IP packet whose source address is 208.192.0.1 which is the address of the external user terminal device and whose source port number is 1024 is created, and the IP packet is transmitted to the mobile phone terminal.
[0277]
When the mobile phone terminal receives the IP packet, the IP packet is passed from the packet receiving means 23 to the correspondence search means 261. Since there is no entry corresponding to the IP packet in the correspondence management table, the IP packet is Passed to the registration search means 2263.
[0278]
The registration search means 2263 knows that the port number of the network 4 corresponding to the destination port number 20 of the IP packet is 10 by searching the port table, and further searches for the port number 10 by searching the processing terminal registration table. Since an entry in which the address of the terminal device of the network 4 providing the service is registered is detected, the registration search unit 2263 passes the IP packet and the entry identifier 1 of the entry to the registration unit 2264.
[0279]
The registration unit 2264 registers the correspondence regarding the IP packet in the correspondence management table from the contents of the entry in the processing terminal registration table corresponding to the passed entry identifier 1 and the contents of the passed IP packet (( 2)).
[0280]
Thereafter, the mobile phone terminal refers to the entry of the registered correspondence management table, and performs communication using Bluetooth with the FTP server program of the notebook PC and communication using TCP / IP between the port number 1024 of the external user terminal device. Relay.
[0281]
【The invention's effect】
The first effect is that data communication can be started from a terminal device connected to the global network to a terminal device connected to the private network.
[0282]
The reason is that the relay device connecting the global network and the private network manages the correspondence between the address of the terminal device connected to the private network and the port number corresponding to the service provided by the terminal device, and refers to the correspondence. Since the destination of the packet for starting data communication from the terminal device connected to the global network is converted and relayed, the relay device supports one global address for a plurality of terminal devices connected to the private network. This is because the terminal device to which the IP packet is transferred can be identified by the value of the destination port number included in the IP packet for starting data communication even in such a case.
[0283]
The second effect is that the address of the partner terminal device can be resolved between the terminal devices connected to different private networks. This enables data communication between terminal devices connected to different private networks.
[0284]
The reason is the same as the reason for the first effect.
[0285]
A third effect is that an IP packet that starts data communication is relayed only when a terminal device connected to the private network is operating. As a result, it is possible to prevent useless relaying of IP packets for which no terminal device is present.
[0286]
The reason is that the terminal device connected to the private network registers the service to be provided to the relay device when activated, and deletes the registered service when terminated.
[0287]
The fourth effect is that when a terminal device connected to the private network cannot operate normally due to some abnormality, an IP packet for starting data communication is not relayed. As a result, it is possible to prevent the receiving terminal device from wastefully relaying an IP packet that is not operating normally.
[0288]
The reason is that it is confirmed whether or not the relay device is periodically operating normally with respect to the terminal device connected to the private network in which the service is registered.
[0289]
The fifth effect is that, as shown in the first and second embodiments, it is possible to provide the same service by being connected to the private network in a situation where one user manages the private network. In the case where there are a plurality of terminal devices, even if the terminal device that currently provides the service ends the operation, the terminal that can automatically provide the other service in response to a request for the service thereafter It is possible to communicate with the device.
[0290]
The reason is that, in the private network, the port number resource is shared between the terminal devices connected to the private network, and the terminal device is as described above for the reasons of the third effect and the fourth effect. Since the registration of the service provided by the terminal device is automatically deleted when the terminal device becomes inoperative, even if the terminal device that currently provides the service terminates the operation, This is because it is possible to relay to the other terminal device that has registered the provision of the service in response to the request.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a first exemplary embodiment of the present invention.
FIG. 2 is a block diagram showing a partial configuration of the first exemplary embodiment of the present invention.
FIG. 3 is a block diagram showing a partial configuration of the first exemplary embodiment of the present invention.
FIG. 4 is a diagram showing a configuration of a table according to the first embodiment of the present invention.
FIG. 5 is a diagram showing a message configuration in the first embodiment of the present invention;
FIG. 6 is a sequence diagram showing the operation of the first exemplary embodiment of the present invention.
FIG. 7 is a block diagram showing another configuration according to the embodiment of the present invention.
FIG. 8 is a block diagram showing the configuration of the second exemplary embodiment of the present invention.
FIG. 9 is a first sequence diagram showing the operation of the second exemplary embodiment of the present invention.
FIG. 10 is a second sequence diagram showing the operation of the second exemplary embodiment of the present invention.
FIG. 11 is a block diagram showing the configuration of the third exemplary embodiment of the present invention.
FIG. 12 is a block diagram showing a partial configuration of the third embodiment of the present invention;
FIG. 13 is a diagram showing a configuration of a part of a table according to the third embodiment of the present invention.
FIG. 14 is a sequence diagram showing the operation of the third exemplary embodiment of the present invention.
FIG. 15 is a block diagram showing a partial configuration of the fourth exemplary embodiment of the present invention.
FIG. 16 is a block diagram showing a partial configuration of the fourth exemplary embodiment of the present invention;
FIG. 17 is a block diagram showing a configuration of a table in the fourth embodiment of the present invention;
FIG. 18 is a block diagram showing the configuration of the first exemplary embodiment of the present invention.
FIG. 19 shows the contents of a table in the first embodiment of the present invention.
FIG. 20 is a block diagram showing a configuration of a second exemplary embodiment of the present invention.
FIG. 21 is a diagram showing the contents of a table in the second embodiment of the present invention.
FIG. 22 is a block diagram showing the configuration of an existing technology.
FIG. 23 is a block diagram showing a configuration of a part of an existing technology.
FIG. 24 is a block diagram showing the configuration of part of the existing technology.
FIG. 25 is a block diagram showing an example of an existing IP network configuration
[Explanation of symbols]
1 Mobile device
2 Relay device
3 Terminal equipment
4 network
5 network
6 Power supply operation monitoring means
12 Registration request sending means
13 Delete request transmission means
14 Operation confirmation response means
15 Memory means
21 Packet receiving means
22 Packet transmission means
23 Packet receiving means
24 packet transmission means
25 Address conversion means
26 Address conversion means
27 Memory means
28 Address inquiry response means
251 Corresponding search means
252 Packet conversion means
254 registration means
261 Corresponding search means
262 packet conversion means
263 Registration search means
H.264 registration means
265 destination selection means
291 Registration request receiving means
292 Delete request receiving means
293 operation confirmation request means
294 capability information receiving means
1021 Packet receiving means
1022 Packet transmission means
1023 Packet receiving means
1024 packet transmission means
1025 Address conversion means
1026 Address conversion means
1027 Storage means
1251 Corresponding search means
1252 Packet conversion means
1254 Registration means
1261 Corresponding search means
1262 Packet conversion means
2251 correspondence search means
2252 packet conversion means
2254 registration means
2262 packet conversion means
2263 Registration search means
2264 registration means

Claims (16)

第1のネットワークと、当該第1のネットワークとアドレス体系の異なる第2のネットワークとが中継装置を介して接続されており、
前記第1のネットワークに接続された第1の端末装置は、
前記第1の端末装置のアドレスと該第1の端末装置が提供するサービスのサービス識別子を含む登録要求を中継装置に通知し、
前記中継装置は、前記登録要求を受信し、前記登録要求に含まれる前記第1のネットワークに接続された第1の端末装置のアドレスと、前記第1の端末装置が提供するサービスのサービス識別子とを含んだ1又は複数の第1のエントリを第1の管理テーブルに記憶しておき、
前記第2のネットワークに接続された第2の端末装置は、あるサービスに宛てたパケットを送信し、
前記中継装置は、前記パケットを受信すると、前記第1の管理テーブルから前記パケットに含まれる宛先サービス識別子と同じサービス識別子を持つ第1のエントリを検索し、前記パケットの宛先アドレスを検出された第1のエントリの第1の端末装置のアドレスに書き換え、前記第1の端末装置に前記パケットを送信することを特徴とする通信方法。
A first network and a second network having a different address system from the first network are connected via a relay device;
The first terminal device connected to the first network is:
Notifying the relay device of a registration request including the address of the first terminal device and a service identifier of the service provided by the first terminal device;
The relay device receives the registration request, and includes an address of a first terminal device connected to the first network included in the registration request, a service identifier of a service provided by the first terminal device, and One or a plurality of first entries including the above are stored in the first management table,
A second terminal device connected to the second network transmits a packet addressed to a service;
When the relay apparatus receives the packet, the relay apparatus searches the first management table for a first entry having the same service identifier as the destination service identifier included in the packet, and detects the destination address of the packet. A communication method comprising: rewriting an address of a first terminal device in one entry and transmitting the packet to the first terminal device.
前記第1のネットワークに接続された第1の端末装置は、前記中継装置に前記端末装置のアドレスを含む削除要求を通知し、
前記中継装置は、
前記削除要求を受信すると、前記第1の管理テーブルから前記削除要求に含まれる端末装置のアドレスを持つ第1のエントリを検索し、該検索によって検出された第1のエントリを削除することを特徴とする請求項1に記載の通信方法。
The first terminal device connected to the first network notifies the relay device of a deletion request including the address of the terminal device,
The relay device is
When the deletion request is received, the first entry having the address of the terminal device included in the deletion request is searched from the first management table, and the first entry detected by the search is deleted. The communication method according to claim 1 .
前記第1の管理テーブルの1又は複数の第1のエントリに前記第1のネットワークに接続された第1の端末装置の処理能力情報が含まれていることを特徴とする請求項1又は2に記載の通信方法。3. The processing capability information of the first terminal device connected to the first network is included in one or more first entries of the first management table. The communication method described. 前記第1のネットワークに接続された第1の端末装置は、当該端末装置のアドレスと処理能力情報とを含んだ能力通知メッセージを前記中継装置に通知し、
前記中継装置は、前記能力通知メッセージを受信すると、前記第1の管理テーブルの前記第1の端末装置の第1のエントリに前記能力通知メッセージに含まれる処理能力情報を記憶することを特徴とする請求項1、2又は3に記載の通信方法。
The first terminal device connected to the first network notifies the relay device of a capability notification message including the address of the terminal device and processing capability information,
When the relay device receives the capability notification message, the relay device stores processing capability information included in the capability notification message in a first entry of the first terminal device of the first management table. The communication method according to claim 1, 2 or 3.
前記中継装置は、前記パケットに含まれる宛先サービス識別子と同じサービス識別子を持つ第1のエントリが複数検出された場合、前記処理能力情報に基づいて第1のエントリを決定することを特徴とする請求項3又は4に記載の通信方法。The relay apparatus determines a first entry based on the processing capability information when a plurality of first entries having the same service identifier as a destination service identifier included in the packet are detected. Item 5. A communication method according to Item 3 or 4. 第1のネットワークと当該第1のネットワークとアドレス体系の異なる第2のネットワークを接続する中継装置であって、
第1のネットワークに接続された第1の端末装置からの当該第1の端末装置のアドレスとサービス識別子を含む登録要求を受信すると、前記登録要求に含まれる第1の端末装置のアドレスとサービス識別子とを含んだ第1のエントリを前記第1の管理テーブルに記憶する手段と、
前記第1のネットワークに接続された第1の端末装置のアドレスと、当該第1の端末装置が提供するサービスのサービス識別子とを含んだ1又は複数の第1のエントリを記憶する第1の管理テーブルを備え、
前記第2のネットワークに接続された第2の端末装置からあるサービスに宛てたパケットに対して、前記第1の管理テーブルから前記パケットに含まれる宛先サービス識別子と同じサービス識別子を持つ第1のエントリを検索する第1の検索手段と、
前記パケットの宛先アドレスを前記第1の検索手段により検出された第1のエントリの第1の端末装置のアドレスに書き換える手段とを含んで構成されることを特徴とする中継装置。
A relay device for connecting a first network and a second network having a different address system from the first network,
When receiving a registration request including the address of the first terminal device and the service identifier from the first terminal device connected to the first network, the address and service identifier of the first terminal device included in the registration request Means for storing in the first management table a first entry including:
First management for storing one or more first entries including an address of a first terminal device connected to the first network and a service identifier of a service provided by the first terminal device With a table
A first entry having the same service identifier as the destination service identifier included in the packet from the first management table for a packet addressed to a service from the second terminal device connected to the second network A first search means for searching for;
Means for rewriting the destination address of the packet with the address of the first terminal device of the first entry detected by the first search means.
前記第1の端末装置からの当該第1の端末装置のアドレスを含む削除要求を受信すると、前記削除要求に含まれる第1の端末装置のアドレスを持つ第1のエントリを検索し、検出された第1のエントリを前記第1の管理テーブルから削除する手段とを有することを特徴とする請求項6に記載の中継装置。When a deletion request including the address of the first terminal device is received from the first terminal device, the first entry having the address of the first terminal device included in the deletion request is searched and detected. 7. The relay apparatus according to claim 6, further comprising means for deleting the first entry from the first management table. 前記第1のネットワークに接続された第1の端末装置に対して、動作確認要求メッセージを送信し、前記第1の端末装置から動作確認応答メッセージを受信することにより前記第1の端末装置の動作を確認し、前記第1の端末装置の動作を確認できなかった場合、前記第1の管理テーブルから前記動作確認要求メッセージを送信した第1の端末装置のアドレスを持つ第1のエントリを検索し、検出された第1のエントリを削除する動作確認要求手段を含んで構成されることを特徴とする請求項6又は7に記載の中継装置。Operation of the first terminal device by transmitting an operation confirmation request message to the first terminal device connected to the first network and receiving an operation confirmation response message from the first terminal device. If the operation of the first terminal device cannot be confirmed, the first entry having the address of the first terminal device that has transmitted the operation confirmation request message is retrieved from the first management table. 8. The relay apparatus according to claim 6, further comprising an operation confirmation requesting unit for deleting the detected first entry. 前記第1の管理テーブルの第1のエントリに前記第1のネットワークに接続された第1の端末装置の処理能力情報が含まれていることを特徴とする請求項7又は8に記載の中継装置。The relay apparatus according to claim 7 or 8, wherein the first entry of the first management table includes processing capability information of the first terminal device connected to the first network. . 前記第1のネットワークに接続された第1の端末装置から、当該端末装置のアドレスと処理能力情報とを含んだ能力通知メッセージを受信すると、前記第1の管理テーブルの前記第1の端末装置の第1のエントリに前記能力通知メッセージに含まれる処理能力情報を記憶する手段を含んで構成されることを特徴とする請求項7、8又は9に記載の中継装置。When a capability notification message including the address of the terminal device and processing capability information is received from the first terminal device connected to the first network, the first terminal device of the first management table 10. The relay apparatus according to claim 7, 8 or 9, wherein the first entry includes means for storing processing capacity information included in the capacity notification message. 前記パケットに含まれる宛先サービス識別子と同じサービス識別子を持つ第1のエントリが複数検出された場合、前記処理能力情報に基づいて第1のエントリを決定する手段を含んで構成されることを特徴とする請求項9又は10に記載の中継装置。When a plurality of first entries having the same service identifier as the destination service identifier included in the packet are detected, the first entry is determined based on the processing capability information. The relay device according to claim 9 or 10. 第1のネットワークに接続された第1の端末装置からの当該第1の端末装置のアドレスとサービス識別子を含む登録要求を受信すると、前記第1の管理テーブルに前記登録要求に含まれる第1の端末装置のアドレスとサービス識別子とを含んだ第1のエントリを記憶する手段と、
第1のネットワークと当該第1のネットワークとアドレス体系の異なる第2のネットワークを接続する中継装置の通信プログラムを記録した記録媒体であって、
前記第1のネットワークに接続された第1の端末装置のアドレスと、当該第1の端末装置が提供するサービスのサービス識別子とを含んだ1又は複数の第1のエントリを記憶する第1の管理テーブルと、
前記第2のネットワークに接続された第2の端末装置からあるサービスに宛てたパケットに対して、前記第1の管理テーブルから前記パケットに含まれる宛先サービス識別子と同じサービス識別子を持つ第1のエントリを検索する第1の検索手段と、
前記パケットの宛先アドレスを前記第1の検索手段により検出された第1のエントリの第1の端末装置のアドレスに書き換える変換手段とを前記中継装置に機能させることを特徴とする通信プログラムを記録した記録媒体。
When receiving a registration request including an address of the first terminal device and a service identifier from the first terminal device connected to the first network, the first management table includes the first request included in the registration request. Means for storing a first entry including a terminal device address and a service identifier;
A recording medium that records a communication program of a relay device that connects a first network and a second network having a different address system from the first network,
First management for storing one or more first entries including an address of a first terminal device connected to the first network and a service identifier of a service provided by the first terminal device Table,
A first entry having the same service identifier as the destination service identifier included in the packet from the first management table for a packet addressed to a service from the second terminal device connected to the second network A first search means for searching for;
A communication program is recorded that causes the relay device to function as a conversion means for rewriting the destination address of the packet with the address of the first terminal device of the first entry detected by the first search means. recoding media.
前記第1の端末装置からの当該第1の端末装置のアドレスを含む削除要求を受信すると、前記第1の管理テーブルから前記削除要求に含まれる第1の端末装置のアドレスを持つ第1のエントリを検索し、検出された第1のエントリを削除する手段とを前記中継装置に機能させることを特徴とする請求項12に記載の通信プログラムを記録した記録媒体。When receiving a deletion request including the address of the first terminal device from the first terminal device, a first entry having an address of the first terminal device included in the deletion request from the first management table 13. The recording medium having the communication program recorded thereon according to claim 12, wherein the relay device functions as a means for searching for and deleting the detected first entry. 前記第1の管理テーブルの第1のエントリに前記第1のネットワークに接続された第1の端末装置の処理能力情報が含まれていることを特徴とする請求項12又は13に記載の通信プログラムを記録した記録媒体。The communication program according to claim 12 or 13, wherein the first entry of the first management table includes processing capability information of the first terminal device connected to the first network. A recording medium on which is recorded. 前記第1のネットワークに接続された第1の端末装置から、当該端末装置のアドレスと処理能力情報とを含んだ能力通知メッセージを受信すると、前記第1の管理テーブルの前記第1の端末装置の第1のエントリに前記能力通知メッセージに含まれる処理能力情報を記憶する手段を前記中継装置に機能させることを特徴とする請求項12、13、又は14に記載の通信プログラムを記録した記録媒体。When a capability notification message including the address of the terminal device and processing capability information is received from the first terminal device connected to the first network, the first terminal device of the first management table 15. The recording medium having a communication program recorded thereon according to claim 12, 13, or 14, wherein said relay device functions to store processing capability information included in said capability notification message in a first entry. 前記パケットに含まれる宛先サービス識別子と同じサービス識別子を持つ第1のエントリが複数検出された場合、前記処理能力情報に基づいて第1のエントリを決定する手段を前記中継装置に機能させることを特徴とする請求項14又は15に記載の通信プログラムを記録した記録媒体。When the plurality of first entries having the same service identifier as the destination service identifier included in the packet are detected, the relay device is caused to function as a means for determining the first entry based on the processing capability information. A recording medium on which the communication program according to claim 14 is recorded.
JP2001311892A 2001-10-09 2001-10-09 Terminal device, relay device, communication method, and recording medium recording the communication program Expired - Fee Related JP4352645B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001311892A JP4352645B2 (en) 2001-10-09 2001-10-09 Terminal device, relay device, communication method, and recording medium recording the communication program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001311892A JP4352645B2 (en) 2001-10-09 2001-10-09 Terminal device, relay device, communication method, and recording medium recording the communication program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000044691A Division JP3252841B2 (en) 2000-02-22 2000-02-22 Terminal device, relay device, communication method, and recording medium on which communication program is recorded

Publications (2)

Publication Number Publication Date
JP2002185517A JP2002185517A (en) 2002-06-28
JP4352645B2 true JP4352645B2 (en) 2009-10-28

Family

ID=19130636

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001311892A Expired - Fee Related JP4352645B2 (en) 2001-10-09 2001-10-09 Terminal device, relay device, communication method, and recording medium recording the communication program

Country Status (1)

Country Link
JP (1) JP4352645B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4362132B2 (en) 2004-04-14 2009-11-11 日本電信電話株式会社 Address translation method, access control method, and apparatus using these methods
JP4548372B2 (en) * 2006-03-23 2010-09-22 日本電気株式会社 Integrated print memory system
JP4697268B2 (en) * 2008-07-02 2011-06-08 沖電気工業株式会社 Communication control device and communication control system
JP4586900B2 (en) * 2008-07-02 2010-11-24 沖電気工業株式会社 Communication control device and communication control system
GB0821236D0 (en) * 2008-11-20 2008-12-31 Nec Corp Client-server communications in mobile radio communications device

Also Published As

Publication number Publication date
JP2002185517A (en) 2002-06-28

Similar Documents

Publication Publication Date Title
US7415536B2 (en) Address query response method, program, and apparatus, and address notification method, program, and apparatus
EP2214383B1 (en) Automatically releasing resources reserved for subscriber devices within a broadband access network
US8103784B2 (en) Communication device and communication control method using efficient echonet address determination scheme
JP2006086703A (en) Access controller, program and remote actuating method of terminal
JPH11122301A (en) Address conversion connection device
KR100429902B1 (en) Apparatus and method for controlling devices in private network from public network
WO2005083959A1 (en) Network access router, network access method, program, and recording medium
JP4186733B2 (en) Communication system, terminal, and address generation method
JP4925130B2 (en) Communication control method and system
JP3252841B2 (en) Terminal device, relay device, communication method, and recording medium on which communication program is recorded
JP4352645B2 (en) Terminal device, relay device, communication method, and recording medium recording the communication program
JP4292897B2 (en) Relay device and port forward setting method
JP4713420B2 (en) Communication system and network device sharing method
JP5638063B2 (en) COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL METHOD, PROGRAM
JP2010062757A (en) Dns proxy apparatus and dns relay method
JP5241665B2 (en) COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND COMMUNICATION METHOD
US20100257274A1 (en) Communication system, communication method, and shared-authentication apparatus
JP2003283536A (en) Portable router unit
JP3794689B2 (en) Relay device and communication control method
JP4263915B2 (en) Data communication system
JP4107652B2 (en) INTERNET COMMUNICATION SYSTEM, ADDRESS INFORMATION EXCHANGE SERVER, INTERNET COMMUNICATION METHOD, ADDRESS INFORMATION CONTROL METHOD, PROGRAM, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING THE PROGRAM
US8638803B2 (en) Communication apparatus and communication method for preventing a communication apparatus from receiving an unintended packet
JP3808471B2 (en) Network and router apparatus and address notification method used therefor
JP2006025341A (en) Neighbor discovery substitution system and method for vlan, and router device
JP2006261768A (en) Communication device, communication method, and communication program

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20021206

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050317

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061012

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070115

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080612

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090508

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090525

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: 20090707

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: 20090720

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: 20120807

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130807

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees