JP2002512483A - 格付けを利用して回復ノードを選択する方法と装置 - Google Patents

格付けを利用して回復ノードを選択する方法と装置

Info

Publication number
JP2002512483A
JP2002512483A JP2000545283A JP2000545283A JP2002512483A JP 2002512483 A JP2002512483 A JP 2002512483A JP 2000545283 A JP2000545283 A JP 2000545283A JP 2000545283 A JP2000545283 A JP 2000545283A JP 2002512483 A JP2002512483 A JP 2002512483A
Authority
JP
Japan
Prior art keywords
potential
head
rating value
potential head
rating
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.)
Pending
Application number
JP2000545283A
Other languages
English (en)
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JP2002512483A publication Critical patent/JP2002512483A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/46Cluster building
    • 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/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • 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/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

(57)【要約】 本発明に対応した実施形態は、マルチキャスト回復ツリーを形成する方法と装置を含む。この方法はデータプロセッサによって実施され、マルチキャストグループ内の複数の潜在的ヘッドのそれぞれについて、潜在的ヘッドに対応付けられた格付け値を判定するステップと、潜在的ヘッドによって複数の潜在的受信側に対して通知を行うステップと、潜在的受信側によって潜在的ヘッドの格付け値に優先順位を付けるステップと、潜在的受信側によって最高格付け値を有する潜在的ヘッドに結合させ、それによって潜在的受信側をメンバーとし当該潜在的ヘッドをヘッドとする回復グループを形成するステップと、を備えることもできる。ヘッドが送信側であってもよい。複数のヘッドが存在することもできる。格付け値は、「可能」、「不可能」、「積極的」、および「消極的」を含むこともできる。潜在的ヘッドの格付け値は、静的または動的構成に基づいて判断することもできる。格付け値は、メモリや利用可能なプロセッサ資源などのシステムの資源レベルの限界に基づいて動的に判断することもできる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は概してネットワーク通信に関するものである。さらに詳しく述べると
、本発明はマルチキャスト回復用ダイナミックツリーの形成で回復ノードを選択
するための格付けを使用する方法と装置である。
【0002】
【従来の技術】
インターネットプロトコル(IP)マルチキャスティングはネットワーク内の
大きな受信側グループにデータを送信するのに有用である。マルチキャストとは
ネットワーク通信の一形式であり、それにより送信ノードまたは送信側が信号メ
ッセージを複数の宛先に同時に送る。複数の宛先は受信側またはメッセージの受
信側である。その他のネットワーク通信方法には同報通信があり、それにより送
信側は可能なすべての受信側へ送信する。また、ユニキャストもあり、それによ
り送信側は特定の1受信側にだけ送信する。マルチキャストの詳細については、
D.Comer,TCP/IPによるインターネットワーキング、Prenti
ce Hall,1991,第17章に述べられているが、本発明と矛盾しない
という点で、ここには参照の形で組み込まれている。
【0003】 マルチキャスト送信側ノードはマルチキャストアドレスにメッセージを送信す
る。送信側は同一マルチキャストアドレスでメッセージに聞き耳をたてているす
べての受信側にメッセージを送信する。特定のマルチキャストアドレスでメッセ
ージを待機している一組の受信側は送信側と対応付けられており、受信側がグル
ープメンバーであるマルチキャストグループを形成する。
【0004】
【発明が解決しようとする課題】
マルチキャストグループに加入する受信側の数が多くなるにつれ、送信側はオ
ーバーワークになり、グループメンバー(受信側)からのマルチキャスト回復に
対する受領および要求の通知を処理する必要性が生じるため、処理速度が低下す
る。マルチキャスト回復とは、送信側が受信側からの再送信要求(「回復」要求
)に応じてマルチキャストメッセージを再送信する処理である。ネットワーク通
信量の増大は、ネットワーキング装置のエラーおよび過負荷によりデータメッセ
ージの損失を引き起こす。
【0005】
【課題を解決するための手段】
本発明に対応する実施態様では、送信側がツリーのルートである複数の受信側
を含む階層ツリー構造を送信側が設定する。ツリーのブランチは回復グループで
ある。回復グループはマルチキャストグループのサブセットである。送信側は第
一回復グループのヘッドである。それぞれの回復グループは、1つのヘッドと最
低1つの受信側を有する。
【0006】 各受信側はヘッドの役割を実行する能力に対応する格付け値を有する。送信側
を除き、ヘッドのそれぞれは、ヘッドの役割を実行するのに十分な格付け値を有
する受信側である。この格付け値が十分高ければ、受信側はヘッドになり、ヘッ
ドの格付け値を含むマルチキャスト制御メッセージを送信して新しいメンバーを
求める通知を開始する。
【0007】 受信側は利用可能なヘッドから通知メッセージを収集する(例えば、近くのヘ
ッド等)。受信側はこの通知の格付け値を使用してヘッドを格付けし、次に格付
けに基づいて最も適切なヘッドを選択する。次に受信側は選択したヘッドに加入
要求メッセージを送信することにより通知メッセージに応答する。ヘッドが受信
側の会員資格要求を拒絶した場合は、受信側は加入要求を次に最適なヘッド、す
なわち次に最も格付けの高いヘッドへ送信する。受信側の一部がヘッドになり、
その他の受信側がグループに加入することでそのヘッドと対応付けられると、階
層ツリー構造が形成される。
【0008】 受信側の格付け値は少なくとも3値の範囲内になる。(1)ヘッドとしての任
務を果たすことが「不可能」、(2)ヘッドとして役割を果たすことが「可能」
、(3)ヘッドとして「積極的」役割を果たす。ヘッドとして「積極的」に役割
を果たすとは受信側が非常に良いヘッド候補であり、役割を果たすことが「可能
」なヘッドより高い位置に格付けされることを表す。本発明に対応する実施態様
では、値の範囲は0から10までのポイント範囲で表すことができ、ここで0は
ヘッドとしての役割を果たすことが「不可能」なことを表し、1〜9まではヘッ
ドとしての役割を果たすことが「可能」なことを表し、また、10はヘッドとし
て「積極的」に役割を果たすことを表す。複数のヘッドレベルを作成して格付け
値を追加することで、格付けの柔軟性をさらに拡大することができる。たとえば
、「消極的」値を追加して受信側が役割を果たすことは「可能」だが、「積極的
」に役割を果たす受信側よりリソース容量が多くないことを表す。
【0009】 送信側はツリー内のヘッドにマルチキャスト回復を委任し、送信側がマルチキ
ャスト回復をマルチキャストグループの全受信側のサブセットにだけ与えるよう
にする。これで送信側の作業負荷が軽減し、送信側がメッセージをより大きなマ
ルチキャストグループへ送信することができる。送信側は、メッセージをマルチ
キャストグループアドレスのすべての受信側に、予め設定または動的に決定され
たデータ転送速度で送信する。グループに加入し、ヘッドと対応付けられた受信
側は、それらに対応付けられたヘッドからのマルチキャストメッセージの再送信
を要求する。
【0010】 本発明に対応する実施態様によれば、データプロセッサが実行するマルチキャ
スト回復ツリーを形成する方法および装置には、マルチキャストグループ内の複
数の潜在的ヘッドのそれぞれについて潜在的ヘッドに対応付けられた格付け値を
決定するステップを含む。潜在的ヘッドは、格付け値を含む通知を送信する。複
数の潜在的受信側は、この通知を受信する。潜在的受信側は、潜在的ヘッドから
得た格付け値を優先して最高格付け値を有するヘッドに結びつけ、これにより潜
在的受信側が受信側であり、潜在的なヘッドがヘッドであるグループを形成する
。ヘッドはマルチキャストメッセージの送信側であってもよい。ヘッドは複数あ
ってもよい。ヘッドの任務を実行することが「可能」、「不可能」、「積極的」
および「消極的」を含め、考えられる格付け値には2つまたはそれ以上あってよ
い。
【0011】 本発明に対応する実施態様によれば、データプロセッサが実行するマルチキャ
スト回復ツリーを形成する方法および装置は、複数の潜在的ヘッドのそれぞれに
ついて潜在的ヘッドに対応付けられた格付け値を決定するステップと、潜在的ヘ
ッドにより複数の潜在的受信側に通知するステップと、潜在的受信側により最高
格付け値を有する潜在的ヘッドに結合されるステップと、それによって潜在的受
信側がメンバーであり、最高格付けの潜在的ヘッドがヘッドである回復グループ
を形成するステップを備える。 本発明に対応する実施態様は、コンピュータプログラムプロダクトとして、ま
たは搬送波で具体的に表現されているコンピュータデータ信号として実行されて
もよい。 本発明に対応する別の実施態様によれば、データプロセッサが実行するマルチ
キャスト回復ツリーを形成する方法および装置は、それぞれが格付け値を有する
複数の通知を潜在的ヘッドから受信するステップと、潜在的ヘッドから得られた
格付け値に優先順位を付けるステップと、最高格付け値を有する潜在的ヘッドに
結合されるステップと、それによって最高格付けのヘッドがヘッドであるグルー
プを形成するステップを備える。 本発明に対応する実施態様は、コンピュータ
プログラムプロダクトとして、または搬送波に具体的に表されているコンピュー
タデータ信号として実行されてもよい。 本発明に対応する実施態様によれば、潜在的ヘッドになるようにプログラムさ
れているデータプロセッサが実行し、マルチキャスト回復ツリーを形成する方法
および装置は、潜在的ヘッドに対応付けられた格付け値を決定するステップと、
格付け値によって複数の潜在的受信側に通知するステップと、加入メッセージを
潜在的受信側から受信するステップと、潜在的受信側を規定限界に従ってグルー
プに追加するステップを備える。 本発明に対応する実施態様はコンピュータプログラムプロダクトとして、また
は搬送波に具体的に表現されているコンピュータデータ信号として実行されても
よい。
【0012】 発明の利点は、一部がこれ以降の説明に述べられ、また一部は当業者によって
理解され、または本発明を実施することにより学習することができる。本発明の
利点は、添付の特許請求の範囲および均等物において特に指摘されている要素お
よびその組み合わせによって認識および達成できる。
【0013】
【発明の実施の形態】
ここでは本発明に対応する実施態様を詳細に参照し、その例を添付の図面に図
示する。可能な場合には、同一部分または類似部分が参照できるように、同一参
照番号が図面全体に亘って使用される。
【0014】 図1は本発明に照応する実施態様に基づいたネットワーク100を表す。ネッ
トワーク100、送信側ノード102および複数の受信側118〜154を有す
る。受信側118〜154のそれぞれは、送信側102をマルチキャストグルー
プの受信側118〜154のそれぞれに接続する矢印116が示すマルチキャス
トメッセージパスに表されるように、送信側ノードのマルチキャストグループの
一部である。受信側118〜154は5つのサブグループ106〜114に編成
される。このサブグループは回復グループと呼ばれる。それぞれの回復グループ
はヘッドおよび少なくとも1つの受信側を含む。
【0015】 次の段落では、図1に示されるマルチキャスト回復ツリーに含まれている回復
グループについて述べる。すべてのグループメンバーおよびヘッドの大半(送信
側を除く)が受信側ノードであることに留意されたい。一般に、ヘッドは送信側
ノード102、受信側ノード120、122、124、132および140であ
る。受信側のみ(すなわち、ヘッドではなく)であるノードは、受信側118、
126、128、130、134、136、138、142、144、146、
148、150、152および154である。
【0016】 グループ104は、ヘッド102(これも送信側)およびヘッド102に対応
付けられているグループメンバー118、120、122および124を含む。
グループメンバー120、122および124は、次のレベルの回復グループ1
06、108および110のヘッドとして指定されている。しかしながら、グル
ープメンバー118は、回復ヘッドではなく、従ってそれに対応付けられている
グループを持たない。
【0017】 グループ106は、ヘッド120およびグループメンバー126、128およ
び130を含む。ヘッドがグループメンバーであってもよい。たとえば、ヘッド
120は、グループ106のヘッドであるが、グループ104のメンバーでもあ
る。
【0018】 グループ108は、ヘッド122およびグループメンバー132、134およ
び136を有する。グループメンバー132は、グループ112のヘッドでもあ
る。グループ112は、ヘッド132および受信側メンバー144、146およ
び148を含む。
【0019】 グループ110は、ヘッド124およびメンバー138、140および142
を含む。ヘッド124もグループ104のメンバーであり、グループメンバー1
40はグループ114のヘッドである。グループ114は、ヘッド140および
メンバー150、152および154を含む。
【0020】 送信側ノード102は、マルチキャストメッセージを受信側118、154に
通じるマルチキャストメッセージパス116に沿ってマルチキャスト回復ツリー
の受信側へ送信する。送信側102はメッセージをキャッシュ176に保管する
が、その期間はグループメンバー、すなわち受信側118、120、122およ
び124のそれぞれからデータパケットの受信応答があるまでである。受信応答
は、それぞれ矢印156、157、158および159に示されているように、
グループメンバー118、120、122および124のそれぞれから送信側1
02へのユニキャストメッセージであってもよい。
【0021】 同様に、回復ツリーの他のヘッドのそれぞれは、それぞれのグループメンバー
の受信応答を受信するまでマルチキャストメッセージをデータキャッシュに保管
する。ヘッド120、122、124、132および140はメッセージを、そ
れぞれのヘッドに対応付けられたデータキャッシュ178、180、182、1
84および186のそれぞれに保管する。
【0022】 マルチキャストデータメッセージが送信された後、それぞれの回復グループの
ヘッドはそのグループメンバーのそれぞれから受信応答を待つ。グループ106
のヘッド120は、受信側126からの矢印160、受信側128からの矢印1
61および受信側130からの矢印162で示されるように、そのメンバーのそ
れぞれから受信応答を待つ。グループ108のヘッド122は、それぞれ受信側
132、134および136からの矢印163、164および165で示される
ように、受信応答を待つ。グループ110のヘッド124は、それぞれ受信側1
38、140および142からの矢印166、167および168で示されるよ
うに、受信応答を待つ。グループ114のヘッド140は、それぞれ受信側15
0、152および154からの矢印172、173および174に示されるよう
に、受信応答を待つ。グループ112のヘッド132は、それぞれ受信側144
、146および148からの矢印169、170および171で示されるように
、受信応答を待つ。
【0023】 マルチキャスト回復はグループ112に表されており、その中でヘッド132
は少なくともそのグループメンバー144、146または148の1つから回復
要求を受信している。これが発生すると、ヘッド132はキャッシュ184に保
管されているマルチキャストメッセージを破線矢印で示されているマルチキャス
ト回復パス188に沿ってそのグループメンバーのそれぞれに再送信する。
【0024】 図2は、マルチキャストメッセージを処理するデータプロセシングシステムが
実行するステップ202で始まるステップを表したフローチャート200である
。ステップ204でマルチキャスト回復ツリーが形成された後、ステップ206
で送信側102はマルチキャストデータメッセージを送信する。マルチキャスト
ツリー形成の詳細については、図3〜図6の考察に示される。ステップ208で
は、送信側102およびヘッド120、122、124、132および140が
、マルチキャストデータメッセージをそれぞれのキャッシュ176、178、1
80、182、184、186に保管する。
【0025】 ステップ210では、ヘッド(ヘッドとしても実行する送信側を含む)はイベ
ントを待つ。これらのイベントは、応答イベント212および回復要求イベント
218を含み、そのグループメンバーに応答してそれぞれのヘッドによって処理
される。他にイベントが発生しない場合、ヘッドは次のイベントを受信するまで
休止状態で待つ。応答イベント212はマルチキャストデータメッセージを受信
したヘッドのグループメンバーのすべてからの通知である。応答イベント212
の受信後、ステップ216でヘッドはキャッシュメッセージを解放する。ヘッド
は、たとえばキャッシュが満たされた場合など他の状況でキャッシュメッセージ
を解放してもよい。
【0026】 回復要求218は、マルチキャストデータメッセージを再送信するために、ヘ
ッドのグループメンバーの少なくとも1つによってヘッドに送信される要求であ
る。ヘッドが回復要求218をそのグループメンバーの1つから受信すると、ス
テップ220でヘッドはマルチキャスト回復を実行する。すなわち、ヘッドはマ
ルチキャストデータメッセージ(キャッシュに保管されているコピーからの)を
グループへ再送信する。マルチキャスト回復の一例は、図1の破線矢印188で
示される。ヘッドはマルチキャスト回復を要求ベースで実行する。ステップ22
0でマルチキャストメッセージを再送信後、ヘッドはステップ210へ戻り、別
のイベントを待つ。
【0027】 図3は、本発明に対応する実施態様により、潜在的ヘッドになるようにプルグ
ラムされたデータプロセシングシステムによって実行されるステップ302から
始まるステップを示すフローチャート300である。
【0028】 ステップ303では、潜在的にヘッドになり得る受信側が格付け値を決定する
。(図5参照)。ステップ304で、潜在的ヘッドは格付け値を利用してそれが
ヘッドとしての役割を果たし得るかどうかを判定する。格付け値は、ビット、フ
ラグ、または受信側がヘッドの役割を実行する資格があるかどうかを表す何らか
の適切な値であってもよい。格付け値は、静的にまたは動的に構成されてもよい
。格付け値が十分に高ければ、たとえばヘッドであるべき「消極的」、「可能」
または「積極的」なレベルに相当していれば、ステップ309で受信側はそのヘ
ッド状態を「真(TRUE)」に設定し、ヘッドとしての役割を果たし始める。
次に、ステップ310でヘッドはイベントを待つ。そうでなく、受信側がヘッド
としての役割を果たせない場合は、ステップ306で受信側は単に通常の受信側
の役割を果たし、受信側の処理はステップ308で停止する。
【0029】 受信側がヘッドとして実行する能力があるとして選択されると、ステップ31
0で送信通知イベント312または受信参加メッセージイベント315などのイ
ベントを待つ。通知は潜在的グループメンバーにノードがヘッドとして役割を果
たすことができることを知らせる制御メッセージである。潜在的グループメンバ
ーとしても知られ、参加するグループを探している受信側は、通知メッセージを
収集し、その中に含まれている格付け情報を利用してヘッドを選択する。ヘッド
選択基準については、図4〜6の考察に詳しく述べられている。通知メッセージ
の詳細は、図9の考察で以下に説明される。送信通知イベント312が発生する
と、ステップ316でヘッドは格付け値に含まれる通知メッセージを送信し、そ
の後ステップ310でヘッドは引き続き別のイベントを待つ。
【0030】 グループへの参加を希望し、通知を待っている受信側がたまたまあるとすれば
、ヘッドは最終的に参加メッセージイベント315を受信側から受信する。参加
メッセージは、潜在的グループメンバー(受信側)からヘッドへの要求である。
受信側は、受信側が収集した通知リストによって表示されるヘッドから最高格付
けヘッドを選択する。最高格付けヘッドの選択後、受信側はそのヘッドのグルー
プに参加するための要求を送信する。参加メッセージは、図4の考察に詳しく説
明されている。ここでは、受信側をヘッドの回復グループに結合する処理を開始
する。ヘッドが参加メッセージ要求315を受信すると、ステップ318で、ヘ
ッドはメンバー限界に到達したかどうかの確認チェックを行う。メンバー限界は
、ヘッドが収容できるグループメンバー数の何らかの適切な限界であってもよい
。メンバー限界は、メモリまたは計算パワーなど利用できるシステム資源に影響
されるのが普通であるが、適切な判定基準に関係していてもよい。メンバー限界
の代表的な値は、本発明に対応して実行されるシステムリソースに限界があるた
め、各グループヘッドにつき32メンバーである。
【0031】 メンバー限界に達した場合は、ヘッドは受信側をグループには受け入れず、ス
テップ314でレシーバに拒絶メッセージを送信し、ステップ310で別のイベ
ントを待ち続ける。メンバー限界に達していない場合は、ステップ320で、ヘ
ッドは新メンバーをグループに追加し、ステップ322でメンバー受諾メッセー
ジを新メンバーに送信し、要求受信側にヘッドの回復グループのメンバーになっ
たことを知らせる。これで結合処理は完了する。ここで、受信側はヘッドのグル
ープのメンバーであり、回復要求をヘッドに送信してもよい。この受信側はヘッ
ドになってサブグループを形成し、それによってブランチをツリーに追加しても
よい。
【0032】 図4は、本発明に対応した実施態様にしたがって、潜在的グループメンバー(
受信側)になるようにプログラムされたデータプロセシングシステムによって実
行されるステップ402から始まるステップを表すフローチャート400である
。ステップ404では、受信側は最初いかなるグループのメンバーでもないこと
を示す状態を設定し、次にステップ406でイベントを待つ。
【0033】 発生するイベントは、タイムアウトイベント412、受信済み通知イベント4
08、受信済みメンバー拒絶イベント430および受信済みメンバー受諾メッセ
ージイベント424を含む。受信済み通知イベント408が発生すると、潜在的
グループメンバーは通知をステップ410の受信済み通知リストに追加し、ステ
ップ406に戻って別のイベントを待つ。
【0034】 潜在的グループメンバーは、タイムアウトイベント412が発生するまで通知
の受信を続ける。本発明に対応した実施態様における通知を収集するタイムアウ
ト値は、規定のヘッド通知間隔の3倍に設定してもよい。ヘッド通知間隔は凡そ
3秒に設定してもよい。他の値として、特定の応用に適切な通知収集間隔および
ヘッド通知間隔を使用してもよい。ステップ414で、潜在的グループメンバー
は最高格付けヘッドをリストから選択する。最高格付けにヘッドが1つしかない
場合は、受信側は1つのヘッドだけを選択する。ただし、複数のヘッドが最高格
付けを有する場合は、同一格付けを有するヘッド間を仲裁するためにその全てを
選択する。仲裁処理については、ステップ414および415の考察で以下に説
明される。ステップ410で生成されたリストの通知は、通知を行っているヘッ
ドの格付け値を含む。この格付け値は、アレイまたはリストなどのようにデータ
構造中に保管してもよい。
【0035】 ステップ414で最高格付けヘッドを選択した後、ステップ415で潜在的グ
ループメンバーは同一格付けを有する複数のヘッドがあるかどうかをチェックす
る。もし無い場合は、タイマーが予め設定された値で再ロードされるステップ4
22に処理が継続する。予め設定された値は通知間隔を表し、受信側がその処理
前に通知を待つ時間の長さに相当する。このタイマーも、以下に説明されるステ
ップ432に関連して検討される。同一格付けを有する複数のヘッドがある場合
、ステップ416で潜在的グループメンバーは最も近いTTL値を有する最高格
付けヘッドを選択する。最も近似した値を有するヘッドは、到達する最少ホップ
数を要求するヘッドであり、部分的には潜在的グループメンバーに対して物理的
近似性に少なくとも基づく。ステップ416はタイブレーク方式の1例であり、
これを指定してもよい。潜在的グループメンバーはどのヘッドが最高格付けを有
するかを判定し、ステップ420で参加要求を最高格付けヘッドに送信する。次
に、ステップ422でタイマーが予め設定された値で再ロードされた後、潜在的
グループメンバーがステップ406に戻って別のイベントを待つ。
【0036】 参加要求420に応じ、潜在的グループメンバーを拒絶し、受信済みメンバー
シップ拒絶イベント430を発生させてもよい。拒絶後、ステップ434で潜在
的グループメンバーは拒絶メッセージを送信したヘッドをヘッドリストから削除
し、次に最高格付けメンバーをリストから選択するステップ414に進み、上記
のように処理を継続する。潜在的グループメンバーが、メンバー受諾メッセージ
イベント424を受信すると、ステップ426で潜在的グループメンバーはその
状態を獲得メンバーシップに変更し、ステップ432で通知間隔の待ちに対応す
るタイマーを停止させ、ステップ428でそのヘッド状態および格付けを判定す
る。このタイマーも上記ステップ422に関連して使用される。潜在的グループ
メンバーは、次にステップ406へ戻り、別のイベントを待つ。
【0037】 図5は、本発明に対応した実施態様にしたがって、受信側の格付け値を判定す
るためにヘッドまたは潜在的ヘッドとしてプログラムされたデータプロセッシン
グシステムが実行するステップ502から始まるステップを表したフローチャー
ト500である。ステップ504では、受信側はその格付けが事前に構成された
ものであるかどうかを判定する。受信側がヘッドであるように静的に構成されて
もよい。静的に構成されたヘッドは必ずヘッドになるように、または絶対ヘッド
にならないように設定してもよい。たとえば、受信側の資源をネットワークの他
のユーザとの共有を望まず、受信側を回復要求のサービスに使用されたくない特
定のノードを有するユーザは、受信側をヘッドとして「不可能」の格付け値に静
的に設定することにより、自己のシステムが絶対ヘッドとして使われないように
指定してもよい。もし受信側がヘッドであるように静的に構成されると、その格
付け値はヘッドとしての役割を果たすことができる「可能」に設定されて、ステ
ップ508に戻る。次に、フローチャート300のステップ304で、受信側は
潜在的ヘッドとして処理される。
【0038】 受信側がヘッドになるように静的に構成されていない場合は、ヘッドになるよ
うに動的に構成することができる。受信側がヘッドになるように動的に構成され
ているかどうかを判定する処理は、受信側がその格付け値を計算するステップ5
06で実行される。ステップ506は、図6のフローチャート600によって示
されているような方法によって実行してもよい。受信側がその格付け値を計算し
た後、ステップ508でその値は戻される。格付け値はフローチャート300の
ステップ304に戻される。
【0039】 図6は、本発明に対応した実施態様にしたがって、受信側の格付け値を判定する
ヘッドまたは潜在的ヘッドとしてプログラムされているデータプロセッシングシ
ステムによって実行されるステップ602から始まるステップを表すフローチャ
ート600である。まず、ヘッドまたは潜在的ヘッドは、利用可能なメモリ容量
をチェックする。ステップ604では、ヘッドまたは潜在的ヘッドは、利用可能
メモリ容量が0.5メガバイト以下であるかどうかをチェックする。もしそうで
あれば、ステップ606で、ヘッドまたは潜在的ヘッドは格付け値を1に設定す
る。もしそうでなければ、ヘッドまたは潜在的ヘッドはステップ608へ進み、
利用可能なメモリ容量が5.0メガバイト以下であるかどうかをチェックする。
もしそうであれば、ステップ610でヘッドまたは潜在的ヘッドは、格付け値を
2と設定する。もしそうでなければ、ヘッドまたは潜在的ヘッドはステップ61
2へ進み、利用可能なメモリ容量が10メガバイト以上であるかどうかをチェッ
クする。もしそうであれば、ステップ614で、ヘッドまたは潜在的ヘッドは格
付け値を5に設定する。そうでなければ、ステップ616で、ヘッドまたは潜在
的ヘッドは格付け値を4に設定する。
【0040】 ステップ606、610、614および616のいずれかを実行した後、ヘッ
ドまたは潜在的ヘッドは高速プロセッサを持っているかどうかをチェックするス
テップ618を開始し、利用可能な処理電力をチェックする。もしそうであれば
、ヘッドまたは潜在的ヘッドはステップ626の格付け値を戻し、図3に示され
るフローチャート300のステップ304で処理を続行する。
【0041】 ステップ620で現行格付け値に3を加えた後、ヘッドまたは潜在的ヘッドは
、ステップ622で、50%以上のプロセッサが利用可能かどうかをチェックす
る。利用可能なプロセッサパワーのレベルは使用されているプロセッサの種類、
プロセッサが実行するタスク数、およびタスクの数値計算の程度を含めた要因に
影響されるが、それに限定されるわけではない。利用可能なプロセッサパワーの
レベルについては、当業者に知られている適切な方法で判定してもよい。プロセ
ッサの50%以上が利用可能であれば、ヘッドまたは潜在的ヘッドは2を現行格
付け値に追加し、上述したようにステップ626で格付け値を戻す。プロセッサ
の50%以上が利用できない場合は、上述したようにステップ626で、ヘッド
または潜在的ヘッドは現行格付け値を単に戻す。格付け値の判定は、利用可能な
メモリおよび処理電力のチェックに限定するものではない。本発明の実施態様に
したがって、その他のシステム資源をチェックし、たとえばネットワーク帯域幅
、利用可能なディスク容量または他の記憶域、および入出力負荷などの格付け値
の判定に利用できる。
【0042】 図7は、プロセッサ702を含むコンピュータシステム700、ヘッドの機能
を実行するようにプログラムされたヘッドソフトウェア718を含む記憶域70
4、および受信側の機能を実行するようにプログラムされた受信側ソフトウェア
716、格付け値722、キャッシュ717、およびヘッドのリスト724を表
す。コンピュータシステム700も、ネットワーク接続720、入力デバイス7
08、出力デバイス710、コンピュータ可読媒体712およびコンピュータ可
読入力デバイス714を含む。ネットワーク100内のノードのそれぞれは、ネ
ットワーク接続720を介してネットワーク内の他のノードに接続されるコンピ
ュータシステム700などのコンピュータシステムであってもよい。同一ノード
は受信側でもヘッドにもなり得るため、ヘッドソフトウェア718および受信側
ソフトウェア716は、いずれも記憶域704内のシステム700の一部として
表される。
【0043】 当業者であるならば、データプロセッシングシステム700も入出力回線、キ
ーボード、マウス、音声入力デバイスなどの入力デバイス、表示端末などの表示
デバイス等々の追加情報を含んでもよいことが理解できる。入力デバイスはフロ
ッピーディスクドライブ、CD−ROM読取装置、またはDVD読取装置であっ
て、フロッピーディスク、CD−ROMまたはDVDドライブなどコンピュータ
可読媒体に保存されているコンピュータ命令を読み取るものであってもよい。デ
ータプロセッシングシステム700も、図示されていないアプリケーションプロ
グラム、オペレーティングシステム、データなどを含んでもよい。データプロセ
ッシングシステム700もディスクドライブ、キーボード、表示デバイス、ネッ
トワーク接続、追加メモリ、追加CPU、LAN、入出力回線など表示されてい
ない数々の要素13を含んでもよいことが理解できる。
【0044】 次の考察では、方法のステップおよび優先的に考察されたフローチャートは、
記憶域704に保管されている命令を実行する適切なプロセッサ702によって
実行されることが理解できる。本発明は、特定の遂行またはプログラミング技術
に限定するものではなく、また、本発明は、ここに述べられている機能を実行す
るための適切な方法を利用して遂行してもよいことも理解できる。本発明は、特
定のプログラミング言語またはオペレーティングシステムに限定するものではな
い。
【0045】 記憶域704の命令は、コンピュータ読み出し可能媒体712から読み取って
もよい。記憶域704に含まれている命令を順序どおりに実行することによって
、プロセッサ702はここに述べられている処理ステップを実行する。選択的な
実施態様では、ハードワイヤー回路をソフトウェア命令の代わりにまたはそれと
組み合わせて使用し、本発明を構成してもよい。このように、本発明の実施態様
は、ハードウェア回路およびソフトウェアの特定の組み合わせに限定されるもの
ではない。
【0046】 ここで使用した「コンピュータ読み出し可能媒体」という用語は、プロセッサ
に命令して実行させるのに関与するすべての媒体を指す。そのような媒体は、不
揮発性媒体、揮発性媒体、および伝送媒体を含む形態をとってもよいが、それに
限定するものではない。たとえば、不揮発性媒体には、記憶デバイスなどの光デ
ィスクまたは磁気ディスクが含まれる。揮発性媒体には、動的メモリが含まれる
。伝送媒体には、コンピュータ内のバスからなるワイヤを含め、同軸ケーブル、
銅線および光ファイバーが含まれる。伝送媒体は、高周波および赤外線データ通
信時に発生するものなど、音波または光波の形態をとることもある。
【0047】 コンピュータ可読媒体の一般的な形態には、たとえばフロッピーディスク、フ
レキシブルディスク、ハードディスク、磁気テープ、またはその他すべての磁気
媒体、CD−ROM、その他すべての光媒体、パンチカード、紙テープ、穴の開
いたその他すべての物理媒体、RAM、PROM、EPROM、フラッシュEP
ROM、その他すべてのメモリーチップ、またはカートリッジ、これ以降に述べ
られている搬送波、またはコンピュータが読み取れるその他すべての媒体形態を
含む。
【0048】 コンピュータ読み出し可能媒体の各種形態は、1つ以上の順序で1つ以上の命
令をプロセッサに搬送して実行させることに関連してもよい。たとえば、命令は
最初にリモートコンピュータの磁気ディスクに搬送されてもよい。リモートコン
ピュータは命令を動的メモリにロードし、命令をモデムを介して電話回線で送信
する。コンピュータシステムに近接したモデムは電話回線のデータを受信し、赤
外線送信機を使ってデータを赤外線信号に変換できる。バスに結合された赤外線
検出器は赤外線信号に搬送されたデータを受信し、そのデータをバスにのせるこ
とができる。バスはデータをメインメモリへ搬送し、そこからプロセッサは命令
を検索し、実行する。メインメモリが受信した命令は、オプションでプロセッサ
が実行する前または後に記憶デバイスに保管されてもよい。命令はLAN、WA
Nまたはインターネットなど、ネットワークの搬送波を介して送信されてもよい
【0049】 図8は、プロセッサ802を含むコンピュータシステム800、受信側の機能
を実行するようにプログラムされている受信側ソフトウェア816を含む記憶域
804、格付け値822、キャッシュ818およびヘッド822のリストを示し
ている。コンピュータシステム800もネットワーク接続820、入力デバイス
808、出力デバイス810、コンピュータ可読媒体812およびコンピュータ
可読入力デバイス814を含む。ネットワーク100のノードのそれぞれはネッ
トワーク接続800を介したネットワークの他のノードに接続されているコンピ
ュータシステム800などのコンピュータシステムであってもよい。これと同じ
ノードが受信側でもヘッドにもなり得るため、ヘッドソフトウェア818および
受信側ソフトウェア816は両方ともが記憶域804内部のシステム800の一
部として示されている。
【0050】 当業者であれば、データプロセッシングシステム800は、入出力回線などの
追加情報、キーボード、マウスおよび音声入力デバイスなどの入力デバイス、表
示端末などの表示デバイスを含んでもよいことが理解できる。入力デバイス80
8は、フロッピーディスク、CD−ROM、またはDVDドライブなどのコンピ
ュータ可読媒体に保管されているコンピュータ命令を読み取るフロッピーディス
クドライブ、CD−ROM読取装置またはDVD読取装置であってもよい。デー
タプロセッシングシステム800も、図示されていないアプリケーションプログ
ラム、オペレーティングシステム、データ等を含んでもよい。データプロセッシ
ングシステム800は、ディスクドライブ、キーボード、表示デバイス、ネット
ワーク接続、追加メモリ、追加CPU、LAN、入出力回線、その他など図示さ
れていない多数の要素を含んでもよいことも理解できよう。
【0051】 方法のステップおよび好適に説明されたフローチャートは適切なプロセッサ8
02によって実行され、記憶域804に保管されている命令を実行するというこ
とが理解できる。本発明は特定の遂行またはプログラミング技術に限定するもの
ではなく、また、本発明はここに述べられている機能を遂行するための適切な技
術を用いて遂行してもよいことも理解できる。本発明は、特定のプログラミング
言語またはオペレーティングシステムに限定されるものではない。
【0052】 記憶域804の命令は、コンピュータ可読媒体812から読み取られてもよい
。記憶域804に含まれている命令を順序どおり実行することにより、プロセッ
サ802はここに述べられている処理ステップを実行する。選択的な実施態様で
は、ハードワイヤ回路をソフトウェア命令の代わりにまたはそれと組み合わせて
使用し、本発明を遂行してもよい。本発明の実施態様は、ハードウェア回路とソ
フトウェアの特定の組み合わせに限定されるものではない。
【0053】 図9は、本発明に対応した実施態様に利用されているマルチキャスト通知メッ
セージパケット形式900の1例を示す。パケット形式900は、パケットヘッ
ダ902を含んでいる。パケットヘッダ902は、通知メッセージパケットを処
理するために使用され、また、少なくとも次の送信元アドレス906、送信元ア
ドレスポート908、宛先アドレス910、および宛先ポート912の項目を含
む。これらの項目は、代表的なマルチキャストメッセージパケット形式に含まれ
る。また、通知メッセージのパケットヘッダに含まれるものとして、通知ヘッド
に対応付けられた格付け値914、パケットが通知メッセージであることを示す
メッセージタイプ916および現行TTL(Time to Live)を示す項目920が
ある。TTLは、最良のヘッドの選択で潜在的グループメンバーによって格付け
値に関連して利用される。グループメンバーは、ホップ数を用いて潜在的グルー
プメンバーからのヘッドまでの距離を判定し、また、TTLを用いて通知の古さ
を判定する。良いヘッドは潜在的グループメンバーに近く、より新しい通知を有
する。
【0054】 マルチキャストメッセージには、制御メッセージとデータメッセージの2種類
がある。制御メッセージは、マルチキャストデータ分配設定(マルチキャスト回
復ツリーとしても知られる)の設定などのタスクおよびグループメンバーの通知
に利用される。制御メッセージは、プロトコル関連情報を含んでいるのが普通で
あり、受信側が通知の受信をヘッドに送信する場合など、マルチキャストデータ
分配設定でノード間の通信に使用される。データメッセージは、送信側がマルチ
キャストグループの受信側に分配するデータを含む。
【0055】 マルチキャスト通知メッセージパケット形式800は、本発明に対応した実施
態様で使用される制御メッセージの1例であり、格付け値項目914を含む。ヘ
ッドは、パケット形式900に基づいてマルチキャスト通知メッセージを潜在的
グループメンバーへ送信する。格付け値914は、ビット、フラグ、信号または
値を設定するためのすべての同様な手段であってもよい。
【0056】 他の実施態様は、上述した仕様および形態を考慮することによって、当業者に
とって自明である。上述した仕様および形態は実施例としてのみ考慮するように
意図されており、本発明の真の範囲は特許請求の範囲および均等物に説明される
【図面の簡単な説明】
本明細書に組み込まれ、一部を構成する添付図面は、詳細な説明とともに、本
発明のいくつかの実施態様を図示し、発明の原理を説明するのに提供される。
【図1】 図1は本発明に対応した実施態様によるマルチキャスト回復ツリ
ーの線図である。
【図2】 図2は本発明に対応した実施態様によるマルチキャストメッセー
ジを処理し、マルチキャストメッセージを普及および回復させるようにプログラ
ムされたデータプロセッシングシステムが実行するステップを表したフローチャ
ートである。
【図3】 図3は本発明に対応した実施態様による潜在的ヘッドになるよう
にプログラムされたデータプロセッシングシステムが実行するステップを表した
フローチャートである。
【図4】 図4は本発明に対応した実施態様による潜在的グループメンバー
になるようにプログラムされたデータプロセッシングシステムが実行するステッ
プを表したフローチャートである。
【図5】 図5は本発明に対応した実施態様による格付けを決定するように
プログラムされたデータプロセッシングシステムが実行するステップを表したフ
ローチャートである。
【図6】 図6は本発明に対応した実施態様による格付けを計算するアルゴ
リズムを実行するようにプログラムされたデータプロセッシングシステムが実行
するステップを表したフローチャートである。
【図7】 図7は本発明に対応した実施態様によるヘッドになるようにプロ
グラムされたデータプロセッシングシステムを表す線図である。
【図8】 図8は本発明に対応した実施態様に基づいて受信側になるように
プログラムされたデータプロセッシングシステムを表す線図である。
【図9】 図9は本発明に対応した実施態様による通知メッセージパケット
の典型的な形式である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,UG,ZW),E A(AM,AZ,BY,KG,KZ,MD,RU,TJ ,TM),AL,AM,AT,AU,AZ,BA,BB ,BG,BR,BY,CA,CH,CN,CU,CZ, DE,DK,EE,ES,FI,GB,GE,GH,G M,HR,HU,ID,IL,IS,JP,KE,KG ,KP,KR,KZ,LC,LK,LR,LS,LT, LU,LV,MD,MG,MK,MN,MW,MX,N O,NZ,PL,PT,RO,RU,SD,SE,SG ,SI,SK,SL,TJ,TM,TR,TT,UA, UG,US,UZ,VN,YU,ZW (72)発明者 ハースト,スティーブン・エイ アメリカ合衆国・03060・ニュー ハンプ シャー州・ナシュア・ドラ ストリート・ 8 (72)発明者 カダンスキー,ミリアム・シイ アメリカ合衆国・01886・マサチューセッ ツ州・ウエストフォード・ウエストビュー ドライブ・165 (72)発明者 ハンナ,スティーブン・アール アメリカ合衆国・01730・マサチューセッ ツ州・ベドフォード・ビバリー ロード・ 3 (72)発明者 ローゼンツヴァイク,フィリップ・エム アメリカ合衆国・01720・マサチューセッ ツ州・アクトン・マーシャル パス・26 (72)発明者 チュー,ダー・ミン アメリカ合衆国・01720・マサチューセッ ツ州・アクトン・メイン ストリート・ 736 (72)発明者 パールマン,ラディア・ジェイ アメリカ合衆国・01720・マサチューセッ ツ州・アクトン・ハックルベリー レー ン・10 Fターム(参考) 5K014 AA01 FA03

Claims (39)

    【特許請求の範囲】
  1. 【請求項1】 データプロセッサによって実行されるマルチキャスト回復ツ
    リーを形成する方法であって、 複数の潜在的ヘッドのそれぞれについて、潜在的ヘッドに対応付けられた格付
    け値を判定するステップと、 前記潜在的ヘッドによって複数の潜在的受信側に対して通知するステップと、 潜在的受信側によって前記潜在的ヘッドからの格付け値を優先順位付けするス
    テップと、 潜在的受信側によって最高格付け値を有する潜在的ヘッドに結合させ、それに
    よって前記潜在的受信側をメンバーとし前記最高格付け潜在的ヘッドをヘッドと
    する回復グループを形成するステップと、 を備える方法。
  2. 【請求項2】 前記格付け値は、「可能」、「不可能」、および「消極的」
    を含む請求項1に記載の方法。
  3. 【請求項3】 前記格付け値は、「可能」、「不可能」、および「積極的」
    を含む請求項1に記載の方法。
  4. 【請求項4】 前記潜在的ヘッドに対応付けられた格付け値を判断するステ
    ップは、 前記潜在的ヘッドが静的な構成を有しているかどうかを判断するステップと、 前記潜在的ヘッドがヘッドとなるように静的に構成されていない場合には、動
    的構成に基づいて前記潜在的ヘッドの格付け値を判断するステップと、 をさらに含む請求項1に記載の方法。
  5. 【請求項5】 少なくとも1つの潜在的ヘッドが送信側である請求項1に記
    載の方法。
  6. 【請求項6】 同じ格付け値を有するヘッド間を仲裁するステップをさらに
    含む請求項1に記載の方法。
  7. 【請求項7】 搬送波の形で表現されるコンピュータデータ信号であって、 第1のコンピュータプログラムを実行し、複数の潜在的ヘッドのそれぞれにつ
    いて潜在的ヘッドに対応付けられた格付け値を判定するステップと、 前記第1のコンピュータプログラムを実行し、前記潜在的ヘッドによって複数
    の潜在的受信側に対して通知するステップと、 第2のコンピュータプログラムを実行し、潜在的受信側によって前記潜在的ヘ
    ッドの格付け値を優先順位付けするステップと、 前記第2のコンピュータプログラムを実行し、潜在的受信側によって最高格付
    け値を有する潜在的ヘッドに結合させ、それによって前記潜在的受信側をメンバ
    ーとし前記最高格付け潜在的ヘッドをヘッドとする回復グループを形成するステ
    ップと、 を実行することにより、プロセッサによる実行時に前記プロセッサにマルチキ
    ャスト回復ツリーを形成させる命令シーケンスを示すコンピュータデータ信号。
  8. 【請求項8】 前記格付け値は、「可能」、「不可能」、および「消極的」
    を含む請求項7に記載のコンピュータデータ信号。
  9. 【請求項9】 前記格付け値は、「可能」、「不可能」、および「積極的」
    を含む請求項7に記載のコンピュータデータ信号。
  10. 【請求項10】 潜在的ヘッドに対応付けられた格付け値を判定するステッ
    プは、 第3のコンピュータプログラムを実行し、前記潜在的ヘッドが静的な構成を有
    しているかどうかを判断するステップと、 第4のコンピュータプログラムを実行し、前記潜在的ヘッドがヘッドとなるよ
    うに静的に構成されていない場合には、動的構成に基づいて前記潜在的ヘッドの
    格付け値を判定するステップと、 をさらに含む請求項7に記載のコンピュータデータ信号。
  11. 【請求項11】 少なくとも1つの潜在的ヘッドが送信側である請求項7に
    記載のコンピュータデータ信号。
  12. 【請求項12】 第3のコンピュータプログラムを実行し、同じ格付け値を
    有するヘッド間を仲裁するステップをさらに含む請求項7に記載のコンピュータ
    データ信号。
  13. 【請求項13】 マルチキャスト回復ツリーを形成する装置であって、 複数の潜在的ヘッドのそれぞれについて、潜在的ヘッドに対応付けられた格付
    け値を判定するように構成された回路と、 前記潜在的ヘッドによって複数の潜在的受信側に対して通知するように構成さ
    れた回路と、 潜在的受信側によって前記潜在的ヘッドの前記格付け値を優先順位付けするよ
    うに構成された回路と、 潜在的受信側によって最高格付け値を有する潜在的ヘッドに結合させ、それに
    よって前記潜在的受信側をメンバーとし前記最高格付け潜在的ヘッドをヘッドと
    する回復グループを形成するように構成された回路と、 を備える装置。
  14. 【請求項14】 前記格付け値は、「可能」、「不可能」、および「消極的
    」を含む請求項13に記載の装置。
  15. 【請求項15】 前記格付け値は、「可能」、「不可能」、および「積極的
    」を含む請求項13に記載の装置。
  16. 【請求項16】 潜在的ヘッドに対応付けられた格付け値を判定するように
    構成された前記回路は、 前記潜在的ヘッドが静的な構成を有しているかどうかを判定するように構成さ
    れた回路と、 前記潜在的ヘッドがヘッドとなるように静的に構成されていない場合には、動
    的構成に基づいて前記潜在的ヘッドの格付け値を判定するように構成された回路
    と、 をさらに含む請求項13に記載の装置。
  17. 【請求項17】 少なくとも1つの潜在的ヘッドが送信側である請求項13
    に記載の装置。
  18. 【請求項18】 同じ格付け値を有するヘッド間を仲裁するように構成され
    た回路を更に含む請求項13に記載の装置。
  19. 【請求項19】 コンピュータ読取可能コードを組み入れたコンピュータ使
    用可能媒体を備え、1つ以上のシステムを含むシステムを含むマルチキャスト回
    復ツリーを形成するコンピュータプログラムプロダクトであって、 複数の潜在的ヘッドのそれぞれについて潜在的ヘッドに対応付けられた格付け
    値を判定するように構成された第1のコンピュータ読取可能プログラムコードデ
    バイスと、 前記潜在的ヘッドによって複数の潜在的受信側に対して通知するように構成さ
    れた第2のコンピュータ読取可能プログラムコードデバイスと、 潜在的受信側によって前記潜在的ヘッドの格付け値を優先順位付けするように
    構成された第3のコンピュータ読取可能プログラムコードデバイスと、 潜在的受信側によって最高格付け値を有する潜在的ヘッドに結合させ、それに
    よって前記潜在的受信側をメンバーとし前記最高格付け潜在的ヘッドをヘッドと
    する回復グループを形成させるように構成された第4のコンピュータ読取可能プ
    ログラムコードデバイスと、 を備えるコンピュータプログラムプロダクト。
  20. 【請求項20】 前記格付け値は、「可能」、「不可能」、および「消極的
    」を含む請求項19に記載のコンピュータプログラムプロダクト。
  21. 【請求項21】 前記格付け値は、「可能」、「不可能」、および「積極的
    」を含む請求項19に記載のコンピュータプログラムプロダクト。
  22. 【請求項22】 前記第1のコンピュータ読取可能プログラムコードデバイ
    スは前記潜在的ヘッドが静的な構成を有しているかどうかを判定する第5のコン
    ピュータ読取可能プログラムコードデバイスと、 前記潜在的ヘッドがヘッドと
    なるように静的に構成されていない場合には、動的構成に基づいて前記潜在的ヘ
    ッドの格付け値を判定する第6のコンピュータ読取可能プログラムコードデバイ
    スと、 をさらに含む請求項19に記載のコンピュータプログラムプロダクト。
  23. 【請求項23】 少なくとも1つの潜在的ヘッドが送信側である請求項19
    に記載のコンピュータプログラムプロダクト。
  24. 【請求項24】 同じ格付け値を有するヘッド間を仲裁することを更に含む
    請求項19に記載のコンピュータプログラムプロダクト。
  25. 【請求項25】 データプロセッサによって実行されるマルチキャスト回復
    ツリーを形成する装置であって、 複数の潜在的ヘッドのそれぞれについて、潜在的ヘッドに対応付けられた格付
    け値を判定する手段と、 前記潜在的ヘッドによって複数の潜在的受信側に対して通知する手段と、 潜在的受信側によって前記潜在的ヘッドの格付け値を優先順位付けする手段と
    、 潜在的受信側によって最高格付け値を有する潜在的ヘッドに結合させ、それに
    より前記潜在的受信側をメンバーとし前記最高格付け潜在的ヘッドをヘッドとす
    る回復グループを形成する手段と、 を含む装置。
  26. 【請求項26】 受信側となるようにプログラムされたデータプロセッサに
    よって実行されるマルチキャスト回復ツリーを形成する方法であって、 それぞれ格付け値を含む複数の通知を前記潜在的ヘッドから受信するステップ
    と、 前記潜在的ヘッドの格付け値を優先順位付けするステップと、 最高格付け値を有する潜在的ヘッドに結合することにより、最高格付け値の潜
    在的ヘッドをヘッドとするグループを形成するステップと、 を備える方法。
  27. 【請求項27】 マルチキャスト回復ツリーを形成する装置であって、 それぞれ格付け値を含む複数の通知を前記潜在的ヘッドから受信するように構
    成された回路と、 前記潜在的ヘッドの格付け値を優先順位付けするように構成された回路と、 最高格付け値を有する潜在的ヘッドに結合させ、それによって最高格付け値の
    潜在的ヘッドをヘッドとするグループを形成するように構成された回路と、 を備える装置。
  28. 【請求項28】 マルチキャスト回復ツリーを形成する装置であって、 それぞれ格付け値を含む複数の通知を前記潜在的ヘッドから受信する手段と、 前記潜在的ヘッドの格付け値を優先順位付けする手段と、 最高格付け値を有する潜在的ヘッドに結合させ、それによって最高格付け値の
    潜在的ヘッドをヘッドとするグループを形成する手段と、 を含む装置。
  29. 【請求項29】 コンピュータ読取可能コードを組み入れたコンピュータ使
    用可能媒体を備え、1つ以上のシステムを含むマルチキャスト回復ツリーを形成
    するコンピュータプログラムプロダクトであって、 複数の潜在的ヘッドから通知を受信するように構成されたコンピュータ読取可
    能コードデバイスと、 前記潜在的ヘッドからの格付け値を優先順位付けするように構成されたコンピ
    ュータ読取可能コードデバイスと、 最高格付け値を有する潜在的ヘッドに結合させ、それによって最高格付け値の
    潜在的ヘッドをヘッドとするグループを形成するように構成されたコンピュータ
    読取可能コードデバイスと、 を含むコンピュータプログラムプロダクト。
  30. 【請求項30】 搬送波の形で表現されるコンピュータデータ信号であって
    、 コンピュータプログラムを実行して、それぞれ格付け値を含む複数の通知を複
    数の潜在的ヘッドから受信するステップと、 前記コンピュータプログラムを実行して、前記潜在的ヘッドの格付け値を優先
    順位付けするステップと、 前記コンピュータプログラムを実行して最高格付け値を有する潜在的ヘッドに
    割り当て、それによって最高格付け値の潜在的ヘッドをヘッドとするグループを
    形成するステップと、 を実行することによって、プロセッサによる実行時に前記プロセッサにマルチ
    キャスト回復ツリーを形成させる命令シーケンスを示すコンピュータデータ信号
  31. 【請求項31】 潜在的ヘッドとなるようにプログラムされたデータプロセ
    ッサによって実行されるマルチキャスト回復ツリーを形成する方法であって、 前記潜在的ヘッドと対応付けられた格付け値を判定するステップと、 前記格付け値に基づいて複数の潜在的受信側に通知するステップと、 潜在的受信側から参加メッセージを受信するステップと、 前記潜在的受信側を予め定められた制限に基づいてグループに加えるステップ
    と、 を備える方法。
  32. 【請求項32】 前記予め定められた制限は、メンバー制限である請求項3
    1に記載の方法。
  33. 【請求項33】 マルチキャスト回復ツリーを形成する装置であって、 前記潜在的ヘッドと対応付けられた格付け値を判定するように構成された回路
    と、 前記格付け値に基づいて複数の潜在的受信側に通知するように構成された回路
    と、 潜在的受信側から参加メッセージを受信するように構成された回路と、 前記潜在的受信側を予め定められた制限に基づいてグループに加えるように構
    成された回路と、 を備える装置。
  34. 【請求項34】 前記予め定められた制限は、メンバー制限である請求項3
    3に記載の装置。
  35. 【請求項35】 潜在的ヘッドになるようにプログラムされたデータプロセ
    ッサによって実行されるマルチキャスト回復ツリーを形成する装置であって、 前記潜在的ヘッドと対応付けられた格付け値を判定する手段と、 格付け値に基づいて複数の潜在的受信側に通知する手段と、 潜在的受信側から参加メッセージを受信する手段と、 前記潜在的受信側を予め定められた制限に基づいてグループに加える手段と、 を備える装置。
  36. 【請求項36】 コンピュータ読取可能コードを組み入れたコンピュータ使
    用可能媒体を備え、1つ以上のシステムを含むマルチキャスト回復ツリーを形成
    するコンピュータプログラムプロダクトであって、 潜在的ヘッドに対応付けられた格付け値を判定するように構成されたコンピュ
    ータ読取可能コードデバイスと、 前記格付け値に基づいて複数の潜在的受信側に通知するように構成されたコン
    ピュータ読取可能コードデバイスと、 潜在的受信側から参加メッセージを受信するように構成されたコンピュータ読
    取可能コードデバイスと、 前記潜在的受信側を予め定められた制限に基づいてグループに加えるように構成
    されたコンピュータ読取可能コードデバイスと、 を含むコンピュータプログラムプロダクト。
  37. 【請求項37】 前記予め定められた制限は、メンバー制限である請求項3
    6に記載のコンピュータプログラムプロダクト。
  38. 【請求項38】 搬送波の形で表現されるコンピュータデータ信号であって
    、 潜在的ヘッドに対応付けられた格付け値を判断するコンピュータプログラムを
    実行するステップと、 前記コンピュータプログラムを実行し、前記格付け値に基づいて複数の潜在的
    受信側に通知するステップと、 前記コンピュータプログラムを実行し、潜在的受信側から参加メッセージを受
    信するステップと、 前記コンピュータプログラムを実行し、前記潜在的受信側を予め定められた制
    限に基づいてグループに加えるステップと、 を実行することにより、プロセッサによる実行時に前記プロセッサにマルチキ
    ャスト回復ツリーを形成させる命令シーケンスである、コンピュータデータ信号
  39. 【請求項39】 前記予め定められた制限は、メンバー制限である請求項3
    8に記載のコンピュータデータ信号。
JP2000545283A 1998-04-20 1999-03-22 格付けを利用して回復ノードを選択する方法と装置 Pending JP2002512483A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/063,498 US6185698B1 (en) 1998-04-20 1998-04-20 Method and apparatus using ranking to select repair nodes in formation of a dynamic tree for multicast repair
US09/063,498 1998-04-20
PCT/US1999/006202 WO1999055041A1 (en) 1998-04-20 1999-03-22 Method and apparatus for using ranking to select repair nodes

Publications (1)

Publication Number Publication Date
JP2002512483A true JP2002512483A (ja) 2002-04-23

Family

ID=22049613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000545283A Pending JP2002512483A (ja) 1998-04-20 1999-03-22 格付けを利用して回復ノードを選択する方法と装置

Country Status (5)

Country Link
US (2) US6185698B1 (ja)
EP (1) EP1074115A1 (ja)
JP (1) JP2002512483A (ja)
AU (1) AU3196899A (ja)
WO (1) WO1999055041A1 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185698B1 (en) * 1998-04-20 2001-02-06 Sun Microsystems, Incorporated Method and apparatus using ranking to select repair nodes in formation of a dynamic tree for multicast repair
US6507562B1 (en) 1998-06-30 2003-01-14 Sun Microsystems, Inc. Dynamic optimization for receivers using distance between a repair head and a member station in a repair group for receivers having a closely knit topological arrangement to locate repair heads near the member stations which they serve in tree based repair in reliable multicast protocol
US6782490B2 (en) 1999-03-17 2004-08-24 At&T Corp. Network-based service for the repair of IP multicast sessions
US6501763B1 (en) * 1999-05-06 2002-12-31 At&T Corp. Network-based service for originator-initiated automatic repair of IP multicast sessions
US6567929B1 (en) * 1999-07-13 2003-05-20 At&T Corp. Network-based service for recipient-initiated automatic repair of IP multicast sessions
US6785245B1 (en) * 1999-10-20 2004-08-31 Nortel Networks Limited Method and apparatus for controlling fanout of a multicast tree
US6275859B1 (en) * 1999-10-28 2001-08-14 Sun Microsystems, Inc. Tree-based reliable multicast system where sessions are established by repair nodes that authenticate receiver nodes presenting participation certificates granted by a central authority
US7257642B1 (en) * 1999-11-11 2007-08-14 Surp Communication Solutions Ltd. Channel load balancing
US6775831B1 (en) * 2000-02-11 2004-08-10 Overture Services, Inc. System and method for rapid completion of data processing tasks distributed on a network
US6724770B1 (en) * 2000-02-17 2004-04-20 Kenneth P. Birman Multicast protocol with reduced buffering requirements
US6718361B1 (en) 2000-04-07 2004-04-06 Network Appliance Inc. Method and apparatus for reliable and scalable distribution of data files in distributed networks
AU2001251470A1 (en) * 2000-04-07 2001-10-23 Network Appliance, Inc. Method and apparatus for reliable and scalable distribution of data files in distributed networks
WO2001086466A2 (en) * 2000-05-09 2001-11-15 Surf Communication Solutions, Ltd. Always-on access server pool
US7188145B2 (en) 2001-01-12 2007-03-06 Epicrealm Licensing Llc Method and system for dynamic distributed data caching
US7035911B2 (en) * 2001-01-12 2006-04-25 Epicrealm, Licensing Llc Method and system for community data caching
CN1232086C (zh) * 2002-08-07 2005-12-14 华为技术有限公司 实现组播代理多粒度用户管理的方法
US7400577B2 (en) * 2004-02-25 2008-07-15 Microsoft Corporation Methods and systems for streaming data
US7424003B2 (en) * 2004-03-08 2008-09-09 Surf Communication Solutions Multi-parameter scheduling in communication systems
US20060159091A1 (en) * 2005-01-19 2006-07-20 Arjen Boers Active multicast information protocol
US20060262806A1 (en) * 2005-05-19 2006-11-23 Imed Bouazizi System and method for data delivery
JP4864350B2 (ja) * 2005-05-31 2012-02-01 京セラ株式会社 無線通信端末および受信制御方法
JP5005210B2 (ja) * 2005-11-11 2012-08-22 任天堂株式会社 ネットワークゲームシステム、ネットワークゲームプログラムおよびネットワーク構築方法
US7650469B2 (en) * 2006-09-06 2010-01-19 International Business Machines Corporation Determining whether a non-running processor has access to an address space
US20120173620A1 (en) * 2010-12-29 2012-07-05 Microsoft Corporation Creation and management of resilient wireless groups
EP2475138B1 (en) * 2011-01-06 2019-03-13 BlackBerry Limited Delivery and management of status notifications for group messaging
US9363227B2 (en) 2012-08-17 2016-06-07 Cisco Technology, Inc. Multicast source in group address mapping
CN105991325B (zh) * 2015-02-10 2019-06-21 华为技术有限公司 处理至少一个分布式集群中的故障的方法、设备和系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6029195A (en) * 1994-11-29 2000-02-22 Herz; Frederick S. M. System for customized electronic identification of desirable objects
US5758257A (en) * 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
EP0770967A3 (en) * 1995-10-26 1998-12-30 Koninklijke Philips Electronics N.V. Decision support system for the management of an agile supply chain
US5983366A (en) * 1997-03-19 1999-11-09 Optimay Corporation Data processing system having monitoring of software activity
US6185698B1 (en) * 1998-04-20 2001-02-06 Sun Microsystems, Incorporated Method and apparatus using ranking to select repair nodes in formation of a dynamic tree for multicast repair

Also Published As

Publication number Publication date
WO1999055041A1 (en) 1999-10-28
EP1074115A1 (en) 2001-02-07
US6757843B1 (en) 2004-06-29
US6185698B1 (en) 2001-02-06
AU3196899A (en) 1999-11-08

Similar Documents

Publication Publication Date Title
JP2002512483A (ja) 格付けを利用して回復ノードを選択する方法と装置
JP2002512484A (ja) デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法
US4430651A (en) Expandable and contractible local area network system
US8605631B2 (en) Communication method
US4975904A (en) Local area network for digital data processing system including timer-regulated message transfer arrangement
US4410889A (en) System and method for synchronizing variable-length messages in a local area network data communication system
EP0074864B1 (en) System and method for name-lookup in a local area network data communication system
US7200654B2 (en) Method of constructing and managing overlay multicast tree on Internet
CN115004673B (zh) 消息推送方法、装置、电子设备及计算机可读介质
US20040044790A1 (en) Heuristics-based peer to peer message routing
JP2003521161A (ja) 階層的構造に基づくインターネット・ブロードキャスティング・データを提供するシステム及び方法
KR20000023741A (ko) 무선 메시징 시스템의 혼잡 제어 방법
US6581175B1 (en) Apparatus and method of requesting retransmission of a message across a network
EP2259493B1 (en) Distributed game system
WO2006068434A1 (en) Communication network system of bus network structure and message routing method using the system
CN110166487B (zh) 局域网设备信息传输方法、主设备、存储介质及智能设备
CN100578484C (zh) 用于自适应组播文件传输的方法和装置
EP2071764A1 (en) A method, device and communication system thereof of electing local master
CN113572695B (zh) 链路聚合方法、装置、计算设备及计算机存储介质
JP2004536517A (ja) マルチキャストサポートのための方法及び装置
JPH1132074A (ja) データ伝送システムおよびその方法
JP2008152792A (ja) データ転送処理装置およびデータ転送システム
JP2000244552A (ja) ファイル転送装置
WO2024052981A1 (ja) 処理装置、処理方法およびプログラム
US20020078184A1 (en) Record medium, multicast delivery method and multicast receiving method