JP4231985B2 - Relay server and communication system - Google Patents

Relay server and communication system Download PDF

Info

Publication number
JP4231985B2
JP4231985B2 JP2001007656A JP2001007656A JP4231985B2 JP 4231985 B2 JP4231985 B2 JP 4231985B2 JP 2001007656 A JP2001007656 A JP 2001007656A JP 2001007656 A JP2001007656 A JP 2001007656A JP 4231985 B2 JP4231985 B2 JP 4231985B2
Authority
JP
Japan
Prior art keywords
relay server
connection
terminal
connection information
network device
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
JP2001007656A
Other languages
Japanese (ja)
Other versions
JP2002217938A5 (en
JP2002217938A (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.)
Murata Machinery Ltd
Original Assignee
Murata Machinery Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Murata Machinery Ltd filed Critical Murata Machinery Ltd
Priority to JP2001007656A priority Critical patent/JP4231985B2/en
Priority to US10/045,897 priority patent/US7206088B2/en
Publication of JP2002217938A publication Critical patent/JP2002217938A/en
Publication of JP2002217938A5 publication Critical patent/JP2002217938A5/ja
Application granted granted Critical
Publication of JP4231985B2 publication Critical patent/JP4231985B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、複数のネットワーク装置及び複数の中継サーバがネットワークによって接続された通信システムと、そのような通信システムにおいて利用して好適な中継サーバに関するものである。
【0002】
【従来の技術】
図7は、一般的なインターネットを用いたシステムの一例を示す説明図である。図中、1,2はローカルシステム、3はインターネット、11,12,21,22は端末、13,23はゲートウェイ、14,24はLANである。ローカルシステム1は、端末11、端末12、ゲートウェイ13などがLAN14により接続されて構成されている。ゲートウェイ13は、LAN14とともにインターネット3に接続されており、LAN14上の端末11,12など、各種のネットワーク機器からインターネットを利用することができる。またローカルシステム2も同様であり、端末21、端末22、ゲートウェイ23などがLAN24により接続されて構成されている。ゲートウェイ23は、LAN24とともにインターネット3に接続されており、LAN24上の端末21,22など、各種のネットワーク機器からインターネットを利用することができる。もちろん、それぞれのローカルシステム1,2において、他の様々な機器がLAN14,24により接続されていてよい。
【0003】
このようなシステムにおいて、通常はローカルシステム1,2に対してはグローバルIPアドレスは1ないし複数個が割り当てられるが、ローカルシステム1,2内のそれぞれのネットワーク機器にグローバルIPアドレスが割り当てられるわけではない。それぞれのローカルシステム1,2内の各ネットワーク機器にはプライベートなIPアドレスが割り振られており、ゲートウェイ13,23によってNATやIPマスカレードなどの機能を用いてプライベートなIPアドレスとグローバルなIPアドレスとの変換を行っている。このようなIPアドレスの変換機能を有するゲートウェイ13,23を用い、例えばローカルシステム1では端末11,12はゲートウェイ13を介してインターネット3を利用することになる。またローカルシステム2においても、端末21,22はゲートウェイ23を介してインターネット3を利用することになる。
【0004】
またゲートウェイ13,23あるいは別のネットワーク装置等においてはファイアウォールやプロキシサーバなどの機能を有し、これらの装置を介して各端末がインターネット3を利用するような構成も利用されており、システムの安全性を向上させている。
【0005】
ここで、例えばインターネット3からローカルシステム1内の端末11に対してアクセスしようとすると、ゲートウェイ13のグローバルIPアドレスを知ることはできるものの、端末11のプライベートなIPアドレスを知ることはできない。従って、通常の接続方法ではローカルシステム1の外部から端末11をアクセスすることはできない。またゲートウェイ13のファイアウォールの機能などによって、アクセスを受け付けるサイトが制限されている場合もある。もちろん、端末12についても同様であるし、ローカルシステム2内の端末21,22についても同様である。
【0006】
さらに、ローカルシステム1内の端末11や端末12、ローカルシステム2内の端末21や端末22は、通常はクライアント機能しか有しておらず、他のネットワーク機器からの情報を受け付けるサーバの機能を有していない。そのため、端末11,12,21,22から他のネットワーク機器にアクセスしない限り、他のネットワーク機器からこれらの端末に情報を送信することができない。
【0007】
【発明が解決しようとする課題】
本発明は、上述した事情に鑑みてなされたもので、インターネットからローカルシステム内の端末への接続、あるいは異なるローカルシステム内の端末間の接続を容易に行うことができる通信システム、および、そのような通信システムにおいて利用して好適な中継サーバを提供することを目的とするものである。
【0008】
【課題を解決するための手段】
本発明は、中継サーバにおいて、複数のネットワーク装置とそれぞれ1以上のTCP/IPコネクションを用いて通信可能であるとともに他の中継サーバと通信可能な通信手段と、通信可能な前記ネットワーク装置の接続情報を保持する接続情報保持手段を有し、前記通信手段は、前記ネットワーク装置とTCP/IPコネクションの確立後、前記TCP/IPコネクションを維持し、前記ネットワーク装置からの要求に基づいて前記接続情報を更新するとともに、該接続情報の更新を前記他の中継サーバに通知することを特徴とするものである。また、前記通信手段は、前記他の中継サーバからの接続情報更新時の通知に基づいて前記接続情報保持手段中の前記接続情報を更新することを特徴とするものである。
【0009】
また本発明は、複数のネットワーク装置及び複数の中継サーバがネットワークによって接続された通信システムにおいて、前記ネットワーク装置は、いずれかの前記中継サーバと1以上のTCP/IPコネクションを確立して維持し、他のネットワーク装置との接続要求を行って通信を行うものであり、中継サーバは、通信可能なネットワーク装置の接続情報を保持するとともに、前記ネットワーク装置との間で前記TCP/IPコネクションを確立後、前記ネットワーク装置からの要求に基づいて前記接続情報を更新して他の中継サーバに通知し、また他の中継サーバから送られてくる接続情報更新時の通知に基づいて前記接続情報を更新することを特徴とするものである。
【0010】
このように、それぞれの中継サーバに接続されるネットワーク装置の接続情報が更新されると、それを他の中継サーバに通知し、また他の中継サーバから接続情報の更新通知を受けることによって、ネットワーク装置の接続情報を常に更新し、共有することができる。従って、ネットワーク装置から他のネットワーク装置に対して接続要求を行う場合でも、中継サーバは、接続先のネットワーク装置がどの中継サーバに接続されているかを知ることができ、即座に通信を中継することができる。またネットワーク装置側でも、接続先のネットワーク装置がどの中継サーバに接続されているかといったことを意識する必要がなく、容易に接続要求を行うことができる。さらに、中継サーバには他の中継サーバに接続されているネットワーク装置の接続情報も集積されていることから、これらの接続情報をネットワーク装置から参照可能に構成すれば、接続要求を行う前に接続先の状態などを確認することが可能になる。
【0011】
上述のような接続情報更新時の通知は、更新を行った中継サーバが他のすべての中継サーバに対して行うほか、中継サーバが当該通知についても中継するように構成することができる。この場合、中継サーバは、通知を受け取ったら発信元以外の他の中継サーバに対して転送するように構成するとともに、受け取った通知がそれまでに受け取った通知以前の過去のものである場合には更新せずに破棄するように構成するとよい。これによって当該通知のループを防ぎながら、当該通知を行き渡らせることができる。
【0012】
さらに本発明は、複数のネットワーク装置及び複数の中継サーバがネットワークによって接続された通信システムにおいて、さらに前記ネットワーク装置の接続情報を保持して前記中継サーバに前記接続情報を提供するデータベースサーバを有し、前記ネットワーク装置は、いずれかの前記中継サーバと1以上のTCP/IPコネクションを確立して維持し、他のネットワーク装置との接続要求を行って通信を行うものであり、中継サーバは、前記ネットワーク装置との間で前記TCP/IPコネクションを確立後、前記ネットワーク装置からの要求に基づいて前記接続情報を更新する場合に、更新した接続情報を前記データベースサーバに保持させることを特徴とするものである。
【0013】
このように、それぞれの中継サーバに接続されるネットワーク装置の接続情報がデータベースサーバに保持され、中継サーバに対して接続情報が提供されている。そして、接続情報が更新されるとその更新された接続情報がデータベースサーバにアップロードされるので、常に最新の接続情報が保持され、提供されることになる。従って、ネットワーク装置から他のネットワーク装置に対して接続要求を行う場合でも、中継サーバは、データベースサーバから接続情報を取得することによって、接続先のネットワーク装置がどの中継サーバに接続されており、どのような状態であるかを知ることができ、通信が可能であれば即座に通信を中継することができる。またネットワーク装置側でも、接続先のネットワーク装置がどの中継サーバに接続されているかといったことを意識する必要がなく、容易に接続要求を行うことができる。さらに、データベースサーバから接続情報を取得してネットワーク装置から参照可能に構成すれば、ネットワーク装置において接続要求を行う前に接続先の状態などを確認することが可能になる。
【0014】
【発明の実施の形態】
図1は、本発明の中継サーバを含む通信システムの第1の実施の形態を示す構成図である。図中、図7と同様の部分には同じ符号を付して重複する説明を省略する。4,5は中継サーバ、41は通信部、42は接続情報保持部である。中継サーバ4および中継サーバ5は、インターネット3に接続されており、それぞれグローバルIPアドレスを有している。このグローバルIPアドレスに対するネットワーク機器からのログイン要求を受け付け、そのネットワーク機器との接続を維持して通信路を確保しておく。また、中継サーバ4と中継サーバ5との間も通信路が確保されているものとする。ネットワーク機器はいずれの中継サーバに対して接続していてもよい。図1に示す例では、ローカルシステム1内の端末11や端末12がゲートウェイ13を介して中継サーバ4に、また、ローカルシステム2内の端末21や端末22が中継サーバ5に、それぞれ通信路が確保されている例を示している。なお中継サーバ4,5は、それぞれ、複数のネットワーク機器との間で接続を維持しておくことができる。
【0015】
中継サーバ4,5は、このようなネットワーク機器との通信路を用いて、インターネットから、あるいは他のローカルシステムのネットワーク機器からのデータを中継して通信を行う。また、ネットワーク機器から他のネットワーク機器などに対する接続要求を受けると、接続先が当該中継サーバとの通信路を確保していれば、その通信路を用いて両者間のデータを中継し、通信を行う。接続先が他の中継サーバと通信可能に接続されている場合には、接続要求を行ったネットワーク機器と他の中継サーバとの間でデータを中継し、さらにデータが転送された他の中継サーバで接続先のネットワーク機器にデータを中継し、ネットワーク機器間における通信を実現する。
【0016】
例えば中継サーバ4からローカルシステム1内のゲートウェイ13に対しては接続可能であるが、端末11や端末12については接続することができない。しかし、中継サーバ4のグローバルIPアドレスを使用すれば、端末11や端末12からゲートウェイ13を介して中継サーバ4に接続することは可能である。従って、端末11や端末12から中継サーバ4に対してログイン要求を行うことによって、中継サーバ4とログイン要求を行った端末11あるいは端末12との間の双方向の通信が可能になる。同様に、中継サーバ5からローカルシステム2内のゲートウェイ23に対しては接続可能であるが、端末21や端末22については接続することができない。しかし、中継サーバ5のグローバルIPアドレスを使用すれば、端末21や端末22からゲートウェイ23を介して中継サーバ5に接続することは可能である。従って、端末21や端末22から中継サーバ4に対してログイン要求を行うことによって、中継サーバ5とログイン要求を行った端末21あるいは端末22との間の双方向の通信が可能になる。さらに中継サーバ4と中継サーバ5とが通信を行うことによって、端末11や端末12と、端末21または端末22とが、中継サーバ4および中継サーバ5を介して通信を行うことができる。
【0017】
中継サーバ4は、例えば通信部41および接続情報保持部42を含んで構成することができる。通信部41は、インターネット3を介して複数のネットワーク機器および1ないし複数の中継サーバと通信可能である。そして通信部41は、通信可能に接続されているネットワーク機器から接続要求情報を受け取ると、その接続要求情報に従って接続情報保持部42内の接続情報を参照して接続先のネットワーク機器が接続されている中継サーバを割り出し、その中継サーバに直接、あるいは他の中継サーバを介して接続要求を中継し、接続を要求したネットワーク機器との間でのデータ転送を中継する。例えば端末11がそれぞれ通信部41により通信可能に接続されており、中継サーバ5に接続されている端末21との接続要求情報を受け取ると、端末11と通信部41との間でデータ転送を行うとともに、通信部41と中継サーバ5との間でデータ転送を行う。さらに中継サーバ5で端末21との間の通信を行うことによって、実質的に端末11と端末21との間での通信を実現する。もちろん、中継サーバ4に接続されている2台のネットワーク機器間での通信も可能である。また、1台のネットワーク機器と複数の接続を確保しておくことも可能であり、1台のネットワーク機器が複数の接続を用いて複数台のネットワーク機器との通信を行うことが可能である。
【0018】
なお、中継サーバ5の構成は中継サーバ4と同様に構成することができる。もちろん、中継サーバは2台に限らず、さらに多くの中継サーバがインターネット上に設けられていてよい。また、それぞれの中継サーバは、すべての中継サーバと接続できなくてもよく、1ないし複数の中継サーバを介して目的の中継サーバと接続される接続形態であってもよい。
【0019】
通信部41は、上述のようなネットワーク機器からのログインの要求や他のネットワーク機器に対する接続要求、さらには接続後の通信終了、ログアウトなどを処理し、ネットワーク機器との接続の状態が変化すると、当該ネットワーク機器に対応する接続情報保持部42中の接続情報を更新し、接続情報を更新したことを他の中継サーバに通知する。この通知は、例えば当該中継サーバに接続されるすべてのネットワーク機器の更新後の接続情報、あるいは、変更のあったネットワーク機器の更新後の接続情報等を含めることができる。また、更新日時や更新を行った中継サーバを特定する情報を含めておくとよい。
【0020】
また通信部41は、他の中継サーバから送られてきた通知を受け取り、接続情報保持部42に保持されている接続情報と比較して新しければ受け取った通知に従って接続情報を更新する。そして、その通知の送信元以外の中継サーバに対して受け取った通知を転送する。また、受け取った通知が接続情報保持部42に保持されている接続情報以前の過去のものである場合には、接続情報保持部42の更新を行わずに破棄し、他の中継サーバへの転送も行わない。これによって、接続情報保持部42に保持される接続情報を常に最新のものとなるように管理し、また、通知の転送がループにならないようにして、すべての中継サーバに行き渡るように転送することができる。
【0021】
接続情報保持部42は、それぞれの中継サーバに接続可能なネットワーク機器の接続情報を保持している。接続情報は、例えばユーザIDや接続状態などの情報を含んでおり、中継サーバを介して通信可能なユーザ(ネットワーク機器)の管理や、通信状態の管理などを行うことができる。図2は、接続情報保持部42が保持している接続情報を含む情報の一例の説明図である。図2に示す例では、中継サーバに固有の情報としてサーバ名、IPアドレスなどの情報を含むとともに、ユーザID、タイプ、属性、状態などの情報を含む接続情報と、その接続情報の最終更新日時などの情報を接続情報保持部42に保持させている。タイプはネットワーク機器の種別の情報、例えばクライアント端末であるのかFAXやプリンタなどの装置であるかなどの情報を保持することができる。属性は、タイプの情報に付随した種々の情報を保持することができ、例えば図2に示す例ではファイル単位の送受信を行う旨を示す属性を付した例を示している。状態の情報としては、例えばログイン中であるか否かや、ログインした後に他のネットワーク機器と通信を行っているか否かなどを示す情報を保持することができる。もちろん、接続情報として、このほかにも各種の情報を含んでいてよい。
【0022】
また、最終更新日時は、当該接続情報を更新したときに他の中継サーバに通知する際に付加しておくことが望ましい。通知を受け取った中継サーバは、付加されている最終更新日時によって、最新の情報か否かを判断することが可能になる。
【0023】
なお、図2(A)に示すそれぞれのネットワーク機器毎の接続情報は、当該中継サーバに接続されるネットワーク機器を特定して予め登録しておくことができる。これによって、登録されているネットワーク機器以外からのログイン要求などを拒否し、安全性を確保することができる。さらにパスワードなどの認証データを保持させておくことによって、安全性を向上させることが可能である。
【0024】
接続情報保持部42には、中継サーバ4に接続されるネットワーク機器の接続情報のほか、他の中継サーバから送られてくる接続情報も保持している。これらは、例えば図2(B)に示すようにそれぞれの中継サーバ毎の接続情報として保持しておくことができる。このように中継サーバ毎に接続情報を管理することによって、ネットワーク機器から他のネットワーク機器への接続要求を受けたとき、接続先のネットワーク機器が接続されている中継サーバを即座に割り出すことができる。また、接続先のネットワーク機器の状態についても知ることができ、例えば接続先のネットワーク機器がログインしていなければ、他の中継サーバに中継することなく、接続要求をエラーとすることも可能である。
【0025】
図3、図4は、本発明の中継サーバを含む通信システムの第1の実施の形態における通信手順の一例を示すシーケンス図である。図3、図4に示す通信手順は、TCP/IPを利用して実行され、中継サーバとの接続、接続の維持、端末への接続要求、端末へのデータ転送、端末との接続終了、中継サーバとの接続終了等を行うものである。このうち、中継サーバとの接続、接続の維持、中継サーバとの接続終了の部分を図3に示し、端末への接続要求、端末へのデータ転送、端末との接続終了等の部分を図4に示している。
【0026】
ここでは一例として、図1におけるローカルシステム1内の端末11とローカルシステム2内の端末21との間で通信を行う場合について示している。予め、中継サーバ4に対して端末11をユーザとして登録し、また中継サーバ5に対して端末21をユーザとして登録しておく。登録の情報としては、例えば図2(A)に示した接続情報の各項目の情報とすることができる。このほか、認証のためにパスワードなどを登録しておくとよい。これらの接続情報は、例えば登録時に接続情報の更新として捉え、ネットワーク機器が登録された中継サーバから他の中継サーバへ通知される。これによって、中継サーバ4と中継サーバ5は互いの接続情報を共有することになる。
【0027】
端末11は、例えば起動後あるいはオペレータによって指示されると、(1)において、ゲートウェイ13を介して中継サーバ4に接続し、ログインして中継サーバ4とのTCP/IPコネクション(接続1)を確立する。端末11はローカルシステム1内のネットワーク機器であるため、中継サーバ4から直接通信を行うことはできないが、クライアントである端末11からのログインにより中継サーバ4への接続は可能である。TCP/IPコネクションは双方向型のデータ通信が可能であるので、端末11から中継サーバ4へ、また中継サーバ4から端末11への通信を行うことができる。
【0028】
接続1が確立した後、(2)において端末11はユーザIDを中継サーバ4に送る。中継サーバ4は、受け取ったユーザIDが接続情報保持部42に接続情報として保持されているかを調べる。なお、端末11のユーザIDとともに、例えばパスワードなどによって認証を行うとよい。この認証によって、不特定の第3者との接続を回避し、安全性を確保することができる。もし接続情報が登録されていなかったり、認証に失敗した場合には、中継サーバ4は端末11に対して否定応答を行うか、あるいはそのまま接続1を切断する。認証が成功したら、(3)において肯定応答を行うとともに、端末11の接続情報をログインの状態に変更し、(4)において、接続情報の更新を他の中継サーバ(ここでは中継サーバ5)に通知する。中継サーバ5では、この通知を受けて、保持している中継サーバ4の接続情報を更新して、中継サーバ4が保持している接続情報と一致させる。
【0029】
中継サーバ4とのTCP/IPコネクションが確立し、認証が得られたら、その接続(接続1)を保持しておくために、(5)において定期的に中継サーバ4に対し接続保持のコマンドを送出し、(6)において中継サーバ4からの確認の応答を得る。これによって接続を保持しておくとともに、中継サーバが正常に稼働していることの確認を行う。このようにして端末11と中継サーバ4との間で通信可能な接続1を維持する。
【0030】
同様に端末21は、(1’)において、ゲートウェイ23を介して中継サーバ5に接続し、ログインして中継サーバ5とのTCP/IPコネクション(接続2)を確立する。端末21もローカルシステム2内のネットワーク機器であるため、中継サーバ5から直接通信を行うことはできないが、クライアントである端末21からのログインにより中継サーバ5への接続は可能である。接続2によって、端末21から中継サーバ5へ、また中継サーバ5から端末21への通信を行うことができる。
【0031】
接続2が確立した後、(2’)において端末21はユーザIDを中継サーバ5に送る。中継サーバ5は、受け取ったユーザIDが登録されているか否かを調べる。なお、端末11のユーザIDとともに、例えばパスワードなどによって認証を行うとよい。この認証によって、不特定の第3者との接続を回避し、安全性を確保することができる。もし接続情報が登録されていなかったり、認証に失敗した場合には、中継サーバ5は端末21に対して否定応答を行うか、あるいはそのまま接続2を切断する。認証が成功したら、(3’)において、肯定応答を行うとともに、端末21の接続情報をログインの状態に変更し、(4’)において、接続情報の更新を他の中継サーバ(ここでは中継サーバ4)に通知する。中継サーバ4では、この通知を受けて、保持している中継サーバ5の接続情報を更新して、中継サーバ5が保持している接続情報と一致させる。
【0032】
中継サーバ5とのTCP/IPコネクションが確立し、認証が得られたら、その接続(接続2)を保持しておくために、(5’)において定期的に中継サーバ5に対し接続保持のコマンドを送出し、(6’)において中継サーバ5からの確認の応答を得る。これによって接続を保持しておくとともに、中継サーバが正常に稼働していることの確認を行う。このようにして端末21と中継サーバ5との間で通信可能な接続2を維持する。
【0033】
なお、端末11と中継サーバ4との接続と、端末21と中継サーバ5との接続は、両者の通信前であればいつ行ってもよい。このようにしてローカルシステム内の端末がいずれかの中継サーバに接続されていれば、それらの端末間において通信を行うことができる。端末間で通信を行う場合のシーケンスを図4に示している。
【0034】
端末11から端末21に接続したいという要求が発生すると、(11)において、端末11は中継サーバ4に対して接続したい端末21のユーザIDを指定して接続要求を行う。なお、接続先となる端末21のユーザIDは、予め取得しておくか、あるいは中継サーバ4からログイン中のユーザの一覧などによって確認して指定するなど、任意の方法で指定することができる。
【0035】
中継サーバ4は、接続情報保持部42に保持されている接続情報を参照して、端末11から指定されたユーザIDを有するネットワーク機器がいずれの中継サーバに接続されているのかを特定する。なお、中継サーバ4は、指定されたユーザIDに対応する接続情報が取得できなかった場合や、指定されたユーザIDに対応するネットワーク機器がログインしていない場合には、エラーの応答を端末11に対して返す。
【0036】
中継サーバ4は、接続要求によって指定された端末21が接続される中継サーバ5を特定したら、(12)において、特定した中継サーバ5に対して端末21への接続要求を送る。中継サーバ5は、中継サーバ4から転送されてきた接続要求を受け取り、(13)において、端末21に対して接続要求がある旨の情報と接続を要求している端末11のユーザIDを含む接続要求通知を送信する。
【0037】
端末21は、接続要求通知の送信に用いられた接続が端末11との接続に使用されていることを記憶して、(14)において受け入れ可能の応答を返す。なお、接続を拒否する場合はエラーを返す。中継サーバ5は、(15)において、端末21からの応答を中継サーバ4に転送する。このとき、端末21が接続要求を受ける応答の場合、端末21の接続2に対する接続情報を更新して接続2を端末11との通信に用いることを記憶し、(17)において接続情報の更新を他の中継サーバ(中継サーバ4)に通知する。
【0038】
一方、中継サーバ4は、中継サーバ5から転送されてきた端末21からの応答を(16)において端末11に対して返す。端末21からの応答が接続要求を受ける旨の応答である場合、端末11の接続1に対する接続情報を更新して接続1を端末21との通信に用いることを記憶し、(18)において接続情報の更新を他の中継サーバ(中継サーバ5)に通知する。また端末21からの応答を受け取った端末11では、受け入れ可能の応答を受け取った場合には、使用している接続(接続1)を端末21との通信に使用するものとして記憶する。
【0039】
なお、中継サーバ4は中継サーバ5からの通知を受けて、保持している中継サーバ5の接続情報を更新して、中継サーバ5が保持している接続情報と一致させる。また、中継サーバ5も中継サーバ4からの通知を受けて、保持している中継サーバ4の接続情報を更新して、中継サーバ4が保持している接続情報と一致させる。(17)と(18)の接続情報の更新通知は、通信経路によっていずれが先になる場合もある。
【0040】
このようにして端末11と端末21との間で通信を行うことを確認した後、(26)以降において実際にデータを送信することになる。なお、図4に示す例では、端末11と端末21との間の通信を行うことが決定された後に、その他のネットワーク機器からの接続要求を受けたり、他のネットワーク機器への接続要求を行うために、それぞれ、新しいTCP/IPコネクションを中継サーバ4,5に確立する。すなわち、端末11は(19)において中継サーバ4にログインして中継サーバ4とのTCP/IPコネクション(接続3)を確立し、(20)において端末11はユーザIDを中継サーバ4に送る。中継サーバ4は、受け取ったユーザIDなどに基づいて端末11の認証を行い、(21)において応答を返す。それとともに端末11に対する接続情報を更新し、(22)において他の中継サーバ(ここでは中継サーバ5)に対して通知する。中継サーバ5では中継サーバ4からの通知を受け、中継サーバ4の接続情報を更新する。中継サーバ4は、新たな接続3を維持するため、定期的に(24)において端末11から中継サーバ4へ接続保持コマンドを送信し、中継サーバ4は(25)において応答を端末11に返す。
【0041】
同様に端末21は(19’)において中継サーバ5にログインして中継サーバ5とのTCP/IPコネクション(接続4)を確立し、(20’)において端末21はユーザIDを中継サーバ5に送る。中継サーバ5は、受け取ったユーザIDなどに基づいて端末21の認証を行い、(21’)において応答を返す。それとともに端末21に対する接続情報を更新し、(23)において他の中継サーバ(ここでは中継サーバ4)に対して通知する。中継サーバ4では中継サーバ5からの通知を受け、中継サーバ5の接続情報を更新する。中継サーバ5は、新たな接続4を維持するため、定期的に(24’)において端末21から中継サーバ5へ接続保持コマンドを送信し、中継サーバ5は(25’)において応答を端末21に返す。なお、このような空きの接続を確保しておく必要がなければ、(19)〜(25)あるいは(19’)〜(25’)の手順は必要ない。また、既に複数の接続を確保している場合も、これらの手順を行わなくてもよい。
【0042】
上述の(11)〜(18)によって端末11と端末21との間で通信を行うことを確認したら、(26)において、端末11は中継サーバ4に対して接続1を用いて端末21へ送るデータを送信する。中継サーバ4は、端末11からのデータを受け取り、(27)において、受け取ったデータを中継サーバ5に転送する。中継サーバ5は、中継サーバ4から転送されてきたデータを受け取り、(28)において、接続2を用いて端末21へ送信する。端末21は、中継サーバ4から接続2を用いて送られてきた端末11からのデータを受け取り、(29)において端末11に対する応答を中継サーバ5に対して送信する。中継サーバ5は、(30)において、端末21が送信した端末11への応答を中継サーバ4に転送する。中継サーバ4は、中継サーバ5から転送されてきた端末21から端末11に対する応答を受け取り、受け取った応答を、(31)において接続1を用いて端末11へ送信する。
【0043】
このようにして、端末11と中継サーバ4との間の接続1と、中継サーバ4と中継サーバ5との通信と、端末21と中継サーバ5との間の接続2とを用い、中継サーバ4および中継サーバ5でデータを中継することによって、端末11と端末21との間の通信を行うことができる。なお、(26)〜(31)による端末11から端末21へのデータ転送は、複数回繰り返されてもよい。また、端末21から端末11へのデータ転送が行われてもよい。
【0044】
端末11と端末21との間のデータ転送が終了したら、端末11あるいは端末21から終了通知を行う。ここでは端末11から行うものとし、(32)において端末11は端末21に対する終了通知を、接続1を使用して中継サーバ4に対して送信する。中継サーバ4は、端末11から受け取った端末21への終了通知を、(33)において中継サーバ5へ転送する。中継サーバ5は、中継サーバ4から転送されてきた端末21への終了通知を受け取り、その終了通知を(34)において接続2を使用して端末21へ送信する。終了通知を送信した端末11は、(35)において、接続1が空きになったことを示す開放通知を中継サーバ4へ送信する。また終了通知を受け取った端末21も、(35’)において、接続2が空きになったことを示す開放通知を中継サーバ5へ送信する。これによって中継サーバ4は、接続1の接続情報を、端末11と端末21との間の通信用から空きに更新し、その旨を(36)において他の中継サーバ(ここでは中継サーバ5)に通知する。また中継サーバ5は、接続2の接続情報を、端末11と端末21との間の通信用から空きに更新し、その旨を(36’)において他の中継サーバ(ここでは中継サーバ4)に通知する。それぞれ接続情報の更新通知を受けた中継サーバ4,5は、通知に従って接続情報を更新する。なお、この例では21は終了通知に対する応答を行っていないが、応答を返信するようにしてもよい。
【0045】
このようにして開放された接続1および接続2は、(5)、(6)または(5’)、(6’)で示したように接続保持コマンドとその応答を定期的に行って、端末11と中継サーバ4との間、および、端末21と中継サーバ5との間の接続を保つ。なお、この時点では端末11と中継サーバ4との間では接続1と接続3が確保されている。同様に、端末21と中継サーバ5との間では接続2と接続4が確保されている。そのままでもよいし、接続1および接続2の解放時にこれらの接続については切断してもよい。もちろん、接続1および接続2を存続させ、接続3および接続4を切断してもよい。
【0046】
図3に戻り、例えば端末11が電源を切断する場合や、中継サーバ4への接続をやめる場合には、(7)において、端末11は中継サーバ4に対してログアウトを通知する。このとき、複数の接続が確保されている場合には、いずれの接続を用いて行ってもよい。そして、端末11はすべての接続を切断する。ここでは、まず(8)において接続1を切断する。また図4における端末21との通信時に接続3も設けたので、(9)において接続3についても切断して終了する。
【0047】
中継サーバ4は、端末11からのログアウトの通知を受け、接続情報を更新するとともに、(10)において接続情報の更新を他の中継サーバ(ここでは中継サーバ5)に対して通知する。中継サーバ5は、中継サーバ4の接続情報を通知に基づいて更新することになる。また中継サーバ4は、端末11のログアウトにより接続1,3を切断する。なお、端末21においても中継サーバ5に対して同様にしてログアウトを行うことができる。
【0048】
上述のような手順を実行することによって、それぞれあるいは一方がローカルシステム内のネットワーク機器である場合でも、通信を行うことが可能になる。また、それぞれのネットワーク機器が別の中継サーバに接続されている場合でも、支障なく通信を行うことができる。このとき、いずれの中継サーバに接続されているかを知る必要がなく、容易に通信を行うことができる。
【0049】
なお、上述のような中継サーバ4との接続、接続の維持、端末への接続要求、端末へのデータ送信、端末との接続終了、中継サーバとの接続終了を行うための手順は、上位で動作するアプリケーションプロトコルがやりとりするコマンドやデータに対しては透過性を保ち何の影響も与えないように構成することが可能であり、既存のアプリケーションプロトコルをそのまま用いて通信を行うことが可能である。
【0050】
上述の例では、接続要求元のネットワーク機器が接続されている中継サーバと、接続先のネットワーク機器が接続されている中継サーバとが直接通信を行うことが可能な場合について示した。しかし本発明はこのような構成に限られるものではなく、例えば2つの中継サーバの間に1ないし複数の中継サーバが介在してもよい。この場合、それぞれの中継サーバがルーティングを行えばよい。
【0051】
また、接続情報を更新した際の通知は、上述の例では相互に行えばよい。また、すべての中継サーバに対して直接通信を行うことができる場合には、更新を行った中継サーバが他の中継サーバそれぞれに対して通知を行えばよい。しかし、直接通信を行うことができない中継サーバが存在する場合には、通知に対しても中継サーバによる中継を行うなど、何らかの方策が必要となる。複数の中継サーバの接続形態に関係なく、通知を行き渡らせるための一つの方法として、それぞれの中継サーバが、通知の送信元以外の直接通信できる中継サーバに対して通知を転送するように構成すればよい。これによって、どのようなルートであっても通信路がつながっていれば通知を送ることができる。しかしこの場合、ループによる情報の循環が発生する可能性がある。これを防止するため、通知中の更新日時を参照し、保存している接続情報の更新日時以前の古い通知については破棄し、それ以上の転送を行わないようにすればよい。
【0052】
図5は、中継サーバ間の通知の転送方法の一例の説明図である。図中、51〜54は中継サーバである。この例では中継サーバ52は中継サーバ51,53,54と通信路が確立されており、また中継サーバ53,54間にも通信路が確立されている。例えば中継サーバ51において接続情報を更新して通知を行う場合、中継サーバ51は中継サーバ52に対して通知する。中継サーバ52は、その通知によって接続情報を更新するとともに、その通知の送信元である中継サーバ51を除外した他の通信可能な中継サーバ、すなわち中継サーバ53,54に対して通知を転送する。中継サーバ53では、受け取った通知に従って接続情報を更新するとともに、その通知の送信元である中継サーバ52を除外した他の通信可能な中継サーバ、すなわち中継サーバ54に対して通知を転送する。同様に中継サーバ54では、中継サーバ52から受け取った通知に従って接続情報を更新するとともに、その通知の送信元である中継サーバ52を除外した他の通信可能な中継サーバ、すなわち中継サーバ53に対して通知を転送する。
【0053】
中継サーバ53では、中継サーバ54から通知を受け取るが、同じ通知を中継サーバ52から受け取っており、更新日時以前の通知であるので破棄し、それ以上の通知を行わない。同様に、中継サーバ54でも、中継サーバ53から通知を受け取るが、同じ通知を中継サーバ52から受け取っており、更新日時以前の通知であるので破棄し、それ以上の通知を行わない。このようにして、通知をすべての中継サーバに行き渡らせるとともに、通知が中継サーバ52,53,54の間でループしてしまうのを防止することができる。
【0054】
図6は、本発明の中継サーバを含む通信システムの第2の実施の形態を示す構成図である。図中、図1と同様の部分には同じ符号を付して説明を省略する。6はデータベースサーバである。上述の第1の実施の形態では、それぞれの中継サーバにおける接続情報を中継サーバ間で通知しあって共有する例を示した。この場合、同じ接続情報をそれぞれの中継サーバにおいて保持する必要がある。この第2の実施の形態では、それぞれの中継サーバで保持していた接続情報を一括してデータベースサーバ6に保持させ、中継サーバによって共用する例を示している。
【0055】
データベースサーバ6は、例えば上述の図2に示すような接続情報を、それぞれの中継サーバ毎に保持しており、中継サーバからの問い合わせに応じて接続情報を提供する。また、中継サーバからの更新要求に応じて、要求元の中継サーバの接続情報を更新する。
【0056】
中継サーバ4,5は、ネットワーク機器からのログインの要求や他のネットワーク機器に対する接続要求、さらには接続後の通信終了、ログアウトなど、ネットワーク機器との接続の状態が変化すると、当該ネットワーク機器に対応する接続情報の更新をデータベースサーバ6に対して要求する。また、ネットワーク機器からの接続要求を受けたとき、接続先のネットワーク機器の接続情報をデータベースサーバ6から取得して、当該接続先のネットワーク機器が接続されている中継サーバを割り出す。このとき、その接続先のネットワーク機器の接続状態を判断し、通信が可能か否かについても判断することが可能である。さらに、ネットワーク機器から接続要求を行う前に、中継サーバがデータベースサーバ6から通信可能なネットワーク機器の一覧情報を取得し、接続されているネットワーク機器に提供することも可能である。
【0057】
この第2の実施の形態における通信手順は、ほぼ上述の図3,図4に示された手順を実行すればよく、ここでは相違点のみについて説明する。まず、ネットワーク機器からTCP/IPコネクションが確立され、ユーザID等に基づいて認証を行う際には、中継サーバはデータベースサーバ6へ接続情報あるいはネットワーク機器の登録情報を問い合わせ、当該ネットワーク機器に対応する接続情報を取得して認証を行うことができる。あるいは中継サーバにネットワーク機器の登録情報を保持しておき、保持している登録情報に従って認証を行ってもよい。認証後、接続を許可する場合には、接続情報の更新をデータベースサーバ6に対して要求する。この動作は、接続要求時に別の接続を確保する場合においても同様である。
【0058】
中継サーバに接続されているネットワーク機器から接続要求を受けた場合には、接続先の接続情報をデータベースサーバ6に対して問い合わせ、当該接続情報を取得する。取得した接続情報に従い、接続先のネットワーク機器が接続されている中継サーバを割り出すとともに、接続先のネットワーク機器が通信可能か否かを調べる。接続先のネットワーク機器が通信可能であれば、割り出した中継サーバに対して接続要求を送る。接続先のネットワーク機器が通信を承諾したら、その接続先のネットワーク機器が接続されている中継サーバ、および、接続要求元のネットワーク機器が接続されている中継サーバは、接続情報の更新をデータベースサーバ6に要求する。以後、ネットワーク機器間でデータ通信が行われる。
【0059】
通信終了後、終了通知をネットワーク機器間で転送し、それぞれのネットワーク機器から接続の開放通知を受け取ると、それぞれのネットワーク機器が接続されている中継サーバでは、接続情報の更新をデータベースサーバ6に要求する。また、ネットワーク機器からログアウトが通知されると、これに応じて中継サーバは接続情報の更新をデータベースサーバ6に要求する。
【0060】
このようにして、ネットワーク機器と中継サーバとの接続状態が変化するたびにデータベースサーバ6に更新を要求することによって、データベースサーバ6にはすべての中継サーバにおける常に最新の接続情報が保持されることになる。これを複数の中継サーバで共用すれば、それぞれの中継サーバが接続情報を保持しなくても、ネットワーク機器間の通信を管理することができる。
【0061】
【発明の効果】
以上の説明から明らかなように、本発明によれば、ローカルシステム内のネットワーク装置から中継サーバへ予め接続して通信路を確保しておいて、この通信路を用いてデータの中継を行うので、インターネットからローカルシステム内のネットワーク機器へのデータ転送、あるいは異なるローカルシステム内のネットワーク装置間のデータ転送を実現することができる。また、それぞれの中継サーバがネットワーク装置の接続情報を共有あるいは共用することによって、ネットワーク装置がいずれの中継サーバに接続されていても、接続先のネットワーク機器がどの中継サーバに接続されているかを意識することなく、容易にネットワーク機器間での通信を行うことができるという効果がある。
【図面の簡単な説明】
【図1】本発明の中継サーバを含む通信システムの第1の実施の形態を示す構成図である。
【図2】接続情報保持部42が保持している接続情報を含む情報の一例の説明図である。
【図3】本発明の中継サーバを含む通信システムの第1の実施の形態におけるログインおよびログアウト時の通信手順の一例を示すシーケンス図である。
【図4】本発明の中継サーバを含む通信システムの第1の実施の形態における接続要求時の通信手順の一例を示すシーケンス図である。
【図5】中継サーバ間の通知の転送方法の一例の説明図である。
【図6】本発明の中継サーバを含む通信システムの第2の実施の形態を示す構成図である。
【図7】一般的なインターネットを用いたシステムの一例を示す説明図である。
【符号の説明】
1,2…ローカルシステム、3…インターネット、4,5…中継サーバ、6…データベースサーバ、11,12,21,22…端末、13,23…ゲートウェイ、14,24…LAN、41…通信部、42…接続情報保持部、51〜54…中継サーバ。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a communication system in which a plurality of network devices and a plurality of relay servers are connected by a network, and a relay server suitable for use in such a communication system.
[0002]
[Prior art]
FIG. 7 is an explanatory diagram showing an example of a system using a general Internet. In the figure, 1 and 2 are local systems, 3 is the Internet, 11, 12, 21 and 22 are terminals, 13 and 23 are gateways, and 14 and 24 are LANs. The local system 1 is configured by connecting a terminal 11, a terminal 12, a gateway 13, and the like via a LAN 14. The gateway 13 is connected to the Internet 3 together with the LAN 14 and can use the Internet from various network devices such as the terminals 11 and 12 on the LAN 14. The same applies to the local system 2, and the terminal 21, the terminal 22, the gateway 23, and the like are connected by a LAN 24. The gateway 23 is connected to the Internet 3 together with the LAN 24, and the Internet can be used from various network devices such as the terminals 21 and 22 on the LAN 24. Of course, in the local systems 1 and 2, various other devices may be connected by the LANs 14 and 24.
[0003]
In such a system, one or more global IP addresses are normally assigned to the local systems 1 and 2, but a global IP address is not assigned to each network device in the local systems 1 and 2. Absent. A private IP address is assigned to each network device in each of the local systems 1 and 2, and the gateways 13 and 23 use a function such as NAT or IP masquerade to assign a private IP address and a global IP address. Conversion is in progress. For example, in the local system 1, the terminals 11 and 12 use the Internet 3 via the gateway 13 using the gateways 13 and 23 having such an IP address conversion function. Also in the local system 2, the terminals 21 and 22 use the Internet 3 via the gateway 23.
[0004]
The gateways 13 and 23 or other network devices have functions such as firewalls and proxy servers, and a configuration in which each terminal uses the Internet 3 via these devices is also used. Improves sex.
[0005]
Here, for example, when trying to access the terminal 11 in the local system 1 from the Internet 3, the global IP address of the gateway 13 can be known, but the private IP address of the terminal 11 cannot be known. Therefore, the terminal 11 cannot be accessed from outside the local system 1 by a normal connection method. In addition, the site that receives access may be limited by the firewall function of the gateway 13 or the like. Of course, the same applies to the terminal 12, and the same applies to the terminals 21 and 22 in the local system 2.
[0006]
Furthermore, the terminal 11 and the terminal 12 in the local system 1 and the terminal 21 and the terminal 22 in the local system 2 usually have only a client function, and have a server function for receiving information from other network devices. Not done. Therefore, unless the terminals 11, 12, 21, and 22 access other network devices, information cannot be transmitted from these network devices to these terminals.
[0007]
[Problems to be solved by the invention]
The present invention has been made in view of the above-described circumstances, and a communication system capable of easily connecting from the Internet to a terminal in a local system or between terminals in different local systems, and so on. An object of the present invention is to provide a suitable relay server used in a simple communication system.
[0008]
[Means for Solving the Problems]
The present invention provides a relay server capable of communicating with a plurality of network devices using one or more TCP / IP connections and capable of communicating with other relay servers, and the connection information of the network devices capable of communication. The communication means maintains a TCP / IP connection after establishing a TCP / IP connection with the network device, and receives the connection information based on a request from the network device. In addition to updating, the update of the connection information is notified to the other relay server. The communication unit updates the connection information in the connection information holding unit based on a notification at the time of connection information update from the other relay server.
[0009]
In the communication system in which a plurality of network devices and a plurality of relay servers are connected by a network, the network device establishes and maintains one or more TCP / IP connections with any of the relay servers, Communication is performed by making a connection request with another network device. The relay server holds connection information of a network device capable of communication and establishes the TCP / IP connection with the network device. The connection information is updated based on a request from the network device and notified to another relay server, and the connection information is updated based on a connection information update notification sent from the other relay server. It is characterized by this.
[0010]
As described above, when the connection information of the network device connected to each relay server is updated, it is notified to the other relay server, and the connection information update notification is received from the other relay server. Device connection information can be constantly updated and shared. Therefore, even when a connection request is made from a network device to another network device, the relay server can know to which relay server the connected network device is connected, and immediately relay the communication. Can do. Also, the network device can easily make a connection request without having to be aware of which relay server the connected network device is connected to. Furthermore, since the connection information of network devices connected to other relay servers is also collected in the relay server, if these connection information can be referred to from the network device, connection is made before making a connection request. It becomes possible to confirm the previous state.
[0011]
The notification at the time of updating the connection information as described above can be configured so that the relay server that has performed the update notifies all other relay servers, and the relay server also relays the notification. In this case, when the notification is received, the relay server is configured to forward to other relay servers other than the sender, and when the received notification is a past one before the notification received so far. It may be configured to discard without updating. This makes it possible to spread the notification while preventing the notification loop.
[0012]
The present invention further includes a database server that holds connection information of the network device and provides the connection information to the relay server in a communication system in which a plurality of network devices and a plurality of relay servers are connected by a network. The network device establishes and maintains one or more TCP / IP connections with any of the relay servers, and performs communication by making a connection request with another network device. When the connection information is updated based on a request from the network device after the TCP / IP connection is established with the network device, the updated connection information is stored in the database server. It is.
[0013]
As described above, the connection information of the network devices connected to the respective relay servers is held in the database server, and the connection information is provided to the relay servers. When the connection information is updated, the updated connection information is uploaded to the database server, so that the latest connection information is always held and provided. Therefore, even when a connection request is made from a network device to another network device, the relay server obtains connection information from the database server, to which relay server the connection destination network device is connected and which If the communication is possible, the communication can be relayed immediately. Also, the network device can easily make a connection request without having to be aware of which relay server the connected network device is connected to. Furthermore, if the connection information is acquired from the database server and configured to be referred to from the network device, it is possible to check the state of the connection destination before making a connection request in the network device.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a configuration diagram showing a first embodiment of a communication system including a relay server of the present invention. In the figure, the same parts as those in FIG. 4 and 5 are relay servers, 41 is a communication unit, and 42 is a connection information holding unit. The relay server 4 and the relay server 5 are connected to the Internet 3 and each have a global IP address. A log-in request from the network device for this global IP address is accepted, and a communication path is secured by maintaining a connection with the network device. It is also assumed that a communication path is secured between the relay server 4 and the relay server 5. The network device may be connected to any relay server. In the example shown in FIG. 1, the communication path is established between the terminal 11 and the terminal 12 in the local system 1 via the gateway 13 to the relay server 4, and the terminal 21 and the terminal 22 within the local system 2 to the relay server 5. A reserved example is shown. Each of the relay servers 4 and 5 can maintain connection with a plurality of network devices.
[0015]
The relay servers 4 and 5 perform communication by relaying data from the Internet or network devices of other local systems using such communication paths with the network devices. In addition, when a connection request is received from a network device to another network device, etc., if the connection destination has secured a communication path with the relay server, the communication path is used to relay data between the two and Do. If the connection destination is communicably connected to another relay server, the data is relayed between the network device that requested the connection and the other relay server, and the other relay server to which the data has been transferred To relay data to the network device to which it is connected, and realize communication between network devices.
[0016]
For example, the relay server 4 can connect to the gateway 13 in the local system 1, but the terminal 11 and the terminal 12 cannot be connected. However, if the global IP address of the relay server 4 is used, it is possible to connect to the relay server 4 from the terminal 11 or the terminal 12 via the gateway 13. Therefore, by making a login request from the terminal 11 or the terminal 12 to the relay server 4, bidirectional communication between the relay server 4 and the terminal 11 or the terminal 12 that has made the login request becomes possible. Similarly, the relay server 5 can be connected to the gateway 23 in the local system 2, but the terminal 21 and the terminal 22 cannot be connected. However, if the global IP address of the relay server 5 is used, it is possible to connect to the relay server 5 from the terminal 21 or 22 via the gateway 23. Therefore, by making a login request to the relay server 4 from the terminal 21 or 22, bidirectional communication between the relay server 5 and the terminal 21 or terminal 22 that has made the login request becomes possible. Further, the communication between the relay server 4 and the relay server 5 enables the terminal 11 or the terminal 12 and the terminal 21 or the terminal 22 to communicate via the relay server 4 and the relay server 5.
[0017]
The relay server 4 can be configured to include, for example, a communication unit 41 and a connection information holding unit 42. The communication unit 41 can communicate with a plurality of network devices and one or more relay servers via the Internet 3. When the communication unit 41 receives connection request information from a network device that is communicably connected, the connection destination network device is connected with reference to the connection information in the connection information holding unit 42 according to the connection request information. The relay server is determined, the connection request is relayed to the relay server directly or via another relay server, and the data transfer with the network device that requested the connection is relayed. For example, when the terminal 11 is connected to be communicable by the communication unit 41 and receives connection request information with the terminal 21 connected to the relay server 5, data transfer is performed between the terminal 11 and the communication unit 41. At the same time, data transfer is performed between the communication unit 41 and the relay server 5. Further, the communication between the terminal 11 and the terminal 21 is substantially realized by performing the communication between the terminal 21 and the relay server 5. Of course, communication between two network devices connected to the relay server 4 is also possible. It is also possible to secure a plurality of connections with one network device, and one network device can communicate with a plurality of network devices using a plurality of connections.
[0018]
The relay server 5 can be configured in the same manner as the relay server 4. Of course, the number of relay servers is not limited to two, and more relay servers may be provided on the Internet. In addition, each relay server may not be connected to all the relay servers, and may be connected to the target relay server via one or more relay servers.
[0019]
When the communication unit 41 processes a login request from the network device as described above, a connection request to another network device, a communication end after connection, logout, etc., and the state of connection with the network device changes, The connection information in the connection information holding unit 42 corresponding to the network device is updated, and the other relay server is notified that the connection information has been updated. This notification can include, for example, updated connection information of all network devices connected to the relay server, updated connection information of changed network devices, or the like. In addition, it is preferable to include information for specifying the update date and time and the relay server that performed the update.
[0020]
Also, the communication unit 41 receives a notification sent from another relay server, and updates the connection information according to the received notification if it is newer than the connection information held in the connection information holding unit 42. Then, the received notification is transferred to the relay server other than the transmission source of the notification. If the received notification is a previous one before the connection information held in the connection information holding unit 42, the connection information holding unit 42 is discarded without being updated and transferred to another relay server. Also do not. As a result, the connection information held in the connection information holding unit 42 is managed so as to be always up-to-date, and the notification is not transferred in a loop, and is transferred so as to be distributed to all the relay servers. Can do.
[0021]
The connection information holding unit 42 holds connection information of network devices that can be connected to each relay server. The connection information includes, for example, information such as a user ID and a connection state, and can manage users (network devices) that can communicate via the relay server, manage communication states, and the like. FIG. 2 is an explanatory diagram of an example of information including connection information held by the connection information holding unit 42. In the example illustrated in FIG. 2, connection information including information such as a server name and an IP address as information unique to the relay server and information such as a user ID, type, attribute, and status, and the last update date and time of the connection information Such information is held in the connection information holding unit 42. The type can hold information on the type of network device, for example, information such as whether it is a client terminal or a device such as a FAX or a printer. The attribute can hold various types of information associated with the type information. For example, the example shown in FIG. 2 shows an example in which an attribute indicating transmission / reception in units of files is added. As status information, for example, it is possible to hold information indicating whether or not the user is logged in and whether or not communication with other network devices is performed after login. Of course, various other information may be included as connection information.
[0022]
The last update date / time is preferably added when notifying another relay server when the connection information is updated. The relay server that has received the notification can determine whether or not it is the latest information based on the added last update date and time.
[0023]
The connection information for each network device shown in FIG. 2A can be registered in advance by specifying the network device connected to the relay server. As a result, login requests from other than the registered network devices can be rejected, and safety can be ensured. Furthermore, it is possible to improve safety by holding authentication data such as a password.
[0024]
The connection information holding unit 42 holds connection information sent from other relay servers, in addition to connection information of network devices connected to the relay server 4. These can be held as connection information for each relay server as shown in FIG. 2B, for example. By managing connection information for each relay server in this way, when a connection request from a network device to another network device is received, the relay server to which the connection destination network device is connected can be immediately determined. . It is also possible to know the state of the network device at the connection destination. For example, if the network device at the connection destination is not logged in, it is possible to make a connection request an error without relaying to another relay server. .
[0025]
3 and 4 are sequence diagrams showing an example of a communication procedure in the first embodiment of the communication system including the relay server of the present invention. The communication procedure shown in FIG. 3 and FIG. 4 is executed using TCP / IP, and is connected to the relay server, maintained, connected to the terminal, transferred to the terminal, transferred to the terminal, connected to the terminal, and relayed. The connection with the server is terminated. Of these, the connection with the relay server, the maintenance of the connection, and the connection termination with the relay server are shown in FIG. 3, and the connection request to the terminal, data transfer to the terminal, connection termination with the terminal, etc. are shown in FIG. It shows.
[0026]
Here, as an example, a case where communication is performed between the terminal 11 in the local system 1 and the terminal 21 in the local system 2 in FIG. 1 is shown. The terminal 11 is registered as a user in the relay server 4 in advance, and the terminal 21 is registered as a user in the relay server 5 in advance. As the registration information, for example, information on each item of the connection information shown in FIG. In addition, it is recommended to register a password for authentication. These pieces of connection information are recognized as, for example, connection information updates at the time of registration, and are notified from the relay server in which the network device is registered to other relay servers. As a result, the relay server 4 and the relay server 5 share each other's connection information.
[0027]
The terminal 11 is connected to the relay server 4 via the gateway 13 in (1) after starting up or when instructed by an operator, for example, and logs in to establish a TCP / IP connection (connection 1) with the relay server 4 To do. Since the terminal 11 is a network device in the local system 1, it cannot communicate directly from the relay server 4, but can be connected to the relay server 4 by logging in from the terminal 11 that is a client. Since the TCP / IP connection allows bidirectional data communication, communication from the terminal 11 to the relay server 4 and from the relay server 4 to the terminal 11 can be performed.
[0028]
After the connection 1 is established, the terminal 11 sends the user ID to the relay server 4 in (2). The relay server 4 checks whether the received user ID is held as connection information in the connection information holding unit 42. In addition, it is good to authenticate with a user ID of the terminal 11, for example with a password. By this authentication, connection with an unspecified third party can be avoided and safety can be ensured. If the connection information is not registered or authentication fails, the relay server 4 sends a negative response to the terminal 11 or disconnects the connection 1 as it is. If the authentication is successful, an affirmative response is made in (3) and the connection information of the terminal 11 is changed to a login state. In (4), the connection information is updated to another relay server (here, the relay server 5). Notice. In response to this notification, the relay server 5 updates the connection information of the relay server 4 held therein so that it matches the connection information held by the relay server 4.
[0029]
When a TCP / IP connection with the relay server 4 is established and authentication is obtained, a connection holding command is periodically sent to the relay server 4 in (5) in order to hold the connection (connection 1). The confirmation response from the relay server 4 is obtained in (6). This maintains the connection and confirms that the relay server is operating normally. In this way, the connection 1 that enables communication between the terminal 11 and the relay server 4 is maintained.
[0030]
Similarly, in (1 ′), the terminal 21 connects to the relay server 5 via the gateway 23, logs in, and establishes a TCP / IP connection (connection 2) with the relay server 5. Since the terminal 21 is also a network device in the local system 2, it cannot communicate directly from the relay server 5, but can be connected to the relay server 5 by logging in from the terminal 21 that is a client. With connection 2, communication from the terminal 21 to the relay server 5 and from the relay server 5 to the terminal 21 can be performed.
[0031]
After the connection 2 is established, the terminal 21 sends the user ID to the relay server 5 in (2 ′). The relay server 5 checks whether or not the received user ID is registered. In addition, it is good to authenticate with a user ID of the terminal 11, for example with a password. By this authentication, connection with an unspecified third party can be avoided and safety can be ensured. If the connection information is not registered or the authentication fails, the relay server 5 sends a negative response to the terminal 21 or disconnects the connection 2 as it is. If the authentication is successful, an affirmative response is made in (3 ′) and the connection information of the terminal 21 is changed to a login state. In (4 ′), the connection information is updated to another relay server (here, a relay server). 4). In response to this notification, the relay server 4 updates the connection information of the relay server 5 that is held, and matches the connection information that the relay server 5 holds.
[0032]
When a TCP / IP connection with the relay server 5 is established and authentication is obtained, a connection maintenance command is periodically sent to the relay server 5 in (5 ′) in order to hold the connection (connection 2). And a confirmation response from the relay server 5 is obtained in (6 ′). This maintains the connection and confirms that the relay server is operating normally. In this way, the connection 2 capable of communication between the terminal 21 and the relay server 5 is maintained.
[0033]
Note that the connection between the terminal 11 and the relay server 4 and the connection between the terminal 21 and the relay server 5 may be performed at any time before the communication between the two. If the terminals in the local system are connected to any relay server in this way, communication can be performed between those terminals. A sequence in the case of performing communication between terminals is shown in FIG.
[0034]
When a request to connect to the terminal 21 from the terminal 11 is generated, the terminal 11 designates the user ID of the terminal 21 to be connected to the relay server 4 and makes a connection request in (11). Note that the user ID of the terminal 21 that is the connection destination can be specified by an arbitrary method, such as acquiring in advance or confirming and specifying from the list of logged-in users from the relay server 4.
[0035]
The relay server 4 refers to the connection information held in the connection information holding unit 42 and identifies to which relay server the network device having the user ID specified from the terminal 11 is connected. When the connection information corresponding to the specified user ID cannot be acquired, or when the network device corresponding to the specified user ID is not logged in, the relay server 4 sends an error response to the terminal 11. Return to.
[0036]
When the relay server 4 specifies the relay server 5 to which the terminal 21 specified by the connection request is connected, the relay server 4 sends a connection request to the terminal 21 to the specified relay server 5 in (12). The relay server 5 receives the connection request transferred from the relay server 4, and in (13), the connection including information indicating that there is a connection request to the terminal 21 and the user ID of the terminal 11 requesting the connection. Send a request notification.
[0037]
The terminal 21 stores that the connection used for transmitting the connection request notification is used for the connection with the terminal 11, and returns an acceptable response in (14). An error is returned when connection is rejected. The relay server 5 transfers the response from the terminal 21 to the relay server 4 in (15). At this time, in the case of a response for the terminal 21 to receive a connection request, the connection information for the connection 2 of the terminal 21 is updated to store that the connection 2 is used for communication with the terminal 11, and the connection information is updated in (17). Notify other relay server (relay server 4).
[0038]
On the other hand, the relay server 4 returns the response from the terminal 21 transferred from the relay server 5 to the terminal 11 in (16). If the response from the terminal 21 is a response indicating that a connection request is received, the connection information for the connection 1 of the terminal 11 is updated to store the use of the connection 1 for communication with the terminal 21, and the connection information in (18) Is notified to the other relay server (relay server 5). In addition, when the terminal 11 receives the response from the terminal 21 and receives an acceptable response, the terminal 11 stores the connection used (connection 1) as being used for communication with the terminal 21.
[0039]
The relay server 4 receives the notification from the relay server 5 and updates the connection information of the relay server 5 that is held so that it matches the connection information that the relay server 5 holds. Also, the relay server 5 receives the notification from the relay server 4 and updates the connection information of the relay server 4 that is held so as to match the connection information that the relay server 4 holds. Either of the connection information update notifications (17) and (18) may come first depending on the communication path.
[0040]
After confirming that communication is performed between the terminal 11 and the terminal 21 in this way, data is actually transmitted after (26). In the example illustrated in FIG. 4, after it is determined that communication between the terminal 11 and the terminal 21 is performed, a connection request from another network device is received or a connection request to another network device is made. Therefore, a new TCP / IP connection is established in the relay servers 4 and 5, respectively. That is, the terminal 11 logs in to the relay server 4 in (19) and establishes a TCP / IP connection (connection 3) with the relay server 4, and the terminal 11 sends the user ID to the relay server 4 in (20). The relay server 4 authenticates the terminal 11 based on the received user ID and returns a response in (21). At the same time, the connection information for the terminal 11 is updated and notified to another relay server (here, the relay server 5) in (22). The relay server 5 receives the notification from the relay server 4 and updates the connection information of the relay server 4. The relay server 4 periodically transmits a connection holding command from the terminal 11 to the relay server 4 in (24) in order to maintain the new connection 3, and the relay server 4 returns a response to the terminal 11 in (25).
[0041]
Similarly, the terminal 21 logs in to the relay server 5 at (19 ′) to establish a TCP / IP connection (connection 4) with the relay server 5, and the terminal 21 sends the user ID to the relay server 5 at (20 ′). . The relay server 5 authenticates the terminal 21 based on the received user ID and returns a response at (21 ′). At the same time, the connection information for the terminal 21 is updated and notified to another relay server (here, the relay server 4) in (23). The relay server 4 receives the notification from the relay server 5 and updates the connection information of the relay server 5. The relay server 5 periodically transmits a connection holding command from the terminal 21 to the relay server 5 at (24 ′) to maintain the new connection 4, and the relay server 5 sends a response to the terminal 21 at (25 ′). return. If it is not necessary to ensure such a free connection, the procedures (19) to (25) or (19 ′) to (25 ′) are not necessary. Further, even when a plurality of connections are already secured, these procedures need not be performed.
[0042]
If it is confirmed that the communication between the terminal 11 and the terminal 21 is performed according to the above (11) to (18), the terminal 11 sends the connection to the relay server 4 to the terminal 21 in (26). Send data. The relay server 4 receives the data from the terminal 11 and transfers the received data to the relay server 5 in (27). The relay server 5 receives the data transferred from the relay server 4 and transmits it to the terminal 21 using the connection 2 in (28). The terminal 21 receives the data from the terminal 11 sent from the relay server 4 using the connection 2, and transmits a response to the terminal 11 to the relay server 5 in (29). The relay server 5 transfers the response to the terminal 11 transmitted by the terminal 21 to the relay server 4 in (30). The relay server 4 receives the response to the terminal 11 from the terminal 21 transferred from the relay server 5, and transmits the received response to the terminal 11 using the connection 1 in (31).
[0043]
In this way, using the connection 1 between the terminal 11 and the relay server 4, the communication between the relay server 4 and the relay server 5, and the connection 2 between the terminal 21 and the relay server 5, the relay server 4 is used. In addition, by relaying data by the relay server 5, communication between the terminal 11 and the terminal 21 can be performed. The data transfer from the terminal 11 to the terminal 21 according to (26) to (31) may be repeated a plurality of times. Data transfer from the terminal 21 to the terminal 11 may be performed.
[0044]
When the data transfer between the terminal 11 and the terminal 21 is completed, an end notification is sent from the terminal 11 or the terminal 21. Here, it is assumed to be performed from the terminal 11, and in (32), the terminal 11 transmits an end notification to the terminal 21 to the relay server 4 using the connection 1. The relay server 4 transfers the end notification to the terminal 21 received from the terminal 11 to the relay server 5 in (33). The relay server 5 receives the end notification to the terminal 21 transferred from the relay server 4, and transmits the end notification to the terminal 21 using the connection 2 in (34). In step (35), the terminal 11 that has transmitted the end notification transmits to the relay server 4 an open notification indicating that the connection 1 has become free. Also, the terminal 21 that has received the end notification transmits to the relay server 5 an open notification indicating that the connection 2 has become free in (35 ′). As a result, the relay server 4 updates the connection information of the connection 1 to be free from the communication between the terminal 11 and the terminal 21, and informs the other relay server (in this case the relay server 5) in (36). Notice. In addition, the relay server 5 updates the connection information of the connection 2 from the communication for the terminal 11 and the terminal 21 to the vacant state, and informs that to another relay server (here, the relay server 4) in (36 ′). Notice. The relay servers 4 and 5 that have received the connection information update notification update the connection information according to the notification. In this example, 21 does not respond to the end notification, but a response may be returned.
[0045]
The connection 1 and the connection 2 thus opened are periodically transmitted as shown in (5), (6) or (5 ′), (6 ′) by a connection holding command and its response. 11 and the relay server 4 and the connection between the terminal 21 and the relay server 5 are maintained. At this time, connection 1 and connection 3 are secured between the terminal 11 and the relay server 4. Similarly, connection 2 and connection 4 are secured between the terminal 21 and the relay server 5. The connection may be left as it is, or when connection 1 and connection 2 are released, these connections may be disconnected. Of course, connection 1 and connection 2 may be continued and connection 3 and connection 4 may be disconnected.
[0046]
Returning to FIG. 3, for example, when the terminal 11 turns off the power supply or when the connection to the relay server 4 is stopped, the terminal 11 notifies the relay server 4 of logout in (7). At this time, when a plurality of connections are secured, any of the connections may be used. Then, the terminal 11 disconnects all connections. Here, the connection 1 is first disconnected in (8). Further, since the connection 3 is also provided at the time of communication with the terminal 21 in FIG. 4, the connection 3 is also disconnected in (9) and the process ends.
[0047]
The relay server 4 receives a logout notification from the terminal 11, updates the connection information, and notifies the update of the connection information to another relay server (here, the relay server 5) in (10). The relay server 5 updates the connection information of the relay server 4 based on the notification. Further, the relay server 4 disconnects the connections 1 and 3 when the terminal 11 logs out. Note that the terminal 21 can log out to the relay server 5 in the same manner.
[0048]
By executing the procedure as described above, it is possible to perform communication even when each or one is a network device in the local system. Further, even when each network device is connected to another relay server, communication can be performed without any problem. At this time, it is not necessary to know which relay server is connected, and communication can be easily performed.
[0049]
Note that the procedures for connecting to the relay server 4 as described above, maintaining the connection, requesting connection to the terminal, sending data to the terminal, terminating connection with the terminal, and terminating connection with the relay server are as follows. It can be configured to maintain transparency and have no effect on commands and data exchanged by the operating application protocol, and can communicate using existing application protocols as they are. .
[0050]
In the above-described example, the case where the relay server to which the connection request source network device is connected and the relay server to which the connection destination network device is connected can directly communicate is shown. However, the present invention is not limited to such a configuration. For example, one or a plurality of relay servers may be interposed between two relay servers. In this case, each relay server may perform routing.
[0051]
Further, the notification when the connection information is updated may be performed mutually in the above example. In addition, when direct communication can be performed for all relay servers, the updated relay server may notify each of the other relay servers. However, when there is a relay server that cannot perform direct communication, some measures are required such as relaying the notification by the relay server. Regardless of the connection form of multiple relay servers, one way to distribute notifications is to configure each relay server to forward notifications to relay servers other than the notification sender that can communicate directly. That's fine. This makes it possible to send a notification if the communication path is connected regardless of the route. In this case, however, information may be circulated by a loop. In order to prevent this, it is only necessary to refer to the update date and time during notification, discard old notifications before the update date and time of the stored connection information, and prevent further transfer.
[0052]
FIG. 5 is an explanatory diagram of an example of a method for transferring a notification between relay servers. In the figure, reference numerals 51 to 54 denote relay servers. In this example, the relay server 52 has a communication path established with the relay servers 51, 53, and 54, and a communication path is also established between the relay servers 53 and 54. For example, when the relay server 51 updates and notifies the connection information, the relay server 51 notifies the relay server 52. The relay server 52 updates the connection information according to the notification, and forwards the notification to other communicable relay servers excluding the relay server 51 that is the transmission source of the notification, that is, the relay servers 53 and 54. The relay server 53 updates the connection information in accordance with the received notification, and forwards the notification to another communicable relay server excluding the relay server 52 that is the transmission source of the notification, that is, the relay server 54. Similarly, the relay server 54 updates the connection information in accordance with the notification received from the relay server 52, and with respect to another communicable relay server excluding the relay server 52 that is the transmission source of the notification, that is, the relay server 53. Forward notifications.
[0053]
The relay server 53 receives a notification from the relay server 54, but receives the same notification from the relay server 52 and discards it because it is a notification before the update date and time, and does not perform any further notification. Similarly, the relay server 54 also receives a notification from the relay server 53. However, since the same notification is received from the relay server 52 and is a notification before the update date and time, it is discarded and no further notification is performed. In this way, the notification can be distributed to all the relay servers, and the notification can be prevented from looping between the relay servers 52, 53, and 54.
[0054]
FIG. 6 is a block diagram showing a second embodiment of a communication system including the relay server of the present invention. In the figure, the same parts as those in FIG. Reference numeral 6 denotes a database server. In the first embodiment described above, an example in which connection information in each relay server is notified and shared between the relay servers has been described. In this case, it is necessary to hold the same connection information in each relay server. In the second embodiment, the connection information held in each relay server is collectively held in the database server 6 and shared by the relay servers.
[0055]
The database server 6 holds, for example, connection information as shown in FIG. 2 described above for each relay server, and provides connection information in response to an inquiry from the relay server. Further, the connection information of the requesting relay server is updated in response to an update request from the relay server.
[0056]
The relay servers 4 and 5 respond to the network device when the state of the connection with the network device changes, such as a log-in request from the network device, a connection request to another network device, further communication termination after connection, logout, etc. The database server 6 is requested to update connection information. When receiving a connection request from a network device, the connection information of the connection destination network device is acquired from the database server 6 and the relay server to which the connection destination network device is connected is determined. At this time, it is possible to determine the connection state of the network device of the connection destination and determine whether or not communication is possible. Furthermore, before making a connection request from a network device, the relay server can acquire a list of network devices that can be communicated from the database server 6 and provide the information to the connected network device.
[0057]
The communication procedure in the second embodiment is almost the same as the procedure shown in FIGS. 3 and 4 described above, and only the differences will be described here. First, when a TCP / IP connection is established from a network device and authentication is performed based on a user ID or the like, the relay server inquires connection information or registration information of the network device to the database server 6 and corresponds to the network device. Connection information can be acquired and authenticated. Alternatively, network device registration information may be stored in the relay server, and authentication may be performed according to the stored registration information. When the connection is permitted after the authentication, the database server 6 is requested to update the connection information. This operation is the same when another connection is secured when a connection request is made.
[0058]
When a connection request is received from a network device connected to the relay server, the connection information of the connection destination is inquired to the database server 6 and the connection information is acquired. In accordance with the acquired connection information, the relay server to which the connection destination network device is connected is determined, and it is checked whether the connection destination network device can communicate. If the network device at the connection destination can communicate, a connection request is sent to the determined relay server. When the connection destination network device accepts the communication, the relay server to which the connection destination network device is connected and the relay server to which the connection request source network device is connected update the connection information to the database server 6. To request. Thereafter, data communication is performed between network devices.
[0059]
After the communication is completed, an end notification is transferred between the network devices, and when a connection release notification is received from each network device, the relay server to which each network device is connected requests the database server 6 to update the connection information. To do. Further, when logout is notified from the network device, the relay server requests the database server 6 to update the connection information accordingly.
[0060]
In this way, the database server 6 always holds the latest connection information in all the relay servers by requesting the database server 6 to update whenever the connection state between the network device and the relay server changes. become. If this is shared by a plurality of relay servers, communication between network devices can be managed without each relay server holding connection information.
[0061]
【The invention's effect】
As is clear from the above description, according to the present invention, the network device in the local system is connected in advance to the relay server to secure a communication path, and data is relayed using this communication path. Data transfer from the Internet to network devices in the local system or data transfer between network devices in different local systems can be realized. In addition, each relay server shares or shares the connection information of the network device, so it is conscious of which relay server the connected network device is connected to regardless of which relay server the network device is connected to. Thus, there is an effect that communication between network devices can be easily performed.
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing a first embodiment of a communication system including a relay server of the present invention.
FIG. 2 is an explanatory diagram of an example of information including connection information held by a connection information holding unit.
FIG. 3 is a sequence diagram showing an example of a communication procedure at the time of login and logout in the first embodiment of the communication system including the relay server of the present invention.
FIG. 4 is a sequence diagram showing an example of a communication procedure at the time of a connection request in the first embodiment of the communication system including the relay server of the present invention.
FIG. 5 is an explanatory diagram illustrating an example of a method for transferring a notification between relay servers.
FIG. 6 is a configuration diagram showing a second embodiment of a communication system including the relay server of the present invention.
FIG. 7 is an explanatory diagram showing an example of a system using a general Internet.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1, 2 ... Local system, 3 ... Internet, 4, 5 ... Relay server, 6 ... Database server, 11, 12, 21, 22 ... Terminal, 13, 23 ... Gateway, 14, 24 ... LAN, 41 ... Communication part, 42: Connection information holding unit, 51-54: Relay server.

Claims (4)

複数のネットワーク装置とそれぞれ1以上のTCP/IPコネクションを用いて通信可能であるとともに他の中継サーバと通信可能な通信手段と、通信可能な前記ネットワーク装置の接続情報を保持する接続情報保持手段を有し、前記通信手段は、前記ネットワーク装置とTCP/IPコネクションの確立後、前記TCP/IPコネクションを維持し、前記ネットワーク装置からの要求に基づいて前記接続情報を更新するとともに、該接続情報の更新を前記他の中継サーバに通知することを特徴とする中継サーバ。  Communication means capable of communicating with a plurality of network devices using one or more TCP / IP connections and capable of communicating with other relay servers, and connection information holding means for holding connection information of the network devices capable of communication The communication means maintains a TCP / IP connection after establishing a TCP / IP connection with the network device, updates the connection information based on a request from the network device, and A relay server that notifies the other relay server of an update. 複数のネットワーク装置とそれぞれ1以上のTCP/IPコネクションを用いて通信可能であるとともに他の中継サーバと通信可能な通信手段と、通信可能な前記ネットワーク装置の接続情報を保持する接続情報保持手段を有し、前記通信手段は、前記他の中継サーバからの接続情報更新時の通知に基づいて前記接続情報保持手段中の前記接続情報を更新することを特徴とする中継サーバ。  Communication means capable of communicating with a plurality of network devices using one or more TCP / IP connections and capable of communicating with other relay servers, and connection information holding means for holding connection information of the network devices capable of communication And the communication unit updates the connection information in the connection information holding unit based on a notification when the connection information is updated from the other relay server. 複数のネットワーク装置及び複数の中継サーバがネットワークによって接続された通信システムにおいて、前記ネットワーク装置は、いずれかの前記中継サーバと1以上のTCP/IPコネクションを確立して維持し、他のネットワーク装置との接続要求を行って通信を行うものであり、中継サーバは、通信可能なネットワーク装置の接続情報を保持するとともに、前記ネットワーク装置との間で前記TCP/IPコネクションを確立後、前記ネットワーク装置からの要求に基づいて前記接続情報を更新して他の中継サーバに通知し、また他の中継サーバから送られてくる接続情報更新時の通知に基づいて前記接続情報を更新することを特徴とする通信システム。  In a communication system in which a plurality of network devices and a plurality of relay servers are connected by a network, the network device establishes and maintains one or more TCP / IP connections with any of the relay servers, and other network devices The relay server holds connection information of a network device capable of communication and establishes the TCP / IP connection with the network device, and then establishes the TCP / IP connection from the network device. The connection information is updated based on the request and notified to the other relay server, and the connection information is updated based on the notification at the time of updating the connection information sent from the other relay server. Communications system. 複数のネットワーク装置及び複数の中継サーバがネットワークによって接続された通信システムにおいて、さらに前記ネットワーク装置の接続情報を保持して前記中継サーバに前記接続情報を提供するデータベースサーバを有し、前記ネットワーク装置は、いずれかの前記中継サーバと1以上のTCP/IPコネクションを確立して維持し、他のネットワーク装置との接続要求を行って通信を行うものであり、中継サーバは、前記ネットワーク装置との間で前記TCP/IPコネクションを確立後、前記ネットワーク装置からの要求に基づいて前記接続情報を更新する場合に、更新した接続情報を前記データベースサーバに保持させることを特徴とする通信システム。  In a communication system in which a plurality of network devices and a plurality of relay servers are connected by a network, the network device further includes a database server that holds connection information of the network devices and provides the connection information to the relay servers. Establishes and maintains one or more TCP / IP connections with any of the relay servers, performs communication by requesting connection with another network device, and the relay server communicates with the network device. In the communication system, when the connection information is updated based on a request from the network device after the TCP / IP connection is established, the database server holds the updated connection information.
JP2001007656A 2001-01-15 2001-01-16 Relay server and communication system Expired - Fee Related JP4231985B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001007656A JP4231985B2 (en) 2001-01-16 2001-01-16 Relay server and communication system
US10/045,897 US7206088B2 (en) 2001-01-15 2002-01-10 Relay server, communication system and facsimile system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001007656A JP4231985B2 (en) 2001-01-16 2001-01-16 Relay server and communication system

Publications (3)

Publication Number Publication Date
JP2002217938A JP2002217938A (en) 2002-08-02
JP2002217938A5 JP2002217938A5 (en) 2006-10-26
JP4231985B2 true JP4231985B2 (en) 2009-03-04

Family

ID=18875378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001007656A Expired - Fee Related JP4231985B2 (en) 2001-01-15 2001-01-16 Relay server and communication system

Country Status (1)

Country Link
JP (1) JP4231985B2 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7206088B2 (en) 2001-01-15 2007-04-17 Murata Kikai Kabushiki Kaisha Relay server, communication system and facsimile system
JP2004172771A (en) * 2002-11-18 2004-06-17 Mediaselect Inc Communication control method and communication control program
US20070233844A1 (en) 2006-03-29 2007-10-04 Murata Kikai Kabushiki Kaisha Relay device and communication system
JP4935218B2 (en) * 2006-07-19 2012-05-23 株式会社ナカヨ通信機 Call control server having calling means designation function
EP1942634B1 (en) 2006-11-24 2012-08-29 Murata Machinery, Ltd. Relay server, relay communication system, and communication device
JP2008140254A (en) * 2006-12-04 2008-06-19 Murata Mach Ltd Communication device and relay communication system
US8010647B2 (en) 2006-12-11 2011-08-30 Murata Machinery, Ltd. Relay server and relay communication system arranged to share resources between networks
JP4957225B2 (en) * 2006-12-11 2012-06-20 村田機械株式会社 Relay server and relay communication system
JP5125087B2 (en) * 2006-12-13 2013-01-23 村田機械株式会社 Relay server
EP1990974A3 (en) 2007-05-02 2010-03-24 Murata Machinery, Ltd. Relay server and relay communication system
US8606941B2 (en) 2007-05-02 2013-12-10 Murata Machinery, Ltd. Relay server and relay communication system
JP4645915B2 (en) * 2007-12-27 2011-03-09 村田機械株式会社 Relay server and relay communication system
JP4784598B2 (en) * 2007-12-28 2011-10-05 村田機械株式会社 Relay server and relay communication system
JP4753165B2 (en) * 2007-12-28 2011-08-24 村田機械株式会社 Relay server and relay communication system
JP4947086B2 (en) * 2009-04-09 2012-06-06 村田機械株式会社 Relay communication system
JP5387300B2 (en) * 2009-09-30 2014-01-15 村田機械株式会社 Relay server and relay communication system
JP5552787B2 (en) * 2009-10-02 2014-07-16 村田機械株式会社 Relay server and relay communication system
EP2642701B1 (en) 2010-11-18 2020-12-02 Murata Machinery, Ltd. Relay server and relay communication system
JP5621639B2 (en) 2011-02-08 2014-11-12 村田機械株式会社 Relay server and relay communication system
JP5569697B2 (en) 2011-03-09 2014-08-13 村田機械株式会社 Relay server and relay communication system
CN103503384B (en) 2011-04-21 2016-06-08 村田机械株式会社 Relay Server and relay communications system
JP2015082696A (en) * 2013-10-21 2015-04-27 株式会社オプティム Communication relay terminal, communication relay system, communication relay method, and program for communication relay terminal
JP6787576B2 (en) * 2017-02-20 2020-11-18 ウイングアーク1st株式会社 Cloud relay system and relay server
CN109861736B (en) * 2017-11-30 2021-06-29 北京京东乾石科技有限公司 Aircraft server group and aircraft communication method, server and system

Also Published As

Publication number Publication date
JP2002217938A (en) 2002-08-02

Similar Documents

Publication Publication Date Title
JP4231985B2 (en) Relay server and communication system
JP4231984B2 (en) Relay server and communication system
US7206088B2 (en) Relay server, communication system and facsimile system
JP4222397B2 (en) Relay server
US8499083B2 (en) Relay device and communication system
CA2860680C (en) Device arrangement and method for implementing a data transfer network used in remote control of properties
US20130138819A1 (en) File server device
US8738788B2 (en) First relay server and second relay server
JP3743507B2 (en) Relay server
JP6329947B2 (en) Method for configuring network nodes of a telecommunication network, telecommunication network, program, and computer program
US20020143922A1 (en) Relay server and relay system
US20020095506A1 (en) Relay server, communication system and facsimile system
EP1489809A1 (en) Network access system
JP2005167646A (en) Connection control system, connection controller and connection manager
JP3743506B2 (en) Relay server and relay system
US11792206B2 (en) Relay method, relay system, and relay program
JP4187036B2 (en) Relay server
JP4380945B2 (en) Relay server
US20020143957A1 (en) Relay server, network device, communication system, and communication method
JP3543767B2 (en) Facsimile system
JP3743500B2 (en) Relay server
JP4304410B2 (en) Relay server and communication system
JP3743501B2 (en) Relay server
EP1689122A2 (en) System, method and program for movement management of a mobile node
JP3743502B2 (en) COMMUNICATION SYSTEM, COMMUNICATION METHOD, AND NETWORK DEVICE

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060907

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

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

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

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4231985

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees