JP2005275539A - 通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム - Google Patents
通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム Download PDFInfo
- Publication number
- JP2005275539A JP2005275539A JP2004084427A JP2004084427A JP2005275539A JP 2005275539 A JP2005275539 A JP 2005275539A JP 2004084427 A JP2004084427 A JP 2004084427A JP 2004084427 A JP2004084427 A JP 2004084427A JP 2005275539 A JP2005275539 A JP 2005275539A
- Authority
- JP
- Japan
- Prior art keywords
- master
- peer
- event
- peers
- candidate list
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
【解決手段】 共有空間のマスターピア4から配布された過去の信頼できるイベントを元に新しい共有空間のマスターピア1を一意に選択する仕組みを構築する。再配布されたイベントにより作成されるマスター候補リスト(マスター候補リスト生成保持部16)により、全てのピア2、3が代替マスターピア候補を一意に決定することができる。また、マスターピア4以外のピア2、3からのマスター交代通知の正当性を確認することができ、更に、イベント再配布途中でのマスターピア4の異常終了に対しても、マスター交代完了後、最終イベントを再配布することで各ピア2、3の状態を同一に保つ。
【選択図】 図1
Description
Sobaフレームワークでは、例えば、図6に示されるように、ネットワーク上の仮想的な共有空間を構築し、その共有空間上で様々なアプリケーションを共有することでコミュニケーションをはかる。言い替えれば共有空間とは複数のユーザー間でアプリケーションを共有する場であるといえる。
共有空間には複数のユーザーが随時出入りでき、また随時複数のアプリケーションを共有/共有解除できる。アプリケーションの共有機能によって、共有空間に参加している各ノード上に同じアプリケーション画面を表示することができる。また、ある参加者のアプリケーションに対する操作を、他の全参加者の画面上で確認することが可能である。
アプリケーションの共有は、アプリケーションの内部状態を共有空間に参加している全てのノードで同一に保つことによって実現される。Sobaフレームワークではイベントによる同期によってこれを実現する。ホワイトボードに線を引く例では、「A点からB点まで色C,太さDの線を引く」というイベントが共有空間に参加している各ノードに送られる。各ノードではそのイベントを解釈し自らが保持しているアプリケーション状態を更新し、結果として画面上に線が描かれる。イベント適用によるアプリケーションの状態は、前の状態とイベントの中身によって一意に決められる。したがって、状態を同一に保つためにはイベントの順序を保証する必要がある。
共有空間の状態の同一性保持は、アプリケーションと同じようにイベントによって行われる。共有空間の状態には、参加者のリストと共有アプリケーションのリストが含まれる。共有空間の状態に関するイベントにはユーザーの参加/脱退、アプリケーションの共有/共有解除、マスターの変更などがある。各ノードにおける共有空間状態の同一性を保証するために、共有空間にもアプリケーションと同様にマスターとなるノードが存在する。
アプリケーションマスターの脱退については、アプリケーションのマスターが共有空間を脱退する場合、共有空間のマスターに対してセッション脱退の要求を行う。これに対して共有空間のマスターはアプリケーションのマスターを他のノードに変更し、マスター変更を他のノードに通知した後に脱退処理を行う。
共有空間マスターの脱退については、共有空間のマスターは共有空間から脱退する際、他のノードに共有空間のマスターを委譲する。共有空間マスター変更についての他ノードへの通知は旧マスターによって行われる。旧マスターは、他ノードへマスターを委譲したあと、他のノードと同様の脱退処理を行う。
例えば、共有空間「教室」の参加者には「先生」の役割を設定することができる。そして、「先生」にはアプリケーションの共有ができるが「生徒」にはできないというように役割に権限を設定することができる。権限の一貫性を保つために、共有空間あるいはアプリケーションのマスターを交換する際、新マスターは旧マスターと同じ役割を持った参加者(が利用するノード)である必要がある。
Sobaプロジェクト[2004年3月1日閲覧]インターネットURL<http://soba−project.org/>
Sobaフレームワークでは、マスターをセキュリティコントロールのためのノードとしても使用しているため、マスターから受け取るイベントのみを信頼できるイベントとして処理している。従来のSobaフレームワークでは、共有空間のマスターが異常終了すると、信頼できるイベントを配布できるノードが共有空間からなくなるため、共有空間を維持できなかった。また、上記した特許文献1、2、3によっても異常発生をトリガとしたマスター復帰後のイベントの順序性を保証する記載がない。
また、その際に、共有空間のマスターから配布された過去の信頼できるイベントを元に新しい共有空間のマスターを一意に選択する仕組みを構築することにより、全てのピアが代替マスター候補を一意に決定することができ、マスター以外のピアからのマスター交代通知の正当性を確認できる、通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラムを提供することも目的とする。
更に、イベント再配布途中でのマスターの異常終了に対しても、マスター交代完了後、最終イベントを再配布することで各ピアの状態を同一に保つことのできる、通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラムを提供することも目的とする。
更に、イベント再配布途中でのマスターの異常終了に対しても、マスター交代完了後最終イベントを再配布することで各ピアの状態を同一に保つことができる。すなわち、選択されたマスターピア候補は必ず最新のイベントを受信しているため、最新のイベントを各ピアに再配布することで順序性が保証される。
マスター候補ピア1は、マスター機能実行部11と、最終イベント記憶部12と、イベント処理部13と、マスター交代管理部14と、イベント要求部15と、マスター候補リスト生成保持部16で構成される。
マスター機能実行部11は、ピア2からのイベント要求を受け付け、ピア2を含む他のピアにイベントを再配布する機能を持つ。最終イベント記憶部12には、最後に処理したイベントがイベントに付される通番と共に記憶される。また、イベント処理部13は、マスターピア1から再配布されたイベントを処理する機能を持つ。更に、マスター交代管理部14は、マスター交代を実行するためにピア2との間で通知および承認のためのネゴシエーションを行う。
なお、ピア2は、ここではマスターピアとして動作しないため、マスター機能実行部を除く全てのブロックが含まれ、ブロック名および機能はマスター候補ピアのそれと同じであるため、重複を回避する意味でここでの説明は省略する。
以下、図2、図3を参照しながら、図1に示す本発明実施形態の動作について詳細に説明する。
マスターピア4は、マスター候補リストの最上位に位置するピアから順にイベントを再送信する。このことにより、マスター異常時に次のマスターとなるピアに、常に最新のイベントが配信されることが保証される(他のピアに配信されたイベントは必ず既に配信されている)。
続いて、マスター候補ピア1は、各ピア2、3に対し、マスター交代完了を通知し(S41)、最後のイベントを再送信する(S42)。これを受けたピア2、3を含む全てのピアは、通番を確認し、未処理イベントの場合はイベント処理部13で処理を行う(S43)。
このように、マスター候補リストのマスター候補の上位から順にイベントが再配布されるため、イベント再配布中にマスター交代が起っても、新マスターは最後の(途中までしか再配布されていないかもしれない)イベントを再配布することができる。
ここで、マスターピア4と同じ役割を持つ参加者が共有空間に参加する場合、ユーザーレストのn+1番目に挿入され、マスターピア4とは異なる役割を持つ参加者が参加する場合はユーザーリストの最後に追加することとする。なお、参加者が脱退する場合は、ユーザーリストから削除する。
まず、マスター候補リストは、共有マスター候補のうちマスターであるアプリケーションの数が少ない順に並ぶ。同数の場合は参加が早い方(遅い方でも可、ただしシステムとして統一する)とする。
マスター候補リストは、「参加」、「脱退」、「アプリケーションの共有開始」、「共有解除」操作のいずれかで順序が入れ替わる可能性がある。マスター候補リストの入れ換えが発生した場合は、入れ替わる前のリストを1世代だけ保存する必要がある。マスター候補リストの入れ換えが発生しないイベントが発生した(受け取った)時点で、旧リストを破棄する(最新のリストのみ保持する)。
まず、ピア2は、マスターピア4への通信異常によりマスターピア4が異常終了したことを検出する(S51)。そして、最新のマスター候補リストにおける最上位のピア(マスター候補ピア1)にマスター異常終了を伝える(S52、S53)。この際、パラメーターとして自分が最後に受け取ったイベントの通番を付加する。また、ピア2は、マスター候補リストの最上位のピアが既に共有空間に存在しない(通信できない)場合は、マスター候補リストの次のピアをマスター候補として、マスター異常終了を伝える(S53)。上記の処理は共有空間に存在するマスター候補が見つかるまで繰り返される(S56)。
自分より上位のピアがいないとき,マスター候補ピア1はマスター機能実行部11を起動する(S58)。続いて、マスター候補ピア1は、各ピア2、3にマスター交代通知を発行する(S59)。これを受けたピア2、3は、マスター候補ピア1がマスター候補として正当であることを確認する。旧マスター候補リストがなければ最新のマスター候補リストを元に、存在確認ができる中でリストの最上位にことが正当であることの条件である。更に、マスターピア4の異常終了を確認する(S60)。
続いて、マスター候補ピア1は、各ピア2、3に対し、マスター交代完了を通知し(S62)、最後のイベントを再送信する(S63)。これを受けたピア2、3を含む全てのピアは、通番を確認し、未処理イベントの場合はイベント処理部13で処理を行う(S64)。
また、マスターピア4以外のピア2、3からのマスター交代通知の正当性を確認することができる。更に、イベント再配布途中でのマスターピア4の異常終了に対しても、マスター交代完了後、最終イベントを再配布することで各ピア2、3の状態を同一に保つことができる。すなわち、選択されたマスター候補ピア1は必ず最新のイベントを受信しているため、最新のイベントを各ピア2、3に再配布することで順序性が保証される。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
Claims (6)
- マスターピアを含む複数のピアがネットワーク上に仮想的な共有空間を形成し、その中のアプリケーションを共有する通信システムであって、
前記それぞれのピアは、
少なくとも、あるピアからイベントを受付、他のピアにそのイベントを再配布するマスター機能実行部と、前記イベントの受付順で一意に決まるマスター候補リストを生成して保持するマスター候補リスト生成保持部とを備え、前記マスターピアの通信異常を検出したとき、前記マスター候補リストから一つのマスター候補ピアを選択し、当該マスター候補ピアに対して前記マスターピアの通信異常を通知し、
前記マスター候補ピアは、前記マスターピアの通信異常を確認して前記マスター候補リストを参照し、自身より上位のピアが存在しないことを確認のうえ自身が持つ前記マスター機能実行部を起動することを特徴とする通信システム。 - 前記それぞれのピアは、
前記マスター候補リストの最上位に位置するピアが既に前記共有空間に存在しない場合、次に位置するピアをマスター候補として選択して前記マスターピアの通信異常を通知する処理を、前記共有空間に存在するマスター候補ピアが発見されるまで繰り返すことを特徴とする請求項1に記載の通信システム。 - 前記マスター機能実行部を起動した前記マスター候補ピアは、
マスター交代の事実を他の全てのピアに通知し、前記他の全てのピアによる承認の処理を待って最後のイベントを再配布することを特徴とする請求項1または2に記載の通信システム。 - 前記マスター候補リスト生成保持部は、
前記共有空間の利用参加ユーザーが持つユーザーリストのうちのn番までをマスター候補として設定し、前記マスターピアと同じ役割を持つユーザーが新たに参加する場合、前記マスター候補リストのn+1番目に挿入し、前記マスターピアと異なる役割を持って参加するユーザーの場合、前記マスター候補リストの最後尾に追加し、脱退するユーザーの場合、前記マスター候補リストから削除する操作を実行することを特徴とする請求項1に記載の通信システム。 - マスターピアを含む複数のピアがネットワーク上に仮想的な共有空間を形成し、その中のアプリケーションをコンピュータによって共有する通信システムにおけるマスターピアの異常復帰方法であって、
あるピアからイベントを受付、他のピアにそのイベントを再配布するステップと、
前記イベントの受付順で一意に決まるマスター候補リストを生成して保持するするステップと、
前記マスターピアの通信異常を検出したとき、前記マスター候補リストから一つのマスター候補ピアを選択し、当該マスター候補ピアに対して前記マスターピアの通信異常を通知するステップと、
前記マスターピアの通信異常を確認して自身が持つ前記マスター候補リストを参照し、自身より上位のピアが存在しないことを確認のうえ自身がマスターピアとなることを他のピアに通知し、前記他のピアの承認を待って最後のイベントを再配布するステップと、
を有することを特徴とする通信システムにおけるマスターピアの異常復帰方法。 - マスターピアを含む複数のピアがネットワーク上に仮想的な共有空間を形成し、その中のアプリケーションを共有する通信システムに用いられるコンピュータプログラムであって、
あるピアからイベントを受付、他のピアにそのイベントを再配布する処理と、
前記イベントの受付順で一意に決まるマスター候補リストを生成して保持するする処理と、
前記マスターピアの通信異常を検出したとき、前記マスター候補リストから一つのマスター候補ピアを選択し、当該マスター候補ピアに対して前記マスターピアの通信異常を通知する処理と、
前記マスターピアの通信異常を確認して自身が持つ前記マスター候補リストを参照し、自身より上位のピアが存在しないことを確認のうえ自身がマスターピアとなることを他のピアに通知し、前記他のピアの承認を待って最後のイベントを再配布する処理と、
をコンピュータに実行させるコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004084427A JP4364689B2 (ja) | 2004-03-23 | 2004-03-23 | 通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004084427A JP4364689B2 (ja) | 2004-03-23 | 2004-03-23 | 通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005275539A true JP2005275539A (ja) | 2005-10-06 |
JP4364689B2 JP4364689B2 (ja) | 2009-11-18 |
Family
ID=35175183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004084427A Expired - Lifetime JP4364689B2 (ja) | 2004-03-23 | 2004-03-23 | 通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4364689B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007124540A (ja) * | 2005-10-31 | 2007-05-17 | Canon Inc | 通信制御装置、通信制御装置の制御方法および制御プログラム |
JP2008217769A (ja) * | 2007-02-28 | 2008-09-18 | Samsung Electronics Co Ltd | P2pネットワーキングを通じた高品質のコンテンツ提供システム及び方法 |
WO2009063762A1 (ja) * | 2007-11-12 | 2009-05-22 | Nec Corporation | データ通信システムおよび方法およびプログラム |
JP2010062803A (ja) * | 2008-09-03 | 2010-03-18 | Mitsubishi Electric Corp | データ送受信装置 |
JP2010079423A (ja) * | 2008-09-24 | 2010-04-08 | Sony Corp | 情報処理装置および方法、プログラム、並びに、情報処理システム |
-
2004
- 2004-03-23 JP JP2004084427A patent/JP4364689B2/ja not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007124540A (ja) * | 2005-10-31 | 2007-05-17 | Canon Inc | 通信制御装置、通信制御装置の制御方法および制御プログラム |
US8396422B2 (en) | 2005-10-31 | 2013-03-12 | Canon Kabushiki Kaisha | Communication control device, method of determining communication control device, and storage medium for performing the method |
JP2008217769A (ja) * | 2007-02-28 | 2008-09-18 | Samsung Electronics Co Ltd | P2pネットワーキングを通じた高品質のコンテンツ提供システム及び方法 |
US8335844B2 (en) | 2007-02-28 | 2012-12-18 | Samsung Electronics Co., Ltd. | System and method of providing quality of service-enabled contents in peer-to-peer networks |
WO2009063762A1 (ja) * | 2007-11-12 | 2009-05-22 | Nec Corporation | データ通信システムおよび方法およびプログラム |
JP2010062803A (ja) * | 2008-09-03 | 2010-03-18 | Mitsubishi Electric Corp | データ送受信装置 |
JP2010079423A (ja) * | 2008-09-24 | 2010-04-08 | Sony Corp | 情報処理装置および方法、プログラム、並びに、情報処理システム |
US9124714B2 (en) | 2008-09-24 | 2015-09-01 | Sony Corporation | Information processing device and method, program, and information processing system |
Also Published As
Publication number | Publication date |
---|---|
JP4364689B2 (ja) | 2009-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6558430B2 (ja) | ラッパアプリケーションプログラムインタフェースを用いて対話型ホワイトボード機器上の第三者コンテンツ共同サービスにアクセスするためのアプローチ | |
US11265367B2 (en) | System and method for signaling through data storage | |
KR101201091B1 (ko) | 복수의 컴퓨터 시스템을 통해 전자 문서를 거의 실시간으로 공동 작업 가능하게 하기 위한 방법, 시스템 및 장치 | |
US10997203B2 (en) | Systems for allowing annotation in real time | |
US9641570B2 (en) | Electronic information collaboration system | |
JP6578717B2 (ja) | 端末装置、プログラム、役割判定方法及び情報処理システム | |
CN104471556A (zh) | 多媒体会议端点传送系统 | |
US20140245185A1 (en) | Electronic Information Collaboration System | |
JP2009500698A (ja) | データ共有を伴うインスタントメッセージング | |
US20080228852A1 (en) | Synchronization of Information Items with References | |
CN102132310A (zh) | 内容共享和即时消息收发 | |
JP6497184B2 (ja) | 端末装置、プログラム、コンテンツ共有方法及び情報処理システム | |
US11265183B1 (en) | Asynchronous meeting management for collaboration solutions | |
US20140244720A1 (en) | Electronic Information Collaboration System | |
JP6287113B2 (ja) | 通信管理装置、プログラム、通信管理方法及び通信管理システム | |
JP2020009164A (ja) | 情報処理サーバー及びプログラム | |
US10506032B2 (en) | Automated load distribution for a group-based communication platform | |
JP4364689B2 (ja) | 通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム | |
US20210314375A1 (en) | Moderator change for an existing meeting invite | |
Shen et al. | Achieving data consistency by contextualization in web-based collaborative applications | |
JP2021507333A (ja) | グループ間でデータを共有するための方法および装置 | |
JP6489324B2 (ja) | 画像形成装置及び原稿を複製する方法 | |
US20220318760A1 (en) | Updating participants on meeting invites across calendar systems | |
JP4235838B2 (ja) | プロジェクタ、プログラムおよび情報記憶媒体 | |
JP2004213271A (ja) | 端末装置、電子会議システム、セッション管理方法及びプログラム |
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: 20080814 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080826 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081024 |
|
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: 20090811 |
|
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: 20090819 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120828 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4364689 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: 20120828 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130828 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140828 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |