JP4246025B2 - コミュニケーションシステムおよびコミュニケーションシステムの形成方法 - Google Patents

コミュニケーションシステムおよびコミュニケーションシステムの形成方法 Download PDF

Info

Publication number
JP4246025B2
JP4246025B2 JP2003331912A JP2003331912A JP4246025B2 JP 4246025 B2 JP4246025 B2 JP 4246025B2 JP 2003331912 A JP2003331912 A JP 2003331912A JP 2003331912 A JP2003331912 A JP 2003331912A JP 4246025 B2 JP4246025 B2 JP 4246025B2
Authority
JP
Japan
Prior art keywords
master
slave
group
terminal
communication system
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 - Lifetime
Application number
JP2003331912A
Other languages
English (en)
Other versions
JP2005100030A (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.)
NTT Comware Corp
Original Assignee
NTT Comware Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Comware Corp filed Critical NTT Comware Corp
Priority to JP2003331912A priority Critical patent/JP4246025B2/ja
Publication of JP2005100030A publication Critical patent/JP2005100030A/ja
Application granted granted Critical
Publication of JP4246025B2 publication Critical patent/JP4246025B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

本発明は、複数の端末間で構成されるコミュニケーションシステムに関し、特に、端末間のコミュニケーションを管理するサーバを不要とした、コミュニケーションシステムおよびコミュニケーションシステムの形成方法に関するものである。
従来、複数の端末装置がネットワークを介して行うコミュニケーションシステムでは、システムを管理するサーバを用いた方式が使用されている。このサーバは、コミュニケーショングループ(以下、「グループ」と呼ぶ)へのクライアントの参加・退去を集中管理し、各端末装置からのコミュニケーション情報の中継を行う。
従来技術のコミュニケーションシステムの概略構成を図14示す。従来のコミュニケーションシステムは、サーバ501が、クライアント601、602、603のネットワーク(グループ)への参加・退去を集中管理し、各クライアントの端末装置間からのコミュニケーション情報の中継を行う。そのため、サーバ501に障害が発生すると、クライアント601、602、603のグループへの参加者情報を管理することができなくなり、各クライアント601、602、603の端末装置間のデータの中継が行えなくなる。つまり、コミュニケーションシステムが機能しなくなる。よって、サーバ501の信頼性や安定性の向上のため、例えば、高性能のサーバを用意したり、サーバ501の二重化(デュアルシステム)などの対策が必要となる。また、サーバの運用・管理などのメンテナンスにも人的・時間的なコストがかかる。
このような問題に対処する先行技術として、コミュニケーションシステムにおける通信装置の障害に対する許容度を増強することを目的とした発明が開示されている。この発明では、通信装置間に2つ以上のアクティブな仮想チャンネルを設け、各々の仮想チャンネルに対して通信装置に個別のインタフェースユニットを設けている。送信データをこれらのアクティブなインターフェイスユニット間で分配しているので、インタフェースユニットの1つに障害が発生しても、送信データの一部分が失われるが、コミュニケーション全体の停止が回避される。(例えば、特許文献1参照)。
しかしながら、この方法においても、各通信装置(特にサーバ)の停止などの障害に対しては対処できないという問題がある。
特表2003−520521号公報
本発明はこのような問題を解決するためになされたもので、その目的は、グループに参加する端末装置だけでコミュニケーションシステムを形成し、これにより従来技術において必要であった、各端末装置のグループへの参加・退去を集中管理したり、各端末装置間のデータの中継を行うサーバを不要とする、コミュニケーションシステムおよびコミュニケーションシステムの形成方法を提供することにある。
本発明のコミュニケーションシステムは、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムであって、マスタとなる端末が、他の端末にグループを開設することを通知するグループ開設手段と、前記マスタが、スレーブとしてグループに参加した端末を管理するスレーブ管理手段と、前記マスタが、グループ内の通信を中継するコミュニケーション情報中継手段と、前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定する次期マスタ選定手段と、前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段とを備え、前記スレーブ管理手段は、新規参加の端末から前記グループへのスレーブとしての参加を要求するグループ参加要求を受信すると、前記グループ管理手段が管理するグループに参加する端末のリストを更新し、前記次期マスタ選定手段が、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記グループ内の全スレーブに送信し、前記スレーブ管理手段は、一の前記スレーブからグループ退去要求を受信すると、前記グループ管理手段が管理するグループに参加する端末のリストを更新し、前記次期マスタ選定手段が、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記一のスレーブを除く前記スレーブに送信することを特徴とする。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
また、本発明のコミュニケーションシステムは、前記マスタが、当該マスタがグループを退去する場合に、その旨を次期マスタに通知するマスタ権限委譲手段と、前記次期マスタが、前記マスタからの通知により、マスタの権限を引き継ぐマスタ権限引継手段とを備えることを特徴とする。
これにより、グループを開設したマスタも、自発的にグループから退去できる。
また、本発明のコミュニケーションシステムは、前記次期マスタが、定期的にマスタ監視用の電文を前記マスタに送信し、該マスタ監視用の電文に対する前記マスタからの応答であるマスタ監視結果を受信することで、前記マスタにおける障害の発生を監視するマスタ障害監視手段と、前記次期マスタが、前記マスタにおける障害の発生を検知した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段とを備えることを特徴とする。
これにより、グループのマスタに障害が発生しても、次期マスタがマスタの役割を引き継ぐことができるので、マスタの障害に対して耐性がある。
また、本発明のコミュニケーションシステムは、前記マスタが、各スレーブの性能を示す情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段とを備えることを特徴とする。
これにより、例えば、CPU性能が高いスレーブなどを次期マスタとして選定でき、マスタが交代した場合にも、円滑にシステムを運用できる。
また、本発明のコミュニケーションシステムは、前記マスタが、各スレーブの他のスレーブとのネットワーク的な位置関係を示す情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段とを備えることを特徴とする。
また、本発明のコミュニケーションシステムは、前記マスタが、各スレーブの送信トラフィック量を示す情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段とを備えることを特徴とする。
また、本発明のコミュニケーションシステムは、スレーブとなる端末が、前記グループを開設することの通知を受信する通知受信手段と、前記スレーブとなる端末が、前記マスタに前記グループへの参加を要求する参加要求手段と、前記スレーブが、前記マスタに前記グループからの退去を要求する退去要求手段と、前記スレーブが、前記マスタから、次期マスタを示す情報とともに前記参加者リスト更新通知を受信すると、当該スレーブが参加しているグループの端末のリストを更新する参加リスト更新手段と、前記スレーブが、前記グループ内の通信を前記マスタと行うコミュニケーション情報送受信手段とを有することを特徴とする。
また、本発明のコミュニケーションシステムの形成方法は、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムの形成方法であって、マスタとなる端末が、他の端末にグループを開設することを通知するステップと、前記マスタが、スレーブとしてグループに参加した端末を管理するステップと、前記マスタが、グループ内の通信を中継するステップと、前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定するステップと、前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐステップと前記マスタが、新規参加の端末から前記グループへのスレーブとしての参加を要求するグループ参加要求を受信すると、前記マスタが、管理するグループに参加する端末のリストを更新し、前記選定するステップにより、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記グループ内の全スレーブに送信するステップと、前記マスタが、一の前記スレーブからグループ退去要求を受信すると、前記マスタが、管理するグループに参加する端末のリストを更新し、前記選定するステップにより、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記一のスレーブを除く前記スレーブに送信するステップとを有することを特徴とする。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
本発明のコミュニケーションシステムにおいては、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムにおいて、マスタとなる端末は、グループに参加した他の端末(スレーブ)を管理し、また、グループ内の通信の中継を行う。また、マスタは、スレーブ中から、マスタの権限を引き継ぐ能力のある次期マスタを選定し、マスタがグループを退去する場合には、選定された次期マスタがマスタの権限を引き継ぐ。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
また、本発明のコミュニケーションシステムにおいては、マスタがグループを退去する場合には、その旨を次期マスタに通知し、次期マスタはマスタからの通知により、マスタの権限を引き継ぐ。
これにより、グループを開設したマスタも、自発的にグループから退去できる。
また、本発明のコミュニケーションシステムにおいては、次期マスタが、マスタにおける障害の発生を監視し、マスタにおける障害の発生を検知した場合には、マスタの権限を引き継ぐ。
これにより、グループのマスタに障害が発生しても、次期マスタがマスタの役割を引き継ぐことができるので、マスタの障害に対して耐性がある。
また、本発明のコミュニケーションシステムにおいては、マスタは、各スレーブの情報(例えば、CPU性能など)を基に、スレーブの優先順位を算出し、スレーブの優先順位を基に、次期マスタを決定する。
これにより、例えば、CPU性能が高いスレーブなどを次期マスタとして選定でき、マスタが交代した場合にも、円滑にシステムを運用できる。
また、本発明のコミュニケーションシステムの形成方法においては、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムにおいて、マスタとなる端末は、グループに参加した他の端末(スレーブ)を管理し、また、グループ内の通信の中継を行う。また、マスタは、スレーブ中から、マスタの権限を引き継ぐ能力のある次期マスタを選定し、マスタがグループを退去する場合には、選定された次期マスタがマスタの権限を引き継ぐ。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
次に本発明を実施するための最良の形態について図面を参照して説明する。
最初に、本発明のコミュニケーションシステムの概要について説明する。
図1は、本発明によるコミュニケーションシステムの概念を説明するための図であり、コミュニケーションシステムを構成する各端末の関係と、各端末が有する主要な機能を例示したものである。以下、図1を参照して、本発明の概要について説明する。
本発明では、コミュニケーションシステムに専用のサーバを用いずに、グループに参加するメンバだけでコミュニケーションシステムを構成する。本発明のコミュニケーションシステムでは、グループを開設して管理する端末装置を「マスタ」、マスタ以外でグループに参加している端末装置を「スレーブ」と呼ぶ。マスタ100はグループを開設して、IPマルチキャストにより、その旨を通知する。スレーブ300は、この通知の受信または、自発的にIPマルチキャストによりマスタ100を検索することにより、マスタ100の存在およびネットワーク上の位置(IPアドレス)を認知することができる。
そして、新規参加スレーブ301は、マスタ100にグループへの参加要求を行い、マスタ100から認可された場合に、グループに参加する。マスタ100は、スレーブ300から送信される端末情報やコミュニケーション情報などに基づき、スレーブ300の優先順位を算出する。(優先順位が最も高いスレーブを「次期マスタ200」と呼ぶ。)マスタがグループから退去する場合は、その旨をマスタ100が主導的に次期マスタ200に通知して、次期マスタ200がマスタ100の権限を受け継いで新規マスタとなる。また、マスタ100に障害が発生した場合は、それを次期マスタ200が検知して、次期マスタ200がマスタ100の権限を受け継いで新規マスタとなる。
なお、役割(マスタ・次期マスタ・スレーブ)に応じて実行する機能に差異があるが、端末装置はお互いに、役割に応じた性能的な違いは無く、対等の立場で接続されている。すなわち、各スレーブ300には、マスタ、次期マスタとして機能するためのアプリケーションプログラムが予めダウンロードされている。
次に、図1に示す各部の有する主要な機能について説明する。本発明のコミュニケーションシステムの構成要素はグループに参加する端末装置であり、役割に応じて以下の機能がある。
マスタ100は、グループを開設してIPマルチキャストによりその旨を複数の端末装置(スレーブ)に同時通報するグループ開設機能(グループ開設手段)101を有する。また、マスタ100は、他端末装置からのグループへの参加・退去の要求を受け付け、参加者リストを管理するスレーブ管理機能(スレーブ管理手段)102、スレーブの優先順位を算出するスレーブ優先順位算出機能(スレーブ優先順位算出手段)103、スレーブ優先順位の算出結果から次期マスタを決定する次期マスタ選定機能(次期マスタ選定手段)104、マスタがグループから退去する場合は、その旨をマスタが主導的に次期マスタに通知して、次期マスタにマスタの機能を委譲するマスタ権限委譲機能(マスタ権限委譲手段)105、スレーブから送信されるコミュニケーション情報の中継を行うコミュニケーション情報中継機能(コミュニケーション情報中継手段)106を有する。また、その他に、「他端末装置(スレーブ)からのマスタ検索の問い合わせに応答する機能」、「コミュニケーション情報の送信および受信を行う機能」などを有する。
また、次期マスタ200は、スレーブの1つであり、マスタ100に障害が発生していないかを監視するマスタ障害監視機能(マスタ障害監視手段)201、障害を検知した場合はマスタ100の役割を受け継ぐマスタ権限引継機能(マスタ権限引継手段)202を備えていることが他のスレーブと異なる。
また、スレーブ300が備える機能としては、「マスタ100の存在およびネットワーク上の位置(IPアドレス)を認知するために、マスタ100からのグループ開設通知を受信する機能」、「自発的にIPマルチキャストによりマスタ100を検索する機能」、「グループに参加する。また、グループから退去する機能」、「コミュニケーション情報の送信および受信を行う機能」などがある。
図1に示すようなコミュニケーションシステムの構成により、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になり、また、グループを開設したマスタも、自発的にグループから退去できる。さらに、グループのマスタに障害が発生しても、次期マスタがマスタの役割を引き継ぐことができるので、マスタの障害に対して耐性がある。
また、図2は、グループを構成する、マスタ、次期マスタ、スレーブの有する機能を詳細に示したものである。なお、マスタ、次期マスタは固定ではなく、他のスレーブで資格のあるスレーブ(CPU性能など一定の要件を満たすスレーブ)が交代することができ、これらのスレーブには、マスタ、次期マスタの機能を実現するためのアプリケーションプログラムがモジュールとして予め保持されている。
まず、共通機能(マスタ・次期マスタ・スレーブの全てで共通の機能)について説明する。
コミュニケーション情報送信機能111、211、311は、コミュニケーション情報を送信する機能であり、コミュニケーション情報には、文字情報・音声情報・動画像情報のいずれの場合もある。
コミュニケーション情報受信機能112、212、312は、コミュニケーション情報を受信する機能である。
制御情報送信機能113、213、313は、制御情報を送信する機能であり、制御情報としては、以下のものがある。なお、括弧内は情報の発信元を示す。
(1)グループ開設通知(発信元:マスタ)
(2)マスタ検索(発信元:マスタ以外)およびその応答(発信元:マスタ)
(3)グループ参加要求(発信元:マスタ以外)およびその応答(発信元:マスタ)
(4)参加者リスト更新通知(発信元:マスタ)
(5)スレーブ退去要求(発信元:マスタ以外)およびその応答(発信元:マスタ)
(6)マスタ退去要求(発信元:マスタ)およびその応答(発信元:次期マスタ)
(7)マスタ変更通知(発信元:新規マスタ)
制御情報受信機能114、214、314は、制御情報送信機能113、213、313の説明の項で示した各種制御情報を受信する機能である。
次に、マスタ100の有する機能について説明する。
グループ開設機能121は、グループを開設して、その旨を他の端末装置へIPマルチキャストにより通知する機能である。
スレーブ管理機能122は、自分が開設したグループへのスレーブからの参加および退去の要求を受け付ける。そして、参加者リスト(現在自分が開設しているグループのスレーブのリスト)を管理する機能である。
コミュニケーション情報中継機能123は、自分が開設しているグループ内での、全てのコミュニケーション情報を中継する機能である。
スレーブ優先順位算出機能124は、次期マスタを決定するために、スレーブからの情報をもとに、スレーブの優先順位を算出する機能である。スレーブの優先順位の算出には、以下の各パラメータ(要素)に基づいて決定する。以下の(1)および(2)に示すパラメータは、スレーブから送信される端末情報に基づき算出し、(3)に示すパラメータは、スレーブから送信されるコミュニケーション情報に基づき算出する。なお、(3)に示すパラメータは、全てのコミュニケーション情報の送受信をマスタが中継して行うので、コミュニケーション情報の送信におけるマスタが占める割合が大きいほど、システム全体のトラフィック量が減少する特性があるので、その特性の効果をより大きくすることを目的としている。
(1)各スレーブのCPU性能やハードディスク容量などの端末装置の性能
(2)スレーブ相互間のネットワーク的な位置関係(スレーブ間で経由するルータ数)
(3)各スレーブが送信したコミュニケーション情報のトラフィック量・送信回数
次期マスタ選定機能125は、スレーブ優先順位算出機能124によるスレーブ優先順位の算出結果を基に、次期マスタとなるスレーブを選定する機能である。
マスタ権限委譲機能126は、マスタ自身がグループを退去する場合に、次期マスタがマスタに成り得るかを確認して、マスタの権限を次期マスタに委譲する機能である。
次に、次期マスタ200の有する機能について説明する。
マスタ障害監視機能221は、マスタが正常に動作しているかを定期的に監視する機能である。マスタに障害が発生したことを認識したときは、マスタ権限引継機能222を起動する。また、マスタの障害発生時に備えて、マスタ権限を引き継ぐのに必要な情報をマスタから定期的に取得する。
マスタ権限引継機能222は、マスタ100のマスタ権限委譲機能126または次期マスタ200のマスタ障害監視機能221から起動される。マスタの機能を引き継いでグループを開設する。そして、マスタ変更通知を全スレーブに送信する機能である。
また、図3は、本発明によるコミュニケーションシステムの処理手順の概要を示すフローチャートである。以下、図3を参照して、その処理手順について説明する。
まず、マスタとなろうとする端末1は、グループ開設のために、「グループ開設通知」を、IPマルチキャストにより、他の端末に送信する(ステップS101、S102)。例えば、端末2などが、端末(マスタ)1から「グループ開設通知」を受信する(ステップS103)。そして、端末(マスタ)1が、グループに参加し、グループが開設される(ステップS104)。
グループ開設後、「グループ開設通知」を受信し、グループに参加しようとする端末(スレーブ)3は、「マスタ検索信号」を全端末装置に対して送信する(ステップS105)。端末(マスタ)1では端末(スレーブ)3からの、「マスタ検索信号」を受信すると(ステップS106)、端末(マスタ)1自身がマスタであることを知らせる「マスタ検索応答」を端末(スレーブ)3に送信する(ステップS107)。端末(スレーブ)3は、端末(マスタ)1から「マスタ検索応答」を受信し(ステップS108)、端末(マスタ)1がマスタであることを確認し、「グループ参加要求」を端末(マスタ)1に送信する(ステップS109)。なお、グループ開設時の「グループ開設通知」を受信していない端末であっても、グループ開設後に「マスタ検索信号」を送信し、端末(マスタ)1から、「グループ開設通知」で送信された情報と同じ情報を取得し、新たにグループに参加することができる。
端末(マスタ)1は、端末(スレーブ)3から「グループ参加要求」を受信すると(ステップS110)、端末(スレーブ)3を含めたスレーブ優先順位を算出し(ステップS111)、グループの参加者リストを更新する(ステップS112)。その後、端末(スレーブ)3に「グループ参加要求応答」を送信する(ステップS113)。端末(スレーブ)3は、端末(マスタ)1からの「グループ参加要求応答」を受信して(ステップS114)、グループに参加する。
また、端末(マスタ)1では、端末(スレーブ)3がグループに参加したことを通知する「参加者リスト更新通知」を、IPマルチキャストにより全端末装置(スレーブ)に送信する(ステップS115)。例えば、端末(次期マスタ)2では、端末(マスタ)1から「参加者リスト更新通知」を受信して(ステップS116)、参加者リストを更新する(ステップS117)。なお、IPマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、新規参加のスレーブ、および退去要求のスレーブにも送信されるが、ユニキャストにより、新規参加のスレーブおよび退去要求のスレーブには送信しないようにもできる。
この後に、端末(スレーブ)3が、他の端末(例えば、端末(次期マスタ)2)とコミュニケーションを行う場合は、コミュニケーション情報を、端末(マスタ)1を中継して、端末(次期マスタ)2に送信する(ステップS118、S119、S120)。
また、端末(マスタ)1が、マスタであることを中止し、マスタ権限を端末(次期マスタ)2に委譲する場合は、「マスタ退去要求」を端末(次期マスタ)2に送信する(ステップS121)。端末(次期マスタ)2は、端末(マスタ)1からの「マスタ退去要求」を受信すると(ステップS122)、「マスタ退去要求応答」を端末(マスタ)1に送信する (ステップS123)。端末(マスタ)1では端末(次期マスタ)2からの「マスタ退去要求応答」を受信して(ステップS124)、マスタとしての機能を停止する(ステップS125)。一方、端末(次期マスタ)2では、「マスタ変更通知」を端末(スレーブ)3を含む全端末装置(スレーブ)に通知し(ステップS126)、例えば、端末(スレーブ)3では「マスタ変更通知」を受信して(ステップS127)、マスタが変更されたことを認識する。
なお、端末(次期マスタ)2では、マスタを常時監視しており(ステップS128)、監視結果がNG(マスタ異常)であれば、端末(次期マスタ)2自身がマスタとなり、「マスタ変更通知」を端末(スレーブ)3を含む全端末装置(スレーブ)に通知する。
また、図4、図5、図6は、本発明によるコミュニケーションシステムのシステム処理フローを示す図である。以下、図4、図5、図6を参照して、その処理手順について説明する。
まず、グループ開設について説明する。まず、マスタになろうとする端末1は、IPマルチキャストにより、端末(マスタ)1自身がマスタであること、及びグループの情報を、端末(次期マスタ)2を含む全端末装置へ通知する(ステップS201、S202)。その後、グループへ参加する端末(スレーブ)を待つ。
続いて、グループに参加しようとする端末(スレーブ)3による「マスタ検索」が行われる。グループに参加しようとする端末(スレーブ)3は、IPマルチキャストにより、「マスタ検索」の信号を全端末装置に送信する(ステップS203)。端末(スレーブ)3からの「マスタ検索」の信号に、端末(マスタ)1のみが応答し、端末(スレーブ)3に「マスタ検索応答」を通知する(ステップS204)。また、この「マスタ検索応答」には、グループについての情報が含まれる。なお、グループ開設時の「グループ開設通知」を受信していない端末であっても、グループ開設後に「マスタ検索信号」を送信し、端末(マスタ)1から、「グループ開設通知」で送信された情報と同じ情報を取得し、新たにグループに参加することができる。
続いて、端末(スレーブ)3のグループへの参加が行われる。端末(スレーブ)3は、端末(マスタ)1から「マスタ検索応答」を受信し、端末(マスタ)1がマスタであることを確認すると、ユーザ入力により、「グループ参加要求」を端末(マスタ)1に送信する(ステップS205)。なお、この「グループ参加要求」には、当該端末の情報(例えば、CPU性能の情報など)も含まれる。
端末(マスタ)1は、端末(スレーブ)3から「グループ参加要求」を受信すると、端末(スレーブ)3を含めたスレーブ優先順位を算出し(ステップS206)、端末(スレーブ)3を加えたグループの参加者リストを更新する(ステップS207)。その後、端末(スレーブ)3に「グループ参加要求応答」を送信する(ステップS208)。端末(スレーブ)3は、端末(マスタ)1からの「グループ参加要求応答」を受信してグループに参加する(ステップS209)。なお、この端末(マスタ)1からの「グループ参加要求応答」により、端末(スレーブ)3では、参加者リストなど、グループに参加するための情報を受信する。
また、端末(マスタ)1では、端末(スレーブ)3がグループに参加したことを示す「参加者リスト更新通知」を、IPマルチキャストにより、全端末装置(スレーブ)に送信する(ステップS210)。例えば、端末(次期マスタ)2では、新規参加者が追加されたことを認識して、参加者リストを更新する(ステップS211)。なお、IPマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、新規参加のスレーブ、にも送信されるが、ユニキャストにより、新規参加のスレーブには送信しないようにもできる。
次に、図5を参照して、グループ内でのコミュニケーションについて説明する。端末(スレーブ)3が、他の端末(例えば、端末(次期マスタ)2)とコミュニケーションを行おうとする場合は、「コミュニケーション情報」を、端末(マスタ)1に送信する(ステップS221)。端末(マスタ)1では、端末(スレーブ)3から受信したコミュニケーション情報を中継して、端末(次期マスタ)2に送信する(ステップS222、S223)。なお、端末(マスタ)1では各スレーブから発信されたトラフィック量を測定する。
続いて、スレーブの退去処理について説明する。例えば、端末(次期マスタ)2が退去する場合は、端末(次期マスタ)2は端末(マスタ)1に対して「スレーブ退去要求」を送信する(ステップS224)。端末(マスタ)1では、端末(次期マスタ)2から「スレーブ退去要求」を受信すると、「スレーブ退去要求応答」を返信する(ステップS225)。端末(次期マスタ)2は、端末(マスタ)1から「スレーブ退去要求応答」を受信して、グループから退去する。
端末(マスタ)1では、端末(次期マスタ)2の退去に伴い、新たにスレーブ優先順位の算出を行い、次期マスタを再度算出する(ステップS226)。また、参加者リストから端末2を削除し、参加者リストの更新を行う(ステップS227)。それから、端末(マスタ)1は、IPマルチキャストにより、全端末装置(スレーブ)に対して「参加者リスト更新通知」を送信する(ステップS228)。例えば、端末(スレーブ)3では、端末(マスタ)1から受信した「参加者リスト更新通知」を基に、参加者リストを更新する(ステップS229)。なお、IPマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、退去要求のスレーブにも送信されるが、ユニキャストにより、退去要求のスレーブには送信しないようにもできる。
次に、マスタ監視処理について説明する。端末(次期マスタ)2では、「マスタ監視用の電文」を定期的に端末(マスタ)1に送信する(ステップS230)。端末(マスタ)1では、端末(次期マスタ)2から受信した「マスタ監視用の電文」に応答して「マスタ監視結果」を送信する(ステップS231)。
ここで、端末(マスタ)1に障害が発生すると(ステップS232)、端末(次期マスタ)2からの「マスタ監視用の電文」に対して、「マスタ監視結果」を送信することができず、端末(次期マスタ)2では、端末(マスタ)1に障害が発生したことを検知する(ステップS233)。その後、マスタ変更プロセスに移行する(マスタ変更プロセスにつては後述する)。
次に、図6を参照して、マスタの退去処理について説明する。
端末(マスタ)1が、マスタであることを中止し、マスタ権限を端末(次期マスタ)2に委譲する場合は、「マスタ退去要求」を端末(次期マスタ)2に送信し(ステップS240)、端末(次期マスタ)2がマスタになることが可能かどうかを確認する。端末(次期マスタ)2は、端末(マスタ)1からの「マスタ退去要求」を受信すると、マスタになることが可能な場合には、「マスタ退去要求応答」を端末(マスタ)1に送信する (ステップS241)。端末(マスタ)1では端末(次期マスタ)2からの「マスタ退去要求応答」を受信すると、端末(次期マスタ)2がマスタになることが可能であることを確認して、グループから退去する。
続いて、端末(次期マスタ)2におけるマスタ変更処理について説明する。端末(次期マスタ)2では、端末(マスタ)1に対して「マスタ退去要求応答」を送信した後に、「マスタ変更通知」を、IPマルチキャストにより、全端末装置(スレーブ)に通知し、端末(次期マスタ)2がマスタの役割を引き継いだことを通知する(ステップS242)。これにより、各スレーブでは、端末(次期マスタ)2がマスタに変更されたことを認識する。
なお、IPマルチキャストによる「マスタ変更通知」の送信は、グループ単位で行われるが、ユニキャストにより送信することもできる。
マスタが変更されると、グループ内の端末(スレーブ)3を含む全スレーブは、自動的にマスタとなった端末2への「グループ参加要求」を送信する(ステップS243)。マスタとなった端末2では、「グループ参加要求」を送信したスレーブの情報を基に、スレーブ優先順位を算出し(ステップS244)、また、参加者リストを更新し(ステップS245)、IPマルチキャストにより、「参加者リスト更新通知」を全端末装置(スレーブ)に通知する(ステップS246)。また、「グループ参加要求応答」を、「グループ参加要求」を送信した各スレーブに対して送信する(ステップS247)。
次に、スレーブのグループへの参加およびグループからの退去時の詳細な手順について説明する。図7から図11は、スレーブのグループ参加およびグループ退去時の手順を示すフローチャートであり、以下、図7から図11を参照してその手順について説明する。
図7は、スレーブがグループに新規参加する場合の、マスタにおける処理手順を示すフローチャートであり、マスタがスレーブから「グループ参加要求」を受信した後の処理手順を示すものである。
まず、マスタはグループに新規参加しようとするスレーブから、「グループ参加要求」の電文を受信し(ステップS301)、「グループ参加要求」に含まれるスレーブの端末情報を取得する(ステップS302)。そして、新規参加スレーブのスレーブ情報を「参加者リスト情報テーブル」へ登録し(ステップS303)、また、グループ情報テーブルを検索し(ステップS304)、参加者リスト情報テーブルを検索する(ステップS305)。
それから、スレーブ優先順位を算出する(ステップS306)。このスレーブ優先順位の算出は、スレーブの新規参加によるスレーブ優先順位の更新のために行われ、優先順位の算出結果を基にした、次期マスタの決定も含まれる。
続いて、参加者リスト情報テーブルの更新が行われ(ステップS307)、また、参加要求したスレーブへ「グループ参加要求応答」の電文を送信する(ステップS308)。また、IPマルチキャストにより、グループ内の全スレーブへ、「参加者リスト更新通知」の電文が送信される(ステップS309)。なお、ステップS308(参加要求したスレーブへ「グループ参加要求応答」の電文の送信)は、以下の条件1を通過する前のみのステップである。なお、IPマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、新規参加のスレーブにも送信されるが、ユニキャストにより、新規参加のスレには送信しないようにもできる。
続いて、次期マスタの機能を起動できたことを確認するために、スレーブ(次期マスタ候補)からの次期マスタ確認の電文を受信する(ステップS310)。
それから、条件1(次期マスタ候補が次期マスタの機能を起動できたか?)の判定が行われ(ステップS311)、Yesの場合(次期マスタの機能を起動できた場合)は、スレーブの新規参加処理が終了し、Noの場合(次期マスタの機能を起動できなかった場合)は、次期マスタを再決定するためにステップS306からの処理を繰り返す。
また、図8は、スレーブがグループから退去する場合の、マスタにおける処理手順を示すフローチャートであり、マスタがスレーブから「グループ退去要求」の電文を受信した後の処理手順を示すものである。
まず、マスタは退去しようとするスレーブから、「グループ退去要求」の電文を受信すると(ステップS401)、グループ情報テーブルを検索し(ステップS402)、また、参加者リスト情報テーブルを検索する(ステップS403)。
それから、参加者リストからスレーブ優先順位を算出する(ステップS404)。このスレーブ優先順位の算出は、スレーブの退去要求によるスレーブ優先順位の更新のために行われ、優先順位の算出結果を基にした、次期マスタの決定も含まれる。
続いて、参加者リスト情報テーブルの更新が行われ(ステップS405)、また、退去要求スレーブへ「退去要求応答」の電文を送信する(ステップS406)。なお、このステップS406は、以下の条件1を通過する前のみのステップであり、ループを繰り返した後は、実行されない。また、退去要求でないスレーブへ「参加者リスト更新」の電文が送信される(ステップS407)。なお、「退去要求応答」および「参加者リスト更新」の電文には、スレーブ優先順位の情報が含まれ、また、次期マスタがどの端末であるかの情報も含まれる。
次に、次期マスタの機能を起動できたことを確認するために、スレーブ(次期マスタ候補)からの次期マスタ確認の電文を受信する(ステップS408)。
それから、条件1(次期マスタ候補が次期マスタの機能を起動できたか?)の判定が行われ(ステップS409)、Yesの場合(次期マスタ候補が次期マスタの機能を起動できた場合)は、スレーブの退去処理が終了し、Noの場合(次期マスタ候補が次期マスタの機能を起動できなかった場合)は、次期マスタを再決定するためにステップS404からの処理を繰り返す。
また、図9は、スレーブがグループに新規参加する場合の、当該スレーブにおける処理手順を示すフローチャートであり、スレーブがマスタから「グループ参加要求応答」の電文を受信した後の処理手順を示すものである。
グループに新規参加するスレーブでは、マスタから「参加要求応答」の電文を受信すると(ステップS501)、参加者リスト情報テーブルを更新する(ステップS502)。なお、グループ情報テーブルおよび参加者リスト情報テーブルの初期登録は、マスタ開設通知受信またはマスタ検索応答受信時点とする。グループ情報テーブルはこの時点では更新しない。
続いて、新規参加するスレーブでは、コミュニケーション情報送受信用のインタフェースの設定を行う(ステップS503)。
それから、条件1(自分が次期マスタ候補か?)の判定が行われる(ステップS504)。Noの場合(自分が次期マスタ候補でない場合)は、新規参加処理が終了する。Yesの場合(自分が次期マスタ候補である場合)は、マスタの監視を開始する(ステップS505)。
マスタの監視を開始すると、条件2(マスタ監視機能が正しく開始できたか?)が判定される(ステップS506)。Noの場合(マスタ監視機能が正しく開始できなかった場合)は、マスタ監視機能起動失敗の電文をマスタへ送信する(ステップS508)。Yesの場合(マスタ監視機能が正しく開始できた場合)は、マスタ監視機能起動成功の電文をマスタへ送信する(ステップS507)。
また、図10は、スレーブがグループから退去する場合の、当該スレーブにおける処理手順を示すフローチャートであり、スレーブがマスタから「グループ退去要求応答」の電文を受信した後の処理手順を示すものである。
グループから退去するスレーブでは、マスタから「退去要求応答」の電文を受信すると(ステップS601)、参加者リスト情報テーブルを更新する(ステップS602)。なお、グループ情報テーブルはこの時点では更新しない。
続いて、退去するスレーブでは、コミュニケーション情報送受信用のインタフェースを停止する(ステップS603)。
それから、条件1(自分が次期マスタ候補であったか?)の判定が行われる(ステップS604)。Noの場合(自分が次期マスタ候補でなかった場合)は、退去処理が終了する。Yesの場合(自分が次期マスタ候補であった場合)は、マスタの監視を停止する(ステップS605)。
また、図11は、グループに継続して参加し続けるスレーブにおける処理手順を示すフローチャートであり、他のスレーブがグループへ新規参加した場合の処理手順を示すフローチャートであり、スレーブがマスタから「グループ参加要求応答」の電文を受信した後の処理手順を示すものである。なお、他のスレーブがグループから退去する場合も同様な手順である。
グループに継続して参加し続けるスレーブが、マスタから「グループ参加要求応答」の電文を受信し(ステップS701)、参加者リスト情報を取得すると(ステップS702)、当該スレーブでは、参加者リスト情報テーブルを更新する(ステップS703)。なお、グループ情報テーブルはこの時点では更新しない。
続いて、条件1(自分が次期マスタ候補であるか?)の判定が行われる(ステップS704)。Noの場合(自分が次期マスタ候補でない場合)は、条件3(自分が次期マスタ候補であったか?)の判定が行われる(ステップS705)。Noの場合(自分が次期マスタ候補でなかった場合)は、処理を終了する。Yesの場合(自分が次期マスタ候補であった場合)は、マスタ監視を停止して(ステップS706)、処理を終了する。
また、ステップS704において、Yesの場合(自分が次期マスタ候補である場合)は、マスタ監視を開始する(ステップS707)。そして、マスタの監視を開始すると、条件2(マスタ監視機能が正しく開始できたか?)が判定される(ステップS708)。Noの場合(マスタ監視機能が正しく開始できなかった場合)は、マスタ監視機能起動失敗の電文をマスタへ送信する(ステップS709)。Yesの場合(マスタ監視機能が正しく開始できた場合)は、マスタ監視機能起動成功の電文をマスタへ送信して(ステップS710)、処理を終了する。
次に、スレーブ優先順位の算出方法について説明する。スレーブの優先順位を算出する目的は、次期マスタを決定することである。スレーブの優先順位が最も高いスレーブを次期マスタとする。また、次期マスタだけでなく、全てのスレーブの優先順位を決定する。これは、次期マスタの候補に障害などが発生している場合、次期マスタの次候補にマスタの権限を委譲するなど、システムのフォールトトレランスの性能を向上するためである。
また、図12のスレーブ優先順位の算出方法について説明するための図に示すように、スレーブの優先順位を決定する因子には、以下に示す要素があるが、どれに重点を置くかはシステム実装上のポリシーに依存する。
第1番目の要素として、「コミュニケーション端末装置(スレーブ)の性能」がある。
これを要素とする目的は、性能が最も高いコミュニケーション端末(スレーブ)が、次期マスタのマスタ障害監視機能、マスタのコミュニケーション情報中継機能などを実行することを目的とする。具体的には、スレーブのCPU性能やハードディスク容量などに基づき、各スレーブ性能を算定する。これらの値が大きいほど、優先順位が高い。
この要素の取得方法としては各スレーブが、自分の性能を測定して、その結果を「グループ参加要求」の電文で送信する。マスタは、各スレーブから送信されるこの情報を相互比較して次期マスタを決定する。
第2番目の要素として、「コミュニケーション端末装置(スレーブ)相互間のネットワーク的な位置関係」がある。
これを要素とする目的は、システム全体のコミュニケーション情報の送受信で必要となるネットワーク負荷の軽減を目的とする。具体的には、コミュニケーション情報を中継するマスタとスレーブとの間のルータ数(ホップ数)により決定する。(現在のマスタを除いた)システム全体のホップ数が最小となるように次期マスタを決定する。
この要素の取得方法としては、各スレーブが、「グループ参加要求」の送信前に、グループの各コミュニケーション端末(スレーブ)との間のホップ数を計測しておき、その結果を、「グループ参加要求」の電文でマスタに送信する。マスタは、各スレーブから送信されるこの情報
を相互比較して次期マスタを決定する。
第3番目の要素として「各コミュニケーション端末装置(スレーブ)が送信したコミュニケーション情報量」がある。
これを要素とする目的は、システム全体のコミュニケーション情報の送受信で必要となるネットワーク負荷の軽減を目的とする。全てのコミュニケーション情報の送受信をマスタが中継して行うので、コミュニケーション情報の送信においてマスタが占める割合が大きいほど、システム全体のトラフィック量が減少する特性があり、その特性の効果をより大きくすることを目的とする。具体的には、コミュニケーション情報量には、コミュニケーション情報のトラフィック量・送信回数がある。本要素の算出時前に送信したコミュニケーション情報量が大きかったコミュニケーション端末(スレーブ)ほど、今後もそれらの値が大きいという仮定に基づく。
この要素の取得方法としては、マスタのコミュニケーション情報中継機能により、各コミュニケーション端末(スレーブ)が送信したコミュニケーション情報量を計測して、その結果を保存(蓄積)しておき、このデータを基に次期マスタを決定する。
また、図13はスレーブ優先順位の算出処理の手順を示すフローチャートであり、以下、図13を参照して、スレーブ優先順位算出の手順について説明する。
まず、要素(1)の「端末性能」について説明する。グループに新規参加しようとするスレーブ300aは、自身のCPU性能などの「端末性能」(要素1)を測定する(ステップS801)。この「端末性能」の情報は、マスタ100aに「グループ参加要求」を送信する際に、マスタ100aに送信される(ステップS819)。マスタは、各スレーブから送信されるこの「端末性能」情報を受信し(ステップS820)、これを相互比較して(他の要素も勘案して)スレーブ優先順位を算出する(ステップS821)。
次に、要素(2)の、「コミュニケーション端末装置(スレーブ)相互間のネットワーク的な位置関係」について、ルータ数の情報を使用する場合の例について説明する。
マスタ100aがグループを開設し(ステップS811)、IPマルチキャストにより「グループ開設通知」を送信し(ステップS812)、各スレーブからの「マスタ検索」を受け付け、「マスタ検索応答」をスレーブ300aに返信する(ステップS813)。スレーブ300aでは、マスタ100aからの「マスタ検索応答」を受信し(ステップS814)、各端末のIPアドレスを確認する(ステップS815)。
また、スレーブ300aでは、グループ内の各端末装置(スレーブ)宛に「ルータ数チェック用の電文」を送信し(ステップS816)、スレーブ300aは、「グループ参加要求」の送信の前に、グループの各コミュニケーション端末(スレーブ)との間のルータのホップ数を計測しておく(ステップS817)。そして、その「ルータ数算定結果」を、「グループ参加要求」を行う際に、「グループ参加要求」の電文内でマスタに送信する(ステップS819)。マスタは、各スレーブから送信されるこの「ルータ数」の情報を受信し(ステップS820)、これを相互比較して(他の要素も勘案して)スレーブ優先順位を算出する(ステップS821)。
次に、要素(3)の、「各コミュニケーション端末装置(スレーブ)が送信したコミュニケーション情報量」について説明する。
マスタ100aは、マスタ100a内のコミュニケーション情報中継機能により、各コミュニケーション端末(スレーブ)が送信したコミュニケーション情報量の計測を開始する(ステップS831)。なお、この「コミュニケーション情報量の計測開始」は、マスタ100aによるグループ開設が契機となり、開始される。
また、スレーブ300aなどが「コミュニケーション情報」を送信すると(ステップS832)、マスタ100aでは、スレーブ300aの「コミュニケーション情報」を中継して他のスレーブに送信する(ステップS833)。この際に、マスタ100aは、「コミュニケーション情報量」を測定し(ステップS834)、保存(蓄積)した「コミュニケーション情報量」の測定値を更新し、新たに、スレーブ優先順位を算出する(ステップS835)。
なお、スレーブ優先順位の算出は、マスタ100aが、スレーブ300aからの「グループ参加要求」を受信した場合や、「グループ退去要求」を受信した場合にも行われる(ステップS841、S842、S843)。
以上、本発明の実施の形態について説明したが、図2に示すマスタ100、次期マスタ200、スレーブ300内の各機能に必要な処理を実現するためには、専用のハードウェアにより処理を行ってもよく、また、図2に示すマスタ100、次期マスタ200、スレーブ300内の各機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、図2に示すマスタ100、次期マスタ200、スレーブ300内の各機能に必要な処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの(伝送媒体ないしは伝送波)、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。
また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
以上、本発明の実施の形態について説明したが、本発明のコミュニケーションシステムは、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
本発明は、グループに参加する端末装置だけでコミュニケーションシステムを形成でき、また、サーバを必要としない効果を奏するので、本発明は、コミュニケーションシステムおよびコミュニケーションシステムの形成方法などに適用できる。
本発明によるコミュニケーションシステムの概念を説明するための図。 マスタ、次期マスタ、スレーブの有する機能を示す図。 本発明によるコミュニケーションシステムの処理手順の概要を示すフローチャート。 本発明によるコミュニケーションシステムのシステム処理フローを示す図その1。 本発明によるコミュニケーションシステムのシステム処理フローを示す図その2。 本発明によるコミュニケーションシステムのシステム処理フローを示す図その3。 スレーブがグループに新規参加する場合の、マスタにおける処理手順を示すフローチャート。 スレーブがグループから退去する場合の、マスタにおける処理手順を示すフローチャート。 スレーブがグループに新規参加する場合の、当該スレーブにおける処理手順を示すフローチャート。 スレーブがグループから退去する場合の、当該スレーブにおける処理手順を示すフローチャート。 他のスレーブがグループへ新規参加した場合の、グループに継続参加するスレーブでの処理手順を示すフローチャート。 スレーブ優先順位の算出方法について説明するための図。 スレーブ優先順位の算出処理の手順を示すフローチャート。 従来のコミュニケーションシステムの概略構成を示す図。
符号の説明
100、100a マスタ
101 グループ開設機能
102 スレーブ管理機能
103 スレーブ優先順位算出機能
104 次期マスタ選定機能
105 マスタ権限委譲機能
106 コミュニケーション情報中継機能
111、211、311 コミュニケーション情報送信機能
112、212、312 コミュニケーション情報受信機能
113、213、313 制御情報送信機能
114、214、314 制御情報受信機能
121 グループ開設機能
122 スレーブ管理機能
123 コミュニケーション情報中継機能
124 スレーブ優先順位算出機能
125 次期マスタ選定機能
126 マスタ権限委譲機能
200 次期マスタ
201 マスタ障害監視機能
202 マスタ権限引継機能
221 マスタ障害監視機能
222 マスタ権限引継機能
300、300a スレーブ
301 新規参加スレーブ

Claims (8)

  1. 複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムであって、
    マスタとなる端末が、他の端末にグループを開設することを通知するグループ開設手段と、
    前記マスタが、スレーブとしてグループに参加した端末を管理するスレーブ管理手段と、
    前記マスタが、グループ内の通信を中継するコミュニケーション情報中継手段と、
    前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定する次期マスタ選定手段と、
    前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段と
    を備え
    前記スレーブ管理手段は、新規参加の端末から前記グループへのスレーブとしての参加を要求するグループ参加要求を受信すると、前記グループ管理手段が管理するグループに参加する端末のリストを更新し、前記次期マスタ選定手段が、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記グループ内の全スレーブに送信し、
    前記スレーブ管理手段は、一の前記スレーブからグループ退去要求を受信すると、前記グループ管理手段が管理するグループに参加する端末のリストを更新し、前記次期マスタ選定手段が、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記一のスレーブを除く前記スレーブに送信すること
    を特徴とするコミュニケーションシステム。
  2. 前記マスタが、当該マスタがグループを退去する場合に、その旨を次期マスタに通知するマスタ権限委譲手段と、
    前記次期マスタが、前記マスタからの通知により、マスタの権限を引き継ぐマスタ権限引継手段と
    を備えることを特徴とする請求項1に記載のコミュニケーションシステム。
  3. 前記次期マスタが、定期的にマスタ監視用の電文を前記マスタに送信し、該マスタ監視用の電文に対する前記マスタからの応答であるマスタ監視結果を受信することで、前記マスタにおける障害の発生を監視するマスタ障害監視手段と、
    前記次期マスタが、前記マスタにおける障害の発生を検知した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段と
    を備えることを特徴とする請求項1または請求項2に記載のコミュニケーションシステム。
  4. 前記マスタが、各スレーブの性能を示す情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、
    前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段と
    を備えることを特徴とする請求項1から3のいずれかに記載のコミュニケーションシステム。
  5. 前記マスタが、各スレーブの他のスレーブとのネットワーク的な位置関係を示す情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、
    前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段と
    を備えることを特徴とする請求項1から3のいずれかに記載のコミュニケーションシステム。
  6. 前記マスタが、各スレーブの送信トラフィック量を示す情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、
    前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段と
    を備えることを特徴とする請求項1から3のいずれかに記載のコミュニケーションシステム。
  7. スレーブとなる端末が、前記グループを開設することの通知を受信する通知受信手段と、
    前記スレーブとなる端末が、前記マスタに前記グループへの参加を要求する参加要求手段と、
    前記スレーブが、前記マスタに前記グループからの退去を要求する退去要求手段と、
    前記スレーブが、前記マスタから、次期マスタを示す情報とともに前記参加者リスト更新通知を受信すると、当該スレーブが参加しているグループの端末のリストを更新する参加リスト更新手段と、
    前記スレーブが、前記グループ内の通信を前記マスタと行うコミュニケーション情報送受信手段と
    を有することを特徴とする請求項1から3のいずれかに記載のコミュニケーションシステム。
  8. 複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムの形成方法であって、
    マスタとなる端末が、他の端末にグループを開設することを通知するステップと、
    前記マスタが、スレーブとしてグループに参加した端末を管理するステップと、
    前記マスタが、グループ内の通信を中継するステップと、
    前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定するステップと、
    前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐステップと
    前記マスタが、新規参加の端末から前記グループへのスレーブとしての参加を要求するグループ参加要求を受信すると、前記マスタが、管理するグループに参加する端末のリストを更新し、前記選定するステップにより、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記グループ内の全スレーブに送信するステップと、
    前記マスタが、一の前記スレーブからグループ退去要求を受信すると、前記マスタが、管理するグループに参加する端末のリストを更新し、前記選定するステップにより、各スレーブ中から再度選定した次期マスタを示す情報とともに、前記参加する端末のリストを示す参加者リスト更新通知を、前記一のスレーブを除く前記スレーブに送信するステップと
    を有することを特徴とするコミュニケーションシステムの形成方法。
JP2003331912A 2003-09-24 2003-09-24 コミュニケーションシステムおよびコミュニケーションシステムの形成方法 Expired - Lifetime JP4246025B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003331912A JP4246025B2 (ja) 2003-09-24 2003-09-24 コミュニケーションシステムおよびコミュニケーションシステムの形成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003331912A JP4246025B2 (ja) 2003-09-24 2003-09-24 コミュニケーションシステムおよびコミュニケーションシステムの形成方法

Publications (2)

Publication Number Publication Date
JP2005100030A JP2005100030A (ja) 2005-04-14
JP4246025B2 true JP4246025B2 (ja) 2009-04-02

Family

ID=34460424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003331912A Expired - Lifetime JP4246025B2 (ja) 2003-09-24 2003-09-24 コミュニケーションシステムおよびコミュニケーションシステムの形成方法

Country Status (1)

Country Link
JP (1) JP4246025B2 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4906315B2 (ja) * 2005-10-31 2012-03-28 キヤノン株式会社 通信制御装置、コンピュータの制御方法および制御プログラム
JP5020511B2 (ja) * 2005-12-27 2012-09-05 京セラ株式会社 通信装置、通信システム及び通信方法
AU2007222400B2 (en) 2006-03-06 2010-01-21 Lg Electronics Inc. Data transfer controlling method, content transfer controlling method, content processing information acquisition method and content transfer system
US20090133129A1 (en) * 2006-03-06 2009-05-21 Lg Electronics Inc. Data transferring method
US8429300B2 (en) 2006-03-06 2013-04-23 Lg Electronics Inc. Data transferring method
KR20080022476A (ko) 2006-09-06 2008-03-11 엘지전자 주식회사 논컴플라이언트 컨텐츠 처리 방법 및 디알엠 상호 호환시스템
EP2044549B1 (en) 2007-01-05 2014-03-12 LG Electronics Inc. Method for transferring resource and method for providing information
US9112626B2 (en) * 2007-01-31 2015-08-18 International Business Machines Corporation Employing configuration information to determine the role of a server in a coordinated timing network
US7689718B2 (en) 2007-01-31 2010-03-30 International Business Machines Corporation Channel subsystem server time protocol commands and system therefor
US8738792B2 (en) 2007-01-31 2014-05-27 International Business Machines Corporation Server time protocol messages and methods
WO2008100120A1 (en) 2007-02-16 2008-08-21 Lg Electronics Inc. Method for managing domain using multi domain manager and domain system
JP5487971B2 (ja) * 2007-11-12 2014-05-14 日本電気株式会社 データ通信システムおよび方法およびプログラム
US8416811B2 (en) 2008-04-10 2013-04-09 International Business Machines Corporation Coordinated timing network having servers of different capabilities
WO2010004897A1 (ja) * 2008-07-09 2010-01-14 日本電気株式会社 グループ会議システム、会議サーバ、セッション切り替え制御方法、セッション切り替え制御プログラム
JP5162508B2 (ja) * 2009-03-23 2013-03-13 株式会社ソニー・コンピュータエンタテインメント クライアント装置、画像表示方法、画像処理プログラム、画像処理プログラムが記憶された記憶媒体
JP2011053978A (ja) * 2009-09-02 2011-03-17 Thinktube Ltd 非同期型マルチキャストミドルウェアを用いた機械設備間通信システム
US9237174B2 (en) 2010-02-10 2016-01-12 Panasonic Intellectual Property Management Co., Ltd. System and method to keep continuity of media flows for a collaborative session without constant controller(s) involvement
CN105141622B (zh) * 2010-02-10 2018-07-06 太阳专利信托公司 应用服务器及其相关方法、以及执行协作会话的系统
JP6213181B2 (ja) * 2013-11-20 2017-10-18 ヤマハ株式会社 同期再生システム及び同期再生方法
KR101503813B1 (ko) 2014-03-11 2015-03-18 재단법인대구경북과학기술원 단말간 직접 통신을 이용한 모바일 장치 관리 시스템 및 방법
JP6538482B2 (ja) 2015-08-25 2019-07-03 Dynabook株式会社 電子機器及び方法
KR102022095B1 (ko) * 2016-11-07 2019-09-17 삼성전자주식회사 통신을 수행하는 방법 및 단말기
KR101967466B1 (ko) * 2017-07-04 2019-04-09 현대오트론 주식회사 Spi 감시 장치 및 spi 감시 장치의 모드 결정 방법
JP7112257B2 (ja) * 2018-06-11 2022-08-03 株式会社日立産機システム インクジェット記録装置管理システムおよびインクジェット記録装置

Also Published As

Publication number Publication date
JP2005100030A (ja) 2005-04-14

Similar Documents

Publication Publication Date Title
JP4246025B2 (ja) コミュニケーションシステムおよびコミュニケーションシステムの形成方法
US8612386B2 (en) Method and apparatus for peer-to-peer database synchronization in dynamic networks
JP4170929B2 (ja) 移動通信システム、移動端末、及び移動通信方法
EP2676381B1 (en) Method and apparatus for peer-to-peer service in wireless communication system
US7742442B2 (en) Changing access point (AP) device type based on connectivity to a network
KR101887581B1 (ko) 플로우 기반의 패킷 전송 장치 및 그것의 패킷 처리 방법
US20040233881A1 (en) Route discovery device and method in a mobile ad-hoc network
EP3484209A1 (en) Mesh networking using peer to peer messages for a hospitality entity
WO2015132813A1 (en) Group reformation mechanism for reducing disruption time in wireless peer to peer networks
EP3484208A1 (en) Mesh networking using peer to peer messages
KR100856920B1 (ko) 중계 전송 방식을 이용한 무선 멀티캐스팅 서비스 방법
KR102148705B1 (ko) 분산 이동성 관리 방법 및 장치
KR101694329B1 (ko) 애드 혹 네트워크에서 데이터를 전송하기 위한 경로 확립 방법
WO2015096432A1 (zh) 网络拓扑结构的控制方法和系统
CN111817939B (zh) 基于工业以太网协议的主站冗余实现系统及方法
JP4209752B2 (ja) 移動通信システム、移動端末、ノード装置、及び移動通信方法
KR20070061420A (ko) 서비스 플로우 식별자를 분산 관리하는 무선 통신 시스템및 그 시스템에서의 서비스 플로우 식별자 관리 방법
WO2019242459A1 (zh) 节点切换方法、网络节点、网络系统及存储介质
US10715390B2 (en) Service optimization method, transport controller, client controller, and system
JP4630298B2 (ja) 機能分散型通信装置、構成要素結合制御方法、およびプログラム
US8135859B1 (en) System and method for providing infrastructure services without a designated network manager
Shayeji et al. Analysis and enhancements of leader elections algorithms in mobile ad hoc networks
CN115002108B (zh) 一种智能手机担任计算服务节点的组网和任务卸载方法
US11457506B2 (en) Adaptive multipath routing failure recovery in a wireless network
WO2016090804A1 (zh) 信息获取方法、装置和路由器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060301

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081125

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4246025

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 3

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140116

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

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term