JP3172192B2 - データ会議ネットワーク - Google Patents

データ会議ネットワーク

Info

Publication number
JP3172192B2
JP3172192B2 JP51839096A JP51839096A JP3172192B2 JP 3172192 B2 JP3172192 B2 JP 3172192B2 JP 51839096 A JP51839096 A JP 51839096A JP 51839096 A JP51839096 A JP 51839096A JP 3172192 B2 JP3172192 B2 JP 3172192B2
Authority
JP
Japan
Prior art keywords
update
node
network
nodes
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP51839096A
Other languages
English (en)
Other versions
JPH10500548A (ja
Inventor
ニブレット、ピーター、デヴィッド
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
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 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH10500548A publication Critical patent/JPH10500548A/ja
Application granted granted Critical
Publication of JP3172192B2 publication Critical patent/JP3172192B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

【発明の詳細な説明】 本発明は、データ会議ネットワークに関し、具体的に
はそのようなネットワークのノードで実行される順次化
操作のための方法および装置に係わる。
データ会議ネットワークとは、複数のユーザが、あた
かも全員が同じ会議室にいるかのように対話し、互いに
データを交換することができるネットワークである。し
たがって、会議では各参加者は通常、他のすべての参加
者に向かって通信し、書かれたテキストまたは図面ある
いはその両方を送り、ボード上に図面を描き、同じボー
ド上の他の話者によって提供された情報を補足または変
更することができる。
同様にして、データ会議ネットワークでは、互いに遠
隔地にいる参加者の間で情報の交換を行うことができ
る。各参加者は、コンピュータ・ワークステーション
(ノードとも呼ぶ)を有し、すべてのワークステーショ
ンは適切な通信媒体(たとえばモデム、LANなど)によ
ってリンクされて通信ネットワークを形成する。各ワー
クステーションまたはノードは、現実の会議環境におけ
るようにすべての参加者が同じデータ(テキスト、図お
よび同様のもの)を共有することを可能にする共同作業
アプリケーションをサポートする。参加者は、自分のワ
ークステーションで操作するだけで、この共有データを
希望に応じて変更および修正することができ、その後で
そのすべての変更内容を他の参加者に送ることができ
る。このようにして、現実の会議の状況が模擬され、各
参加者は会議で討議される主題に関与することができ、
参加者全員によって共有されるボード上で図または同様
のものを有効に描画したり修正(更新)したりすること
ができる。
所与の時点で、ユーザのうちの誰でも共有(基礎)デ
ータの更新を試みることができるため、それらの操作が
ネットワーク内のすべてのノードで同じ順序で反映され
るようにする順序付け機構が必要である。これは、会議
の各参加者、すなわち各ノードが、同一バージョンの基
礎データを有するように保証することである。言い換え
ると、更新が異なるノードごとに異なる順序で適用さ
れ、その結果ノードの歩調が乱れるのを防ぐために、参
加者の活動を順次化する必要がある。
以下の例で、様々な更新要求が正しく順序付けされな
い場合に起こる可能性のある種類の問題を示す。第1図
に、それぞれが会議データの自分のコピーを維持するデ
ータ会議ネットワーク内の2つのノードAおよびBを図
示する。この事例では、会議データは、左側に家、右側
に自動車が含まれている共有黒板またはイメージであ
る。開始時(第1a図)には、ノードAとノードBは両方
ともまったく同じイメージを表示する。
ここで、各ノードがこのイメージを編集するようにさ
らに調整されているものとする。この編集が、更新のタ
イミングに制約を加えずに、単に各ノードがデータの各
ノード自身の(ローカル)コピーを更新し、次にその更
新に関する情報をネットワーク内の他の(遠隔)ノード
に送ることができるようにするだけで単純に行われる場
合、同期化の問題が起こる可能性がある。たとえば、第
1a図のイメージの下に略図で図示されている2つの編集
操作の結果を考えてみる。ノードAは、左側と右側を交
換することによってイメージを更新し(その結果、自動
車と家の位置が交換される)、ノードBは左側部分を削
除する(すなわち家を削除する)ことによってイメージ
を更新する。これらの操作は本質的にローカル・ノード
で即時に行われ、その結果、第1B図の状況になり、次に
各交信内容が遠隔ノードに送信される。しかし、更新が
遠隔ノードに着信すると、当該操作は現在そのノードに
存在するバージョンのデータに対して行われる。したが
って、ノードBが画面の左右の部分を交換すると、単に
自動車が右から左に移動するだけであるが、ノードAが
左側を削除すると、実際には自動車が削除される。第1C
図に示すように、これによってBはイメージの左側部分
に自動車を表示するのに対して、Aはイメージの右側部
分に家を表示する。明らかに2つのイメージは同じでは
なくなり、データ共有が崩れている。
更新の効果は更新が行われる順序に依存する(数学用
語で言えば更新操作は非交換可能である)ため、問題が
生じる。したがって、このタイプの矛盾を避けるため
に、様々なノードの活動と、したがって会議データの更
新要求が、適切に順序付けされることが最も重要であ
る。
この問題については、1987年1月発行のCommunicatio
ns of ACM第30巻第1号の32〜47ページのM Stefik、G F
oster、D Bobrow、K kahn、S Lanning、およびL Suchma
nによる“Beyond the Chalkboard:Computer Support fo
r Collaboration and Problem Solving in Meetings"で
述べられている。この論文で述べられているように、従
来のデータ会議ネットワークは通常、ネットワークのノ
ードの1つが、マスタ・ノードとも呼ばれる中央ノード
として指定されるようにして設計される。マスタ・ノー
ドの役割は、ネットワーク全体の活動の適切な順次化に
必要な、すべての適切な制御データを残りのノードに供
給することによって、データ会議ネットワークの円滑に
稼働させることである。したがって、一般に、任意のノ
ードからの各更新要求はまずマスタ・ノードに送らなけ
ればならず、マスタ・ノードはすべてのノードからのす
べての更新要求を収集し、それらを実行する順序を判断
することによって順序付けする。次に、マスタ・ノード
は正しく順序付けされた更新内容を周辺ノードに伝達す
る。1つの選択肢は、共有データを実際には中央ノード
に常駐させ、すべての更新がそこに加えられるようにす
ることであることに留意されたい。その場合、他のノー
ドが受け取るデータはすべて、中央ノードからの共有デ
ータのそれぞれのコピーに最新化される。
この手法は、ネットワークの様々なノード間で順次化
(serialisation)が首尾よく実行されるようにする
が、ネットワーク上で大量の付加的専用制御データを巡
回させる必要があるという大きな欠点がある。したがっ
て、様々な参加者によって実行された基礎データのすべ
ての変更は、最初に中央ノードに送った後で、すべての
ノードに順に配布しなければならない。さらに、マスタ
・ノードの初期選定が後の段階で不適当になり、ネット
ワーク全体の再構成が必要になることがある。この事態
が発生するのは、たとえばマスタ・ノードが会議から退
会した場合、または、追加のユーザが会議に加わり、そ
れによってネットワークのバランスが変わって、それま
で選定されていたマスタ・ノードが非効率的になる場合
(たとえば新たに加わったノードよりもプロセッサ速度
が遅い場合や、低速の通信リンクでのみ接続されている
場合など)である。したがって、従来のデータ会議ネッ
トワークは過度の負荷がかかりやすく、かなり低速で非
効率的になりがちである。
前述の参照資料では、その他の様々な順次化手法が述
べられているが、それらは一般に低速であるか(更新を
行う前にノードが該当データのロックを要求するロッキ
ング技法など)、さもなければ完全な同期化を保証する
ことができないという点で信頼できないものと認められ
る。したがって、データ会議ネットワークの設計者は、
従来の技術では完全に満足できる順次化方法が得られな
いという問題に直面している。
したがって、本発明は、ネットワークが複数のノード
を含み、各ノードが共有データ・セットのコピーを維持
し、任意の1つのノードから出された共有データ・セッ
トの更新要求がネットワーク内の他のすべてのノードに
対して送信され、ネットワーク内の他のすべてのノード
によって実行される、データ会議ネットワークにおける
共有データ・セットの更新を順次化する方法であって、 すべてのノードをリンクする通信経路を定義するステ
ップと、 許可番号が関連づけられた前記許可トークンを前記通
信経路を回って巡回させるステップと、 ノードで出された各更新要求を前記ノードの第1のキ
ューに入れるステップと、 前記ノードで前記許可トークンを受け取り、前記許可
番号の現行値に応じて前記第1のキュー内の更新要求に
更新レベルを割り当て、前記許可番号を増加させるステ
ップと、 増加した許可番号を含む許可トークンを通信経路内の
次のノードに転送するステップと、 更新要求をネットワーク内のすべてのノードに同報通
信するステップと、 更新要求をネットワーク内のすべてのノードで受信す
るステップと、 各受信ノードにおいて、 受信した更新要求を第2のキューに入れるステップ
と、 当該受信ノードで共有データ・セットに適用される最
後の更新要求の更新レベルを反映する現行更新レベル値
を維持するステップと、 第2のキュー内の更新要求の更新レベルを現行更新レ
ベルと照合し、適用する次の更新要求が第2のキュー内
にあるか否かを判断し、ある場合には前記第2のキュー
から当該更新要求を除去し、更新内容に従って共有デー
タ・セットを更新し、現行更新レベルの値を増加させる
ステップとを特徴とする方法を提供する。
したがって、許可番号が埋め込まれた許可トークンが
ネットワークを回る巡回に基づく分散手法を用いる。こ
の分散環境の利点は、この新規システムがきわめて柔軟
性が高いことと、マスタ・ノードとの間で制御メッセー
ジを伝達する必要がないためにネットワーク・トラヒッ
クが大幅に低減されることである。このネットワークは
中央ノードの定義の必要がなく、ネットワークの実際の
制御の役割がすべてのノード間で分担され、いつでも再
構成なしで新しいノードが加わったり退去したりするこ
とができる。
一般に、各会議の始めに、許可トークンに関連する許
可番号が初期値に設定され、その値がネットワーク内の
すべてのノードに知らされる。次にこの値は、許可トー
クンがネットワークを巡回するにつれて、更新が生成さ
れるたびに累進的に増加する。
好ましい実施例では、この方法は前記第2のキュー内
の前記更新要求を更新レベルによってソートするステッ
プをさらに含む。第2のキューを順序付けることによっ
て、正しい更新レベルを有する次の更新が着信したかど
うかをキューできわめて迅速に調べることができる。
更新要求の効果的な管理が確実に行われるようにする
ため、許可トークンがネットワークを迅速に巡回し続け
るようにすることと、いずれかのノードで長く停滞し過
ぎないようにすることが重要である。これは、きわめて
大きな更新要求が当該ノードでかなりの処理時間を要し
た場合や、ネットワークでの伝送時間を要した場合に起
こることがある。この問題は、前記第1のキューに入れ
る前に、所定の大きさを超える更新を複数の更新要求に
分割すれば防ぐことができる。したがって、大きな更新
要求は一連のより小さな部分要求に分割し、それを順次
に処理する。その結果、その更新全体が処理されるのを
待つ間、許可トークンが過度に長く停滞することがなく
なり、連鎖の最初の部分要求の処理後、ただちに次のノ
ードに渡すことができる。次に、許可トークンがそのノ
ードに戻るたびに、残りの部分要求が一度に一つずつ送
られる。
もう一つの効率問題は、実際のネットワーク構成に関
係するものである。ネットワークのすべてのノードに到
達するために、様々なノードをリンクする経路が特定の
ノードを他のノードよりも多く通らなければならないこ
とがある。その結果、ネットワーク内でその特定のノー
ドは許可トークンを他のノードよりも頻繁に受け取るこ
とになり、したがってそのノードの更新要求を送信する
機会が多くなる。この状況は、ノードが許可トークンを
実際に受信する回数に関係なく、各ノードが通信経路を
回る1巡回当たりに1つの許可トークンしか使用するこ
とができないようにすることによって回避することがで
きる。これによって、様々なノードの送信機会の平均が
とられることになり、各ノードが自身の更新要求を送信
することができる機会がほぼ等しく与えられる。
本発明は、ネットワークが複数のノードを含み、すべ
てのノードをリンクする通信経路が定義され、各ノード
が共有データ・セットのコピーを維持し、任意の1つの
ノードから出される共有データ・セットの更新要求がネ
ットワーク内の他のすべてのノードに送信され、ネット
ワーク内の他のすべてのノードによって実行される、デ
ータ会議ネットワークにおける共有データ・セットの更
新を順次化する装置であって、 一つのノードにおける前記装置が、 関連する許可番号を有する前記許可トークンを前記通
信経路で巡回させる手段と、 当該ノードから出される各更新要求を格納する第1の
キューと、 当該ノードで前記許可トークンを受け取り、前記許可
番号の現行値に応じて前記第1のキュー内の更新要求に
更新レベルを割り当て、前記許可番号を増加される手段
と、 増加した許可番号を含む許可トークンを通信経路内の
次のノードに転送する手段と、 更新要求をネットワーク内のすべてのノードに同報通
信する手段と、 ネットワーク内の他のノードからの更新要求を受信す
る手段と、 受信した更新要求を格納する第2のキューと、 当該ノードで共有データ・セットに適用される最後の
更新要求の更新レベルを反映する現行更新レベル値を維
持する手段と、 第2のキュー内の更新要求の更新レベルを前記現行更
新レベルと照合し、適用する次の更新要求が第2のキュ
ー内にあるか否かを判断し、ある場合には前記第2のキ
ューから当該更新要求を除去し、更新内容に従って共有
データ・セットを更新し、現行更新レベルの値を増加さ
せる手段とを含む装置も提供する。
次に本発明の実施例について、以下の図面を参照しな
がら例示として詳細に説明する。
第1図は、更新が正しく順次化されない場合に発生す
る可能性がある問題を示す簡略図である。
第2図は、データ会議ネットワークの略図である。
第3図は、第2図のデータ会議ネットワークにおける
ノードを典型的に形成するコンピュータ・ワークステー
ションの簡略ブロック図である。
第4図は、第3図のコンピュータ・ワークステーショ
ン上で動作する主要ソフトウェア構成要素を示す簡略ブ
ロック図である。
第5図は、本発明の好ましい実施例で使用するソフト
ウェア構成要素の詳細なブロック図である。
第6図は、本発明による更新の送出処理を示す流れ図
である。
第7図は、本発明による更新の着信処理を示す流れ図
である。
第2図は、5つのノードA、B、C、D、およびEを
含むデータ会議ネットワークの単純な略図である。この
ネットワークは同種(すなわちすべてのリンクが同じ形
式)であってもよく、ネットワーク全体でリンクのタイ
プが異なっていてもよい(たとえばISDN接続、LAN接続
など)。本明細書では「データ会議ネットワーク」と
は、ノードが複数の物理ネットワークにわたっているか
否かを問わず、会議に参加するノードを意味し、図のノ
ードの1つに物理的に(たとえばLAN接続によって)接
続はされているかも知れないが、実際にデータ会議に参
加しないノードは含まないものと理解されたい。また、
ある種の周知のデータ会議ネットワークは、会議の進行
中に会議に加わったり退去したりすることができるとい
う意味で動的であるということにも留意されたい。
ネットワーク内の各ノードは、典型的には、第3図に
略図を示すようなコンピュータ・ワークステーションを
含む。このコンピュータ・ワークステーションは、シス
テム・ユニット10、表示画面12、キーボード14、および
マウス16を備える。システム・ユニット10は、マイクロ
プロセッサ22、半導体メモリ(ROM/RAM)24、ハード・
ディスク・ドライブ装置36、およびデータを伝送するバ
ス26を備える。第3図のコンピュータは、アイ・ビー・
エム・コーポレイションが市販しているPS/2コンピュー
タなどの任意の従来のワークステーションとすることが
でき、図示されていないがCD−ROMドライブまたはフロ
ッピィ・ディスク・ドライブなどの装置をさらに含むこ
ともできる。第3図のコンピュータは、ネットワーク・
アダプタ・カード30も備えることができる。このカード
をそれに付随するソフトウェアとともに使用すると、第
2図に示すネットワークを介してコンピュータ・ワーク
ステーションがメッセージを送受信することができる。
トークン・リングまたはイーサネット(両者ともLAN形
式)、ISDNなどの様々なタイプのネットワーク用の様々
な形式のネットワーク・アダプタ・カードが市販されて
いる。ネットワーク・アダプタ・カードの動作は周知で
あり、詳細には説明しない。第3図のコンピュータ・ワ
ークステーションは、ワークステーションが複数の物理
ネットワークにわたって通信することができるように複
数のネットワーク・アダプタ・カードを有することもま
ったく可能であることに留意されたい。
第4図に、第3図のワークステーション上の主要なソ
フトウェア構成要素を図示する。このワークステーショ
ンは、通信ソフトウェア120をサポートする、アイ・ビ
ー・エムが市販するOS/2オペレーティング・システムな
どのオペレーティング・システム130を有する。この通
信ソフトウェアによって、第2図のデータ会議ネットワ
ークの異なるノード間でメッセージを交換することがで
きる。このような通信ソフトウェアは当技術分野で周知
であり、詳細は説明しない。通信ソフトウェアの最上部
には、共用編集機能を提供する役割を果たすアプリケー
ション110があり、これについては以下で詳細に述べ
る。最後に、第4図には1組のデバイス・ドライバ140
も図示されており、これはオペレーティング・システム
が外部装置と通信するために使用する。第4図には、マ
ウスからユーザ・コマンドを受信するマウス・デバイス
・ドライバ141、コンピュータ画面上にデータを表示す
ることができるようにする画面デバイス・ドライバ14
2、および通信ネットワークを介してデータを伝送する
ことができるようにする通信デバイス・ドライバ143が
図示されている。この場合も、デバイス・ドライバは当
技術分野で周知であり、詳細は述べない。本発明の理解
には直接関係がないために図示されていない、その他の
デバイス・ドライバを備えることができることも容易に
理解されよう。
第5図に、本発明を実施するために使用することがで
きる、ワークステーションにおける主要構成要素を詳細
に図示し、それらの構成要素間のデータの流れを示す。
編集される実共有データを含む記憶データ・セット260
がある。これは、典型的には、第3図のコンピュータ・
ワークステーションのハード・ディスク36またはRAM24
に記憶されている。記憶データは、(第3図の画面12に
対応する)画面210に周知の方式で表示される。ユーザ
・インタフェース215を備え、それによってユーザは、
一般にはマウス16またはキーボード14あるいはその両方
を使用して、記憶データに対する編集処置を入力するこ
とができる。この場合も、このようなユーザ・インタフ
ェースを設けるための機構と、ユーザ更新を受け入れる
ための機構は周知である。ユーザが実行することができ
る更新には制約事項がない(たとえば、ユーザがまず画
面上の特定のオブジェクトのロックを要求する必要はな
い)ことに留意されたい。
ユーザから更新を受け取ると、記憶データ・セット26
0にただちには適用されずに、送出キュー220に入れられ
る。このキューの動作は、データ会議ネットワークを巡
回する許可トークンによって管理される。したがって、
このノードでは周期的に許可トークンを受信し、通信サ
ブシステム240(第4図の通信ソフトウェア120に対応す
る)から許可ハンドラ230に渡される。許可トークンに
は番号(許可番号と呼ぶ)が含まれている。許可ハンド
ラは許可トークンを受け取ると、現在、送出キューに更
新が入っていないかどうか検査する。入っている場合、
許可ハンドラは許可番号を記録し、次にそれを1単位増
加させる。次に許可トークンは通信サブシステムに戻さ
れ、そこから巡回に戻されてその経路内の次のノードに
転送される。許可ハンドラは次にその許可番号(すなわ
ち増加の前に記録された番号)をキューに渡し、キュー
はその番号を(FIFOキューである)キュー内の最初の更
新に関連づける。これによってその更新に更新レベルが
有効に割り当てられる。更新は次に送出キューから除去
され、更新レベルとともに通信サブシステムに渡された
後、ネットワーク内の他のノードに同報通信される。
次に、更新(その更新レベルを伴う)の受信について
考えてみると、更新は通信サブシステム240に到着し、
着信キュー250に渡される。同報通信機能の実施態様に
よっては、当該ノードでローカルに生成された更新は、
通信サブシステムに入らずに、送出キューから直接、着
信キューに渡すことができることに留意されたい。受信
した更新は更新レベルの順に着信キューに入れられる。
各ノードは、現行更新レベル255の記録を維持する。着
信キューの先頭の更新レベル(すなわち最低の更新レベ
ルを有する更新)が現行更新レベルと比較される。この
比較は更新が到着するたびに行われるが、更新の到着と
は非同期的に(たとえば周期的に)行うこともできる。
キューの先頭にある更新の更新レベルが現行更新レベル
を1単位だけ超える場合は、次に実行する更新を示して
いるはずである。したがってその更新がキューから除去
されて、記憶データ・セット240に適用され、画面210を
それに応じて更新することができる。また、現行更新レ
ベルも1単位増やされる。
したがって、データ会議ネットワークで生成された各
更新には、許可トークンの許可番号から導き出された固
有更新レベルが割り当てられ、ネットワーク内の各ノー
ドは記憶データに更新レベル順に更新を加える。したが
って、ネットワーク全体で更新の正しい順次化が保証さ
れ、それによって各ノードが共有データ・セットの等し
いコピーを維持するようになる。
たとえば、第1図の状況に戻って、この場合もAとB
が図の操作を行うものとする。今度は、どちらが先に許
可トークンを受け取ったかに応じて、両方のノードがこ
の2つの操作を同じ順序で実行することになる。たとえ
ば、Aが先に許可トークンを受け取ったとすると、交換
操作の方が削除操作より低い更新レベルを有することに
なる。削除操作は(ローカルで生成されたため)Bの着
信キューに先に到着する可能性が高いが、その更新レベ
ルとBにおける現行更新レベルとの間に差があるため、
交換操作がBに到着して適切に適用されるまでは、削除
操作は適用されない。その結果、AとBが共にこの2つ
の操作を同じ順序で適用し、同一の記憶データ・セット
(すなわちAについて図示したもの)を得る。
Aの操作が先に行われた場合、Bの操作の効果は、B
の意図した編集操作(Bはおそらく自動車ではなく家を
削除したいと考えている)を実際に反映することができ
ない。しかし、これはデータ・セット間の同期化が失わ
れるよりは重大な問題ではなく、たとえば、現在編集中
のオブジェクトをぼかし表示することによって軽減する
ことができる(Stefik等による前記の論文参照)。
第6図のフロー・チャートにノードにおける更新の送
出処理を示す。これらの更新はこのノードで生成され
(ステップ300)、このノードのFIFOキューである送出
キューに加えられる(310)。このノードでは、更新の
生成とは非同期的に許可トークンを受信し、送出キュー
が検査される(330)。送出キューが空の場合、許可ト
ークンは単にその巡回経路内の次のノードに転送される
(ステップ380)。しかし、送出キュー内に少なくとも
1つの更新が入っている場合は、キューの先頭にある更
新がキューから除去され、許可トークンの現行許可番号
と等しい更新レベルが割り当てられる(ステップ34
0)。次に許可トークンの許可番号が1単位増やされ
(ステップ350)、その許可番号が通信経路内の次のノ
ードに転送される(ステップ360)。最後に、その更新
(それに割り当てられた更新レベルを含む)がデータ会
議ネットワーク内のすべてのノードに同報通信される
(ステップ370)。したがって、トークンの受信ごとに
1つのノードが1つの更新を出力することができる。
第7図に、ノードによる更新の着信処理を示す。(ネ
ットワーク内の他の場所から、またはそのノード自体か
ら)更新を受信し(ステップ410)、着信キューに入れ
られる(ステップ420)。着信キューは更新レベル順に
配列され、各更新はキュー内のその正しい位置に入れら
れる。次に、キュー内の最低(最早)更新レベルが当該
端末の現行更新レベルと比較される(ステップ430)。
1単位の差しかない場合は、最低更新レベルを有する更
新が、記憶データ・セットに適用される次の更新であ
る。それ以外の場合は、次の更新は到着しておらず、こ
の処理は起点に戻って次の更新の到着を待たなければな
らない。1単位の差があるとすれば、着信キューから該
当する更新が除去されて記憶データに適用され(ステッ
プ440)、現行更新レベルが1単位増加される(ステッ
プ450)。
許可番号については1単位ずつ増加されるものとして
説明したが、許可番号は降順にカウントすることや、毎
回2単位ずつ増加することなども当然可能であるものと
理解されよう。必要なのは、各ノードが、更新を行いた
いときに次の許可番号を正しく判断することができるよ
うに、許可番号に適用される順序付けが存在することで
ある。同様に、許可番号によって更新を承認するこの通
りの方式は重要ではない。たとえば、許可番号16の付い
た許可が到着した場合、実施態様によっては、16(着信
許可番号)、または17(送出許可番号)、あるいはそれ
どころか許可番号の他の何らかの関数で更新を承認する
こともできる。この場合も、必要なのは各ノードが、順
序から欠落している更新がないかどうかを検出する能力
を含めて、受信した更新を正しく順序付けまたは順次化
することができることと、ネットワーク全体にわたる一
貫性があることである。
更新を迅速に実行することができるように、許可がネ
ットワークを迅速に巡回することが重要である。許可ト
ークンはきわめて小さいため(典型的には1つの数字に
送信側ノードと受信側ノードの識別子など通常のメッセ
ージ・ヘッダ情報が加わったものに過ぎない)、許可ト
ークンを迅速に巡回させることは容易である。取ること
ができる1つの対策は、ネットワークで送信可能な1つ
の更新の最大サイズを設定することである。したがっ
て、大きな更新は送出キューに入れる前に、より小さな
更新に分割しなければならない。これによって、ネット
ワーク上できわめて大きなメッセージが伝送されている
間に許可トークンに過度の遅延が生ずるのを防ぐことが
できる。
データ会議ネットワーク内のすべてのノードが含まれ
る許可トークンの経路を定義することが必要である。し
たがって、第2図のネットワークの可能な経路は、A−
B−C−B−D−E−Aとなる。ノードがこの経路全体
を認識している必要はないことに留意されたい。必要な
のは、ノードが許可トークンをどのノードに転送しなけ
ればならないかを認識していることである(これは、前
述のノードBの場合のように、許可トークンをどのノー
ドから受け取ったかによって決まることが考えられ
る)。この情報は、第5図で、許可ハンドラの許可経路
構成要素235によって模式図的に示されている。ノード
は、標準の手続き(たとえば隣のノードに通知し、それ
に応じて許可経路情報を更新することができるようにす
るなど)を使用して、ネットワークに加わったり退去し
たりすることができる。
第2図のデータ会議ネットワークの場合の前述の経路
では、Bが1回の巡回で2回許可トークンを獲得し、し
たがって、理論的にはネットワーク内の他のノードの2
倍の頻度で更新を行うことができることになる。所望の
場合には、どの特定のノードも1回の巡回経路で1回し
か更新を行うことができないようにすることによって、
この偏りをなくすことができる。たとえば、ノードB
は、ノードAから許可トークンを受け取ったときには更
新を行うことができるが、ノードCから許可トークンを
受け取ったときには行うことができないようにすること
ができる。
許可番号の初期値(すなわち最初に行う更新に対応す
る)は、所定の番号(たとえばゼロ)に設定されるか、
またはデータ会議の開始時に1つのノードが選択するこ
とができる。ネットワーク内の他のノードは、明示的に
はこの当初の許可番号を知る必要はないが、最初に設定
する現行更新レベルの値を知る必要がある。この許可番
号をネットワーク内のすべてのノードに知られている値
に設定すれば、各ノードは自身の初期現行更新レベルを
その値よりも小さい値に設定することができる。もう一
つ可能な方法は、1つのノードが初期許可番号を選択し
たら、そのノードがネットワーク内の他のノードに適切
な初期現行更新レベルを同報通信することである。
データ会議ネットワークに新しいメンバーが動的に加
わることができるようにする単純な方式は、加入する各
ノードが既存のノードを介して加わることである。既存
ノードは、許可トークンを入手するまで待ってから、許
可番号を既存ノード自身の現行更新レベルと比較する。
次に、既存ノードは加入するノードに記憶データの既存
ノード自身のコピーを送り、その既存ノードの現行更新
レベルと加入するノードに送る許可番号との間の更新レ
ベルを有するすべての介在更新のコピーを求める要求を
同報通信する。もう一つ可能な方法は、既存ノード自身
が新たに加入するノードにすべての介在更新を渡すこと
であろう。
発生する可能性のある1つの問題は、ネットワークに
おける更新の損失に関する問題である。一般に、そのよ
うな損失は最新のネットワークでは発生する可能性が低
いが、ノードが、自身の着信キュー内に多くの更新が入
っているのを検出したが特定の1つの更新を待って停滞
している場合、そのノードはその特定の更新を再送する
ように求めるメッセージを同報通信することができる。
しかし、ネットワークにおいてかなりのメッセージ損失
がある場合は、どのような順次化方法を採用する場合で
も共用編集は勧められないことに留意されたい。
一般には、許可は32ビットの数値であり、すべての増
分についてモジュロ32が実行される。この許可によって
更新を容易に順次化することができる。トークン・リン
グLANを巡回するトークンとは異なり、許可トークンは
データ・フレームに変換することはできない。
上記の手法に加えることが可能な1つの強化策は、ユ
ーザに対して許可を受信する前に何らかのフィードバッ
クを与えるため、1つのノードのユーザが行った更新を
そのノードで一時的に適用する、エコー機能を追加する
ことである。しかし、順序において次の更新ではないと
わかった場合には、その一時的更新を取り消すことがで
きなければならない。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平5−260194(JP,A) 特開 平2−159847(JP,A) 特開 平2−181538(JP,A) 特開 平6−187279(JP,A) 特開 平4−127738(JP,A) 特開 平7−67091(JP,A) 特開 平7−240747(JP,A) 特開 平1−294983(JP,A) 特開 平8−163122(JP,A) 特開 平5−67084(JP,A) 特開 平3−157029(JP,A) 特開 平7−98734(JP,A) 信学論 Vol.J70−B No.3 p316−326 NTT R&D Vol.39 No. 9 p1265−1274 (58)調査した分野(Int.Cl.7,DB名) H04L 12/18 G06F 13/00 G06F 17/24

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】ネットワークが複数のノードを含み、各ノ
    ードが共有データ・セットのコピーを維持し、任意の1
    つのノードから出された共有データ・セットの更新要求
    がネットワーク内の他のすべてのノードに送信され、ネ
    ットワーク内の前記他のすべてのノードによって実行さ
    れる、データ会議ネットワークにおける共有データ・セ
    ットの更新を順次化する方法であって、 すべてのノードをリンクする通信経路を定義するステッ
    プと、 許可トークンがそれに関連する許可番号を有し、前記通
    信経路を回って前記許可トークンを巡回させるステップ
    と、 ノードで出された各更新要求を前記ノードにおける第1
    のキューに入れるステップと、 前記ノードで前記許可トークンを受信し、前記許可番号
    の現行地に応じて前記第1のキュー内の更新要求に更新
    レベルを割り当て、前記許可番号を増加させるステップ
    と、 増加した許可番号を含む許可トークンを通信経路内の次
    のノードに転送するステップと、 更新要求をネットワーク内のすべてのノードに同報通信
    するステップと、 更新要求をネットワーク内のすべてのノードで受信する
    ステップと、 各受信ノードにおいて、 受信した更新要求を第2のキューに入れるステップと、 当該受信ノードにおいて共有データ・セットに適用する
    最後の更新要求の更新レベルを反映する現行更新レベル
    値を維持するステップと、 第2のキュー内の更新要求の更新レベルを現行更新レベ
    ルと照合し、適用する次の更新要求が第2のキュー内に
    あるか否かを判断し、ある場合には前記第2のキューか
    ら当該更新要求を除去し、更新内容に従って共有データ
    ・セットを更新し、現行更新レベルの値を増加させるス
    テップとを 含むことを特徴とする方法。
  2. 【請求項2】会議の開始時に許可番号を初期値に設定す
    るステップをさらに含む、請求項1に記載の方法。
  3. 【請求項3】前記第2のキュー内の前記更新要求をそれ
    らの更新レベルによってソートするステップをさらに含
    む、請求項1または2に記載の方法。
  4. 【請求項4】前記第1のキューに入れる前に、所定の大
    きさを超える更新が複数の更新要求に分割されることを
    特徴とする、請求項1ないし3のいずれか一項に記載の
    方法。
  5. 【請求項5】各ノードが許可トークンを通信経路を回る
    1回の巡回で1回のみ使用することができることを特徴
    とする、請求項1ないし4のいずれか一項に記載の方
    法。
  6. 【請求項6】ネットワークが複数のノードを含み、すべ
    てのノードをリンクする通信経路が定義され、各ノード
    が共有データ・セットのコピーを維持し、任意の1つの
    ノードから出される共有データ・セットの更新要求がネ
    ットワーク内の他のすべてのノードに送信され、ネット
    ワーク内の他のすべてのノードによって実行される、デ
    ータ会議ネットワークにおける共有データ・セットの更
    新を順次化する装置であって、 1つのノードにおける前記装置が、 関連する許可番号を有する前記許可トークンを前記通信
    経路を回って巡回させる手段と、 当該ノードから出される各更新要求を格納する第1のキ
    ューと、 当該ノードで前記許可トークンを受け取り、前記許可番
    号の現行値に応じて前記第1のキュー内の更新要求に更
    新レベルを割り当て、前記許可番号を増加させる手段
    と、 増加した許可番号を含む許可トークンを通信経路内の次
    のノードに転送する手段と、 更新要求をネットワーク内のすべてのノードに同報通信
    する手段と、 ネットワーク内の他のノードからの更新要求を受信する
    手段と、 受信した更新要求を格納する第2のキューと、 当該受信ノードで共有データ・セットに適用される最後
    の更新要求の更新レベルを反映する現行更新レベル値を
    維持する手段と、 第2のキュー内の更新要求の更新レベルを前記現行更新
    レベルと照合し、適用する次の更新要求が第2のキュー
    内にあるか否かを判断し、ある場合には前記第2のキュ
    ーから当該更新要求を除去し、更新内容に従って共有デ
    ータ・セットを更新し、現行更新レベルの値を増加させ
    る手段と を含む装置。
JP51839096A 1994-12-16 1995-08-23 データ会議ネットワーク Expired - Fee Related JP3172192B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9425429.9 1994-12-16
GB9425429A GB2296167A (en) 1994-12-16 1994-12-16 Serialising updates in a data conferencing network
PCT/GB1995/001999 WO1996019057A1 (en) 1994-12-16 1995-08-23 Data conferencing network

Publications (2)

Publication Number Publication Date
JPH10500548A JPH10500548A (ja) 1998-01-13
JP3172192B2 true JP3172192B2 (ja) 2001-06-04

Family

ID=10766060

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51839096A Expired - Fee Related JP3172192B2 (ja) 1994-12-16 1995-08-23 データ会議ネットワーク

Country Status (6)

Country Link
US (1) US5802322A (ja)
EP (1) EP0797879B1 (ja)
JP (1) JP3172192B2 (ja)
DE (1) DE69511110T2 (ja)
GB (1) GB2296167A (ja)
WO (1) WO1996019057A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343313B1 (en) * 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
US6052761A (en) * 1997-01-31 2000-04-18 Hewlett-Packard Company Increment update in an SCI based system
US5966512A (en) * 1997-06-05 1999-10-12 International Business Machines Corporation Groupware save operation
DE19741870A1 (de) * 1997-09-23 1999-03-25 Cit Alcatel Verfahren zum Verteilen von Datenpaketen einer Betriebssoftware
JPH11127188A (ja) 1997-10-20 1999-05-11 Fujitsu Ltd 蓄積交換型電子会議システムにおける情報伝達装置及び方法並びに情報伝達プログラムを記録した媒体
US6981061B1 (en) * 1997-11-14 2005-12-27 Mitsubishi Denki Kabushiki Kaisha Method and system for updating a data system in conjunction with synchronized clock modules
US6243744B1 (en) * 1998-05-26 2001-06-05 Compaq Computer Corporation Computer network cluster generation indicator
US6859821B1 (en) * 1999-07-19 2005-02-22 Groove Networks, Inc. Method and apparatus for prioritizing data change requests and maintaining data consistency in a distributed computer system equipped for activity-based collaboration
US6499037B1 (en) * 1999-09-09 2002-12-24 Lucent Technologies Inc. System and method for serializing updates to ancestor sites in a distributed database
JP3793201B2 (ja) * 2004-01-28 2006-07-05 任天堂株式会社 ゲーム装置およびゲームプログラム
US20060023969A1 (en) * 2004-04-30 2006-02-02 Lara Eyal D Collaboration and multimedia authoring
US20070124370A1 (en) * 2005-11-29 2007-05-31 Microsoft Corporation Interactive table based platform to facilitate collaborative activities
US20070156955A1 (en) * 2005-12-30 2007-07-05 Royer Robert J Jr Method and apparatus for queuing disk drive access requests
AU2016238517B2 (en) * 2015-03-20 2020-05-14 D&B Business Information Solutions Aggregating high volumes of temporal data from multiple overlapping sources

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2120055B (en) * 1982-04-28 1986-01-22 Int Computers Ltd Data communication system
US4726018A (en) * 1986-08-25 1988-02-16 International Business Machines Corporation Method of providing priority access to a transmission communication ring
US4766530A (en) * 1986-11-24 1988-08-23 Westinghouse Electric Corp. Token passing scheme for a predetermined configuration local area network
US5001472A (en) * 1988-02-11 1991-03-19 Datapoint Corporation Uneven token distribution technique for token based local area network
JP2648192B2 (ja) * 1988-12-14 1997-08-27 日本電信電話株式会社 分散型多地点間データ端末
JPH02181538A (ja) * 1989-01-05 1990-07-16 Nippon Telegr & Teleph Corp <Ntt> 多地点間通信制御方式
US5206934A (en) * 1989-08-15 1993-04-27 Group Technologies, Inc. Method and apparatus for interactive computer conferencing
JP2791146B2 (ja) * 1989-11-15 1998-08-27 株式会社日立製作所 データ処理装置
US5274637A (en) * 1989-12-28 1993-12-28 Yamaha Corporation Token-ring-type local area network
JP2923018B2 (ja) * 1990-09-19 1999-07-26 株式会社日立製作所 ネットワークシステムと同報通信応答制御方法
JP3107893B2 (ja) * 1992-03-11 2000-11-13 株式会社リコー 遠隔会議システム
JPH06187279A (ja) * 1992-12-22 1994-07-08 Matsushita Electric Ind Co Ltd 入力装置制御装置
US5490145A (en) * 1993-05-25 1996-02-06 Matsushita Electric Industrial Company, Ltd. Communication system for a ring-type network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NTT R&D Vol.39 No.9 p1265−1274
信学論 Vol.J70−B No.3 p316−326

Also Published As

Publication number Publication date
WO1996019057A1 (en) 1996-06-20
EP0797879A1 (en) 1997-10-01
DE69511110T2 (de) 2000-04-20
EP0797879B1 (en) 1999-07-28
US5802322A (en) 1998-09-01
JPH10500548A (ja) 1998-01-13
DE69511110D1 (de) 1999-09-02
GB9425429D0 (en) 1995-02-15
GB2296167A (en) 1996-06-19

Similar Documents

Publication Publication Date Title
JP3172192B2 (ja) データ会議ネットワーク
US5805846A (en) System and method for dynamically sharing an application program among a plurality of conference devices while maintaining state
US5452299A (en) Optimized transfer of large object data blocks in a teleconferencing system
US7519664B2 (en) Presentation supporting device and related programs
AU655684B2 (en) Semaphore mechanism for a data processing system
US5195086A (en) Multiple call control method in a multimedia conferencing system
US6888831B1 (en) Distributed resource reservation system for establishing a path through a multi-dimensional computer network to support isochronous data
US7257090B2 (en) Multi-site teleconferencing system
JPH08185380A (ja) 並列計算機
JPH10512405A (ja) 通信パケットを使用して階層シリアル・バス・アセンブリを介してデータ、状態、コマンドを交換するm&a
US5898691A (en) Method and apparatus for congestion distributed adaptive routing
US5748618A (en) Multilevel arbitration in a data conference
Dommel et al. Efficacy of floor control protocols in distributed multimedia collaboration
US5729684A (en) Method and apparatus for heterogeneous multimedia conferencing using multipoint references
US20100205612A1 (en) Method and apparatus for processing protocol messages for multiple protocol instances
JP2001516083A (ja) マルチポイントパブリッシュ/サブスクライブ通信における証明付メッセージの配送およびキュー操作
USRE38457E1 (en) Deferred sychronization of distributed objects
EP1317123B1 (en) A multi-site teleconferencing system
JPH096695A (ja) 情報処理システムの通信方法およびプログラム間通信方法
JPH08251160A (ja) データ送信システム
JP3441048B2 (ja) ディジタル音声分配方法及びその装置
JP2601949B2 (ja) 通信会議システム
JP2822426B2 (ja) 企業情報システム
JPH05165797A (ja) プロセッサ装置及びマルチプロセッサ装置
JP2949672B2 (ja) グループ通信システムのグループ接続制御方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees