JP2010050815A - Aggregation server, distribution server, reception client, distribution system, method thereof, and program - Google Patents
Aggregation server, distribution server, reception client, distribution system, method thereof, and program Download PDFInfo
- Publication number
- JP2010050815A JP2010050815A JP2008214122A JP2008214122A JP2010050815A JP 2010050815 A JP2010050815 A JP 2010050815A JP 2008214122 A JP2008214122 A JP 2008214122A JP 2008214122 A JP2008214122 A JP 2008214122A JP 2010050815 A JP2010050815 A JP 2010050815A
- Authority
- JP
- Japan
- Prior art keywords
- information
- distribution
- update information
- update
- server
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、多数のサーバから発信される様々なコンテンツについて、端末から更新情報の要求があった場合に、そのコンテンツの更新情報を、その端末に提供する、配信システムに関する。 The present invention relates to a distribution system that provides update information of a content to the terminal when a request for update information is made from the terminal for various contents transmitted from a large number of servers.
特には、本発明は、アグリゲーションサーバ、配信サーバ、受信クライアント、配信システム、アグリゲーション方法、配信方法、受信方法およびプログラムに関する。 In particular, the present invention relates to an aggregation server, a distribution server, a reception client, a distribution system, an aggregation method, a distribution method, a reception method, and a program.
近年、携帯電話、PDAまたは車載端末などの移動端末においても、移動しながら、音声や映像などの大容量コンテンツをネットワークを利用して交換したい、という要望が、ユーザの間で高まってきている。 In recent years, there is an increasing demand among users for mobile terminals such as mobile phones, PDAs, and in-vehicle terminals to exchange large-capacity content such as voice and video using a network while moving.
さらに、街角監視カメラまたは各種センサが生成した情報などのコンテンツも、ネットワークに流通させ、活用したい、といった要望もある。 Furthermore, there is a demand for distributing and utilizing contents such as information generated by street corner monitoring cameras or various sensors over a network.
そのような要望に対応する技術が検討されている。特に、様々で多量のコンテンツが流通する中で、コンテンツの鮮度を損なわずに、コンテンツの情報を、ユーザへ、リアルタイムに届けることが重要となる。 Technologies that meet such demands are being studied. In particular, while various and large amounts of content are distributed, it is important to deliver content information to users in real time without losing the freshness of the content.
このような要望に対して、コンテンツが更新されたことを表す更新情報を端末に配信するシステムが検討されている。 In response to such a demand, a system that distributes update information indicating that content has been updated to a terminal has been studied.
このシステムにおいて、コンテンツ毎に、更新情報の配信のためのトポロジ(配信経路を示した機器の接続形態)が作成され、そのトポロジに従って更新情報が配信されると、更新情報の配信効率が悪くなってしまう。 In this system, when a topology for distributing update information (apparatus connection form indicating a distribution route) is created for each content, and update information is distributed according to the topology, the distribution efficiency of update information deteriorates. End up.
そこで、特許文献1には、更新情報の配信頻度を少なくするために、更新情報を合成すなわちアグリゲーションする手法が記載されている。 Therefore, Patent Document 1 describes a method of synthesizing, that is, aggregating update information in order to reduce the distribution frequency of update information.
特許文献1に記載の手法では、更新情報が、更新情報配信システムで一旦集約される。また、クライアントがどのコンテンツの更新情報を要求しているかを表す情報も、更新情報配信システムで集約される。そして、更新情報配信システムが、更新情報をアグリゲーションできるクライアントの配信ツリーすなわちトポロジを設定し、更新情報をアグリゲーションし、アグリゲーションされた更新情報を、トポロジに従って配信することによって、更新情報の配信効率を高めている。
しかしながら、上記手法は、ユビキタスネットワーク社会において通信機器間の接続が頻繁に改変する状況に十分対応できない。 However, the above method cannot sufficiently cope with a situation where the connection between communication devices is frequently changed in the ubiquitous network society.
例えば、特許文献1に記載の手法では、サーバとクライアントの関係が頻繁に変化した場合、トポロジの組み換えが頻繁になり、可用性が悪くなるという課題があった。 For example, in the method described in Patent Document 1, when the relationship between the server and the client frequently changes, there is a problem that the topology is frequently recombined and the availability is deteriorated.
本発明の目的は、上記課題を解決することが可能な、アグリゲーションサーバ、配信サーバ、受信クライアント、配信システム、アグリゲーション方法、配信方法、受信方法およびプログラムを提供することにある。 An object of the present invention is to provide an aggregation server, a distribution server, a reception client, a distribution system, an aggregation method, a distribution method, a reception method, and a program capable of solving the above problems.
本発明のアグリゲーションサーバは、複数の配信サーバと通信可能なアグリゲーションサーバであって、各配信サーバから、当該配信サーバから当該配信サーバ内のコンテンツに対応づけられた複数の受信クライアントへの前記コンテンツの更新情報についての複数の配信経路を表すトポロジ情報を受信する受信手段と、前記受信手段にて受信されたトポロジ情報毎に当該トポロジ情報が表す複数の配信経路の中から1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記一部の始点となる受信クライアントと、当該受信クライアントが合成する複数の更新情報と、を示した合成指示を、前記複数の配信サーバのうち、少なくとも、前記一部を含む選択配信経路を表すトポロジ情報を送信した実行配信サーバのそれぞれに送信する制御手段と、を含む。 The aggregation server of the present invention is an aggregation server that can communicate with a plurality of distribution servers, and each content server transmits the content from the distribution server to the plurality of receiving clients associated with the content in the distribution server. Receiving means for receiving topology information representing a plurality of delivery paths for update information, and selecting one selected delivery path from the plurality of delivery paths represented by the topology information for each topology information received by the receiving means When selecting, the selected delivery route is selected so that at least a part of at least two of the selected delivery routes overlaps, the result of the selection is transmitted to the plurality of delivery servers, and the start point of the part And a plurality of update information to be combined by the reception client. Of delivery server, at least, and a control means for transmitting to each of the execution distribution server that sent the topology information representing the selected delivery path including said portion.
本発明の配信サーバは、上記アグリゲーションサーバと通信可能であり、また、自己内のコンテンツの更新情報を当該コンテンツに対応づけられた複数の受信クライアントに配信する配信サーバであって、自サーバから前記複数の受信クライアントへの前記更新情報についての複数の配信経路を表すトポロジ情報を作成し、当該トポロジ情報を前記アグリゲーションサーバに送信し、前記アグリゲーションサーバから、前記複数の配信経路の中から選択された選択配信経路を示す選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて記憶する管理手段と、前記管理手段にて選択された選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に、前記選択配信経路を示す配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記選択配信経路に従って配信する配信手段と、を含む。 The distribution server of the present invention is a distribution server that is communicable with the aggregation server, and distributes update information of content within itself to a plurality of receiving clients associated with the content. Create topology information representing a plurality of distribution paths for the update information to a plurality of receiving clients, transmit the topology information to the aggregation server, and are selected from the plurality of distribution paths from the aggregation server When the selection result indicating the selected distribution route is received, the selected distribution route is selected from the plurality of distribution routes, and when the combination instruction is received from the aggregation, the combination instruction is stored in association with the selected distribution route. Managing means, and combining the selected delivery route selected by the managing means When the indication is associated, the update information is added with the delivery route information indicating the selected delivery route and the synthesis instruction, and the update information with the delivery route information and the synthesis information is added to the selected delivery. When the distribution instruction is associated with the selected distribution route, the distribution route information is attached to the update information, and the update information with the distribution route information is distributed according to the selected distribution route. And distribution means.
本発明の受信クライアントは、複数の上記配信サーバ、および、他の受信クライアントと、通信可能な受信クライアントであって、更新情報格納手段と、各配信サーバまたは他の受信クライアントから、前記選択配信経路を示す配信経路情報が付された更新情報を受信する更新情報受信手段と、前記更新情報に付された配信経路情報に、自受信クライアントが終端として示されている場合には、当該更新情報の転送を中止し、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されている場合には、当該更新情報を、前記更新情報格納手段に格納する中継管理手段と、前記配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されていない場合、または、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されていない場合には、当該更新情報を、前記配信経路情報に従って、他の受信クライアントに転送し、また、前記更新情報格納手段内に、前記合成指示に示された複数の更新情報が格納されている場合、当該複数の更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送管理手段と、を含む。 The receiving client of the present invention is a receiving client capable of communicating with the plurality of distribution servers and other receiving clients, and the selected distribution route from the update information storage means and each of the distribution servers or other receiving clients. Update information receiving means for receiving update information to which distribution route information is attached, and the distribution route information attached to the update information, when the own reception client is indicated as a termination, The transfer is stopped, the own receiving client is indicated as a relay location in the distribution route information, the combining instruction is added to the update information, and the own receiving client is indicated in the combining instruction. A relay management unit that stores the update information in the update information storage unit; If the update instruction is added to the update information and the own reception client is not indicated in the combination instruction, or the own reception client relays the distribution route information. If the update instruction is not attached to the update information, the update information is transferred to another receiving client according to the distribution route information, and the update information is stored. When a plurality of update information indicated in the combination instruction is stored in the means, the plurality of update information is combined, and the combined update information is transmitted to other receiving clients according to the distribution route information. Transfer management means for transferring.
本発明の配信システムは、上記アグリゲーションサーバと、複数の上記配信サーバと、複数の上記受信クライアントと、を含む。 The distribution system of the present invention includes the aggregation server, the plurality of distribution servers, and the plurality of reception clients.
本発明のアグリゲーション方法は、複数の配信サーバと通信可能なアグリゲーションサーバが行うアグリゲーション方法であって、各配信サーバから、当該配信サーバから当該配信サーバ内のコンテンツに対応づけられた複数の受信クライアントへの前記コンテンツの更新情報についての複数の配信経路を表すトポロジ情報を受信する受信ステップと、前記受信されたトポロジ情報毎に当該トポロジ情報が表す複数の配信経路の中から1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記一部の始点となる受信クライアントと、当該受信クライアントが合成する複数の更新情報と、を示した合成指示を、前記複数の配信サーバのうち、少なくとも、前記一部を含む選択配信経路を表すトポロジ情報を送信した実行配信サーバのそれぞれに送信する制御ステップと、を含む。 The aggregation method of the present invention is an aggregation method performed by an aggregation server that can communicate with a plurality of distribution servers, from each distribution server to a plurality of receiving clients associated with the contents in the distribution server. A receiving step of receiving topology information representing a plurality of delivery paths for the content update information, and selecting one selected delivery path from the plurality of delivery paths represented by the topology information for each received topology information When selecting, the selected delivery route is selected so that at least a part of at least two of the selected delivery routes overlaps, the result of the selection is transmitted to the plurality of delivery servers, and the start point of the part And a combination of a plurality of update information to be combined by the receiving client. The view, among the plurality of delivery servers, at least, and a control step of transmitting to each of the execution distribution server that sent the topology information representing the selected delivery path including said portion.
本発明の配信方法は、上記アグリゲーションサーバと通信可能であり、また、自己内のコンテンツの更新情報を当該コンテンツに対応づけられた複数の受信クライアントに配信する配信サーバが行う配信方法であって、自サーバから前記複数の受信クライアントへの前記更新情報についての複数の配信経路を表すトポロジ情報を作成し、当該トポロジ情報を前記アグリゲーションサーバに送信し、前記アグリゲーションサーバから、前記複数の配信経路の中から選択された選択配信経路を示す選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて記憶する管理ステップと、前記選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に、前記選択配信経路を示す配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記選択配信経路に従って配信する配信ステップと、を含む。 The distribution method of the present invention is a distribution method performed by a distribution server that is communicable with the aggregation server and that distributes update information of content in itself to a plurality of receiving clients associated with the content, Create topology information representing a plurality of distribution paths for the update information from the own server to the plurality of receiving clients, send the topology information to the aggregation server, and from the aggregation server, among the plurality of distribution paths When the selection result indicating the selected delivery route selected from the above is received, the selected delivery route is selected from the plurality of delivery routes, and when the synthesis instruction is received from the aggregation, the synthesis instruction is selected. A management step of storing in association with the When linked, the update information is attached with the delivery route information indicating the selected delivery route and the composition instruction, and the update information with the delivery route information and the composition information is added to the selected delivery route. If the composition instruction is not associated with the selected delivery route, the delivery route information is attached to the update information, and the update information with the delivery route information is delivered according to the selected delivery route. A delivery step.
本発明の受信方法は、複数の上記配信サーバ、および、他の受信クライアントと、通信可能な受信クライアントが行う受信方法であって、各配信サーバまたは他の受信クライアントから、前記選択配信経路を示す配信経路情報が付された更新情報を受信する更新情報受信ステップと、前記更新情報に付された配信経路情報に、自受信クライアントが終端として示されている場合には、当該更新情報の転送を中止し、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されている場合には、当該更新情報を、更新情報格納手段に格納する中継管理ステップと、前記配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されていない場合、または、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されていない場合には、当該更新情報を、前記配信経路情報に従って、他の受信クライアントに転送し、また、前記更新情報格納手段内に、前記合成指示に示された複数の更新情報が格納されている場合、当該複数の更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送管理ステップと、を含む。 The reception method of the present invention is a reception method performed by a plurality of distribution servers and a reception client that can communicate with other reception clients, and indicates the selected distribution route from each distribution server or other reception client. An update information receiving step for receiving update information to which distribution route information is attached, and when the own reception client is indicated as a termination in the distribution route information attached to the update information, transfer the update information. When the self-receiving client is indicated as a relay location in the distribution route information, the combining instruction is attached to the update information, and the self-receiving client is indicated in the combining instruction Includes a relay management step of storing the update information in the update information storage means, and the self-reception client is indicated as a relay location in the distribution route information. And the update instruction is attached to the update information and the own reception client is not indicated in the combination instruction, or the own reception client is indicated as a relay location in the distribution route information. And the update instruction is not attached to the update information, the update information is transferred to another receiving client according to the delivery route information, and the update information storage means When a plurality of pieces of update information indicated in the combination instruction are stored, the plurality of pieces of update information are combined, and the combined update information is transferred to another receiving client according to the distribution route information. Steps.
本発明のプログラムは、複数の配信サーバと通信可能なコンピュータに、各配信サーバから、当該配信サーバから当該配信サーバ内のコンテンツに対応づけられた複数の受信クライアントへの前記コンテンツの更新情報についての複数の配信経路を表すトポロジ情報を受信する受信手順と、前記受信されたトポロジ情報毎に当該トポロジ情報が表す複数の配信経路の中から1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記一部の始点となる受信クライアントと、当該受信クライアントが合成する複数の更新情報と、を示した合成指示を、前記複数の配信サーバのうち、少なくとも、前記一部を含む選択配信経路を表すトポロジ情報を送信した実行配信サーバのそれぞれに送信する制御手順と、を実行させる。 The program of the present invention relates to update information of the contents from each distribution server to a plurality of receiving clients associated with the contents in the distribution server from each distribution server to a computer that can communicate with the plurality of distribution servers. A receiving procedure for receiving topology information representing a plurality of delivery paths, and selecting at least two of the selected delivery paths from a plurality of delivery paths represented by the topology information for each received topology information; The selected delivery route is selected so that at least a part of the selected delivery route overlaps, the result of the selection is transmitted to the plurality of delivery servers, and the receiving client that is the starting point of the part, and the receiving client A plurality of update information to be combined with a combination instruction indicating at least a part of the plurality of distribution servers. And a control step of transmitting to each of the execution distribution server that sent the topology information representing the selected delivery routes including, to the execution.
本発明のプログラムは、上記アグリゲーションサーバと通信可能であり、また、自己内のコンテンツの更新情報を当該コンテンツに対応づけられた複数の受信クライアントに配信するコンピュータに、自コンピュータから前記複数の受信クライアントへの前記更新情報についての複数の配信経路を表すトポロジ情報を作成し、当該トポロジ情報を前記アグリゲーションサーバに送信し、前記アグリゲーションサーバから、前記複数の配信経路の中から選択された選択配信経路を示す選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて記憶する管理手順と、前記選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に、前記選択配信経路を示す配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記選択配信経路に従って配信する配信手順と、を実行させる。 The program of the present invention is communicable with the above aggregation server, and also distributes the update information of the content within itself to a plurality of receiving clients associated with the content from the own computer to the plurality of receiving clients. The topology information representing a plurality of distribution paths for the update information to the server is created, the topology information is transmitted to the aggregation server, and the selected distribution path selected from the plurality of distribution paths is selected from the aggregation server. A management procedure for selecting the selected delivery route from the plurality of delivery routes and receiving the composition instruction from the aggregation and storing the composition instruction in association with the selected delivery route when receiving a selection result indicating The combining instruction is associated with the selected delivery route. When the update information, the delivery information indicating the selected delivery route and the synthesis instruction are attached, and the update information with the delivery route information and the synthesis information is delivered according to the selected delivery route, A delivery procedure for attaching the delivery route information to the update information and delivering the update information to which the delivery route information is attached according to the selected delivery route when the combination instruction is not associated with the selected delivery route; Is executed.
本発明のプログラムは、複数の上記配信サーバ、および、他の受信クライアントと、通信可能なコンピュータに、各配信サーバまたは他の受信クライアントから、前記選択配信経路を示す配信経路情報が付された更新情報を受信する更新情報受信手順と、前記更新情報に付された配信経路情報に、自受信クライアントが終端として示されている場合には、当該更新情報の転送を中止し、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されている場合には、当該更新情報を、更新情報格納手段に格納する中継管理手順と、前記配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されていない場合、または、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されていない場合には、当該更新情報を、前記配信経路情報に従って、他の受信クライアントに転送し、また、前記更新情報格納手段内に、前記合成指示に示された複数の更新情報が格納されている場合、当該複数の更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送管理手順と、を実行させる。 The program of the present invention is an update in which distribution route information indicating the selected distribution route is attached from each distribution server or another receiving client to a computer capable of communicating with the plurality of distribution servers and other receiving clients. When the update information reception procedure for receiving information and the distribution route information attached to the update information indicate that the client itself is terminated, the transfer of the update information is stopped and the distribution route information When the own receiving client is indicated as a relay location, the update instruction is attached to the combining instruction, and the combining instruction indicates the own receiving client, the update information is The relay management procedure stored in the update information storage means, and the self-reception client is indicated as a relay location in the distribution route information, and the update information includes If the combination instruction is attached and the own reception client is not indicated in the combination instruction, or the own reception client is indicated as a relay point in the distribution route information, and the update information includes When the combination instruction is not attached, the update information is transferred to another receiving client according to the distribution route information, and a plurality of pieces of information indicated in the combination instruction are stored in the update information storage unit. When the update information is stored, the plurality of update information is combined, and a transfer management procedure for transferring the combined update information to another receiving client according to the distribution route information is executed.
本発明によれば、サーバとクライアントの関係が頻繁に変化する場合においても、更新情報の配信の高効率と、システムの高可用を両立することが可能になる。 According to the present invention, even when the relationship between the server and the client frequently changes, it is possible to achieve both high efficiency of distribution of update information and high availability of the system.
以下、本発明の実施形態を図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(第1の実施形態)
図1は、本発明に係る第1の実施形態の更新情報配信システム(以下、単に「配信システム」と称する)1のネットワーク構成例を示す概念図である。
(First embodiment)
FIG. 1 is a conceptual diagram showing a network configuration example of an update information distribution system (hereinafter simply referred to as “distribution system”) 1 according to the first embodiment of the present invention.
配信システム1は、複数の更新情報配信サーバ(以下、単に「配信サーバ」と称する)100と、アグリゲーションサーバ200と、複数の更新情報受信クライアント(以下、単に「受信クライアント」と称する)300と、を含む。
The distribution system 1 includes a plurality of update information distribution servers (hereinafter simply referred to as “distribution servers”) 100, an
配信サーバ100は、例えば、コンピュータである。
The
配信サーバ100は、1つまたは複数の他の配信サーバ100と、アグリゲーションサーバ200と、複数の受信クライアント300と、直接的または間接的に接続する。
The
配信サーバ100は、自サーバが保有するコンテンツが更新されたことを表す更新情報を、複数の受信クライアント300のうち、その更新情報を希望する受信クライアント(以下「参加クライアント」と称する)300aのそれぞれへ送信する。
The
参加クライアント300aのそれぞれは、自己に送信される更新情報に示されるコンテンツと対応づけられている。
Each participating
更新情報は、更新メッセージに付加されて送信される。 The update information is added to the update message and transmitted.
本実施形態では、配信サーバ100は、コンテンツ毎に、コンテンツの更新メッセージの送信経路および送信先(参加クライアント300a)等を表す更新グラフを作成する。配信サーバ100は、コンテンツ毎に、更新グラフを保存する。
In the present embodiment, the
コンテンツの更新メッセージは、そのコンテンツに対応する更新グラフに従い転送されていく。 The content update message is transferred according to the update graph corresponding to the content.
各更新グラフは、トポロジ情報と、アグリゲーション指示と、更新グラフ参加クライアント情報(以下、単に「参加クライアント情報」と称する)と、を含む。 Each update graph includes topology information, an aggregation instruction, and update graph participation client information (hereinafter simply referred to as “participation client information”).
トポロジ情報は、参加クライアント300aの接続形態、すなわち、トポロジ情報に対応するコンテンツの更新メッセージの送信経路を表すトポロジを示す。
The topology information indicates a topology representing a connection form of the participating
トポロジ情報は、現在利用中のトポロジと、1つまたは複数のトポロジ候補と、を示す。つまり、トポロジ情報は、配信サーバ100からその配信サーバ100内のコンテンツに対応づけられた複数の受信クライアント300への更新情報の複数の配信経路を表す。
The topology information indicates the currently used topology and one or more topology candidates. That is, the topology information represents a plurality of distribution routes of update information from the
アグリゲーション指示は、アグリゲーション(合成)される複数の更新メッセージ(以下「被合成更新メッセージ」と称する)と、アグリゲーションを実行させる参加クライアント(以下「実行クライアント」と称する)300a1と、を表す。 The aggregation instruction represents a plurality of update messages (hereinafter referred to as “combined update messages”) to be aggregated (combined) and a participating client (hereinafter referred to as “execution client”) 300a1 that executes the aggregation.
つまり、アグリゲーション指示は、実行クライアント300a1に、複数の被合成更新メッセージをアグリゲーションすることを指示するための、情報である。 That is, the aggregation instruction is information for instructing the execution client 300a1 to aggregate a plurality of synthesized update messages.
なお、アグリゲーション指示は、アグリゲーションサーバ200によって作成され、アグリゲーションサーバ200から配信サーバ100に送信される。
Note that the aggregation instruction is created by the
参加クライアント情報は、参加クライアント300aにコンテンツの更新メッセージを送信する際に必要な情報である。
The participating client information is information necessary for transmitting a content update message to the participating
例えば、参加クライアント300aのクライアントID、IPアドレス、ポート番号が、参加クライアント情報として、用いられる。
For example, the client ID, IP address, and port number of the participating
アグリゲーションサーバ200は、例えば、コンピュータである。
The
アグリゲーションサーバ200は、1つまたは複数の配信サーバ100と、直接的または間接的に接続する。
The
アグリゲーションサーバ200は、配信サーバ100から、コンテンツ毎に、更新グラフのトポロジ情報を収集する。例えば、アグリゲーションサーバ200は、各配信サーバ100から、更新グラフのトポロジ情報を受信することによって、トポロジ情報を収集する。
The
アグリゲーションサーバ200は、更新メッセージを効率よくアグリゲーション(合成)できるトポロジの組み合わせを、更新グラフのトポロジ情報に基づいて計算する。
The
受信クライアント300は、例えば、コンピュータである。
The receiving
受信クライアント300は、1つまたは複数の配信サーバ100と、1つまたは複数の他の受信クライアント300と、直接的または間接的に接続する。
The receiving
受信クライアント300は、受信クライアント300の使用者(以下、単に「使用者」と称する)の操作に従って、使用者が希望するコンテンツ(以下「希望コンテンツ」と称する)を、配信システム1上で検索する。
The receiving
受信クライアント300は、希望コンテンツが発見された場合、希望コンテンツを所有する配信サーバ100に、使用者の操作に従って接続する。
When the desired content is found, the receiving
図2は、配信サーバ100と、アグリゲーションサーバ200と、受信クライアント300(参加クライアント300a)と、の間でやり取りされる情報(メッセージ)と、配信システム1の動作の概要を示した説明図である。各メッセージには、宛先が記載されている。
FIG. 2 is an explanatory diagram showing an overview of the operation of the distribution system 1 and information (messages) exchanged among the
図2において、受信クライアント300は、使用者の操作に従って、検索メッセージ1001を、配信サーバ100に送信する。
In FIG. 2, the receiving
検索メッセージ1001には、希望コンテンツに関する1つまたは複数の情報が記載されている。
The
配信サーバ100は、検索メッセージ1001を受信すると、検索メッセージ1001に記載されたコンテンツに関する情報に該当するコンテンツを検索する。
When the
配信サーバ100は、その検索結果を、検索応答メッセージ1002に付加する。
配信サーバ100は、検索結果が付加された検索応答メッセージ1002を、検索メッセージ1001の送信元(受信クライアント300)に送信する。
The
受信クライアント300は、検索応答メッセージ1002を受信すると、検索応答メッセージ1002に付加されている検索結果を表示する。
When receiving the search response message 1002, the receiving
受信クライアント300は、使用者から、検索結果に示されたコンテンツについての更新情報を希望する旨の指示を受け付けると、参加クライアント300aとして機能して、更新グラフ参加メッセージ(以下、単に「参加メッセージ」と称する)1003を、配信サーバ100に送信する。
Upon receiving an instruction from the user to request update information about the content indicated in the search result, the
参加メッセージ1003には、希望コンテンツの識別情報(コンテンツID)と、参加クライアント300aの情報(クライアントID、IPアドレス、ポート番号)とが、記載されている。
In the participation message 1003, identification information (content ID) of the desired content and information (client ID, IP address, port number) of the participating
配信サーバ100は、参加メッセージ1003を受信すると、参加メッセージ1003に記載されている希望コンテンツの識別情報にて識別される希望コンテンツを特定する。
When
続いて、配信サーバ100は、その希望コンテンツに対応する更新グラフ(以下「対応更新グラフ」と称する)を、参加クライアント300aの情報に基づいて更新する。
Subsequently, the
このとき、配信サーバ100は、配信サーバ100と、既に更新情報の通知対象に参加している参加クライアント300aと、新たに参加した参加クライアント300aと、の複数の接続形態、すなわち、複数のトポロジを示すトポロジ情報を作成する。
At this time, the
つまり、このトポロジ情報は、配信サーバ100から、既に更新情報の通知対象に参加している参加クライアント300aおよび新たに参加した参加クライアント300aへの、更新メッセージの複数の配信経路(トポロジ)を表す。
That is, this topology information represents a plurality of distribution paths (topologies) of update messages from the
配信サーバ100は、トポロジ情報にて示された複数のトポロジの中から、今後使用するトポロジを適宜選択し、その選択結果を、トポロジ情報に記載する。
The
配信サーバ100は、対応更新グラフ内のトポロジ情報を、その作成されたトポロジ情報に更新する。
The
さらに、配信サーバ100は、参加クライアント300aの情報を、参加クライアント情報に追加する。
Further, the
配信サーバ100は、対応更新グラフを更新すると、更新グラフ参加応答メッセージ(以下、単に「参加応答メッセージ」と称する)1004を、参加クライアント300aに送信する。
When the
参加応答メッセージ1004には、対応更新グラフ内のトポロジ情報が含まれる。
The
また、各配信サーバ100は、予め設定された時間毎に、トポロジ報告メッセージ1005を、アグリゲーションサーバ200に送信する。
Further, each
各トポロジ報告メッセージ1005には、トポロジ報告メッセージ1005の送信元である配信サーバ100に保存されている、コンテンツ毎の更新グラフが含まれる。
Each
なお、配信サーバ100は、自サーバ内の全ての更新グラフを、トポロジ報告メッセージ1005に含めてもよいし、自サーバ内の更新グラフのいずれかを、トポロジ報告メッセージ1005に含めてもよい。
The
アグリゲーションサーバ200は、トポロジ報告メッセージ1005を受信する毎に、トポロジ報告メッセージ1005に含まれているコンテンツ毎の更新グラフを保存する。
Each time the
アグリゲーションサーバ200は、予め設定された時間毎に、各更新グラフに示されたトポロジのそれぞれの組み合わせの中で、更新メッセージをアグリゲーションすることができる組み合わせ(以下「推奨組み合わせ」と称する)を演算して求める。
The
本実施形態では、アグリゲーションサーバ200は、トポロジ情報毎にトポロジ情報が表す複数のトポロジの中から1つの選択トポロジ、つまり、選択配信経路を選択する際に、少なくとも2つの選択トポロジ(選択配信経路)の少なくとも一部が重なるように、選択トポロジを選択する。
In the present embodiment, the
アグリゲーションサーバ200は、トポロジ情報ごとに選択された選択トポロジの組み合わせを、推奨組み合わせとして用いる。
The
アグリゲーションサーバ200は、推奨組み合わせを求めると、選択トポロジのうち重なる部分(上記一部)の始点となる受信クライアントを実行クライアントとして示すと共に、その実行クライアントがアグリゲーションする複数の更新メッセージを示したアグリゲーション指示を生成する。
When the
アグリゲーション指示は、一般的に合成指示と呼ぶことができる。 The aggregation instruction can be generally called a synthesis instruction.
アグリゲーションサーバ200は、推奨組み合わせと、アグリゲーション指示とを、トポロジ指定メッセージ1006に付加する。
The
アグリゲーションサーバ200は、推奨組み合わせとアグリゲーション指示とが付加されたトポロジ指定メッセージ1006を、全ての配信サーバ100に送信する。
The
各配信サーバ100は、トポロジ指定メッセージ1006を受信すると、自サーバ内のコンテンツ毎の更新グラフ内のトポロジ情報にて示された複数のトポロジのうち、トポロジ指定メッセージ1006に付加された推奨組み合わせに示された選択トポロジを、今後使用するトポロジとして選択し、その選択結果をトポロジ情報に記載する。
Upon receiving the
また、各配信サーバ100は、トポロジ指定メッセージ1006に付加されたアグリゲーション指示を、今後使用するトポロジに関連づけて記憶する。
Each
また、配信サーバ100内のコンテンツが更新されると、配信サーバ100は、更新のあったコンテンツに対応する更新フラグ内のトポロジ情報に記載されているトポロジのうち、今後使用するトポロジとして選択されたトポロジ(選択トポロジ)通りに更新メッセージ1007が転送されていくように、更新メッセージ1007に、コンテンツのメタデータの更新内容を示したメタデータ更新情報と、選択トポロジを示した選択トポロジ情報(配信経路情報)と、アグリゲーション指示と、を含め、その更新メッセージ1007を、選択トポロジに従った送信先(参加クライアント300a)に送信する。
When the content in the
参加クライアント300aは、更新メッセージ1007を受信すると、更新メッセージ1007に含まれるメタデータ更新情報を得る。
When the participating
更新メッセージ1007内の選択トポロジに転送指示(次の送信先)が記載されていない(つまり、自己が終端として示されている)場合、参加クライアント300aは、更新メッセージ1007の転送を中止する。
When the transfer instruction (next transmission destination) is not described in the selected topology in the update message 1007 (that is, the self is indicated as a termination), the participating
更新メッセージ1007内の選択トポロジに転送指示が記載され(つまり、自己が中継箇所として示され)、かつ、アグリゲーション指示がない場合、または、更新メッセージ1007内の選択トポロジに転送指示があり、かつ、アグリゲーション指示があり、かつ、アグリゲーション指示に自己が実行クライアントとして記載されていない場合、参加クライアント300aは、更新メッセージ1007をコピーし、そのコピーを、転送先として指定された参加クライアント300aに送信する。
When the transfer instruction is described in the selected topology in the update message 1007 (that is, the self is indicated as a relay location) and there is no aggregation instruction, or there is a transfer instruction in the selected topology in the
更新メッセージ1007内の選択トポロジに転送指示があり、かつ、アグリゲーション指示があり、かつ、アグリゲーション指示に自己が実行クライアントとして記載されており、かつ、アグリゲーション指示に記載された更新メッセージの全てが、自己に存在していない場合、参加クライアント300aは、その更新メッセージ1007を保存し、続いて、その更新メッセージについての時間カウントを開始する。
There is a transfer instruction in the selected topology in the
なお、アグリゲーション指示に記載された更新メッセージの全てが、自己に存在する場合、参加クライアント300aは、時間カウントを停止し、アグリゲーション対象の更新メッセージをアグリゲーションして、アグリゲーションした更新メッセージを、選択トポロジに従い送信する。
When all of the update messages described in the aggregation instruction are present, the participating
なお、参加クライアント300aは、時間カウントの値が所定の時間を示すと、自己に保存中の、アグリゲーション指示に記載された各更新メッセージを読み出し、その更新メッセージをアグリゲーションし、選択トポロジに従い、アグリゲーションした更新メッセージ107を送信する。
When the time count value indicates a predetermined time, the participating
また、参加クライアント300aは、使用者から希望コンテンツ本体を要求する旨の情報を受け付けると、コンテンツ要求メッセージ1008を、希望コンテンツに対応する配信サーバ100に送信する。
In addition, when the participating
コンテンツ要求メッセージ1008には、希望コンテンツの識別情報(コンテンツID)が記載されている。
The
配信サーバ100は、コンテンツ要求メッセージ1008を受信すると、コンテンツ要求メッセージ1008内のコンテンツの識別情報にて識別されたコンテンツを、コンテンツ要求応答メッセージ1009に付加して、コンテンツ要求メッセージ1008の送信元(参加クライアント300a)に送信する。
Upon receiving the
また、参加クライアント300aは、使用者から、コンテンツの更新情報の通知の中止を希望する旨の指示を受け付けると、更新グラフ離脱メッセージ(以下、単に「離脱メッセージ」と称する)1010を、配信サーバ100に送信する。
In addition, when the participating
離脱メッセージ1010には、更新情報の通知の中止を希望するコンテンツの識別情報(コンテンツID)と、参加クライアント300aの情報(クライアントID、IPアドレス、ポート番号)とが、記載されている。
In the
配信サーバ100は、離脱メッセージ1010を受信すると、離脱メッセージ1010に記載されているコンテンツの識別情報にて識別されるコンテンツを特定する。
Upon receiving the
続いて、更新グラフ管理部114は、その特定されたコンテンツに対応する更新グラフ(対応更新グラフ)を、離脱メッセージ1010に記載されている受信クライアント300(具体的には、参加クライアント300a)の情報に基づいて更新する。
Subsequently, the update
このとき、配信サーバ100は、既に参加している参加クライアント300aから、離脱希望の参加クライアント300aを除いた参加クライアント300aと、配信サーバ100と、の複数の接続形態、すなわち、複数のトポロジを示すトポロジ情報を作成する。
At this time, the
このトポロジ情報は、配信サーバ100から、既に参加している参加クライアント300aから離脱希望の参加クライアント300aを除いた参加クライアント300aへの、更新メッセージの複数の配信経路を表す。
This topology information represents a plurality of distribution paths of update messages from the
配信サーバ100は、トポロジ情報にて示された複数のトポロジの中から、今後使用するトポロジ(選択トポロジ)を選択し、その選択結果を、トポロジ情報に記載する。
The
配信サーバ100は、対応更新グラフ内のトポロジ情報を、その作成されたトポロジ情報に更新する。
The
さらに、配信サーバ100は、離脱を希望する参加クライアント300aの情報を、参加クライアント情報から削除する。
Further, the
配信サーバ100は、対応更新グラフを更新すると、更新グラフ離脱応答メッセージ(以下、単に「離脱応答メッセージ」と称する)1011を、離脱メッセージ1010の送信元(参加クライアント300a)に送信する。
When the
次に、配信サーバ100と、アグリゲーションサーバ200と、受信クライアント300と、のそれぞれについて説明する。
Next, each of the
図3は、配信サーバ100の構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a configuration of the
配信サーバ100は、主制御部110と、更新グラフ参加クライアント情報データベース(以下「参加クライアント情報DB」と称する)121と、メタデータデータベース(以下「メタデータDB」と称する)122と、コンテンツデータベース(以下「コンテンツDB」と称する)123と、サーバ情報データベース(以下「サーバ情報DB」と称する)124と、ネットワークインターフェイス(以下「ネットワークIF」と称する)130と、を含む。
The
主制御部110は、送受信部111と、トポロジ報告部112と、トポロジ報告タイマ113と、更新グラフ管理部114と、検索サーバ部115と、メタデータ配信サーバ部116と、メタデータ生成部117と、コンテンツサーバ部118と、を含む。
The
主制御部110は、CPU、RAM、およびOSなどで構成されたコンピュータの主要部である。主制御部110は、CD−ROM、ハードディスクまたはメモリに記録されたプログラムに従って動作する。CD−ROM、ハードディスクまたはメモリは、一般的に、コンピュータにて読み取り可能な記録媒体と呼ぶことができる。
The
主制御部110は、そのプログラムを記録媒体から読み取り実行することによって、送受信部111、トポロジ報告部112、トポロジ報告タイマ113、更新グラフ管理部114、検索サーバ部115、メタデータ配信サーバ部116、メタデータ生成部117、および、コンテンツサーバ部118として機能する。
The
トポロジ報告部112と、トポロジ報告タイマ113と、更新グラフ管理部114と、参加クライアント情報DB121とは、管理部100aに含まれる。
The
メタデータ配信サーバ部116と、メタデータ生成部117と、メタデータDB122とは、配信部100bに含まれる。
The metadata
メタデータ配信サーバ部116と、メタデータDB122とは、配信制御部100b1に含まれる。
The metadata
配信サーバ100は、自己内のコンテンツの更新情報を、そのコンテンツに対応づけられた複数の受信クライアント300、すなわち、複数の参加クライアント300aに配信する。
The
管理部100aは、一般的に管理手段と呼ぶことができる。
管理部100aは、自サーバから複数の参加クライアント300aへの更新情報の複数の配信経路(トポロジ)を表すトポロジ情報を作成する。
The
管理部100aは、そのトポロジ情報を含むトポロジ報告メッセージ1005を、アグリゲーションサーバ200に送信する。
The
管理部100aは、アグリゲーションサーバ200から、トポロジ指定メッセージ1006を受信すると、トポロジ情報が示す複数のトポロジの中から、トポロジ指定メッセージ1006に選択トポロジとして示されたトポロジを、今後使用するトポロジ(選択トポロジ)として選択し、その選択結果をトポロジ情報に記載する。
When the
管理部100aは、トポロジ指定メッセージ1006内のアグリゲーション指示を、その選択されたトポロジ(選択トポロジ)に関連づけて記憶する。
The
配信部100bは、一般的に配信手段と呼ぶことができる。
配信部100bは、選択トポロジにアグリゲーション指示が関連づけられている場合、更新メッセージ1007に、その選択トポロジを示す選択トポロジ情報とアグリゲーション指示とを付して、選択トポロジ情報とアグリゲーション指示とが付された更新メッセージ1007を、その選択トポロジに従って配信する。
When an aggregation instruction is associated with the selected topology, the
一方、選択トポロジにアグリゲーション指示が関連づけられていない場合、配信部100bは、更新メッセージ1007に選択トポロジ情報を付して、選択トポロジ情報が付された更新メッセージ1007を、その選択トポロジに従って配信する。
On the other hand, when the aggregation instruction is not associated with the selected topology, the
参加クライアント情報DB121は、一般的に記憶手段と呼ぶことができる。
Participating
図4は、参加クライアント情報DB121のデータ構成を示す概念図である。
FIG. 4 is a conceptual diagram showing the data structure of the participating
参加クライアント情報DB121は、コンテンツDB123に保存されているコンテンツ毎に(図4では、コンテンツID毎に)、トポロジ情報と、アグリゲーション指示と、更新グラフ参加クライアント情報と、を保存する。
The participating
トポロジ情報と、アグリゲーション指示と、更新グラフ参加クライアント情報とで、更新グラフが構成される。 An update graph is configured by the topology information, the aggregation instruction, and the update graph participation client information.
図4において、例えば、トポロジ情報の「n1−n10−n13」は、受信クライアントn1、n10およびn13が直列に接続され、受信クライアントn1が配信サーバ100に接続されていることを示す。
In FIG. 4, for example, “n1-n10-n13” in the topology information indicates that the reception clients n1, n10, and n13 are connected in series, and the reception client n1 is connected to the
また、トポロジ情報の「n1−n10−n13」は、受信クライアントn1およびn10が中継箇所であり、受信クライアントn13が終端であることも示す。 The topology information “n1-n10-n13” also indicates that the receiving clients n1 and n10 are relay locations and the receiving client n13 is a termination.
一方、トポロジ情報の「n1、n10、n13」は、受信クライアントn1、n10およびn13が、スター型で配信サーバ100に接続されていることを示す。
On the other hand, the topology information “n1, n10, n13” indicates that the receiving clients n1, n10, and n13 are connected to the
コンテンツC1に関連づけられているアグリゲーション指示「n10−n13:C10」は、受信クライアントn10が実行クライアントであり、コンテンツC1の更新メッセージとコンテンツC10の更新メッセージとが被合成更新メッセージであることを示す。 The aggregation instruction “n10-n13: C10” associated with the content C1 indicates that the receiving client n10 is an execution client, and the update message of the content C1 and the update message of the content C10 are combined update messages.
また、コンテンツC1に関連づけられているアグリゲーション指示「n10−n13:C10」は、受信クライアントn13が、合成された更新メッセージを合成前の更新メッセージのそれぞれに分離する分離クライアントであることも示す。 Further, the aggregation instruction “n10-n13: C10” associated with the content C1 also indicates that the receiving client n13 is a separation client that separates the synthesized update message into each of the update messages before synthesis.
コンテンツC1に関連づけられているアグリゲーション指示「n10−n13:C10」は、例えば、アグリゲーションサーバ200から、「n10−n13:C1、C10」の形式で送信される。
For example, the aggregation instruction “n10-n13: C10” associated with the content C1 is transmitted from the
「n10−n13:C1、C10」は、n10が実行クライアントであり、コンテンツC1の更新メッセージとコンテンツC10の更新メッセージとが被合成更新メッセージであり、n13が分離クライアントであることを示す。 “N10-n13: C1, C10” indicates that n10 is an execution client, the update message of content C1 and the update message of content C10 are combined update messages, and n13 is a separation client.
更新グラフ管理部114が、その「n10−n13:C1、C10」から、自クライアントに格納されているコンテンツに対応するC1を検出すると、参加クライアント情報DB121において、コンテンツC1と関連づけて「n10−n13:C10」を保存する。なお、「n10−n13:C10」の代わりに、「n10−n13:C1、C10」が保存されてもよい。
When the update
なお、トポロジ情報と、アグリゲーション指示と、更新グラフ参加クライアント情報と、更新グラフとについては、上述した通りである。 The topology information, the aggregation instruction, the update graph participation client information, and the update graph are as described above.
図5は、メタデータDB122のデータ構成を示す概念図である。
FIG. 5 is a conceptual diagram showing the data configuration of the
メタデータDB122は、コンテンツDB123に保存されているコンテンツのメタデータを保存している。
The
メタデータとは、コンテンツに付随する情報であって、例えば、コンテンツID、URI、タイトル、作成者、作成場所、作成時間、キーワードなどである。 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.
コンテンツDB123は、配信サーバ100が受信クライアント300に更新情報を通知する対象としているコンテンツを保存している。
The
コンテンツとは、例えば、テキスト、音声、写真、動画などである。コンテンツに更新があった場合、コンテンツDB123は、メタデータ生成部117に、更新があった旨を通知する。
The content is, for example, text, sound, photo, video, or the like. When the content is updated, the
図6は、サーバ情報DB124のデータ構成を示す概念図である。
FIG. 6 is a conceptual diagram illustrating a data configuration of the
サーバ情報DB124は、検索サーバ部115が検索応答メッセージ1002を送信するときに利用するサーバ情報のデータベースである。サーバ情報DB124は、検索応答メッセージ1002を送信する際に必要となるサーバID、IPアドレス、ポート番号などの情報を保存する。
The
送受信部111は、ネットワークIF130を介して、アグリゲーションサーバ200と、他の配信サーバ100と、受信クライアント300と、のそれぞれから、メッセージを受信し処理する。
The transmission / reception unit 111 receives and processes messages from the
送受信部111は、受信したメッセージが参加メッセージ1003であった場合は、参加メッセージ1003を、更新グラフ管理部114へ送る。
When the received message is the participation message 1003, the transmission / reception unit 111 transmits the participation message 1003 to the update
さらに、送受信部111は、受信したメッセージが離脱メッセージ1010であった場合は、離脱メッセージ1010を、更新グラフ管理部114へ送る。
Further, when the received message is the leaving
さらに、送受信部111は、受信したメッセージがトポロジ指定メッセージ1006であった場合は、トポロジ指定メッセージ1006を、更新グラフ管理部114へ送る。
Furthermore, when the received message is the
さらに、送受信部111は、受信したメッセージがコンテンツ要求メッセージ1008であった場合は、コンテンツ要求メッセージ1008を、コンテンツサーバ部118へ送る。
Furthermore, when the received message is the
さらに、送受信部111は、受信したメッセージが検索メッセージ1001であった場合は、検索メッセージ1001を、検索サーバ部115へ送る。
Furthermore, when the received message is the
さらに、送受信部111は、トポロジ報告部112と、更新グラフ管理部114と、検索サーバ部115と、メタデータ配信サーバ部116と、コンテンツサーバ部118と、のそれぞれから、メッセージを受け取る。
Further, the transmission / reception unit 111 receives a message from each of the
送受信部111は、そのメッセージに記載された宛先(例えば、アグリゲーションサーバ200、他の配信サーバ100、または、受信クライアント300)に、ネットワークIF130を介して、そのメッセージを送信する。
The transmission / reception unit 111 transmits the message to the destination (for example, the
更新グラフ管理部114は、一般的にトポロジ情報管理手段と呼ぶことができる。
The update
更新グラフ管理部114は、受信クライアント300から参加メッセージ1003を受信した場合、参加メッセージ1003に記載されている希望コンテンツの識別情報にて識別される希望コンテンツを特定する。
When the update
続いて、更新グラフ管理部114は、その希望コンテンツに対応する更新グラフ(対応更新グラフ)を、参加メッセージ1003に記載されている受信クライアント300(具体的には、参加クライアント300a)の情報に基づいて更新する。
Subsequently, the update
このとき、更新グラフ管理部114は、自サーバ100と、既に更新情報の通知対象に参加している参加クライアント300aと、新たに参加した参加クライアント300aと、の複数の接続形態、すなわち、複数のトポロジを示すトポロジ情報を作成する。
At this time, the update
トポロジとしては、例えば、リングトポロジ、二分木トポロジ、など形態を指定するものや、ホップ数最小トポロジ、負荷最小トポロジといったトポロジ作成ポリシーを指定するものなどがある。 Examples of the topology include those that specify a form such as a ring topology and a binary tree topology, and those that specify a topology creation policy such as a minimum hop count topology and a minimum load topology.
更新グラフ管理部114は、トポロジ情報にて示された複数のトポロジの中から、今後使用するトポロジ(選択トポロジ)を適宜選択し、その選択結果を、トポロジ情報に記載する。
The updated
更新グラフ管理部114は、参加クライアント情報DB121に保存されている対応更新グラフ内のトポロジ情報を、その作成されたトポロジ情報に更新する。
The update
さらに、更新グラフ管理部114は、参加クライアント300aの情報を、参加クライアント情報DB121内の参加クライアント情報に追加する。
Further, the update
更新グラフ管理部114は、参加クライアント情報DB121内の対応更新グラフを更新すると、参加応答メッセージ1004を、参加クライアント300aに送信する。
When the update
参加応答メッセージ1004には、対応更新グラフ内のトポロジ情報が含まれる。
The
さらに、更新グラフ管理部114は、受信クライアント300(参加クライアント300a)から離脱メッセージ1010を受信した場合、離脱メッセージ1010に記載されているコンテンツの識別情報に対応する更新グラフを、参加クライアント300aの情報に基づいて更新する。
Furthermore, when the update
このとき、更新グラフ管理部114は、既に参加している参加クライアント300aから、離脱を希望する参加クライアント300aを除いた、参加クライアント300aと、自サーバ100と、の複数の接続形態、すなわち、複数のトポロジを示すトポロジ情報を作成する。
At this time, the update
更新グラフ管理部114は、トポロジ情報にて示された複数のトポロジの中から、今後使用するトポロジを選択し、その選択結果を、トポロジ情報に記載する。
The updated
更新グラフ管理部114は、参加クライアント情報DB121内の対応更新グラフ内のトポロジ情報を、その作成されたトポロジ情報に更新する。
The update
さらに、更新グラフ管理部114は、離脱を希望する参加クライアント300aの情報を、参加クライアント情報DB121内の参加クライアント情報から削除する。
Furthermore, the update
更新グラフ管理部114は、参加クライアント情報DB121内の対応更新グラフを更新すると、離脱応答メッセージ1011を、離脱メッセージ1010の送信元(参加クライアント300a)に送信する。
When the update
さらに、更新グラフ管理部114は、アグリゲーションサーバ200からトポロジ指定メッセージ1006を受信した場合、トポロジ指定メッセージ1006に記載されている推奨組み合わせ(コンテンツ毎のトポロジ)に合うように、参加クライアント情報DB121内のコンテンツ毎の更新グラフを更新する。
Further, when the update
具体的には、更新グラフ管理部114は、参加クライアント情報DB121内のコンテンツ毎のトポロジの中で、推奨組み合わせにて示されたコンテンツ毎のトポロジを、今後利用するトポロジ(選択トポロジ)として設定する。
Specifically, the update
トポロジ報告タイマ113は、一般的に報告開始通知手段と呼ぶことができる。
トポロジ報告タイマ113は、予め設定された時間毎に、トポロジ報告部112に対しトポロジ報告契機を通知する。トポロジ報告契機は、一般的に報告開始通知と呼ぶことができる。
The
トポロジ報告部112は、一般的に報告手段と呼ぶことができる。
トポロジ報告部112は、トポロジ報告タイマ113からの通知を契機として、参加クライアント情報DB121の全てのトポロジ情報またはいくつかのトポロジ情報を、トポロジ報告メッセージ1005に含めて、アグリゲーションサーバ200へ送信する。
The
メタデータ配信サーバ部116は、メタデータ生成部117からの通知を契機に、更新のあったコンテンツについて、参加クライアント情報DB121に記載されている受信クライアント300(参加クライアント300a)に対し、選択トポロジに記載されている通りに更新メッセージ1007が転送されていくように、メタデータ更新情報と、選択トポロジ情報と、その選択トポロジ情報に関連づけられているアグリゲーション指示とを、更新メッセージ1007に含めて送信する。
In response to the notification from the
なお、選択トポロジ情報にアグリゲーション指示が関連づけられていない場合、メタデータ配信サーバ部116は、メタデータ更新情報と、選択トポロジ情報とを、更新メッセージ1007に含めて送信する。
When the aggregation instruction is not associated with the selected topology information, the metadata
例えば、図4に示した選択トポロジが「n1−n10−n13」である状況下で、コンテンツC1に更新があった場合は、メタデータ配信サーバ部116は、受信クライアントn1に対し、選択トポロジ「n1−n10−n13」を示す選択トポロジ情報と、その選択トポロジに関連づけられているアグリゲーション指示「n10−n13:C10」と、が付された更新メッセージ1007を送信する。
For example, in the situation where the selected topology shown in FIG. 4 is “n1-n10-n13”, when the content C1 is updated, the metadata
コンテンツサーバ部118は、受信クライアント300(具体的には、参加クライアント300a)からコンテンツ要求メッセージ1008を受信した場合、コンテンツ要求メッセージ1008で指定されたコンテンツを、コンテンツ要求応答メッセージ1009に付加して、受信クライアント300に送信する。
When the
検索サーバ部115は、受信クライアント300から検索メッセージ1001を受信した場合、メタデータDB122と検索メッセージ1001に付加されたキーワードを照合して、検索メッセージ1001に適合するメタデータを検索応答メッセージ1002に付加して受信クライアント300に送信する。
When the
さらに、検索サーバ部115は、受信クライアント300から検索メッセージ1001を受信した場合、サーバ情報DB124に記載された配信サーバ100に対して、受信した検索メッセージ1001をコピーして送信する。
Further, when receiving the
メタデータ生成部117は、一般的に生成手段と呼ぶことができる。
The
メタデータ生成部117は、コンテンツDB123からコンテンツ更新の通知を受けた場合、コンテンツDB123内の該当するコンテンツの更新内容を確認し、メタデータDB122内の該当するメタデータを更新する。本実施形態では、更新されたメタデータが、更新情報として用いられる。
When the
さらに、メタデータ生成部117は、コンテンツDB123からコンテンツ更新の通知を受けた場合、メタデータ配信サーバ部116に対し、該当するコンテンツについてコンテンツ更新を通知する。
Furthermore, when the
配信制御部100b1は、一般的に配信制御手段と呼ぶことができる。 Distribution control unit 100b1 can be generally referred to as distribution control means.
配信制御部100b1は、メタデータ生成部117からの通知を契機に、更新のあったコンテンツについて、メタデータ更新情報と、選択トポロジ情報と、その選択トポロジ情報に関連づけられているアグリゲーション指示とを、更新メッセージ1007に含めて、選択トポロジに従って送信する。
In response to the notification from the
なお、選択トポロジ情報にアグリゲーション指示が関連づけられていない場合、配信制御部100b1は、更新のあったコンテンツについて、メタデータ更新情報と、選択トポロジ情報とを、更新メッセージ1007に含めて、選択トポロジに従って送信する。
When the aggregation instruction is not associated with the selected topology information, the distribution control unit 100b1 includes the metadata update information and the selected topology information for the updated content in the
図7は、アグリゲーションサーバ200の構成を示すブロック図である。
FIG. 7 is a block diagram showing the configuration of the
アグリゲーションサーバ200は、主制御部210と、トポロジ情報データベース(以下「トポロジ情報DB」と称する)221と、 ネットワークインターフェイス(以下「ネットワークIF」と称する)230と、を含む。
主制御部210は、送受信部211と、アグリゲーションパタン演算部212と、アグリゲーションパタン演算タイマ213と、を含む。
The
主制御部210は、CPU、RAM、およびOSなどで構成されたコンピュータの主要部である。主制御部210は、CD−ROM、ハードディスクまたはメモリに記録されたプログラムに従って動作する。
The
主制御部210は、そのプログラムを記録媒体から読み取り実行することによって、送受信部211、アグリゲーションパタン演算部212、および、アグリゲーションパタン演算タイマ213として機能する。
The
アグリゲーションパタン演算部212と、アグリゲーションパタン演算タイマ213と、トポロジ情報DB221とは、制御部200aに含まれる。
The aggregation
トポロジ情報DB221は、一般的に格納手段と呼ぶことができる。
The
図8は、トポロジ情報DB221のデータ構成を示す概念図である。
FIG. 8 is a conceptual diagram showing the data configuration of the
トポロジ情報DB221は、配信サーバ100ごとに、配信サーバ100から送信されるコンテンツ毎の更新グラフを保存する。
The
送受信部211は、一般的に受信手段と呼ぶことができる。
Transmitter /
送受信部211は、ネットワークIF230を介して、配信サーバ100からのメッセージを受信し処理する。
The transmission /
送受信部211は、受信したメッセージがトポロジ報告メッセージ1005であった場合は、トポロジ報告メッセージ1005を、アグリゲーションパタン演算部212へ送る。
If the received message is the
さらに、送受信部211は、アグリゲーションパタン演算部212からメッセージ(例えば、トポロジ指定メッセージ1006)を受け取り、そのメッセージに記載された宛先となる配信サーバ100に、ネットワークIF230を介して、そのメッセージを送信する。
Furthermore, the transmission /
アグリゲーションパタン演算部212は、一般的に演算手段と呼ぶことができる。
Aggregation
アグリゲーションパタン演算部212は、配信サーバ100からトポロジ報告メッセージ1005を受信した場合、トポロジ報告メッセージ1005に含まれるコンテンツ毎の更新グラフを、トポロジ情報DB221に登録する。
When the aggregation
さらに、アグリゲーションパタン演算部212は、アグリゲーションパタン演算タイマ213からの通知を契機として、トポロジ情報DB221に保存された、配信サーバ100毎のトポロジ情報を全て読み出し、各更新グラフに示されたコンテンツ毎に、トポロジのそれぞれの組み合わせの中から、推奨組み合わせを演算して求める。
Further, the aggregation
このとき、アグリゲーションパタン演算部212は、トポロジ情報毎に1つの選択トポロジを選択する際に、選択トポロジの組み合わせの中から、選択トポロジ内の受信クライアント間のリンクの重なり数の分散値が最大になる組み合わせを求め、その組み合わせを推奨組み合わせとして選択する。
At this time, when selecting one selected topology for each topology information, the aggregation
このように更新グラフのトポロジの組み合わせを選択することにより、配信サーバ100が許すトポロジ構成の組み合わせの中で、更新メッセージをアグリゲーションできるリンク数を最大化することができる。
By selecting the topology combination of the update graph in this way, the number of links that can aggregate the update message can be maximized among the topology configuration combinations permitted by the
さらに、アグリゲーションパタン演算部212は、推奨組み合わせに応じたアグリゲーション指示を生成する。
Furthermore, the aggregation
さらに、アグリゲーションパタン演算部212は、推奨組み合わせと、アグリゲーション指示とを、トポロジ指定メッセージ1006に付加する。
Furthermore, the aggregation
アグリゲーションパタン演算部212は、推奨組み合わせとアグリゲーション指示とが付加されたトポロジ指定メッセージ1006を、全ての配信サーバ100に送信する。
The aggregation
アグリゲーションパタン演算タイマ213は、一般的に動作開始通知手段と呼ぶことができる。
Aggregation
アグリゲーションパタン演算タイマ213は、予め設定された時間毎に、アグリゲーションパタン演算部212に対し、アグリゲーション組み合わせ演算の契機を通知する。この契機は、一般的に動作開始通知と呼ぶことができる。
The aggregation
制御部200aは、一般的に制御手段と呼ぶことができる。
制御部200aは、アグリゲーションパタン演算タイマ213からの通知を契機として、推奨組み合わせを演算し、さらに、その推奨組み合わせに応じたアグリゲーション指示を生成する。
The
制御部200aは、推奨組み合わせと、アグリゲーション指示とを、トポロジ指定メッセージ1006に付加する。
The
制御部200aは、推奨組み合わせとアグリゲーション指示とが付加されたトポロジ指定メッセージ1006を、全ての配信サーバ100に送信する。
The
図9は、受信クライアント300の構成を示すブロック図である。
FIG. 9 is a block diagram illustrating a configuration of the
受信クライアント300は、主制御部310と、サーバ情報データベース(以下「サーバ情報DB」と称する)321と、ネットワークインターフェイス(以下「ネットワークIF」と称する)330と、を含む。
The
主制御部310は、送受信部311と、コンテンツクライアント部312と、検索クライアント部313と、更新グラフ参加離脱部314と、更新グラフクライアント部315と、アグリゲーション待ちバッファ316と、メッセージ作成部317と、バッファタイマ318と、を含む。
The
主制御部310は、CPU、RAM、およびOSなどで構成されたコンピュータの主要部である。主制御部310は、CD−ROM、ハードディスクまたはメモリに記録されたプログラムに従って動作する。
The
主制御部310は、そのプログラムを記録媒体から読み取り実行することによって、送受信部311、コンテンツクライアント部312、検索クライアント部313、更新グラフ参加離脱部314、更新グラフクライアント部315、アグリゲーション待ちバッファ316、メッセージ作成部317、および、バッファタイマ318として機能する。
The
メッセージ作成部317と、バッファタイマ318とは、転送管理部300aに含まれる。
The
サーバ情報DB321は、図6に示した配信サーバ100内のサーバ情報DB124と同等のものであって、検索クライアント部313が検索メッセージ1001を送信するときに利用するデータベースである。
The
サーバ情報DB321は、検索メッセージ1001を送信する際に必要となるサーバID、IPアドレス、ポート番号などの情報を保存する。
The
送受信部311は、一般的に更新情報受信手段と呼ぶことができる。
The transmission /
送受信部311は、ネットワークIF330を介して、配信サーバ100と受信クライアント300とのそれぞれから、メッセージを受信し処理する。
The transmission /
送受信部311は、受信したメッセージがコンテンツ要求応答メッセージ1009であった場合は、コンテンツ要求応答メッセージ1009を、コンテンツクライアント部312へ送る。
When the received message is the content
さらに、送受信部311は、受信したメッセージが検索応答メッセージ1002であった場合は、検索応答メッセージ1002を、検索クライアント部313へ送る。
Further, when the received message is the search response message 1002, the transmission /
さらに、送受信部311は、受信したメッセージが参加応答メッセージ1004であった場合は、参加応答メッセージ1004を、更新グラフ参加離脱部314へ送る。
Furthermore, when the received message is the
さらに、送受信部311は、受信したメッセージが離脱応答メッセージ1011であった場合は、離脱応答メッセージ1011を、更新グラフ参加離脱部314へ送る。
Further, when the received message is the leaving
さらに、送受信部311は、受信したメッセージが更新メッセージ1007であった場合は、更新メッセージ1007を、更新グラフクライアント部315へ送る。
Furthermore, when the received message is the
さらに、送受信部311は、コンテンツクライアント部312と、検索クライアント部313と、更新グラフクライアント部315と、メッセージ作成部317と、のそれぞれから、メッセージを受け取り、そのメッセージに記載された宛先となる配信サーバ100あるいは受信クライアント300に、ネットワークIF330を介して、そのメッセージを送信する。
Further, the transmission /
コンテンツクライアント部312は、更新メッセージ1007を受信しているコンテンツについて、使用者からそのコンテンツ本体を要求する旨の情報を受け付けると、そのコンテンツを有する配信サーバ100に対し、コンテンツ要求メッセージ1008を送信する。
When the
コンテンツクライアント部312は、コンテンツ要求応答メッセージ1009を受信した場合、コンテンツ要求応答メッセージ1009に付加されたコンテンツを得る。
When the
検索クライアント部313は、使用者の操作に従って希望コンテンツを検索する場合、希望コンテンツに関する情報をひとつまたは複数記載した検索メッセージ1001を作成する。
The
検索クライアント部313は、サーバ情報DB321に記載のあるひとつまたは複数の配信サーバ100に対し、検索メッセージ1001を送信する。
The
ここで、コンテンツに関する情報とは、例えばコンテンツID、URI、タイトル、作成者、作成場所、作成時間、キーワードなどである。 Here, the information regarding the content includes, for example, a content ID, URI, title, creator, creation location, creation time, keyword, and the like.
検索クライアント部313は、検索応答メッセージ1002を受信すると、検索応答メッセージ1002に記載されているコンテンツのメタデータを表示する。
When the
更新グラフ参加離脱部314は、検索クライアント部313が受信した検索応答メッセージ1002に記載されているコンテンツの配信対象に参加する場合、そのコンテンツを有する配信サーバ100に対し、参加メッセージ1003を送信する。
When participating in the content distribution target described in the search response message 1002 received by the
さらに、更新グラフ参加離脱部314は、参加応答メッセージ1004を受信した場合、以後、更新メッセージ1007を受理する。
Further, when the update graph participation /
さらに、更新グラフ参加離脱部314は、更新メッセージ1007の通知を中止する場合、その更新メッセージ1007の送信元の配信サーバ100へ、離脱メッセージ1010を送信する。
Further, when the update graph
さらに、更新グラフ参加離脱部314は、離脱応答メッセージ1011を受信した場合、あるいは、更新メッセージ1007の送信元の配信サーバ100へ離脱メッセージ1011を送信したのち一定時間経過後に、アグリゲーション待ちバッファ316内に、その更新メッセージに対応するバッファが存在していた場合は、そのバッファを削除する。
Furthermore, the update graph
更新グラフクライアント部315は、一般的に中継管理手段と呼ぶことができる。
The update
更新グラフクライアント部315は、更新メッセージ1007を受信した場合、更新メッセージ1007に含まれるメタデータ更新情報を得る。
When the update
このとき、更新メッセージ1007内の選択トポロジに転送指示が記載されていない場合、更新グラフクライアント部315は、更新メッセージ1007の転送を中止する。
At this time, if the transfer instruction is not described in the selected topology in the
更新メッセージ1007内の選択トポロジに転送指示があり、かつ、アグリゲーション指示があり、かつ、アグリゲーション指示に自クライアントが実行クライアントとして記載されている場合、更新グラフクライアント部315は、アグリゲーション待ちバッファ316に、そのアグリゲーション指示に対応するバッファを作成し、そのバッファに、更新メッセージ1007を保存する。なお、このバッファは、アグリゲーション指示の組み合わせ毎に作成される。
When there is a transfer instruction in the selected topology in the
更新メッセージ1007内の選択トポロジに転送指示があり、かつ、アグリゲーション指示がない場合、または、更新メッセージ1007内の選択トポロジに転送指示があり、かつ、アグリゲーション指示があり、かつ、アグリゲーション指示に自己が実行クライアントとして記載されていない場合、更新グラフクライアント部315は、更新メッセージ1007をコピーし、そのコピーを、メッセージ作成部317に渡す。
When there is a transfer instruction in the selected topology in the
アグリゲーション待ちバッファ316は、一般的に更新情報格納手段と呼ぶことができる。
The
さらに、アグリゲーション待ちバッファ316は、作成済みのバッファへ更新メッセージ1007が保存されたとき、アグリゲーション対象となる他の更新メッセージ1007が他のバッファに存在していなかった場合は、更新メッセージ1007を保存したバッファ用のバッファタイマ318の時間カウントを開始させる。
Further, the
また、アグリゲーション待ちバッファ316は、作成済みのバッファへ更新メッセージ1007が保存されたとき、アグリゲーション対象となる他の更新メッセージ1007が他のバッファに存在している場合は、バッファタイマ318をリセットし、アグリゲーション対象の複数の更新メッセージ1007を、メッセージ作成部317へ渡す。
Also, the
さらに、アグリゲーション待ちバッファ316は、バッファタイマ318からタイマ切れ通知を受けると、そのバッファタイマ318に対応するバッファに保存されている更新メッセージ1007を、メッセージ作成部317へ渡す。
Further, when the
メッセージ作成部317は、更新グラフクライアント部315から更新メッセージ315を得ると、選択トポロジに従い、受信クライアント300へ、更新メッセージ1007を送信する。
When the
さらに、メッセージ作成部317は、アグリゲーション待ちバッファ316から得た複数の更新メッセージ1007をアグリゲーションして、選択トポロジに従い、受信クライアント300へ、その更新メッセージ1007を送信する。
Further, the
バッファタイマ318は、一般的にカウント手段と呼ぶことができる。
バッファタイマ318は、タイマをひとつまたは複数持ち、アグリゲーション待ちバッファ316からの通知により、アグリゲーション待ちバッファ316に作成されているバッファに一対一に対応するタイマを作動、またはリセットする。
The
さらに、バッファタイマ318は、予め定められた時間を経過したタイマがあった場合、そのタイマに対応するバッファの情報を、アグリゲーション待ちバッファ316に通知し、そのタイマをリセットする。
Further, when there is a timer that has passed a predetermined time, the
転送管理部300aは、一般的に転送管理手段と呼ぶことができる。
転送管理部300aは、バッファタイマ318が所定時間をカウントすると、アグリゲーション待ちバッファ316内に、アグリゲーション指示に示された全ての更新メッセージが格納されていなくても、アグリゲーション待ちバッファ316内の更新メッセージを合成し、その合成された更新メッセージを、選択トポロジに従って、受信クライアント300に転送する。
When the
次に、動作を説明する。 Next, the operation will be described.
図10は、配信サーバ100が受信クライアント300から参加メッセージ1003を受信した場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 10 is a flowchart showing the operation of the
配信サーバ100が動作を開始すると、まず、送受信部111が、アグリゲーションサーバ200、他の配信サーバ100、もしくは、受信クライアント300からの通信を待つ状態(以後「アイドル状態」と称する)となる(ステップ400)。
When the
配信サーバ100は、アイドル状態下で、受信クライアント300から参加メッセージ1003を受信すると(ステップ401)、参加メッセージ1003に対応するコンテンツの参加クライアント情報DB121内のトポロジ情報と参加クライアント情報とを更新する(ステップ402)。
When the
続けて、配信サーバ100は、トポロジ情報を含めた参加応答メッセージ1004を、参加メッセージ1003の送信元(受信クライアント300)に送信し(ステップ403)、その後、アイドル状態に戻る(ステップ400)。
Subsequently, the
図11は、配信サーバ100が受信クライアント300から離脱メッセージ1010を受信した場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 11 is a flowchart showing the operation of the
配信サーバ100は、アイドル状態下で、受信クライアント300から離脱メッセージ1010を受信すると(ステップ411)、離脱メッセージ1010に対応する参加クライアント情報DB121のトポロジ情報と参加クライアント情報とを更新する(ステップ412)。
When the
続けて、配信サーバ100は、離脱応答メッセージ1011を、離脱メッセージ1010の送信元(受信クライアント300)に送信し(ステップ413)、その後、アイドル状態に戻る(ステップ400)。
Subsequently, the
図12は、配信サーバ100がコンテンツを更新した場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 12 is a flowchart showing the operation of the
配信サーバ100は、アイドル状態下でコンテンツを更新すると(ステップ421)、更新のあったコンテンツについて、参加クライアント情報DB121に記載されている受信クライアント300に対し、選択トポロジ情報に記載されている通りに更新メッセージ1007が転送されていくように、更新メッセージ1007に、メタデータ更新情報と、トポロジ情報と、アグリゲーション指示と、を含めて、送信し(ステップ422)、その後、アイドル状態に戻る(ステップ400)。なお、トポロジ情報は、選択トポロジを示す。
When the
図13は、配信サーバ100内でトポロジ報告タイマ113が切れた場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 13 is a flowchart showing the operation of the
配信サーバ100は、アイドル状態下で、トポロジ報告タイマ113が切れると(ステップ431)、参加クライアント情報DB121の内容の一部または全てを、トポロジ報告メッセージ1005に含めて、アグリゲーションサーバ200へ送信し(ステップ432)、その後、アイドル状態に戻る(ステップ400)。
When the
図14は、配信サーバ100がアグリゲーションサーバ200からトポロジ指定メッセージ1006を受信した場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 14 is a flowchart showing the operation of the
配信サーバ100は、アイドル状態下で、アグリゲーションサーバ200からトポロジ指定メッセージ1006を受信すると(ステップ441)、トポロジ指定メッセージ1006に記載されている推奨組み合わせおよびアグリゲーション指示に基づいて、参加クライアント情報DB121を更新し(ステップ442)、その後、アイドル状態に戻る(ステップ400)。
When the
図15は、配信サーバ100が受信クライアント300からコンテンツ要求メッセージ1008を受信した場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 15 is a flowchart showing the operation of the
配信サーバ100は、アイドル状態下で、受信クライアント300からコンテンツ要求メッセージ1008を受信すると(ステップ451)、コンテンツ要求メッセージ1008で指定されたコンテンツを、コンテンツ要求応答メッセージ1009に付加して、受信クライアント300に送信し(ステップ452)、その後、アイドル状態に戻る(ステップ400)。
When the
図16は、配信サーバ100が受信クライアント300から検索メッセージ1001を受信した場合の、配信サーバ100の動作を示すフローチャートである。
FIG. 16 is a flowchart showing the operation of the
配信サーバ100は、アイドル状態下で、受信クライアント300から検索メッセージ1001を受信すると(ステップ461)、メタデータDB122と検索メッセージに付加されたキーワードを照合し(ステップ462)、適合するメタデータを検索応答メッセージ1002に付加して受信クライアント300に送信する(ステップ463)。
When the
さらに、配信サーバ100は、サーバ情報DB124に記載されたサーバに対して、受信した検索メッセージ1001をコピーして送信し(ステップ464)、その後、アイドル状態に戻る(ステップ400)。
Further, the
図17は、アグリゲーションサーバ200が配信サーバ100からトポロジ報告メッセージ1005を受信した場合の、アグリゲーションサーバ200の動作を示すフローチャートである。
FIG. 17 is a flowchart showing the operation of the
アグリゲーションサーバ200が動作を開始すると、まず、送受信部211が配信サーバ100からの通信を待つ状態(以後「アイドル状態」と称する)となる(ステップ500)。
When the
アグリゲーションサーバ200は、アイドル状態下で、配信サーバ100からトポロジ報告メッセージ1005を受信すると(ステップ501)、トポロジ報告メッセージ1005に含まれるコンテンツ毎の更新グラフを、トポロジ情報DB221に登録することによって、トポロジ情報DB221を更新し(ステップ502)、その後、アイドル状態に戻る(ステップ500)。
When the
図18は、アグリゲーションサーバ200内のアグリゲーションパタン演算タイマ213が切れた場合の、アグリゲーションサーバ200の動作を示すフローチャートである。
FIG. 18 is a flowchart showing the operation of the
アグリゲーションサーバ200は、アイドル状態下で、アグリゲーションパタン演算タイマ213が切れると(ステップ511)、トポロジ情報DB221に保存された配信サーバ100毎の更新グラフを全て読み出し、一部または全てのコンテンツ毎の更新グラフのトポロジの組み合わせに対し、更新メッセージ1007がアグリゲーションできる推奨組み合わせを演算し(ステップ512)、その推奨組み合わせを、トポロジ指定メッセージ1006に付加して、全ての配信サーバ100に送信し(ステップ513)、その後、アイドル状態に戻る(ステップ500)。
When the aggregation
図19は、受信クライアント300が配信サーバ100に更新グラフへの参加を希望した場合の、受信クライアント300の動作を示すフローチャートである。
FIG. 19 is a flowchart showing the operation of the receiving
受信クライアント300が動作を開始すると、まず、送受信部311が、配信サーバ100もしくは受信クライアント300からの通信を待つ状態(以後「アイドル状態」と称する)となる(ステップ600)。
When the
受信クライアント300は、アイドル状態下で、配信サーバ100の更新グラフへ参加するために、参加メッセージ1003を送信する(ステップ601)。
The receiving
続いて、受信クライアント300は、配信サーバ100から参加応答メッセージ1004を受信し(ステップ602)、アイドル状態に戻る(ステップ600)。
Subsequently, the receiving
図20は、受信クライアント300が、参加している更新グラフからの離脱を希望した場合の、受信クライアント300の動作を示すフローチャートである。
FIG. 20 is a flowchart illustrating an operation of the receiving
受信クライアント300は、アイドル状態下で、コンテンツの更新の通知を中止するために、そのコンテンツを有する配信サーバ100へ、離脱メッセージ1010を送信する(ステップ611)。
The receiving
続いて、受信クライアント300は、配信サーバ100から、離脱応答メッセージ1011を受信する(ステップ612)。
Subsequently, the receiving
さらに、離脱した更新の通知に関係するバッファ(関係バッファ)があった場合(ステップ613のYES)、受信クライアント300は、アグリゲーション待ちバッファ316に存在する関係バッファを削除し(ステップ614)、その後、アイドル状態に戻る(ステップ600)。
Further, when there is a buffer (related buffer) related to the notification of the updated update (YES in Step 613), the receiving
関係バッファがなかった場合(ステップ613のNO)、受信クライアント300は、アイドル状態に戻る(ステップ600)。
If there is no related buffer (NO in step 613), the receiving
図21は、受信クライアント300が配信サーバ100から更新メッセージ1007を受信した場合の、受信クライアント300の動作を示すフローチャートである。
FIG. 21 is a flowchart showing the operation of the receiving
受信クライアント300は、アイドル状態下で、更新メッセージ1007を受信すると(ステップ621)、更新メッセージ1007に含まれるメタデータ更新情報を得る(ステップ622)。
When receiving the
さらに、更新メッセージ1007内の選択トポロジに転送指示がなかった場合(ステップ623のNO)、受信クライアント300は、アイドル状態に戻る(ステップ600)。
Furthermore, when there is no transfer instruction in the selected topology in the update message 1007 (NO in step 623), the receiving
選択トポロジに転送指示があった場合(ステップ623のYES)、かつ、アグリゲーション指示がなかった場合、または、選択トポロジに転送指示があり、かつ、アグリゲーション指示があり、かつ、アグリゲーション指示に自己が実行クライアントとして記載されていない場合(ステップ624のNO)、受信クライアント300は、更新メッセージ1007をコピーし、そのコピーを、転送先として指定された受信クライアント300に送信し(ステップ625)、アイドル状態に戻る(ステップ600)。
When there is a transfer instruction in the selected topology (YES in step 623), and there is no aggregation instruction, or there is a transfer instruction in the selected topology, there is an aggregation instruction, and the aggregation instruction is executed by itself If not described as a client (NO in step 624), the receiving
更新メッセージ1007内の選択トポロジに転送指示があり、かつ、アグリゲーション指示があり、かつ、アグリゲーション指示に自己が実行クライアントとして記載されており(ステップ624のYES)、かつ、アグリゲーション指示に記載された更新メッセージの全てが、自己内のバッファに存在していない場合(ステップ626のNO)、受信クライアント300は、そのバッファに対応するバッファタイマ318を開始させる(ステップ627)。
There is a transfer instruction in the selected topology in the
その後、ステップ626の結果に関わらず、受信クライアント300は、更新メッセージ1007をアグリゲーション待ちバッファ316の該当するバッファへ保存する(ステップ628)。
Thereafter, regardless of the result of
このとき、バッファにおいてアグリゲーション対象の更新メッセージの全てが揃っていない場合(ステップ629のNO)、受信クライアント300は、アイドル状態に戻る(ステップ600)。
At this time, if all the update messages to be aggregated are not prepared in the buffer (NO in step 629), the receiving
バッファにおいてアグリゲーション対象の更新メッセージの全てが揃った場合(ステップ629のYES)、受信クライアント300は、バッファタイマ318をリセットし(ステップ630)、対象の更新メッセージをアグリゲーションして、アグリゲーションした更新メッセージを、選択トポロジに従い送信し(ステップ631)、アイドル状態に戻る(ステップ600)。
When all the update messages to be aggregated are gathered in the buffer (YES in Step 629), the receiving
図22は、受信クライアント300においてバッファタイマ318が切れた場合の、受信クライアント300の動作を示すフローチャートである。
FIG. 22 is a flowchart showing the operation of the
受信クライアント300は、アイドル状態下で、バッファタイマ318がきれると(ステップ641)、タイマに対応するアグリゲーション待ちバッファ316のバッファから更新メッセージを読み出してアグリゲーションし、アグリゲーションした更新メッセージを選択トポロジに従い送信し(ステップ642)、アイドル状態に戻る(ステップ600)。
When the
図23は、受信クライアント300において配信サーバ100に対してコンテンツ本体を要求した場合の、受信クライアント300の動作を示すフローチャートである。
FIG. 23 is a flowchart showing the operation of the receiving
受信クライアント300は、アイドル状態下で、希望コンテンツを有する配信サーバ100に対し、コンテンツ要求メッセージ1008を送信し(ステップ651)、その返信としてコンテンツ要求応答メッセージ1009を受信することでコンテンツ本体を得て(ステップ652)、アイドル状態に戻る(ステップ600)。
In the idle state, the receiving
図24は、受信クライアント300がコンテンツを検索する場合の、受信クライアント300の動作を示すフローチャートである。
FIG. 24 is a flowchart showing the operation of the receiving
受信クライアント300は、アイドル状態下で、希望コンテンツに関する情報をひとつまたは複数記載した検索メッセージ1001を作成し、ひとつまたは複数の配信サーバ100に対し、検索メッセージ1001を送信し(ステップ661)、その返信として配信サーバ100から検索応答メッセージ1002を受信すると、検索応答メッセージ1002に記載されているコンテンツのメタデータを表示し(ステップ662)、アイドル状態に戻る(ステップ600)。
In the idle state, the receiving
なお、図10〜24で説明したフローチャートに係る各ステップの動作内容は、配信サーバ100とアグリゲーションサーバ200と受信クライアント300とが予め備えるコンピュータ(主制御部110、主制御部210、主制御部310)で動作するプログラムにて規定することができる。 Note that the operation contents of each step according to the flowcharts described in FIGS. ).
本実施形態では、各配信サーバ100が、配信サーバ100が配信するコンテンツの更新情報を受信する受信クライアント300の更新グラフのトポロジを、予め複数作成する。
In the present embodiment, each
アグリゲーションサーバ200が、配信サーバ100から、コンテンツ毎の更新グラフのトポロジ情報を収集する。
The
アグリゲーションサーバ200が、トポロジ情報に基づいて、推奨組み合わせとアグリゲーション指示とを求める。
The
アグリゲーションサーバ200が、推奨組み合わせとアグリゲーション指示とを、各配信サーバ100に送信する。
The
このため、サーバとクライアントの関係が頻繁に変化する場合においても、更新情報の配信の高効率とシステムの高可用とを両立する配信システムを提供することができる。 For this reason, even when the relationship between the server and the client frequently changes, it is possible to provide a distribution system that achieves both high efficiency of distribution of update information and high availability of the system.
なお、この効果は、送受信部211と制御部200aとからなるアグリエーションサーバ、管理部100aと配信部100bとからなる配信サーバ、アグリゲーション待ちバッファ316と送受信部311と更新グラフクライアント部315と転送管理部300aとからなる受信クライアントでも奏することが可能である。
Note that this effect is that an aggregation server including the transmission /
また、本実施形態では、アグリゲーションサーバ200は、定期的に、推奨組み合わせとアグリゲーション指示とを求める。
In this embodiment, the
この場合、トポロジ情報が変化しても、定期的に、推奨組み合わせとアグリゲーション指示とを変更することが可能になる。 In this case, even if the topology information changes, it is possible to periodically change the recommended combination and the aggregation instruction.
また、本実施形態では、アグリゲーションサーバ200は、選択トポロジの組み合わせのうち、選択トポロジ内の受信クライアント間のリンクの重なり数の分散値が最大になる選択トポロジの組み合わせを、推奨組み合わせとする。
Further, in this embodiment, the
この場合、更新メッセージのアグリゲーションに最適な選択トポロジを求めることが可能になる。 In this case, it is possible to obtain a selection topology that is optimal for aggregation of update messages.
また、配信サーバ100は、アグリゲーションサーバ200からの指示(選択トポロジやアグリゲーション指示)を、更新情報と共に、更新メッセージ1007に載せて、受信クライアント300に送信する。
In addition, the
また、受信クライアント300は、更新メッセージ1007に載せられた指示に従って、更新メッセージ1007を配信およびアグリゲーションする。
Further, the receiving
この場合、アグリゲーションサーバ200からの指示通りに、更新メッセージ1007を配信およびアグリゲーションすることが可能になる。
In this case, the
また、本実施形態では、配信サーバ100は、定期的に、トポロジ情報をアグリゲーションサーバ200に送信する。
In the present embodiment, the
この場合、トポロジ情報の変化を、定期的に、アグリゲーションサーバ200に知らせることが可能になる。
In this case, it becomes possible to notify the
また、本実施形態では、更新情報が生成されると、配信サーバ100は、アグリゲーションサーバ200からの指示を、更新情報と共に、更新メッセージ1007に載せて、受信クライアント300に送信する。
Further, in the present embodiment, when update information is generated, the
この場合、更新情報を、適切なタイミングで、アグリゲーションサーバ200からの指示と共に、更新メッセージ1007に載せて、受信クライアント300に送信することが可能になる。
In this case, the update information can be transmitted to the
また、本実施形態では、配信サーバ100は、参加メッセージを受信した場合、または、離脱メッセージを受信した場合、参加クライアントの変更に伴って、トポロジ情報を更新する。
Further, in the present embodiment, the
この場合、参加クライアントの変化に応じて、トポロジ情報を更新することが可能になる。 In this case, it becomes possible to update the topology information in accordance with changes in participating clients.
また、本実施形態では、受信クライアント300は、更新メッセージが、所定時間、バッファに格納され続けていると、バッファ内の更新メッセージをアグリゲーションして、選択トポロジに従って他の受信クライアント300に転送する。
In this embodiment, when the update message is stored in the buffer for a predetermined time, the
(第2の実施形態)
次に、本発明の第2の実施形態を説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described.
第2の実施形態では、アグリゲーションサーバ200において、図7に示したアグリゲーションパタン演算部212の代わりに、アグリゲーションパタン演算部212aが用いられる。第1の実施形態と同様なため、説明を省略する。
In the second embodiment, in the
アグリゲーションパタン演算部212aは、配信サーバ100からトポロジ報告メッセージ1005を受信した場合、トポロジ報告メッセージ1005に含まれるコンテンツ毎の更新グラフを、トポロジ情報DB221に登録する。
When the aggregation pattern calculation unit 212 a receives the
さらに、アグリゲーションパタン演算部212aは、アグリゲーションパタン演算タイマ213からの通知を契機として、トポロジ情報DB221に保存された、配信サーバ100毎のトポロジ情報を全て読み出し、各更新グラフに示されたコンテンツ毎に、トポロジのそれぞれの組み合わせの中から、推奨組み合わせを演算して求める。
Further, the aggregation pattern calculation unit 212a reads all the topology information for each
このとき、アグリゲーションパタン演算部212aは、トポロジ情報毎に1つの選択トポロジを選択する際に、選択トポロジの組み合わせの中から、選択トポロジの次数の分散値が最小にする組み合わせを求め、その組み合わせを推奨組み合わせとして選択する。 At this time, when selecting one selected topology for each topology information, the aggregation pattern calculation unit 212a obtains a combination that minimizes the variance value of the order of the selected topology from the combinations of the selected topologies, and determines the combination. Select as a recommended combination.
このように更新グラフのトポロジの組み合わせを選択することにより、配信サーバ100が許すトポロジ構成の組み合わせの中で、受信クライアント300のリンク負荷を分散することができる。
By selecting the topology combination of the update graph in this way, the link load of the receiving
さらに、アグリゲーションパタン演算部212aは、推奨組み合わせに応じたアグリゲーション指示を生成する。 Furthermore, the aggregation pattern calculation unit 212a generates an aggregation instruction according to the recommended combination.
さらに、アグリゲーションパタン演算部212aは、推奨組み合わせと、アグリゲーション指示とを、トポロジ指定メッセージ1006に付加する。
Furthermore, the aggregation pattern calculation unit 212a adds the recommended combination and the aggregation instruction to the
アグリゲーションパタン演算部212aは、推奨組み合わせとアグリゲーション指示とが付加されたトポロジ指定メッセージ1006を、全ての配信サーバ100に送信する。
The aggregation pattern calculation unit 212a transmits the
本実施形態では、アグリゲーションサーバ200は、選択トポロジの組み合わせのうち、選択トポロジの次数の分散値が最小になる組み合わせ、すなわち、受信クライアント300の負荷を分散できる組み合わせを見つけ、その組み合わせを配信サーバ100へ送信する。
In the present embodiment, the
このため、サーバとクライアントの関係が頻繁に変化する場合においても、受信クライアント300の負荷を均一にできる配信システムを提供することができる。
For this reason, even when the relationship between the server and the client frequently changes, it is possible to provide a distribution system that can make the load on the receiving
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。 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 更新情報配信システム1
100 更新情報配信サーバ
100a 管理部
100b 配信部
100b1 配信制御部
110 主制御部
111 送受信部
112 トポロジ報告部
113 トポロジ報告タイマ
114 更新グラフ管理部
115 検索サーバ部
116 メタデータ配信サーバ部
117 メタデータ生成部
118 コンテンツサーバ部
121 更新グラフ参加クライアント情報DB
122 メタデータDB
123 コンテンツDB
124 サーバ情報DB
130 ネットワークインターフェイス
200 アグリゲーションサーバ
200a 制御部
210 主制御部
211 送受信部
212 アグリゲーションパタン演算部
213 アグリゲーションパタン演算タイマ
221 トポロジ情報DB
230 ネットワークインターフェイス
300 更新情報受信クライアント
300a 転送管理部
310 主制御部
311 送受信部
312 コンテンツクライアント部
313 検索クライアント部
314 更新グラフ参加離脱部
315 更新グラフクライアント部
316 アグリゲーション待ちバッファ
317 メッセージ作成部
318 バッファタイマ
321 サーバ情報DB
330 ネットワークインターフェイス
1 Update information distribution system 1
100 update
122 Metadata DB
123 Content DB
124 Server information DB
130
230
330 Network interface
Claims (23)
各配信サーバから、当該配信サーバから当該配信サーバ内のコンテンツに対応づけられた複数の受信クライアントへの前記コンテンツの更新情報についての複数の配信経路を表すトポロジ情報を受信する受信手段と、
前記受信手段にて受信されたトポロジ情報毎に当該トポロジ情報が表す複数の配信経路の中から1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記一部の始点となる受信クライアントと、当該受信クライアントが合成する複数の更新情報と、を示した合成指示を、前記複数の配信サーバのうち、少なくとも、前記一部を含む選択配信経路を表すトポロジ情報を送信した実行配信サーバのそれぞれに送信する制御手段と、を含むアグリゲーションサーバ。 An aggregation server that can communicate with a plurality of distribution servers,
Receiving means for receiving, from each distribution server, topology information representing a plurality of distribution paths for update information of the content from the distribution server to a plurality of receiving clients associated with the content in the distribution server;
When selecting one selected delivery route from among a plurality of delivery routes represented by the topology information for each topology information received by the receiving means, at least a part of at least two of the selected delivery routes is overlapped , Selecting the selected distribution route, transmitting the selection result to the plurality of distribution servers, and indicating the reception client that is the starting point of the part and a plurality of update information that the reception client combines. An aggregation server including: a control unit that transmits the combination instruction to each of the execution distribution servers that transmitted the topology information representing the selected distribution path including at least a part of the plurality of distribution servers.
前記制御手段は、
前記受信手段にて受信された各トポロジ情報を格納する格納手段と、
定期的に動作開始通知を発する動作開始通知手段と、
前記動作開始通知手段にて前記動作開始通知が発せられると、前記格納手段内のトポロジ情報毎に前記1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記合成指示を、前記複数の配信サーバのうち、少なくとも前記実行配信サーバのそれぞれに送信する演算手段と、を含む、アグリゲーションサーバ。 In the aggregation server according to claim 1,
The control means includes
Storage means for storing each topology information received by the receiving means;
An operation start notification means for periodically issuing an operation start notification;
When the operation start notification is issued by the operation start notification unit, at least a part of at least two of the selected distribution routes overlap when selecting the one selected distribution route for each topology information in the storage unit. As described above, the selected distribution route is selected, the result of the selection is transmitted to the plurality of distribution servers, and the combination instruction is transmitted to at least each of the execution distribution servers among the plurality of distribution servers. An aggregation server, including an arithmetic means.
前記演算手段は、前記トポロジ情報毎に前記1つの選択配信経路を選択する際に、前記選択配信経路の組み合わせの中から、前記選択配信経路内の前記受信クライアント間のリンクの重なり数の分散値が最大になる組み合わせを求め、当該組み合わせに示された選択配信経路を選択する、アグリゲーションサーバ。 In the aggregation server according to claim 2,
When the computing unit selects the one selected delivery route for each topology information, a dispersion value of the number of overlapping links between the receiving clients in the selected delivery route from the combination of the selected delivery routes. An aggregation server that obtains a combination that maximizes and selects a selected delivery route indicated by the combination.
自サーバから前記複数の受信クライアントへの前記更新情報についての複数の配信経路を表すトポロジ情報を作成し、当該トポロジ情報を前記アグリゲーションサーバに送信し、前記アグリゲーションサーバから、前記複数の配信経路の中から選択された選択配信経路を示す選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて記憶する管理手段と、
前記管理手段にて選択された選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に、前記選択配信経路を示す配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記選択配信経路に従って配信する配信手段と、を含む配信サーバ。 A distribution server that is communicable with the aggregation server according to any one of claims 1 to 3, and that distributes update information of content in itself to a plurality of receiving clients associated with the content. ,
Create topology information representing a plurality of distribution paths for the update information from the own server to the plurality of receiving clients, send the topology information to the aggregation server, and from the aggregation server, among the plurality of distribution paths When the selection result indicating the selected delivery route selected from the above is received, the selected delivery route is selected from the plurality of delivery routes, and when the synthesis instruction is received from the aggregation, the synthesis instruction is selected. Management means for storing in association with
When the combination instruction is associated with the selected distribution route selected by the management unit, the update information is added with distribution route information indicating the selected distribution route and the combination instruction, and the distribution route information Update information to which composite information is added is distributed according to the selected distribution route, and when the combination instruction is not associated with the selected distribution route, the distribution route information is attached to the update information, and the distribution route information A distribution server that distributes the update information to which the information is attached according to the selected distribution route.
前記管理手段は、
記憶手段と、
前記トポロジ情報を作成し、当該トポロジ情報を前記記憶手段に記憶するトポロジ情報管理手段と、
定期的に報告開始通知を発する報告開始通知手段と、
前記報告開始通知手段にて前記報告開始通知が発せられると、前記記憶手段内のトポロジ情報を前記アグリゲーションサーバに送信する報告手段と、を含み、
前記トポロジ情報管理手段は、前記アグリゲーションサーバから、前記選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて前記記憶手段に記憶する、配信サーバ。 In the delivery server according to claim 4,
The management means includes
Storage means;
Topology information management means for creating the topology information and storing the topology information in the storage means;
A report start notification means for periodically issuing a report start notification;
Reporting means for transmitting the topology information in the storage means to the aggregation server when the report start notification is issued by the report start notification means,
The topology information management means, when receiving the selection result from the aggregation server, selects the selected distribution path from the plurality of distribution paths, and receives the combination instruction when receiving the combination instruction from the aggregation. A distribution server that stores the storage means in association with the selected distribution route.
前記配信手段は、
前記更新情報を生成する生成手段と、
前記生成手段にて前記更新情報が生成されると、前記選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に前記配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記配信経路に従って配信する配信制御手段と、を含む、配信サーバ。 In the delivery server according to claim 4 or 5,
The delivery means includes
Generating means for generating the update information;
When the update information is generated by the generation unit, if the combination instruction is associated with the selected distribution route, the distribution route information and the combination instruction are attached to the update information, and the distribution route information And the update information with the combined information distributed according to the selected distribution route, and when the combination instruction is not associated with the selected distribution route, the distribution route information is added to the update information, and the distribution route A distribution server comprising: distribution control means for distributing update information to which information is attached according to the distribution route.
前記管理手段は、新たな受信クライアントから、前記更新情報の通知を要求する旨の参加メッセージを受信した場合、当該新たな受信クライアントを前記コンテンツに対応づけて前記トポロジ情報を更新し、更新後のトポロジ情報を前記アグリゲーションサーバに送信する、配信サーバ。 In the delivery server according to any one of claims 4 to 6,
When the management means receives a participation message for requesting notification of the update information from a new receiving client, the management means associates the new receiving client with the content and updates the topology information. A distribution server that transmits topology information to the aggregation server.
前記管理手段は、既に前記コンテンツと対応づけられている受信クライアントのいずれかから、前記更新情報の通知を中止する旨の離脱メッセージを受信した場合、当該受信クライアントと前記コンテンツとの対応づけを解消して前記トポロジ情報を更新し、更新後のトポロジ情報を前記アグリゲーションサーバに送信する、配信サーバ。 In the delivery server according to any one of claims 4 to 7,
When the management unit receives a leave message indicating that the update information notification is to be stopped from any of the reception clients already associated with the content, the management unit cancels the association between the reception client and the content. Then, the distribution server updates the topology information and transmits the updated topology information to the aggregation server.
更新情報格納手段と、
各配信サーバまたは他の受信クライアントから、前記選択配信経路を示す配信経路情報が付された更新情報を受信する更新情報受信手段と、
前記更新情報に付された配信経路情報に、自受信クライアントが終端として示されている場合には、当該更新情報の転送を中止し、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されている場合には、当該更新情報を、前記更新情報格納手段に格納する中継管理手段と、
前記配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されていない場合、または、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されていない場合には、当該更新情報を、前記配信経路情報に従って、他の受信クライアントに転送し、また、前記更新情報格納手段内に、前記合成指示に示された複数の更新情報が格納されている場合、当該複数の更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送管理手段と、を含む受信クライアント。 A plurality of distribution servers according to any one of claims 4 to 8, and a reception client capable of communicating with other reception clients,
Update information storage means;
Update information receiving means for receiving update information to which distribution route information indicating the selected distribution route is attached from each distribution server or other receiving client;
If the delivery route information attached to the update information indicates that the own reception client is the end, the transfer of the update information is stopped, and the delivery route information indicates the own reception client as a relay location. And, when the update instruction is attached to the update information and the own reception client is indicated in the combination instruction, the relay management stores the update information in the update information storage means. Means,
When the self-received client is indicated as a relay location in the distribution route information, the combining instruction is attached to the update information, and the self-receiving client is not indicated in the combining instruction, or When the self-reception client is indicated as a relay location in the distribution route information and the combining instruction is not attached to the update information, the update information is sent to another receiving client according to the distribution route information. And when the plurality of pieces of update information indicated in the combination instruction are stored in the update information storage means, the plurality of pieces of update information are combined, and the combined update information is Transfer management means for transferring to other receiving clients in accordance with the distribution route information.
前記転送管理手段は、前記更新情報格納手段内に前記更新情報が格納されてからの経過時間をカウントするカウント手段を含み、前記カウント手段が所定時間をカウントすると、前記更新情報格納手段内に、前記更新指示に示された全ての更新情報が格納されていなくても、前記更新情報格納手段内の前記更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する、受信クライアント。 The receiving client according to claim 9,
The transfer management means includes a counting means for counting an elapsed time since the update information is stored in the update information storage means, and when the counting means counts a predetermined time, the update information storage means Even if not all the update information indicated in the update instruction is stored, the update information in the update information storage means is combined, and the combined update information is received according to the distribution route information. Inbound client to forward to client.
請求項4から8のいずれか1項に記載の複数の配信サーバと、
請求項9または10に記載の複数の受信クライアントと、を含む配信システム。 The aggregation server according to any one of claims 1 to 3,
A plurality of distribution servers according to any one of claims 4 to 8,
A distribution system comprising: a plurality of receiving clients according to claim 9.
各配信サーバから、当該配信サーバから当該配信サーバ内のコンテンツに対応づけられた複数の受信クライアントへの前記コンテンツの更新情報についての複数の配信経路を表すトポロジ情報を受信する受信ステップと、
前記受信されたトポロジ情報毎に当該トポロジ情報が表す複数の配信経路の中から1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記一部の始点となる受信クライアントと、当該受信クライアントが合成する複数の更新情報と、を示した合成指示を、前記複数の配信サーバのうち、少なくとも、前記一部を含む選択配信経路を表すトポロジ情報を送信した実行配信サーバのそれぞれに送信する制御ステップと、を含むアグリゲーション方法。 An aggregation method performed by an aggregation server that can communicate with a plurality of distribution servers,
A receiving step of receiving, from each distribution server, topology information representing a plurality of distribution paths for the update information of the content from the distribution server to a plurality of receiving clients associated with the content in the distribution server;
The selected delivery so that at least a part of at least two of the selected delivery routes overlaps when selecting one selected delivery route from a plurality of delivery routes represented by the topology information for each received topology information A route is selected, a result of the selection is transmitted to the plurality of distribution servers, and a combination instruction indicating a reception client that is a part of the starting point and a plurality of update information that is combined by the reception client is displayed. An aggregation method including: a control step of transmitting topology information representing a selected distribution path including at least a part of the plurality of distribution servers to each of the execution distribution servers.
前記制御ステップは、
前記受信された各トポロジ情報を格納手段に格納する格納ステップと、
定期的に動作開始通知を発する動作開始通知ステップと、
前記動作開始通知が発せられると、前記格納手段内のトポロジ情報毎に前記1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記合成指示を、前記複数の配信サーバのうち、少なくとも前記実行配信サーバのそれぞれに送信する送信制御ステップと、を含む、アグリゲーション方法。 The aggregation method according to claim 12,
The control step includes
A storage step of storing each received topology information in a storage means;
An operation start notification step for periodically issuing an operation start notification;
When the operation start notification is issued, the selected delivery route is selected such that at least a part of at least two of the selected delivery routes overlaps when selecting the one selected delivery route for each topology information in the storage means. And a transmission control step of transmitting the result of the selection to the plurality of distribution servers and transmitting the combination instruction to at least each of the execution distribution servers among the plurality of distribution servers. The aggregation method.
自サーバから前記複数の受信クライアントへの前記更新情報についての複数の配信経路を表すトポロジ情報を作成し、当該トポロジ情報を前記アグリゲーションサーバに送信し、前記アグリゲーションサーバから、前記複数の配信経路の中から選択された選択配信経路を示す選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて記憶する管理ステップと、
前記選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に、前記選択配信経路を示す配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記選択配信経路に従って配信する配信ステップと、を含む配信方法。 Distribution performed by a distribution server that can communicate with the aggregation server according to any one of claims 1 to 3 and that distributes update information of content within itself to a plurality of receiving clients associated with the content. A method,
Create topology information representing a plurality of distribution paths for the update information from the own server to the plurality of receiving clients, send the topology information to the aggregation server, and from the aggregation server, among the plurality of distribution paths When the selection result indicating the selected delivery route selected from the above is received, the selected delivery route is selected from the plurality of delivery routes, and when the synthesis instruction is received from the aggregation, the synthesis instruction is selected. A management step to store in association with
When the combination instruction is associated with the selected distribution route, the distribution information indicating the selected distribution route and the combination instruction are attached to the update information, and the distribution route information and the combination information are attached. Update information is distributed according to the selected distribution route, and when the combination instruction is not associated with the selected distribution route, the distribution route information is attached to the update information, and the update information with the distribution route information is added. And a delivery step of delivering according to the selected delivery route.
前記管理ステップは、
前記トポロジ情報を作成し、当該トポロジ情報を記憶手段に記憶するトポロジ情報管理ステップと、
定期的に報告開始通知を発する報告開始通知ステップと、
前記報告開始通知が発せられると、前記記憶手段内のトポロジ情報を前記アグリゲーションサーバに送信する報告ステップと、
前記アグリゲーションサーバから、前記選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて前記記憶手段に記憶管理ステップと、を含む、配信方法。 The distribution method according to claim 14,
The management step includes
A topology information management step of creating the topology information and storing the topology information in a storage means;
A report start notification step for periodically issuing a report start notification;
When the report start notification is issued, a reporting step of transmitting the topology information in the storage means to the aggregation server;
When the selection result is received from the aggregation server, the selected distribution route is selected from the plurality of distribution routes, and when the combination instruction is received from the aggregation, the combination instruction is associated with the selected distribution route. And a storage management step in the storage means.
各配信サーバまたは他の受信クライアントから、前記選択配信経路を示す配信経路情報が付された更新情報を受信する更新情報受信ステップと、
前記更新情報に付された配信経路情報に、自受信クライアントが終端として示されている場合には、当該更新情報の転送を中止し、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されている場合には、当該更新情報を、更新情報格納手段に格納する中継管理ステップと、
前記配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されていない場合、または、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されていない場合には、当該更新情報を、前記配信経路情報に従って、他の受信クライアントに転送し、また、前記更新情報格納手段内に、前記合成指示に示された複数の更新情報が格納されている場合、当該複数の更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送管理ステップと、を含む受信方法。 A plurality of distribution servers according to any one of claims 4 to 8, and a reception method performed by a reception client capable of communicating with other reception clients,
An update information receiving step for receiving update information to which distribution route information indicating the selected distribution route is attached from each distribution server or other receiving client;
If the delivery route information attached to the update information indicates that the own reception client is the end, the transfer of the update information is stopped, and the delivery route information indicates the own reception client as a relay location. And when the update instruction is attached to the update information and the own reception client is indicated in the combination instruction, the relay management step of storing the update information in the update information storage means When,
When the self-received client is indicated as a relay location in the distribution route information, the combining instruction is attached to the update information, and the self-receiving client is not indicated in the combining instruction, or When the self-reception client is indicated as a relay location in the distribution route information and the combining instruction is not attached to the update information, the update information is sent to another receiving client according to the distribution route information. And when the plurality of pieces of update information indicated in the combination instruction are stored in the update information storage means, the plurality of pieces of update information are combined, and the combined update information is A transfer management step of transferring to another receiving client in accordance with the distribution path information.
前記転送管理ステップは、
前記更新情報格納手段内に前記更新情報が格納されてからの経過時間をカウントするカウントステップと、
前記経過時間が所定時間になると、前記更新情報格納手段内に、前記更新指示に示された全ての更新情報が格納されていなくても、前記更新情報格納手段内の前記更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送ステップと、を含む、受信方法。 The reception method according to claim 16, wherein
The transfer management step includes:
A counting step of counting an elapsed time since the update information is stored in the update information storage means;
When the elapsed time reaches a predetermined time, even if not all the update information indicated in the update instruction is stored in the update information storage means, the update information in the update information storage means is combined, A transfer step of transferring the combined update information to another receiving client according to the distribution route information.
各配信サーバから、当該配信サーバから当該配信サーバ内のコンテンツに対応づけられた複数の受信クライアントへの前記コンテンツの更新情報についての複数の配信経路を表すトポロジ情報を受信する受信手順と、
前記受信されたトポロジ情報毎に当該トポロジ情報が表す複数の配信経路の中から1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記一部の始点となる受信クライアントと、当該受信クライアントが合成する複数の更新情報と、を示した合成指示を、前記複数の配信サーバのうち、少なくとも、前記一部を含む選択配信経路を表すトポロジ情報を送信した実行配信サーバのそれぞれに送信する制御手順と、を実行させるためのプログラム。 To a computer that can communicate with multiple distribution servers,
A reception procedure for receiving, from each distribution server, topology information representing a plurality of distribution paths for update information of the content from the distribution server to a plurality of receiving clients associated with the content in the distribution server;
The selected delivery so that at least a part of at least two of the selected delivery routes overlaps when selecting one selected delivery route from a plurality of delivery routes represented by the topology information for each received topology information A route is selected, a result of the selection is transmitted to the plurality of distribution servers, and a combination instruction indicating a reception client that is a part of the starting point and a plurality of update information that is combined by the reception client is displayed. And a control procedure for transmitting to each of the execution distribution servers that have transmitted topology information representing the selected distribution route including at least a part of the plurality of distribution servers.
前記制御手順は、
前記受信された各トポロジ情報を格納手段に格納する格納手順と、
定期的に動作開始通知を発する動作開始通知手順と、
前記動作開始通知が発せられると、前記格納手段内のトポロジ情報毎に前記1つの選択配信経路を選択する際に、少なくとも2つの前記選択配信経路の少なくとも一部が重なるように、前記選択配信経路を選択し、当該選択の結果を前記複数の配信サーバに送信し、かつ、前記合成指示を、前記複数の配信サーバのうち、少なくとも前記実行配信サーバのそれぞれに送信する送信制御手順と、を含む、プログラム。 The program according to claim 18, wherein
The control procedure is:
A storage procedure for storing each received topology information in a storage means;
An operation start notification procedure for periodically issuing an operation start notification;
When the operation start notification is issued, the selected delivery route is selected such that at least a part of at least two of the selected delivery routes overlaps when selecting the one selected delivery route for each topology information in the storage means. And a transmission control procedure for transmitting a result of the selection to the plurality of distribution servers and transmitting the combination instruction to at least each of the execution distribution servers among the plurality of distribution servers. ,program.
自コンピュータから前記複数の受信クライアントへの前記更新情報についての複数の配信経路を表すトポロジ情報を作成し、当該トポロジ情報を前記アグリゲーションサーバに送信し、前記アグリゲーションサーバから、前記複数の配信経路の中から選択された選択配信経路を示す選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて記憶する管理手順と、
前記選択配信経路に前記合成指示が関連づけられている場合、前記更新情報に、前記選択配信経路を示す配信経路情報と前記合成指示とを付し、前記配信経路情報と合成情報とが付された更新情報を、前記選択配信経路に従って配信し、前記選択配信経路に前記合成指示が関連づけられていない場合、前記更新情報に前記配信経路情報を付し、前記配信経路情報が付された更新情報を、前記選択配信経路に従って配信する配信手順と、を実行させるためのプログラム。 A computer that can communicate with the aggregation server according to any one of claims 1 to 3 and that distributes update information of content in itself to a plurality of receiving clients associated with the content,
Create topology information representing a plurality of distribution routes for the update information from the own computer to the plurality of receiving clients, send the topology information to the aggregation server, and from the aggregation server, among the plurality of distribution routes When the selection result indicating the selected delivery route selected from the above is received, the selected delivery route is selected from the plurality of delivery routes, and when the synthesis instruction is received from the aggregation, the synthesis instruction is selected. A management procedure to store in association with
When the combination instruction is associated with the selected distribution route, the distribution information indicating the selected distribution route and the combination instruction are attached to the update information, and the distribution route information and the combination information are attached. Update information is distributed according to the selected distribution route, and when the combination instruction is not associated with the selected distribution route, the distribution route information is attached to the update information, and the update information with the distribution route information is added. And a delivery procedure for delivering according to the selected delivery route.
前記管理手順は、
前記トポロジ情報を作成し、当該トポロジ情報を記憶手段に記憶するトポロジ情報管理手順と、
定期的に報告開始通知を発する報告開始通知手順と、
前記報告開始通知が発せられると、前記記憶手段内のトポロジ情報を前記アグリゲーションサーバに送信する報告手順と、
前記アグリゲーションサーバから、前記選択結果を受信すると、前記複数の配信経路の中から前記選択配信経路を選択し、当該アグリゲーションから、前記合成指示を受信すると、当該合成指示を前記選択配信経路に関連づけて前記記憶手段に記憶管理手順と、を含む、プログラム。 The program according to claim 20,
The management procedure is as follows:
A topology information management procedure for creating the topology information and storing the topology information in a storage means;
A report start notification procedure for periodically issuing a report start notification,
When the report start notification is issued, a reporting procedure for transmitting the topology information in the storage means to the aggregation server;
When the selection result is received from the aggregation server, the selected distribution route is selected from the plurality of distribution routes, and when the combination instruction is received from the aggregation, the combination instruction is associated with the selected distribution route. A storage management procedure in the storage means.
各配信サーバまたは他の受信クライアントから、前記選択配信経路を示す配信経路情報が付された更新情報を受信する更新情報受信手順と、
前記更新情報に付された配信経路情報に、自受信クライアントが終端として示されている場合には、当該更新情報の転送を中止し、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されている場合には、当該更新情報を、更新情報格納手段に格納する中継管理手順と、
前記配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されており、かつ、当該合成指示に自受信クライアントが示されていない場合、または、当該配信経路情報に自受信クライアントが中継箇所として示されており、かつ、当該更新情報に前記合成指示が付されていない場合には、当該更新情報を、前記配信経路情報に従って、他の受信クライアントに転送し、また、前記更新情報格納手段内に、前記合成指示に示された複数の更新情報が格納されている場合、当該複数の更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送管理手順と、を実行させるためのプログラム。 A plurality of distribution servers according to any one of claims 4 to 8, and a computer capable of communicating with other receiving clients,
An update information reception procedure for receiving update information with distribution route information indicating the selected distribution route from each distribution server or other receiving client;
If the delivery route information attached to the update information indicates that the own reception client is the end, the transfer of the update information is stopped, and the delivery route information indicates the own reception client as a relay location. And, when the update instruction is attached to the update information and the own reception client is indicated in the combination instruction, the relay management procedure for storing the update information in the update information storage means When,
When the self-received client is indicated as a relay location in the distribution route information, the combining instruction is attached to the update information, and the self-receiving client is not indicated in the combining instruction, or When the self-reception client is indicated as a relay location in the distribution route information and the combining instruction is not attached to the update information, the update information is sent to another receiving client according to the distribution route information. And when the plurality of pieces of update information indicated in the combination instruction are stored in the update information storage means, the plurality of pieces of update information are combined, and the combined update information is A transfer management procedure for transferring to another receiving client according to the distribution route information.
前記転送管理手順は、
前記更新情報格納手段内に前記更新情報が格納されてからの経過時間をカウントするカウント手順と、
前記経過時間が所定時間になると、前記更新情報格納手段内に、前記更新指示に示された全ての更新情報が格納されていなくても、前記更新情報格納手段内の前記更新情報を合成し、当該合成された更新情報を、前記配信経路情報に従って、他の受信クライアントに転送する転送手順と、を含む、プログラム。 The program according to claim 22,
The transfer management procedure includes:
A counting procedure for counting an elapsed time since the update information is stored in the update information storage means;
When the elapsed time reaches a predetermined time, even if not all the update information indicated in the update instruction is stored in the update information storage means, the update information in the update information storage means is combined, A transfer procedure for transferring the synthesized update information to another receiving client in accordance with the distribution route information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008214122A JP5062098B2 (en) | 2008-08-22 | 2008-08-22 | Aggregation server, distribution server, reception client, distribution system, method and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008214122A JP5062098B2 (en) | 2008-08-22 | 2008-08-22 | Aggregation server, distribution server, reception client, distribution system, method and program thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010050815A true JP2010050815A (en) | 2010-03-04 |
JP5062098B2 JP5062098B2 (en) | 2012-10-31 |
Family
ID=42067523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008214122A Expired - Fee Related JP5062098B2 (en) | 2008-08-22 | 2008-08-22 | Aggregation server, distribution server, reception client, distribution system, method and program thereof |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5062098B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011111848A2 (en) | 2010-03-08 | 2011-09-15 | National University Corporation Hokkaido University | Method and apparatus for producing metal oxide particles |
CN114827003A (en) * | 2022-03-21 | 2022-07-29 | 浪潮思科网络科技有限公司 | Topology election method, device, equipment and medium of distributed system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004159230A (en) * | 2002-11-08 | 2004-06-03 | Digital Design Co Ltd | Method and system for distributing data in network |
JP2007251811A (en) * | 2006-03-17 | 2007-09-27 | Toyota Infotechnology Center Co Ltd | Radio communication apparatus, radio communication method, and method of creating route information table |
JP2008046888A (en) * | 2006-08-17 | 2008-02-28 | Nec Corp | Updating information distribution system, updating information distribution method and updating information distribution program |
-
2008
- 2008-08-22 JP JP2008214122A patent/JP5062098B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004159230A (en) * | 2002-11-08 | 2004-06-03 | Digital Design Co Ltd | Method and system for distributing data in network |
JP2007251811A (en) * | 2006-03-17 | 2007-09-27 | Toyota Infotechnology Center Co Ltd | Radio communication apparatus, radio communication method, and method of creating route information table |
JP2008046888A (en) * | 2006-08-17 | 2008-02-28 | Nec Corp | Updating information distribution system, updating information distribution method and updating information distribution program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011111848A2 (en) | 2010-03-08 | 2011-09-15 | National University Corporation Hokkaido University | Method and apparatus for producing metal oxide particles |
CN114827003A (en) * | 2022-03-21 | 2022-07-29 | 浪潮思科网络科技有限公司 | Topology election method, device, equipment and medium of distributed system |
CN114827003B (en) * | 2022-03-21 | 2024-05-14 | 浪潮思科网络科技有限公司 | Topology election method, device, equipment and medium of distributed system |
Also Published As
Publication number | Publication date |
---|---|
JP5062098B2 (en) | 2012-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8195764B2 (en) | Information delivery system, delivery request program, transfer program, delivery program, and the like | |
CN100588172C (en) | System and method for realizing network reserved storage | |
JP2007141103A (en) | Information delivery system, information processor and information processing program | |
JP2002132613A (en) | Download method, user terminal for executing the download method, and distributing server | |
JP2008052340A (en) | Computer program for implementing peer-to-peer file exchange on overlay network | |
JP5960820B2 (en) | Tree structure management method, information processing system, and program | |
JPH11313059A (en) | Multicasting communication method/system and storage medium recording multicasting communication program | |
WO2017128713A1 (en) | Method and device for publishing subscription message | |
JP5062098B2 (en) | Aggregation server, distribution server, reception client, distribution system, method and program thereof | |
JP4635611B2 (en) | Information processing apparatus, method, and program | |
JP2009230369A (en) | Synchronization method for shared data, program for synchronizing shared data, and network system for synchronizing shared data to be held | |
JP2011130283A (en) | Internetwork data distribution system, information communication terminal, and content distribution server | |
KR101598577B1 (en) | - Method for constructing publish-subscribe network and supporting communication using hash function | |
JP2008219430A (en) | Content distribution system, terminal device, and content distributing method and program used therefor | |
JP2011118593A (en) | Data transfer server, data transfer system, data transfer method, and program | |
JP4095352B2 (en) | Information processing apparatus, information processing apparatus control method, and computer program for executing the control method | |
JP2007207013A (en) | Information processor and information sharing program | |
JP4146373B2 (en) | Service selection method and service selection system in dynamic network | |
US20080215595A1 (en) | Data distribution system, terminal apparatus, connection candidate introduction apparatus, information processing method and recording medium with program recorded thereon | |
JP4894838B2 (en) | Karaoke network system and karaoke device | |
JP3964808B2 (en) | ROUTING METHOD, ROUTING DEVICE, PROGRAM, AND RECORDING MEDIUM | |
JP2007148882A (en) | Content distribution system | |
CN101399740A (en) | Method and system for node elegant withdrawn in P2P network | |
JP5010390B2 (en) | Information distribution system | |
JP4038406B2 (en) | Event sharing system, host, event sharing method, and event sharing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110714 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120601 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120622 |
|
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: 20120710 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120723 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150817 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |