JP3923931B2 - 論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置 - Google Patents

論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置 Download PDF

Info

Publication number
JP3923931B2
JP3923931B2 JP2003323683A JP2003323683A JP3923931B2 JP 3923931 B2 JP3923931 B2 JP 3923931B2 JP 2003323683 A JP2003323683 A JP 2003323683A JP 2003323683 A JP2003323683 A JP 2003323683A JP 3923931 B2 JP3923931 B2 JP 3923931B2
Authority
JP
Japan
Prior art keywords
servant
participation
participation request
slot
request message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003323683A
Other languages
English (en)
Other versions
JP2005094264A (ja
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute Ltd
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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2003323683A priority Critical patent/JP3923931B2/ja
Publication of JP2005094264A publication Critical patent/JP2005094264A/ja
Application granted granted Critical
Publication of JP3923931B2 publication Critical patent/JP3923931B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、仮想的な論理ネットワーク上にトランスポート層の機能を提供するプログラム、装置及び方法に関し、具体的には、TCP/IP(Transmission Control Protocol / Internet Protocol)ネットワークなどの通信ネットワーク上に物理的ネットワーク構成にとらわれないツリー構造の論理ネットワークを自律的に構成し、その論理ネットワーク上でのユニキャスト通信やマルチキャスト通信を可能にするプログラム、装置及び方法に関する。
ユニキャスト通信(1対1の通信)については、従来の技術においても問題なく利用できている。一方、マルチキャスト通信(1対nの同報通信)については、従来の技術はいくつかの課題を抱えている。以下に従来技術とその課題を示す。
IPマルチキャスト(ネットワーク層)では、ルータなどのネットワーク機器がIPマルチキャスト通信をサポートしている必要がある。また、それらネットワーク機器の設定・維持のためのコストが発生する。
UDPブロードキャスト(トランスポート層)では、サブネット単位などの物理的なネットワーク構成に依存した範囲での同報しか行えない(例えば、非特許文献1参照)。
中継サーバを介した同報通信(アプリケーション層)では、中継サーバの導入・維持のためのコストが発生する。また、中継サーバの障害への対応が困難である。
ファイル共有等のP2P(Peer to Peer)アプリケーション(アプリケーション層)では、ノード間をアドホックな方法で接続することによって、論理ネットワークを構成する。よって、無秩序なネットワーク構成となり、通信効率が非常に悪く、リアルタイムな通信に適用できない。
竹下隆史他著「マスタリングTCP/IP入門 第2版」オーム社 平成10年5月25日発行 83頁
従来のシステム構築においては、前記従来技術のデメリットについては不可避なものとして受け入れた上で、システム要件により合致する技術を選択して採用していた。
本発明は、TCP/IP(Transmission Control Protocol / Internet Protocol)ネットワークなどの通信ネットワーク上に物理的ネットワーク構成にとらわれないツリー構造の論理ネットワークを自律的に構成し、その論理ネットワーク上でのユニキャスト通信やマルチキャスト通信を可能にするプログラム、装置及び方法の提供を目的とする。
本発明の第1の特徴は、論理ネットワークへの参加を要求するサーバントの参加要求方法であって、(1)前記論理ネットワークにおけるシードサーバントのサーバントIDと、自己の自サーバントIDとを記憶するステップと、(2)前記シードサーバントに前記自サーバントIDを添付した参加要求電文を送信するステップと、(3)前記参加要求電文に対する参加応答電文を受信するステップと、(4)前記参加応答電文に含まれている応答区分を読み取り、前記応答区分が、(4−1)「参加許可」を示す場合は、前記シードサーバントをアップサーバントとして記憶し、(4−2)「他のサーバントへ参加要求電文を送信する」ことを指示する場合は、当該他のサーバントへ参加要求電文を新たに送信するステップと、を有することにある。
本発明の第2の特徴は、論理ネットワークへの参加を受け付けるサーバントの参加受付方法であって、(1)前記論理ネットワークにおける前記参加受け付けサーバントのサーバントIDと、前記参加受け付けサーバントを頂点とする部分木の値域と、パーティションと、各スロットと、前記各スロットが空か又は前記各スロットが空でない場合は当該スロットが割り当てられている既割り当てサーバントの既割り当てサーバントIDと、を記憶するステップと、(2)参加を要求するサーバントから、前記参加要求サーバントの参加要求サーバントIDを含む参加要求電文を受信するステップと、(3)前記参加要求電文から前記参加要求サーバントIDを取り出すステップと、(4)前記参加要求サーバントIDに対応する参加要求サーバントID値に基づいて、前記参加受け付けサーバントの前記部分木の値域と、前記パーティションと、前記各スロットとの更新の要否を判断し、更新が必要と判断された場合にこれら値域を更新するステップと、(5)前記参加要求サーバントID値が属すべき割り当て候補スロットを求めるステップと、(6)前記割り当て候補スロットが空か調べ、(6−1)前記割り当て候補スロットが空の場合は、「参加許可」を示す参加応答電文を、(6−2)前記割り当て候補スロットが空でない場合は、「前記既割り当てサーバントへ参加要求電文を送信する」ことを指示する参加応答電文を、前記参加要求サーバントへ送信するステップと、を有することにある。
本発明の第3の特徴は、マルチキャストメッセージ送信方法であって、メッセージを受信したサーバントが、(1)論理ネットワークにおけるアップリンクの存否と、前記アップリンクのサーバントIDと、ダウンリンクの存否と、前記ダウンリンクのサーバントIDとを記憶するステップと、(2)受信した前記メッセージを上位アプリケーションにわたすステップと、(3)前記アップリンクの存否を読み取り、前記アップリンクが存在する場合は前記アップリンクに前記メッセージを送信するステップと、(4)前記ダウンリンクの存否を読み取り、前記ダウンリンクが存在する場合は前記ダウンリンクに前記メッセージを送信するステップと、を有することにある。
本発明の第4の特徴は、ユニキャストメッセージ送信方法であって、メッセージを受信したサーバントが、(1)自サーバントIDと、パーティションと、前記パーティションに含まれる各スロットと、アップサーバントと、前記各スロットに属するダウンサーバントが存在する場合は当該ダウンサーバントとを記憶するステップと、(2)受信した前記メッセージから宛先サーバントIDを読み取るステップと、(3)前記宛先サーバントIDと前記自サーバントIDとを比較するステップと、(4)前記宛先サーバントIDと前記自サーバントIDとが一致する場合に、前記メッセージを上位アプリケーションにわたすステップと、(5)前記宛先サーバントIDと前記自サーバントIDとが一致しない場合に、前記宛先サーバントIDのサーバントID値を求め、前記サーバントID値と前記パーティションとを比較し、(5−1)前記サーバントID値が前記パーティションの外の場合は、前記アップサーバントに前記メッセージを送信し、(5−2)前記サーバントID値が前記パーティション内である場合は、前記アップサーバントへ前記メッセージを送信することに加えて、前記サーバントID値と前記各スロットとを比較し、前記サーバントID値が属する前記スロットの前記ダウンサーバントに前記メッセージを送信するステップと、を有することにある。
本発明の第1の特徴によれば、ネットワーク機器の種類や物理的なネットワーク構成に関わらず、論理ネットワークを構成するための参加要求方法を提供しうる。
本発明の第2の特徴によれば、ネットワーク機器の種類や物理的なネットワーク構成に関わらず、論理ネットワークを構成するための参加応答方法を提供しうる。
本発明の第3の特徴によれば、ネットワーク機器の種類や物理的なネットワーク構成に関わらず、マルチキャストメッセージの送信が可能となる。
本発明の第4の特徴によれば、ネットワーク機器の種類や物理的なネットワーク構成に関わらず、ユニキャストメッセージの送信が可能となる。
本発明の実施形態では、TCPリンクのみを用いて論理ネットワークを構成する。よって、ネットワーク機器の種類や物理的なネットワーク構成に関わらず、論理ネットワークの構成が可能である。また、この論理ネットワークはツリー構造となっており、効率的な通信を行うことができる。特に、従来のP2P技術では困難であったリアルタイム通信にも適用することができる。
本発明の実施形態の論理ネットワークは、ノードの参加・離脱に応じて自律的に構成される。従って、構成情報の管理などのコストが不要になる。また、障害発生時にも論理ネットワークの再構築が自動的に行われるため、耐障害性が高い。
(用語の定義)
本発明の実施形態を説明するために、下記の用語を定義する。
図1(a)に示すように、論理ネットワーク上の仮想的なノードを「サーバント」(Servent)11と言う。アプリケーションはサーバントを生成し、これを介して通信を行う。
論理ネットワークの「種」となるサーバントを「シードサーバント」(SeedServent)12と言う。論理ネットワークを構成するためには、少なくともひとつのシードサーバントが存在する必要がある。シードサーバントは論理ネットワークの核となるもので、シードサーバントを中心にシードサーバント以外のサーバントが連続して接続することで論理ネットワークが構成される。
サーバントを一意に識別するための識別子を「サーバントID」と言う。サーバントIDは、物理ネットワークのアドレス(IPアドレスとポート番号)から構成することができる。また、物理ネットワークのアドレスに、かかるアドレス以外の情報を付加して構成することもできる。
サーバントIDを0以上の一意の整数値に写像したものをサーバントID値と言う。サーバントID値から、サーバントIDへの逆変換が可能である必要はない。つまりサーバントID値から、サーバントIDを求めることは出来なくても良い。
本発明の実施形態においては、サーバントおよびサーバント間のTCPリンクにより構成されるツリー構造の論理ネットワークを構築する。
図1(b)に示すように、あるサーバント(図1(b)では中央のサーバント)から見て根に近い側のリンクをアップリンク(UpLink)14、葉に近い側のリンクをダウンリンク(DownLink)15と呼ぶ。また、アップリンクの先のサーバントをアップサーバント(UpServent)16、ダウンリンクの先のサーバントをダウンサーバント(DownServent)17と呼ぶ。
本発明の実施形態においては、サーバントごとのダウンリンクの最大数を既定値とする。以下、この最大数をNと表記する。以下の例では、特に指定の無い場合、Nを10としている。
(パーティションとスロット)
ある部分木を取り出した時、この部分木に含まれる全てのサーバントのサーバントID値をカバーする値域を「パーティション」(Partition)と呼ぶ。パーティションは、この部分木の頂点のサーバントにより管理・更新される。また、パーティションをN個の値域に分割したものを「スロット」(Slot)と呼ぶ。
頂点のサーバントは、各スロットにダウンリンクを割り当て、ダウンリンクの先のサーバントにそのスロットにあたるパーティションの管理をまかせる。このとき、各スロット内のダウンリンクは、最大1本となるように調整する。
(算出方法)
最小値、最大値により定義された値域を[最小値,最大値]として表記する。
部分木のサーバントID値の値域が[vmin, vmax]であるとき、
Nx × y ≦ vmin, vmax < Nx × (y + 1)
(x, yは整数 x > 0, 0 ≦ y < N)
を満たす最小のxを求める。
この部分木のパーティションは、[Nx × y , Nx × (y + 1) - 1]であり、パーティションの幅は、Nxとなる。また、スロットの幅は、Nx-1となる。
(計算例)
図2に、「サーバントID値の値域」の例を挙げて、その値域から算出された「パーティション」、「パーティションの幅」及び「スロット」を示す。なお、ダウンリンクの最大数Nは10とする。
図3(a)及び(b)にツリー全体でのパーティション計算例を示す。なお、ダウンリンクの最大数Nは10とする。図中、○の中の数値はサーバントID値である。
(サーバントの参加)
論理ネットワークに接続する側のサーバントをコネクター(Connector)、接続を受ける側のサーバントをリスナー(Listener)と呼び、それぞれの処理を示す。あるサーバントは、アップ側に対する接続処理を行っている間にも、ダウン側からの接続要求を受け付けなければならない。よって、サーバントは、コネクターとしての処理とリスナーとしての処理を並行して行える必要がある。
(コネクターの処理)
図4に基づいて、コネクター処理の流れを説明する。まず、対象サーバントIDリストに、シードサーバントのサーバントIDリストの内容を代入する(S101)。
次に、対象サーバントIDリストからひとつずつ対象サーバントIDを取り出して、以下の処理を実行する(S103)。
そして、対象サーバントに接続する(S105)。
接続に成功しなかった場合はステップS103へ戻り、接続に成功した場合はステップS109へ進む(S107)。
自分のサーバントIDを添付した参加要求電文を、リスナーへ送信する(S109)。
参加応答電文をリスナーから受信する(S111)。
参加応答電文の応答区分が「OK」ならばコネクター処理を終了する(S113)。
参加応答電文の応答区分が「他のサーバントへの接続指示」であれば、参加応答電文から接続指示サーバントIDを取り出し、それを対象サーバントIDとして、ステップS105へ戻る(S115)。
(リスナーの処理)
図5に基づいて、リスナー処理の流れを説明する。
まず、参加要求電文をコネクターから受信する(S201)。
次に、参加要求電文からコネクターのサーバントIDを取り出す(S203)。
そして、コネクターのサーバントID値を使って部分木のサーバントID値の値域を更新する(S205)。
サーバントID値の値域が[a,b]で、コネクターのサーバントID値がcであるとする、そして
c<aの場合、値域は[c,b]に更新され、
b<cの場合、値域は[a,c]に更新され、
a≦c≦bの場合は、値域は更新されない。
例えば、参加要求電文受信前のサーバントID値の値域が[1,2]で、参加要求電文から取り出されたサーバントID値が「91」の場合、更新後のサーバントID値の値域は[1,91]となる。また、参加要求電文受信前のサーバントID値の値域が[18,19]で、参加要求電文から取り出されたサーバントID値が「10」の場合、更新後のサーバントID値の値域は[10,19]となる。
部分木のサーバントID値の値域からパーティションとスロットを再計算する(S207)。このときパーティションの拡張によって、スロット内に複数のダウンリンクが該当することがある。このときは2番目以降のあふれたダウンリンクを切断する。
前記のように、部分木のサーバントID値の値域が[vmin, vmax]であるとき、
Nx × y ≦ vmin, vmax < Nx × (y + 1)
(x, yは整数 x > 0, 0 ≦ y < N)
を満たす最小のxを求める。
この部分木のパーティションは、[Nx × y , Nx × (y + 1) - 1]であり、パーティションの幅は、Nxとなる。
この部分木のスロットは、
[Nx × y , Nx × y + Nx-1 - 1],
[Nx × y + Nx-1 , Nx × y + Nx-1 ×2 - 1],

[Nx × y + Nx-1 ×(N - 1), Nx × y + (Nx-1 ×N) - 1]
であり、スロットの幅は、Nx-1となる。
例えば、参加要求電文受信前のサーバントID値の値域が[1,2]、パーティションが[0,9]の場合、参加要求電文から取り出されたサーバントID値が「91」であるなら、更新後のサーバントID値の値域は[1,91]、再計算後のパーティションは[0,99]、スロットは[0,9],[10,19],[20,29],[30,39],[40,49],[50,59],[60,69],[70,79],[80,89],[90,99]となる。
例えば、参加要求電文受信前のサーバントID値の値域が[3,7]、パーティションが[0,9]、ダウンサーバントのサーバントID値が3,4,7の場合、参加要求電文から取り出されたサーバントID値が「91」であるなら、更新後のサーバントID値の値域は[3,91]、再計算後のパーティションは[0,99]、スロットは[0,9],[10,19],[20,29],[30,39],[40,49],[50,59],[60,69],[70,79],[80,89],[90,99]となる。
このとき、スロット[0,9]にはサーバントID値が3,4,7のダウンサーバントが存在することになるため、サーバントID値4,7のサーバントへのリンクは切断される。
コネクターのサーバントID値が属するスロットを求め(S209)、そのスロットが空かを判断し(S211)、そのスロットが空であれば、「OK」の応答区分を持った参加応答電文を送信して(S213)、処理を終了する。
スロットに別のサーバントが割り当てられていれば、「他のサーバントへの接続指示」の応答区分と、スロットに既に割り当てられているサーバントのサーバントIDを接続指示サーバントとして設定した参加応答電文を送信して(S215)、処理を終了する。
既に図3(a)に示す状態であるとして、図3(a)に基づいてステップS209〜S215を説明する。コネクターのサーバントID値が「6」の場合、このサーバントID値が属するスロットとしてスロット[0,9]が求まる(S209)。このスロットには別のサーバント(サーバントID値「5」)が既に割り当てられているので、「他のサーバントへの接続指示」の応答区分と、先行サーバントのサーバントID(サーバントID値「5」)を接続指示サーバントとして設定した参加応答電文を送信する(S215)。
一方、コネクターのサーバントID値が「21」の場合、このサーバントID値が属するスロットとしてスロット[20,29]が求まる(S209)。このスロットは空なので、「OK」の応答区分を持った参加応答電文を送信する(S213)。
(サーバントの離脱・リンクの切断)
物理的なネットワークの障害は、リンクの切断としてサーバントに検知される。また、サーバントの離脱についても、リンクの切断としてアップリンク側およびダウンリンク側のサーバントに検知される。リンク切断を検知したときの処理を以下に示す。
(アップリンク切断時の処理)
図6に基づいて、アップリンク切断時の処理について説明する。
以下では、説明のためにサーバントID値nのサーバントのサーバントIDをIDnと表記する。例えば、サーバントID値5のサーバントのサーバントIDをID5と表記する。
まず、シブリングサーバントIDリストを取り出す(S301)。シブリングサーバントIDリストとは、同一のアップサーバントを持った兄弟のサーバントのサーバントIDリストを意味する。このリストは、アップサーバントから随時送信されるものである。図3(a)の例では、サーバントID値「5」のサーバントのシブリングサーバントIDリストには、「ID5」と「ID13」と「ID90」が記されている。また、サーバントID値「92」のサーバントのシブリングサーバントIDリストには、「ID92」と「ID95」と「ID99」が記されている。
次に、シブリングサーバントIDリスト上の自サーバントの位置をもとめる(S303)。
そして、自サーバントが先頭のサーバントか調べる(S305)。
自サーバントがシブリングサーバントIDリストにおける先頭のサーバントであれば、コネクター処理を開始する(S307)。
自サーバントがシブリングサーバントIDリストにおける先頭のサーバントでなければ、シブリングサーバントIDリストを対象サーバントIDリストに代入し(S309)、コネクター処理を開始する(S311)。
既に図3(a)に示す状態であるとして、図3(a)に基づいてステップS301〜S311を説明する。まず、サーバントID値「90」のサーバントが離脱し、サーバントID値「92」のサーバントのアップリンクが切断された場合について説明する。サーバントID値「92」のサーバントは、シブリングサーバントIDリストを取り出す(S301)。取り出されたリストには、「ID92,ID95,ID99」のように記載されている。よって、サーバントID値「92」のサーバントは、シブリングサーバントIDリスト上における「先頭のサーバントである」(S303,305)。このため、サーバントID値「92」のサーバントは、サーバントID値「3」のシードサーバントを対象サーバントとしてコネクター処理を開始する(S307)。
次に、サーバントID値「90」のサーバントが離脱し、サーバントID値「95」のサーバントのアップリンクが切断された場合について説明する。サーバントID値「95」のサーバントは、シブリングサーバントIDリストを取り出す(S301)。取り出されたリストには、「ID92,ID95,ID99」のように記載されている。よって、サーバントID値「95」のサーバントは、シブリングサーバントIDリスト上における位置は「先頭のサーバントではない」(S303,305)。このため、サーバントID値「95」のサーバントは、シブリングサーバントIDリストを対象サーバントIDリストに代入し(S309)、サーバントID値「92」のサーバントに対してコネクター処理を開始する(S307)。
図3(b)にこれらの処理が完了した論理ネットワークの状態を示す。なお、サーバントID値「99」のサーバントも、サーバントID値「95」のサーバントと同様に、サーバントID値「92」のサーバントに対してコネクター処理を行う。
このようにして、サーバントの離脱・リンクの切断が生じても、論理ネットワークは自律的に構成される。従って、構成情報の管理などのコストが不要になる。また、障害発生時にも論理ネットワークの再構築が自動的に行われるため、耐障害性が高い。
(ダウンリンク切断時の処理)
ダウンリンク切断時は、切断されたダウンリンクが割り当てられていたスロットを求めて、そのスロットの状態を空とする。
(論理ネットワークのツリー最適化)
本実施形態では、論理ネットワークのツリーが冗長となることを防止するために、論理ネットワーク構成処理と並行して、パーティションに基づいたツリー最適化処理を行う。ツリーの最適化処理は、ツリーの頂点となるシードサーバントとそれ以外のサーバントに分担して行われる。以下に各処理を説明する。
(頂点のシードサーバントのツリー最適化処理)
1.一定時間おきに以下の処理を実行する。
1.1自サーバントのパーティション情報を添付したツリー最適化電文を作成する。
1.2全てのダウンサーバントにツリー最適化電文を送信する。
(頂点以外のサーバントのツリー最適化処理)
図7に基づいて、頂点以外のサーバントのツリー最適化処理の流れを説明する。
アップサーバントからの電文が受信されるのを待つ(S401)。
受信電文がツリー最適化電文か判断する(S403)。
ステップS403で「YES」に分岐する場合、ツリー最適化電文からアップサーバントのパーティション情報を取り出す(S405)。
自サーバントのパーティションがアップサーバントのパーティションに含まれるか判断する(S407)。なお、自サーバントのパーティションがアップサーバントのパーティションと等しい場合は「含まれない」と判断する。
ステップS407で「YES」に分岐する場合、自サーバントのパーティション情報を添付したツリー最適化電文を作成する(S409)。
全てのダウンサーバントにツリー最適化電文を送信する(S411)。
ステップS407で「NO」に分岐する場合、全てのダウンサーバントにリセット電文を送信する(S413)。
全てのダウンリンクを切断する(S415)。
自サーバントの、部分木の値域、パーティション、スロットをすべてクリアする(S417)。
ステップS403で「NO」に分岐する場合、受信電文がリセット電文か判断する(S421)。
ステップS421で「YES」に分岐する場合、コネクター処理を開始する。
なお、リセット電文受信後、アップサーバントによってアップリンクが切断されるが、コネクター処理が重複して起動することを避けるために、アップリンク切断時の処理が起動しないように制御する。
(通信メッセージのルーティング)
通信メッセージのルーティングについて説明する。
宛先を指定しない同報メッセージをマルチキャストメッセージと呼び、宛先サーバントIDを指定するメッセージをユニキャストメッセージと呼ぶ。以下にそれぞれの通信メッセージのルーティング処理を示す。
(マルチキャストメッセージのルーティング)
図8に基づいて、マルチキャストメッセージのルーティング処理について説明する。
まず、アプリケーションにメッセージをわたす(S501)。
次に、アップリンクが存在するか判断し(S503)、アップリンクが存在すれば、アップリンクにメッセージを送信する(S505)。具体的には、TCP/IPソフトにアップサーバントのポート番号とIPアドレスを、宛先ポート番号と宛先IPアドレスとして通知し、送信を依頼する。
そして、ダウンリンクが存在するか判断し(S507)、ダウンリンクが存在すれば、各ダウンリンクにメッセージを送信する(S509)。具体的には、TCP/IPソフトにダウンサーバントのポート番号とIPアドレスを、宛先ポート番号と宛先IPアドレスとして通知し、送信を依頼する。
(ユニキャストメッセージのルーティング)
図9に基づいて、ユニキャストメッセージのルーティング処理について説明する。
まず、宛先が自分自身か判断する(S601)。具体的には、メッセージヘッダに含まれる宛先サーバントIDと、自分の記憶装置103に記憶されている自分のサーバントIDとを比較し、両サーバントIDが一致すれば宛先が自分自身であると判断する。
ステップS601で「YES」に分岐する場合、アプリケーションにメッセージを渡して(S603)、処理を終了する。
ステップS601で「NO」に分岐する場合、宛先サーバントIDのサーバントID値を求める(S605)。
求めたサーバントID値が自分のパーティションの外か判断する(S607)。
ステップS607で「YES」に分岐する場合、アップリンクにメッセージを送信する(S609)。
ステップS607で「NO」に分岐する場合、該当するスロットのダウンリンクにメッセージを送信し(S611)かつ、アップリンクにメッセージを送信する(S613)。
本発明の適用システムとして「ニュース配信システム」を取り上げ、その実装方法および実施例について説明する。このニュース配信システムは、ニュース受信を待つ複数のコンピュータに、ニュース発信コンピュータからリアルタイムにニュース情報を配信するシステムである。
図10に、ニュース配信システムのシステム構成を示す。
本発明の手法を利用してニュース配信システムのための論理ネットワークを構築し、その論理ネットワーク上でのメッセージ通信を行うための通信ライブラリを「PBTC通信ライブラリ」(PBTC:Partition-Based Tree Construction)と言う。
ニュース情報発信者の指示を受けて、ニュース情報の同報配信を行うプログラムを「ニュース発信プログラム」と言う。ニュース情報は、PBTC通信ライブラリを利用してマルチキャストメッセージとして送信される。
PBTC通信ライブラリからのニュース情報の受信を待ち、受信時にコンピュータ画面にその情報を表示するプログラムを「ニュース受信プログラム」と言う。
PBTC通信ライブラリが利用する定義データを「ネットワーク定義データ」と言う。論理ネットワークの構成に必要なシードサーバントのサーバントIDリストを含む。
図10に示すように、本実施形態で使用するサーバント100は、全体を制御する主制御部(制御手段、以下「CPU」とする)101に記憶装置103が接続されている。CPU101には、また、入出力制御部105を介して送受信部107と表示装置109が接続されている。さらに、図示していないが、基本入出力システム(BIOS)などが記憶されるリードオンリーメモリ(ROM)と、プログラム領域とデータ領域を有するランダムアクセスメモリ(RAM)とがCPU101に接続されている。
記憶装置103は、ハードディスク、フレキシブルディスク、光ディスク、光磁気ディスクなどのストレージ手段であり、ニュース送信プログラム111、ニュース受信プログラム113、PBTC通信ライブラリ115、ネットワーク定義データ117などが格納されている。
図16(a)にネットワーク定義データ117の内容を示す。図16に示すように、ネットワーク定義データ117には、シードサーバントIDと、自サーバントIDと、サーバントID値の値域と、パーティション情報と、スロット情報と、アップ/ダウンサーバント情報とが含まれる。なお、ネットワーク定義データ117の全てを記憶装置103に格納しなくても良い。例えば、シードサーバントIDのみを記憶装置103に格納し、自サーバントID、サーバントID値の値域などはRAM上に保持するとしても良い。
また、記憶装置103には、図示していないが、TCP/IPなどの通信プロトコルに従ってデータの送受信が可能なオペレーティングシステム(OS)などが格納されている。
ニュース送信のみを行うサーバント100a、ニュース受信及びニュース送信を行うサーバント100b並びにニュース受信のみを行うサーバント100cは、TCP/IPネットワーク120を介してニュースを送受信する。ニュース送信のみを行うサーバント100aには、ニュース受信プログラム113は不要である。ニュース受信のみを行うサーバント100cには、ニュース送信プログラム111は不要である。
表示装置109は、ニュース受信プログラムが受信したニュースを表示する。表示装置109には、CRT(陰極線管)ディスプレイ、TFT液晶などの液晶ディスプレイが含まれる。
以下に、各プログラムモジュールの処理の流れを示す。
(PBTC通信ライブラリ)
1.サーバントの生成依頼を待つ。
2.サーバントの生成依頼を受けると以下のスレッドを起動する。
・コネクタースレッド
・リスナースレッド
・リンク切断検知スレッド
・ルーティングスレッド
3.ルーティングスレッドは、上位プログラムからのメッセージ送受信の依頼を待つ。
(ニュース発信プログラム)
1.PBTC通信ライブラリにサーバント生成依頼を行う。
2.利用者からのニュース配信指示を待つ。
3.ニュース配信指示を受けたら、ニュース情報をマルチキャストメッセージとしてPBTC通信ライブラリに送信を依頼する。
(ニュース受信プログラム)
1.PBTC通信ライブラリにサーバント生成依頼を行う。
2.PBTC通信ライブラリにメッセージ受信を依頼する。
3.メッセージの受信を待つ。
4.メッセージを受信したら、ニュース情報を取り出して、表示装置109の画面に表示する。
5.「3.メッセージの受信を待つ。」へ戻る。
ニュース配信システムの実施形態について、仮想的な事例を使って具体的に説明する。
(実施例の内容)
X社では、社内横断的なニュースを従業員へ配信するために、ニュース配信システムを利用している。ニュース発信を専門とする部署Pから、受信部署S1、S2、・・・へニュース配信を行っている。受信部署の各従業員のコンピュータは、起動時にニュース受信プログラム113が起動するように設定されている。
図11に、ニュース配信システムに関わる部分のネットワークの構成を示す。図11に示すように、発信部署Pのネットワークアドレスは192.168.1.0/24、受信部署S1のネットワークアドレスは192.168.11.0/24、受信部署S2のネットワークアドレスは192.168.12.0/24とする。
また、発信部署Pでは、ニュース配信の確認を行うためのコンピュータを2台設置しており、常にニュース受信プログラムが起動した状態となっている。なお、以下では、ポート番号は省略して表記する。ニュース配信確認コンピュータのIPアドレスを以下に示す。
192.168.1.1
192.168.1.2
これら2台のコンピュータには、論理ネットワークのシードサーバントの役割を持たせる。よって、ネットワーク定義データの内容は、以下のようになっている。
SeedServent
192.168.1.1
192.168.1.2
また、PBTCは以下のように調整されている。ダウンリンクの最大数Nは「16」、サーバントIDのIPアドレスとポート番号をそのまま6バイトの整数としてサーバントID値とする。
図12に、起動しているコンピュータの部署と、IPアドレスと、用途とを示す。図12に示すように、
発信部署PのIPアドレス192.168.1.1〜192.168.1.2のコンピュータは、ニュース受信コンピュータ兼シードサーバントであり、
発信部署PのIPアドレス192.168.1.3〜192.168.1.4のコンピュータは、ニュース発信コンピュータであり、
受信部署S1のIPアドレス192.168.11.1〜192.168.11.4のコンピュータは、ニュース受信コンピュータであり、
受信部署S2のIPアドレス192.168.12.1〜192.168.12.3のコンピュータも、ニュース受信コンピュータである。
図13に、図12に示すコンピュータの論理ネットワークの構成を示す。図13に示すように、
頂点のサーバントは、IPアドレス192.168.1.1のコンピュータのサーバントであり、
IPアドレス192.168.1.1のコンピュータのダウンサーバントは、IPアドレス192.168.1.2, 192.168.11.4, 192.168.12.2のコンピュータのサーバントであり、
IPアドレス192.168.1.2のコンピュータのダウンサーバントは、IPアドレス192.168.1.3, 192.168.1.4のコンピュータのサーバントであり、
IPアドレス192.168.11.4のコンピュータのダウンサーバントは、IPアドレス192.168.11.1〜192.168.11.3のコンピュータのサーバントであり、
IPアドレス192.168.12.2のコンピュータのダウンサーバントは、IPアドレス192.168.12.1, 192.168.12.3のコンピュータのサーバントである。
ニュース配信システムの動作を、以下のシナリオ1,2を例にとって説明する。以下では、図13の論理ネットワークが構成されている状況を前提とする。
(シナリオ1:ニュース受信コンピュータ[192.168.12.4]の起動)
ニュース受信部署S2に属するニュース受信コンピュータ[192.168.12.4]が起動し、論理ネットワークに参加するまでの動作の流れを以下に示す。
1.ニュース受信プログラムが起動し、サーバント[192.168.12.4]が生成される。
2.サーバント[192.168.12.4]は、対象サーバントリストに[192.168.1.1]と[192.168.1.2]を設定し(S101)、先頭のシードサーバントであるサーバント[192.168.1.1]のサーバントIDを取り出し(S103)、サーバント[192.168.1.1]に接続し(S105)、自サーバントID[192.168.12.4]を添付した参加要求を送信する(S109)。
3.サーバント[192.168.1.1]は、サーバント[192.168.12.4]から参加要求を受信し(S201)、参加要求からサーバント[192.168.12.4]のサーバントIDを取り出し(S203)、サーバント[192.168.12.4]のサーバントID値を使って部分木を更新し(S205)、部分木の値域からパーティションとスロットを再計算し(S207)、サーバント[192.168.12.4]のサーバントID値が属するスロットを求め(S209)、求められたスロットが空か判断し(S211)、求められたスロットに割り当てられているサーバント[192.168.12.2]への接続指示を参加応答として返す(S215)。
これによって、サーバント[192.168.1.1]のサーバントID値の値域は
[192.168.1.1, 192.168.12.3]
から
[192.168.1.1, 192.168.12.4]
へ更新される。
サーバント[192.168.1.1]のパーティションは
[192.168.0.0, 192.168.15.255]
のままである。
そして、図16(b)に示すスロット情報に基づいて、サーバント[192.168.12.4]が属するスロット[192.168.12.0, 192.168.12.255]を求める(S209)。図16(b)に示すように、スロット[192.168.12.0, 192.168.12.255]には既にサーバント[192.168.12.2]が存在する。よって、求められたスロットは空ではないと判断し(S211)、[192.168.12.2]への接続指示を参加応答として返す(S215)。
サーバント[192.168.12.4]は、サーバント[192.168.1.1]から参加応答を受信する(S111)。
参加応答の内容は「OK」ではないので、参加応答からサーバント[192.168.12.2]のサーバントIDを取り出し、このサーバントIDを新たな対象サーバントIDとし(S115)、サーバント[192.168.12.2]へ接続し(S105)、参加要求を送信する(S109)。
サーバント[192.168.12.2]は、サーバント[192.168.12.4]から参加要求を受信し(S201)、参加要求からサーバント[192.168.12.4]のサーバントIDを取り出し(S203)、サーバント[192.168.12.4]のサーバントID値を使って部分木を更新し(S205)、部分木の値域からパーティションとスロットを再計算し(S207)、サーバント[192.168.12.4]のサーバントID値が属するスロットを求め(S209)、求められたスロットが空か判断する(S211)。
具体的には、サーバント[192.168.12.2]のサーバントID値の値域は
[192.168.12.1, 192.168.12.3]
から
[192.168.12.1, 192.168.12.4]
へ更新される。
サーバント[192.168.12.2]のパーティションは
[192.168.12.0, 192.168.12.15]
のままである。
サーバント[192.168.12.4]が属するスロットは空なので、サーバント[192.168.12.2]は、接続OKの参加応答を返す(S213)。この結果、サーバント[192.168.12.4]はサーバント[192.168.12.2]のダウンサーバントとなる。
図14に、サーバント[192.168.12.4]がサーバント[192.168.12.2]のダウンサーバントとなった論理ネットワークを示す。
このように、サーバントの参加に応じて、論理ネットワークが自律的に構成される。従って、論理ネットワーク全体の構成情報を管理するなどのコストは不要である。
(シナリオ2:ニュース発信コンピュータ[192.168.1.4]からのニュース発信)
ニュース発信部署Pに属するニュース発信コンピュータ[192.168.1.4](論理ネットワークに参加ずみ)から、ニュース発信を行った場合の動作の流れを以下に示す。
ニュース発信プログラムはサーバント[192.168.1.4]を使って、ニュースをマルチキャストメッセージとして送信する。
サーバント[192.168.1.4]は、自己の記憶装置103に格納されているアップ/ダウンサーバント情報(図16(c))に基づいてアップリンクが存在するか調べ(S503)、アップリンクが存在するので、アップサーバント[192.168.1.2]へニュースをマルチキャストメッセージとして送信し(S505)、さらにダウンリンクが存在するか調べ(S507)、ダウンリンクが存在しないので、処理を終了する。
サーバント[192.168.1.2]は、ニュース受信プログラムにニュースを渡し(S501)、ローカルの記憶装置103に格納されているアップ/ダウンサーバント情報(図16(d))に基づいてアップリンクが存在するか調べ(S503)、アップリンクが存在するので、アップサーバント[192.168.1.1]へニュースをマルチキャストメッセージとして送信し(S505)、さらにダウンリンクが存在するか調べ(S507)、ダウンリンクが存在するので、ダウンサーバント[192.168.1.3]へニュースを送信する(S509)。
なお、サーバント[192.168.1.4]もダウンサーバントに該当するが、サーバント[192.168.1.4]はサーバント[192.168.1.2]が受信したニュースの送信元であるから、当該ニュースを送信する必要はない。このため、サーバント[192.168.1.4]は送信先から除かれる。つまり、ニュースを受信したサーバント[192.168.1.2]は、アップ/ダウンサーバント情報(図16(d))から送信先候補となるサーバントIDを取得するが、その送信先候補から当該ニュースの送信元であるサーバント[192.168.1.4]を除いた残りのサーバントにニュースを送信する。
サーバント[192.168.1.1]は、ニュース受信プログラムにニュースを渡し(S501)、ローカルの記憶装置103に格納されているアップ/ダウンサーバント情報(図16(e))に基づいてアップリンクが存在するか調べ(S503)、アップリンクが存在しないのでステップS507へ進み、ダウンリンクが存在するか調べ(S507)、ダウンリンクが存在するので、ダウンサーバントであるサーバント[192.168.11.4]とサーバント[192.168.12.2]へニュースを送信する(S509)。
なお、サーバント[192.168.1.2]もダウンサーバントに該当するが、サーバント[192.168.1.2]はサーバント[192.168.1.1]が受信したニュースの送信元であるから、当該ニュースを送信する必要はない。このため、サーバント[192.168.1.2]は送信先から除かれる。つまり、ニュースを受信したサーバント[192.168.1.1]は、アップ/ダウンサーバント情報(図16(e))から送信先候補となるサーバントIDを取得するが、その送信先候補から当該ニュースの送信元であるサーバント[192.168.1.2]を除いた残りのサーバントにニュースを送信する。
サーバント[192.168.11.4]は、ニュース受信プログラムにニュースを渡し(S501)、ローカルの記憶装置103に格納されているアップ/ダウンサーバント情報(図16(f))に基づいてアップリンクが存在するか調べ(S503)、アップリンクが存在するが、アップサーバント[192.168.1.1]はメッセージ送信元であるため、かかるアップサーバント[192.168.1.1]にメッセージを送信することなく、ステップS507へ進む。
そして、ダウンリンクが存在するか調べ(S507)、ダウンサーバントであるサーバント[192.168.11.1]、[192.168.11.2]、及び[192.168.11.3]へニュースを送信する(S509)。
サーバント[192.168.12.2]も、サーバント[192.168.11.4]と同様に、ダウンサーバントに該当するサーバント[192.168.12.1]、[192.168.12.3]、及びサーバント[192.168.12.4]へニュースを送信する(S509)。
図15に、マルチキャストメッセージの転送状況を示す。図15に示すように、
サーバント[192.168.1.4]からサーバント[192.168.1.2]へ、
サーバント[192.168.1.2]からサーバント[192.168.1.1],[192.168.1.3]へ、
サーバント[192.168.1.1]からサーバント[192.168.11.4],[192.168.12.2]へ、
サーバント[192.168.11.4]からサーバント[192.168.11.1],[192.168.11.2],[192.168.11.3]へ、
サーバント[192.168.12.2]からサーバント[192.168.12.1],[192.168.12.3],[192.168.12.4]へ、
マルチキャストメッセージが順次、転送される。
マルチキャストメッセージを受信した各ニュース受信プログラムは、ニュースを画面上に表示する。
このようにして、IPマルチキャスト通信をサポートしていないネットワーク機器であっても、設定・維持のためのコストをかけることなく、またサブネット単位などの物理的なネットワーク構成に依存することなく、マルチキャストが可能となる。
(a)はサーバント、シードサーバントを説明するための図、(b)はアップサーバント、ダウンサーバント、アップリンク、ダウンリンクを説明するための図である。 サーバントID値の値域、パーティション、パーティションの幅、スロットを説明するための図である。 (a)は論理ネットワーク構成とそれに対応するサーバントID値、パーティション、スロットを説明し、(b)は一部のサーバントが離脱・リンクが切断した場合について説明するための図である。 コネクター処理の流れを説明するためのフローチャートである。 リスナー処理の流れを説明するためのフローチャートである。 アップリンク切断時の処理の流れを説明するためのフローチャートである。 ツリー最適化処理の流れを説明するためのフローチャートである。 マルチキャストメッセージのルーティング処理の流れを説明するためのフローチャートである。 ユニキャストメッセージのルーティング処理の流れを説明するためのフローチャートである。 ニュース配信システムのシステム構成を示す図である。 ニュース配信システムに関わる部分のネットワークの構成を示す図である。 起動しているコンピュータの部署と、IPアドレスと、用途とを示す図である。 図12に示すコンピュータの論理ネットワークの構成を示す図である。 図13に示す論理ネットワークに、サーバント[192.168.12.4]が参加して、サーバント[192.168.12.2]のダウンサーバントとなった論理ネットワークを示す図である。 図14に示す論理ネットワークにおけるマルチキャストメッセージの転送状況を示す図である。 (a)はネットワーク定義データを説明し、(b)はスロット情報を説明し、(c)〜(f)はアップ/ダウンサーバント情報を説明するための図である。
符号の説明
101…主制御部(CPU)
103…記憶装置
105…入出力制御部
107…送受信部
109…表示装置
111…ニュース送信プログラム
113…ニュース受信プログラム
115…PBTC通信ライブラリ
117…ネットワーク定義データ

Claims (6)

  1. 論理ネットワークへの参加を要求するサーバントが、
    前記論理ネットワークにおけるシードサーバントのサーバントIDと、自己の自サーバントIDとを記憶するステップと、
    前記シードサーバントに前記自サーバントIDを添付した参加要求電文を送信するステップと、
    前記参加要求電文に対する参加応答電文を受信するステップと、
    前記参加応答電文に含まれている応答区分を読み取り、前記応答区分が、
    「参加許可」を示す場合は、前記シードサーバントをアップサーバントとして記憶し、
    「他のサーバントへ参加要求電文を送信する」ことを指示する場合は、当該他のサーバントへ参加要求電文を新たに送信するステップと、
    アップリンクが切断した場合に、ダウンサーバントが、
    予め記憶されているシブリングサーバントIDリストを読み取るステップと、
    前記シブリングサーバントIDリスト上の自サーバントの位置を探すステップと、
    前記自サーバントの位置が前記シブリングサーバントIDリスト上の先頭である場合は、前記シードサーバントに前記参加要求電文を送付し、
    前記自サーバントの位置が前記シブリングサーバントIDリスト上の先頭ではない場合は、前記シブリングサーバントIDリスト上の先頭サーバントに前記参加要求電文を送付するステップと、
    を有する参加要求方法。
  2. 論理ネットワークへの参加を受け付ける参加受け付けサーバントが、
    前記論理ネットワークにおける前記参加受け付けサーバントのサーバントIDと、前記参加受け付けサーバントを頂点とする部分木の値域と、パーティションと、各スロットと、前記各スロットが空か又は前記各スロットが空でない場合は当該スロットが割り当てられている既割り当てサーバントの既割り当てサーバントIDと、を記憶するステップと、
    参加を要求する参加要求サーバントから、前記参加要求サーバントの参加要求サーバントIDを含む参加要求電文を受信するステップと、
    前記参加要求電文から前記参加要求サーバントIDを取り出すステップと、
    前記参加要求サーバントIDに対応する参加要求サーバントID値に基づいて、前記参加受け付けサーバントの前記部分木の値域と、前記パーティションと、前記各スロットとの更新の要否を判断し、更新が必要と判断された場合にこれら値域を更新するステップと、
    前記参加要求サーバントID値が属すべき割り当て候補スロットを求めるステップと、
    前記割り当て候補スロットが空か調べ、
    前記割り当て候補スロットが空の場合は、「参加許可」を示す参加応答電文を、
    前記割り当て候補スロットが空でない場合は、「前記既割り当てサーバントへ参加要求電文を送信する」ことを指示する参加応答電文を、前記参加要求サーバントへ送信するステップと、
    を有する参加受付方法。
  3. 論理ネットワークへの参加を要求するコンピュータに、
    前記論理ネットワークにおけるシードサーバントのサーバントIDと、自己の自サーバントIDとを記憶するステップと、
    前記シードサーバントに前記自サーバントIDを添付した参加要求電文を送信するステップと、
    前記参加要求電文に対する参加応答電文を受信するステップと、
    前記参加応答電文に含まれている応答区分を読み取り、前記応答区分が、
    「参加許可」を示す場合は、前記シードサーバントをアップサーバントとして記憶し、
    「他のサーバントへ参加要求電文を送信する」ことを指示する場合は、当該他のサーバントへ参加要求電文を新たに送信するステップと、
    アップリンクが切断した場合に、
    予め記憶されているシブリングサーバントIDリストを読み取るステップと、
    前記シブリングサーバントIDリスト上の自サーバントの位置を探すステップと、
    前記自サーバントの位置が前記シブリングサーバントIDリスト上の先頭である場合は、前記シードサーバントに前記参加要求電文を送付し、
    前記自サーバントの位置が前記シブリングサーバントIDリスト上の先頭ではない場合は、前記シブリングサーバントIDリスト上の先頭サーバントに前記参加要求電文を送付するステップと、
    を実行させるための参加要求プログラム。
  4. 論理ネットワークへの参加を受け付けるコンピュータに、
    前記論理ネットワークにおける前記参加受け付けサーバントのサーバントIDと、前記参加受け付けサーバントを頂点とする部分木の値域と、パーティションと、各スロットと、前記各スロットが空か又は前記各スロットが空でない場合は当該スロットが割り当てられている既割り当てサーバントの既割り当てサーバントIDと、を記憶するステップと、
    参加を要求するサーバントから、前記参加要求サーバントの参加要求サーバントIDを含む参加要求電文を受信するステップと、
    前記参加要求電文から前記参加要求サーバントIDを取り出すステップと、
    前記参加要求サーバントIDに対応する参加要求サーバントID値に基づいて、前記参加受け付けサーバントの前記部分木の値域と、前記パーティションと、前記各スロットとの更新の要否を判断し、更新が必要と判断された場合にこれら値域を更新するステップと、
    前記参加要求サーバントID値が属すべき割り当て候補スロットを求めるステップと、
    前記割り当て候補スロットが空か調べ、
    前記割り当て候補スロットが空の場合は、「参加許可」を示す参加応答電文を、
    前記割り当て候補スロットが空でない場合は、「前記既割り当てサーバントへ参加要求電文を送信する」ことを指示する参加応答電文を、前記参加要求サーバントへ送信するステップと、
    を実行させるための参加受付プログラム。
  5. 論理ネットワークにおけるシードサーバントのサーバントIDと、自己の自サーバントIDとを記憶する記憶手段と、
    前記シードサーバントに前記自サーバントIDを添付した参加要求電文を送信する送信手段と、
    前記参加要求電文に対する参加応答電文を受信する受信手段と、
    を有し、
    前記参加応答電文に含まれている応答区分を読み取り、前記応答区分が、
    「参加許可」を示す場合、前記記憶手段は、前記シードサーバントをアップサーバントとして記憶し、
    「他のサーバントへ参加要求電文を送信する」ことを指示する場合、前記送信手段は、当該他のサーバントへ参加要求電文を新たに送信し、
    さらに、アップリンクが切断したことを検知する検知手段と、
    予め記憶されているシブリングサーバントIDリストを読み取る読み取り手段と、
    前記シブリングサーバントIDリスト上の自サーバントの位置を検出する検出手段と、
    前記自サーバントの位置が前記シブリングサーバントIDリスト上の先頭である場合は、前記シードサーバントに前記参加要求電文を送付し、
    前記自サーバントの位置が前記シブリングサーバントIDリスト上の先頭ではない場合は、前記シブリングサーバントIDリスト上の先頭サーバントに前記参加要求電文を送付する送信手段と、
    を有する論理ネットワークへの参加要求装置。
  6. 前記論理ネットワークにおける前記参加受け付けサーバントのサーバントIDと、前記参加受け付けサーバントを頂点とする部分木の値域と、パーティションと、各スロットと、前記各スロットが空か又は前記各スロットが空でない場合は当該スロットが割り当てられている既割り当てサーバントの既割り当てサーバントIDと、を記憶する記憶手段と、
    参加を要求するサーバントから、前記参加要求サーバントの参加要求サーバントIDを含む参加要求電文を受信する受信手段と、
    前記参加要求電文から前記参加要求サーバントIDを読み出す読み出し手段と、
    前記参加要求サーバントIDに対応する参加要求サーバントID値に基づいて、前記参加受け付けサーバントの前記部分木の値域と、前記パーティションと、前記各スロットとの更新の要否を判断し、更新が必要と判断された場合にこれら値域を更新する更新手段と、
    前記記憶手段に記憶されている各スロットと前記参加要求サーバントID値とを比較して、前記参加要求サーバントID値が属すべき割り当て候補スロットを求め、かつ前記割り当て候補スロットが空か調べる比較手段と、
    前記割り当て候補スロットが空の場合は、「参加許可」を示す参加応答電文を、
    前記割り当て候補スロットが空でない場合は、「前記既割り当てサーバントへ参加要求電文を送信する」ことを指示する参加応答電文を、前記参加要求サーバントへ送信する送信手段と、
    を有する論理ネットワークへの参加受付装置。
JP2003323683A 2003-09-16 2003-09-16 論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置 Expired - Fee Related JP3923931B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003323683A JP3923931B2 (ja) 2003-09-16 2003-09-16 論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003323683A JP3923931B2 (ja) 2003-09-16 2003-09-16 論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2006107471A Division JP4237196B2 (ja) 2006-04-10 2006-04-10 メッセージ送信方法、メッセージ送信プログラム、及びメッセージ送信装置

Publications (2)

Publication Number Publication Date
JP2005094264A JP2005094264A (ja) 2005-04-07
JP3923931B2 true JP3923931B2 (ja) 2007-06-06

Family

ID=34454680

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003323683A Expired - Fee Related JP3923931B2 (ja) 2003-09-16 2003-09-16 論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置

Country Status (1)

Country Link
JP (1) JP3923931B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4821605B2 (ja) * 2005-12-28 2011-11-24 パナソニック電工株式会社 デバイス制御システム
JP5260864B2 (ja) 2006-12-07 2013-08-14 Necディスプレイソリューションズ株式会社 プロジェクター、端末、会議システム、ツリー構造切替え方法およびプログラム
CN104487951B (zh) * 2012-05-15 2017-09-22 日本电气株式会社 分布式数据管理设备和分布式数据操作设备

Also Published As

Publication number Publication date
JP2005094264A (ja) 2005-04-07

Similar Documents

Publication Publication Date Title
CN111404753B (zh) 一种扁平网络配置方法、计算机设备及存储介质
JP4587446B2 (ja) ネットワークシステム、並びにスイッチ装置及び経路管理サーバ及びそれらの制御方法、及び、コンピュータプログラム及びコンピュータ可読記憶媒体
JPH0548647A (ja) 電子メール文書分配方法及び装置
US20060206611A1 (en) Method and system for managing programs with network address
JPH06103204A (ja) 自動構成制御装置および方法
KR20050009665A (ko) 모니터링을 위한 네트워크의 자동 구성
JP4789425B2 (ja) 経路テーブル同期方法、ネットワーク機器および経路テーブル同期プログラム
CN110633175B (zh) 基于微服务的多机房数据处理方法、电子设备及存储介质
CN103238301A (zh) 用于在路由器处管理话务的技术
US20080114895A1 (en) Method for Balancing Load Among Subsystems in Communication Network System of Bus Network Structure
US20170034124A1 (en) Terminal and multicast address distribution server
KR20040004918A (ko) 이기종 망 연동 통신시스템에서의 노드간 라우팅 정보교환 및 관리 방법
US20020198972A1 (en) Pre-boot multicast address management protocol for a computer network
US8321585B2 (en) Communication network system of bus network structure and message routing method using the system
US10243920B1 (en) Internet protocol address reassignment between virtual machine instances
US8346892B2 (en) Communication network system of bus network structure and method using the communication network system
JP4237196B2 (ja) メッセージ送信方法、メッセージ送信プログラム、及びメッセージ送信装置
JP3923931B2 (ja) 論理ネットワークへの参加要求方法、参加受付方法、メッセージ送信方法、参加要求プログラム、参加受付プログラム、メッセージ送信プログラム、参加要求装置、参加受付装置、及びメッセージ送信装置
JPH10229413A (ja) 住区イントラネットシステム
US9432475B2 (en) Communication network system of bus network structure and method for transmitting and receiving data using the system
JP4353827B2 (ja) マルチキャストルーティング情報送信方法、及びマルチキャストルーティング情報送信プログラム
CN106330492A (zh) 一种配置用户设备转发表的方法、装置及系统
CN118400339B (zh) 一种租户管理方法、装置、控制器及存储介质
JP2009124767A (ja) マルチキャストメッセージ送信方法、及びマルチキャストメッセージ送信プログラム
WO2022127568A1 (zh) 基站与网管设备间通信链路建立方法、系统、基站及网管设备

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060410

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070222

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110302

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120302

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130302

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140302

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees