JP2002512484A - デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法 - Google Patents

デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法

Info

Publication number
JP2002512484A
JP2002512484A JP2000545284A JP2000545284A JP2002512484A JP 2002512484 A JP2002512484 A JP 2002512484A JP 2000545284 A JP2000545284 A JP 2000545284A JP 2000545284 A JP2000545284 A JP 2000545284A JP 2002512484 A JP2002512484 A JP 2002512484A
Authority
JP
Japan
Prior art keywords
node
computer
tree
message
node selection
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
JP2000545284A
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 JP2002512484A publication Critical patent/JP2002512484A/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/48Routing tree calculation
    • 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/16Multipoint 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/48Routing tree calculation
    • H04L45/488Routing tree calculation using root node determination
    • 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)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 デジタル・データ・ネットワークにおいて、通信リンクによって相互接続された複数のデバイスがそれ自体をツリー構造に編成する。デバイスの各々は、一般にツリー構造におけるノードになるためのデバイスの適合性に関する関連適合性値を有する。デバイスは、それ自体を1つまたは複数の反復においてツリー構造に編成し、各反復は、2つの一般ステップ、すなわちノード選定ステップとツリー確立ステップを含む。ノード選定ステップでは、ツリーにおけるノードになることができるような適合性値をもつデバイスは、それらのそれぞれの適合性値を含むノード選定メッセージを、通信リンクを介して同報通信する。これらのデバイスはまた、他のデバイスによって同報通信されたノード選定メッセージを受信する。各デバイスは、その適合性値とそれによって受信されたノード選定メッセージの適合性値との比較に関連して、そのデバイスがツリー構造におけるノードに選定されたかどうかを決定する。ツリー確立ステップ中、ネットワークにおけるデバイスは、ツリー構造におけるそれぞれのノードに選定されたデバイスのうち少なくとも1つのデバイスと通信して、そのそれぞれの子供になるのを容易にする。

Description

【発明の詳細な説明】
【0001】 (発明の分野) 本発明は、一般にデジタル・ネットワークの分野に関し、より詳細には、デジ
タル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリー
を確立するための効率的な構成を提供するものである。
【0002】 (発明の背景) 会社内のオフィス環境において使用する現代の「企業」デジタル・データ処理
システムでは、いくつかのパーソナル・コンピュータ、ワークステーション、お
よび大容量記憶サブシステム、ネットワーク・プリンタ、公共電話システムへの
インタフェースなどの他の様々なネットワーク・リソースが一般にコンピュータ
・ネットワークで相互接続されている。ネットワーク大容量記憶サブシステムに
記憶できるデータおよびプログラムに関連して処理を実行するためにパーソナル
・コンピュータおよびワークステーションが個々のユーザによって使用される。
そのような構成では、クライアントとして動作するパーソナル・コンピュータ/
ワークステーションは、処理のためにネットワーク大容量記憶サブシステムから
、データおよびプログラムを含む情報をダウンロードする。さらに、パーソナル
・コンピュータまたはワークステーションは、処理されたデータを記憶のために
ネットワーク大容量記憶サブシステムにアップロードすること、印刷のためにネ
ットワーク・プリンタにアップロードすること、公共電話システムを介した伝送
のために電話インタフェースにアップロードすることなどができる。そのような
構成では、ネットワーク大容量記憶サブシステム、ネットワーク・プリ端および
電話インタフェースは、ネットワークにおけるすべてのクライアントからの要求
を処理するために利用できるので、共用リソースとして動作する。ネットワーク
をそのような形で編成することにより、サーバは、ネットワークにおけるすべて
のパーソナル・コンピュータ/ワークステーションによる使用のために容易に利
用できる。ネットワークは、かなり広い領域に広げることができ、またいくつか
の会社および個人の間でパーソナル・コンピュータ、ワークステーションおよび
他のデバイスを相互接続することができる。
【0003】 ネットワークにおけるコンピュータおよび他のリソース(一般には「デバイス
」)はそれらの間でメッセージを伝送することによって情報を共用する。メッセ
ージは2つの一般的なクラス、すなわちユニキャスト・メッセージとマルチキャ
スト・メッセージに分類することができる。ユニキャスト・メッセージは、ネッ
トワークにおける1つの他のデバイスに情報を転送するためにデバイスによって
使用されるものであり、マルチキャスト・メッセージは、ネットワークにおける
すべてのデバイスまたはデバイスの内の選択されたサブセットに情報を転送する
ためにデバイスによって使用されるものである。各ユニキャスト・メッセージは
、メッセージを送信した特定のデバイスを識別するソース・アドレスと、ユニキ
ャスト・メッセージの場合にメッセージを受信すべき特定のデバイスを識別する
宛先アドレスとを含めたアドレス情報を含む。同様に、各マルチキャスト・メッ
セージは、メッセージを送信した特定のデバイスを識別するソース・アドレス、
およびマルチキャスト・メッセージの場合にメッセージを受信すべきデバイスの
セット(すべてのデバイスかまたは選択されたサブセットである)を識別する宛
先アドレスを含めて、アドレス情報を含む。特定のデバイスが、それ(すなわち
特定のデバイス)を識別する宛先アドレスをユニキャスト・メッセージが含んで
いること、または特定のデバイスを含むデバイスのセットを識別する宛先アドレ
スをマルチキャスト・メッセージが含んでいることを認めたとき、それ(すなわ
ち特定のデバイス)はメッセージを受信し、処理する。
【0004】 ネットワークは一般にメッセージを確実に転送するが、時々メッセージが失わ
れ、宛先デバイス、すなわちメッセージを受信するように意図された特定のデバ
イスによって受信されないことがある。宛先デバイスがメッセージを受信できな
かった場合、その宛先デバイスは、ソース・デバイス、すなわちネットワークを
介してそのメッセージを生成し送信したデバイスに、メッセージの再送信を要求
する「否定応答」(「NACK」)メッセージを送信することができる。一般に
、特定のソース・デバイスによって特定の宛先デバイスに送信されたユニキャス
ト・メッセージは、宛先デバイスが、特定のソース・デバイスからそれが受信し
たメッセージのシーケンスに空隙があることを決定した場合に、その宛先デバイ
スが再送信を要求するようソース・デバイスに通知することができるように順序
付け情報を含む。メッセージが送信された順序をはずれてメッセージが宛先デバ
イスに配信されうる場合、なくなったメッセージが結局配信してもよいかどうか
を確かめるために、その宛先デバイスは、それがシーケンス中の空隙を通知して
からある時間の間待つことができるが、いずれにせよ、なくなったメッセージが
少なくともその時間の間の満了前に宛先デバイスに配信されない場合、その宛先
デバイスは「NACK」メッセージを生成し、それをソース・デバイスに送信し
て、なくなったメッセージの再送信を可能にする。
【0005】 同様の動作はマルチキャスト・メッセージに関連しても行われる。すなわち、
宛先デバイスが、同じソース・デバイスからそのようなマルチキャスト・メッセ
ージのシーケンスにおいて、宛先デバイスを含むセットを識別する宛先アドレス
をもつマルチキャスト・メッセージが受信されていないことが分かった場合、そ
れ(すなわち宛先デバイス)は、ソース・デバイスに送信するために、または少
なくともそのメッセージ中の情報をユニキャスト・メッセージで宛先デバイスに
送信するために、メッセージの再送信を要求する「NACK」メッセージを生成
する。しかしながら、1つの宛先デバイスがマルチキャスト・メッセージを受信
できなかったことがその宛先デバイスの誤動作に起因するのでなければ、ある宛
先デバイスがマルチキャスト・メッセージを受信できなかった場合、マルチキャ
スト・メッセージに対する宛先デバイスのセット中の多数の宛先デバイスまたは
すべての宛先デバイスがそのマルチキャスト・メッセージを受信できないことが
多く、それらのすべての宛先デバイスは、マルチキャスト・メッセージの再送信
を要求する「NACK」メッセージを生成し、ソース・デバイスに送信する。そ
の場合、デバイスのセット中にマルチキャスト・メッセージに対する多数の宛先
デバイスがある場合、ソース・デバイスは、それの(すなわちソース・デバイス
の)他の処理操作にかなり悪い影響を及ぼすことがある多数のそのような「NA
CK」メッセージを受信し処理することができる。
【0006】 (発明の概要) 本発明は、宛先デバイスがソース・デバイスによって生成され送信されたマル
チキャスト・メッセージを受信できなかった場合に、複数の宛先デバイスに送信
したマルチキャスト・メッセージを生成した特定のソース・デバイスに宛先デバ
イスから送信するために生成される「否定応答」(「NACK」)メッセージの
数を減らすために使用することができる、デジタル・ネットワークにおけるマル
チキャスト・メッセージ配信エラー回復ツリーを確立するための新しい改善され
た構成を提供する。
【0007】 手短に要約すれば、本発明は、通信リンクによって相互接続された複数のデバ
イスを含むデジタル・データ・ネットワークにおいてデバイスをツリー構造に論
理的に編成するためのシステムおよびその方法を提供する。デバイスの各々は、
一般にツリー構造におけるノードになるためのデバイスの適合性に関する関連し
た適合性値を有する。デバイスは、それ自体を1つまたは複数回反復してツリー
構造に編成する。各反復は、2つの一般ステップ、すなわちノード選定ステップ
とツリー確立ステップを含む。ノード選定ステップでは、ツリーにおけるノード
になることができるような適合性値をもつデバイスは、それらのそれぞれの適合
性値を含むノード選定メッセージを、通信リンクを介してブロードキャストする
。これらのデバイスはまた、他のデバイスによってブロードキャストされたノー
ド選定メッセージを受信する。各デバイスは、その適合性値とそれによって受信
されたノード選定メッセージの適合性値との比較して、そのデバイスがツリー構
造におけるノードに選定されたかどうかを決定する。ツリー確立ステップでは、
ネットワークにおけるデバイスは、ツリー構造におけるそれぞれのノードに選定
されたデバイスのうち少なくとも1つのデバイスと通信して、そのそれぞれの子
供になる。
【0008】 本発明を特許請求の範囲に詳細に示す。本発明の上記および他の利点は、添付
の図面に関して行う以下の説明を参照すればよりよく理解できよう。
【0009】 (例示的な実施形態の詳細な説明) 図1は、本発明による、ネットワーク内のマルチキャスト・ツリーを生成また
は構成するための構成を含むローカル・エリア・ネットワーク10の概略図であ
る。図1を参照すると、ローカル・エリア・ネットワーク10は、通信リンク1
3によって相互接続された複数のコンピュータ11(1)から11(N)(全体
的に参照番号11(n)で識別される)を含んでいる。通常の場合のように、少
なくとも一部のコンピュータ11(1)、...、11(N−1)は、パーソナ
ル・コンピュータまたはコンピュータ・ワークステーションの形態をとり、各々
がシステム・ユニット、ビデオ・ディスプレイ・ユニット、そしてキーボードお
よびマウスのようなオペレータ入力装置を含んでいる。コンピュータ11(N)
はまた、システム・ユニットも含み、さらにビデオ・ディスプレイ・ユニットお
よびオペレータ入力装置も含むことがある。コンピュータ11(n)は、通常の
プログラム記憶式コンピュータ・アーキテクチャを備えるものである。システム
・ユニットは一般に、処理、メモリ、ディスクおよび/またはテープ・ストレー
ジ構成要素などの大容量記憶装置、およびそれぞれ矢印14(n)で表されてい
るそれぞれのコンピュータと通信リンク13のインタフェースをとるためのネッ
トワーク・インタフェース・デバイスを始めとする他の構成要素を含んでいる(
別々に図示されてはいない)。ビデオ・ディスプレイ・ユニットにより、コンピ
ュータは処理データおよび処理状況をユーザに表示することができ、オペレータ
入力装置によりユーザはデータを入力し、コンピュータによる処理を制御するこ
とができる。コンピュータ11(n)は、それぞれネットワーク・インタフェー
ス・デバイス14(n)を通じて、情報をメッセージの形態で通信リンク13を
介して相互に転送する。
【0010】 ネットワーク10内のコンピュータ11(n)を相互接続している通信リンク
13は、通常の場合のように、ケーブル、光ファイバ、または他の伝送媒体を含
み、さらにコンピュータ11(n)間のメッセージを表す信号をそれぞれ搬送し
切り替えるためのスイッチを含むことがある。上記のように、各コンピュータ1
1(n)は通常、それぞれのコンピュータを通信リンク13に接続するネットワ
ーク・インタフェース・デバイス14(n)を含んでいる。通信リンク13を構
成する伝送媒体およびスイッチは、適切なトポロジでコンピュータ11を相互接
続する。
【0011】 情報は、メッセージの形態でコンピュータ11(n)の間を転送される。各メ
ッセージには、一般にソース・コンピュータ11(n)つまりメッセージを送信
するコンピュータ11(n)から、宛先コンピュータ11(d)つまりメッセー
ジを受信する1つまたは複数のコンピュータへのメッセージの転送を制御する際
に役立つ情報を含むヘッダ部分と、一般に転送される情報を含むデータ部分が含
まれている。ヘッダ部分に含まれる情報には、ソース・コンピュータ11(s)
およびメッセージを受信する宛先コンピュータ11(d)を識別するソースおよ
び宛先アドレスを特に含むメッセージ転送プロトコル情報が含まれ、各コンピュ
ータ11(n)はメッセージの宛先アドレスからメッセージを受信するべきかど
うか判断することができる。メッセージ内の宛先アドレス情報は、メッセージを
受信する1つのコンピュータ11(n)を識別することがある。この場合メッセ
ージは「ユニキャスト」メッセージと呼ばれる。一方、メッセージ内の宛先アド
レス情報がマルチキャスト・アドレスを含むことがあり、ローカル・エリア・ネ
ットワーク10内のすべてのコンピュータ11(n)がメッセージを受信するこ
とができるようになる。このようなマルチキャスト・アドレスを含むメッセージ
は、「マルチキャスト」メッセージ、または「ブロードキャスト」メッセージと
呼ばれる。あるいは、マルチキャスト・アドレスは、コンピュータ11(n)の
各種サブセットがメッセージを受信することができるようにする。このような宛
先アドレス情報を含むメッセージも、マルチキャスト・メッセージと呼ばれる。
マルチキャスト・アドレスは、ソース・コンピュータ11(s)が単一のマルチ
キャスト・メッセージを転送し、複数のコンピュータ11(n)が宛先コンピュ
ータとしてメッセージを受信することができるようにするメカニズムを提供する
【0012】 メッセージのヘッダで提供されるメッセージ転送プロトコル情報は、メッセー
ジの送信の範囲を制限することのできる、いわゆる「time to live
」(「TTL」)情報も含んでいる。time to live情報は、たとえ
ば、ローカル・エリア・ネットワーク10のような特定のローカル・エリア・ネ
ットワーク、ワイド・エリア・ネットワーク内の隣接ローカル・エリア・ネット
ワークの各種グループ、または全ワイド・エリア・ネットワークに向けられるメ
ッセージの送信の範囲を制限するために使用することができる。たとえば、ロー
カル・エリア・ネットワーク10内のコンピュータ11(n)が、マルチキャス
ト・アドレスおよび送信の範囲がローカル・エリア・ネットワーク10に制限さ
れていることを示すtime to live情報を含むメッセージを送信する
場合、そのメッセージは、マルチキャスト・アドレスに応答するよう条件付けら
れているローカル・エリア・ネットワーク10内のコンピュータ11(n)によ
ってのみ受信され処理されることになる。通常、time to live情報
は、ローカル・エリア・ネットワークを相互接続するために使用されるゲートウ
ェイ(図示せず)があるローカル・エリア・ネットワークで受信したメッセージ
を別のローカル・エリア・ネットワークに転送するかどうかを制御するために使
用される。その場合、time to live情報は、整数値の形態をとり、
ゲートウェイがメッセージを受信すると、time to live値を減分し
、減分したtime to live値がゼロよりも大きい場合にはメッセージ
を他のローカル・エリア・ネットワークに送信する。一方、減分したtime
to live値がゼロの場合には、ゲートウェイは1つのローカル・エリア・
ネットワークから受信したメッセージを他のローカル・エリア・ネットワークに
転送しない。このようにして、コンピュータ11(n)は、メッセージで「1」
のtime to live値を送信することによってローカル・エリア・ネッ
トワークへのメッセージの送信の範囲を制限することができる。
【0013】 図1に概略が示されているローカル・エリア・ネットワーク10は、特定の企
業によって運用されているプライベート・ワイド・エリア・ネットワークおよび
/またはインターネットのようなパブリック・ワイド・エリア・ネットワークな
どの、ワイド・エリア・ネットワークの一部を含んでいる。ローカル・エリア・
ネットワーク10と同様に、図1に示されていないワイド・エリア・ネットワー
クの他の部分は一般に、それぞれ通信リンクによって相互接続されるコンピュー
タを含むローカル・エリア・ネットワークを含んでおり、各種ローカル・エリア
・ネットワークは通常の方法で通信リンクおよびスイッチの様々な組合せによっ
て相互接続されている。各ローカル・エリア・ネットワーク内のコンピュータは
、ローカル・エリア・ネットワーク10に関して前述した方法と同様の方法で、
それぞれユニキャストまたはマルチキャスト・メッセージを送信することによっ
て情報を共有することができる。さらに、1つのローカル・エリア・ネットワー
ク内のコンピュータは、ローカル・エリア・ネットワーク10に関して前述した
方法と同様の方法で、それぞれユニキャストまたはマルチキャスト・メッセージ
を送信することによって、他のローカル・エリア・ネットワーク内のコンピュー
タと情報を共有することができる。
【0014】 本発明は、ネットワーク10内の少なくとも一部のコンピュータ11(n)の
マルチキャスト・メッセージ配信エラー回復ツリーを論理的に編成するための機
構を提供する。一般には、マルチキャスト・メッセージ配信エラー回復ツリーは
、ネットワーク(ローカル・エリア・ネットワーク10またはローカル・エリア
・ネットワーク10を含むワイド・エリア・ネットワークのいずれを含むもので
もよい)内の1つまたは複数のコンピュータが、ソース・コンピュータ11(s
)によって送信されたマルチキャスト・メッセージの受信に失敗した場合に、効
率的にエラーを回復するために使用される。通常、コンピュータ11(n)がソ
ース・コンピュータ11(s)によって送信されたメッセージを受信する宛先コ
ンピュータ11(d)となる場合、その宛先コンピュータ11(d)がメッセー
ジの受信に失敗した場合には、ソース・コンピュータ11(s)に送信するため
の「否定応答」(「NACK」)メッセージを生成して、ソース・コンピュータ
11(s)が宛先コンピュータ11(d)にメッセージを再送信できるようにす
る。これは、宛先コンピュータ11(d)が実際にメッセージを受信するまで、
数回繰り返される。たとえば、宛先コンピュータ11(d)は、ソース・コンピ
ュータ11(s)によって送信される順序の各メッセージのヘッダ内のプロトコ
ル情報で一般に用いられているメッセージ順序付け情報を使用して、特定のメッ
セージの受信に失敗したかどうかを判断することができる。
【0015】 受信しなかったメッセージの再送信を要求するための宛先コンピュータ11(
d)による「NACK」メッセージの使用は一般に、ユニキャスト・メッセージ
に関しては効果的である。これは、メッセージが受信されなかった場合に「NA
CK」メッセージを生成する宛先コンピュータ11(d)が1つしかないからで
ある。その場合、ソース・コンピュータ11(s)は、受信されなかったメッセ
ージごとに1つの「NACK」メッセージを処理するだけでよい。しかし、複数
の宛先コンピュータ11(d)がソース・コンピュータ11(s)によって送信
されたマルチキャスト・メッセージを受信しなかったために、ソース・コンピュ
ータ11(s)向けに各々の「NACK」メッセージを生成する場合には、問題
が生じるおそれがある。その場合、ソース・コンピュータ11(s)は、受信し
た「NACK」メッセージをそれぞれ処理する必要があり、これはソース・コン
ピュータ11(s)が実行すべき他の処理操作に重大なマイナスの影響を及ぼす
可能性がある。マルチキャスト・メッセージ配信エラー回復ツリーは、マルチキ
ャスト・メッセージのソース・コンピュータ11(s)に送信される「NACK
」メッセージの数を減らすことを助け、特に多数のコンピュータがマルチキャス
ト・メッセージの宛先となるワイド・エリア・ネットワークにおいて生じるおそ
れのある、処理へのマイナスの影響を緩和するために役立てることができる。本
発明は、ローカル・エリア・ネットワーク内のコンピュータ11(n)をマルチ
キャスト・メッセージ配信エラー回復ツリーに効果的に編成するための機構を提
供する。
【0016】 説明を進める前に、ローカル・エリア・ネットワーク10におけるマルチキャ
スト・メッセージ配信エラー回復ツリーの論理的編成について述べておくことは
有用であると考えられる。図2では、参照番号20により、マルチキャスト・メ
ッセージ配信エラー回復ツリーの例が示されている。一般に、例示的なマルチキ
ャスト・メッセージ配信エラー回復ツリー20において、ローカル・エリア・ネ
ットワーク10を構成するコンピュータ11(n)は、図2で示される各種コン
ピュータを相互接続している点線で表される方法で、「論理的に相互接続」(以
下で説明)されている。例示的なマルチキャスト・メッセージ配信エラー回復ツ
リー20は以下の通りである。
【0017】 (i)1つのコンピュータ11(R)が、ツリー20の最上位レベルを形成す
るルート・ノードを形成する。 (ii)他のコンピュータ11(R)(1)から11(R)(A)(一般に参
照番号11(R)(a)で識別される、「a」は「1」と「A」の間の(1とA
を含む)インデックス)はすべてルート・ノード11(R)に「論理的に接続」
(以下で説明)され、ルート・ノード以下のツリー20で最初の下位レベルを形
成する。 (iii)他のコンピュータ11(R)(a)(1)から11(R)(a)(
B)(一般に参照番号11(R)(a)(b)で識別される、「b」は「1」と
「B」の間の(1とBを含む)インデックス)はすべて第1レベルのコンピュー
タ11(R)(a)に論理的に接続され、ルート・ノード以下のツリー20で第
2の下位レベルを形成する。
【0018】 以下同様に、最終的に残りのコンピュータ11(R)(a)(b)...(1
)から11(R)(a)(b)...(L)(一般に参照番号11(R)(a)
(b)...(l)で識別される、「l」は「1」と「L」の間の(1とLを含
む)インデックス)がツリー20の「リーフ・ノード」を形成するまで続く。(
コンピュータ11(R)、11(R)(a)、11(R)(a)(b)、などが
図1に示されるコンピュータ11(n)を構成し、図1の参照番号で使用されて
いるインデックス「(n)」が、図2ではマルチキャスト・メッセージ配信エラ
ー回復ツリー20への図1のコンピュータ11(n)の編成を示すように変更さ
れていることが認識される。)
【0019】 一般に、 (a)ルート・ノード以下のツリーのレベルにある、あるいはリーフ・ノード
を形成するコンピュータは、上位レベルにある1つのコンピュータに論理的に接
続され、そのコンピュータはマルチキャスト・メッセージ配信エラー回復ツリー
20における「親」と呼ばれ、 (b)ツリーの最下位レベルより上のレベルにあるコンピュータは、次の下位
レベルにある1つまたは複数のコンピュータ、あるいはマルチキャスト・メッセ
ージ配信エラー回復ツリー20のそれぞれのリーフ・ノードを形成する1つまた
は複数のコンピュータに論理的に接続され、これはそのコンピュータの「子供」
と呼ばれる。
【0020】 したがって、図2に示されるマルチキャスト・メッセージ配信エラー回復ツリ
ー20を参照すると、ツリーのルート・ノードを形成するコンピュータ11(R
)は、ツリーの第2レベルを形成するコンピュータ11(R)(1)および11
(R)(2)の親であり、さらにツリー20のリーフ・ノードを形成するコンピ
ュータ11(R)(3)の親である。逆に、各コンピュータ11(R)(1)、
11(R)(2)および11(R)(3)は、ツリー20のコンピュータ11(
R)の「子供」である。同様に、コンピュータ11(R)(1)は、コンピュー
タ11(R)(1)(1)、11(R)(1)(2)(ツリー20の第3レベル
のノードを含む)および11(R)(1)(3)(ツリー20のリーフ・ノード
)の親であり、各コンピュータ11(R)(1)(1)、11(R)(1)(2
)、および11(R)(1)(3)はコンピュータ11(R)(1)の子供であ
る。ルート・ノードを形成するコンピュータ以外のコンピュータは1つの親を持
つが、1つまたはそれ以上の子供を持つことができることが認識される。
【0021】 一般に、マルチキャスト・ツリーのリーフ・ノードを形成するコンピュータは
、上位レベルにあるコンピュータに論理的に接続されているが、これには下位レ
ベルのどのコンピュータもリーフ・ノードを形成するどのコンピュータも論理的
に接続されていない(つまり、リーフ・ノードを形成するコンピュータ11(R
)(a)(b)...(1))。リーフ・ノードを形成するコンピュータ11(
R)(a)(b)...(1)は、ツリー内のどのレベルにあるコンピュータに
も接続することができる。バランスをとる必要のないツリー、つまりルート・ノ
ードを形成するコンピュータ11(R)と、ツリーのリーフ・ノードを形成する
各種コンピュータ11(R)(a)(b)...(1)との間には様々な数のレ
ベルがあり、ツリー20を構成する各種の非リーフ・ノードには様々な数の子供
があることが認識される。したがって、たとえば、ルート・ノードを形成するコ
ンピュータ11(R)と、リーフ・ノードを形成するコンピュータ11(R)(
a)(b)...(11)との間のレベルの数は、コンピュータ11(R)と、
リーフ・ノードを形成する他のコンピュータ11(R)(a)(b)...(1 2 )との間のレベルの数と異なることがあり、さらに、リーフ・ノードを形成す
るすべてのコンピュータ11(1)との間にも同様のことが言える。各参照番号
11(R)(a)、11(R)(a)(b)、...11(R)(a)(b).
..(1)で、インデックス「a」、「b」、...「1」の値の順序は、ルー
ト・ノードを形成するコンピュータ・システム11(R)から、連続する下位レ
ベルのコンピュータの順に、それぞれの参照番号で識別されるコンピュータへの
ツリーを経由する論理パスを定義する。
【0022】 前述のように、マルチキャスト・メッセージ配信エラー回復ツリー20が形成
されるローカル・エリア・ネットワーク10は、複数のローカル・エリア・ネッ
トワークを含むワイド・エリア・ネットワークの一部である。1つの実施形態に
おいて、図2に示すマルチキャスト・メッセージ配信エラー回復ツリー20は、
図2の凡例「ワイド・エリア・ネットワークに関連付けられたツリーへ/から」
に関連する両方向矢印で表されるように、大規模なツリー(図示せず)のサブツ
リーを形成する。この場合、ローカル・エリア・ネットワーク10のマルチキャ
スト・メッセージ配信エラー回復ツリー20でルート・ノードを形成するコンピ
ュータ11(R)が、図2に示すように編成されたツリー20内に親を持たない
がしかし、大規模なツリーに親を持つことになる。その親、およびワイド・エリ
ア・ネットワークに形成された大規模なツリー内のそれより上位レベルにあるコ
ンピュータは、ワイド・エリア・ネットワーク内の他のローカル・エリア・ネッ
トワーク内にある場合もある。あるいは、さらに、ワイド・エリア・ネットワー
ク内に形成されたツリーの上位レベルにあるコンピュータは、ローカル・エリア
・ネットワーク10内のコンピュータを含むことがある。その場合、ローカル・
エリア・ネットワーク10内のコンピュータは、下位レベルのノードになるか、
またはマルチキャスト・メッセージ配信エラー回復ツリー20のリーフ・ノード
11(R)(a)(b)...(1)を含むことがあり、さらに、ローカル・エ
リア・ネットワーク10に形成されるマルチキャスト・メッセージ配信エラー回
復ツリー20のルート・ノードを形成するコンピュータ11(R)よりも上位レ
ベルにあるノードを含むことがある。
【0023】 マルチキャスト・メッセージ配信エラー回復ツリー20は、ネットワーク10
内の1つまたは複数のコンピュータが、ローカル・エリア・ネットワーク10を
一部に含むワイド・エリア・ネットワーク内に形成されたツリーのルート・ノー
ドを形成するコンピュータからのマルチキャスト・メッセージを受信できなかっ
た場合に、これらのコンピュータがマルチキャスト・メッセージのコピーの再送
信を効率的に要求できるメカニズムを提供するために使用される。たとえば、ツ
リー20は、ネットワーク10内のコンピュータ11(R)(1)(1)(1)
などのコンピュータが、ソース・コンピュータ11(s)である他のコンピュー
タからのマルチキャスト・メッセージを受信できなかった場合、マルチキャスト
・メッセージのコピーの再送信を要求してソース・コンピュータ11(s)宛の
「NACK」メッセージを生成するのではなく、マルチキャスト・メッセージ配
信エラー回復ツリー20の親コンピュータ11(R)(1)(1)に通信リンク
13を介して送信する「NACK」メッセージを生成することができ、「NAC
K」メッセージがマルチキャスト・メッセージのコピーを子供コンピュータ11
(R)(1)(1)(1)に供給するようこれ(つまり、親コンピュータ11(
R)(1)(1))に要求するメカニズムを提供する。その親コンピュータ11
(R)(1)(1)がマルチキャスト・メッセージのコピーを持っている場合は
、それ(つまり、親コンピュータ11(R)(1)(1))は、通信リンク13
を介してマルチキャスト・メッセージを送信する。次に、マルチキャスト・メッ
セージのコピーを要求した子供コンピュータ11(R)(1)(1)(1)は、
親コンピュータ11(R)(1)(1)によって送信されたマルチキャスト・メ
ッセージを受信することができる。ローカル・エリア・ネットワーク10内の他
のコンピュータ11(n)も、前回受信していない場合には、マルチキャスト・
メッセージを受信して使用することができ、ローカル・エリア・ネットワーク内
のその他のコンピュータ11(n)、つまり前回メッセージを受信しているコン
ピュータは、このメッセージを無視することができる。親コンピュータ11(R
)(1)(1)は、マルチキャスト・メッセージを送信する場合、その送信をロ
ーカル・エリア・ネットワーク10に制限するtime to live値を伴
うメッセージを送信して、そのメッセージがマルチキャスト・メッセージをすで
に受信しているワイド・エリア・ネットワークの他の部分に送信されないように
することが望ましい。
【0024】 一方、コンピュータ11(R)(1)(1)がマルチキャスト・メッセージの
コピーを持たない場合、通信リンク13を介してその親コンピュータ11(R)
(1)にコピーを要求する「NACK」メッセージを生成する。そのコンピュー
タ11(R)(1)がマルチキャスト・メッセージのコピーを持っている場合に
は、それ(コンピュータ11(R)(1))は、前述のように通信リンク13を
介してマルチキャスト・メッセージを送信し、その子供コンピュータ11(R)
(1)(1)および孫コンピュータ11(R)(1)(1)と、前回そのメッセ
ージを受信していない他のコンピュータ11(n)にマルチキャスト・メッセー
ジを供給する。同様に、コンピュータ11(R)(1)がマルチキャスト・メッ
セージのコピーを持たない場合には、今度はこれが、通信リンク13を介してそ
の親、つまりマルチキャスト・ツリー20のルート・ノードを形成するコンピュ
ータ11(R)にコピーを要求する「NACK」メッセージを生成する。コンピ
ュータ11(R)が要求されたマルチキャスト・メッセージのコピーを持つ場合
には、前述のように通信リンク13を介してマルチキャスト・メッセージを送信
する。
【0025】 ただし、コンピュータ11(R)(1)からの要求を受信した後、マルチキャ
スト・メッセージ配信エラー回復ツリー20のルート・ノードを形成するコンピ
ュータ11(R)が、要求されたメッセージのコピーを持たないと判断した場合
には、コピーを入手しようと試みる。先に述べたように、ローカル・エリア・ネ
ットワーク10がワイド・エリア・ネットワークの一部を形成し、マルチキャス
ト・メッセージ配信エラー回復ツリー20がワイド・エリア・ネットワーク内に
形成された大規模なツリーのサブツリーを形成する1つの実施形態においては、
マルチキャスト・メッセージ配信エラー回復ツリー20内にルート・ノードを形
成するコンピュータ11(R)がメッセージのコピーを持たない場合には、大規
模なツリーのその親にあたるワイド・エリア・ネットワーク内のコンピュータあ
ての「NACK」メッセージを生成する。ツリーの子供からこのような「NAC
K」メッセージを受信する各コンピュータは、要求されたメッセージのコピーを
持つかどうか判断し、(i)持つ場合にはマルチキャスト・メッセージを送信す
るが、(ii)持たない場合にはその親に送信する「NACK」メッセージを生
成するこのプロセスは、ワイド・エリア・ネットワーク内に形成されたツリーの
ルート・ノードを構成するコンピュータ、つまりそのメッセージのソース・コン
ピュータ11(s)に「NACK」メッセージが到達するまで継続される。
【0026】 マルチキャスト・メッセージ配信エラー回復ツリー20、およびワイド・エリ
ア・ネットワークに形成される関連ツリーの利用は、マルチキャスト・メッセー
ジのソース・コンピュータ11(s)に送信される「NACK」メッセージの数
を大幅に減少させる上で役立つことが理解されるであろう。マルチキャスト・メ
ッセージが特定の宛先コンピュータによって受信されない場合には、1つの宛先
コンピュータにとどまらず、多数の宛先コンピュータ11(d)がマルチキャス
ト・メッセージを受信しない可能性は非常に高い。その場合には、マルチキャス
ト・メッセージを受信できなかった宛先コンピュータが「NACK」メッセージ
を1つだけ生成する。そうすることで、たとえば、マルチキャスト・メッセージ
配信エラー回復ツリー20内のノードを形成するコンピュータが、マルチキャス
ト・メッセージを受信できなかったため、あるいはその子供の1つからマルチキ
ャスト・メッセージを要求する「NACK」メッセージを受信したことを受けて
、ツリー20内のその親あてに特定のマルチキャスト・メッセージのコピーを要
求する「NACK」メッセージをすでに生成してあり、後に同じマルチキャスト
・メッセージを要求する別の子供からの「NACK」メッセージを受信した場合
、その親あてに同じマルチキャスト・メッセージに対する「NACK」メッセー
ジを別に生成する必要はない。さらに、宛先コンピュータ11(d)によって生
成された「NACK」メッセージは、マルチキャスト・メッセージを生成したソ
ース・コンピュータ11(s)に転送するのではなく、マルチキャスト・メッセ
ージ配信エラー回復ツリー20内のそれぞれの親、あるいはワイド・エリア・ネ
ットワーク内で大規模なツリー内のツリーに形成されたその親に宛てられるもの
である。
【0027】 さらに、マルチキャスト・メッセージ配信エラー回復ツリー20内、あるいは
ワイド・エリア・ネットワーク内に形成された大規模なツリー内にノードを形成
する各コンピュータは、限られた数、つまりそれぞれのツリー内のその子供の数
に相当する数の「NACK」メッセージを受信する。以下で説明するように、マ
ルチキャスト・メッセージ配信エラー回復ツリー20の構築と同時に、ツリー2
0でノードを形成する各コンピュータは、ツリー20を構築中に収容できる子供
の最大数を決定することができる。いかなる場合でも、マルチキャスト・メッセ
ージのソース・コンピュータ11(s)、およびマルチキャスト・メッセージ配
信エラー回復ツリー20またはワイド・エリア・ネットワーク内に形成された大
規模なツリーにノードを形成するコンピュータを含むどのコンピュータも、マル
チキャスト・メッセージを受信できなかった場合に過度に多数の「NACK」メ
ッセージを受信することはなく、「NACK」メッセージの処理が他の処理操作
に過度にマイナスの影響を及ぼすことはない。
【0028】 1つの実施形態において、ローカル・エリア・ネットワーク10に構築された
マルチキャスト・メッセージ配信エラー回復ツリー20の上の大規模なツリーの
部分は、たとえばシステム管理者によって事前に決められ、ワイド・エリア・ネ
ットワーク内の1つのコンピュータがツリー20内のルート・ノードである親と
して選定され、ローカル・エリア・ネットワーク10内のコンピュータ11(R
)が親として識別される。しかし、ローカル・エリア・ネットワーク10内のコ
ンピュータ11(n)は、ローカル・エリア・ネットワーク10のマルチキャス
ト・メッセージ配信エラー回復ツリー20の論理的編成を自ら決定することもで
きる。ローカル・エリア・ネットワーク10内のマルチキャスト・メッセージ配
信エラー回復ツリー20を構築する際にコンピュータ11(n)によって実行さ
れる操作については、図4に示される流れ図と併せて以下で説明する。一般に、
コンピュータ11(n)は、ノード選定メッセージ・タイプ、ノード広告メッセ
ージ・タイプ、子供請求メッセージ・タイプの3つのメッセージ・タイプを利用
する。マルチキャスト・メッセージ配信エラー回復ツリー20の構築は、複数の
反復により進行する。その反復にはそれぞれ、ノード選定段階および子供請求段
階の2つの段階が含まれる。最初の反復において、あるコンピュータがツリー2
0のルート・ノードとして選定され、それ以降の反復ごとに、複数の追加コンピ
ュータ11(n)がツリー20に追加される。それぞれの反復において、コンピ
ュータ11(n)は、ノード選定段階中にはノード選定メッセージ・タイプのメ
ッセージ、子供請求段階中にはノード広告メッセージ・タイプのメッセージを使
用する。子供請求メッセージ・タイプのメッセージの使用については、以下で説
明する。
【0029】 図3Aは、各反復のノード選定段階中に本発明の1つの実施形態においてコン
ピュータ11(n)によって使用されるノード選定メッセージ30の構造を示し
ている。一般に、各反復において、マルチキャスト・メッセージ配信エラー回復
ツリーのノードとなり、反復に「関与している」と言われる、各コンピュータ1
1(n)は、ツリー内のノードとなる適合性(以下で説明)を識別するノード選
定メッセージをマルチキャストする。ノード選定メッセージはまた、反復中に選
定されるいくつかのノードを識別する。コンピュータ11(n)は基本的に、反
復の終了時にノードとして自らを選定する。図3Aを参照すると、ノード選定メ
ッセージ30には、ヘッダ部分31およびデータ部分32が含まれる。ヘッダ部
分31は、メッセージ・タイプ識別子、ソースおよび宛先アドレス、time
to live値を含むメッセージ転送プロトコル情報を含んでいる。ヘッダ部
分31内のメッセージ・タイプ識別子は、ノード選定タイプとしてメッセージを
識別し、ソース・アドレスはノード選定メッセージを生成して送信した特定のコ
ンピュータ11(n)を識別し、宛先アドレス識別子はローカル・エリア・ネッ
トワーク10を構成するコンピュータ11(n)のマルチキャスト・アドレスを
識別する。time to live値は、ノード選定メッセージがローカル・
エリア・ネットワーク内のみで送信されるようにするため選定される。
【0030】 データ部分32は、優先順位フィールド33、容量フィールド34、コンピュ
ータ・システム識別子フィールド35、ノード数フィールド36および選定間隔
フィールド37を含めて、ツリー20内のノードとなるべきコンピュータ11(
n)を選定する際の反復中に使用されるいくつかのフィールドを含んでいる。優
先順位フィールド33、容量フィールド34、コンピュータ・システム識別子フ
ィールド35は、反復中にノードとなる相対的適合性において関与コンピュータ
をランク付けする役割を果たす値を含んでいる。特に、優先順位フィールドには
、ノード選定メッセージを生成するノードとすべきコンピュータ11nの相対的
優先順位度を識別する優先順位値を含んでいる。優先順位フィールド33で使用
される優先順位値の例としては、たとえば、最高の「must be」ノード値
、比較的高い「eager to be」ノード値、比較的低い「reluct
antly would be」ノード値がある。さらに、最低の「leaf
only」ノード値は、マルチキャスト・メッセージ配信エラー回復ツリー20
内のリーフとしてのみ稼働しようとするコンピュータ11(n)に割り当てるこ
とができる。この場合、そのコンピュータ11(n)は、反復のノード選定段階
に関与することはない。容量フィールド37は、コンピュータ11(n)が収容
できる子供の数を識別する子供容量値を含んでいる。コンピュータ・システム識
別子フィールド35は、ローカル・エリア・ネットワーク10内のコンピュータ
11(n)を識別するコンピュータ・システム識別子を含んでいる。1つの実施
形態において、コンピュータ・システム識別子は、コンピュータ11(n)のネ
ットワーク・アドレスをからなる。
【0031】 ノード・フィールド36の数値には、反復中にノードとして選定されるコンピ
ュータ11(n)の数を識別する値を含んでいる。したがって、マルチキャスト
・メッセージ配信エラー回復ツリー20内のルート・ノードの役割を果たすコン
ピュータが選定される最初の反復において、ノード・フィールド36の数値に含
まれる値は「1」になる。マルチキャスト・メッセージ配信エラー回復ツリー2
0内のノードとして稼働する追加のコンピュータを選定するために引き続き反復
が必要になる場合は、ツリー20のルート・ノードとして先に選定されたコンピ
ュータ11(R)が、それ以降の反復においてノードとして選定されるコンピュ
ータ11(n)の数を識別する値を供給する。以上の操作は、その後の反復全体
を通じて続行する。
【0032】 最後に、選定間隔フィールド37は、それぞれのメッセージを生成するコンピ
ュータ・システムによるノード選定メッセージの送信の時間間隔を識別する。
【0033】 前述のように、優先順位フィールド33、容量フィールド34、コンピュータ
・システム識別子フィールド35の値は、反復中にノードとして選定される相対
的適合性に関して関与コンピュータ11(n)をランク付けするために使用され
る。一般に、ランク付けは、第1に優先順位値に基づき、より高い優先順位値を
持つコンピュータ11nがより適合性が高いとみなされ、低い優先順位値を持つ
コンピュータがより適合性が低いとみなされるようになっている。同じ優先順位
値を持つコンピュータ11(n)の間の適合性については、収容できる子供の数
を識別するそれぞれの容量値を基に判断される。つまり、優先順位値によって決
められたランク付けの中で、より高い容量値を持つコンピュータ11(n)がよ
り適合性が高いとみなされ、より低い容量値を持つコンピュータ11(n)がよ
り適合性が低いとみなされる。最後に、同じ優先順位値および容量値を持つコン
ピュータ11(n)の中では、適合性のランク付けは、それぞれのコンピュータ
・システム識別子に基づいて決められる。各コンピュータ・システム識別子は、
少なくともローカル・エリア・ネットワーク内のコンピュータ11(n)間では
一意であるため、同一の優先順位値および容量値を持つローカル・エリア・ネッ
トワーク10内のコンピュータ間のランク付けを行なう手段として、多少任意的
にコンピュータ・システム識別子値の使用が選択される。
【0034】 優先順位値、容量値、コンピュータ・システム識別子値がすべて数値で、高い
数値によってそれぞれ表される高い優先順位、容量およびコンピュータ・システ
ム識別子値と、低い数値によって表される低い優先順位、容量およびコンピュー
タ・システム識別子値を備える場合、コンピュータは、<PRI_VAL|CA
P_VAL|CSID_VAL>として統一適合性値「S」を生成することがで
きる。ここで、「PRI_VAL」は優先順位値のフィールドを表し、「CAP
_VAL」は容量値のフィールドを表し、「CSID_VAL」はコンピュータ
・システム識別子値のフィールドを表し、「|」は連結演算を表し、それぞれの
フィールドを同じビット数を持つすべてのコンピュータ11nからのノード選定
メッセージで使用する。各コンピュータ11(n)は、コンピュータ11(n)
よりも高い適合性値を持つローカル・エリア・ネットワーク10内のコンピュー
タの数に関して、その適合性ランク付けを決定する。
【0035】 図3Bは、本発明の1つの実施形態において、各反復の第2段階中に使用され
るノード広告メッセージ40の構造を示している。特に、ノード広告メッセージ
40は、マルチキャスト・メッセージ配信エラー回復ツリー20内のノードであ
ると判断したコンピュータ11(n)によって使用され、他のコンピュータをそ
こにツリー20の子供として論理的に接続するために利用できることをローカル
・エリア・ネットワーク10内の他のコンピュータに通知する。その接続におい
て、ノード広告メッセージ40を送信するコンピュータ11(n)は、コンピュ
ータ11(n)のステータスに関する情報を他のコンピュータに提供する。これ
は(すなわち他のコンピュータが)そのコンピュータ11(n)に論理的に接続
すべきかどうかを判断するために使用することができる。
【0036】 図3Bを参照すると、ノード広告メッセージ40は、ヘッダ部分41およびデ
ータ部分42を含んでいる。ヘッダ部分41は、メッセージ・タイプ識別子、ソ
ースおよび宛先アドレス、time to live値を含むメッセージ転送プ
ロトコル情報を含んでいる。ヘッダ部分41内のメッセージ・タイプ識別子は、
ノード通知タイプとしてメッセージを識別し、ソース・アドレスはノード広告メ
ッセージを生成して送信した特定のコンピュータ11(n)を識別し、宛先アド
レスはマルチキャスト・アドレスを識別する。time to live値はノ
ード広告メッセージがローカル・エリア・ネットワーク内のみに送信されるよう
に選択される。
【0037】 データ部分42は、メッセージ40を生成するコンピュータ11(n)の論理
接続の利用可能性に関してローカル・エリア・ネットワーク10内の他のコンピ
ュータに通知する際の反復中に使用されるいくつかのフィールドを有し、優先順
位フィールド43、容量フィールド44、コンピュータ・システム識別子フィー
ルド45、広告間隔フィールド46、子供数フィールド47、接続フィールド4
8、ノード数フィールド49、ステータス・フィールド50を始めとする、複数
のフィールドを含んでいる。優先順位フィールド43、容量フィールド44、コ
ンピュータ・システム識別子フィールド45は、前述のようにノード選定メッセ
ージ30のフィールド33、34、35のそれぞれの値に対応する優先順位、容
量、およびコンピュータ・システム識別子値を含んでいる。広告間隔フィールド
46は、ノード広告メッセージ40を生成する特定のコンピュータ11(n)に
より、ノード広告メッセージ40の送信の時間間隔を識別する。
【0038】 ノード広告メッセージ40の子供数フィールド47の数値は、特定のコンピュ
ータ11(n)がノード広告メッセージ40を送信するとき、特定のコンピュー
タ11(n)が現在論理的に接続されている他のコンピュータの数を識別する値
を含んでいる。ノード広告メッセージ40をコンピュータ11(n)から受信す
るコンピュータは、コンピュータ11(n)の過剰容量値を判断することができ
、これはフィールド44の容量値とフィールド47の子供の数値の間の相違を判
断することによって、追加の子供を受け入れるコンピュータ11(n)の能力の
判断基準である。コンピュータは、いくつかの目的で過剰容量値を使用すること
があり、マルチキャスト・メッセージ配信エラー回復ツリー20内の他のノード
を形成するコンピュータの過剰容量値に関してその過剰容量に基づき特定のコン
ピュータ11(n)に対する子供として論理的に接続するよう試みるべきかどう
か判断する場合もこれに含まれる。過剰容量値の他の使用については、以下で説
明する。
【0039】 ノード広告メッセージ40の接続フィールド48は、接続フラグを含み、これ
はセットされている場合、ノード広告メッセージ40を生成するコンピュータ1
1(n)がマルチキャスト・メッセージ配信エラー回復ツリー20に論理的に接
続されていることを示し、それ以外の場合にはコンピュータがツリー20に論理
的に接続されていないことを示す。ノードの数フィールド49は、ツリー20に
選択されているノードの現在数を識別する。ステータス・フィールド50は、ツ
リー20内のコンピュータのステータスに付いての情報を提供する。1つの実施
形態において、ステータス・フィールド50は通常「アクティブな」値を持ち、
これがノード広告メッセージ40を生成するコンピュータ11(n)が現在ツリ
ー20内のノードであることを示す。しかし、以下で説明するように、ステータ
ス・フィールド50も「resigning」値を持つことができ、これがノー
ド広告メッセージ40を生成するコンピュータ11(n)がツリー20内のノー
ドであるが、ノードからリーフに転換する過程にあることを示す。コンピュータ
11(n)によって送信されたノード広告メッセージ40のステータス・フィー
ルド50が「resigning」ステータス示す場合には、ツリー内のその子
供はツリー内のノードである他のコンピュータに論理的に接続を試みることが必
要になる。
【0040】 前述のように、マルチキャスト・メッセージ配信エラー回復ツリー20の構築
は、複数の反復により進行する。一般に、最初の反復は、ローカル・エリア・ネ
ットワーク10のコンピュータ11(n)の少なくとも1つがオンにされ、初期
化された時点で開始する。コンピュータ11(n)が初期化された後、これがマ
ルチキャスト・メッセージ配信エラー回復ツリー20内のノードとなることので
きる優先順位値に関連付けられている場合、つまり「leaf only」以外
の優先順位値に関連付けられている場合、定期的なノード選定メッセージ30の
送信を開始する。ノード選定メッセージ30の送信を開始した後の選択されてい
る時間間隔内に、コンピュータ11(n)がネットワーク内の他のコンピュータ
からノード選定メッセージ30を受信しない場合には、それ(つまり、コンピュ
ータ11(n))は、マルチキャスト・メッセージ配信エラー回復ツリー20内
のノードとして「選定された」ものと判断し、ノード選定メッセージ30の送信
を中止する。選択されたノードであるコンピュータ11(n)は、この時点でツ
リー20内の唯一のノードであるので、これ(つまり、コンピュータ11(n)
)はツリー20内のルート・ノード11(R)を構成することにになる。コンピ
ュータ11(n)は、選定されたノードであると判断した後、ローカル・エリア
・ネットワーク10内の他のコンピュータに子供を受け入れることが可能である
ことを通知するため、ノード広告メッセージ40の送信を開始する。オンにされ
て初期化されたローカル・エリア・ネットワーク10内の他のコンピュータが、
ノード広告メッセージ40を受信した後、コンピュータ11(n)と通信して、
論理的にツリー20内のコンピュータ11(n)の子供になろうと試みることが
できる。オンにされ初期化されて、ローカル・エリア・ネットワークのマルチキ
ャスト・メッセージ配信エラー回復ツリー20内のノードとして稼働できるコン
ピュータがネットワーク内に他にない場合に、この状況が生じる(つまり、コン
ピュータ11(n)が選択されている時間間隔内にローカル・エリア・ネットワ
ーク内の他のコンピュータからノード選定メッセージ30を受信しない)ことが
ある。さらに、ツリー20内のノードとして「選定された」後、コンピュータ1
1(n)は、事前に決められている「選定ノード」増分値だけ、その優先順位値
を増分させることができるが、その目的については以下で説明する。
【0041】 一方、選択されている時間間隔内にコンピュータ11(n)がローカル・エリ
ア・ネットワーク10内の少なくとも1つの他のコンピュータ11(n’)から
ノード選定メッセージ30を受信する場合、受信したノード選定メッセージから
の適合値(つまり前述のように、フィールド33、34、35からの優先順位値
、容量値およびコンピュータ・システム識別子値の連結)を、送信するノード選
定メッセージ30で提供する独自の適合値(つまり、その優先順位値、容量値お
よびコンピュータ・システム識別子値の連結)と比較する。コンピュータ11(
n)は、その適合値が受信したノード選定メッセージの適合値よりも低いと判断
した場合には、ノード選定メッセージの送信を中止する。一方、その適合値が受
信したノード選定メッセージの適合値よりも高いと判断した場合には、ノード選
定メッセージの送信を続行する。他のコンピュータ11(n’)は同様の操作を
行い、その適合値がコンピュータ11(n)の適合値よりも高いと判断した場合
には、ノード選定メッセージの送信を続行するが、その適合値がコンピュータ1
1(n)の適合値よりも低いと判断した場合には、ノード選定メッセージの送信
を中止する。
【0042】 「leaf only」以上の優先順位レベルを持つローカル・エリア・ネッ
トワーク内の各コンピュータは、同様の操作を実行する。選択されている時間間
隔の満了時点で、コンピュータの1つが、まだノード選定メッセージを送信中で
ある場合には、ローカル・エリア・ネットワーク内の高い適合性値を持つコンピ
ュータからノード選定メッセージを受信してないことになるので、これ(つまり
、送信中のコンピュータ)は「選定された」ノードであると判断し、この場合に
はツリー20内のルート・ノードは、ツリー20内のコンピュータ11(R)(
図2を参照)となる。コンピュータ11(R)は選定されたノードであると判断
した後、ノード選定メッセージ30の送信を中止し、ノード広告メッセージ40
の送信を開始して、子供を受け入れ可能であることをローカル・エリア・ネット
ワーク10内の他のコンピュータに通知する。オンにされ初期化されたローカル
・エリア・ネットワーク10内の他のコンピュータは、ノード広告メッセージ4
0を受信した後、コンピュータ11(R)と通信して、ツリー20内の選定され
たコンピュータの子供になろうと試みることができる。さらに、コンピュータ1
1(n)は、事前に決められている「選定ノード」増分値だけ、その優先順位値
を増分させることができる
【0043】 マルチキャスト・メッセージ配信エラー回復ツリー20のルート・ノードを形
成するコンピュータ11(R)が、ローカル・エリア・ネットワーク10内の他
のコンピュータとの通信中に、他のすべてのコンピュータをリーフとして収容す
る容量があると判断した場合には、その時点で他のコンピュータに論理的に接続
することができる。一方、コンピュータ11(R)が、収容能力以上のコンピュ
ータが子供となることを要求していると判断した場合には、これ(つまり、コン
ピュータ11(R))はツリー構築プロセスの第2の反復を開始して、マルチキ
ャスト・メッセージ配信エラー回復ツリー20の追加ノードの選定を行えるよう
にする。追加ノードは、ルート・レベルより下位のツリー20内の1つまたは複
数のレベルを構成する。第2の反復を開始するため、コンピュータ11(R)は
ノード選定メッセージ30の送信を再開する。この反復において、コンピュータ
11(R)によって生成されたノード選定メッセージ30は、選定される新たな
ノードの数に対応する数量だけ、フィールド36に1よりも大きいノードの数値
を含むことになる。コンピュータ11(R)によって生成されたノード選定メッ
セージにおいて、フィールド33の優先順位値は、増分された優先順位値を反映
する、つまり元の優先順位値が事前に決められている「選定ノード」増分値だけ
増分されているということである。
【0044】 ツリー内のノードとなることのできるローカル・エリア・ネットワーク10内
の他のコンピュータ(つまり、優先順位値が「leaf only」よりも高い
、コンピュータ11(R)以外の各コンピュータ)もそれぞれ、ノード選定メッ
セージ30の送信を再開する。この場合、他のコンピュータはそれぞれ、そのノ
ード選定メッセージのフィールド33から35の各自の優先順位、容量、コンピ
ュータ・システム識別子値を使用するが、送信するノード選定メッセージで、コ
ンピュータ11(R)から受信したノード選定メッセージ30のフィールド36
から37のノード数および選定間隔値を使用する。ノード選定メッセージの送信
中、各コンピュータは、他のコンピュータからノード選定メッセージを受信し、
その適合性値を各自の適合性値と比較する。ノード選定メッセージ30を送信し
ているコンピュータが、フィールド36のノード数値に対応する数の他のコンピ
ュータから、その(つまり、そのコンピュータの)適合性値よりも高い適合性値
を持つノード選定メッセージ30を受信したと判断した場合、これ(つまり、そ
のコンピュータ)はノード選定メッセージ30の送信を中止する。この状況に至
るまで、そのコンピュータは選択されている時間間隔の満了までノード選定メッ
セージの送信を続行する。選択された時間間隔の満了時にノード選定メッセージ
30の送信を続行しているコンピュータの数は、ノード・フィールド36で指定
されているノードの数に対応し、選択されている時間間隔の満了時にノード選定
メッセージ30を送信しているコンピュータは、ルート・ノードを含む、ツリー
20内のノードとなるよう選定されるコンピュータのセットを構成する。
【0045】 前回の反復中にルート・ノードに選定されたコンピュータ11(R)は、選定
されたノードの間で最高の適合性値(優先順位値が事前に決められている「選択
ノード」増分値だけ増分されていても)を持つことがあるが、そうである必要は
ない。コンピュータ11(R)よりも高い適合性値に関連付けられた1つまたは
複数のコンピュータがオンにされて初期化され、ノード選定メッセージの送信を
開始している場合もあるからである。前回の反復中にルート・ノードとして選定
されたコンピュータ11(R)が、「選定ノード」増分値だけ増分されて、他の
コンピュータよりも高い優先順位レベルを持つ場合には、これはルート・ノード
のままである。しかし、他のコンピュータが、十分に高い優先順位レベルを持ち
、その適合性値がコンピュータ11(R)の適合性値よりも高い場合には、他の
コンピュータが現在の反復中に選定されたルート・ノードとなる。実際は、十分
な数の新たに送信中のコンピュータが以前選定されたコンピュータ11(R)よ
りも高い適合性値を持つ場合には、そのコンピュータ11(R)は「選定解除」
される、つまり反復に選定されたノードではなくなる。その場合、最高の適合性
値を持つコンピュータが、それ以降の操作の新たなルート・ノード11(R)と
して選定され、他の選定されたコンピュータはツリー20の第2レベルを含む(
しかし、必ずしもこれに制限される必要はない)他の部分を形成する。しかし、
ツリー20のルート・ノードに前回選定されたコンピュータ11(R)の優先順
位レベルを「選定ノード」増分値だけ増分することによって、前回の選定が「膠
着状態」になる、つまりコンピュータ11(R)の元の増分前の優先順位レベル
よりも他のコンピュータの優先順位レベルが、前回の選定を覆すほど十分に高い
場合をのぞいては、選定の状況に影響はないということである。
【0046】 その後、選択されたコンピュータは、最初の反復と同様に、ノード広告メッセ
ージ40を送信して、子供を受け入れることができることをローカル・エリア・
ネットワーク10内の他のコンピュータに知らせる。ツリー20のルート・ノー
ドを形成するコンピュータ11(R)以外の、反復中に選定されたコンピュータ
は、コンピュータ11(R)によって送信されたノード広告メッセージ40を受
信し、論理的に接続されるように通信を行うことによって、ツリーの第2レベル
を形成する。新たに選定されたノードがコンピュータ11(R)に論理的に接続
することができない場合、別の新たに選定されたコンピュータに論理的に接続し
て、ツリーの第3レベルを開始することができる。他の選定されなかったコンピ
ュータは、選定されたコンピュータと通信して、論理接続の形成を交渉する。
【0047】 ルート・ノードが、ツリーの追加ノードが必要であると判断した場合、その後
の反復を通じてその操作を繰り返すことができる。各反復において、ツリー20
内のノードを形成するように新たに選定されたコンピュータは、事前に決められ
ている「選定ノード」値だけその優先順位値を増分し、前回選定されたコンピュ
ータが「選定解除」される場合、その優先順位値を元の優先順位値に戻す。こう
した操作は、ローカル・エリア・ネットワーク10内のすべてのコンピュータ1
1(n)がノードまたはリーフとしてマルチキャスト・メッセージ配信エラー回
復ツリー20の部分を形成するまで継続されることが望ましい。さらに、ルート
・ノード11(R)は、ワイド・エリア・ネットワークのツリー内のローカル・
エリア・ネットワークに指定されたノードに子供として論理的に接続する。マル
チキャスト・メッセージ配信エラー回復ツリー20が構築された後、ツリー内の
ノードを構成するコンピュータ11(n)は、引き続きノード広告メッセージ4
0を送信するので、新たに初期化されたコンピュータは、論理的に接続するマル
チキャスト・メッセージ配信エラー回復ツリー20内のノードを識別することが
できる。
【0048】 前述のように、ローカル・エリア・ネットワーク内のコンピュータ11(n)
は、オンにされ初期化された後、「leaf only」以外の優先順位値を持
つ場合には、ノード選定メッセージの送信を開始する。マルチキャスト・メッセ
ージ配信エラー回復ツリー20またはその部分が、上記のように構築されてすで
に存在する場合には、コンピュータ11(n)は前述のツリー構築操作を繰り返
す。これらの操作において、ツリー内のノードを形成するコンピュータ11(n
)は、「選定ノード」増分値だけ増分した優先順位値を使用して、新たに初期化
されたコンピュータが十分に高い優先順位値を持つ場合以外は、新たなツリー構
築操作中にこのツリー20が乱されることのないようにする。新たに初期化され
たコンピュータがツリー20のルート・ノードを形成するコンピュータ11(R
)に関連付けられた優先順位値よりも高い優先順位値を持つ場合は、これ(つま
り、新たに初期化されたコンピュータ)は、そのツリーの新しいルート・ノード
となる。その場合には、新しいルート・ノードを形成するコンピュータ11(R
’)は、ワイド・エリア・ネットワークのツリー内のローカル・エリア・ネット
ワークに指定されたノードに子供として論理的に接続し、コンピュータ11(R
)は、新しいルート・ノードを形成するコンピュータ11(R’)に論理的に接
続する。
【0049】 さらに、マルチキャスト・メッセージ配信エラー回復ツリー20がローカル・
エリア・ネットワーク内に構築された後、コンピュータ11(n)は、定期的に
選定プロセスを繰り返す。その操作において、優先順位レベルが「leaf o
nly」以外のコンピュータ11(n)は、ノード選定メッセージを送信するこ
とができる。コンピュータ11(n)によって送信されたノード選定メッセージ
は、コンピュータが現在ツリー20内のノードを形成している場合には「選定ノ
ード」増分値だけ増分され、コンピュータがツリー20内のノードを形成してい
ない場合には増分されていない優先順位レベルを含む、コンピュータの適合性値
を含んでいる。他のコンピュータがノード選定メッセージを受信する場合、それ
ぞれノード選定メッセージの送信再開をすでに始めていなければ、送信を再開し
、前述のノード選定プロセスが繰り返される。
【0050】 1つの実施形態において、マルチキャスト・メッセージ配信エラー回復ツリー
20が確立された後、ツリー20内のノードを形成するコンピュータ11(n)
は、ツリーを最適化しようと試みる。その場合、ツリー20内のノードを形成す
る最低の適合性値を持つコンピュータ11(nLSV)は、ノードとして稼働を続
けるべきか、あるいはそこに論理的に接続されている子供がツリーの他のノード
を形成するコンピュータに論理的に接続できるようにすべきかどうか判断する。
これを行うために、コンピュータ11(nLSV)は、ツリー20内のノードを形
成する他のすべてのコンピュータの過剰容量がその子供の数値と等しいかまたは
それ以上であるかどうか判断する。その場合、コンピュータ11(nLSV)は「
resigning」としてそのステータスを識別するノード広告メッセージ4
0を送信する。コンピュータ11(nLSV)の子供は、このようなノード広告メ
ッセージを受信すると、ツリー20内の他のノードを形成するコンピュータに論
理的に接続しようと試みる。このような子供が、他のコンピュータに論理的に接
続した後、コンピュータ11(nLSV)との論理接続を提供し、コンピュータ1
1(nLSV)は送信されたノード広告メッセージ内の子供の数値を減らすことが
できる。子供が他のコンピュータに論理的に接続された時点と、それ(つまり、
子供)がコンピュータ11(nLSV)の論理接続を提供した時点の間に、それ(
つまり、子供)は両コンピュータに効果的に接続され、一方または両方のコンピ
ュータに「NACK」メッセージを送信する。これは、すべてのコンピュータ1
1(n)が確実にマルチキャスト・メッセージ配信エラー回復ツリー20に論理
的に接続されるようにする。コンピュータ11(nLSV)の子供がすべてコンピ
ュータ11(nLSV)との接続を提供したのち、そのコンピュータ11(nLSV
はマルチキャスト・メッセージ配信エラー回復ツリー20内のリーフを構成し、
ノード広告メッセージ40の送信を中止する。これらの操作は、低い適合性値を
持つノードである後続のコンピュータに対して複数の反復を通じて、繰り返すこ
とができる。
【0051】 以上の背景をもとに、本発明に関連してコンピュータ11(n)により行われ
る操作について、図4Aから4Gと併せて説明する。一般に、図4と併せて説明
される操作には、前述のように、反復中にコンピュータ11(n)が実行する、
以下のようないくつかのシーケンスが含まれる。 (i)ノード選定メッセージの送信とともにコンピュータ11(n)によって
維持されるノード選定メッセージ送信側によって行われる操作を表す、ノード選
定メッセージ送信シーケンス(図4Aおよび4B) (ii)ノード選定メッセージの受信とともにコンピュータ11(n)によっ
て維持されるノード選定メッセージ受信側によって行われる操作を表す、ノード
選定メッセージ受信シーケンス(図4Cおよび4D) (iii)適宜親と子供に各々コンピュータ11(n)を論理的に接続するこ
ととともにコンピュータ11(n)によって維持されるツリー編成構成要素によ
って行われる操作を表す、ツリー編成シーケンス(図4Eから4G)
【0052】 前述のように、コンピュータ11(n)はノード選定メッセージ30の送信を
、特定のノード選定メッセージ時間に対し、以下のいずれかのタイミングで開始
する。 (i)オンまたは初期化された後 (ii)マルチキャスト・メッセージ配信エラー回復ツリー20が前回構築さ
れた後の選択された時間、または (iii)別のコンピュータからのノード選定メッセージの受信に応答して したがって、図4Aを参照すると、コンピュータ11(n)は、オンにされて初
期化された後(ステップ100)、最初に「leaf only」(ステップ1
01)よりも高い優先順位レベルを持つかどうか判断する。コンピュータ11(
n)がステップ101において否定の判断を行った場合、すなわち、コンピュー
タ11(n)が「Leaf only」の優先順位レベルを有する場合、ローカ
ル・エリア・ネットワーク10に構築されたマルチキャスト・メッセージ配信エ
ラー回復ツリー20においてリーフとしてのみ稼働する。その場合、コンピュー
タ11(n)は、マルチキャスト・メッセージ配信エラー回復ツリー20内のノ
ードを形成するコンピュータからのノード広告メッセージ40を待つか、または
ツリー20内のノードを形成するコンピュータがノード広告メッセージ40を送
信できるように子供請求メッセージの送信を開始することができる。
【0053】 一方、コンピュータ11(n)がステップ101において、肯定の判断を行っ
た場合、つまり、「leaf only」より高い優先順位レベルを持つ場合、
ローカル・エリア・ネットワーク10内に確立されたマルチキャスト・メッセー
ジ配信エラー回復ツリー20内のノードとして稼働することができる。その場合
、コンピュータ11(n)は、ノード選定メッセージ30の送信を開始するため
の一連のステップを進める。その操作において、コンピュータ11(n)は、ノ
ード選定メッセージ期間タイマを確立して初期化し(ステップ102)、コンピ
ュータ11(n)がノード選定メッセージを送信する時間を計るために使用され
るようにする。さらに、コンピュータ11(n)は、ノード選定メッセージで使
用されるノード数値を格納するいくつかのノード・ストア(ステップ103)、
および各自の適合性値よりも高い適合性値を持つノード選定メッセージ30を受
信するコンピュータ11(n)の数をカウントするために使用されるノード・カ
ウンタ(ステップ104)を確立し初期化する。最初、ノード・カウンタは「ゼ
ロ」の値に設定される。ステップ104に続いて、コンピュータ11(n)はノ
ード数ストアに格納されているノード数値がノード・カウンタによって供給され
た値よりも高いかどうか判断する(ステップ105)。
【0054】 コンピュータ11(n)は、ステップ105において肯定の判断を行った場合
、フィールド33、34、35の優先順位、容量、コンピュータ・システム識別
子の値、フィールド36のノード数ストアからのノード数値、フィールド37の
選定間隔値を含むノード選定メッセージを送信する(ステップ106)。ステッ
プ106に続いて、コンピュータ11(n)は、コンピュータ11(n)に確立
されたデフォルト値に最初設定されている、ノード選定メッセージ送信間隔タイ
マを、ノード選択メッセージの送信の時間間隔を計るように確立して初期化する
(ステップ107)。コンピュータ11(n)が、ステップ107で確立された
ノード選定メッセージ送信間隔タイマがタイムアウトになったと判断したとき(
ステップ108)、ノード選定メッセージ時間タイマがタイムアウトしていない
と判断する場合には(ステップ109)、コンピュータ11(n)はステップ1
04に戻って別のノード選定メッセージ30を送信するかどうか判断する。コン
ピュータ11(n)は以下の判断を下すまでステップ104から109を繰り返
す。 (i)ステップ105において、ノード・カウンタによって供給された値がノ
ードの数値より大きいかまたは等しい、あるいは (ii)ステップ108において、ノード選定メッセージ時間タイマがタイム
アウトしている。
【0055】 コンピュータ11(n)がステップ105において、ノード・カウンタによっ
て供給された値がノード数値より大きいかまたは等しいと判断した場合には、マ
ルチキャスト・メッセージ配信エラー回復ツリー20内で確立されるノード数に
対応する、コンピュータ11(n)の適合性値よりも高い適合性値を持つローカ
ル・エリア・ネットワーク内の複数のコンピュータからノード選定メッセージを
受信しているので、これ(つまり、コンピュータ11(n))はノード選定メッ
セージ30の送信を中止することができる。
【0056】 コンピュータ11(n)がローカル・エリア・ネットワーク10内の別のコン
ピュータ11(n’)からノード選定メッセージ30を受信した場合(ステップ
120、図4C)、これ(つまり、コンピュータ11(n))が現在ノード選定
メッセージを送信しているかどうか最初に判断する(ステップ121)。コンピ
ュータ11(n)が、ステップ121において否定の判断を行った場合、つまり
、現在ノード選定メッセージを送信していないと判断した場合、その優先順位レ
ベルが「leaf only」よりも高ければ、コンピュータは、図4Aおよび
4Bと併せて前述したように、ノード選定メッセージの送信を開始する(ステッ
プ122)。さらに、コンピュータ11(n)は、受信したメッセージのフィー
ルド36内のノード数値が、そのノード・ストア内のノード数値よりも大きいか
どうかを判断する(ステップ123)。ステップ123においてコンピュータ1
1(n)が肯定の判断を行った場合、つまり受信したメッセージのフィールド3
6内のノード数値がそのノード・ストア内のノード数値よりも大きいと判断した
場合、ノード選定メッセージ30が受信されたコンピュータ11(n’)は、前
回構築された複数のノードを含むマルチキャスト・メッセージ配信エラー回復ツ
リー20の一部を形成する。その場合、コンピュータ11(n)は、そのノード
・ストア内のノード数値を増加させ(ステップ124)、ノード選定メッセージ
30の送信中に使用するために、ノード選定メッセージ送信間隔タイマがステッ
プ107で次に確立される時(ステップ125)に、そのノード選定メッセージ
時間間隔が、使用されるように調整する。さらに、コンピュータ11(n)は、
メッセージが受信されたコンピュータ11(n’)の適合性値がその適合性値よ
りも高いかどうか判断する(ステップ126)。ステップ126において、コン
ピュータ11(n)が肯定の判断を行った場合、次にノード選定メッセージ送信
間隔中にコンピュータ11(n’)から前回ノード選定メッセージ30を受信し
たかどうか判断し(ステップ127)、そうであれば、ノード選定メッセージの
送信を制御するために使用されるノード・カウンタを増分する(ステップ128
)。
【0057】 ステップ109(図4B)に戻り、ノード選定メッセージ時間タイマがタイム
アウトになった後、コンピュータ11(n)は、適宜親および/または子供とし
て他のコンピュータに論理的に接続することに併せて、図4Eに示される操作を
実行する。したがって、ノード選定メッセージ時間タイマがタイムアウトした後
、コンピュータ11(n)は最初に、それがツリー内のルート・ノードであるか
どうか判断する(ステップ140)。その操作において、コンピュータ11(n
)は、ノード・カウンタがゼロの値であるかどうか判断することにより、これが
ルート・ノードであるかどうか判断することができる。ノード・カウンタがゼロ
であるということは、これ(つまり、コンピュータ11(n))が、コンピュー
タ11(n)の適合性値よりも高い適合性値を持つローカル・エリア・ネットワ
ーク内の他のコンピュータからノード選定メッセージ30を受信していないこと
を示している。ステップ140において、コンピュータ11(n)が肯定の判断
を行った場合、ワイド・エリア・ネットワーク内に形成されたツリーの一部のロ
ーカル・エリア・ネットワークに割り当てられた親に論理接続を形成しようと試
みる(ステップ140)。
【0058】 一方、コンピュータ11(n)がステップ140において否定の判断を行った
場合、これがマルチキャスト・メッセージ配信エラー回復ツリー20内のルート
・ノード以外のノードであるかどうか判断する。その操作において、コンピュー
タ11(n)は、ノード・ストアに格納されているノード数値がノード・カウン
タによって供給された値よりも高いかどうか判断することができる(ステップ1
42)。コンピュータ11(n)がステップ142において肯定の判断を行った
場合、ツリー内にノードを形成する。一方、コンピュータ11(n)がステップ
140において否定の判断を行った場合、少なくとも選定されるノード数を識別
するノード数値に対応する数のローカル・エリア・ネットワーク10内の他のコ
ンピュータからノード選定メッセージ30を受信している。
【0059】 ステップ141に続いて、あるいはそのステップで肯定の判断が行われた場合
にはステップ142に続いて、コンピュータ11(n)は最初に、その優先順位
値を「選定ノード」値だけ増加させる(ステップ143)。その後、コンピュー
タ11(n)は、ノート通知メッセージの送信を開始して、コンピュータ11(
n)が他のコンピュータに子供として論理接続できることを知らせる(ステップ
144)。さらに、ステップ140において、コンピュータ11(n)がルート
・ノードではないと判断した場合、その適合性値よりも高い適合性値を決めるフ
ィールド43から45の優先順位、容量およびコンピュータ・システム識別子の
値を持つ他のコンピュータによって生成されたノード広告メッセージに応答して
、子供としてこれらに論理的に接続しようと試みることにより、ツリー20内に
それぞれレベルを確立する(ステップ145)。コンピュータ11(n)が、他
のコンピュータの親として別のコンピュータに論理的に接続した後、送信された
ノード広告メッセージのフィールド47内の子供の数値を増加させる(ステップ
146)。一方、コンピュータ11(n)が他のコンピュータの子供として別の
コンピュータに受け入れられた後、他のコンピュータに論理的に接続され、「N
ACK」メッセージの送信時に他のコンピュータの識別を省くことができ、送信
されたノード広告メッセージ40に接続済みフラグ48を設定する(ステップ1
47)。
【0060】 コンピュータ11(n)が、マルチキャスト・メッセージ配信エラー回復ツリ
ー20が確立されたことを判断した後(ステップ148)、その適合性値がツリ
ー内の選定されたノードのコンピュータの中で最低であるかどうか判断する(ス
テップ149)。コンピュータ11(n)は、たとえば、そのノード・カウンタ
によって供給された値が、ツリー20内のノードを構成するコンピュータによっ
て送信されたノード広告メッセージ40のフィールド49内のノード数値に対応
するかどうかを判断することにより、これを行うことができる。コンピュータ1
1(n)がステップ149において、肯定の判断を行った場合、他のノードを構
成するコンピュータの過剰容量が、前述のように、子供として論理的に接続され
ているコンピュータの数よりも多いかどうか判断する(ステップ150)。コン
ピュータ11(n)がステップ150において、肯定の判断を行った場合、子供
として論理的に接続されているコンピュータがあれば(ステップ151)、送信
されたノード広告メッセージ40のステータス・フィールド50の「resig
ning」の値を供給し、その子供がツリー20内のノードを形成する他のコン
ピュータに論理的に接続しようと試みられるようにする(ステップ152)。コ
ンピュータ11(n)はツリー20内のノードを形成する別のコンピュータに論
理的に接続するそれぞれの子供から通知を受信する際に(ステップ153)、送
信されるノード広告メッセージのフィールド47に示される子供の数を減少させ
(ステップ154)、子供の数がゼロまで減少したと判断した後(ステップ15
5)、ノード広告メッセージの送信を中止し(ステップ156)、その優先順位
値を「選定ノード」値だけ減少させる(ステップ157)。
【0061】 本発明によるシステムが特殊用途ハードウェアまたは汎用コンピュータ・シス
テムの全部または一部、あるいはその組合せとして構築され、適切なプログラム
によって制御されることは明らかであろう。プログラムは、全部または一部が、
従来の形でシステムの一部を含むかまたはシステムに格納されるか、あるいはプ
ログラムは、ネットワークまたは情報を従来の形で転送するための他の機構を介
してシステムに与えられることがある。さらに、システムは、システムに直接接
続できるか、またはネットワークまたは情報を従来の形で転送するための他の機
構を介して情報をシステムに転送することができるオペレータ入力エレメント(
図示せず)を使用して、オペレータによって与えられる情報によって操作され、
かつ/または他の形で制御されることが理解できよう。
【0062】 上記の説明は本発明の特定の実施形態に限定したものである。しかし、本発明
の利点の一部または全部を達成しながら、本発明に様々な変更および修正を加え
ることができることは明らかであろう。首記の請求の範囲の目的は、本発明の真
の精神および範囲内に入る上記およびそのような他の変更および修正を包含する
ことである。
【0063】 米国の特許証によって保証されることが望まれる新奇の請求の範囲を首記に示
す。
【図面の簡単な説明】
【図1】 本発明によるマルチキャスト・メッセージ配信エラー回復ツリーを確立し編成
するコンピュータを含むローカル・エリア・ネットワークの概略図である。
【図2】 例示的なマルチキャスト・メッセージ配信エラー回復ツリーにおいて論理的に
編成された、図1に示されるローカル・エリア・ネットワークの論理図である。
【図3】 本発明に関するマルチキャスト・メッセージ配信エラー回復ツリーを確立する
際に使用されるメッセージの構造を示す図である。
【図4A】〜
【図4G】 本発明によるマルチキャスト・メッセージ配信エラー回復ツリーを確立する際
に使用される、図1に示されるローカル・エリア・ネットワークにおけるコンピ
ュータによって実行される操作を示す流れ図である。
───────────────────────────────────────────────────── フロントページの続き (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),AE,AL,AM,AT,AU,AZ,BA ,BB,BG,BR,BY,CA,CH,CN,CU, CZ,DE,DK,EE,ES,FI,GB,GD,G E,GH,GM,HR,HU,ID,IL,IN,IS ,JP,KE,KG,KP,KR,KZ,LC,LK, LR,LS,LT,LU,LV,MD,MG,MK,M N,MW,MX,NO,NZ,PL,PT,RO,RU ,SD,SE,SG,SI,SK,SL,TJ,TM, TR,TT,UA,UG,UZ,VN,YU,ZA,Z W (71)出願人 901 SAN ANTONIO ROAD PALO ALTO,CA 94303,U. S.A. (72)発明者 カダンスキー,ミリアム アメリカ合衆国・01886・マサチューセッ ツ州・ウエストフォード・ウエストビュー ドライブ・165 (72)発明者 ペリマン,ラディア・ジェイ アメリカ合衆国・01720・マサチューセッ ツ州・アクトン・ハックルベリー レー ン・10 【要約の続き】 つのデバイスと通信して、そのそれぞれの子供になるの を容易にする。

Claims (42)

    【特許請求の範囲】
  1. 【請求項1】 通信リンクによって相互接続された複数のデバイスを含むデ
    ジタル・データ・ネットワークにおいてデバイスをツリー構造に論理的に編成す
    る方法であって、デバイスの各々が関連適合性値を有し、前記方法は、 A.デバイスのうち少なくとも1つのデバイスが、それぞれのデバイスの適合
    性値を含む少なくとも1つのノード選定メッセージを、通信リンクを介してブロ
    ードキャストし、ノード選定メッセージをブロードキャストするデバイスも、他
    のデバイスによってブロードキャストされたノード選定メッセージを通信リンク
    から受信し、かつその適合性値と受信されたノード選定メッセージにおける適合
    性値との比較に関連して、そのデバイスがツリー構造におけるノードに選定され
    たかどうかを決定するノード選定ステップと、 B.ツリー構造におけるノードに選定された少なくとも1つのデバイスが、少
    なくとも1つの他のデバイスと通信して、他のデバイスがツリーにおけるノード
    に選定されたデバイスの子供にするツリー確立ステップと を含む方法。
  2. 【請求項2】 ノード選定ステップとツリー確立ステップが少なくとも1回
    の反復において実行され、前記少なくとも1回の反復において、ノード選定ステ
    ップ中に、1つのデバイスがツリー構造におけるルート・ノードとしてノードに
    選定される請求項1に記載の方法。
  3. 【請求項3】 ノード選定ステップとツリー確立ステップが一連の反復にお
    いて実行され、第1の反復において、ルート・ノードはノード選定ステップ中に
    選定され、各後続の反復において、少なくとも1つの他のデバイスがツリー構造
    におけるノードとして選定される請求項2に記載の方法。
  4. 【請求項4】 前記反復のうち少なくとも1つの反復のツリー確立ステップ
    中に、ツリー構造におけるノードとして選定された少なくとも1つの他のデバイ
    スが、ルート・ノードとして選定されたデバイスと通信して、その子供になる請
    求項3に記載の方法。
  5. 【請求項5】 ルート・ノードとして選定されたデバイスが、各後続の反復
    中に選定されるべき追加のノードの数を決定する請求項3に記載の方法。
  6. 【請求項6】 ルート・ノードとして選定されたデバイスが、第1の反復の
    後の各反復中に送信されるその少なくとも1つのノード選定メッセージにおいて
    、それぞれの反復中に選定されるべき追加のノードの数を識別するいくつかのノ
    ード値を送信する請求項5に記載の方法。
  7. 【請求項7】 第1の反復の後の各反復中に、少なくとも1つのノード選定
    メッセージをブロードキャストするデバイスの各々が、ルート・ノードとして選
    定されたデバイスによって送信されたノード値の数に対応するいくつかのノード
    値を送信する請求項6に記載の方法。
  8. 【請求項8】 各デバイスに優先順位値が割り当てられ、それぞれのデバイ
    スの適合性値がその優先順位値の関数である請求項1に記載の方法。
  9. 【請求項9】 各デバイスが、それが収容することができる子供の数に関連
    する関連容量値を有し、それぞれのデバイスの適合性値がその優先順位値の関数
    である請求項1に記載の方法。
  10. 【請求項10】 前記少なくとも1つのデバイスが、初期化された後の少な
    くとも1つのノード選定メッセージのブロードキャストを開始することができる
    ようになる請求項1に記載の方法。
  11. 【請求項11】 前記少なくとも1つのデバイスが複数のノード選定メッセ
    ージをブロードキャストすることができるようになり、その少なくとも1つのデ
    バイスは、その少なくとも1つのデバイスに関連する適合性値よりも高い適合性
    値を有する別のデバイスからノード選定メッセージをその少なくとも1つのデバ
    イスが受信した場合に、ノード選定メッセージのブロードキャストを停止する請
    求項1に記載の方法。
  12. 【請求項12】 ツリー確立ステップ中に、ツリーにおけるノードに選定さ
    れた少なくとも1つのデバイスは、ツリーにおけるノードとしてそれが利用でき
    ることを示すノード広告メッセージを、通信リンクを介してブロードキャストす
    ることができるようになる請求項1に記載の方法。
  13. 【請求項13】 ツリーにおけるノードに選定された少なくとも1つのデバ
    イスは、少なくとも1つの他のデバイスによって送信された子供勧誘メッセージ
    の受信に応答してノード広告メッセージをブロードキャストする請求項12に記
    載の方法。
  14. 【請求項14】 少なくとも1つの他のデバイスが、ノード広告メッセージ
    を受信した後で、ツリーにおけるノードに選定された少なくとも1つのデバイス
    と通信して、その子供になる請求項12に記載の方法。
  15. 【請求項15】 通信リンクによって相互接続された複数のデバイスを含む
    デジタル・データ・ネットワークにおいてデバイスをツリー構造に論理的に編成
    するシステムであって、デバイスの各々が関連適合性値を有し、前記システムは
    、 A.複数のデバイスのうち少なくとも1つのデバイスが、それぞれのデバイス
    の適合性値を含む少なくとも1つのノード選定メッセージを、通信リンクを介し
    てブロードキャストでき、かつノード選定メッセージをブロードキャストするデ
    バイスが、他のデバイスによってブロードキャストされたノード選定メッセージ
    を通信リンクから受信し、かつその適合性値と受信されたノード選定メッセージ
    における適合性値との比較に関連して、そのデバイスがツリー構造におけるノー
    ドに選定されたかどうかを決定するように構成されたノード選定エレメントと、 B.ツリー構造におけるノードに選定された少なくとも1つのデバイスが、ツ
    リー構造におけるノードに選定された少なくとも1つのデバイスと通信して、ツ
    リーにおけるノードに選定されたデバイスの子供になるように構成されたツリー
    確立エレメントとを含むシステム。
  16. 【請求項16】 ノード選定ステップとツリー確立ステップが少なくとも1
    回の反復において動作するように構成され、前記少なくとも1回の反復において
    、ノード選定ステップ中に、1つのデバイスがツリー構造におけるルート・ノー
    ドとしてノードに選定される請求項15に記載のシステム。
  17. 【請求項17】 ノード選定ステップとツリー確立ステップが一連の反復に
    おいて動作するように構成され、第1の反復において、ルート・ノードはノード
    選定ステップ中に選定され、各後続の反復において、少なくとも1つの他のデバ
    イスがツリー構造におけるノードとして選定される請求項16に記載のシステム
  18. 【請求項18】 ノード選定エレメントは、前記反復のうち少なくとも1つ
    の反復のツリー確立ステップ中に、ツリー構造におけるノードとして選定された
    少なくとも1つの他のデバイスが、ルート・ノードとして選定されたデバイスと
    通信して、その子供になるように構成されている請求項17に記載のシステム。
  19. 【請求項19】 ノード選定エレメントは、ルート・ノードとして選定され
    たデバイスが、各後続の反復中に選定されるべき追加のノードの数を決定するこ
    とができるようにする請求項17に記載のシステム。
  20. 【請求項20】 ノード選定エレメントは、ルート・ノードとして選定され
    たデバイスが、第1の反復の後の各反復中に送信されるその少なくとも1つのノ
    ード選定メッセージにおいて、それぞれの反復中に選定されるべき追加のノード
    の数を識別するいくつかのノード値を送信することができるようにする請求項1
    9に記載のシステム。
  21. 【請求項21】 ノード選定エレメントは、第1の反復の後の各反復中に、
    少なくとも1つのノード選定メッセージをブロードキャストするデバイスの各々
    が、ルート・ノードとして選定されたデバイスによって送信されたノード値の数
    に対応するいくつかのノード値を送信することができるようにする請求項20に
    記載のシステム。
  22. 【請求項22】 各デバイスに優先順位値が割り当てられ、それぞれのデバ
    イスの適合性値がその優先順位値の関数である請求項15に記載のシステム。
  23. 【請求項23】 各デバイスが、それが収容することができる子供の数に関
    連する関連容量値を有し、それぞれのデバイスの適合性値がその優先順位値の関
    数である請求項15に記載のシステム。
  24. 【請求項24】 前記ノード選定エレメントは、少なくとも1つのデバイス
    が、初期化された後の少なくとも1つのノード選定メッセージのブロードキャス
    トを開始する請求項15に記載のシステム。
  25. 【請求項25】 前記ノード選定エレメントは、少なくとも1つのデバイス
    が、複数のノード選定メッセージをブロードキャストすることができるようにし
    、またその少なくとも1つのデバイスに関連する適合性値よりも高い適合性値を
    有する別のデバイスからノード選定メッセージをその少なくとも1つのデバイス
    が受信した場合に、ノード選定メッセージのブロードキャストを停止することが
    できるようにする請求項15に記載のシステム。
  26. 【請求項26】 ツリー確立エレメントは、ツリーにおけるノードに選定さ
    れた少なくとも1つのデバイスが、ツリーにおけるノードとしてそれが利用でき
    ることを示すノード広告メッセージを、通信リンクを介してブロードキャストす
    ることができるようにする請求項15に記載のシステム。
  27. 【請求項27】 ツリー確立エレメントは、ツリーにおけるノードに選定さ
    れた少なくとも1つのデバイスが、少なくとも1つの他のデバイスによって送信
    された子供勧誘メッセージの受信に応答してノード広告メッセージをブロードキ
    ャストすることができるようにする請求項26に記載のシステム。
  28. 【請求項28】 ツリー確立エレメントは、少なくとも1つの他のデバイス
    が、ノード広告メッセージを受信した後で、ツリーにおけるノードに選定された
    少なくとも1つのデバイスと通信して、その子供になることができるようにする
    請求項26に記載のシステム。
  29. 【請求項29】 コンピュータと接続して使用するコンピュータ・プログラ
    ム製品であって、そのコンピュータ・プログラム製品は、通信リンクによって相
    互接続された複数のデバイスを含むデジタル・データ・ネットワークにおいて、
    前記コンピュータがそれ自体をツリー構造に編成することができ、コンピュータ
    の各々が関連適合性値を有し、前記コンピュータ・プログラム製品は、 A.コンピュータのうち少なくとも1つのコンピュータが、それぞれのデバイ
    スの適合性値を含む少なくとも1つのノード選定メッセージを、通信リンクを介
    してブロードキャストすることができるように構成され、またノード選定メッセ
    ージをブロードキャストするデバイスが、他のデバイスによってブロードキャス
    トされたノード選定メッセージを通信リンクから受信し、かつその適合性値と受
    信されたノード選定メッセージにおける適合性値との比較に関連して、そのデバ
    イスがツリー構造におけるノードに選定されたかどうかを決定することができる
    ように構成されたノード選定モジュールと、 B.ツリー構造におけるノードに選定された少なくとも1つのコンピュータが
    、ツリー構造におけるノードに選定された少なくとも1つのコンピュータと通信
    して、ツリーにおけるノードに選定されたデバイスの子供になることができるよ
    うに構成されたツリー確立モジュールとを含むコンピュータ・プログラム製品。
  30. 【請求項30】 ノード選定モジュールとツリー確立モジュールが少なくと
    も1回の反復において動作するように構成され、前記少なくとも1回の反復にお
    いて、ノード選定ステップ中に、1つのコンピュータがツリー構造におけるルー
    ト・ノードとしてノードに選定される請求項29に記載のコンピュータ・プログ
    ラム製品。
  31. 【請求項31】 ノード選定モジュールとツリー確立モジュールが一連の反
    復において動作するように構成され、第1の反復において、ルート・ノードはノ
    ード選定ステップ中に選定され、各後続の反復において、少なくとも1つの他の
    コンピュータがツリー構造におけるノードとして選定される請求項30に記載の
    コンピュータ・プログラム製品。
  32. 【請求項32】 ノード選定モジュールは、前記反復のうち少なくとも1つ
    の反復のツリー確立ステップ中に、ツリー構造におけるノードとして選定された
    少なくとも1つの他のコンピュータが、ルート・ノードとして選定されたコンピ
    ュータと通信して、その子供になることができるように構成されている請求項3
    1に記載のコンピュータ・プログラム製品。
  33. 【請求項33】 ノード選定モジュールは、ルート・ノードとして選定され
    たコンピュータ、各後続の反復中に選定されるべき追加のノードの数を決定する
    ことができるようにする請求項31に記載のコンピュータ・プログラム製品。
  34. 【請求項34】 ノード選定モジュールは、ルート・ノードとして選定され
    たコンピュータ、第1の反復の後の各反復中に送信されるその少なくとも1つの
    ノード選定メッセージにおいて、それぞれの反復中に選定されるべき追加のノー
    ドの数を識別するいくつかのノード値を送信することができるようにする請求項
    33に記載のコンピュータ・プログラム製品。
  35. 【請求項35】 ノード選定エレメントは、第1の反復の後の各反復中に、
    少なくとも1つのノード選定メッセージをブロードキャストすることができるよ
    うになったコンピュータの各々が、ルート・ノードとして選定されたコンピュー
    タによって送信されたノード値の数に対応するいくつかのノード値を送信するこ
    とができるようにする請求項34に記載のコンピュータ・プログラム製品。
  36. 【請求項36】 各コンピュータに優先順位値が割り当てられ、それぞれの
    コンピュータの適合性値がその優先順位値の関数である請求項29に記載の方法
  37. 【請求項37】 各コンピュータが、それが収容することができる子供の数
    に関連する関連容量値を有し、それぞれのコンピュータの適合性値がその優先順
    位値の関数である請求項29に記載のコンピュータ・プログラム製品。
  38. 【請求項38】 前記ノード選定モジュールは、少なくとも1つのコンピュ
    ータが、初期化された後の少なくとも1つのノード選定メッセージのブロードキ
    ャストを開始することができるようにする請求項29に記載のコンピュータ・プ
    ログラム製品。
  39. 【請求項39】 前記ノード選定モジュールは、少なくとも1つのコンピュ
    ータが、複数のノード選定メッセージをブロードキャストすることができるよう
    にし、またその少なくとも1つのコンピュータに関連する適合性値よりも高い適
    合性値を有する別のコンピュータからノード選定メッセージをその少なくとも1
    つのコンピュータが受信した場合に、ノード選定メッセージのブロードキャスト
    を停止することができるようにする請求項29に記載のコンピュータ・プログラ
    ム製品。
  40. 【請求項40】 ツリー確立モジュールは、ツリーにおけるノードに選定さ
    れた少なくとも1つのコンピュータが、ツリーにおけるノードとしてそれが利用
    できることを示すノード広告メッセージを、通信リンクを介してブロードキャス
    トすることができるようにする請求項20に記載のコンピュータ・プログラム製
    品。
  41. 【請求項41】 ツリー確立エレメントは、ツリーにおけるノードに選定さ
    れた少なくとも1つのコンピュータが、少なくとも1つの他のコンピュータによ
    って送信された子供勧誘メッセージの受信に応答してノード広告メッセージをブ
    ロードキャストすることができるようにする請求項40に記載のコンピュータ・
    プログラム製品。
  42. 【請求項42】 ツリー確立モジュールは、少なくとも1つの他のコンピュ
    ータが、ノード広告メッセージを受信した後で、ツリーにおけるノードに選定さ
    れた少なくとも1つのコンピュータと通信して、その子供になることができるよ
    うにする請求項40に記載のコンピュータ・プログラム製品。
JP2000545284A 1998-04-18 1999-04-08 デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法 Pending JP2002512484A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/061,849 US6134599A (en) 1998-04-18 1998-04-18 System and method for organizing devices in a network into a tree using suitability values
US09/061,849 1998-04-18
PCT/US1999/007750 WO1999055042A1 (en) 1998-04-18 1999-04-08 System and method for establishing a multicast message delivery error recovery tree in a digital network

Publications (1)

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

Family

ID=22038544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000545284A Pending JP2002512484A (ja) 1998-04-18 1999-04-08 デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法

Country Status (5)

Country Link
US (1) US6134599A (ja)
EP (1) EP1075747A1 (ja)
JP (1) JP2002512484A (ja)
AU (1) AU3387799A (ja)
WO (1) WO1999055042A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005005821A (ja) * 2003-06-10 2005-01-06 Hitachi Ltd コンテンツ送信装置、コンテンツ受信装置およびコンテンツ伝送方法
JP2011015444A (ja) * 2010-10-07 2011-01-20 Hitachi Ltd コンテンツ送信装置、コンテンツ受信装置およびコンテンツ伝送方法

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7050432B1 (en) * 1999-03-30 2006-05-23 International Busines Machines Corporation Message logging for reliable multicasting across a routing network
US6889254B1 (en) * 1999-03-30 2005-05-03 International Business Machines Corporation Scalable merge technique for information retrieval across a distributed network
US7693042B1 (en) * 1999-06-23 2010-04-06 At&T Mobility Ii Llc Intelligent presentation network management system
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
US7117273B1 (en) 2000-01-25 2006-10-03 Cisco Technology, Inc. Methods and apparatus for maintaining a map of node relationships for a network
US6993587B1 (en) 2000-04-07 2006-01-31 Network Appliance Inc. Method and apparatus for election of group leaders in a distributed network
US6748447B1 (en) 2000-04-07 2004-06-08 Network Appliance, Inc. Method and apparatus for scalable distribution of information in a distributed network
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
EP1148426A1 (en) * 2000-04-17 2001-10-24 Gladitz, Wilhelm A method for constructing objects in a computing environment
US20050237949A1 (en) * 2000-12-21 2005-10-27 Addessi Vincent M Dynamic connection structure for file transfer
US6807578B2 (en) * 2001-03-14 2004-10-19 International Business Machines Corporation Nack suppression for multicast protocols in mostly one-way networks
WO2002087172A1 (en) * 2001-04-20 2002-10-31 Motorola, Inc. Protocol and structure for self-organizing network
US7251222B2 (en) * 2001-05-15 2007-07-31 Motorola, Inc. Procedures for merging the mediation device protocol with a network layer protocol
US7010622B1 (en) * 2001-06-08 2006-03-07 Emc Corporation Scalable communication within a distributed system using dynamic communication trees
US8086738B2 (en) * 2007-05-24 2011-12-27 Russell Fish Distributed means of organizing an arbitrarily large number of computers
US7096356B1 (en) * 2001-06-27 2006-08-22 Cisco Technology, Inc. Method and apparatus for negotiating Diffie-Hellman keys among multiple parties using a distributed recursion approach
US7333486B2 (en) * 2001-07-16 2008-02-19 International Business Machines Corporation Methods and arrangements for monitoring subsource addressing multicast distribution trees
US7152113B2 (en) * 2001-10-19 2006-12-19 Sun Microsystems, Inc. Efficient system and method of node and link insertion for deadlock-free routing on arbitrary topologies
US7203743B2 (en) * 2001-12-28 2007-04-10 Nortel Networks Limited Hierarchical tree-based protection scheme for mesh networks
US20050169183A1 (en) * 2002-06-14 2005-08-04 Jani Lakkakorpi Method and network node for selecting a combining point
US7769839B2 (en) * 2002-06-21 2010-08-03 International Business Machines Corporation Method and structure for autoconfiguration of overlay networks by automatic selection of a network designated router
US7305430B2 (en) * 2002-08-01 2007-12-04 International Business Machines Corporation Reducing data storage requirements on mail servers
CA2500166A1 (en) * 2002-10-29 2004-05-13 British Telecommunications Public Limited Company Method and apparatus for network management
US7313101B2 (en) * 2002-12-20 2007-12-25 Hewlett-Packard Development Company, L.P. Need-based filtering for rapid selection of devices in a tree topology network
US7995497B2 (en) * 2003-02-27 2011-08-09 Hewlett-Packard Development Company, L.P. Spontaneous topology discovery in a multi-node computer system
US6915212B2 (en) * 2003-05-08 2005-07-05 Moac, Llc Systems and methods for processing complex data sets
US7596595B2 (en) * 2003-06-18 2009-09-29 Utah State University Efficient unicast-based multicast tree construction and maintenance for multimedia transmission
US7373394B1 (en) * 2003-06-30 2008-05-13 Cisco Technology, Inc. Method and apparatus for multicast cloud with integrated multicast and unicast channel routing in a content distribution network
US6996470B2 (en) * 2003-08-01 2006-02-07 Moac Llc Systems and methods for geophysical imaging using amorphous computational processing
KR100556885B1 (ko) * 2003-09-18 2006-03-03 엘지전자 주식회사 동보 메시지 구조 및 전달 방법
JP4982031B2 (ja) 2004-01-16 2012-07-25 株式会社日立製作所 コンテンツ送信装置、コンテンツ受信装置およびコンテンツ送信方法、コンテンツ受信方法
JP4645049B2 (ja) 2004-03-19 2011-03-09 株式会社日立製作所 コンテンツ送信装置およびコンテンツ送信方法
US7552122B1 (en) * 2004-06-01 2009-06-23 Sanbolic, Inc. Methods and apparatus facilitating access to storage among multiple computers
US7821972B1 (en) * 2005-09-29 2010-10-26 Cisco Technology, Inc. System and method for building large-scale layer 2 computer networks
US20070153317A1 (en) * 2005-12-30 2007-07-05 Sap Ag Method and system for providing location based electronic device configuration and confirmation
US7876706B2 (en) * 2006-02-28 2011-01-25 Motorola, Inc. Method and apparatus for root node selection in an ad hoc network
US20070204021A1 (en) * 2006-02-28 2007-08-30 Ekl Randy L Method and apparatus for myopic root node selection in an ad hoc network
US7697456B2 (en) * 2006-02-28 2010-04-13 Motorola, Inc. Method and apparatus for omniscient root node selection in an ad hoc network
US7570927B2 (en) * 2006-06-16 2009-08-04 Motorola, Inc. Decentralized wireless communication network and method having a plurality of devices
WO2008062630A1 (fr) * 2006-11-21 2008-05-29 Nec Corporation Procédé d'agencement de système sans fil, système d'agencement de système sans fil, appareil et programme d'agencement de système sans fil
JP2008293197A (ja) * 2007-05-23 2008-12-04 Brother Ind Ltd 情報配信システム、同システムに用いる端末装置及びプログラム、並びに情報処理方法
US7872990B2 (en) * 2008-04-30 2011-01-18 Microsoft Corporation Multi-level interconnection network
US7872993B2 (en) * 2008-10-30 2011-01-18 Alcatel Lucent Method and system for classifying data packets
US8520676B2 (en) * 2010-11-09 2013-08-27 Cisco Technology, Inc. System and method for managing acknowledgement messages in a very large computer network
US9219682B2 (en) * 2012-11-05 2015-12-22 Cisco Technology, Inc. Mintree-based routing in highly constrained networks
GB2518425A (en) * 2013-09-20 2015-03-25 Tcs John Huxley Europ Ltd Messaging system
US11082336B1 (en) 2020-01-15 2021-08-03 Cisco Technology, Inc. Automatic configuration and connection of heterogeneous bandwidth managed multicast fabrics

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355371A (en) * 1982-06-18 1994-10-11 International Business Machines Corp. Multicast communication tree creation and control method and apparatus
US4864559A (en) * 1988-09-27 1989-09-05 Digital Equipment Corporation Method of multicast message distribution
US5684961A (en) * 1995-04-28 1997-11-04 Sun Microsystems, Inc. System for defining multicast message distribution paths having overlapping virtual connections in ATM networks and assigning identical labels to overlapping portions of the virtual channels
US5805578A (en) * 1995-10-27 1998-09-08 International Business Machines Corporation Automatic reconfiguration of multipoint communication channels

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005005821A (ja) * 2003-06-10 2005-01-06 Hitachi Ltd コンテンツ送信装置、コンテンツ受信装置およびコンテンツ伝送方法
JP2011015444A (ja) * 2010-10-07 2011-01-20 Hitachi Ltd コンテンツ送信装置、コンテンツ受信装置およびコンテンツ伝送方法

Also Published As

Publication number Publication date
US6134599A (en) 2000-10-17
WO1999055042A1 (en) 1999-10-28
EP1075747A1 (en) 2001-02-14
AU3387799A (en) 1999-11-08

Similar Documents

Publication Publication Date Title
JP2002512484A (ja) デジタル・ネットワークにおいてマルチキャスト・メッセージ配信エラー回復ツリーを確立するためのシステムおよび方法
JP3187006B2 (ja) マルチキャスト情報を分配するソースノードから開始されるマルチキャスト接続に参加する方法
US5805825A (en) Method for semi-reliable, unidirectional broadcast information services
US6714966B1 (en) Information delivery service
RU2408064C2 (ru) Маршрутизация в одноранговых сетях
CA2100533C (en) Method and system for synchronizing computer mail user directories
US7240105B2 (en) Distributed multicast caching technique
CN102449954B (zh) 用于将单播客户机请求转换为多播客户机请求的系统和方法
JP2000504863A (ja) ロードレベルに基づいてクライアントノードをサーバーノードに接続する方法および装置
JP2003501881A (ja) マルチキャストする方法および装置
US8923313B2 (en) Efficient transmission of data to multiple network nodes
US20040088309A1 (en) Method of constructing and managing overlay multicast tree on Internet
JPH0775354B2 (ja) 情報量削減方法
JP2000507428A (ja) 有限メモリコンピュータシステム上におけるクライアント管理フロー制御方法及び装置
JP2003534749A (ja) Tcp/ipによるscsiを使用するデータ複製方法および装置
JPH1040226A (ja) 分散コンピューティング環境におけるグループ・リーダ回復の方法
JP2002512483A (ja) 格付けを利用して回復ノードを選択する方法と装置
CN101764831A (zh) 一种流媒体数据共享方法、共享系统和流媒体节点
US7653755B1 (en) Method and apparatus for determining communication paths
US7203768B2 (en) Managing network traffic using hashing functions
JPH1040227A (ja) 分散コンピューティング環境におけるグループ・リーダ回復のためのシステム
Jones et al. Protocol design for large group multicasting: the message distribution protocol
US7075895B1 (en) System and method for facilitating discovery of network addresses and selected charateristics of computer systems and the like which are connected in digital data networks
US20020198972A1 (en) Pre-boot multicast address management protocol for a computer network
JPH11163943A (ja) システムソフトウェアのデータパケットの分配方法