JP5434558B2 - Node, asynchronous message relay method, and program - Google Patents

Node, asynchronous message relay method, and program Download PDF

Info

Publication number
JP5434558B2
JP5434558B2 JP2009286073A JP2009286073A JP5434558B2 JP 5434558 B2 JP5434558 B2 JP 5434558B2 JP 2009286073 A JP2009286073 A JP 2009286073A JP 2009286073 A JP2009286073 A JP 2009286073A JP 5434558 B2 JP5434558 B2 JP 5434558B2
Authority
JP
Japan
Prior art keywords
node
relay
message
update information
information distribution
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
JP2009286073A
Other languages
Japanese (ja)
Other versions
JP2011130144A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2009286073A priority Critical patent/JP5434558B2/en
Publication of JP2011130144A publication Critical patent/JP2011130144A/en
Application granted granted Critical
Publication of JP5434558B2 publication Critical patent/JP5434558B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明はノード、子ノード、非同期メッセージ中継方法、及び、プログラムに関する。   The present invention relates to a node, a child node, an asynchronous message relay method, and a program.

近年、携帯電話、PDA、及び車載端末などの移動端末が普及し、移動しながら音声や映像などの大容量コンテンツをネットワークを利用して交換したいという要望がユーザの間で高まっている。また、街角監視カメラや、各種センサが生成した情報なども合わせてネットワークに流通させて活用したいといった要望もある。   In recent years, mobile terminals such as mobile phones, PDAs, and in-vehicle terminals have become widespread, and there is an increasing demand among users for exchanging large-capacity content such as voice and video while moving. In addition, there is a demand for distributing and utilizing a street corner monitoring camera and information generated by various sensors through a network.

このような要望に対応するには、特に、様々な種類かつ多量のコンテンツが流通する中において、コンテンツの鮮度を損なわずに、コンテンツの情報をユーザにリアルタイムで届けることが重要となる。   In order to meet such demands, it is important to deliver content information to users in real time without losing the freshness of the content, especially when various types and a large amount of content are distributed.

そこで、コンテンツが今どうなっているのか、どう更新されたか、という情報をメタデータとして流通させる更新情報配信システムが重要になる。この更新情報配信システムはコンテンツの更新情報を小さいメッセージに含め、ユーザが利用する利用者装置を論理ツリー構造にして、そのコンテンツの情報を所望するユーザへリアルタイムに配信する。   Therefore, an update information distribution system that distributes information about how the content is now and how it was updated as metadata becomes important. This update information distribution system includes content update information in a small message, makes the user device used by the user a logical tree structure, and distributes the content information to the desired user in real time.

ところで、昨今、上記のようなメッセージ配信者からユーザへの下り情報流通に加えて、ユーザからメッセージ配信者への上り情報流通も重要となっている。この上り情報流通としては、例えば、現在のコンテンツ情報の配信依頼に関するものや、コンテンツ更新情報の配信の遅延量の報告に関するもの、その他の各種コミュニケーションのためのものなどが考えられる。そして、これらの上り情報流通は、上記の下り情報流通とは非同期に行われるのが実情としてある。   By the way, in recent years, in addition to the downstream information distribution from the message distributor to the user as described above, the upstream information distribution from the user to the message distributor is also important. As the upstream information distribution, for example, a request for distribution of current content information, a report on a delay amount of distribution of content update information, and other various communication can be considered. In fact, the upstream information distribution is performed asynchronously with the downstream information distribution described above.

このような上り情報流通と下り情報流通の双方は、一般に、ユーザが利用する複数のクライアントと、メッセージ配信者が利用するサーバと、を例えば特許文献1に開示のようにオーバーレイネットワーク上に構築されたツリー型トポロジや公知のスター型トポロジで接続することで実現されている。   In both such upstream information distribution and downstream information distribution, generally, a plurality of clients used by a user and a server used by a message distributor are constructed on an overlay network as disclosed in Patent Document 1, for example. This is realized by connecting with a tree topology or a known star topology.

特開2008−299558号公報JP 2008-299558 A

しかし、クライアントからサーバーに非同期に送信されるメッセージとしての非同期メッセージの送信頻度は、非同期であるが故、変動することがある。従って、上記のスター型トポロジで複数のクライアントとサーバーを接続すると、短時間で大量の非同期メッセージがサーバーに送信された場合、非同期メッセージを一時的に蓄積しておくバッファが溢れ、この結果、所謂メッセージ落ちが発生してしまう虞がある。   However, the transmission frequency of an asynchronous message as a message transmitted asynchronously from the client to the server may vary because it is asynchronous. Therefore, when a plurality of clients and servers are connected in the star topology described above, if a large number of asynchronous messages are sent to the server in a short time, the buffer for temporarily storing the asynchronous messages overflows. There is a risk of message dropping.

一方、上記のツリー型トポロジでは、そのツリーの構造に従って非同期メッセージがクライアントからサーバーに向かって順々に転送されるようになっている。そして、各ノードは、サーバーを含む上位のノードのバッファが溢れそうになると、そのバッファ溢れを抑えるように、転送する非同期メッセージをバッファリングするようになっており、もって、各ノードのバッファ溢れが効果的に抑制されるようになっている。しかし、上記のツリー型トポロジでは、ツリーの下位に位置するクライアントからサーバー宛に非同期メッセージを送信しようとすると、ホップ数が大きいので、非同期メッセージがクライアントから発信され、実際にサーバーに到達するまでの時間が長くなってしまう。   On the other hand, in the above tree-type topology, asynchronous messages are sequentially transferred from the client to the server according to the structure of the tree. And each node is designed to buffer the asynchronous message to be transferred so that the buffer of the upper node including the server is about to overflow, so that the buffer overflow is suppressed. It is designed to be effectively suppressed. However, in the above tree-type topology, when an asynchronous message is sent from a client located at the bottom of the tree to the server, the number of hops is large, so the asynchronous message is sent from the client until it actually reaches the server. The time will be longer.

本願発明の目的は、子ノードからルートノードへの非同期メッセージの送信に要する時間を短縮することができる、ノード、子ノード、非同期メッセージ中継方法、及び、プログラムを提供することにある。   An object of the present invention is to provide a node, a child node, an asynchronous message relay method, and a program that can reduce the time required for transmitting an asynchronous message from a child node to a root node.

本願発明の第一の観点によれば、ルートノードから複数の子ノードに情報を配信するためにオーバーレイネットワーク上でツリー状に構築されたネットワークに参加可能なノードは、以下のように構成される。即ち、前記ノードは、中継ノードとして機能させる子ノードを前記ネットワークに参加可能な前記複数の子ノードの中から選出する中継ノード選出部を備える。ここで、中継ノードとは、前記複数の子ノードのうち何れかから前記ルートノード宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを、上記ツリーを順々に遡って前記ルートノードへ向けて中継する場合と比較して少ないホップ数となるように前記ルートノードへ向けて中継するものである。   According to the first aspect of the present invention, nodes that can participate in a network constructed in a tree shape on an overlay network in order to distribute information from a root node to a plurality of child nodes are configured as follows. . That is, the node includes a relay node selection unit that selects a child node that functions as a relay node from the plurality of child nodes that can participate in the network. Here, the relay node receives an asynchronous message transmitted from any one of the plurality of child nodes to the root node, and the received asynchronous message is traced back in the tree in order. Relaying toward the root node so that the number of hops is smaller than when relaying toward the root.

本願発明の第二の観点によれば、ルートノードから複数の子ノードに情報を配信するためにオーバーレイネットワーク上でツリー状に構築されたネットワークにおいて、前記複数の子ノードから前記ルートノード宛に発信された非同期メッセージを前記ルートノードへ向けて中継する、非同期メッセージの中継は、以下のような方法で行われる。即ち、前記複数の子ノードのうち何れかから前記ルートノード宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを、上記ツリーを順々に遡って前記ルートノードへ向けて中継する場合と比較して少ないホップ数となるように前記ルートノードへ向けて中継する、中継ノードとして機能させる子ノードを、前記ネットワークに参加可能な前記複数の子ノードの中から、選出する、中継ノード選出ステップを含む。   According to a second aspect of the present invention, in a network constructed in a tree shape on an overlay network for distributing information from a root node to a plurality of child nodes, transmission from the plurality of child nodes to the root node The asynchronous message is relayed by relaying the asynchronous message to the root node in the following manner. That is, when an asynchronous message sent to the root node from any of the plurality of child nodes is received, and the received asynchronous message is relayed back to the root node in the order of the tree Relay node selection that selects a child node that functions as a relay node that relays toward the root node so as to have a smaller number of hops than the plurality of child nodes that can participate in the network Includes steps.

本願発明の第三の観点によれば、ルートノードから複数の子ノードに情報を配信するためにオーバーレイネットワーク上でツリー状に構築されたネットワークに参加可能なノードに、以下の機能を発揮させるプログラムが提供させる。即ち、前記ノードに、前記複数の子ノードのうち何れかから前記ルートノード宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを、上記ツリーを順々に遡って前記ルートノードへ向けて中継する場合と比較して少ないホップ数となるように前記ルートノードへ向けて中継する、中継ノードとして機能させる、子ノードを、前記ネットワークに参加可能な前記複数の子ノードの中から、選出する、中継ノード選出部としての機能を発揮させる。   According to the third aspect of the present invention, a program for causing a node that can participate in a network constructed in a tree shape on an overlay network to exhibit the following functions to distribute information from a root node to a plurality of child nodes. To provide. That is, the node receives an asynchronous message transmitted to the root node from any one of the plurality of child nodes, and directs the received asynchronous message back to the root node in order from the tree. Relay from the plurality of child nodes that can participate in the network to relay to the root node so that the number of hops is smaller than the relay node, to function as a relay node And function as a relay node selection unit.

本願発明によれば、子ノードからルートノードへの非同期メッセージの送信に要する時間を短縮することができる。   According to the present invention, the time required for transmitting an asynchronous message from a child node to a root node can be reduced.

本発明に係る更新情報配信システム1の構成例を示す概念図である。It is a conceptual diagram which shows the structural example of the update information delivery system 1 which concerns on this invention. 本実施形態の利用者装置100の構成を示すブロック図である。It is a block diagram which shows the structure of the user apparatus 100 of this embodiment. 本実施形態の中継装置情報データベース121のデータ構成を示す概念図である。It is a conceptual diagram which shows the data structure of the relay apparatus information database 121 of this embodiment. 本実施形態の利用者装置情報データベース122のデータ構成を示す概念図である。It is a conceptual diagram which shows the data structure of the user apparatus information database 122 of this embodiment. 本実施形態のコンテンツ情報データベース123のデータ構成を示す概念図である。It is a conceptual diagram which shows the data structure of the content information database 123 of this embodiment. 本実施形態の更新情報配信サーバ200の構成を示すブロック図である。It is a block diagram which shows the structure of the update information delivery server 200 of this embodiment. 本実施形態による利用者装置100がツリー管理メッセージを受信した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the user apparatus 100 by this embodiment receives a tree management message. 本実施形態による利用者装置100が定期的にツリー管理メッセージを送信する場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement in case the user apparatus 100 by this embodiment transmits a tree management message regularly. 本実施形態による利用者装置100が更新情報メッセージを受信した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the user apparatus 100 by this embodiment receives an update information message. 本実施形態による利用者装置100が中継装置周知メッセージを受信した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the user apparatus 100 by this embodiment receives a relay apparatus well-known message. 本実施形態による利用者が非同期メッセージを送信するよう操作した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement at the time of the user by this embodiment operating so that an asynchronous message may be transmitted. 本実施形態による利用者装置100が定期的に集約済みの非同期メッセージを送信する場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the user apparatus 100 by this embodiment transmits the asynchronous message aggregated regularly. 本実施形態による利用者装置100が非同期メッセージを受信した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the user apparatus 100 by this embodiment receives an asynchronous message. 本実施形態による利用者装置100が定期的にバッファ153の使用量を確認する場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement in case the user apparatus 100 by this embodiment confirms the usage-amount of the buffer 153 regularly. 本実施形態による利用者装置100において予め定められた時間中、常にバッファ153の利用がなかった場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the buffer 153 is not always used during the predetermined time in the user apparatus 100 by this embodiment. 本実施形態による更新情報配信サーバ200内でコンテンツ情報データベース223が更新された場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the content information database 223 is updated in the update information delivery server 200 by this embodiment. 本実施形態による更新情報配信サーバ200が非同期メッセージを受信した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the update information delivery server 200 by this embodiment receives an asynchronous message. 本実施形態による更新情報配信サーバ200が定期的にバッファ242の使用量を確認する場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement in case the update information delivery server 200 by this embodiment confirms the usage-amount of the buffer 242 regularly. 本実施形態による更新情報配信サーバ200が定期的に中継装置タイマ244を動作させる動作を示すフローチャートである。It is a flowchart which shows the operation | movement which the update information delivery server 200 by this embodiment operates the relay apparatus timer 244 regularly. 本実施形態による更新情報配信サーバ200がバッファ状況通知メッセージを受信した場合の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the update information delivery server 200 by this embodiment receives a buffer status notification message. 本実施形態による中継装置選出の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the relay apparatus selection by this embodiment.

以下、本発明の一実施形態を、図面を参照して説明する。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

図1は、本実施に係る更新情報配信システム1の構成例を示す概念図である。図1において、更新情報配信システム1は、複数の利用者装置100、100、…(子ノード)と、更新情報配信サーバ200(ルートノード)とを有し、論理ネットワーク(オーバーレイネットワーク)を構成している。ある1つのコンテンツに付き1つの更新情報配信システム1が構成されており、複数のコンテンツが存在する場合には、コンテンツ毎に、それぞれ別の更新情報配信システム1が論理ネットワーク上に構成される。   FIG. 1 is a conceptual diagram illustrating a configuration example of an update information distribution system 1 according to the present embodiment. 1, the update information distribution system 1 includes a plurality of user devices 100, 100,... (Child nodes) and an update information distribution server 200 (root node), and constitutes a logical network (overlay network). ing. One update information distribution system 1 is configured for one content, and when there are a plurality of contents, different update information distribution systems 1 are configured on the logical network for each content.

すなわち、更新情報配信システム1を論理ネットワーク上で複数組み合わせることにより、多種多様なコンテンツの更新情報(情報)を、利用者装置100に配信する大規模なシステムを構築することができる。図1の下の更新情報配信システム1の構成例では、更新情報配信サーバ200(ノードn10)を頂点とし、更新情報配信サーバ200の配下に利用者装置100であるノードn8、ノードn11があり、ノードn8の配下にノードn3及びノードn44、ノードn11の配下にノードn22があるというような、ツリー構造の状態で接続されている。   That is, by combining a plurality of update information distribution systems 1 on a logical network, a large-scale system that distributes update information (information) of various contents to the user device 100 can be constructed. In the configuration example of the update information distribution system 1 in the lower part of FIG. 1, the update information distribution server 200 (node n10) is a vertex, and there are nodes n8 and n11 that are user devices 100 under the update information distribution server 200. The nodes n3 and n44 are connected under the node n8, and the node n22 is connected under the node n11.

利用者装置100は、更新情報配信サーバ200、もしくは1つまたは複数の利用者装置100と接続する。各利用者装置100は、接続している更新情報配信サーバ200、もしくは1つまたは複数の利用者装置100から更新情報を受信した場合に、更新情報配信システム1での下流にある利用者装置100に更新情報を転送する。論理ネットワーク上にある利用者装置100は、所望するコンテンツを論理ネットワーク上で検索し、そのコンテンツを有する更新情報配信サーバ200または、そのコンテンツを有する更新情報配信サーバ200が構成するツリーに接続している利用者装置100に接続することによって更新情報配信システム1に参加することができる。   The user device 100 is connected to the update information distribution server 200 or one or a plurality of user devices 100. When each user device 100 receives update information from the connected update information distribution server 200 or one or more user devices 100, each user device 100 is downstream in the update information distribution system 1. Transfer update information to. The user device 100 on the logical network searches for desired content on the logical network, and connects to the update information distribution server 200 having the content or the tree formed by the update information distribution server 200 having the content. It is possible to participate in the update information distribution system 1 by connecting to the existing user device 100.

さらに利用者装置100(子ノード)は、更新情報配信サーバ200(ルートノード)に対して非同期にメッセージを送信することができる。この非同期メッセージは、例えば、ユーザが現在のコンテンツ情報の通知を依頼したり、メッセージ配信システムのリアルタイム性を保証するためにユーザからメッセージ配信の遅延量を通知してもらったり、ユーザからメッセージ配信者へのコミュニケーションのために利用され、更新情報配信サーバ200へ直接、または、他の利用者装置100を中継装置(中継ノード)として利用した上で送信される。更新情報配信サーバ200は、自身へ送られてくる非同期メッセージの傾向を判断して、適宜ひとつまたは複数の利用者装置100を中継装置として選出する。中継装置として選出された利用者装置100は、他の利用者装置100からの非同期メッセージを中継して、更新情報配信サーバ200へ非同期メッセージを送信する。   Further, the user device 100 (child node) can asynchronously transmit a message to the update information distribution server 200 (root node). This asynchronous message is, for example, a user requesting notification of the current content information, a message delivery delay notification from the user to guarantee the real-time property of the message delivery system, or a message distributor from the user. Is transmitted to the update information distribution server 200 directly or using another user device 100 as a relay device (relay node). The update information distribution server 200 determines the tendency of the asynchronous message sent to itself, and appropriately selects one or a plurality of user devices 100 as a relay device. The user device 100 selected as the relay device relays the asynchronous message from the other user device 100 and transmits the asynchronous message to the update information distribution server 200.

図2は、本実施形態の利用者装置100の構成を示すブロック図である。図2において、利用者装置100は、主制御部110と、ネットワークインターフェイス120と、中継装置情報データベース121と、利用者装置情報データベース122と、コンテンツ情報データベース123と、を有する。主制御部110は、CPU(Central Processing Unit)、RAM(Random Access Memory)、及びOS(OperatingSystem)などで構成されたコンピュータの主要部であり、主制御部110の中に、動作するプログラムとして構成されている送受信部160と、更新情報配信システムクライアント部130と、非同期通信クライアント部140と、中継装置機能部150と、を有する。更新情報配信システムクライアント部130は、更新情報配信システム1のツリー構造の管理および更新情報メッセージの送受信を実施する機能部で、ツリー管理機能部131と、コンテンツクライアント部132と、を有する。非同期通信クライアント部140は、非同期メッセージの送受信を実施する機能部で、非同期通信機能部141と、中継装置選択部142と、を有する。中継装置機能部150は、更新情報配信サーバ200から中継装置として選出された場合に中継装置の機能を実施する機能部で、非同期メッセージ集約部151と、集約タイマ152と、バッファ153と、バッファ監視部154と、バッファ状況通知部155と、を有する。   FIG. 2 is a block diagram illustrating a configuration of the user device 100 according to the present embodiment. 2, the user device 100 includes a main control unit 110, a network interface 120, a relay device information database 121, a user device information database 122, and a content information database 123. The main control unit 110 is a main part of a computer configured by a CPU (Central Processing Unit), a RAM (Random Access Memory), an OS (Operating System), and the like, and is configured as a program that operates in the main control unit 110. A transmission / reception unit 160, an update information distribution system client unit 130, an asynchronous communication client unit 140, and a relay device function unit 150. The update information distribution system client unit 130 is a functional unit that performs management of the tree structure of the update information distribution system 1 and transmission / reception of update information messages, and includes a tree management function unit 131 and a content client unit 132. The asynchronous communication client unit 140 is a functional unit that performs transmission and reception of asynchronous messages, and includes an asynchronous communication functional unit 141 and a relay device selection unit 142. The relay device function unit 150 is a function unit that performs the function of a relay device when it is selected as a relay device from the update information distribution server 200. The asynchronous message aggregation unit 151, the aggregation timer 152, the buffer 153, and the buffer monitor Unit 154 and a buffer status notification unit 155.

ここで、まず、中継装置情報データベース121と、利用者装置情報データベース122と、コンテンツ情報データベース123と、のデータ構成について説明する。   Here, first, the data structure of the relay device information database 121, the user device information database 122, and the content information database 123 will be described.

図3は、本実施形態の中継装置情報データベース121のデータ構成を示す概念図である。中継装置情報データベース121は、自装置が参加している更新情報配信システム1における中継装置情報を保存する。中継装置情報とは、中継装置を一意に識別するクライアントID、IPアドレス、ポート番号など中継装置へ非同期メッセージを送信するために必要な情報である。この中継装置情報には更新情報配信システム1のツリー構造の頂点にある更新情報配信サーバ200の情報もルートノードとして含まれる。   FIG. 3 is a conceptual diagram showing a data configuration of the relay device information database 121 of the present embodiment. The relay device information database 121 stores relay device information in the update information distribution system 1 in which the own device participates. The relay device information is information necessary for transmitting an asynchronous message to the relay device, such as a client ID, IP address, and port number that uniquely identifies the relay device. The relay device information includes information of the update information distribution server 200 at the apex of the tree structure of the update information distribution system 1 as a root node.

図4は、本実施形態の利用者装置情報データベース122のデータ構成を示す概念図である。利用者装置情報データベース122は、コンテンツ情報データベース123に保存しているコンテンツ毎に、更新情報配信システム1における利用者装置情報を保存する。利用者装置情報とは、利用者装置100を一意に識別するクライアントID、IPアドレス、ポート番号など他の利用者装置100とメッセージを送受信するために必要な情報であり、更新情報配信システム1のツリー構造において自装置より上及び下にある利用者装置100の情報である。   FIG. 4 is a conceptual diagram showing a data configuration of the user device information database 122 of the present embodiment. The user device information database 122 stores user device information in the update information distribution system 1 for each content stored in the content information database 123. The user device information is information necessary for transmitting / receiving a message to / from another user device 100 such as a client ID, IP address, and port number that uniquely identifies the user device 100. This is information on user devices 100 above and below the own device in the tree structure.

図5は、本実施形態のコンテンツ情報データベース123のデータ構成を示す概念図である。コンテンツ情報データベース123は、自装置が参加している更新情報配信システム1のコンテンツに関するメタデータを保存している。メタデータとは、コンテンツに付随する情報であって、例えば、コンテンツID、URI、タイトル、作成者、作成場所、作成時間、キーワードなどである。さらにメタデータに加えてコンテンツ本体の情報を保持することもできる。   FIG. 5 is a conceptual diagram showing the data configuration of the content information database 123 of the present embodiment. The content information database 123 stores metadata related to the content of the update information distribution system 1 in which the device itself participates. The metadata is information accompanying the content, and includes, for example, a content ID, a URI, a title, a creator, a creation location, a creation time, a keyword, and the like. Furthermore, in addition to metadata, information on the content body can be held.

送受信部160は、ネットワークインターフェイス120を介して、更新情報配信サーバ200、または他の利用者装置100からのメッセージを受信して処理する。送受信部は、受信したメッセージがツリー管理メッセージであった場合には、ツリー管理メッセージをツリー管理機能部131へ送る。   The transmission / reception unit 160 receives and processes a message from the update information distribution server 200 or another user device 100 via the network interface 120. When the received message is a tree management message, the transmission / reception unit sends the tree management message to the tree management function unit 131.

また、送受信部160は、受信したメッセージが更新情報メッセージであった場合には、更新情報メッセージをコンテンツクライアント部132へ送る。   In addition, when the received message is an update information message, the transmission / reception unit 160 transmits the update information message to the content client unit 132.

さらに、送受信部160は、受信したメッセージが中継装置周知メッセージであった場合には、中継装置周知メッセージを非同期通信機能部141へ送る。   Furthermore, when the received message is a relay device known message, the transmission / reception unit 160 sends the relay device known message to the asynchronous communication function unit 141.

さらに、送受信部160は、受信したメッセージが非同期メッセージであった場合には、非同期メッセージを非同期メッセージ集約部151へ送る。   Furthermore, when the received message is an asynchronous message, the transmission / reception unit 160 sends the asynchronous message to the asynchronous message aggregation unit 151.

さらに、送受信部160は、ツリー管理機能部131、コンテンツクライアント部132、非同期通信機能部141、非同期メッセージ集約部151、バッファ状況通知部155からメッセージを受け取り、メッセージに記載されている宛先である更新情報配信サーバ200、または、他の利用者装置100にネットワークインターフェイス120を介してメッセージを送信する。   Further, the transmission / reception unit 160 receives a message from the tree management function unit 131, the content client unit 132, the asynchronous communication function unit 141, the asynchronous message aggregation unit 151, and the buffer status notification unit 155, and updates the destination described in the message A message is transmitted via the network interface 120 to the information distribution server 200 or another user apparatus 100.

ツリー管理機能部131は、更新情報配信サーバ200または、ひとつまたは複数の利用者装置100とツリー管理メッセージを送受信することによって更新情報配信システム1を管理する。ツリー管理メッセージを受信した場合には、ツリー管理メッセージに記載の更新情報配信サーバ200または利用者装置100の利用者装置情報を参照し、利用者装置情報データベース122を更新する。また、図2に記載はないが、タイマを利用して定期的に利用者装置情報データベース122を参照して、ツリー管理メッセージを作成し、更新情報配信サーバ200または利用者装置100に対しツリー管理メッセージを送信する。   The tree management function unit 131 manages the update information distribution system 1 by transmitting / receiving a tree management message to / from the update information distribution server 200 or one or a plurality of user devices 100. When the tree management message is received, the user device information database 122 is updated with reference to the user device information of the update information distribution server 200 or the user device 100 described in the tree management message. Although not shown in FIG. 2, a tree management message is created by periodically referring to the user device information database 122 using a timer, and tree management is performed for the update information distribution server 200 or the user device 100. Send a message.

コンテンツクライアント部132は、更新情報配信サーバ200または利用者装置100から更新情報メッセージを受信すると、更新情報メッセージに記載されたメタデータを参照し、コンテンツ情報データベース123を更新する。さらに、利用者装置情報データベース122を参照し、更新情報配信システム1のツリー構造において自装置より下の利用者装置がひとつまたは複数存在する場合、更新情報メッセージを該当するひとつまたは複数の利用者装置100に転送する。   When the content client unit 132 receives the update information message from the update information distribution server 200 or the user device 100, the content client unit 132 refers to the metadata described in the update information message and updates the content information database 123. Further, referring to the user device information database 122, if one or more user devices below the own device exist in the tree structure of the update information distribution system 1, one or more user devices corresponding to the update information message are displayed. Forward to 100.

非同期通信機能部141は、中継装置周知メッセージを受信すると、中継装置周知メッセージに記載の中継装置情報を参照し、中継装置情報データベース121を更新する。さらに、利用者装置情報データベース122を参照し、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在する場合、中継装置周知メッセージを該当するひとつまたは複数の利用者装置100に転送する。   When receiving the relay device known message, the asynchronous communication function unit 141 refers to the relay device information described in the relay device known message and updates the relay device information database 121. Further, referring to the user device information database 122, when one or more user devices 100 below the own device exist in the tree structure of the update information distribution system 1, one or more usages corresponding to the relay device well-known message are applied. To the user device 100.

さらに、非同期通信機能部141は、利用者から非同期通信を実行するように操作されると、中継装置選択部142を起動し、非同期メッセージを送信するあて先とする中継装置情報を得る。そして、その中継装置をあて先として非同期メッセージを作成し、非同期メッセージを送信する。   Furthermore, when the asynchronous communication function unit 141 is operated by a user to execute asynchronous communication, the asynchronous communication function unit 141 activates the relay device selection unit 142 to obtain relay device information as a destination to which an asynchronous message is transmitted. Then, an asynchronous message is created with the relay device as the destination, and the asynchronous message is transmitted.

中継装置選択部142は、非同期通信機能部141からの呼び出しを契機に起動する。中継装置選択部142は、中継装置情報データベース121を参照し、非同期メッセージを転送すべき中継装置を選択する。中継装置を選択するに際しては、自利用者装置100の更新情報配信システム1のツリー構造における位置と、中継装置情報データベース121に記載のひとつまたは複数の中継装置の位置と、更新情報配信サーバ200の位置と、を比較することによって中継装置を選択する。例えば、更新情報配信システム1のツリー構造において自利用者装置100から見て最もホップ数の少ない位置にある中継装置、または更新情報配信サーバ200を選択し、あるいは更新情報配信システム1のツリー構造において、更新情報配信サーバ200からのホップ数が極力少ない中継装置を選択する、などがある。   The relay device selection unit 142 is activated upon a call from the asynchronous communication function unit 141. The relay device selection unit 142 refers to the relay device information database 121 and selects a relay device to which an asynchronous message is to be transferred. When selecting a relay device, the position of the user device 100 in the tree structure of the update information distribution system 1, the position of one or more relay devices described in the relay device information database 121, and the update information distribution server 200 The relay device is selected by comparing the position. For example, in the tree structure of the update information distribution system 1, the relay device or the update information distribution server 200 in the position having the smallest number of hops when viewed from the own user device 100 is selected, or in the tree structure of the update information distribution system 1 And selecting a relay device with as few hops from the update information distribution server 200 as possible.

非同期メッセージ集約部151は、非同期メッセージを受信すると非同期メッセージを集約処理する。集約処理とは、非同期メッセージを最終的に受信する更新情報配信サーバ200の負荷を軽減する目的で、例えば、非同期メッセージのヘッダを統一する、統計情報を事前計算する、などがある。この集約処理中に非同期メッセージを受信した場合は、バッファ153にメッセージを保存しておき、集約処理が終了次第、バッファ153に保存しておいた非同期メッセージの集約処理を実施する。   When receiving the asynchronous message, the asynchronous message aggregation unit 151 performs aggregation processing on the asynchronous message. The aggregation processing includes, for example, unifying asynchronous message headers and pre-calculating statistical information for the purpose of reducing the load on the update information distribution server 200 that finally receives asynchronous messages. When an asynchronous message is received during the aggregation process, the message is stored in the buffer 153, and the aggregation process of the asynchronous message stored in the buffer 153 is performed as soon as the aggregation process is completed.

非同期メッセージ集約部151は、集約タイマ152からのアラームを契機に、更新情報配信サーバ200へ集約済みの非同期メッセージを直接的に、換言すれば1ホップで送信する。更に換言すれば、非同期メッセージ集約部151は、更新情報配信サーバ200へ集約済みの非同期メッセージを、ツリーを順々に遡って更新情報配信サーバ200に中継するよりも少ないホップ数となるように更新情報配信サーバ200へ向けて中継する。要するに、非同期メッセージ集約部151は、更新情報配信サーバ200へ集約済みの非同期メッセージを更新情報配信サーバ200へ中継する際、ツリー構造における位置の如何に拘わらず、他の利用者装置100を一切経由することなく、ダイレクトに更新情報配信サーバ200へ中継する。   The asynchronous message aggregation unit 151 transmits the aggregated asynchronous message directly to the update information distribution server 200, in other words, in one hop, triggered by an alarm from the aggregation timer 152. In other words, the asynchronous message aggregating unit 151 updates the asynchronous messages that have been aggregated to the update information distribution server 200 so that the number of hops is smaller than when relaying the update information distribution server 200 back to the update information distribution server 200 in order. Relay to the information distribution server 200. In short, when the asynchronous message aggregation unit 151 relays the asynchronous message that has been aggregated to the update information distribution server 200 to the update information distribution server 200, the asynchronous message aggregation unit 151 does not pass through any other user device 100 regardless of the position in the tree structure. And relay directly to the update information distribution server 200.

また、非同期メッセージ集約部151は、非同期メッセージを送信してきた利用者装置100の情報を、予め定められた量だけリスト化しておく。このリストはバッファ状況通知部155からの呼び出しを受けてリストをバッファ状況通知部155に渡す。   Further, the asynchronous message aggregating unit 151 lists the information of the user device 100 that has transmitted the asynchronous message by a predetermined amount. This list receives a call from the buffer status notification unit 155 and passes the list to the buffer status notification unit 155.

バッファ153は、非同期メッセージの中継に利用可能なものであって、有限のメッセージ一時保存機能を提供し、非同期メッセージ集約部151から、非同期メッセージを受け取り保存する。また非同期メッセージ集約部151からの呼び出しを受けて保存していた非同期メッセージを非同期メッセージ集約部151へ渡す。   The buffer 153 can be used for relaying asynchronous messages, provides a limited message temporary storage function, and receives and stores asynchronous messages from the asynchronous message aggregation unit 151. Also, the asynchronous message stored in response to the call from the asynchronous message aggregating unit 151 is transferred to the asynchronous message aggregating unit 151.

バッファ監視部154は、バッファ153の利用状況を監視する。バッファ153が溢れそうになった場合、具体的には、バッファ153の利用量が予め定められた閾値を超えた場合、バッファ状況通知部155へその旨を知らせるアラームを出す。また、予め定められた時間(一定時間)中、常にバッファ153の利用がなかった場合、バッファ状況通知部155へその旨を知らせるアラームを出す。   The buffer monitoring unit 154 monitors the usage status of the buffer 153. When the buffer 153 is about to overflow, specifically, when the usage amount of the buffer 153 exceeds a predetermined threshold value, an alarm is sent to the buffer status notification unit 155 to that effect. Also, if the buffer 153 is not always used during a predetermined time (a fixed time), an alarm is sent to the buffer status notification unit 155 to that effect.

バッファ状況通知部155は、バッファ監視部154からの2種のアラームを受けて、バッファ状況通知メッセージにアラーム情報を記載して、更新情報配信サーバ200へバッファ状況通知メッセージを送信する。ここで、通知されたアラームが、バッファ153の利用量が予め定められた閾値を超えた場合のアラームであった場合、バッファ状況通知部は、非同期メッセージ集約部151から予め定められた量の直近の非同期メッセージを送信してきた利用者装置100のリストを受けてバッファ状況通知メッセージに併せて記載する。   The buffer status notification unit 155 receives two types of alarms from the buffer monitoring unit 154, writes the alarm information in the buffer status notification message, and transmits the buffer status notification message to the update information distribution server 200. Here, when the notified alarm is an alarm when the usage amount of the buffer 153 exceeds a predetermined threshold, the buffer status notifying unit is the latest of the predetermined amount from the asynchronous message aggregating unit 151. The list of user devices 100 that have transmitted the asynchronous message is received and written together with the buffer status notification message.

図6は、本実施形態の更新情報配信サーバ200の構成を示すブロック図である。図6において、更新情報配信サーバ200、主制御部210と、ネットワークインターフェイス220と、中継装置情報データベース221と、利用者装置情報データベース222と、コンテンツ情報データベース223と、を有する。主制御部210は、CPU、RAM、及びOSなどで構成されたコンピュータの主要部であり、主制御部210の中に、CPU上で実行可能なプログラムによって実現される送受信部260と、更新情報配信システムサーバ部230と、非同期通信サーバ部240と、を有する。更新情報配信システムサーバ部230は、更新情報配信システム1のツリー構造の管理および更新情報メッセージの送信を実施する機能部で、ツリー管理機能部231と、コンテンツサーバ部232と、を有する。非同期通信サーバ部240は、非同期メッセージの受信、および中継装置を選出する機能を実施する機能部で、非同期通信処理部241と、中継装置管理部246と、バッファ242と、バッファ監視部243と、中継装置タイマ244と、中継装置選出部245(中継ノード選出部)と、を有する。   FIG. 6 is a block diagram showing the configuration of the update information distribution server 200 of this embodiment. 6, the update information distribution server 200, the main control unit 210, the network interface 220, the relay device information database 221, the user device information database 222, and the content information database 223 are included. The main control unit 210 is a main part of a computer including a CPU, a RAM, an OS, and the like. The main control unit 210 includes a transmission / reception unit 260 implemented by a program executable on the CPU, and update information. The distribution system server unit 230 and the asynchronous communication server unit 240 are included. The update information distribution system server unit 230 is a functional unit that performs management of the tree structure of the update information distribution system 1 and transmission of update information messages, and includes a tree management function unit 231 and a content server unit 232. The asynchronous communication server unit 240 is a functional unit that implements the function of receiving an asynchronous message and selecting a relay device. The asynchronous communication processing unit 241, the relay device management unit 246, the buffer 242, the buffer monitoring unit 243, It has a relay device timer 244 and a relay device selection unit 245 (relay node selection unit).

更新情報配信サーバ200における、中継装置情報データベース221と、利用者装置情報データベース222と、コンテンツ情報データベース223は、利用者装置100の中継装置情報データベース121と、利用者装置情報データベース122と、コンテンツ情報データベース123と同一のデータ構造であるため詳細は説明を省略する。   In the update information distribution server 200, the relay device information database 221, the user device information database 222, and the content information database 223 are the relay device information database 121, the user device information database 122, and the content information of the user device 100. Since the data structure is the same as that of the database 123, a detailed description thereof will be omitted.

送受信部260は、ネットワークインターフェイス220を介して、利用者装置100からのメッセージを受信して処理する。送受信部260は、受信したメッセージがツリー管理メッセージであった場合には、ツリー管理メッセージをツリー管理機能部231へ送る。   The transmission / reception unit 260 receives and processes a message from the user device 100 via the network interface 220. The transmission / reception unit 260 sends the tree management message to the tree management function unit 231 when the received message is a tree management message.

また、送受信部260は、受信したメッセージが非同期メッセージであった場合には、非同期メッセージを非同期通信処理部241へ送る。   In addition, when the received message is an asynchronous message, the transmission / reception unit 260 sends the asynchronous message to the asynchronous communication processing unit 241.

さらに、送受信部260は、受信したメッセージがバッファ状況通知メッセージであった場合には、バッファ状況通知メッセージを中継装置管理部246へ送る。   Furthermore, when the received message is a buffer status notification message, the transmission / reception unit 260 sends the buffer status notification message to the relay device management unit 246.

さらに、送受信部260は、ツリー管理機能部231、中継装置管理部246からメッセージを受け取り、メッセージに記載されている宛先である利用者装置100にネットワークインターフェイス220を介してメッセージを送信する。   Further, the transmission / reception unit 260 receives a message from the tree management function unit 231 and the relay device management unit 246 and transmits the message to the user device 100 that is the destination described in the message via the network interface 220.

ツリー管理機能部231は、利用者装置100のツリー管理機能部131と同じであるため、詳細な説明を省略する。   Since the tree management function unit 231 is the same as the tree management function unit 131 of the user device 100, detailed description thereof is omitted.

コンテンツサーバ部232は、利用者からのコンテンツ情報データベース223の更新操作を契機として、利用者装置情報データベース222を参照し、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在する場合、コンテンツ情報データベース223を参照し、更新情報メッセージを作成し、更新情報メッセージを該当するひとつまたは複数の利用者装置100に送信する。   The content server unit 232 refers to the user device information database 222 in response to an update operation of the content information database 223 from the user, and the user device 100 below the own device in the tree structure of the update information distribution system 1 When one or more exist, the content information database 223 is referred to, an update information message is created, and the update information message is transmitted to the corresponding one or more user devices 100.

非同期通信処理部241は、非同期メッセージを受信すると非同期メッセージの目的に応じて処理する。非同期メッセージを目的に応じて処理するとは、例えば、更新情報配信サーバ200の管理者へのメッセージであった場合は、管理者へディスプレイなどのユーザインタフェースを通してメッセージを表示する、あるいは遅延量などの統計情報収集を目的としていた場合は、統計処理を実行する、などがある。この処理中に非同期メッセージを受信した場合は、バッファ242にメッセージを保存しておき、処理が終了次第、バッファ242に保存しておいた非同期メッセージの処理を実施する。   When receiving the asynchronous message, the asynchronous communication processing unit 241 processes the asynchronous message according to the purpose of the asynchronous message. For example, if the asynchronous message is processed according to the purpose, if the message is to the administrator of the update information distribution server 200, the message is displayed to the administrator through a user interface such as a display, or statistics such as a delay amount are displayed. For the purpose of collecting information, there is a statistical process. When an asynchronous message is received during this process, the message is stored in the buffer 242, and when the process is completed, the asynchronous message stored in the buffer 242 is processed.

また、非同期通信処理部241は、非同期メッセージを送信してきた利用者装置100の情報を、予め定められた量だけリスト化しておく。このリストは中継装置選出部からの呼び出しを受けて、リストを中継装置選出部245に渡す。   In addition, the asynchronous communication processing unit 241 lists information of the user device 100 that has transmitted the asynchronous message by a predetermined amount. This list receives a call from the relay device selection unit and passes the list to the relay device selection unit 245.

バッファ242は、利用者装置100のバッファ153と同じであるため、詳細な説明を省略する。   Since the buffer 242 is the same as the buffer 153 of the user apparatus 100, detailed description thereof is omitted.

バッファ監視部243は、バッファ242の利用状況を監視する。バッファ242が溢れそうになったら、具体的には、バッファ242の利用量が予め定められた閾値を超えた場合、中継装置選出部245へその旨を知らせるアラームを出す。   The buffer monitoring unit 243 monitors the usage status of the buffer 242. When the buffer 242 is likely to overflow, specifically, when the usage amount of the buffer 242 exceeds a predetermined threshold, an alarm is issued to notify the relay device selection unit 245 of the fact.

中継装置タイマ244は、中継装置選出部245が動作してから、予め定められた時間が経過した場合、即ち、一定時間毎に、中継装置選出部245へその旨を知らせるアラームを出す。   The relay device timer 244 issues an alarm notifying the relay device selection unit 245 when a predetermined time has elapsed since the relay device selection unit 245 has been operated, that is, at regular intervals.

中継装置選出部245は、バッファ監視部243からのアラームを受信した場合、または中継装置タイマ244からのアラームを受信した場合、または中継装置管理部246からバッファ状況通知メッセージを受信した場合、中継装置選出動作を実施する。   When the relay device selection unit 245 receives an alarm from the buffer monitoring unit 243, receives an alarm from the relay device timer 244, or receives a buffer status notification message from the relay device management unit 246, the relay device Perform election operation.

中継装置選出部245は、まず、非同期通信処理部241から非同期メッセージを送信してきた利用者装置100の情報のリストを得る。また、利用者装置100からのバッファ状況通知メッセージを受信していて、そのバッファ状況通知メッセージに同様のリストが記載されていた場合は、リストを統一して、ある一定時間に非同期メッセージを発信した利用者装置100のリストを作成する。このリストには非同期メッセージを送信してきた利用者装置100の更新情報配信システム1のツリー構造における位置、および非同期メッセージを送信してきた時刻が記載されている。このリストを非同期メッセージ管理リストと呼ぶ。非同期メッセージ管理リストから、中継装置選出動作の直近における更新情報配信システム1全体の非同期メッセージの発信された頻度(発信頻度)が分かる。更新情報配信サーバ200および利用者装置100におけるバッファ量は有限長のための、中継装置選出部245は、非同期メッセージの発信頻度に基づいて中継装置の数を決定する。詳しくは、中継装置選出部245は、非同期メッセージの発信頻度と、非同期通信処理部241の非同期メッセージの処理効率と、から中継装置の数を決定する。例えば、中継装置選出動作の直近における非同期メッセージの発信頻度をa個/sec、非同期通信処理部241が非同期メッセージを処理する効率をb個/secとすると、中継装置数mは、
m=β×a/b
と計算する。βは余裕度を表すパラメータである。続いて、中継装置選出部245は、非同期メッセージ管理リストから中継装置をm個、選出する。中継装置選出部は、決定した中継装置の情報を中継装置管理部246に通知する。
The relay device selection unit 245 first obtains a list of information on the user device 100 that has transmitted the asynchronous message from the asynchronous communication processing unit 241. When a buffer status notification message is received from the user apparatus 100 and a similar list is described in the buffer status notification message, the list is unified and an asynchronous message is transmitted at a certain time. A list of user devices 100 is created. This list describes the position in the tree structure of the update information distribution system 1 of the user apparatus 100 that has transmitted the asynchronous message, and the time at which the asynchronous message was transmitted. This list is called an asynchronous message management list. From the asynchronous message management list, the frequency (transmission frequency) of asynchronous messages transmitted from the entire update information distribution system 1 immediately before the relay device selection operation is known. Since the buffer amounts in the update information distribution server 200 and the user device 100 are finite, the relay device selection unit 245 determines the number of relay devices based on the frequency of asynchronous message transmission. Specifically, the relay device selection unit 245 determines the number of relay devices from the asynchronous message transmission frequency and the asynchronous message processing efficiency of the asynchronous communication processing unit 241. For example, assuming that the frequency of sending asynchronous messages in the most recent relay device selection operation is a / sec and the efficiency of asynchronous communication processing unit 241 to process asynchronous messages is b / sec, the number of relay devices m is
m = β × a / b
And calculate. β is a parameter representing the margin. Subsequently, the relay device selection unit 245 selects m relay devices from the asynchronous message management list. The relay device selection unit notifies the relay device management unit 246 of the determined relay device information.

中継装置選出部245が中継装置を選出する方法は、上記のものに限られず、例えば以下のような方法も考えられる。即ち、中継装置選出部245は、先ず、更新情報配信システム1のツリー構造を利用者装置100から受信する利用者装置情報に基づいて把握する。次に、上記の非同期メッセージ管理リストに記載された利用者装置100のツリー構造における位置に基づいて、利用者装置100を中継装置数m個分のグループに分ける。ここで、「上記の非同期メッセージ管理リストに記載された利用者装置100のツリー構造における位置に基づいて」とは、非同期メッセージ管理リストに記載の利用者装置100が各グループに可及的に均等に所属するように、という意味である。各グループからの非同期メッセージの発信頻度のバラツキを抑えるためである。次に、中継装置選出部245は、各グループで中心となる利用者装置100を選出する。即ち、中継装置選出部245は、各グループ内で中継装置として動作させる利用者装置100を選出する。このとき、中継装置選出部245は、同一グループ内に属する複数の利用者装置100のツリー構造における位置の重心に最も近い利用者装置100を中継装置として選出する。なお、同一グループ内に属する複数の利用者装置100のツリー構造における位置に選出の直近における非同期メッセージの発信頻度で重み付けした上で、上記の重心を求めることとしてもよい。このように、同一グループに属する複数の利用者装置100のツリー構造における位置の重心に最も近い利用者装置100を中継装置として選出することで、そのグループに属する複数の利用者装置100から発信された非同期メッセージが中継装置に至るまでのホップ数を効果的に抑えることができる。更に、上記のように重み付けを実施した場合は、非同期メッセージを特に多く発信する利用者装置100と中継装置との間のホップ数を重点的に抑えることができる。   The method by which the relay device selection unit 245 selects a relay device is not limited to the above, and for example, the following method is also conceivable. That is, the relay device selection unit 245 first grasps the tree structure of the update information distribution system 1 based on user device information received from the user device 100. Next, based on the position of the user device 100 in the tree structure described in the asynchronous message management list, the user device 100 is divided into groups of m relay devices. Here, “based on the position in the tree structure of the user device 100 described in the above-mentioned asynchronous message management list” means that the user device 100 described in the asynchronous message management list is equally distributed to each group. It means to belong to. This is to prevent variations in the frequency of sending asynchronous messages from each group. Next, the relay apparatus selection part 245 selects the user apparatus 100 used as the center in each group. That is, the relay device selection unit 245 selects the user device 100 that operates as a relay device in each group. At this time, the relay device selection unit 245 selects the user device 100 closest to the center of gravity of the position in the tree structure of the plurality of user devices 100 belonging to the same group as the relay device. Note that the above-mentioned centroid may be obtained after weighting the position in the tree structure of a plurality of user devices 100 belonging to the same group by the frequency of asynchronous message transmissions most recently. As described above, by selecting the user device 100 closest to the center of gravity of the position in the tree structure of the plurality of user devices 100 belonging to the same group as the relay device, it is transmitted from the plurality of user devices 100 belonging to the group. The number of hops until the asynchronous message reaches the relay device can be effectively suppressed. Further, when weighting is performed as described above, the number of hops between the user apparatus 100 that transmits a large number of asynchronous messages and the relay apparatus can be focused on.

中継装置管理部246は、利用者装置100からバッファ状況通知メッセージを受信した場合、中継装置選出部245にバッファ状況通知メッセージを渡す。   When receiving the buffer status notification message from the user device 100, the relay device management unit 246 passes the buffer status notification message to the relay device selection unit 245.

また、中継装置管理部246は、中継装置選出部245から、中継装置の情報を得た場合、中継装置情報データベース221を更新する。さらに、中継装置管理部246は、利用者装置情報データベース222を参照し、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在する場合、中継装置の情報を記載した中継装置周知メッセージを作成し、中継装置周知メッセージを該当するひとつまたは複数の利用者装置100に送信する。   When the relay device management unit 246 obtains information about the relay device from the relay device selection unit 245, the relay device management unit 246 updates the relay device information database 221. Further, the relay device management unit 246 refers to the user device information database 222, and if there is one or more user devices 100 below the own device in the tree structure of the update information distribution system 1, information on the relay device is displayed. The described relay device well-known message is created, and the relay device well-known message is transmitted to the corresponding one or a plurality of user devices 100.

次に、本実施形態の動作について説明する。   Next, the operation of this embodiment will be described.

図7は、本実施形態による利用者装置100がツリー管理メッセージを受信した場合の動作を示すフローチャートである。動作を開始すると、まず送受信部160が他の利用者装置100、更新情報配信サーバ200、もしくは利用者装置100内の主制御部110からの通信を待つ状態(以後、アイドル状態という)となる(S300)。   FIG. 7 is a flowchart showing an operation when the user apparatus 100 according to the present embodiment receives a tree management message. When the operation is started, first, the transmitting / receiving unit 160 enters a state of waiting for communication from another user device 100, the update information distribution server 200, or the main control unit 110 in the user device 100 (hereinafter referred to as an idle state) ( S300).

利用者装置100は、アイドル状態(S300)中に、ツリー管理メッセージを受信すると(S301)、ツリー管理メッセージに記載の更新情報配信サーバ200または利用者装置100の利用者装置情報を参照し、利用者装置情報データベース122を更新し(S302)、アイドル状態に戻る(S300)。   When the user device 100 receives a tree management message in the idle state (S300) (S301), the user device 100 refers to the update device information of the update information distribution server 200 or the user device 100 described in the tree management message, and uses the user device information. The person device information database 122 is updated (S302), and the idle state is returned (S300).

図8は、本実施形態による利用者装置100が定期的にツリー管理メッセージを送信する場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、タイマを利用して定期的に利用者装置情報データベース122を参照して、ツリー管理メッセージを作成し(S311)、更新情報配信サーバ200または利用者装置に対しツリー管理メッセージを送信し(S312)、アイドル状態に戻る(S300)。   FIG. 8 is a flowchart showing an operation when the user apparatus 100 according to the present embodiment periodically transmits a tree management message. From the idle state (S300), the user device 100 refers to the user device information database 122 periodically using a timer, creates a tree management message (S311), and updates the information distribution server 200 or user. A tree management message is transmitted to the apparatus (S312), and the apparatus returns to the idle state (S300).

図9は、本実施形態による利用者装置100が更新情報メッセージを受信した場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、更新情報配信サーバ200または利用者装置100から更新情報メッセージを受信すると(S321)、更新情報メッセージに記載されたメタデータを参照し、コンテンツ情報データベース123を更新し(S322)、利用者装置情報データベース122を参照し(S323)、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在するかどうかを確認する(S324)。S324において、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在した場合、更新情報メッセージを該当するひとつまたは複数の利用者装置100に転送し(S325)、アイドル状態に戻る(S300)。S324において、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつも存在しなかった場合、アイドル状態に戻る(S300)。   FIG. 9 is a flowchart showing an operation when the user apparatus 100 according to the present embodiment receives an update information message. When the user apparatus 100 receives the update information message from the update information distribution server 200 or the user apparatus 100 from the idle state (S300) (S321), the user apparatus 100 refers to the metadata described in the update information message, and the content information database 123 is updated (S322), the user device information database 122 is referred to (S323), and it is confirmed whether or not there is one or more user devices 100 below the own device in the tree structure of the update information distribution system 1. (S324). In S324, when one or more user devices 100 below the own device exist in the tree structure of the update information distribution system 1, the update information message is transferred to the corresponding one or more user devices 100 (S325). Return to the idle state (S300). In S324, when there is no user apparatus 100 below the own apparatus in the tree structure of the update information distribution system 1, the process returns to the idle state (S300).

図10は、本実施形態による利用者装置100が中継装置周知メッセージを受信した場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、中継装置周知メッセージを受信すると(S331)、中継装置周知メッセージに記載の中継装置情報を参照し、中継装置情報データベース121を更新し(S332)、利用者装置情報データベース122を参照し(S333)、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在するかどうかを確認する(S334)。S334において、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在した場合、中継装置周知メッセージを該当するひとつまたは複数の利用者装置100に転送し(S335)、アイドル状態に戻る(S300)。S334において、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつも存在しなかった場合、アイドル状態に戻る(S300)。   FIG. 10 is a flowchart showing an operation when the user apparatus 100 according to the present embodiment receives the relay apparatus well-known message. When the user device 100 receives the relay device known message from the idle state (S300) (S331), the user device 100 updates the relay device information database 121 with reference to the relay device information described in the relay device known message (S332). The user apparatus information database 122 is referred to (S333), and it is confirmed whether one or more user apparatuses 100 below the own apparatus exist in the tree structure of the update information distribution system 1 (S334). In S334, when one or more user apparatuses 100 below the own apparatus exist in the tree structure of the update information distribution system 1, the relay apparatus well-known message is transferred to the corresponding one or more user apparatuses 100 (S335). Return to the idle state (S300). If there is no user device 100 below the own device in the tree structure of the update information distribution system 1 in S334, the process returns to the idle state (S300).

図11は、本実施形態による利用者が非同期メッセージを送信するよう操作した場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、利用者から非同期メッセージ作成動作を実行するよう操作されると(S341)、中継装置情報データベース121を参照し(S342)、非同期メッセージを転送すべき中継装置を選択し(S343)、その中継装置をあて先として非同期メッセージを作成し(S344)、非同期メッセージを送信し(S345)、アイドル状態に戻る(S300)。   FIG. 11 is a flowchart illustrating an operation when the user operates to transmit an asynchronous message according to the present embodiment. When the user apparatus 100 is operated from the idle state (S300) to execute an asynchronous message creation operation (S341), the user apparatus 100 refers to the relay apparatus information database 121 (S342) and should transfer the asynchronous message. A relay device is selected (S343), an asynchronous message is created with the relay device as the destination (S344), the asynchronous message is transmitted (S345), and the state returns to the idle state (S300).

図12は、本実施形態による利用者装置100が定期的に集約済みの非同期メッセージを送信する場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、集約タイマ152が動作すると(S351)、更新情報配信サーバ200へ、集約済みの非同期メッセージを送信し(S352)、アイドル状態に戻る(S300)。   FIG. 12 is a flowchart showing an operation when the user apparatus 100 according to the present embodiment periodically transmits an aggregated asynchronous message. When the aggregation timer 152 operates (S351) from the idle state (S300), the user device 100 transmits the aggregated asynchronous message to the update information distribution server 200 (S352), and returns to the idle state (S300).

図13は、本実施形態による利用者装置100が非同期メッセージを受信した場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、非同期メッセージを受信すると(S361)、非同期メッセージを送信してきた利用者装置100の情報を、予め定められた量だけリスト化する(S362)。続いて、利用者装置100は、集約処理中かどうか確認する(S363)。集約処理中であった場合は(S363:YES)、非同期メッセージをバッファ153に保存し(S364)、アイドル状態に戻る(S300)。集約処理中でなかった場合は(S363:YES)、非同期メッセージを集約処理する(S365)。集約処理が終了した後、バッファを確認し、バッファ153に処理待ちメッセージが存在するかどうかを確認する(S366)。バッファ153に処理待ちメッセージが存在する場合は(S366:YES)、S365に移行する。バッファ153に処理待ちメッセージが存在しない場合は(S366:NO)、アイドル状態に戻る(S300)。   FIG. 13 is a flowchart showing an operation when the user apparatus 100 according to the present embodiment receives an asynchronous message. When the user apparatus 100 receives the asynchronous message from the idle state (S300) (S361), the user apparatus 100 lists the information of the user apparatus 100 that has transmitted the asynchronous message by a predetermined amount (S362). Subsequently, the user device 100 confirms whether or not the aggregation process is being performed (S363). If the aggregation process is in progress (S363: YES), the asynchronous message is stored in the buffer 153 (S364), and the process returns to the idle state (S300). If the aggregation process is not in progress (S363: YES), the asynchronous message is aggregated (S365). After the aggregation process is completed, the buffer is checked, and it is checked whether there is a process waiting message in the buffer 153 (S366). If there is a message waiting for processing in the buffer 153 (S366: YES), the process proceeds to S365. When there is no processing waiting message in the buffer 153 (S366: NO), the process returns to the idle state (S300).

図14は、本実施形態による利用者装置100が定期的にバッファ153の使用量を確認する場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、定期的にバッファ153の使用量を確認し(S371)、バッファ153が溢れそうかどうか確認する(S372)。バッファ153の利用量が予め定められた閾値を超えた場合(S372:YES)、非同期メッセージを送信してきた利用者装置100のリストを含むバッファ状況通知メッセージを作成し(S373)、バッファ状況通知メッセージを更新情報配信サーバ200へ送信し(S374)、アイドル状態に戻る(S300)。   FIG. 14 is a flowchart showing an operation when the user device 100 according to the present embodiment periodically checks the usage amount of the buffer 153. From the idle state (S300), the user device 100 periodically checks the usage amount of the buffer 153 (S371), and checks whether the buffer 153 is likely to overflow (S372). When the usage amount of the buffer 153 exceeds a predetermined threshold (S372: YES), a buffer status notification message including a list of user devices 100 that have transmitted the asynchronous message is created (S373), and the buffer status notification message is generated. Is transmitted to the update information distribution server 200 (S374), and the process returns to the idle state (S300).

図15は、本実施形態による利用者装置100において予め定められた時間中、常にバッファ153の利用がなかった場合の動作を示すフローチャートである。利用者装置100は、アイドル状態から(S300)、予め定められた時間中、常にバッファ153の利用がなかった場合にアラームが動作し(S381)、予め定められた時間中、常にバッファ153の利用がなかったという情報を含むバッファ状況通知メッセージを作成し(S382)、バッファ状況通知メッセージを更新情報配信サーバ200へ送信し(S383)、アイドル状態に戻る(S300)。   FIG. 15 is a flowchart showing an operation when the buffer 153 is not always used during a predetermined time in the user device 100 according to the present embodiment. From the idle state (S300), the user apparatus 100 operates an alarm when the buffer 153 is not always used during a predetermined time (S381), and always uses the buffer 153 during the predetermined time. A buffer status notification message including information that there was no message is created (S382), the buffer status notification message is transmitted to the update information distribution server 200 (S383), and the state returns to the idle state (S300).

図16は、本実施形態による更新情報配信サーバ200内でコンテンツ情報データベース223が更新された場合の動作を示すフローチャートである。動作を開始すると、まず送受信部260が他の利用者装置100、もしくは更新情報配信サーバ200内の主制御部210からの通信を待つ状態(以後、アイドル状態という)となる(S400)。   FIG. 16 is a flowchart showing an operation when the content information database 223 is updated in the update information distribution server 200 according to the present embodiment. When the operation is started, the transmission / reception unit 260 first enters a state of waiting for communication from another user device 100 or the main control unit 210 in the update information distribution server 200 (hereinafter referred to as an idle state) (S400).

更新情報配信サーバ200が、ツリー管理メッセージを受信する動作、および定期的にツリー管理メッセージを送信する動作は、図7及び図8に示す利用者装置100の動作を同じであるため、詳細な説明は省略する。   The operation of the update information distribution server 200 receiving the tree management message and the operation of periodically transmitting the tree management message are the same as the operation of the user apparatus 100 shown in FIGS. Is omitted.

更新情報配信サーバ200は、アイドル状態から(S400)、利用者からのコンテンツ情報データベース223の更新操作を受けると(S401)、コンテンツ情報データベースを更新し(S402)、利用者装置情報データベース222を参照し(S403)、更新情報配信システム1のツリー構造において自装置より下の利用者装置がひとつまたは複数存在するかどうか確認する(S404)。更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在する場合(S404:YES)、更新情報メッセージ作成し(S405)、更新情報メッセージを該当するひとつまたは複数の利用者装置100に送信し(406)、アイドル状態に戻る(S400)。更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつも存在しなかった場合(S404:NO)、アイドル状態に戻る(S400)。   When the update information distribution server 200 receives an update operation of the content information database 223 from the user from the idle state (S400) (S401), the update information distribution server 200 updates the content information database (S402) and refers to the user device information database 222. Then, it is confirmed whether or not there is one or more user devices below the own device in the tree structure of the update information distribution system 1 (S404). In the tree structure of the update information distribution system 1, when one or a plurality of user devices 100 below the own device exist (S404: YES), an update information message is created (S405), and the update information message is classified into one or a plurality of corresponding ones. It transmits to the user apparatus 100 (406) and returns to the idle state (S400). If there is no user device 100 below the own device in the tree structure of the update information distribution system 1 (S404: NO), the system returns to the idle state (S400).

図17は、本実施形態による更新情報配信サーバ200が非同期メッセージを受信した場合の動作を示すフローチャートである。更新情報配信サーバ200は、アイドル状態から(400)、非同期メッセージを受信すると(S411)、非同期メッセージを送信してきた利用者装置100の情報を、予め定められた量だけリスト化する(S412)。続いて、利用者装置100は、処理中かどうか確認する(S413)。処理中であった場合は(S413:YES)、非同期メッセージをバッファ242に保存し(S414)、アイドル状態に戻る(S400)。処理中でなかった場合は(S413:NO)、非同期メッセージを処理する(S415)。処理が終了した後、バッファ242を確認し、バッファ242に処理待ちメッセージが存在するかどうかを確認する(S416)。バッファ242に処理待ちメッセージが存在する場合(S416:YES)、S415に移行する。バッファ242に処理待ちメッセージが存在しない場合(S416:NO)、アイドル状態に戻る(S400)。   FIG. 17 is a flowchart showing an operation when the update information distribution server 200 according to the present embodiment receives an asynchronous message. When the update information distribution server 200 receives the asynchronous message from the idle state (400) (S411), the update information distribution server 200 lists the information of the user device 100 that has transmitted the asynchronous message by a predetermined amount (S412). Subsequently, the user device 100 checks whether processing is in progress (S413). If the process is in progress (S413: YES), the asynchronous message is stored in the buffer 242 (S414), and the process returns to the idle state (S400). If not being processed (S413: NO), the asynchronous message is processed (S415). After the processing is completed, the buffer 242 is checked, and it is checked whether there is a processing waiting message in the buffer 242 (S416). When there is a message waiting for processing in the buffer 242 (S416: YES), the process proceeds to S415. If there is no message waiting for processing in the buffer 242 (S416: NO), the process returns to the idle state (S400).

図18は、本実施形態による更新情報配信サーバ200が定期的にバッファ242の使用量を確認する場合の動作を示すフローチャートである。更新情報配信サーバ200は、アイドル状態から(S400)、定期的にバッファ242の使用量を確認し(S421)、バッファ242が溢れそうかどうか確認する(S422)。バッファ242の利用量が予め定められた閾値を超えた場合(S422:YES)、中継装置選出処理S423に移行する。バッファ242の利用量が予め定められた閾値を超えていない場合(S422:NO)、アイドル状態に戻る(S400)。   FIG. 18 is a flowchart showing an operation when the update information distribution server 200 according to the present embodiment periodically checks the usage amount of the buffer 242. From the idle state (S400), the update information distribution server 200 periodically checks the usage amount of the buffer 242 (S421), and checks whether the buffer 242 is likely to overflow (S422). When the usage amount of the buffer 242 exceeds a predetermined threshold (S422: YES), the process proceeds to the relay device selection process S423. When the usage amount of the buffer 242 does not exceed a predetermined threshold (S422: NO), the process returns to the idle state (S400).

図19は、本実施形態による更新情報配信サーバ200が定期的に中継装置タイマ244を動作させる動作を示すフローチャートである。更新情報配信サーバ200は、アイドル状態から(S400)、前回の中継装置選出動作から、予め定められた時間が経過した場合、中継装置タイマ244を動作させ(S431)、中継装置選出処理S423に移行する。   FIG. 19 is a flowchart illustrating an operation in which the update information distribution server 200 according to the present embodiment periodically operates the relay device timer 244. From the idle state (S400), the update information distribution server 200 operates the relay device timer 244 when a predetermined time has elapsed from the previous relay device selection operation (S431), and proceeds to the relay device selection processing S423. To do.

図20は、本実施形態による更新情報配信サーバ200がバッファ状況通知メッセージを受信した場合の動作を示すフローチャートである。更新情報配信サーバ200は、アイドル状態から(S400)、バッファ状況通知メッセージを受信すると(S441)、中継装置選出処理S423に移行する。   FIG. 20 is a flowchart showing an operation when the update information distribution server 200 according to the present embodiment receives a buffer status notification message. When the update information distribution server 200 receives the buffer status notification message from the idle state (S400) (S441), the update information distribution server 200 proceeds to the relay device selection process S423.

図21は、本実施形態による中継装置選出の動作を示すフローチャートである。更新情報配信サーバ200は、S422、S431、S441から中継装置選出動作に移行する(S423)。更新情報配信サーバ200は、自サーバへ非同期メッセージを送信した利用者装置100のリストと、他の中継装置へ非同期メッセージを送信した利用者装置100のリストと、を統合したリストとなる非同期メッセージ管理リストを作成し(S451)、非同期メッセージの発信頻度(および処理効率)から中継装置の数を決定する(S452)。さらに更新情報配信サーバ200は、非同期メッセージ管理リストに記載された利用者装置100の中から利用者装置100を中継装置として選出し(S453)、中継装置情報データベースを更新し(S454)、利用者装置情報データベース222を参照し(S455)、更新情報配信システム1のツリー構造において自装置より下の利用者装置がひとつまたは複数存在するかどうかを確認する(S456)。S456において、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在した場合(S456:YES)、中継装置の情報を記載した中継装置周知メッセージを作成し(S457)、中継装置周知メッセージを該当するひとつまたは複数の利用者装置100に送信し(S458)、アイドル状態に戻る(S400)。S456において、更新情報配信システム1のツリー構造において自装置より下の利用者装置がひとつも存在しなかった場合(S456:NO)、アイドル状態に戻る(S400)。   FIG. 21 is a flowchart showing an operation of selecting a relay device according to this embodiment. The update information distribution server 200 shifts from S422, S431, and S441 to the relay device selection operation (S423). The update information distribution server 200 is an asynchronous message management that is a list in which the list of user devices 100 that transmitted asynchronous messages to its own server and the list of user devices 100 that transmitted asynchronous messages to other relay devices are integrated. A list is created (S451), and the number of relay devices is determined from the frequency (and processing efficiency) of asynchronous message transmission (S452). Further, the update information distribution server 200 selects the user device 100 as a relay device from the user devices 100 described in the asynchronous message management list (S453), updates the relay device information database (S454), and the user. The apparatus information database 222 is referred to (S455), and it is confirmed whether or not there is one or more user apparatuses below the own apparatus in the tree structure of the update information distribution system 1 (S456). In S456, when one or a plurality of user apparatuses 100 below the own apparatus exist in the tree structure of the update information distribution system 1 (S456: YES), a relay apparatus well-known message describing the relay apparatus information is created (S457). ), The relay device well-known message is transmitted to the corresponding one or more user devices 100 (S458), and the idle state is returned (S400). In S456, when there is no user apparatus below the own apparatus in the tree structure of the update information distribution system 1 (S456: NO), the process returns to the idle state (S400).

なお、図7〜21で説明したフローチャートに係る各ステップの動作内容は、利用者装置100と更新情報配信サーバ200とが予め備えるコンピュータ(主制御部)で動作するプログラムとして実行させるように構成することができる。   7 to 21 is configured to be executed as a program that operates on a computer (main control unit) provided in advance in the user device 100 and the update information distribution server 200. be able to.

ここで、上述したフローチャートの動作を具現化した例を図1に基づいて説明する。図1において、中継装置選出部245は、n23、n44、n11を中継装置として選出したとする。この場合、n9で発信された非同期メッセージは、最寄りの中継装置であるn23に送信され、n23は、受信した非同期メッセージを更新情報配信サーバ200であるn10にダイレクトに送信する。従って、n9で生成された非同期メッセージがn10に至るまでのホップ数は、ツリーをn23、n3、n8と順々に遡って中継される場合よりも少なくなり、即ち、2となる。   Here, an example in which the operation of the above-described flowchart is embodied will be described with reference to FIG. In FIG. 1, it is assumed that the relay device selection unit 245 selects n23, n44, and n11 as relay devices. In this case, the asynchronous message transmitted at n9 is transmitted to n23 which is the nearest relay device, and n23 transmits the received asynchronous message directly to n10 which is the update information distribution server 200. Therefore, the number of hops until the asynchronous message generated at n9 reaches n10 is smaller than that when the tree is relayed back to n23, n3, and n8 in order, that is, two.

同様に、n18で生成された非同期メッセージは、最寄りの中継装置であるn23にダイレクトに送信され、n23は、受信した非同期メッセージをn10にダイレクトに送信する。従って、n18で生成された非同期メッセージがn10に至るまでのホップ数は、ツリーをn3、n8と順々に遡って中継される場合よりも少なく、即ち、2となる。   Similarly, the asynchronous message generated at n18 is transmitted directly to the nearest relay device n23, and n23 transmits the received asynchronous message directly to n10. Therefore, the number of hops until the asynchronous message generated at n18 reaches n10 is smaller than that when the tree is relayed back to n3 and n8 in order, that is, two.

(まとめ:1、9、10)
以上説明したように上記実施形態において、更新情報配信サーバ200(ルートノード)から複数の利用者装置100(子ノード)にコンテンツ更新情報(情報)を配信するためにオーバーレイネットワーク上でツリー状に構築された更新情報配信システム1(ネットワーク)に参加可能なノードの一例としての更新情報配信サーバ200は、以下のように構成されている。更新情報配信サーバ200は、中継装置選出部245を備える。中継装置選出部245は、中継装置(中継ノード)として機能させる利用者装置100を、前記更新情報配信システム1に参加可能な前記複数の利用者装置100の中から選出する。中継装置は、前記複数の利用者装置100のうち何れかから前記更新情報配信サーバ200宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを前記更新情報配信サーバ200へ向けて中継する。詳しくは、中継装置は、受信した前記非同期メッセージを、上記ツリーを順々に遡って前記更新情報配信サーバ200へ向けて中継する場合と比較して少ないホップ数となるように前記更新情報配信サーバ200へ向けて中継する。以上の構成によれば、利用者装置100から更新情報配信サーバ200への非同期メッセージの送信に要する時間を短縮することができる。
(Summary: 1, 9, 10)
As described above, in the above embodiment, the update information distribution server 200 (root node) is constructed in a tree shape on the overlay network in order to distribute content update information (information) to a plurality of user devices 100 (child nodes). The update information distribution server 200 as an example of a node that can participate in the update information distribution system 1 (network) is configured as follows. The update information distribution server 200 includes a relay device selection unit 245. The relay device selection unit 245 selects the user device 100 to function as a relay device (relay node) from the plurality of user devices 100 that can participate in the update information distribution system 1. The relay device receives an asynchronous message transmitted from any one of the plurality of user devices 100 to the update information distribution server 200 and relays the received asynchronous message toward the update information distribution server 200. . Specifically, the update device distributes the asynchronous message so that the number of hops is smaller compared to the case where the received asynchronous message is relayed to the update information distribution server 200 by going back the tree one after another. Relay to 200. According to the above configuration, it is possible to reduce the time required for transmitting an asynchronous message from the user device 100 to the update information distribution server 200.

なお、更新情報配信サーバ200から利用者装置100に配信する情報としては、例示のコンテンツ更新情報に限られず、コンテンツ内容そのものであってもよいし、コンテンツに関する他の情報であってもよい。更に言えば、上記の情報は、コンテンツに関連のない情報であってもよい。   Note that the information distributed from the update information distribution server 200 to the user device 100 is not limited to the example content update information, and may be the content content itself or other information related to the content. Furthermore, the above information may be information not related to the content.

(2)また、中継装置選出部245は、上記選出の直近において非同期メッセージを発信した利用者装置100の中から、前記中継装置として機能させる利用者装置100を選出する。以上の構成によれば、上記選出前後に非同期メッセージを発信する傾向にある利用者装置100を前記中継装置とすることができるので、発信元自体が中継装置となるという点で、ホップ数の削減に寄与する。 (2) Moreover, the relay apparatus selection part 245 selects the user apparatus 100 made to function as the said relay apparatus from the user apparatuses 100 which transmitted the asynchronous message in the immediate vicinity of the said selection. According to the above configuration, since the user apparatus 100 that tends to transmit asynchronous messages before and after the selection can be used as the relay apparatus, the number of hops can be reduced in that the transmission source itself becomes the relay apparatus. Contribute to.

(3)また、中継装置として機能可能な利用者装置100は、非同期メッセージの中継に利用可能なバッファ153を有する。中継装置選出部245は、前記中継装置として機能させる利用者装置100の数を、上記選出の直近における非同期メッセージの更新情報配信システム1全体の発信頻度に基づいて決定する。以上の構成によれば、非同期メッセージの更新情報配信システム1全体の発信頻度が変動した場合、前記中継装置の数も同様に変動する。一方、各中継装置は、上記の中継に利用可能なバッファを有している。従って、上記受信頻度が変動した場合、ネットワーク全体のバッファの量が増減することとなり、この結果、前記更新情報配信サーバ200及び各中継装置のバッファ溢れを強力に抑制することできるようになる。 (3) In addition, the user device 100 that can function as a relay device has a buffer 153 that can be used to relay asynchronous messages. The relay device selection unit 245 determines the number of user devices 100 to function as the relay device based on the transmission frequency of the entire asynchronous message update information distribution system 1 immediately after the selection. According to the above configuration, when the transmission frequency of the asynchronous message update information distribution system 1 as a whole varies, the number of relay devices also varies. On the other hand, each relay apparatus has a buffer that can be used for the relay. Therefore, when the reception frequency fluctuates, the amount of buffer in the entire network increases and decreases, and as a result, buffer overflow of the update information distribution server 200 and each relay device can be strongly suppressed.

(4)また、中継装置選出部245は、前記更新情報配信サーバ200のバッファ242が溢れそうになったら、上記の選出を実行する。以上の構成によれば、更新情報配信サーバ200のバッファ溢れをダイレクトに抑制することが可能となる。 (4) Further, the relay device selection unit 245 executes the above selection when the buffer 242 of the update information distribution server 200 is about to overflow. According to the above configuration, the buffer overflow of the update information distribution server 200 can be directly suppressed.

(5)また、中継装置選出部245は、前記中継装置として機能させる利用者装置100の上記バッファ153が溢れそうになったら、上記の選出を再実行する。以上の構成によれば、前記中継装置として機能させる利用者装置100の上記バッファ溢れをダイレクトに抑制することが可能となる。 (5) The relay device selection unit 245 re-executes the selection when the buffer 153 of the user device 100 that functions as the relay device is about to overflow. According to the above configuration, it is possible to directly suppress the buffer overflow of the user apparatus 100 that functions as the relay apparatus.

(6)また、中継装置選出部245は、前記中継装置として機能させる利用者装置100の上記バッファ153が一定時間、利用されなかったら、上記の選出を再実行する。 (6) Further, the relay device selection unit 245 re-executes the above selection when the buffer 153 of the user device 100 that functions as the relay device is not used for a certain period of time.

(7)また、中継装置選出部245は、一定時間毎に、上記の選出を実行する。以上の構成によれば、非同期メッセージの更新情報配信システム1全体の発信頻度の変動に対して、更新情報配信システム1全体の非同期メッセージのために利用されるバッファの量が一層敏感に変動することとなる。 (7) Moreover, the relay apparatus selection part 245 performs said selection for every fixed time. According to the above configuration, the amount of the buffer used for the asynchronous message of the entire update information distribution system 1 varies more sensitively with respect to the variation of the transmission frequency of the entire update information distribution system 1 of the asynchronous message. It becomes.

(8)また、中継装置として機能する利用者装置100は、前記複数の利用者装置100のうち何れかから前記更新情報配信サーバ200宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを、集約した上で、前記更新情報配信サーバ200へ向けて中継する。以上の構成によれば、更新情報配信サーバ200の処理負荷を軽減することができる。 (8) In addition, the user device 100 functioning as a relay device receives an asynchronous message transmitted from any one of the plurality of user devices 100 to the update information distribution server 200, and receives the received asynchronous message. Are aggregated and relayed to the update information distribution server 200. According to the above configuration, the processing load on the update information distribution server 200 can be reduced.

また、上述した説明では、主に利用者装置100に対する接続を用いて説明したが、ルートノードとなる更新情報配信サーバ200も利用者装置100と同様の子ノードとして動作してもよい。   In the above description, the connection to the user apparatus 100 has been mainly described. However, the update information distribution server 200 serving as a root node may also operate as a child node similar to the user apparatus 100.

また、上述した説明では、利用者装置100の中継装置選択部142において、中継装置選択の際に、自利用者装置100の更新情報配信システム1のツリー構造の位置と中継装置情報データベース121に記載のひとつまたは複数の中継装置と更新情報配信サーバ200の位置を比較することによって、中継装置を選択する、としたが、中継装置選択において、中継装置選択部142における中継装置選択の方法を、利用者装置100のクライアントIDの相関値を利用するようにすることもできる。例えば、中継装置情報データベース121に記載のひとつまたは複数の中継装置と更新情報配信サーバ200のIDと自利用者装置100のIDの相関値を計算し、最も小さいまたは最も大きい値となる中継装置を選択する、などである。   In the above description, the relay device selection unit 142 of the user device 100 describes the position of the tree structure of the update information distribution system 1 of the own user device 100 and the relay device information database 121 when selecting the relay device. The relay device is selected by comparing the position of one or a plurality of relay devices and the update information distribution server 200. However, in the relay device selection, the relay device selection method in the relay device selection unit 142 is used. It is also possible to use the correlation value of the client ID of the user device 100. For example, the correlation value between one or a plurality of relay devices described in the relay device information database 121 and the ID of the update information distribution server 200 and the ID of the own user device 100 is calculated, and the relay device having the smallest or largest value is calculated. To select.

また、上述した説明では、更新情報配信サーバ200の中継装置選出部245において、中継装置選択は、バッファ監視部243からのアラームを受信した場合、または中継装置タイマ244からのアラームを受信した場合、または中継装置管理部246からバッファ状況通知メッセージを受信した場合、中継装置選出動作を実施する、としたが、予め非同期メッセージの受信状況が予測できる場合は、非同期メッセージの増減を予測して、事前に中継装置選出を実施することもできる。予め非同期メッセージの受信状況が予測できる場合とは、例えば、夜間には非同期メッセージが増える、特定の利用者装置100が定期的に非同期メッセージを送信してくる、などがある。   In the above description, in the relay device selection unit 245 of the update information distribution server 200, the relay device selection is performed when an alarm is received from the buffer monitoring unit 243 or when an alarm is received from the relay device timer 244. Alternatively, when the buffer status notification message is received from the relay device management unit 246, the relay device selection operation is performed. However, when the reception status of the asynchronous message can be predicted in advance, the increase / decrease of the asynchronous message is predicted in advance. It is also possible to carry out relay device selection. The case where the reception status of asynchronous messages can be predicted in advance includes, for example, that asynchronous messages increase at night, and specific user devices 100 periodically transmit asynchronous messages.

また、上述した説明では、利用者装置100のバッファ状況通知部155において、バッファ監視部154からの2種のアラームを受けて、バッファ状況通知メッセージにアラーム情報を記載して、更新情報配信サーバ200へバッファ状況通知メッセージを送信することによって、更新情報配信サーバ200における中継装置選出動作を実施させる、としたが、利用者装置100内に更新情報配信サーバ200の中継装置選出部245相当の機能を追加し、利用者装置100で中継装置の選出を実施することもできる。換言すれば、更新情報配信サーバ200が中継装置の選出を実行することに代えて、利用者装置100が中継装置の選出を実行するようにしてもよい。また、更新情報配信サーバ200に加えて利用者装置100も中継装置の選出を実行できるようにしてもよい。この場合は、利用者装置による中継装置選出動作の後、選出されたひとつまたは複数の中継装置の情報を更新情報配信サーバ200へ通知する。選出されたひとつまたは複数の中継装置の情報を通知された更新情報配信サーバ200は、中継装置情報データベース221を更新し、利用者装置情報データベース222を参照し、更新情報配信システム1のツリー構造において自装置より下の利用者装置100がひとつまたは複数存在する場合、中継装置の情報を記載した中継装置周知メッセージを作成し、中継装置周知メッセージを該当するひとつまたは複数の利用者装置100に送信する。   In the above description, the buffer status notification unit 155 of the user apparatus 100 receives two types of alarms from the buffer monitoring unit 154, describes the alarm information in the buffer status notification message, and updates the information distribution server 200. Although the relay apparatus selection operation in the update information distribution server 200 is performed by transmitting the buffer status notification message to the user apparatus 100, a function corresponding to the relay apparatus selection unit 245 of the update information distribution server 200 is provided in the user apparatus 100. In addition, the user apparatus 100 can select a relay apparatus. In other words, instead of the update information distribution server 200 selecting the relay device, the user device 100 may select the relay device. In addition to the update information distribution server 200, the user apparatus 100 may be able to select a relay apparatus. In this case, after the relay device selection operation by the user device, information of the selected one or more relay devices is notified to the update information distribution server 200. In the tree structure of the update information distribution system 1, the update information distribution server 200 notified of the information of the selected one or more relay apparatuses updates the relay apparatus information database 221 and refers to the user apparatus information database 222. When there is one or more user apparatuses 100 below the own apparatus, a relay apparatus well-known message in which information on the relay apparatus is described is created, and the relay apparatus well-known message is transmitted to the corresponding one or more user apparatuses 100. .

また、上述した説明では、更新情報配信サーバ200の中継装置選出部245において、中継装置を選出する際に、リストに記載された利用者装置100の更新情報配信システム1のツリー構造における位置から、利用者装置100を中継装置数m分のグループに分け、そのグループそれぞれで中心となる利用者装置100を選出する、と例示したが、中継装置選出を、利用者装置100のクライアントIDを利用するようにすることもできる。例えば、中継装置選出動作開始時間と、非同期メッセージ管理リストに記載の利用者装置100のIDとのハッシュ計算結果をソートし、下からまたは上からm個の利用者装置100を中継装置として選出する、などである。このように、中継装置選出動作開始時間と、非同期メッセージ管理リストに記載の利用者装置100のIDとのハッシュ計算結果を用いることで、特定の利用者装置を何度も選出するような偏りをなくし、選出動作の度にランダムに利用者装置100を中継装置として選出することができる。   In the above description, when the relay device selection unit 245 of the update information distribution server 200 selects a relay device, the position in the tree structure of the update information distribution system 1 of the user device 100 described in the list is determined. The user apparatus 100 is divided into groups of the number m of relay apparatuses, and the user apparatus 100 as the center is selected in each group. However, the relay apparatus selection is performed using the client ID of the user apparatus 100. It can also be done. For example, the hash calculation results of the relay device selection operation start time and the ID of the user device 100 described in the asynchronous message management list are sorted, and m user devices 100 from the bottom or the top are selected as relay devices. , Etc. In this way, by using the hash calculation result of the relay device selection operation start time and the ID of the user device 100 described in the asynchronous message management list, a bias that repeatedly selects a specific user device can be avoided. Instead, the user device 100 can be selected as a relay device at random for each selection operation.

また、上述した説明では、更新情報配信サーバ200の中継装置選出部245において、中継装置を選出する際に、リストに記載された利用者装置100の更新情報配信システム1のツリー構造における位置から、利用者装置を中継装置数m分のグループに分け、そのグループそれぞれで、更新情報配信システム1のツリー構造における位置を座標として、重心を計算する、と例示したが、この計算において、前述したように、中継装置候補となっている利用者装置100のリソース利用状況、ツリー参加経過時間、中継装置稼動経験・時間などで重み付けして計算することもできる。   In the above description, when the relay device selection unit 245 of the update information distribution server 200 selects a relay device, the position in the tree structure of the update information distribution system 1 of the user device 100 described in the list is determined. The user apparatus is divided into groups corresponding to the number m of relay apparatuses, and the center of gravity is calculated by using the position in the tree structure of the update information distribution system 1 as coordinates in each group. In this calculation, as described above, In addition, the calculation can be performed by weighting the resource usage status of the user device 100 as a relay device candidate, the tree participation elapsed time, the relay device operation experience / time, and the like.

また、上述した説明では、更新情報配信サーバ200の中継装置選出部245において、中継装置を選出する際に、リストに記載された利用者装置100の中から中継装置を選出する、としたが、リストに記載された利用者装置100ではなく、バッファ溢れを起こしそうになった中継装置の更新情報配信システム1のツリー構造における子にあたる利用者装置100を新たな中継装置として選出することもできる。   In the above description, when the relay device selection unit 245 of the update information distribution server 200 selects a relay device, the relay device is selected from the user devices 100 listed. Instead of the user device 100 described in the list, the user device 100 that is a child in the tree structure of the update information distribution system 1 of the relay device that is likely to cause buffer overflow can be selected as a new relay device.

また、上述した説明では、中継装置となった利用者装置100は、集約タイマ152からのアラームを契機に、更新情報配信サーバ200へ、集約済みの非同期メッセージを送信する、としたが、更新情報配信サーバ200のさらなる負荷軽減のために、中継装置を階層化し、更新情報配信サーバ200が、集約済みの非同期メッセージを中継する別種の中継装置を選出し、中継装置となった利用者装置100は、集約タイマ152からのアラームを契機に、別種の中継装置へ、集約済みの非同期メッセージを送信する、とすることもできる。即ち、必ずしも、中継装置は、受信した非同期メッセージをダイレクトに更新情報配信サーバ200に送信する必要はない、ということである。   In the above description, the user apparatus 100 that has become a relay apparatus transmits an aggregated asynchronous message to the update information distribution server 200 in response to an alarm from the aggregation timer 152. In order to further reduce the load on the distribution server 200, the relay apparatus is hierarchized, and the update information distribution server 200 selects another type of relay apparatus that relays the aggregated asynchronous messages, and the user apparatus 100 that has become the relay apparatus In response to an alarm from the aggregation timer 152, an aggregated asynchronous message may be transmitted to another type of relay device. That is, the relay device does not necessarily need to directly transmit the received asynchronous message to the update information distribution server 200.

以上説明したように、更新情報配信サーバ200または中継装置として選出された利用者装置100のバッファ153が溢れそうになった場合、中継装置として選出された利用者装置のバッファ153が一定時間利用されなかった場合、定期的な中継装置見直しの場合に、非同期メッセージを送信してきたノードの更新情報配信システム1のツリー構造における位置と、非同期メッセージを送信した時間と、非同期メッセージを処理する効率から、中継装置として動作させる利用者装置100を選出し、中継装置として選出された利用者装置100が、他の利用者装置100からの非同期メッセージを中継する構成とすることで、利用者装置100から更新情報配信サーバ200への非同期メッセージ通信において、複数の利用者装置100からのメッセージ頻度が大きく変化する場合においても、更新情報配信サーバのバッファ242溢れを抑え、かつ少ない転送回数で利用者装置100から更新情報配信サーバ200へメッセージを送信できる。   As described above, when the buffer 153 of the user device 100 selected as the update information distribution server 200 or the relay device is about to overflow, the buffer 153 of the user device selected as the relay device is used for a certain period of time. If not, in the case of periodic review of the relay device, from the position in the tree structure of the update information distribution system 1 of the node that sent the asynchronous message, the time when the asynchronous message was sent, and the efficiency of processing the asynchronous message, The user apparatus 100 to be operated as the relay apparatus is selected, and the user apparatus 100 selected as the relay apparatus is configured to relay the asynchronous message from the other user apparatus 100, thereby updating from the user apparatus 100. In asynchronous message communication to the information distribution server 200, a plurality of user devices 100 Even when the message frequency of al varies greatly suppress the overflow buffer 242 of update information distribution server, and less able to send messages from the user device 100 to the update information distribution server 200 in the number of transfers.

これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。   Although the present invention has been described with the specific embodiments shown in the drawings, the present invention is not limited to the embodiments shown in the drawings, and is known so far as long as the effects of the present invention are achieved. It goes without saying that any configuration can be adopted.

(付記1)
複数の利用者装置と更新情報配信サーバとをノードとしてコンテンツ毎の論理ネットワークを構成するコンテンツ配信システムであって、利用者装置から更新情報配信サーバへの非同期メッセージを送信する場合において、利用者装置は中継装置として選出された他の利用者装置または更新情報配信サーバを宛先として非同期メッセージを送信し、更新情報配信サーバまたは中継装置として選出された利用者装置の非同期メッセージのためのバッファが溢れそうになった場合、または中継装置として選出された利用者装置のバッファが一定時間利用されなかった場合、または定期的な中継装置見直しの場合に、非同期メッセージを送信してきたノードの更新情報配信システムのツリー構造における位置、非同期メッセージを送信した時間と、非同期メッセージを処理する効率から、中継装置として動作させる利用者装置を選出し、中継装置として選出された利用者装置が、他の利用者装置からの非同期メッセージを中継する、ことを特徴とするメッセージ配信システム。
(Appendix 1)
A content distribution system that configures a logical network for each content using a plurality of user devices and an update information distribution server as nodes, and in the case of transmitting an asynchronous message from the user device to the update information distribution server, the user device Sends asynchronous messages destined for other user devices or update information distribution servers elected as relay devices, and the buffer for asynchronous messages of user devices elected as update information distribution servers or relay devices is likely to overflow Of the update information distribution system of the node that sent the asynchronous message when the buffer of the user device selected as the relay device has not been used for a certain period of time, or when the relay device is periodically reviewed The position in the tree structure, the time the asynchronous message was sent, A message characterized by selecting a user device to be operated as a relay device from the efficiency of processing a synchronous message, and the user device selected as the relay device relays an asynchronous message from another user device. Distribution system.

(付記2)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、中継装置として選出されたノードは、非同期メッセージを受信すると非同期メッセージを集約処理し、集約処理中に非同期メッセージを受信した場合は、バッファに非同期メッセージを保存しておき、集約処理が終了次第、バッファに保存しておいた非同期メッセージの集約処理を実施し、定期的に更新情報配信サーバへ、集約済みの非同期メッセージを送信することを特徴とするノード。
(Appendix 2)
A node that includes multiple user devices and an update information distribution server that constitute a logical network for each content, and the node selected as a relay device aggregates asynchronous messages when it receives asynchronous messages, and is in the process of aggregating When an asynchronous message is received, the asynchronous message is stored in the buffer, and as soon as the aggregation process is completed, the aggregation process of the asynchronous message stored in the buffer is performed and periodically sent to the update information distribution server. A node characterized by sending aggregated asynchronous messages.

(付記3)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、中継装置として選出されたノードは、バッファを監視し、バッファ利用量が予め定められた閾値を超えた場合、非同期メッセージを送信してきたノードのリストを含むバッファ状況通知メッセージを更新情報配信サーバに送信し、予め定められた時間中、常にバッファ利用がなかった場合、その旨を知らせるバッファ状況通知メッセージを更新情報配信サーバに送信することを特徴とするノード。
(Appendix 3)
A node including a plurality of user devices and an update information distribution server constituting a logical network for each content, and a node selected as a relay device monitors a buffer and sets a predetermined threshold value for the buffer usage amount. If exceeded, a buffer status notification message including a list of nodes that sent the asynchronous message is sent to the update information distribution server, and if there is no buffer usage for a predetermined time, a buffer status notification is sent to that effect. A node characterized by transmitting a message to an update information distribution server.

(付記4)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、ノードは非同期メッセージを受信すると非同期メッセージの目的に応じて処理し、処理中に非同期メッセージを受信した場合は、バッファにメッセージを保存しておき、処理が終了次第、バッファに保存しておいた非同期メッセージの処理を実施することを特徴とするノード。
(Appendix 4)
A node that includes multiple user devices and update information distribution servers that make up a logical network for each content. When an asynchronous message is received, the node processes it according to the purpose of the asynchronous message, and receives the asynchronous message during processing. In this case, the node stores the message in the buffer, and executes the processing of the asynchronous message stored in the buffer as soon as the processing is completed.

(付記5)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、ノードは非同期メッセージ処理のためのバッファを監視し、バッファ利用量が予め定められた閾値を超えた場合、または予め定められた時間が経過した場合、または他の中継装置からバッファ状況通知メッセージを受信した場合において、非同期メッセージを送信してきたノードの更新情報配信システムのツリー構造における位置、非同期メッセージを送信した時間と、非同期メッセージを処理する効率から、中継装置として動作させる利用者装置を選出し、中継装置情報データベースを更新し、利用者装置情報データベースを参照し、更新情報配信システムのツリー構造において自ノードより下のノードがひとつまたは複数存在する場合、中継装置の情報を記載した中継装置周知メッセージを作成し、中継装置周知メッセージを該当するひとつまたは複数のノードに送信することを特徴とするノード。
(Appendix 5)
A node including a plurality of user devices and an update information distribution server that constitute a logical network for each content, and the node monitors a buffer for asynchronous message processing, and the buffer usage exceeds a predetermined threshold. In the tree structure of the update information distribution system of the node that sent the asynchronous message when a predetermined time has passed, or when a buffer status notification message is received from another relay device, the asynchronous message The user device to be operated as a relay device, update the relay device information database, refer to the user device information database, and the tree structure of the update information distribution system There is one or more nodes below this node in That case, the node and transmits create a relay device known message containing information about a relay device, to one or more nodes to the appropriate repeater known message.

(付記6)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、中継装置を選出する際に、予め非同期メッセージの受信状況が予測できる場合は、非同期メッセージの増減を予測して、事前に中継装置選出を実施することを特徴とする、請求項5に記載のノード。
(Appendix 6)
Increase / decrease of asynchronous messages if a node containing multiple user devices and an update information distribution server that constitute a logical network for each content and the reception status of asynchronous messages can be predicted in advance when selecting a relay device The node according to claim 5, wherein the relay device selection is performed in advance by predicting.

(付記7)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、非同期メッセージを送信してきたノードの更新情報配信システムのツリー構造における位置、非同期メッセージを送信した時間と、非同期メッセージを処理する効率から、中継装置として動作させるノードを選出する際に、非同期メッセージを受信する頻度をa個/sec、非同期メッセージを処理する効率をb個/secとし、余裕度を表すβを用いて、中継装置数mを、
m=β*a/b
と計算し、中継装置数を決定ことを特徴とする、請求項5に記載のノード。
(Appendix 7)
A node that includes a plurality of user devices and an update information distribution server that constitute a logical network for each content, and the position in the tree structure of the update information distribution system of the node that transmitted the asynchronous message, the time when the asynchronous message was transmitted From the efficiency of processing asynchronous messages, when selecting a node to operate as a relay device, the frequency of receiving asynchronous messages is a / sec, the efficiency of processing asynchronous messages is b / sec, and the margin is Using β to represent the number of relay devices m,
m = β * a / b
The node according to claim 5, wherein the number of relay apparatuses is determined.

(付記8)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、m個の中継装置を選出する際に、非同期メッセージを送信してきたノードの更新情報配信システムのツリー構造における位置からノードを中継装置数m分のグループに分け、そのグループそれぞれで、更新情報配信システムのツリー構造における位置を座標として、中継装置候補となっているノードのリソース利用状況、ツリー参加経過時間、中継装置稼動経験・時間などで重み付けして、重心を計算することによって中心となるノードを選出することを特徴とする、請求項5に記載のノード。
(Appendix 8)
An update information distribution system of a node that includes a plurality of user devices and an update information distribution server constituting a logical network for each content, and has transmitted an asynchronous message when selecting m relay devices. Nodes are divided into groups for the number of relay devices from the position in the tree structure, and the resource usage status of nodes that are relay device candidates and tree participation in each group using the position in the tree structure of the update information distribution system as coordinates 6. The node according to claim 5, wherein a node as a center is selected by calculating a center of gravity by weighting with elapsed time, relay device operation experience / time, and the like.

(付記9)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、m個の中継装置を選出する際に、非同期メッセージを送信してきたノードのIDと中継装置選出動作開始時間とのハッシュ計算結果をソートし、下からまたは上からm個のノードを中継装置として選出することを特徴とする、請求項5に記載のノード。
(Appendix 9)
Node selection that includes multiple user devices and update information distribution servers that make up a logical network for each content, and when selecting m relay devices, the ID of the node that sent the asynchronous message and the relay device selection The node according to claim 5, wherein the hash calculation results with the operation start time are sorted, and m nodes from the bottom or the top are selected as relay devices.

(付記10)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、ノードは非同期メッセージ処理のためのバッファを監視し、バッファ利用量が予め定められた閾値を超えた場合において、バッファ利用量が予め定められた閾値を超えたノードの更新情報配信システムのツリー構造における子にあたるノードを新たな中継装置として選出するることを特徴とするノード。
(Appendix 10)
A node including a plurality of user devices and an update information distribution server that constitute a logical network for each content, and the node monitors a buffer for asynchronous message processing, and the buffer usage exceeds a predetermined threshold. In this case, a node that selects a node corresponding to a child in the tree structure of the update information distribution system of a node whose buffer usage exceeds a predetermined threshold as a new relay device.

(付記11)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、更新情報配信サーバへの非同期メッセージを送信する場合に、中継装置情報データベースを参照し、ひとつまたは複数の中継装置または更新情報配信サーバの中から非同期メッセージを転送すべき中継装置または更新情報配信サーバを選択し、その選択した中継装置または更新情報配信サーバをあて先として非同期メッセージを作成し、非同期メッセージを送信することを特徴とするノード。
(Appendix 11)
A node including a plurality of user devices and an update information distribution server constituting a logical network for each content, and when transmitting an asynchronous message to the update information distribution server, refer to the relay device information database, and Select a relay device or update information distribution server to which an asynchronous message should be transferred from among multiple relay devices or update information distribution servers, create an asynchronous message with the selected relay device or update information distribution server as the destination, and create an asynchronous message A node characterized by transmitting.

(付記12)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、非同期メッセージを転送すべき中継装置または更新情報配信サーバを選択する際に、自利用者装置の更新情報配信システムのツリー構造の位置とひとつまたは複数の中継装置と更新情報配信サーバの位置を比較し、更新情報配信システムのツリー構造においてもっともホップ数の少ない位置にある中継装置、または更新情報配信サーバを中継装置として選択することを特徴とする、請求項11に記載のノード。
(Appendix 12)
A node including a plurality of user devices and an update information distribution server constituting a logical network for each content, and when selecting a relay device or an update information distribution server to which an asynchronous message is to be transferred, Compare the position of the tree structure of the update information distribution system with the position of one or more relay devices and the update information distribution server, and the relay device or update information distribution at the position with the smallest number of hops in the tree structure of the update information distribution system The node according to claim 11, wherein a server is selected as a relay device.

(付記13)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、非同期メッセージを転送すべき中継装置または更新情報配信サーバを選択する際に、自利用者装置の更新情報配信システムのツリー構造の位置とひとつまたは複数の中継装置と更新情報配信サーバの位置を比較し、更新情報配信システムのツリー構造において、更新情報配信サーバからのホップ数が近い利用者装置を中継装置として選択することを特徴とする、請求項11に記載のノード。
(Appendix 13)
A node including a plurality of user devices and an update information distribution server constituting a logical network for each content, and when selecting a relay device or an update information distribution server to which an asynchronous message is to be transferred, Compare the position of the tree structure of the update information distribution system with the position of one or more relay devices and the update information distribution server, and in the tree structure of the update information distribution system, select a user device that has a close hop count from the update information distribution server. The node according to claim 11, wherein the node is selected as a relay device.

(付記14)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードであって、非同期メッセージを転送すべき中継装置または更新情報配信サーバを選択する際に、中継装置情報データベースに記載のひとつまたは複数の中継装置と更新情報配信サーバのIDと自ノードのIDの相関値を計算し、最も小さいまたは最も大きい値となる継装置情報データベースに記載のひとつまたは複数の中継装置と更新情報配信サーバを中継装置として選択することを特徴とする、請求項11に記載のノード。
(Appendix 14)
When selecting a relay device or update information distribution server to which an asynchronous message is to be transferred, a node including a plurality of user devices and an update information distribution server constituting a logical network for each content, the relay device information database Calculate the correlation value between the ID of one or more relay devices and update information distribution server described above and the ID of the own node, and update with one or more relay devices described in the relay device information database that has the smallest or largest value The node according to claim 11, wherein the information distribution server is selected as a relay device.

(付記15)
複数の利用者装置と更新情報配信サーバとをノードとしてコンテンツ毎の論理ネットワークを構成するコンテンツ配信方法であって、利用者装置から更新情報配信サーバへの非同期メッセージを送信する場合において、利用者装置は中継装置として選出された他の利用者装置または更新情報配信サーバを宛先として非同期メッセージを送信するステップと、更新情報配信サーバまたは中継装置として選出された利用者装置の非同期メッセージのためのバッファが溢れそうになった場合、または中継装置として選出された利用者装置のバッファが一定時間利用されなかった場合、または定期的な中継装置見直しの場合に、非同期メッセージを送信してきたノードの更新情報配信システムのツリー構造における位置、非同期メッセージを送信した時間と、非同期メッセージを処理する効率から、中継装置として動作させる利用者装置を選出するステップと、中継装置として選出された利用者装置が、他の利用者装置からの非同期メッセージを中継するステップとを含むこと、を特徴とするメッセージ配信方法。
(Appendix 15)
A content distribution method for configuring a logical network for each content by using a plurality of user devices and an update information distribution server as nodes, and when transmitting an asynchronous message from the user device to the update information distribution server, the user device Includes a step of transmitting an asynchronous message destined for another user device or update information distribution server selected as a relay device, and a buffer for the asynchronous message of the user device selected as the update information distribution server or relay device. Distributing update information of the node that sent the asynchronous message when it overflowed, or when the buffer of the user device selected as the relay device was not used for a certain period of time, or when the relay device was periodically reviewed Position in system tree structure, sent asynchronous message And a step of selecting a user device to be operated as a relay device from the efficiency of processing an asynchronous message, and a step of relaying an asynchronous message from another user device by a user device selected as a relay device; A message delivery method characterized by comprising:

(付記16)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードを制御するコンピュータに、ノードは更新情報配信サーバから中継装置周知メッセージ受信すると、中継装置周知メッセージに記載の中継装置情報を参照する機能と、中継装置情報データベースを更新する機能と、利用者装置情報データベースを参照する機能と、更新情報配信システムのツリー構造において自ノードより下のノードがひとつまたは複数存在する場合、中継装置周知メッセージを該当するひとつまたは複数のノードに転送する機能と、利用者から非同期通信を実行するように操作されると、中継装置情報データベースを参照する機能と、自ノードの更新情報配信システムのツリー構造の位置と中継装置情報データベースに記載のひとつまたは複数の中継装置と更新情報配信サーバの位置を比較することによって、中継装置を選択する機能と、その中継装置をあて先として非同期メッセージを作成する機能と、非同期メッセージを送信する機能と、を実行させることを特徴とするプログラム。
(Appendix 16)
When a node receives a relay device known message from the update information distribution server to a computer that controls a node including a plurality of user devices and an update information distribution server that constitute a logical network for each content, the relay described in the relay device known message When there is one or more nodes below the own node in the tree structure of the update information distribution system, the function to refer to the device information, the function to update the relay device information database, the function to refer to the user device information database , A function of transferring a relay device well-known message to one or a plurality of corresponding nodes, a function of referring to the relay device information database when operated by a user to perform asynchronous communication, and distribution of update information of the own node System tree structure location and relay device information database A function of selecting a relay device by comparing the position of one or a plurality of relay devices and an update information distribution server, a function of creating an asynchronous message with the relay device as a destination, and a function of transmitting an asynchronous message A program characterized by being executed.

(付記17)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードを制御するコンピュータに、中継装置として選出された場合に、非同期メッセージを受信すると非同期メッセージを集約処理する機能と、集約処理中に非同期メッセージを受信した場合は、バッファに非同期メッセージを保存しておく機能と、集約処理が終了次第、バッファに保存しておいた非同期メッセージの集約処理を実施する機能と、定期的に更新情報配信サーバへ、集約済みの非同期メッセージを送信する機能と、を実行させることを特徴とするプログラム。
(Appendix 17)
A function that aggregates asynchronous messages when an asynchronous message is received when it is selected as a relay device by a computer that controls a node including a plurality of user devices and an update information distribution server that constitute a logical network for each content; When an asynchronous message is received during the aggregation process, the function to save the asynchronous message in the buffer, the function to perform the aggregation process of the asynchronous message saved in the buffer as soon as the aggregation process is completed, And a function of transmitting an aggregated asynchronous message to an update information distribution server.

(付記18)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードを制御するコンピュータに、中継装置として選出された場合に、バッファを監視する機能と、バッファ利用量が予め定められた閾値を超えた場合、非同期メッセージを送信してきたノードのリストを含むバッファ状況通知メッセージを更新情報配信サーバに送信する機能と、予め定められた時間中、常にバッファ利用がなかった場合、その旨を知らせるバッファ状況通知メッセージを更新情報配信サーバに送信する機能と、を実行させることを特徴とするプログラム。
(Appendix 18)
A function for monitoring a buffer and a buffer usage amount are predetermined when a computer that controls a node including a plurality of user devices and an update information distribution server constituting a logical network for each content is selected as a relay device. If the specified threshold is exceeded, the buffer status notification message including the list of nodes that sent the asynchronous message is sent to the update information distribution server, and if there is no buffer usage for a predetermined time, And a function of transmitting a buffer status notification message to notify the update information distribution server.

(付記19)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードを制御するコンピュータに、非同期メッセージを受信すると非同期メッセージの目的に応じて処理する機能と、処理中に非同期メッセージを受信した場合は、バッファにメッセージを保存しておく機能と、処理が終了次第、バッファに保存しておいた非同期メッセージの処理を実施する機能と、を実行させることを特徴とするプログラム。
(Appendix 19)
A computer that controls a node including a plurality of user devices and an update information distribution server that constitute a logical network for each content, a function that processes according to the purpose of the asynchronous message when an asynchronous message is received, and an asynchronous message during processing When receiving the message, a program for executing a function of storing a message in a buffer and a function of executing processing of an asynchronous message stored in the buffer upon completion of processing.

(付記20)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードを制御するコンピュータに、非同期メッセージ処理のためのバッファを監視する機能と、バッファ利用量が予め定められた閾値を超えた場合、または予め定められた時間が経過した場合、または他の中継装置からバッファ状況通知メッセージを受信した場合において、非同期メッセージを送信してきたノードの更新情報配信システムのツリー構造における位置と、非同期メッセージを送信した時間と、非同期メッセージを処理する効率から、中継装置として動作させる利用者装置を選出する機能と、中継装置情報データベースを更新する機能と、利用者装置情報データベースを参照する機能と、更新情報配信システムのツリー構造において自装置より下のノードがひとつまたは複数存在する場合、中継装置の情報を記載した中継装置周知メッセージを作成する機能と、中継装置周知メッセージを該当するひとつまたは複数のノードに送信する機能と、を実行させることを特徴とするプログラム。
(Appendix 20)
A function for monitoring a buffer for asynchronous message processing in a computer that controls a node including a plurality of user devices and an update information distribution server that constitute a logical network for each content, and a threshold for which a buffer usage amount is predetermined. In the tree structure of the update information distribution system of the node that sent the asynchronous message when the predetermined time has passed, or when the buffer status notification message is received from another relay device The function of selecting a user device to be operated as a relay device, the function of updating the relay device information database, and the function of referring to the user device information database from the time when the asynchronous message is transmitted and the efficiency of processing the asynchronous message In the tree structure of the update information distribution system. If there is one or more nodes below the device, execute the function to create a relay device well-known message describing the information of the relay device and the function to send the relay device well-known message to the corresponding one or more nodes A program characterized by letting

(付記21)
コンテンツ毎に論理ネットワークを構成する複数の利用者装置と更新情報配信サーバとを含むノードを制御するコンピュータに、更新情報配信サーバへの非同期メッセージを送信する場合に、中継装置情報データベースを参照する機能と、ひとつまたは複数の中継装置または更新情報配信サーバの中から非同期メッセージを転送すべき中継装置または更新情報配信サーバを選択する機能と、その選択した中継装置または更新情報配信サーバをあて先として非同期メッセージを作成する機能と、非同期メッセージを送信する機能と、を実行させることを特徴とするプログラム。
(Appendix 21)
A function for referring to a relay device information database when an asynchronous message to an update information distribution server is transmitted to a computer that controls a node including a plurality of user devices and an update information distribution server constituting a logical network for each content. And a function for selecting a relay device or update information distribution server to which an asynchronous message is to be transferred from one or more relay devices or update information distribution servers, and an asynchronous message with the selected relay device or update information distribution server as a destination. A program for executing a function for generating a message and a function for transmitting an asynchronous message.

1 更新情報配信システム
100 利用者装置
110 主制御部
120、220 ネットワークインタフェース
121、221 中継装置情報データベース
122、222 利用者装置情報データベース
123、223 コンテンツ情報データベース
130 更新情報配信システムクライアント部
131、231 ツリー管理機能部
132 コンテンツクライアント部
140 非同期通信クライアント部
141 非同期通信機能部
142 中継装置選択部
150 中継装置機能部
151 非同期メッセージ集約部
152 集約タイマ
153、242 バッファ
154、243 バッファ監視部
155 バッファ状況通知部
160、260 送受信部
200 更新情報配信サーバ
210 主制御部
230 更新情報配信システムサーバ部
232 コンテンツサーバ部
240 非同期通信サーバ部
241 非同期通信処理部
244 中継装置タイマ
245 中継装置選出部
246 中継装置管理部
1 Update Information Distribution System 100 User Device 110 Main Control Unit 120, 220 Network Interface 121, 221 Relay Device Information Database 122, 222 User Device Information Database 123, 223 Content Information Database 130 Update Information Distribution System Client Unit 131, 231 Tree Management function unit 132 Content client unit 140 Asynchronous communication client unit 141 Asynchronous communication function unit 142 Relay device selection unit 150 Relay device function unit 151 Asynchronous message aggregation unit 152 Aggregation timer 153, 242 Buffer 154, 243 Buffer monitoring unit 155 Buffer status notification unit 160, 260 Transmission / reception unit 200 Update information distribution server 210 Main control unit 230 Update information distribution system server unit 232 Content server unit 240 Asynchronous Communication server unit 241 Asynchronous communication processing unit 244 Relay device timer 245 Relay device selection unit 246 Relay device management unit

Claims (9)

ルートノードから複数の子ノードに情報を配信するためにオーバーレイネットワーク上でツリー状に構築されたネットワークに参加可能なノードであって、
前記複数の子ノードのうち何れかから前記ルートノード宛に発信された非同期メッセージを受信し、
受信した前記非同期メッセージを、上記ツリーを順々に遡って前記ルートノードへ向けて中継する場合と比較して少ないホップ数となるように前記ルートノードへ向けて中継する、中継ノードとして機能させる、
子ノードを、
前記ネットワークに参加可能な前記複数の子ノードの中から、
選出する、
中継ノード選出部を備える、ノード。
A node that can participate in a network constructed in a tree shape on an overlay network to distribute information from a root node to a plurality of child nodes,
Receiving an asynchronous message sent to the root node from any of the plurality of child nodes;
The received asynchronous message is relayed toward the root node so as to have a smaller number of hops than when the tree is relayed back to the root node in order, function as a relay node.
Child nodes
Among the plurality of child nodes that can participate in the network,
elect,
A node comprising a relay node selection unit.
請求項1に記載のノードであって、
前記中継ノード選出部は、上記選出の直近において前記非同期メッセージを発信した子ノードの中から、前記中継ノードとして機能させる上記子ノードを選出する、
ノード。
The node according to claim 1, wherein
The relay node selection unit selects the child node that functions as the relay node from among the child nodes that have transmitted the asynchronous message in the immediate vicinity of the selection.
node.
請求項1又は2に記載のノードであって、
前記中継ノードとして機能可能な前記子ノードは、前記非同期メッセージの中継に利用可能なバッファを有し、
前記中継ノード選出部は、前記中継ノードとして機能させる上記子ノードの数を、上記選出の直近における前記非同期メッセージの前記ネットワーク全体の発信頻度に基づいて決定する、
ノード。
The node according to claim 1 or 2, wherein
The child node that can function as the relay node has a buffer that can be used to relay the asynchronous message;
The relay node selection unit determines the number of the child nodes to function as the relay node based on the frequency of transmission of the asynchronous message in the entire network immediately after the selection;
node.
請求項3に記載のノードであって、
前記中継ノード選出部は、前記ルートノードのバッファが溢れそうになったら、上記の選出を実行する、
ノード。
The node according to claim 3, wherein
The relay node selection unit executes the selection when the buffer of the root node is likely to overflow.
node.
請求項3又は4に記載のノードであって、
前記中継ノード選出部は、前記中継ノードとして機能させる上記子ノードの上記バッファが溢れそうになったら、上記の選出を再実行する、
ノード。
The node according to claim 3 or 4, wherein
The relay node selection unit re-executes the selection when the buffer of the child node that functions as the relay node is about to overflow.
node.
請求項3〜5の何れかに記載のノードであって、
前記中継ノード選出部は、前記中継ノードとして機能させる上記子ノードの上記バッファが一定時間、利用されなかったら、上記の選出を再実行する、
ノード。
A node according to any one of claims 3 to 5,
The relay node selection unit re-executes the selection if the buffer of the child node that functions as the relay node is not used for a certain period of time.
node.
請求項3〜6の何れかに記載のノードであって、
前記中継ノード選出部は、一定時間毎に、上記の選出を実行する、
ノード。
The node according to any one of claims 3 to 6, wherein
The relay node selection unit performs the above selection at regular intervals.
node.
ルートノードから複数の子ノードに情報を配信するためにオーバーレイネットワーク上でツリー状に構築されたネットワークにおいて、前記複数の子ノードから前記ルートノード宛に発信された非同期メッセージを前記ルートノードへ向けて中継する、非同期メッセージ中継方法であって、
前記複数の子ノードのうち何れかから前記ルートノード宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを、上記ツリーを順々に遡って前記ルートノードへ向けて中継する場合と比較して少ないホップ数となるように前記ルートノードへ向けて中継する、中継ノードとして機能させる子ノードを、前記ネットワークに参加可能な前記複数の子ノードの中から、選出する、中継ノード選出ステップを含む、
非同期メッセージ中継方法。
In a network constructed in a tree shape on an overlay network to distribute information from a root node to a plurality of child nodes, asynchronous messages transmitted from the plurality of child nodes to the root node are directed to the root node. An asynchronous message relay method for relaying,
Compared with a case where an asynchronous message transmitted to the root node is received from any of the plurality of child nodes, and the received asynchronous message is relayed to the root node by going back in the tree in order. A relay node selection step of selecting, from among the plurality of child nodes that can participate in the network, a child node that functions as a relay node that relays toward the root node so as to reduce the number of hops. Including,
Asynchronous message relay method.
ルートノードから複数の子ノードに情報を配信するためにオーバーレイネットワーク上でツリー状に構築されたネットワークに参加可能なノードに、
前記複数の子ノードのうち何れかから前記ルートノード宛に発信された非同期メッセージを受信し、受信した前記非同期メッセージを、上記ツリーを順々に遡って前記ルートノードへ向けて中継する場合と比較して少ないホップ数となるように前記ルートノードへ向けて中継する、中継ノードとして機能させる、子ノードを、前記ネットワークに参加可能な前記複数の子ノードの中から、選出する、中継ノード選出部としての機能を発揮させる、
プログラム。
To nodes that can participate in a network constructed in a tree on the overlay network to distribute information from the root node to multiple child nodes,
Compared with a case where an asynchronous message transmitted to the root node is received from any of the plurality of child nodes, and the received asynchronous message is relayed to the root node by going back in the tree in order. A relay node selection unit that relays toward the root node so that the number of hops is small, functions as a relay node, and selects a child node from the plurality of child nodes that can participate in the network To demonstrate its function as
program.
JP2009286073A 2009-12-17 2009-12-17 Node, asynchronous message relay method, and program Expired - Fee Related JP5434558B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009286073A JP5434558B2 (en) 2009-12-17 2009-12-17 Node, asynchronous message relay method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009286073A JP5434558B2 (en) 2009-12-17 2009-12-17 Node, asynchronous message relay method, and program

Publications (2)

Publication Number Publication Date
JP2011130144A JP2011130144A (en) 2011-06-30
JP5434558B2 true JP5434558B2 (en) 2014-03-05

Family

ID=44292251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009286073A Expired - Fee Related JP5434558B2 (en) 2009-12-17 2009-12-17 Node, asynchronous message relay method, and program

Country Status (1)

Country Link
JP (1) JP5434558B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6503945B2 (en) * 2015-07-13 2019-04-24 富士通株式会社 INFORMATION PROCESSING APPARATUS, PARALLEL COMPUTER SYSTEM, FILE SERVER COMMUNICATION PROGRAM, AND FILE SERVER COMMUNICATION METHOD

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3461493B2 (en) * 2000-11-01 2003-10-27 日本電気株式会社 Network system and relay station device
JP3550349B2 (en) * 2000-03-29 2004-08-04 日本電信電話株式会社 Broadcast communication system and method for feeding back statistical information
JP2006033115A (en) * 2004-07-13 2006-02-02 Brother Ind Ltd Distribution apparatus, receiver, tree type distribution system, and information processing method or the like

Also Published As

Publication number Publication date
JP2011130144A (en) 2011-06-30

Similar Documents

Publication Publication Date Title
CN101305559B (en) Route selection in wireless network
JP5557840B2 (en) Distributed database monitoring mechanism
JP5438225B2 (en) Systems and methods using frameworks for information routing in large scale distributed systems utilizing swarm intelligence
JP2015191451A (en) Information processing device, control method, and control program
JP2007066161A (en) Cache system
CN103475566A (en) Real-time message exchange platform and distributed cluster establishment method
CN104142896A (en) Cache control method and system
CN101399746A (en) Packet routing method, system, device and method, system for selecting backup resource
JP5845877B2 (en) Information processing apparatus, data control method, and data control program
CN115328579B (en) Scheduling method and system for neural network training and computer readable storage medium
CN105940717A (en) Node device and communication method used in disruption/delay/disconnect tolerant network
Chatzidrossos et al. Delay and playout probability trade-off in mesh-based peer-to-peer streaming with delayed buffer map updates
JP5434558B2 (en) Node, asynchronous message relay method, and program
CN103152191A (en) Processing method and system of service gateway data of internet of things
JPWO2010109767A1 (en) Data synchronization system, data synchronization method, and synchronization management server
CN113326100A (en) Cluster management method, device and equipment and computer storage medium
Guidec et al. Causal and Δ-causal broadcast in opportunistic networks
CN108418863B (en) Management method of controller cluster, SDN controller and storage medium
KR100435985B1 (en) Nonstop service system using voting and, information updating and providing method in the same
WO2010125791A1 (en) Content distribution system, node, content distribution method, and program
CN111600958B (en) Service discovery system, service data management method, server, and storage medium
JP2009165070A (en) Ad hoc network communication system, method therefor, and communication terminal
Baldoni et al. A self-organizing crash-resilient topology management system for content-based publish/subscribe
CN109286642A (en) A kind of method of Push active push speed-optimization
JP5376155B2 (en) Communication system, node, communication method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130909

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130917

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131022

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: 20131112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131125

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees