JP4803229B2 - 中継サーバ、中継通信システム - Google Patents

中継サーバ、中継通信システム Download PDF

Info

Publication number
JP4803229B2
JP4803229B2 JP2008227540A JP2008227540A JP4803229B2 JP 4803229 B2 JP4803229 B2 JP 4803229B2 JP 2008227540 A JP2008227540 A JP 2008227540A JP 2008227540 A JP2008227540 A JP 2008227540A JP 4803229 B2 JP4803229 B2 JP 4803229B2
Authority
JP
Japan
Prior art keywords
relay server
information
relay
client terminal
server
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.)
Active
Application number
JP2008227540A
Other languages
English (en)
Other versions
JP2010062950A (ja
Inventor
好史 谷本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2008227540A priority Critical patent/JP4803229B2/ja
Priority to TW098128872A priority patent/TWI455547B/zh
Priority to US13/061,234 priority patent/US8356116B2/en
Priority to PCT/JP2009/004254 priority patent/WO2010023958A1/ja
Priority to EP09809613.4A priority patent/EP2323315B1/en
Priority to CN2009801340667A priority patent/CN102138304B/zh
Publication of JP2010062950A publication Critical patent/JP2010062950A/ja
Application granted granted Critical
Publication of JP4803229B2 publication Critical patent/JP4803229B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、遠隔のLAN(Local Area Network)に接続されるクライアント端末が、WAN(Wide Area Network)を超えて通信することを可能にする中継サーバおよび中継通信システムに関する。
遠隔のLANに接続されるクライアント端末が、WANを超えて通信することがある。VPN(Virtual Private Network)は、遠隔のLANが直接に接続されているかのようなネットワークを構築できる。しかし、VPNは、拡張性および柔軟性のあるネットワークを構築することが困難である。
特許文献1が開示する中継通信システムは、VPNと同様に、遠隔のLANが直接に接続されているかのようなネットワークを構築できる。そして、中継通信システムは、VPNと異なり、拡張性および柔軟性のあるネットワークを構築することが容易である。
中継通信システムは、WAN、複数のLANを備える。各LANは、中継サーバを備える。各中継サーバは、中継通信システムが備える中継サーバについての中継グループ情報、中継通信システムが共有するリソースについての共有リソース情報を格納する。
一のLANに接続されるクライアント端末が、他のLANに接続されるクライアント端末が格納するリソースを操作するときには、これらのLANに接続される中継サーバは、中継グループ情報および共有リソース情報に基づいて、リソースの操作を中継する。
中継通信システムが備えるLANが増減することがある。中継通信システムが共有するリソースが更新されることがある。しかし、中継通信システムは、これらの変化に対応して、中継グループ情報および共有リソース情報を更新できる。そして、中継通信システムは、これらの変化に対応して、拡張性および柔軟性のあるネットワークを構築できる。
特開2008−129991号公報
特許文献1が開示する中継通信システムにおいて、LANおよびクライアント端末の増減状態および接続状態が変化することがある。しかし、クライアント端末および中継サーバが通信先を指定するにあたり、装置の増減状態および接続状態をリアルタイムに確認する具体的な手段は開示されていない。さらに、クライアント端末および中継サーバに格納されたアプリケーションの起動状態が変化することがある。しかし、クライアント端末および中継サーバが通信先を指定するにあたり、装置に格納されたアプリケーションの起動状態をリアルタイムに確認する具体的な手段は開示されていない。
そこで、本発明は前記問題点に鑑み、遠隔のLANに接続されるクライアント端末がWANを超えて通信することを可能にする中継通信システムにおいて、クライアント端末および中継サーバが通信先を指定するにあたり、装置の増減状態および接続状態をリアルタイムに確認する具体的な手段を提供することを目的とする。さらに、クライアント端末および中継サーバが通信先を指定するにあたり、装置に格納されたアプリケーションの起動状態をリアルタイムに確認する具体的な手段を提供することを目的とする。
上記課題を解決するため、請求項1記載の発明は、第1ネットワークに接続される第1中継サーバと通信可能であり、第2ネットワークに接続される第2中継サーバとして機能する中継サーバであって、前記第1中継サーバと前記第2中継サーバとが中継グループを構成することを示す中継グループ情報を作成する中継グループ情報作成部と、前記第1中継サーバの起動状態を示す第1中継サーバ起動情報と、前記第1中継サーバと前記第1ネットワークに接続される第1クライアント端末との間の接続状態を含め前記第1中継サーバに登録されている前記第1クライアント端末に関する第1クライアント端末登録情報と、前記第1中継サーバあるいは前記第1クライアント端末に格納されている第1アプリケーションの起動状態を示す第1アプリケーション起動情報と、を含み、前記第1中継サーバが作成する第1中継サーバ情報と、前記第2中継サーバの起動状態を示す第2中継サーバ起動情報と、前記第2中継サーバと前記第2ネットワークに接続される第2クライアント端末との間の接続状態を含め前記第2中継サーバに登録されている前記第2クライアント端末に関する第2クライアント端末登録情報と、前記第2中継サーバあるいは前記第2クライアント端末に格納されている第2アプリケーションの起動状態を示す第2アプリケーション起動情報と、を含み、前記第2中継サーバが作成する第2中継サーバ情報と、を含む中継サーバ情報と、前記中継グループ情報とを、前記第1中継サーバと前記第2中継サーバとの間で共有する中継サーバ間共有部と、前記中継グループ情報と前記中継サーバ情報とを前記第2中継サーバと前記第2クライアント端末との間で共有するクライアント端末間共有部と、
を備えることを特徴とする。
請求項2記載の発明は、請求項1に記載の中継サーバにおいて、さらに、前記中継グループ情報と前記中継サーバ情報とに基づいて選択された前記第1アプリケーションに対する、前記第2中継サーバが中継する通信を実行する通信実行部、を備えることを特徴とする。
請求項3記載の発明は、請求項1または請求項2に記載の中継サーバにおいて、さらに、前記第1アプリケーションおよび前記第2アプリケーションのそれぞれの起動状態の変化に応じて前記第1アプリケーション起動情報および前記第2アプリケーション起動情報を更新することにより、前記中継サーバ情報を更新する起動情報更新部、を備え、前記中継サーバ間共有部は、更新された前記中継サーバ情報を前記第1中継サーバと前記第2中継サーバとの間で共有することを特徴とする。
請求項4記載の発明は、第1ネットワークと、第2ネットワークと、前記第1ネットワークに接続される第1中継サーバと、前記第2ネットワークに接続される第2中継サーバと、を備える中継通信システムであって、前記第1中継サーバと前記第2中継サーバとは、前記第1中継サーバと前記第2中継サーバとが中継グループを構成することを示す中継グループ情報を作成する中継グループ情報作成部、を含み、前記第1中継サーバは、前記第1中継サーバの起動状態を示す第1中継サーバ起動情報と、前記第1中継サーバと前記第1ネットワークに接続される第1クライアント端末との間の接続状態を含め前記第1中継サーバに登録されている前記第1クライアント端末に関する第1クライアント端末登録情報と、前記第1中継サーバあるいは前記第1クライアント端末に格納されている第1アプリケーションの起動情報と、を含む第1中継サーバ情報を作成する第1中継サーバ情報作成部、を含み、前記第2中継サーバは、前記第2中継サーバの起動状態を示す第2中継サーバ起動情報と、前記第2中継サーバと前記第2ネットワークに接続される第2クライアント端末との間の接続状態を含め前記第2中継サーバに登録されている前記第2クライアント端末に関する第2クライアント端末登録情報と、前記第2中継サーバあるいは前記第2クライアント端末に格納されている第2アプリケーションの起動情報と、を含む第2中継サーバ情報を作成する第2中継サーバ情報作成部、を含み、前記第1中継サーバと前記第2中継サーバとは、前記第1中継サーバ情報と前記第2中継サーバ情報と、を含む中継サーバ情報と、前記中継グループ情報とを、前記第1中継サーバと前記第2中継サーバとの間で共有する中継サーバ間共有部、を含み、前記第1中継サーバは、前記中継グループ情報と前記中継サーバ情報とを前記第1中継サーバと前記第1クライアント端末間において共有する第1クライアント端末間共有部、を含み、前記第2中継サーバは、前記中継グループ情報と前記中継サーバ情報とを前記第2中継サーバと前記第2クライアント端末間において共有する第2クライアント端末間共有部、を含むことを特徴とする。
請求項5記載の発明は、請求項4に記載の中継通信システムにおいて、前記第1中継サーバは、前記中継グループ情報と前記中継サーバ情報とに基づいて選択された前記第2アプリケーションに対する、前記第1中継サーバが中継する通信を実行する通信実行部、を含むことを特徴とする。
請求項6記載の発明は、請求項4または請求項5に記載の中継通信システムにおいて、前記第1中継サーバと前記第2中継サーバとは、前記第1アプリケーションおよび前記第2アプリケーションのそれぞれの起動状態の変化に応じて前記第1アプリケーション起動情報および前記第2アプリケーション起動情報を更新することにより、前記中継サーバ情報を更新する起動情報更新部、を含み、前記中継サーバ間共有部は、更新された前記中継サーバ情報を前記第1中継サーバと前記第2中継サーバとの間で共有することを特徴とする。
中継通信システムは、第1ネットワークおよび第2ネットワークを備える。第1ネットワークは、第1中継サーバおよび第1クライアント端末を備える。第1ネットワークに接続されている端末は、第1アプリケーションを備える。第2ネットワークは、第2中継サーバおよび第2クライアント端末を備える。第2ネットワークに接続されている端末は、第2アプリケーションを備える。第1中継サーバおよび第2中継サーバは、第1アプリケーションおよび第2アプリケーションの相互間の通信を中継する。
第1(第2)中継サーバは、中継グループ情報、第1(第2)中継サーバ情報、クライアント端末情報を作成する。中継グループ情報は、第1中継サーバおよび第2中継サーバが中継グループを構成することを示す情報である。第1(第2)中継サーバ情報は、第1(第2)中継サーバと通信可能である第1(第2)クライアント端末を示す情報であるとともに、第1(第2)アプリケーションを示す情報である。クライアント端末情報は、第1(第2)クライアント端末の第1(第2)ネットワークにおける接続環境を示す情報である。
第1(第2)中継サーバは、中継グループ情報を参照することにより、第1中継サーバ情報および第2中継サーバ情報を、第1中継サーバおよび第2中継サーバの相互間において共有できる。第1(第2)中継サーバは、各々のクライアント端末情報を参照することにより、中継グループ情報および中継サーバ情報を、第1(第2)中継サーバおよび第1(第2)クライアント端末の相互間において共有できる。
第1(第2)中継サーバ情報は、第1(第2)中継サーバ、第1(第2)クライアント端末の通信可否情報を含めることができる。第1(第2)中継サーバ情報は、第1(第2)ネットワークに接続された端末の第1(第2)アプリケーションの通信可否情報を含めることができる。中継通信システム内の各装置は、装置の増減状態および接続状態について情報を共有できる。中継通信システム内の各装置は、アプリケーションの起動状態について情報を共有できる。中継通信システム内の各装置は、装置の増減状態および接続状態、アプリケーションの起動状態に基づいて、データ送受信を実行する相手方であるクライアント端末や中継サーバのアプリケーションを選択できる。
{中継通信システムの全体構成}
以下、図面を参照しつつ、本発明の実施の形態について説明する。図1は、中継通信システムの全体構成を示す図である。中継通信システムは、LAN1、2、WAN3から構成される。LAN1、2は、遠隔に構築される小規模なネットワークである。WAN3は、インターネットなどの大規模なネットワークである。
LAN1は、クライアント端末11、中継サーバ12から構成される。LAN2は、クライアント端末21、中継サーバ22から構成される。WAN3は、SIP(Session Initiation Protocol)サーバ31から構成される。
クライアント端末11、21は、パーソナルコンピュータなどである。中継サーバ12、22は、クライアント端末11、21の相互間の通信を中継する。SIPサーバ31は、中継サーバ12、22の相互間の通信を中継する。
本実施の形態においては、中継サーバ12、22の相互間の通信プロトコルとして、SIPを利用するが、SIP以外のプロトコルを利用してもよい。SIP以外のプロトコルを利用するときには、中継サーバ12、22の相互間の通信が直接に実行されればよい。
{中継サーバの構成要素}
図2は、中継サーバ12(22)の構成要素を示す図である。中継サーバ12(22)は、インターフェース部121(221)、制御部122(222)、データベース格納部123(223)から構成される。括弧が付されていない符号は、中継サーバ12における符号を示す。括弧が付されている符号は、中継サーバ22における符号を示す。
インターフェース部121(221)は、プライベートIPアドレスを利用して、LAN1(2)に接続されるクライアント端末11(21)に対して通信を実行する。インターフェース部121(221)は、グローバルIPアドレスを利用して、WAN3に接続されるSIPサーバ31に対して通信を実行する。
制御部122(222)は、クライアント端末11、21の相互間の通信を中継するための制御を行なう。制御部122(222)は、データベース格納部123(223)に格納される以下の情報を作成または更新する。
データベース格納部123(223)は、中継グループ情報格納部124(224)、中継サーバ情報格納部125(225)、クライアント端末情報格納部126(226)
から構成される。以上の情報の具体例について後述する。
本実施の形態においては、中継サーバ12、22は、後述のクライアント端末11、21と異なりアプリケーションプログラム(以下、アプリケーションと記す。)を備えないが、後述のクライアント端末11、21と同様にアプリケーションを備えてもよい。中継サーバ12、22がアプリケーションを備えるときには、中継サーバ12、22のアプリケーションの識別情報が、中継サーバ12、22のアプリケーションの起動情報として後述の中継サーバ情報に含まれればよい。
{クライアント端末の構成要素}
図3は、クライアント端末11(21)の構成要素を示す図である。クライアント端末11(21)は、インターフェース部111(211)、制御部112(212)、アプリケーション113(213)、データベース格納部116(216)から構成される。括弧が付されていない符号は、クライアント端末11における符号を示す。括弧が付されている符号は、クライアント端末21における符号を示す。
インターフェース部111(211)は、プライベートIPアドレスを利用して、LAN1(2)に接続される中継サーバ12(22)に対して通信を実行する。
制御部112(212)は、クライアント端末11(21)および中継サーバ12(22)の相互間の通信を実行するための制御を行なう。
制御部112(212)は、アプリケーション113(213)に処理されるアプリケーションデータを入力または出力する。アプリケーション113(213)は、第1アプリケーション114(214)、第2アプリケーション115(215)から構成される。第1アプリケーション114、214は、同一のアプリケーションである。第2アプリケーション115、215は、同一のアプリケーションである。第1アプリケーション114、214は、第2アプリケーション115、215と相互に異なる。
制御部112(212)は、データベース格納部116(216)に格納される以下の情報を作成または更新する。データベース格納部116(216)は、中継グループ情報格納部117(217)、中継サーバ情報格納部118(218)から構成される。以上の情報の具体例について後述する。
{中継グループ情報の具体例}
図4は、中継グループ情報の具体例として、中継グループ情報40を示す図である。中継グループ情報は、中継通信システムを構成する中継サーバの概要を示す情報である。
中継グループ情報40は、上位情報401、下位情報402から構成される。
上位情報401は、上位にある中継グループについての情報である。「id」は、中継グループの識別情報を示す。「lastmod」は、中継グループ情報の最新更新時刻を示す。「name」は、中継グループの名称を示す。
下位情報402は、下位にある中継サーバについての情報である。「id」は、中継サーバの識別情報を示す。
中継グループ情報40は、中継グループ情報格納部124、224、117、217において格納される。すなわち、中継グループ情報40は、中継サーバ12、22およびクライアント端末11、21により共有される。
{中継サーバ情報の具体例}
図5は、中継サーバ情報の具体例として、中継サーバ情報50を示す図である。中継サーバ情報は、中継通信システムを構成する中継サーバの詳細を示す情報であり、中継通信システムを構成するクライアント端末の概要を示す情報である。
中継サーバ情報50は、上位情報501−1、501−2、下位情報502−1、502−2から構成される。上位情報501−1、501−2は、各々、中継サーバ起動情報503−1、503−2を含む。下位情報502−1、502−2は、各々、アプリケーション起動情報504−1、504−2、クライアント端末が中継サーバにログインしているかどうかを示すクライアント端末サイト情報505−1、505−2を含む。
上位情報501−1、501−2は、上位にある中継サーバについての情報である。「id」は、中継サーバの識別情報を示す。「name」は、中継サーバの名称を示す。中継サーバ起動情報503−1、503−2は、中継サーバが起動しているかどうかについての情報である。
下位情報502−1、502−2は、下位にあるクライアント端末についての情報である。「div」は、クライアント端末の部署名を示す。アプリケーション起動情報504−1、504−2は、アプリケーションの識別情報であり、アプリケーションが起動していることを示す情報である。「group」は、クライアント端末が所属する中継グループの識別情報を示す。「id」は、クライアント端末の識別情報を示す。「name」は、クライアント端末の名称を示す。クライアント端末サイト情報505−1、505−2は、クライアント端末がログオンしている中継サーバの識別情報を示す。
中継サーバ情報50は、中継サーバ情報格納部125、225、118、218において格納される。すなわち、中継サーバ情報50は、中継サーバ12、22およびクライアント端末11、21により共有される。
中継サーバが起動しているときには、中継サーバ起動情報503−1、503−2が「active」になっている。中継サーバが起動していないときには、中継サーバ起動情報503−1、503−2が空欄になっている。これにより、中継サーバが起動しているかどうかについての情報が、中継通信システム全体として共有される。
アプリケーションが起動しているときには、アプリケーション起動情報504−1、504−2が記載されている。アプリケーションが起動していないときには、アプリケーション起動情報504−1、504−2が記載されていない。これにより、アプリケーションが起動しているかどうかについての情報が、中継通信システム全体として共有される。また、上述したように、中継サーバ12、22がアプリケーションを格納している場合があり、中継サーバ12、22に格納されているアプリケーションの起動状態を中継通信システム全体で共有することもできる。この場合には、上位情報501−1、501−2に、中継サーバ12、22に格納されているアプリケーションの起動状態の情報として、アプリケーション起動情報504−1、504−2と同様な情報が記載されればよい。また、この中継通信システム全体で起動状態を共有するアプリケーションの数は、単一であってもよいし、複数であってもよい。第1クライアント端末11と第1中継サーバ12の両方にアプリケーションが格納されており、両方の起動状態を共有することもできる。
クライアント端末が中継サーバにログオンしているときには、クライアント端末サイト情報505−1、505−2が記載されている。クライアント端末が中継サーバにログオンしていないときには、クライアント端末サイト情報505−1、505−2が記載されていない。これにより、クライアント端末が中継サーバにログオンしているかどうかについての情報が、中継通信システム全体として共有される。
{クライアント端末情報の具体例}
図6は、クライアント端末情報の具体例として、クライアント端末情報60、70を示す図である。クライアント端末情報は、中継通信システムを構成するクライアント端末の詳細を示す情報である。
クライアント端末情報60、70は、各々、クライアント端末アドレス情報601、701、クライアント端末有効期限情報602、702、クライアント端末ポート情報603、703を含む。
「div」は、クライアント端末の部署名を示す。「group」は、クライアント端末が所属する中継グループの識別情報を示す。クライアント端末アドレス情報601、701は、クライアント端末のIPアドレスを示す。クライアント端末有効期限情報602、702は、クライアント端末のレジスト有効期限を示す。「id」は、クライアント端末の識別情報を示す。「name」は、クライアント端末の名称を示す。「pass」は、クライアント端末のパスワードを示す。クライアント端末ポート情報603、703は、クライアント端末のポート番号を示す。
クライアント端末情報60は、クライアント端末情報格納部126のみにおいて格納されて、クライアント端末情報70は、クライアント端末情報格納部226のみにおいて格納される。すなわち、クライアント端末情報60は、中継サーバ12のみにより保有されて、クライアント端末情報70は、中継サーバ22のみにより保有される。
{情報共有の流れ}
図7および図8は、中継グループ情報、中継サーバ情報が共有される処理の流れを示す図である。中継サーバ12、22が、中継通信システムに参加する。クライアント端末11のユーザは、中継サーバ12にログオンして、第1アプリケーション114を起動するかたわら、第2アプリケーション115を起動しない。クライアント端末21のユーザは、中継サーバ22にログオンして、第1アプリケーション214を起動するとともに、第2アプリケーション215を起動する。
[ステップS1からステップS2までの処理の流れ]
中継サーバ12の管理者および中継サーバ22の管理者は、LAN1、2の相互間において中継通信システムのグループを構築する契約を結ぶ。
中継サーバ12の管理者は、クライアント端末11のユーザに対して、アカウントを作成する(ステップS1:CreateAccount())。制御部122は、中継サーバ情報51−1を作成して、中継サーバ情報格納部125に格納する。
中継サーバ22の管理者は、クライアント端末21のユーザに対して、アカウントを作成する(ステップS2:CreateAccount())。制御部222は、中継サーバ情報51−2を作成して、中継サーバ情報格納部225に格納する。
以上の処理の流れにより、中継サーバ12は、中継サーバ情報51−1を保有する。中継サーバ22は、中継サーバ情報51−2を保有する。
図9の1番目の枠内は、中継サーバ情報51−1を示す。上位情報511−1は、上位にある中継サーバ12についての情報である。「id」として、「relay−server−1@abc.net」が設定されている。「name」として、「RELAY SERVER 1」が設定されている。中継サーバ起動情報513−1として、「active」が設定されている。すなわち、中継サーバ12は、起動している。
下位情報512−1は、下位にあるクライアント端末11についての情報である。「div」として、「software」が設定されている。「group」として、「20070402133100@relay−server−1.abc.net」が設定されている。「id」として、「client−1@relay−server−1.abc.net」が設定されている。「name」として、「CLIENT 1」が設定されている。クライアント端末サイト情報515−1は、空欄になっている。すなわち、クライアント端末11のユーザは、中継サーバ12にログオンしていない。
アプリケーション起動情報は、記載されていない。すなわち、クライアント端末11のユーザは、中継サーバ12にログオンしていないため、中継サーバ12は、クライアント端末11に格納されたアプリケーションの起動状態の如何に関与していない。
図9の2番目の枠内は、中継サーバ情報51−2を示す。上位情報511−2は、上位にある中継サーバ22についての情報である。「id」として、「relay−server−2@abc.net」が設定されている。「name」として、「RELAY SERVER 2」が設定されている。中継サーバ起動情報513−2として、「active」が設定されている。すなわち、中継サーバ22は、起動している。
下位情報512−2は、下位にあるクライアント端末21についての情報である。「div」として、「software」が設定されている。「group」として、「20070402133100@relay−server−1.abc.net」が設定されている。「id」として、「client−2@relay−server−2.abc.net」が設定されている。「name」として、「CLIENT 2」が設定されている。クライアント端末サイト情報515−2は、空欄になっている。すなわち、クライアント端末21のユーザは、中継サーバ22にログオンしていない。
アプリケーション起動情報は、記載されていない。すなわち、クライアント端末21のユーザは、中継サーバ22にログオンしていないため、中継サーバ22は、クライアント端末21に格納されたアプリケーションの起動状態の如何に関与していない。
[ステップS3からステップS4までの処理の流れ]
以下の説明においては、中継サーバ12、22の相互間の通信は、SIPサーバ31により中継される。中継サーバ12(22)が中継サーバ22(12)に対してSIPサーバ31を介して通信を実行する方法について説明する。
中継サーバ12(22)は、SIPサーバ31に対して、中継サーバ22(12)のアカウントが通信先として指定されたデータなどを送信する。SIPサーバ31は、中継サーバ12、22のアカウントを、各々、中継サーバ12、22のグローバルIPアドレスに対応付けている。SIPサーバ31は、中継サーバ22(12)のアカウントに基づいて、中継サーバ22(12)のグローバルIPアドレスを取得する。SIPサーバ31は、中継サーバ22(12)に対して、中継サーバ22(12)のグローバルIPアドレスが通信先として指定されたデータなどを送信する。
中継サーバ12は、中継サーバ22に対して、中継通信システムのグループ構築を要求する(ステップS3:SetGroup())。制御部122は、中継グループ情報42を作成して、中継グループ情報格納部124に格納する。制御部222は、中継グループ情報42を作成して、中継グループ情報格納部224に格納する。
中継サーバ12は、中継サーバ22に対して、中継サーバ情報の交換を要求する(ステップS4:exchange(db))。中継サーバ12は、中継サーバ22に対して、中継サーバ情報51−1の複製を送信する。中継サーバ22は、中継サーバ12に対して、中継サーバ情報51−2の複製を送信する。
制御部122は、中継サーバ情報51−2の複製、中継サーバ情報51−1を合成することにより、中継サーバ情報52を作成して、中継サーバ情報格納部125に格納する。制御部222は、中継サーバ情報51−1の複製、中継サーバ情報51−2を合成することにより、中継サーバ情報52を作成して、中継サーバ情報格納部225に格納する。
制御部122は、クライアント端末情報62を作成して、クライアント端末情報格納部126に格納する。制御部222は、クライアント端末情報72を作成して、クライアント端末情報格納部226に格納する。クライアント端末情報62の作成処理および格納処理は、ステップS1において実行され、クライアント端末情報72の作成処理および格納処理は、ステップS2において実行される。
以上の処理の流れにより、中継サーバ12は、中継グループ情報42、中継サーバ情報52、クライアント端末情報62を保有する。中継サーバ22は、中継グループ情報42、中継サーバ情報52、クライアント端末情報72を保有する。中継グループ情報42、中継サーバ情報52は、中継サーバ12、22により共有されている。
図10の1番目の枠内は、中継グループ情報42を示す。上位情報421は、上位にある中継グループについての情報である。「id」として、「20070402133100@relay−server−1.abc.net」が設定されている。「lastmod」として、「20070402133100」が設定されている。「name」として、「GROUP 1」が設定されている。
下位情報422は、下位にある中継サーバ12、22についての情報である。「id」として、「relay−server−1@abc.net」、「relay−server−2@abc.net」が設定されている。
図10の2番目の枠内は、中継サーバ情報52を示す。上位情報521−1、521−2は、各々、図9の上位情報511−1、511−2と同様である。下位情報522−1、522−2は、各々、図9の下位情報512−1、512−2と同様である。
図10の3番目の枠内は、クライアント端末情報62を示す。「div」として、「software」が設定されている。「group」として、「20070402133100@relay−server−1.abc.net」が設定されている。「id」として、「client−1@relay−server−1.abc.net」が設定されている。「name」として、「CLIENT 1」が設定されている。「pass」として、「client−1」が設定されている。
クライアント端末アドレス情報621は、空欄になっている。クライアント端末有効期限情報622として、「0」が設定されている。クライアント端末ポート情報623は、空欄になっている。すなわち、クライアント端末11のユーザは、中継サーバ12にログオンしていない。
図10の4番目の枠内は、クライアント端末情報72を示す。「div」として、「software」が設定されている。「group」として、「20070402133100@relay−server−1.abc.net」が設定されている。「id」として、「client−2@relay−server−2.abc.net」が設定されている。「name」として、「CLIENT 2」が設定されている。「pass」として、「client−2」が設定されている。
クライアント端末アドレス情報721は、空欄になっている。クライアント端末有効期限情報722として、「0」が設定されている。クライアント端末ポート情報723は、空欄になっている。すなわち、クライアント端末21のユーザは、中継サーバ22にログオンしていない。
[ステップS5からステップS7までの処理の流れ]
クライアント端末11のユーザは、第1アプリケーション114を起動して、中継通信システムにおいて共有したいメッセージを作成する。第1アプリケーション114は、あらかじめ設定されている自己の識別情報を、制御部112に登録する(ステップS5:CreateMessage())。クライアント端末11のユーザは、第1アプリケーション114を起動するかたわら、第2アプリケーション115を起動しない。
クライアント端末21のユーザは、第1アプリケーション214を起動して、中継通信システムにおいて共有したいメッセージを作成する。第1アプリケーション214は、あらかじめ設定されている自己の識別情報を、制御部212に登録する(ステップS6:CreateMessage())。クライアント端末21のユーザは、第1アプリケーション214を起動するとともに、第2アプリケーション215を起動する(ステップS7:CreateMessage())。ステップS6、S7は、同様にして実行される。
[ステップS8からステップS10までの処理の流れ]
クライアント端末11のユーザは、クライアント端末11の識別情報として、「client−1@relay−server−1.abc.net」を入力して、クライアント端末11のパスワードとして、「client−1」を入力する。クライアント端末11のユーザは、ステップS5において、第1アプリケーション114を起動している。クライアント端末11のユーザは、中継サーバ12にログオンする(ステップS8:REGISTER(ID,PASS,APPLKEY1))。制御部122は、クライアント端末情報62を参照することにより、クライアント端末11のユーザの認証を実行する。
制御部122は、クライアント端末11のユーザのログオンを受け付ける。制御部122は、中継サーバ情報52を更新することにより、中継サーバ情報53を作成して、中継サーバ情報格納部125に格納する。制御部122は、クライアント端末情報62を更新することにより、クライアント端末情報63を作成して、クライアント端末情報格納部126に格納する。制御部122は、中継グループ情報42を更新することはない。
クライアント端末11は、中継サーバ12に対して、中継グループ情報および中継サーバ情報の提供を要求する(ステップS9:get())。中継サーバ12は、クライアント端末11に対して、中継グループ情報42および中継サーバ情報53の複製を送信する。クライアント端末11は、中継グループ情報42を中継グループ情報格納部117に格納して、中継サーバ情報53を中継サーバ情報格納部118に格納する。
制御部122は、中継グループ情報42、中継サーバ情報53を参照することにより、中継サーバ情報52が中継サーバ情報53に更新されたことを通知すべき中継サーバを決定する。制御部122は、中継サーバ情報53の中継サーバ起動情報533−2が「active」である中継サーバ22を、通知すべき中継サーバとして決定する。
中継サーバ12は、中継サーバ22に対して、中継サーバ情報52が中継サーバ情報53に更新されたことを通知する(ステップS10:NOTIFY())。制御部222は、中継サーバ情報52を更新することにより、中継サーバ情報53を作成して、中継サーバ情報格納部225に格納する。
制御部222は、クライアント端末情報72を参照することにより、中継サーバ情報52が中継サーバ情報53に更新されたことを通知すべきクライアント端末を決定する。制御部222は、クライアント端末情報72のクライアント端末アドレス情報721が空欄であり、クライアント端末情報72のクライアント端末ポート情報723が空欄であるクライアント端末21を、通知すべきクライアント端末として決定することはない。
以上の処理の流れにより、中継サーバ12は、中継グループ情報42、中継サーバ情報53、クライアント端末情報63を保有する。中継サーバ22は、中継グループ情報42、中継サーバ情報53、クライアント端末情報72を保有する。クライアント端末11は、中継グループ情報42、中継サーバ情報53を保有する。中継グループ情報42、中継サーバ情報53は、中継サーバ12、22、クライアント端末11により共有されている。
図11の1番目の枠内は、中継グループ情報42を示す。ステップS8からステップS10までの処理の流れにおいては、新たな中継サーバが中継通信システムに参加していないため、中継グループ情報42が更新されることはない。
図11の2番目の枠内は、中継サーバ情報53を示す。更新部分を下線部により示す。クライアント端末11のユーザは、第1アプリケーション114を起動しているかたわら、第2アプリケーション115を起動していない。さらに、クライアント端末11のユーザは、中継サーバ12にログオンしている。そのため、下位情報532−1のアプリケーション起動情報534−1として、「applkey=“applkey1”」が記載されているが、「applkey=“applkey2”」が記載されていない。さらに、下位情報532−1のクライアント端末サイト情報535−1は、「relay−server−1@abc.net」に確定されている。
図11の3番目の枠内は、クライアント端末情報63を示す。更新部分を下線部により示す。クライアント端末11のユーザは、中継サーバ12にログオンしている。そのため、クライアント端末アドレス情報631は、「192.168.10.2」に確定されている。また、クライアント端末有効期限情報632は、「1213935960484」に確定されている。さらに、クライアント端末ポート情報633は、「5070」に確定されている。
図11の4番目の枠内は、クライアント端末情報72を示す。ステップS8からステップS10までの処理の流れにおいては、クライアント端末21のユーザが中継サーバ22にログオンしていないため、クライアント端末情報72が更新されることはない。
[ステップS11からステップS14までの処理の流れ]
クライアント端末21のユーザは、クライアント端末21の識別情報として、「client−2@relay−server−2.abc.net」を入力して、クライアント端末21のパスワードとして、「client−2」を入力する。クライアント端末21のユーザは、ステップS6、S7において、第1アプリケーション214、第2アプリケーション215を起動している。クライアント端末21のユーザは、中継サーバ22にログオンする(ステップS11:REGISTER(ID,PASS,APPLKEY1,APPLKEY2))。制御部222は、クライアント端末情報72を参照することにより、クライアント端末21のユーザの認証を実行する。
制御部222は、クライアント端末21のユーザのログオンを受け付ける。制御部222は、中継サーバ情報53を更新することにより、中継サーバ情報54を作成して、中継サーバ情報格納部225に格納する。制御部222は、クライアント端末情報72を更新することにより、クライアント端末情報74を作成して、クライアント端末情報格納部226に格納する。制御部222は、中継グループ情報42を更新することはない。
クライアント端末21は、中継サーバ22に対して、中継グループ情報および中継サーバ情報の提供を要求する(ステップS12:get())。中継サーバ22は、クライアント端末21に対して、中継グループ情報42および中継サーバ情報54の複製を送信する。クライアント端末21は、中継グループ情報42を中継グループ情報格納部217に格納して、中継サーバ情報54を中継サーバ情報格納部218に格納する。
制御部222は、中継グループ情報42、中継サーバ情報54を参照することにより、中継サーバ情報53が中継サーバ情報54に更新されたことを通知すべき中継サーバを決定する。制御部222は、中継サーバ情報54の中継サーバ起動情報543−1が「active」である中継サーバ12を、通知すべき中継サーバとして決定する。
中継サーバ22は、中継サーバ12に対して、中継サーバ情報53が中継サーバ情報54に更新されたことを通知する(ステップS13:NOTIFY())。制御部122は、中継サーバ情報53を更新することにより、中継サーバ情報54を作成して、中継サーバ情報格納部125に格納する。
制御部122は、クライアント端末情報63を参照することにより、中継サーバ情報53が中継サーバ情報54に更新されたことを通知すべきクライアント端末を決定する。制御部122は、クライアント端末情報63のクライアント端末アドレス情報631が確定されていて、クライアント端末情報63のクライアント端末ポート情報633が確定されているクライアント端末11を、通知すべきクライアント端末として決定する。
中継サーバ12は、クライアント端末11に対して、中継サーバ情報53が中継サーバ情報54に更新されたことを通知する(ステップS14:NOTIFY())。制御部112は、中継サーバ情報53を更新することにより、中継サーバ情報54を作成して、中継サーバ情報格納部118に格納する。
以上の処理の流れにより、中継サーバ12は、中継グループ情報42、中継サーバ情報54、クライアント端末情報63を保有する。中継サーバ22は、中継グループ情報42、中継サーバ情報54、クライアント端末情報74を保有する。クライアント端末11は、中継グループ情報42、中継サーバ情報54を保有する。クライアント端末21は、中継グループ情報42、中継サーバ情報54を保有する。中継グループ情報42、中継サーバ情報54は、中継サーバ12、22、クライアント端末11、21により共有されている。
図12の1番目の枠内は、中継グループ情報42を示す。ステップS11からステップS14までの処理の流れにおいては、新たな中継サーバが中継通信システムに参加していないため、中継グループ情報42が更新されることはない。
図12の2番目の枠内は、中継サーバ情報54を示す。更新部分を下線部により示す。クライアント端末21のユーザは、第1アプリケーション214を起動しているとともに、第2アプリケーション215を起動している。さらに、クライアント端末21のユーザは、中継サーバ22にログオンしている。そのため、下位情報542−2のアプリケーション起動情報544−2として、「applkey=“applkey1,applkey2”」が記載されている。さらに、下位情報542−2のクライアント端末サイト情報545−2は、「relay−server−2@abc.net」に確定されている。
図12の3番目の枠内は、クライアント端末情報63を示す。ステップS11からステップS14までの処理の流れにおいては、クライアント端末11のユーザが中継サーバ12からログオフしていないため、クライアント端末情報63が更新されることはない。
図12の4番目の枠内は、クライアント端末情報74を示す。更新部分を下線部により示す。クライアント端末21のユーザは、中継サーバ22にログオンしている。そのため、クライアント端末アドレス情報741は、「192.168.1.10」に確定されている。また、クライアント端末有効期限情報742は、「1213935978484」に確定されている。さらに、クライアント端末ポート情報743は、「5070」に確定されている。
{情報共有のまとめ}
中継通信システムにおいて、LANおよびクライアント端末の増減状態および接続状態が変化することがある。クライアント端末および中継サーバに格納されたアプリケーションの起動状態が変化することがある。そこで、一の中継サーバは、状態変化を認識したときには、中継グループ情報、中継サーバ情報、クライアント端末情報を直ちに更新する。
そして、一の中継サーバは、中継グループ情報および中継サーバ情報に記載されている他の中継サーバに、中継グループ情報および中継サーバ情報が更新されたことを直ちに通知する。さらに、一の中継サーバは、クライアント端末情報に記載されているクライアント端末に、中継グループ情報および中継サーバ情報が更新されたことを直ちに通知する。
しかし、一の中継サーバは、他の中継サーバが中継グループ情報および中継サーバ情報に記載されているとしても、他の中継サーバが未接続状態にあると判断したときには、他の中継サーバに直ちに通知することはない。さらに、一の中継サーバは、クライアント端末がクライアント端末情報に記載されているとしても、クライアント端末が未接続状態にあると判断したときには、クライアント端末に直ちに通知することはない。
これにより、LANおよびクライアント端末の増減状態および接続状態についての情報、および、クライアント端末および中継サーバに格納されたアプリケーションの起動状態についての情報は、中継通信システム全体としてリアルタイムに共有される。
{データ送受信の流れ}
図13および図14は、情報共有後におけるデータ送受信の流れを示す図である。情報共有後においては、図12に示した中継グループ情報42、中継サーバ情報54、クライアント端末情報63、74が格納されている。
クライアント端末11のユーザは、中継サーバ12にログオンして、第1アプリケーション114を起動するかたわら、第2アプリケーション115を起動しない。クライアント端末21のユーザは、中継サーバ22にログオンして、第1アプリケーション214を起動するとともに、第2アプリケーション215を起動する。
第1アプリケーション114、214は、同一のアプリケーションである。第2アプリケーション115、215は、同一のアプリケーションである。第1アプリケーション114、214は、第2アプリケーション115、215と相互に異なる。
[ステップS15からステップS18までの処理の流れ]
図13は、データを送受信する前に、コネクションを確立する処理の流れを示す。クライアント端末11のユーザは、クライアント端末11が所属する中継グループを確認する。具体的には、クライアント端末11のユーザは、中継グループ情報42をクライアント端末11の表示画面に表示させる(getGroup())。中継グループ情報42には、中継サーバ12、22の識別情報「relay−server−1@abc.net」、「relay−server−2@abc.net」が設定されている。クライアント端末11のユーザは、クライアント端末11が中継サーバ12、22により構成される中継グループに所属していることを確認する。
クライアント端末11のユーザは、中継グループ情報42に対応する中継サーバ情報54を、クライアント端末11の表示画面に表示させる(getServer())。クライアント端末11のユーザは、中継サーバ情報54を参照して、中継グループを構成する中継サーバ、中継サーバの下位に位置するクライアント端末、そして、中継グループ内で起動しているアプリケーションの情報を確認する。
クライアント端末11のユーザは、中継サーバ情報54を参照して、クライアント端末21とデータの送受信が可能であることを確認する。また、クライアント端末11のユーザは、クライアント端末21において、第1アプリケーション214が起動しており、通信可能であることを確認する。
第1アプリケーション114は、中継サーバ12について、中継サーバ情報54の中継サーバ起動情報543−1が「active」に設定されていることを確認する。すなわち、中継サーバ12が起動していることを確認する。
第1アプリケーション114は、中継サーバ22について、中継サーバ情報54の中継サーバ起動情報543−2が「active」に設定されていることを確認する。すなわち、中継サーバ22が起動していることを確認する。
第1アプリケーション114は、クライアント端末21について、中継サーバ情報54のクライアント端末サイト情報545−2が「relay−server−2@abc.net」に設定されていることを確認する。すなわち、クライアント端末21が中継サーバ22にログオンしていることを確認する。
第1アプリケーション114は、クライアント端末21について、中継サーバ情報54のアプリケーション起動情報544−2が「applkey1,applkey2」に設定されていることを確認する。すなわち、クライアント端末21に格納された第1アプリケーション214および第2アプリケーション215が起動していることを確認する。
第1アプリケーション114は、中継サーバ12、22を介して、クライアント端末21に格納された第1アプリケーション214に対して、データを送信できることを確認する。第1アプリケーション114は、クライアント端末21に格納された第1アプリケーション214に対して、データを送信することを決定する。
第1アプリケーション114は、制御部112に対して、コネクション確立の要求情報を出力する。クライアント端末11は、クライアント端末11および中継サーバ12の相互間の通信(stream(1))において、中継サーバ12に対して、コネクション確立の要求情報を送信する(ステップS15:open(client−2,client−1,applkey1))。
中継サーバ12は、stream(1)、中継サーバ12および中継サーバ22の相互間の通信(stream(2))を、自己が中継する通信として関連付ける(stream(1):open()==stream(2):open())。中継サーバ12は、stream(2)において、中継サーバ22に対して、コネクション確立の要求情報を送信する(ステップS15.1:open(client−2,client−1,applkey1))。
中継サーバ22は、stream(2)、中継サーバ22およびクライアント端末21の相互間の通信(stream(3))を、自己が中継する通信として関連付ける(stream(2):open()==stream(3):open())。中継サーバ22は、stream(3)において、クライアント端末21に対して、クライアント端末情報74を用いてコネクション確立の要求情報を送信する(ステップS15.1.1:open(client−2,client−1,applkey1))。すなわち、コネクション確立の要求情報は、クライアント端末21に対応するクライアント端末アドレス情報742「192.168.1.10」、クライアント端末ポート情報745「5070」などに基づいて、クライアント端末21に送信される。制御部212は、コネクション確立の要求情報を、第1アプリケーション214に対して出力すべきであり、第2アプリケーション215に対して出力すべきでないことを確認する。制御部212は、第1アプリケーション214に対して、コネクション確立の要求情報を出力する。
クライアント端末21は、stream(3)において、中継サーバ22に対して、コネクション確立の許可情報を送信する(ステップS15.1.1に対するack)。
中継サーバ22は、stream(2)およびstream(3)の関連付けを参照する(stream(2):ack()==stream(3):ack())。中継サーバ22は、stream(2)において、中継サーバ12に対して、コネクション確立の許可情報を送信する(ステップS15.1に対するack)。
中継サーバ12は、stream(1)およびstream(2)の関連付けを参照する(stream(1):ack()==stream(2):ack())。中継サーバ12は、stream(1)において、クライアント端末11に対して、コネクション確立の許可情報を送信する(ステップS15に対するack)。
クライアント端末11は、中継サーバ12に対して、クライアント端末11および中継サーバ12の相互間のコネクション(connection(1))を確立する(ステップS16:connection(1))。
中継サーバ12は、中継サーバ22に対して、中継サーバ12および中継サーバ22の相互間のコネクション(connection(2))を確立する(ステップS17:connection(2))。中継サーバ12は、connection(1)およびconnection(2)を、自己が中継するコネクションとして関連付ける。
中継サーバ22は、クライアント端末21に対して、クライアント端末情報74を用いて中継サーバ22およびクライアント端末21の相互間のコネクション(connection(3))を確立する(ステップS18:connection(3))。中継サーバ22は、connection(2)およびconnection(3)を、自己が中継するコネクションとして関連付ける。
以上の処理の流れにより、以下に説明するように、クライアント端末11に格納された第1アプリケーション114およびクライアント端末21に格納された第1アプリケーション214は、双方向にデータを送受信できる。
クライアント端末11に格納された第1アプリケーション114がクライアント端末21に格納された第1アプリケーション214に対してデータを送信するときについて説明する。第1アプリケーション114は、制御部112に対して、データを出力する。クライアント端末11は、connection(1)においてデータを送信する(connection(1):send())。中継サーバ12は、connection(1)においてデータを受信したときには、connection(1)およびconnection(2)の関連付けを参照することにより、connection(2)においてデータを送信する(connection(1):recv()==connection(2):send())。
中継サーバ22は、connection(2)においてデータを受信したときには、connection(2)およびconnection(3)の関連付けを参照することにより、connection(3)においてデータを送信する(connection(2):recv()==connection(3):send())。クライアント端末21は、connection(3)においてデータを受信する(connection(3):recv())。制御部212は、第1アプリケーション214に対して、データを出力する。
クライアント端末21に格納された第1アプリケーション214がクライアント端末11に格納された第1アプリケーション114に対してデータを送信するときについて説明する。第1アプリケーション214は、制御部212に対して、データを出力する。クライアント端末21は、connection(3)においてデータを送信する(connection(3):send())。中継サーバ22は、connection(3)においてデータを受信したときには、connection(2)およびconnection(3)の関連付けを参照することにより、connection(2)においてデータを送信する(connection(2):send()==connection(3):recv())。
中継サーバ12は、connection(2)においてデータを受信したときには、connection(1)およびconnection(2)の関連付けを参照することにより、connection(1)においてデータを送信する(connection(1):send()==connection(2):recv())。クライアント端末11は、connection(1)においてデータを受信する(connection(1):recv())。制御部112は、第1アプリケーション114に対して、データを出力する。
[ステップS19からステップS22までの処理の流れ]
図14は、データを送受信した後に、コネクションを切断する処理の流れを示す。図13においては、クライアント端末11に格納された第1アプリケーション114が、クライアント端末21に格納された第1アプリケーション214に対して、コネクション確立の要求情報を送信している。図14においては、クライアント端末21に格納された第1アプリケーション214が、クライアント端末11に格納された第1アプリケーション114に対して、コネクション切断の要求情報を送信している。
第1アプリケーション214は、制御部212に対して、コネクション切断の要求情報を出力する。クライアント端末21は、stream(3)において、中継サーバ22に対して、コネクション切断の要求情報を送信する(ステップS19:close())。
中継サーバ22は、stream(2)およびstream(3)の関連付けを参照する(stream(2):close()==stream(3):close())。中継サーバ22は、stream(2)において、中継サーバ12に対して、コネクション切断の要求情報を送信する(ステップS19.1:close())。
中継サーバ12は、stream(1)およびstream(2)の関連付けを参照する(stream(1):close()==stream(2):close())。中継サーバ12は、stream(1)において、クライアント端末11に対して、コネクション切断の要求情報を送信する(ステップS19.1.1:close())。制御部112は、第1アプリケーション114に対して、コネクション切断の要求情報を出力する。
クライアント端末21は、中継サーバ22に対して、connection(3)を切断する(ステップS20:disconnect(3))。
中継サーバ22は、connection(2)およびconnection(3)の関連付けを参照する(connection(2):disconnect==connection(3):disconnect)。中継サーバ22は、中継サーバ12に対して、connection(2)を切断する(ステップS21:disconnect(2))。
中継サーバ12は、connection(1)およびconnection(2)の関連付けを参照する(connection(1):disconnect==connection(2):disconnect)。中継サーバ12は、クライアント端末11に対して、connection(1)を切断する(ステップS22:disconnect(1))。
クライアント端末および中継サーバは、中継グループ情報および中継サーバ情報を参照する。クライアント端末および中継サーバは、他のクライアント端末および中継サーバの増減状態および接続状態、および、他のクライアント端末および中継サーバに格納されたアプリケーションの起動状態を確認できる。クライアント端末および中継サーバは、他のクライアント端末および中継サーバの状態を確認したうえで、他のクライアント端末および中継サーバとの相互間で双方向にデータを送受信できる。
中継通信システムの全体構成を示す図である。 中継サーバの構成要素を示す図である。 クライアント端末の構成要素を示す図である。 中継グループ情報の具体例を示す図である。 中継サーバ情報の具体例を示す図である。 クライアント端末情報の具体例を示す図である。 情報共有の流れを示す図である。 情報共有の流れを示す図である。 ステップS2後に格納される情報を示す図である。 ステップS4後に格納される情報を示す図である。 ステップS10後に格納される情報を示す図である。 ステップS14後に格納される情報を示す図である。 データ送受信の流れを示す図である。 データ送受信の流れを示す図である。
符号の説明
1、2 LAN
3 WAN
11、21 クライアント端末
12、22 中継サーバ
31 SIPサーバ
111、211 インターフェース部
112、212 制御部
113、213 アプリケーション
114、214 第1アプリケーション
115、215 第2アプリケーション
116、216 データベース格納部
117、217 中継グループ情報格納部
118、218 中継サーバ情報格納部
121、221 インターフェース部
122、222 制御部
123、223 データベース格納部
124、224 中継グループ情報格納部
125、225 中継サーバ情報格納部
126、226 クライアント端末情報格納部

Claims (6)

  1. 第1ネットワークに接続される第1中継サーバと通信可能であり、第2ネットワークに接続される第2中継サーバとして機能する中継サーバであって、
    前記第1中継サーバと前記第2中継サーバとが中継グループを構成することを示す中継グループ情報を作成する中継グループ情報作成部と、
    前記第1中継サーバの起動状態を示す第1中継サーバ起動情報と、前記第1中継サーバと前記第1ネットワークに接続される第1クライアント端末との間の接続状態を含め前記第1中継サーバに登録されている前記第1クライアント端末に関する第1クライアント端末登録情報と、前記第1中継サーバあるいは前記第1クライアント端末に格納されている第1アプリケーションの起動状態を示す第1アプリケーション起動情報と、を含み、前記第1中継サーバが作成する第1中継サーバ情報と、
    前記第2中継サーバの起動状態を示す第2中継サーバ起動情報と、前記第2中継サーバと前記第2ネットワークに接続される第2クライアント端末との間の接続状態を含め前記第2中継サーバに登録されている前記第2クライアント端末に関する第2クライアント端末登録情報と、前記第2中継サーバあるいは前記第2クライアント端末に格納されている第2アプリケーションの起動状態を示す第2アプリケーション起動情報と、を含み、前記第2中継サーバが作成する第2中継サーバ情報と、
    を含む中継サーバ情報と、前記中継グループ情報とを、前記第1中継サーバと前記第2中継サーバとの間で共有する中継サーバ間共有部と、
    前記中継グループ情報と前記中継サーバ情報とを前記第2中継サーバと前記第2クライアント端末との間で共有するクライアント端末間共有部と、
    を備えることを特徴とする中継サーバ。
  2. 請求項1に記載の中継サーバにおいて、さらに、
    前記中継グループ情報と前記中継サーバ情報とに基づいて選択された前記第1アプリケーションに対する、前記第2中継サーバが中継する通信を実行する通信実行部、
    を備えることを特徴とする中継サーバ。
  3. 請求項1または請求項2に記載の中継サーバにおいて、さらに、
    前記第1アプリケーションおよび前記第2アプリケーションのそれぞれの起動状態の変化に応じて前記第1アプリケーション起動情報および前記第2アプリケーション起動情報を更新することにより、前記中継サーバ情報を更新する起動情報更新部、
    を備え、
    前記中継サーバ間共有部は、更新された前記中継サーバ情報を前記第1中継サーバと前記第2中継サーバとの間で共有することを特徴とする中継サーバ。
  4. 第1ネットワークと、第2ネットワークと、
    前記第1ネットワークに接続される第1中継サーバと、
    前記第2ネットワークに接続される第2中継サーバと、
    を備える中継通信システムであって、
    前記第1中継サーバと前記第2中継サーバとは、
    前記第1中継サーバと前記第2中継サーバとが中継グループを構成することを示す中継グループ情報を作成する中継グループ情報作成部、
    を含み、
    前記第1中継サーバは、
    前記第1中継サーバの起動状態を示す第1中継サーバ起動情報と、前記第1中継サーバと前記第1ネットワークに接続される第1クライアント端末との間の接続状態を含め前記第1中継サーバに登録されている前記第1クライアント端末に関する第1クライアント端末登録情報と、前記第1中継サーバあるいは前記第1クライアント端末に格納されている第1アプリケーションの起動情報と、を含む第1中継サーバ情報を作成する第1中継サーバ情報作成部、
    を含み、
    前記第2中継サーバは、
    前記第2中継サーバの起動状態を示す第2中継サーバ起動情報と、前記第2中継サーバと前記第2ネットワークに接続される第2クライアント端末との間の接続状態を含め前記第2中継サーバに登録されている前記第2クライアント端末に関する第2クライアント端末登録情報と、前記第2中継サーバあるいは前記第2クライアント端末に格納されている第2アプリケーションの起動情報と、を含む第2中継サーバ情報を作成する第2中継サーバ情報作成部、
    を含み、
    前記第1中継サーバと前記第2中継サーバとは、
    前記第1中継サーバ情報と前記第2中継サーバ情報と、を含む中継サーバ情報と、前記中継グループ情報とを、前記第1中継サーバと前記第2中継サーバとの間で共有する中継サーバ間共有部、
    を含み、
    前記第1中継サーバは、
    前記中継グループ情報と前記中継サーバ情報とを前記第1中継サーバと前記第1クライアント端末間において共有する第1クライアント端末間共有部、
    を含み、
    前記第2中継サーバは、
    前記中継グループ情報と前記中継サーバ情報とを前記第2中継サーバと前記第2クライアント端末間において共有する第2クライアント端末間共有部、
    を含むことを特徴とする中継通信システム。
  5. 請求項4に記載の中継通信システムにおいて、
    前記第1中継サーバは、
    前記中継グループ情報と前記中継サーバ情報とに基づいて選択された前記第2アプリケーションに対する、前記第1中継サーバが中継する通信を実行する通信実行部、
    を含むことを特徴とする中継通信システム。
  6. 請求項4または請求項5に記載の中継通信システムにおいて、
    前記第1中継サーバと前記第2中継サーバとは、
    前記第1アプリケーションおよび前記第2アプリケーションのそれぞれの起動状態の変化に応じて前記第1アプリケーション起動情報および前記第2アプリケーション起動情報を更新することにより、前記中継サーバ情報を更新する起動情報更新部、
    を含み、
    前記中継サーバ間共有部は、更新された前記中継サーバ情報を前記第1中継サーバと前記第2中継サーバとの間で共有することを特徴とする中継サーバ。
JP2008227540A 2008-09-01 2008-09-04 中継サーバ、中継通信システム Active JP4803229B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2008227540A JP4803229B2 (ja) 2008-09-04 2008-09-04 中継サーバ、中継通信システム
TW098128872A TWI455547B (zh) 2008-09-01 2009-08-27 Relay server and relay communication system
US13/061,234 US8356116B2 (en) 2008-09-01 2009-08-31 Relay server and relay communication system
PCT/JP2009/004254 WO2010023958A1 (ja) 2008-09-01 2009-08-31 中継サーバおよび中継通信システム
EP09809613.4A EP2323315B1 (en) 2008-09-01 2009-08-31 Relay communication system
CN2009801340667A CN102138304B (zh) 2008-09-01 2009-08-31 中继服务器以及中继通信系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008227540A JP4803229B2 (ja) 2008-09-04 2008-09-04 中継サーバ、中継通信システム

Publications (2)

Publication Number Publication Date
JP2010062950A JP2010062950A (ja) 2010-03-18
JP4803229B2 true JP4803229B2 (ja) 2011-10-26

Family

ID=42189243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008227540A Active JP4803229B2 (ja) 2008-09-01 2008-09-04 中継サーバ、中継通信システム

Country Status (1)

Country Link
JP (1) JP4803229B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005027040A (ja) * 2003-07-02 2005-01-27 Ricoh Co Ltd 監視方法、監視プログラム及び集中監視プログラム
JP4207078B2 (ja) * 2006-10-11 2009-01-14 村田機械株式会社 中継サーバ
JP4274231B2 (ja) * 2006-11-24 2009-06-03 村田機械株式会社 中継サーバおよび中継通信システム
JP4831145B2 (ja) * 2008-09-01 2011-12-07 村田機械株式会社 中継サーバおよび中継通信システム
JP5012738B2 (ja) * 2008-09-04 2012-08-29 村田機械株式会社 中継サーバ、中継通信システム

Also Published As

Publication number Publication date
JP2010062950A (ja) 2010-03-18

Similar Documents

Publication Publication Date Title
WO2010023958A1 (ja) 中継サーバおよび中継通信システム
JP5569697B2 (ja) 中継サーバ及び中継通信システム
KR101257724B1 (ko) 제 1 중계 서버 및 제 2 중계 서버
US8554935B2 (en) Relay server and relay communication system
JP4831148B2 (ja) 中継サーバ、中継通信システム
WO2010026727A1 (ja) 中継サーバ、中継通信システム、および通信装置
JP4803229B2 (ja) 中継サーバ、中継通信システム
JP4831145B2 (ja) 中継サーバおよび中継通信システム
KR101446974B1 (ko) 중계 통신 시스템 및 중계 서버
JP5012738B2 (ja) 中継サーバ、中継通信システム
JP5458610B2 (ja) 中継通信システム
JP4798197B2 (ja) 中継サーバ、中継通信システム
JP2010062982A (ja) 通信装置および中継サーバ
JP2011019007A (ja) ネットワークアドレス重複回避方法、装置、システムおよびプログラム
JP5402181B2 (ja) 中継通信システム
JP7230593B2 (ja) 中継装置及びプログラム
JP4222402B2 (ja) 中継サーバ
JP4947086B2 (ja) 中継通信システム
JP5875507B2 (ja) 中継装置、プログラム、情報処理方法、及び情報処理装置
JP5633694B2 (ja) 中継サーバ及び中継通信システム
JP5862231B2 (ja) 中継サーバ
JP5633693B2 (ja) 中継サーバ及び中継通信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110617

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20110620

TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20110707

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110712

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

R150 Certificate of patent or registration of utility model

Ref document number: 4803229

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

Year of fee payment: 3

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

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