(57)【要約】【課題】  グループに参加する端末装置だけでコミュニケーションシステムを形成し、各端末装置のグループへの参加・退去の管理や、各端末装置間のデータの中継を行うサーバを不要とする、コミュニケーションシステムを提供する。【解決手段】  複数の端末間でグループを形成し、マスタ１００となる端末が、他の端末（スレーブ）３００にグループを開設することを通知し、グループに参加したスレーブ３００を管理し、また、グループ内での通信の中継を行う。また、マスタ１００が、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタ２００を選定し、マスタ１００がグループを退去した場合には、次期マスタ２００がマスタ１００の権限を引き継ぐ。【選択図】  図１
2005100030.tif 000002
【特許請求の範囲】
【請求項１】
複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムであって、
マスタとなる端末が、他の端末にグループを開設することを通知するグループ開設手段と、
前記マスタが、スレーブとしてグループに参加した端末を管理するスレーブ管理手段と、
前記マスタが、グループ内の通信を中継するコミュニケーション情報中継手段と、
前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定する次期マスタ選定手段と、
前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段と
を備えることを特徴とするコミュニケーションシステム。
【請求項２】
前記マスタが、当該マスタがグループを退去する場合に、その旨を次期マスタに通知するマスタ権限委譲手段と、
前記次期マスタが、前記マスタからの通知により、マスタの権限を引き継ぐマスタ権限引継手段と
を備えることを特徴とする請求項１に記載のコミュニケーションシステム。
【請求項３】
前記次期マスタが、前記マスタにおける障害の発生を監視するマスタ障害監視手段と、
前記次期マスタが、前記マスタにおける障害の発生を検知した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段と
を備えることを特徴とする請求項１または請求項２に記載のコミュニケーションシステム。
【請求項４】
前記マスタが、各スレーブの情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、
前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段と
を備えることを特徴とする請求項１から３のいずれかに記載のコミュニケーションシステム。
【請求項５】
複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムの形成方法であって、
マスタとなる端末が、他の端末にグループを開設することを通知するステップと、
前記マスタが、スレーブとしてグループに参加した端末を管理するステップと、
前記マスタが、グループ内の通信を中継するステップと、
前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定するステップと、
前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐステップと
を有することを特徴とするコミュニケーションシステムの形成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の端末間で構成されるコミュニケーションシステムに関し、特に、端末間のコミュニケーションを管理するサーバを不要とした、コミュニケーションシステムおよびコミュニケーションシステムの形成方法に関するものである。
【背景技術】
【０００２】
従来、複数の端末装置がネットワークを介して行うコミュニケーションシステムでは、システムを管理するサーバを用いた方式が使用されている。このサーバは、コミュニケーショングループ（以下、「グループ」と呼ぶ）へのクライアントの参加・退去を集中管理し、各端末装置からのコミュニケーション情報の中継を行う。
【０００３】
従来技術のコミュニケーションシステムの概略構成を図１４示す。従来のコミュニケーションシステムは、サーバ５０１が、クライアント６０１、６０２、６０３のネットワーク（グループ）への参加・退去を集中管理し、各クライアントの端末装置間からのコミュニケーション情報の中継を行う。そのため、サーバ５０１に障害が発生すると、クライアント６０１、６０２、６０３のグループへの参加者情報を管理することができなくなり、各クライアント６０１、６０２、６０３の端末装置間のデータの中継が行えなくなる。つまり、コミュニケーションシステムが機能しなくなる。よって、サーバ５０１の信頼性や安定性の向上のため、例えば、高性能のサーバを用意したり、サーバ５０１の二重化（デュアルシステム）などの対策が必要となる。また、サーバの運用・管理などのメンテナンスにも人的・時間的なコストがかかる。
【０００４】
このような問題に対処する先行技術として、コミュニケーションシステムにおける通信装置の障害に対する許容度を増強することを目的とした発明が開示されている。この発明では、通信装置間に２つ以上のアクティブな仮想チャンネルを設け、各々の仮想チャンネルに対して通信装置に個別のインタフェースユニットを設けている。送信データをこれらのアクティブなインターフェイスユニット間で分配しているので、インタフェースユニットの１つに障害が発生しても、送信データの一部分が失われるが、コミュニケーション全体の停止が回避される。（例えば、特許文献１参照）。
【０００５】
しかしながら、この方法においても、各通信装置（特にサーバ）の停止などの障害に対しては対処できないという問題がある。
【特許文献１】特表２００３−５２０５２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明はこのような問題を解決するためになされたもので、その目的は、グループに参加する端末装置だけでコミュニケーションシステムを形成し、これにより従来技術において必要であった、各端末装置のグループへの参加・退去を集中管理したり、各端末装置間のデータの中継を行うサーバを不要とする、コミュニケーションシステムおよびコミュニケーションシステムの形成方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明のコミュニケーションシステムは、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムであって、マスタとなる端末が、他の端末にグループを開設することを通知するグループ開設手段と、前記マスタが、スレーブとしてグループに参加した端末を管理するスレーブ管理手段と、前記マスタが、グループ内の通信を中継するコミュニケーション情報中継手段と、前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定する次期マスタ選定手段と、前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段とを備えることを特徴とする。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
【０００８】
また、本発明のコミュニケーションシステムは、前記マスタが、当該マスタがグループを退去する場合に、その旨を次期マスタに通知するマスタ権限委譲手段と、前記次期マスタが、前記マスタからの通知により、マスタの権限を引き継ぐマスタ権限引継手段とを備えることを特徴とする。
これにより、グループを開設したマスタも、自発的にグループから退去できる。
【０００９】
また、本発明のコミュニケーションシステムは、前記次期マスタが、前記マスタにおける障害の発生を監視するマスタ障害監視手段と、前記次期マスタが、前記マスタにおける障害の発生を検知した場合に、前記マスタの権限を引き継ぐマスタ権限引継手段とを備えることを特徴とする。
これにより、グループのマスタに障害が発生しても、次期マスタがマスタの役割を引き継ぐことができるので、マスタの障害に対して耐性がある。
【００１０】
また、本発明のコミュニケーションシステムは、前記マスタが、各スレーブの情報を基に、スレーブの優先順位を算出するスレーブ優先順位算出手段と、前記マスタが、前記スレーブ優先順位算出手段の算出結果を基に、次期マスタを決定する次期マスタ選定手段とを備えることを特徴とする。
これにより、例えば、ＣＰＵ性能が高いスレーブなどを次期マスタとして選定でき、マスタが交代した場合にも、円滑にシステムを運用できる。
【００１１】
また、本発明のコミュニケーションシステムの形成方法は、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムの形成方法であって、マスタとなる端末が、他の端末にグループを開設することを通知するステップと、前記マスタが、スレーブとしてグループに参加した端末を管理するステップと、前記マスタが、グループ内の通信を中継するステップと、前記マスタが、各スレーブ中から当該マスタの権限を引き継ぐ能力のある次期マスタを選定するステップと、前記次期マスタが、前記マスタがグループを退去した場合に、前記マスタの権限を引き継ぐステップとを有することを特徴とする。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
【発明の効果】
【００１２】
本発明のコミュニケーションシステムにおいては、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムにおいて、マスタとなる端末は、グループに参加した他の端末（スレーブ）を管理し、また、グループ内の通信の中継を行う。また、マスタは、スレーブ中から、マスタの権限を引き継ぐ能力のある次期マスタを選定し、マスタがグループを退去する場合には、選定された次期マスタがマスタの権限を引き継ぐ。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
【００１３】
また、本発明のコミュニケーションシステムにおいては、マスタがグループを退去する場合には、その旨を次期マスタに通知し、次期マスタはマスタからの通知により、マスタの権限を引き継ぐ。
これにより、グループを開設したマスタも、自発的にグループから退去できる。
【００１４】
また、本発明のコミュニケーションシステムにおいては、次期マスタが、マスタにおける障害の発生を監視し、マスタにおける障害の発生を検知した場合には、マスタの権限を引き継ぐ。
これにより、グループのマスタに障害が発生しても、次期マスタがマスタの役割を引き継ぐことができるので、マスタの障害に対して耐性がある。
【００１５】
また、本発明のコミュニケーションシステムにおいては、マスタは、各スレーブの情報（例えば、ＣＰＵ性能など）を基に、スレーブの優先順位を算出し、スレーブの優先順位を基に、次期マスタを決定する。
これにより、例えば、ＣＰＵ性能が高いスレーブなどを次期マスタとして選定でき、マスタが交代した場合にも、円滑にシステムを運用できる。
【００１６】
また、本発明のコミュニケーションシステムの形成方法においては、複数の端末間でグループを形成し、グループ内で相互に通信を行うコミュニケーションシステムにおいて、マスタとなる端末は、グループに参加した他の端末（スレーブ）を管理し、また、グループ内の通信の中継を行う。また、マスタは、スレーブ中から、マスタの権限を引き継ぐ能力のある次期マスタを選定し、マスタがグループを退去する場合には、選定された次期マスタがマスタの権限を引き継ぐ。
これにより、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になる。
【発明を実施するための最良の形態】
【００１７】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００１８】
最初に、本発明のコミュニケーションシステムの概要について説明する。
図１は、本発明によるコミュニケーションシステムの概念を説明するための図であり、コミュニケーションシステムを構成する各端末の関係と、各端末が有する主要な機能を例示したものである。以下、図１を参照して、本発明の概要について説明する。
【００１９】
本発明では、コミュニケーションシステムに専用のサーバを用いずに、グループに参加するメンバだけでコミュニケーションシステムを構成する。本発明のコミュニケーションシステムでは、グループを開設して管理する端末装置を「マスタ」、マスタ以外でグループに参加している端末装置を「スレーブ」と呼ぶ。マスタ１００はグループを開設して、ＩＰマルチキャストにより、その旨を通知する。スレーブ３００は、この通知の受信または、自発的にＩＰマルチキャストによりマスタ１００を検索することにより、マスタ１００の存在およびネットワーク上の位置（ＩＰアドレス）を認知することができる。
【００２０】
そして、新規参加スレーブ３０１は、マスタ１００にグループへの参加要求を行い、マスタ１００から認可された場合に、グループに参加する。マスタ１００は、スレーブ３００から送信される端末情報やコミュニケーション情報などに基づき、スレーブ３００の優先順位を算出する。（優先順位が最も高いスレーブを「次期マスタ２００」と呼ぶ。）マスタがグループから退去する場合は、その旨をマスタ１００が主導的に次期マスタ２００に通知して、次期マスタ２００がマスタ１００の権限を受け継いで新規マスタとなる。また、マスタ１００に障害が発生した場合は、それを次期マスタ２００が検知して、次期マスタ２００がマスタ１００の権限を受け継いで新規マスタとなる。
【００２１】
なお、役割（マスタ・次期マスタ・スレーブ）に応じて実行する機能に差異があるが、端末装置はお互いに、役割に応じた性能的な違いは無く、対等の立場で接続されている。すなわち、各スレーブ３００には、マスタ、次期マスタとして機能するためのアプリケーションプログラムが予めダウンロードされている。
【００２２】
次に、図１に示す各部の有する主要な機能について説明する。本発明のコミュニケーションシステムの構成要素はグループに参加する端末装置であり、役割に応じて以下の機能がある。
【００２３】
マスタ１００は、グループを開設してＩＰマルチキャストによりその旨を複数の端末装置（スレーブ）に同時通報するグループ開設機能（グループ開設手段）１０１を有する。また、マスタ１００は、他端末装置からのグループへの参加・退去の要求を受け付け、参加者リストを管理するスレーブ管理機能（スレーブ管理手段）１０２、スレーブの優先順位を算出するスレーブ優先順位算出機能（スレーブ優先順位算出手段）１０３、スレーブ優先順位の算出結果から次期マスタを決定する次期マスタ選定機能（次期マスタ選定手段）１０４、マスタがグループから退去する場合は、その旨をマスタが主導的に次期マスタに通知して、次期マスタにマスタの機能を委譲するマスタ権限委譲機能（マスタ権限委譲手段）１０５、スレーブから送信されるコミュニケーション情報の中継を行うコミュニケーション情報中継機能（コミュニケーション情報中継手段）１０６を有する。また、その他に、「他端末装置（スレーブ）からのマスタ検索の問い合わせに応答する機能」、「コミュニケーション情報の送信および受信を行う機能」などを有する。
【００２４】
また、次期マスタ２００は、スレーブの１つであり、マスタ１００に障害が発生していないかを監視するマスタ障害監視機能（マスタ障害監視手段）２０１、障害を検知した場合はマスタ１００の役割を受け継ぐマスタ権限引継機能（マスタ権限引継手段）２０２を備えていることが他のスレーブと異なる。
【００２５】
また、スレーブ３００が備える機能としては、「マスタ１００の存在およびネットワーク上の位置（ＩＰアドレス）を認知するために、マスタ１００からのグループ開設通知を受信する機能」、「自発的にＩＰマルチキャストによりマスタ１００を検索する機能」、「グループに参加する。また、グループから退去する機能」、「コミュニケーション情報の送信および受信を行う機能」などがある。
【００２６】
図１に示すようなコミュニケーションシステムの構成により、グループに参加する端末装置だけで、コミュニケーションシステムを形成できる。よって、コミュニケーションシステムの機能停止に大きく影響を与えるサーバを必要としないので、サーバの信頼性や安定性の向上のためのコストやメンテナンスが不要になり、また、グループを開設したマスタも、自発的にグループから退去できる。さらに、グループのマスタに障害が発生しても、次期マスタがマスタの役割を引き継ぐことができるので、マスタの障害に対して耐性がある。
【００２７】
また、図２は、グループを構成する、マスタ、次期マスタ、スレーブの有する機能を詳細に示したものである。なお、マスタ、次期マスタは固定ではなく、他のスレーブで資格のあるスレーブ（ＣＰＵ性能など一定の要件を満たすスレーブ）が交代することができ、これらのスレーブには、マスタ、次期マスタの機能を実現するためのアプリケーションプログラムがモジュールとして予め保持されている。
【００２８】
まず、共通機能（マスタ・次期マスタ・スレーブの全てで共通の機能）について説明する。
コミュニケーション情報送信機能１１１、２１１、３１１は、コミュニケーション情報を送信する機能であり、コミュニケーション情報には、文字情報・音声情報・動画像情報のいずれの場合もある。
コミュニケーション情報受信機能１１２、２１２、３１２は、コミュニケーション情報を受信する機能である。
【００２９】
制御情報送信機能１１３、２１３、３１３は、制御情報を送信する機能であり、制御情報としては、以下のものがある。なお、括弧内は情報の発信元を示す。
（１）グループ開設通知（発信元：マスタ）
（２）マスタ検索（発信元：マスタ以外）およびその応答（発信元：マスタ）
（３）グループ参加要求（発信元：マスタ以外）およびその応答（発信元：マスタ）
（４）参加者リスト更新通知（発信元：マスタ）
（５）スレーブ退去要求（発信元：マスタ以外）およびその応答（発信元：マスタ）
（６）マスタ退去要求（発信元：マスタ）およびその応答（発信元：次期マスタ）
（７）マスタ変更通知（発信元：新規マスタ）
【００３０】
制御情報受信機能１１４、２１４、３１４は、制御情報送信機能１１３、２１３、３１３の説明の項で示した各種制御情報を受信する機能である。
【００３１】
次に、マスタ１００の有する機能について説明する。
グループ開設機能１２１は、グループを開設して、その旨を他の端末装置へＩＰマルチキャストにより通知する機能である。
スレーブ管理機能１２２は、自分が開設したグループへのスレーブからの参加および退去の要求を受け付ける。そして、参加者リスト（現在自分が開設しているグループのスレーブのリスト）を管理する機能である。
コミュニケーション情報中継機能１２３は、自分が開設しているグループ内での、全てのコミュニケーション情報を中継する機能である。
【００３２】
スレーブ優先順位算出機能１２４は、次期マスタを決定するために、スレーブからの情報をもとに、スレーブの優先順位を算出する機能である。スレーブの優先順位の算出には、以下の各パラメータ（要素）に基づいて決定する。以下の（１）および（２）に示すパラメータは、スレーブから送信される端末情報に基づき算出し、（３）に示すパラメータは、スレーブから送信されるコミュニケーション情報に基づき算出する。なお、（３）に示すパラメータは、全てのコミュニケーション情報の送受信をマスタが中継して行うので、コミュニケーション情報の送信におけるマスタが占める割合が大きいほど、システム全体のトラフィック量が減少する特性があるので、その特性の効果をより大きくすることを目的としている。
（１）各スレーブのＣＰＵ性能やハードディスク容量などの端末装置の性能
（２）スレーブ相互間のネットワーク的な位置関係（スレーブ間で経由するルータ数）
（３）各スレーブが送信したコミュニケーション情報のトラフィック量・送信回数
【００３３】
次期マスタ選定機能１２５は、スレーブ優先順位算出機能１２４によるスレーブ優先順位の算出結果を基に、次期マスタとなるスレーブを選定する機能である。
【００３４】
マスタ権限委譲機能１２６は、マスタ自身がグループを退去する場合に、次期マスタがマスタに成り得るかを確認して、マスタの権限を次期マスタに委譲する機能である。
【００３５】
次に、次期マスタ２００の有する機能について説明する。
マスタ障害監視機能２２１は、マスタが正常に動作しているかを定期的に監視する機能である。マスタに障害が発生したことを認識したときは、マスタ権限引継機能２２２を起動する。また、マスタの障害発生時に備えて、マスタ権限を引き継ぐのに必要な情報をマスタから定期的に取得する。
マスタ権限引継機能２２２は、マスタ１００のマスタ権限委譲機能１２６または次期マスタ２００のマスタ障害監視機能２２１から起動される。マスタの機能を引き継いでグループを開設する。そして、マスタ変更通知を全スレーブに送信する機能である。
【００３６】
また、図３は、本発明によるコミュニケーションシステムの処理手順の概要を示すフローチャートである。以下、図３を参照して、その処理手順について説明する。
【００３７】
まず、マスタとなろうとする端末１は、グループ開設のために、「グループ開設通知」を、ＩＰマルチキャストにより、他の端末に送信する（ステップＳ１０１、Ｓ１０２）。例えば、端末２などが、端末（マスタ）１から「グループ開設通知」を受信する（ステップＳ１０３）。そして、端末（マスタ）１が、グループに参加し、グループが開設される（ステップＳ１０４）。
【００３８】
グループ開設後、「グループ開設通知」を受信し、グループに参加しようとする端末（スレーブ）３は、「マスタ検索信号」を全端末装置に対して送信する（ステップＳ１０５）。端末（マスタ）１では端末（スレーブ）３からの、「マスタ検索信号」を受信すると（ステップＳ１０６）、端末（マスタ）１自身がマスタであることを知らせる「マスタ検索応答」を端末（スレーブ）３に送信する（ステップＳ１０７）。端末（スレーブ）３は、端末（マスタ）１から「マスタ検索応答」を受信し（ステップＳ１０８）、端末（マスタ）１がマスタであることを確認し、「グループ参加要求」を端末（マスタ）１に送信する（ステップＳ１０９）。なお、グループ開設時の「グループ開設通知」を受信していない端末であっても、グループ開設後に「マスタ検索信号」を送信し、端末（マスタ）１から、「グループ開設通知」で送信された情報と同じ情報を取得し、新たにグループに参加することができる。
【００３９】
端末（マスタ）１は、端末（スレーブ）３から「グループ参加要求」を受信すると（ステップＳ１１０）、端末（スレーブ）３を含めたスレーブ優先順位を算出し（ステップＳ１１１）、グループの参加者リストを更新する（ステップＳ１１２）。その後、端末（スレーブ）３に「グループ参加要求応答」を送信する（ステップＳ１１３）。端末（スレーブ）３は、端末（マスタ）１からの「グループ参加要求応答」を受信して（ステップＳ１１４）、グループに参加する。
【００４０】
また、端末（マスタ）１では、端末（スレーブ）３がグループに参加したことを通知する「参加者リスト更新通知」を、ＩＰマルチキャストにより全端末装置（スレーブ）に送信する（ステップＳ１１５）。例えば、端末（次期マスタ）２では、端末（マスタ）１から「参加者リスト更新通知」を受信して（ステップＳ１１６）、参加者リストを更新する（ステップＳ１１７）。なお、ＩＰマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、新規参加のスレーブ、および退去要求のスレーブにも送信されるが、ユニキャストにより、新規参加のスレーブおよび退去要求のスレーブには送信しないようにもできる。
【００４１】
この後に、端末（スレーブ）３が、他の端末（例えば、端末（次期マスタ）２）とコミュニケーションを行う場合は、コミュニケーション情報を、端末（マスタ）１を中継して、端末（次期マスタ）２に送信する（ステップＳ１１８、Ｓ１１９、Ｓ１２０）。
【００４２】
また、端末（マスタ）１が、マスタであることを中止し、マスタ権限を端末（次期マスタ）２に委譲する場合は、「マスタ退去要求」を端末（次期マスタ）２に送信する（ステップＳ１２１）。端末（次期マスタ）２は、端末（マスタ）１からの「マスタ退去要求」を受信すると（ステップＳ１２２）、「マスタ退去要求応答」を端末（マスタ）１に送信する （ステップＳ１２３）。端末（マスタ）１では端末（次期マスタ）２からの「マスタ退去要求応答」を受信して（ステップＳ１２４）、マスタとしての機能を停止する（ステップＳ１２５）。一方、端末（次期マスタ）２では、「マスタ変更通知」を端末（スレーブ）３を含む全端末装置（スレーブ）に通知し（ステップＳ１２６）、例えば、端末（スレーブ）３では「マスタ変更通知」を受信して（ステップＳ１２７）、マスタが変更されたことを認識する。
【００４３】
なお、端末（次期マスタ）２では、マスタを常時監視しており（ステップＳ１２８）、監視結果がＮＧ（マスタ異常）であれば、端末（次期マスタ）２自身がマスタとなり、「マスタ変更通知」を端末（スレーブ）３を含む全端末装置（スレーブ）に通知する。
【００４４】
また、図４、図５、図６は、本発明によるコミュニケーションシステムのシステム処理フローを示す図である。以下、図４、図５、図６を参照して、その処理手順について説明する。
【００４５】
まず、グループ開設について説明する。まず、マスタになろうとする端末１は、ＩＰマルチキャストにより、端末（マスタ）１自身がマスタであること、及びグループの情報を、端末（次期マスタ）２を含む全端末装置へ通知する（ステップＳ２０１、Ｓ２０２）。その後、グループへ参加する端末（スレーブ）を待つ。
【００４６】
続いて、グループに参加しようとする端末（スレーブ）３による「マスタ検索」が行われる。グループに参加しようとする端末（スレーブ）３は、ＩＰマルチキャストにより、「マスタ検索」の信号を全端末装置に送信する（ステップＳ２０３）。端末（スレーブ）３からの「マスタ検索」の信号に、端末（マスタ）１のみが応答し、端末（スレーブ）３に「マスタ検索応答」を通知する（ステップＳ２０４）。また、この「マスタ検索応答」には、グループについての情報が含まれる。なお、グループ開設時の「グループ開設通知」を受信していない端末であっても、グループ開設後に「マスタ検索信号」を送信し、端末（マスタ）１から、「グループ開設通知」で送信された情報と同じ情報を取得し、新たにグループに参加することができる。
【００４７】
続いて、端末（スレーブ）３のグループへの参加が行われる。端末（スレーブ）３は、端末（マスタ）１から「マスタ検索応答」を受信し、端末（マスタ）１がマスタであることを確認すると、ユーザ入力により、「グループ参加要求」を端末（マスタ）１に送信する（ステップＳ２０５）。なお、この「グループ参加要求」には、当該端末の情報（例えば、ＣＰＵ性能の情報など）も含まれる。
【００４８】
端末（マスタ）１は、端末（スレーブ）３から「グループ参加要求」を受信すると、端末（スレーブ）３を含めたスレーブ優先順位を算出し（ステップＳ２０６）、端末（スレーブ）３を加えたグループの参加者リストを更新する（ステップＳ２０７）。その後、端末（スレーブ）３に「グループ参加要求応答」を送信する（ステップＳ２０８）。端末（スレーブ）３は、端末（マスタ）１からの「グループ参加要求応答」を受信してグループに参加する（ステップＳ２０９）。なお、この端末（マスタ）１からの「グループ参加要求応答」により、端末（スレーブ）３では、参加者リストなど、グループに参加するための情報を受信する。
【００４９】
また、端末（マスタ）１では、端末（スレーブ）３がグループに参加したことを示す「参加者リスト更新通知」を、ＩＰマルチキャストにより、全端末装置（スレーブ）に送信する（ステップＳ２１０）。例えば、端末（次期マスタ）２では、新規参加者が追加されたことを認識して、参加者リストを更新する（ステップＳ２１１）。なお、ＩＰマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、新規参加のスレーブ、にも送信されるが、ユニキャストにより、新規参加のスレーブには送信しないようにもできる。
【００５０】
次に、図５を参照して、グループ内でのコミュニケーションについて説明する。端末（スレーブ）３が、他の端末（例えば、端末（次期マスタ）２）とコミュニケーションを行おうとする場合は、「コミュニケーション情報」を、端末（マスタ）１に送信する（ステップＳ２２１）。端末（マスタ）１では、端末（スレーブ）３から受信したコミュニケーション情報を中継して、端末（次期マスタ）２に送信する（ステップＳ２２２、Ｓ２２３）。なお、端末（マスタ）１では各スレーブから発信されたトラフィック量を測定する。
【００５１】
続いて、スレーブの退去処理について説明する。例えば、端末（次期マスタ）２が退去する場合は、端末（次期マスタ）２は端末（マスタ）１に対して「スレーブ退去要求」を送信する（ステップＳ２２４）。端末（マスタ）１では、端末（次期マスタ）２から「スレーブ退去要求」を受信すると、「スレーブ退去要求応答」を返信する（ステップＳ２２５）。端末（次期マスタ）２は、端末（マスタ）１から「スレーブ退去要求応答」を受信して、グループから退去する。
【００５２】
端末（マスタ）１では、端末（次期マスタ）２の退去に伴い、新たにスレーブ優先順位の算出を行い、次期マスタを再度算出する（ステップＳ２２６）。また、参加者リストから端末２を削除し、参加者リストの更新を行う（ステップＳ２２７）。それから、端末（マスタ）１は、ＩＰマルチキャストにより、全端末装置（スレーブ）に対して「参加者リスト更新通知」を送信する（ステップＳ２２８）。例えば、端末（スレーブ）３では、端末（マスタ）１から受信した「参加者リスト更新通知」を基に、参加者リストを更新する（ステップＳ２２９）。なお、ＩＰマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、退去要求のスレーブにも送信されるが、ユニキャストにより、退去要求のスレーブには送信しないようにもできる。
【００５３】
次に、マスタ監視処理について説明する。端末（次期マスタ）２では、「マスタ監視用の電文」を定期的に端末（マスタ）１に送信する（ステップＳ２３０）。端末（マスタ）１では、端末（次期マスタ）２から受信した「マスタ監視用の電文」に応答して「マスタ監視結果」を送信する（ステップＳ２３１）。
【００５４】
ここで、端末（マスタ）１に障害が発生すると（ステップＳ２３２）、端末（次期マスタ）２からの「マスタ監視用の電文」に対して、「マスタ監視結果」を送信することができず、端末（次期マスタ）２では、端末（マスタ）１に障害が発生したことを検知する（ステップＳ２３３）。その後、マスタ変更プロセスに移行する（マスタ変更プロセスにつては後述する）。
【００５５】
次に、図６を参照して、マスタの退去処理について説明する。
端末（マスタ）１が、マスタであることを中止し、マスタ権限を端末（次期マスタ）２に委譲する場合は、「マスタ退去要求」を端末（次期マスタ）２に送信し（ステップＳ２４０）、端末（次期マスタ）２がマスタになることが可能かどうかを確認する。端末（次期マスタ）２は、端末（マスタ）１からの「マスタ退去要求」を受信すると、マスタになることが可能な場合には、「マスタ退去要求応答」を端末（マスタ）１に送信する （ステップＳ２４１）。端末（マスタ）１では端末（次期マスタ）２からの「マスタ退去要求応答」を受信すると、端末（次期マスタ）２がマスタになることが可能であることを確認して、グループから退去する。
【００５６】
続いて、端末（次期マスタ）２におけるマスタ変更処理について説明する。端末（次期マスタ）２では、端末（マスタ）１に対して「マスタ退去要求応答」を送信した後に、「マスタ変更通知」を、ＩＰマルチキャストにより、全端末装置（スレーブ）に通知し、端末（次期マスタ）２がマスタの役割を引き継いだことを通知する（ステップＳ２４２）。これにより、各スレーブでは、端末（次期マスタ）２がマスタに変更されたことを認識する。
なお、ＩＰマルチキャストによる「マスタ変更通知」の送信は、グループ単位で行われるが、ユニキャストにより送信することもできる。
【００５７】
マスタが変更されると、グループ内の端末（スレーブ）３を含む全スレーブは、自動的にマスタとなった端末２への「グループ参加要求」を送信する（ステップＳ２４３）。マスタとなった端末２では、「グループ参加要求」を送信したスレーブの情報を基に、スレーブ優先順位を算出し（ステップＳ２４４）、また、参加者リストを更新し（ステップＳ２４５）、ＩＰマルチキャストにより、「参加者リスト更新通知」を全端末装置（スレーブ）に通知する（ステップＳ２４６）。また、「グループ参加要求応答」を、「グループ参加要求」を送信した各スレーブに対して送信する（ステップＳ２４７）。
【００５８】
次に、スレーブのグループへの参加およびグループからの退去時の詳細な手順について説明する。図７から図１１は、スレーブのグループ参加およびグループ退去時の手順を示すフローチャートであり、以下、図７から図１１を参照してその手順について説明する。
【００５９】
図７は、スレーブがグループに新規参加する場合の、マスタにおける処理手順を示すフローチャートであり、マスタがスレーブから「グループ参加要求」を受信した後の処理手順を示すものである。
【００６０】
まず、マスタはグループに新規参加しようとするスレーブから、「グループ参加要求」の電文を受信し（ステップＳ３０１）、「グループ参加要求」に含まれるスレーブの端末情報を取得する（ステップＳ３０２）。そして、新規参加スレーブのスレーブ情報を「参加者リスト情報テーブル」へ登録し（ステップＳ３０３）、また、グループ情報テーブルを検索し（ステップＳ３０４）、参加者リスト情報テーブルを検索する（ステップＳ３０５）。
【００６１】
それから、スレーブ優先順位を算出する（ステップＳ３０６）。このスレーブ優先順位の算出は、スレーブの新規参加によるスレーブ優先順位の更新のために行われ、優先順位の算出結果を基にした、次期マスタの決定も含まれる。
【００６２】
続いて、参加者リスト情報テーブルの更新が行われ（ステップＳ３０７）、また、参加要求したスレーブへ「グループ参加要求応答」の電文を送信する（ステップＳ３０８）。また、ＩＰマルチキャストにより、グループ内の全スレーブへ、「参加者リスト更新通知」の電文が送信される（ステップＳ３０９）。なお、ステップＳ３０８（参加要求したスレーブへ「グループ参加要求応答」の電文の送信）は、以下の条件１を通過する前のみのステップである。なお、ＩＰマルチキャストによる「参加者リスト更新通知」の送信は、グループ単位で行われ、新規参加のスレーブにも送信されるが、ユニキャストにより、新規参加のスレには送信しないようにもできる。
【００６３】
続いて、次期マスタの機能を起動できたことを確認するために、スレーブ（次期マスタ候補）からの次期マスタ確認の電文を受信する（ステップＳ３１０）。
それから、条件１（次期マスタ候補が次期マスタの機能を起動できたか？）の判定が行われ（ステップＳ３１１）、Ｙｅｓの場合（次期マスタの機能を起動できた場合）は、スレーブの新規参加処理が終了し、Ｎｏの場合（次期マスタの機能を起動できなかった場合）は、次期マスタを再決定するためにステップＳ３０６からの処理を繰り返す。
【００６４】
また、図８は、スレーブがグループから退去する場合の、マスタにおける処理手順を示すフローチャートであり、マスタがスレーブから「グループ退去要求」の電文を受信した後の処理手順を示すものである。
【００６５】
まず、マスタは退去しようとするスレーブから、「グループ退去要求」の電文を受信すると（ステップＳ４０１）、グループ情報テーブルを検索し（ステップＳ４０２）、また、参加者リスト情報テーブルを検索する（ステップＳ４０３）。
【００６６】
それから、参加者リストからスレーブ優先順位を算出する（ステップＳ４０４）。このスレーブ優先順位の算出は、スレーブの退去要求によるスレーブ優先順位の更新のために行われ、優先順位の算出結果を基にした、次期マスタの決定も含まれる。
【００６７】
続いて、参加者リスト情報テーブルの更新が行われ（ステップＳ４０５）、また、退去要求スレーブへ「退去要求応答」の電文を送信する（ステップＳ４０６）。なお、このステップＳ４０６は、以下の条件１を通過する前のみのステップであり、ループを繰り返した後は、実行されない。また、退去要求でないスレーブへ「参加者リスト更新」の電文が送信される（ステップＳ４０７）。なお、「退去要求応答」および「参加者リスト更新」の電文には、スレーブ優先順位の情報が含まれ、また、次期マスタがどの端末であるかの情報も含まれる。
【００６８】
次に、次期マスタの機能を起動できたことを確認するために、スレーブ（次期マスタ候補）からの次期マスタ確認の電文を受信する（ステップＳ４０８）。
【００６９】
それから、条件１（次期マスタ候補が次期マスタの機能を起動できたか？）の判定が行われ（ステップＳ４０９）、Ｙｅｓの場合（次期マスタ候補が次期マスタの機能を起動できた場合）は、スレーブの退去処理が終了し、Ｎｏの場合（次期マスタ候補が次期マスタの機能を起動できなかった場合）は、次期マスタを再決定するためにステップＳ４０４からの処理を繰り返す。
【００７０】
また、図９は、スレーブがグループに新規参加する場合の、当該スレーブにおける処理手順を示すフローチャートであり、スレーブがマスタから「グループ参加要求応答」の電文を受信した後の処理手順を示すものである。
【００７１】
グループに新規参加するスレーブでは、マスタから「参加要求応答」の電文を受信すると（ステップＳ５０１）、参加者リスト情報テーブルを更新する（ステップＳ５０２）。なお、グループ情報テーブルおよび参加者リスト情報テーブルの初期登録は、マスタ開設通知受信またはマスタ検索応答受信時点とする。グループ情報テーブルはこの時点では更新しない。
【００７２】
続いて、新規参加するスレーブでは、コミュニケーション情報送受信用のインタフェースの設定を行う（ステップＳ５０３）。
【００７３】
それから、条件１（自分が次期マスタ候補か？）の判定が行われる（ステップＳ５０４）。Ｎｏの場合（自分が次期マスタ候補でない場合）は、新規参加処理が終了する。Ｙｅｓの場合（自分が次期マスタ候補である場合）は、マスタの監視を開始する（ステップＳ５０５）。
【００７４】
マスタの監視を開始すると、条件２（マスタ監視機能が正しく開始できたか？）が判定される（ステップＳ５０６）。Ｎｏの場合（マスタ監視機能が正しく開始できなかった場合）は、マスタ監視機能起動失敗の電文をマスタへ送信する（ステップＳ５０８）。Ｙｅｓの場合（マスタ監視機能が正しく開始できた場合）は、マスタ監視機能起動成功の電文をマスタへ送信する（ステップＳ５０７）。
【００７５】
また、図１０は、スレーブがグループから退去する場合の、当該スレーブにおける処理手順を示すフローチャートであり、スレーブがマスタから「グループ退去要求応答」の電文を受信した後の処理手順を示すものである。
【００７６】
グループから退去するスレーブでは、マスタから「退去要求応答」の電文を受信すると（ステップＳ６０１）、参加者リスト情報テーブルを更新する（ステップＳ６０２）。なお、グループ情報テーブルはこの時点では更新しない。
【００７７】
続いて、退去するスレーブでは、コミュニケーション情報送受信用のインタフェースを停止する（ステップＳ６０３）。
【００７８】
それから、条件１（自分が次期マスタ候補であったか？）の判定が行われる（ステップＳ６０４）。Ｎｏの場合（自分が次期マスタ候補でなかった場合）は、退去処理が終了する。Ｙｅｓの場合（自分が次期マスタ候補であった場合）は、マスタの監視を停止する（ステップＳ６０５）。
【００７９】
また、図１１は、グループに継続して参加し続けるスレーブにおける処理手順を示すフローチャートであり、他のスレーブがグループへ新規参加した場合の処理手順を示すフローチャートであり、スレーブがマスタから「グループ参加要求応答」の電文を受信した後の処理手順を示すものである。なお、他のスレーブがグループから退去する場合も同様な手順である。
【００８０】
グループに継続して参加し続けるスレーブが、マスタから「グループ参加要求応答」の電文を受信し（ステップＳ７０１）、参加者リスト情報を取得すると（ステップＳ７０２）、当該スレーブでは、参加者リスト情報テーブルを更新する（ステップＳ７０３）。なお、グループ情報テーブルはこの時点では更新しない。
【００８１】
続いて、条件１（自分が次期マスタ候補であるか？）の判定が行われる（ステップＳ７０４）。Ｎｏの場合（自分が次期マスタ候補でない場合）は、条件３（自分が次期マスタ候補であったか？）の判定が行われる（ステップＳ７０５）。Ｎｏの場合（自分が次期マスタ候補でなかった場合）は、処理を終了する。Ｙｅｓの場合（自分が次期マスタ候補であった場合）は、マスタ監視を停止して（ステップＳ７０６）、処理を終了する。
【００８２】
また、ステップＳ７０４において、Ｙｅｓの場合（自分が次期マスタ候補である場合）は、マスタ監視を開始する（ステップＳ７０７）。そして、マスタの監視を開始すると、条件２（マスタ監視機能が正しく開始できたか？）が判定される（ステップＳ７０８）。Ｎｏの場合（マスタ監視機能が正しく開始できなかった場合）は、マスタ監視機能起動失敗の電文をマスタへ送信する（ステップＳ７０９）。Ｙｅｓの場合（マスタ監視機能が正しく開始できた場合）は、マスタ監視機能起動成功の電文をマスタへ送信して（ステップＳ７１０）、処理を終了する。
【００８３】
次に、スレーブ優先順位の算出方法について説明する。スレーブの優先順位を算出する目的は、次期マスタを決定することである。スレーブの優先順位が最も高いスレーブを次期マスタとする。また、次期マスタだけでなく、全てのスレーブの優先順位を決定する。これは、次期マスタの候補に障害などが発生している場合、次期マスタの次候補にマスタの権限を委譲するなど、システムのフォールトトレランスの性能を向上するためである。
【００８４】
また、図１２のスレーブ優先順位の算出方法について説明するための図に示すように、スレーブの優先順位を決定する因子には、以下に示す要素があるが、どれに重点を置くかはシステム実装上のポリシーに依存する。
【００８５】
第１番目の要素として、「コミュニケーション端末装置（スレーブ）の性能」がある。
これを要素とする目的は、性能が最も高いコミュニケーション端末（スレーブ）が、次期マスタのマスタ障害監視機能、マスタのコミュニケーション情報中継機能などを実行することを目的とする。具体的には、スレーブのＣＰＵ性能やハードディスク容量などに基づき、各スレーブ性能を算定する。これらの値が大きいほど、優先順位が高い。
この要素の取得方法としては各スレーブが、自分の性能を測定して、その結果を「グループ参加要求」の電文で送信する。マスタは、各スレーブから送信されるこの情報を相互比較して次期マスタを決定する。
【００８６】
第２番目の要素として、「コミュニケーション端末装置（スレーブ）相互間のネットワーク的な位置関係」がある。
これを要素とする目的は、システム全体のコミュニケーション情報の送受信で必要となるネットワーク負荷の軽減を目的とする。具体的には、コミュニケーション情報を中継するマスタとスレーブとの間のルータ数（ホップ数）により決定する。（現在のマスタを除いた）システム全体のホップ数が最小となるように次期マスタを決定する。
この要素の取得方法としては、各スレーブが、「グループ参加要求」の送信前に、グループの各コミュニケーション端末（スレーブ）との間のホップ数を計測しておき、その結果を、「グループ参加要求」の電文でマスタに送信する。マスタは、各スレーブから送信されるこの情報
を相互比較して次期マスタを決定する。
【００８７】
第３番目の要素として「各コミュニケーション端末装置（スレーブ）が送信したコミュニケーション情報量」がある。
これを要素とする目的は、システム全体のコミュニケーション情報の送受信で必要となるネットワーク負荷の軽減を目的とする。全てのコミュニケーション情報の送受信をマスタが中継して行うので、コミュニケーション情報の送信においてマスタが占める割合が大きいほど、システム全体のトラフィック量が減少する特性があり、その特性の効果をより大きくすることを目的とする。具体的には、コミュニケーション情報量には、コミュニケーション情報のトラフィック量・送信回数がある。本要素の算出時前に送信したコミュニケーション情報量が大きかったコミュニケーション端末（スレーブ）ほど、今後もそれらの値が大きいという仮定に基づく。
この要素の取得方法としては、マスタのコミュニケーション情報中継機能により、各コミュニケーション端末（スレーブ）が送信したコミュニケーション情報量を計測して、その結果を保存（蓄積）しておき、このデータを基に次期マスタを決定する。
【００８８】
また、図１３はスレーブ優先順位の算出処理の手順を示すフローチャートであり、以下、図１３を参照して、スレーブ優先順位算出の手順について説明する。
【００８９】
まず、要素（１）の「端末性能」について説明する。グループに新規参加しようとするスレーブ３００ａは、自身のＣＰＵ性能などの「端末性能」（要素１）を測定する（ステップＳ８０１）。この「端末性能」の情報は、マスタ１００ａに「グループ参加要求」を送信する際に、マスタ１００ａに送信される（ステップＳ８１９）。マスタは、各スレーブから送信されるこの「端末性能」情報を受信し（ステップＳ８２０）、これを相互比較して（他の要素も勘案して）スレーブ優先順位を算出する（ステップＳ８２１）。
【００９０】
次に、要素（２）の、「コミュニケーション端末装置（スレーブ）相互間のネットワーク的な位置関係」について、ルータ数の情報を使用する場合の例について説明する。
マスタ１００ａがグループを開設し（ステップＳ８１１）、ＩＰマルチキャストにより「グループ開設通知」を送信し（ステップＳ８１２）、各スレーブからの「マスタ検索」を受け付け、「マスタ検索応答」をスレーブ３００ａに返信する（ステップＳ８１３）。スレーブ３００ａでは、マスタ１００ａからの「マスタ検索応答」を受信し（ステップＳ８１４）、各端末のＩＰアドレスを確認する（ステップＳ８１５）。
【００９１】
また、スレーブ３００ａでは、グループ内の各端末装置（スレーブ）宛に「ルータ数チェック用の電文」を送信し（ステップＳ８１６）、スレーブ３００ａは、「グループ参加要求」の送信の前に、グループの各コミュニケーション端末（スレーブ）との間のルータのホップ数を計測しておく（ステップＳ８１７）。そして、その「ルータ数算定結果」を、「グループ参加要求」を行う際に、「グループ参加要求」の電文内でマスタに送信する（ステップＳ８１９）。マスタは、各スレーブから送信されるこの「ルータ数」の情報を受信し（ステップＳ８２０）、これを相互比較して（他の要素も勘案して）スレーブ優先順位を算出する（ステップＳ８２１）。
【００９２】
次に、要素（３）の、「各コミュニケーション端末装置（スレーブ）が送信したコミュニケーション情報量」について説明する。
マスタ１００ａは、マスタ１００ａ内のコミュニケーション情報中継機能により、各コミュニケーション端末（スレーブ）が送信したコミュニケーション情報量の計測を開始する（ステップＳ８３１）。なお、この「コミュニケーション情報量の計測開始」は、マスタ１００ａによるグループ開設が契機となり、開始される。
【００９３】
また、スレーブ３００ａなどが「コミュニケーション情報」を送信すると（ステップＳ８３２）、マスタ１００ａでは、スレーブ３００ａの「コミュニケーション情報」を中継して他のスレーブに送信する（ステップＳ８３３）。この際に、マスタ１００ａは、「コミュニケーション情報量」を測定し（ステップＳ８３４）、保存（蓄積）した「コミュニケーション情報量」の測定値を更新し、新たに、スレーブ優先順位を算出する（ステップＳ８３５）。
【００９４】
なお、スレーブ優先順位の算出は、マスタ１００ａが、スレーブ３００ａからの「グループ参加要求」を受信した場合や、「グループ退去要求」を受信した場合にも行われる（ステップＳ８４１、Ｓ８４２、Ｓ８４３）。
【００９５】
以上、本発明の実施の形態について説明したが、図２に示すマスタ１００、次期マスタ２００、スレーブ３００内の各機能に必要な処理を実現するためには、専用のハードウェアにより処理を行ってもよく、また、図２に示すマスタ１００、次期マスタ２００、スレーブ３００内の各機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、図２に示すマスタ１００、次期マスタ２００、スレーブ３００内の各機能に必要な処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００９６】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの（伝送媒体ないしは伝送波）、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。
また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００９７】
以上、本発明の実施の形態について説明したが、本発明のコミュニケーションシステムは、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【産業上の利用可能性】
【００９８】
本発明は、グループに参加する端末装置だけでコミュニケーションシステムを形成でき、また、サーバを必要としない効果を奏するので、本発明は、コミュニケーションシステムおよびコミュニケーションシステムの形成方法などに適用できる。
【図面の簡単な説明】
【００９９】
【図１】本発明によるコミュニケーションシステムの概念を説明するための図。
【図２】マスタ、次期マスタ、スレーブの有する機能を示す図。
【図３】本発明によるコミュニケーションシステムの処理手順の概要を示すフローチャート。
【図４】本発明によるコミュニケーションシステムのシステム処理フローを示す図その１。
【図５】本発明によるコミュニケーションシステムのシステム処理フローを示す図その２。
【図６】本発明によるコミュニケーションシステムのシステム処理フローを示す図その３。
【図７】スレーブがグループに新規参加する場合の、マスタにおける処理手順を示すフローチャート。
【図８】スレーブがグループから退去する場合の、マスタにおける処理手順を示すフローチャート。
【図９】スレーブがグループに新規参加する場合の、当該スレーブにおける処理手順を示すフローチャート。
【図１０】スレーブがグループから退去する場合の、当該スレーブにおける処理手順を示すフローチャート。
【図１１】他のスレーブがグループへ新規参加した場合の、グループに継続参加するスレーブでの処理手順を示すフローチャート。
【図１２】スレーブ優先順位の算出方法について説明するための図。
【図１３】スレーブ優先順位の算出処理の手順を示すフローチャート。
【図１４】従来のコミュニケーションシステムの概略構成を示す図。
【符号の説明】
【０１００】
１００、１００ａ マスタ
１０１ グループ開設機能
１０２ スレーブ管理機能
１０３ スレーブ優先順位算出機能
１０４ 次期マスタ選定機能
１０５ マスタ権限委譲機能
１０６ コミュニケーション情報中継機能
１１１、２１１、３１１ コミュニケーション情報送信機能
１１２、２１２、３１２ コミュニケーション情報受信機能
１１３、２１３、３１３ 制御情報送信機能
１１４、２１４、３１４ 制御情報受信機能
１２１ グループ開設機能
１２２ スレーブ管理機能
１２３ コミュニケーション情報中継機能
１２４ スレーブ優先順位算出機能
１２５ 次期マスタ選定機能
１２６ マスタ権限委譲機能
２００ 次期マスタ
２０１ マスタ障害監視機能
２０２ マスタ権限引継機能
２２１ マスタ障害監視機能
２２２ マスタ権限引継機能
３００、３００ａ スレーブ
３０１ 新規参加スレーブ
【図１】
2005100030.tif 000003
【図２】
2005100030.tif 000004
【図３】
2005100030.tif 000005
【図４】
2005100030.tif 000006
【図５】
2005100030.tif 000007
【図６】
2005100030.tif 000008
【図７】
2005100030.tif 000009
【図８】
2005100030.tif 000010
【図９】
2005100030.tif 000011
【図１０】
2005100030.tif 000012
【図１１】
2005100030.tif 000013
【図１２】
2005100030.tif 000014
【図１３】
2005100030.tif 000015
【図１４】
2005100030.tif 000016