JP4879815B2 - Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program - Google Patents

Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program Download PDF

Info

Publication number
JP4879815B2
JP4879815B2 JP2007119315A JP2007119315A JP4879815B2 JP 4879815 B2 JP4879815 B2 JP 4879815B2 JP 2007119315 A JP2007119315 A JP 2007119315A JP 2007119315 A JP2007119315 A JP 2007119315A JP 4879815 B2 JP4879815 B2 JP 4879815B2
Authority
JP
Japan
Prior art keywords
server
segment
storage
server module
multimedia
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.)
Active
Application number
JP2007119315A
Other languages
Japanese (ja)
Other versions
JP2008278198A (en
Inventor
毅 小倉
博之 君山
健司 釘本
哲生 川野
健司 清水
充 丸山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007119315A priority Critical patent/JP4879815B2/en
Publication of JP2008278198A publication Critical patent/JP2008278198A/en
Application granted granted Critical
Publication of JP4879815B2 publication Critical patent/JP4879815B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置において、マルチメディアデータの送受信および蓄積を制御するマルチメディア情報転送蓄積方法、当該方法を実現する機能を有する分散型マルチメディアサーバ装置、当該サーバ装置を含んで構成された分散型マルチメディアシステム、当該マルチメディア情報転送蓄積方法を実現するプログラムおよび当該プログラムを記録した記録媒体に関する。   According to the present invention, a plurality of storage server modules for storing each segment generated by dividing multimedia data of one program into a plurality of storage devices distributed in the respective storage devices, and received from the storage server module A distributed multimedia server device configured by connecting a communication server module that transmits a segment to another external device and transmitting a segment received from the other external device to the storage server module in a state in which communication is possible over a network. A multimedia information transfer and storage method for controlling transmission and reception and storage of multimedia data, a distributed multimedia server device having a function for realizing the method, a distributed multimedia system including the server device, Realization of multimedia information transfer and storage method That a program, and a recording medium recording the program.

従来より、音声や映像などのマルチメディア情報を蓄積および配信することを目的として、複数のハードウェアモジュールをクラスタ状に接続したシステムにおいて、各番組のマルチメディアデータを各番組内でそれぞれ分割して分散蓄積する分散RAID型マルチメディアサーバ装置というものが存在する。   Conventionally, for the purpose of storing and distributing multimedia information such as audio and video, in a system in which a plurality of hardware modules are connected in a cluster, the multimedia data of each program is divided into each program. There is a distributed RAID type multimedia server device that stores data in a distributed manner.

以下に、従来の分散RAID型マルチメディアサーバ装置(以下、適宜「分散RAID型マルチメディアサーバ装置」と記載する)について簡単に説明する。図45に例示するように、従来の分散RAID型マルチメディアサーバ装置は、サーバモジュール間ネットワークを介して、複数の通信サーバモジュールと、それぞれが蓄積装置を備えた複数の蓄積サーバモジュールとを接続して構成される。また、同図に示すように、この分散RAID型マルチメディアサーバ装置は、端末側ネットワークを介して、端末およびマルチメディア情報入力装置と接続される。   A conventional distributed RAID type multimedia server device (hereinafter referred to as “distributed RAID type multimedia server device” as appropriate) will be briefly described below. As illustrated in FIG. 45, a conventional distributed RAID type multimedia server device connects a plurality of communication server modules and a plurality of storage server modules each having a storage device via a server module network. Configured. Further, as shown in the figure, this distributed RAID type multimedia server device is connected to a terminal and a multimedia information input device via a terminal side network.

ここで、端末は、分散RAID型マルチメディアサーバ装置にマルチメディア情報の配信要求を発行し、分散RAID型マルチメディアサーバ装置から配信されてきたマルチメディア情報を再生する。また、マルチメディア情報入力装置は、分散RAID型マルチメディアサーバ装置にマルチメディア情報の蓄積要求を発行し、分散RAID型マルチメディアサーバ装置から蓄積許可が下りると、蓄積したいマルチメディア情報を分散RAID型マルチメディアサーバ装置に送信する機能を持つ。   Here, the terminal issues a multimedia information distribution request to the distributed RAID type multimedia server device, and reproduces the multimedia information distributed from the distributed RAID type multimedia server device. The multimedia information input device issues a request for storing multimedia information to the distributed RAID type multimedia server device, and when the storage permission is issued from the distributed RAID type multimedia server device, the multimedia information to be stored is distributed RAID type. It has a function to transmit to the multimedia server device.

このような構成を有する分散RAID型マルチメディアサーバ装置は、以下に説明するようにして1番組のマルチメディア情報を蓄積する。すなわち、マルチメディア情報入力装置は、分散RAID型マルチメディアサーバ装置に発行したマルチメディア情報の蓄積要求に対する蓄積許可を受信すると、分散RAID型マルチメディアサーバ装置内の通信サーバモジュールj(なお、1≦j≦M)に、蓄積したいマルチメディア情報の送信を開始する。   The distributed RAID type multimedia server device having such a configuration stores multimedia information of one program as described below. In other words, when the multimedia information input device receives a storage permission for the storage request for multimedia information issued to the distributed RAID type multimedia server device, the communication server module j in the distributed RAID type multimedia server device (where 1 ≦ j ≦ M), transmission of multimedia information to be stored is started.

マルチメディア情報入力装置からマルチメディア情報を受信した通信サーバモジュールjは、図46に示すように、受信したマルチメディア情報を順次固定長のセグメントに分割していく。そして、マルチメディア情報の先頭データからなる最初の「セグメント0」を蓄積サーバモジュール1の蓄積装置1へ蓄積し、「セグメント0」のデータの後続データからなる「セグメント1」を蓄積サーバモジュール2の蓄積装置2へ蓄積するというように、蓄積装置1〜Nを巡回しながら各セグメントを分散させて蓄積していく。通信サーバモジュールjは、番組内のマルチメディア情報の全データの受信を完了するまで上述してきた処理を継続する。   The communication server module j that has received the multimedia information from the multimedia information input device sequentially divides the received multimedia information into fixed-length segments as shown in FIG. Then, the first “segment 0” composed of the top data of the multimedia information is accumulated in the accumulation device 1 of the accumulation server module 1, and the “segment 1” composed of the subsequent data of the “segment 0” data is accumulated in the accumulation server module 2. Each segment is distributed and accumulated while circulating through the accumulation devices 1 to N, such as accumulation in the accumulation device 2. The communication server module j continues the above-described processing until the reception of all the multimedia information data in the program is completed.

一方、分散RAID型マルチメディアサーバ装置は、以下に説明するようにして端末にマルチメディア情報を配信する。端末側ネットワークを介して、マルチメディア情報の読出し要求をいずれかの端末から受信すると、分散RAID型マルチメディアサーバ装置は、通信サーバモジュールのいずれかを使って、端末からの読出し要求に応じたマルチメディア情報を配信する。   On the other hand, the distributed RAID type multimedia server device distributes multimedia information to the terminal as described below. When a multimedia information read request is received from one of the terminals via the terminal-side network, the distributed RAID type multimedia server device uses one of the communication server modules to respond to the request corresponding to the read request from the terminal. Distribute media information.

例えば、マルチメディア情報の送信元となる通信サーバモジュールjは、図47に示すように、読出し要求に応じたマルチメディア情報の先頭データからなるセグメントを格納した蓄積サーバモジュール1に対して、セグメントの読出し要求を送信する。この読出し要求を受信した蓄積サーバモジュール1は、要求されたマルチメディア情報の先頭データからなる「セグメント0」を蓄積装置1から読出し、サーバモジュール間ネットワークを介して通信サーバモジュールjへ送信する。「セグメント0」を受信した通信サーバモジュールjは、その「セグメント0」を端末側ネットワークへ転送できる形のマルチメディア情報に変換し、マルチメディア情報の読出し要求の送信元である端末に送信する。続いて、通信サーバモジュールjは、「セグメント0」と同様に、蓄積サーバモジュール2に対して「セグメント1」の読出し要求を送信し、蓄積サーバモジュール2から受信した「セグメント1」をマルチメディア情報に変換して端末に送信する。通信サーバモジュールjは、読出し要求に応じたマルチメディア情報の全データを端末に送信完了するまで、上述してきた処理を繰り返す。   For example, as shown in FIG. 47, the communication server module j that is the transmission source of multimedia information sends the segment information to the storage server module 1 that stores the segment composed of the top data of the multimedia information in response to the read request. Send a read request. Receiving this read request, the storage server module 1 reads “segment 0” consisting of the top data of the requested multimedia information from the storage device 1 and transmits it to the communication server module j via the inter-server module network. Upon receiving “Segment 0”, the communication server module j converts the “Segment 0” into multimedia information that can be transferred to the terminal-side network, and transmits it to the terminal that is the transmission source of the multimedia information read request. Subsequently, the communication server module j transmits a read request for “segment 1” to the storage server module 2 in the same manner as “segment 0”, and receives “segment 1” received from the storage server module 2 as multimedia information. Is converted to and sent to the terminal. The communication server module j repeats the process described above until transmission of all the multimedia information data corresponding to the read request to the terminal is completed.

上述してきたように、従来の分散型サーバは、自らが備える通信サーバモジュールの中からマルチメディア情報の送受信を担当する通信サーバモジュールを一つ選択して、ある1番組に関するマルチメディア情報の全データの蓄積、または、ある1番組に関するマルチメディア情報の全データの配信を担当させている(例えば、図48参照)。そして、従来の分散型サーバは、接続される端末やマルチメディア情報入力装置が増加した場合であっても、通信サーバモジュールおよび蓄積サーバモジュールを増設したり、あるいは、通信サーバモジュールおよび蓄積サーバモジュールのいずれか一方を増設したりすることで、増加する処理負荷に対して柔軟に対応することができる。   As described above, the conventional distributed server selects one communication server module in charge of transmission / reception of multimedia information from among the communication server modules provided by itself, and all the multimedia information data related to one program is selected. Or the distribution of all data of multimedia information related to a certain program (see, for example, FIG. 48). And even if the conventional distributed server increases the number of connected terminals and multimedia information input devices, the communication server module and the storage server module are added or the communication server module and the storage server module are installed. By adding either one, it is possible to flexibly cope with an increasing processing load.

特開平11−146014号公報Japanese Patent Laid-Open No. 11-146014

ところで、上記した従来の分散RAID型マルチメディアサーバ装置は、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を外部装置(例えば、端末やマルチメディア情報入力装置)との間で送受信することができないという問題点があった。   By the way, the above-mentioned conventional distributed RAID type multimedia server device transfers multimedia information of a program to an external device (for example, a terminal or multimedia information) at a speed exceeding the hardware performance limit of one communication server module. There is a problem that transmission / reception to / from the input device cannot be performed.

すなわち、従来の分散RAID型マルチメディアサーバ装置は、ある1番組に関するマルチメディア情報については、その全データを1台の通信サーバモジュールに経由させて、端末側ネットワークとの間で送受信している。したがって、ある1番組に関するマルチメディア情報の全データを端末側ネットワークに対して送信できる最大の速度、または、ある1番組に関するマルチメディア情報の全データを蓄積する場合に端末側ネットワークから受信できる最大の速度は、その番組に関するマルチメディア情報の全データの送受信を担当する通信サーバモジュールが、端末側ネットワークを介してデータの送受信を行う際の最大通信速度を越えることができない。換言すれば、従来の分散RAID型マルチメディアサーバ装置は、通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を外部装置との間で送受信することができないという問題点があった。   That is, the conventional distributed RAID type multimedia server device transmits / receives all the multimedia information related to a certain program to / from the terminal-side network via one communication server module. Therefore, the maximum speed at which all the data of multimedia information related to a certain program can be transmitted to the terminal-side network, or the maximum speed that can be received from the terminal-side network when all the data of multimedia information related to a certain program is stored. The speed cannot exceed the maximum communication speed when the communication server module in charge of transmission / reception of all data of the multimedia information related to the program transmits / receives data via the terminal-side network. In other words, the conventional distributed RAID type multimedia server device cannot transmit / receive multimedia information of one program to / from an external device at a speed exceeding the hardware performance limit of the communication server module. There was a point.

しかしながら、従来の分散RAID型マルチメディアサーバ装置が外部装置との間でマルチメディア情報を送受信する際に要求される通信速度については、その番組の実時間の再生速度が上限というわけではなく、用途や状況によって要求速度に上限がないといっても過言ではない。例えば、地理的に離れた場所にある2つの放送局にそれぞれ設置された2つのサーバ装置間で、番組制作側の局から放送側の局へ番組素材映像やCM(Commercial Message)の素材映像を転送するような場合、転送がいち早く完了されることが望ましいのは明らかである。   However, with regard to the communication speed required when a conventional distributed RAID type multimedia server apparatus transmits / receives multimedia information to / from an external apparatus, the real-time playback speed of the program is not the upper limit. It is no exaggeration to say that there is no upper limit to the requested speed depending on the situation. For example, between two server devices installed at two broadcasting stations that are geographically separated from each other, program material video and CM (Commercial Message) material video are transmitted from the program production station to the broadcasting station. Obviously, in such a case, it is desirable that the transfer be completed as soon as possible.

このような例を鑑みても、ある1番組のマルチメディア情報を送受信する際の速度についての要求には限りがないが、従来の分散RAID型マルチメディアサーバ装置では、このような要求に応えるのは困難である。   Even in view of such an example, there is no limit to the speed required when transmitting / receiving multimedia information of a certain program. However, the conventional distributed RAID type multimedia server apparatus satisfies such a request. It is difficult.

そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を送受信することが可能なマルチメディア情報転送蓄積方法、分散型マルチメディアサーバ装置、分散型マルチメディアサーバシステム、マルチメディア情報転送蓄積方法を実現するプログラムおよび当該プログラムを記録した記録媒体を提供することを目的とする。   Accordingly, the present invention has been made to solve the above-described problems of the prior art, and transmits / receives multimedia information of a program at a speed exceeding the hardware performance limit of one communication server module. It is an object of the present invention to provide a multimedia information transfer and storage method, a distributed multimedia server device, a distributed multimedia server system, a program that realizes a multimedia information transfer and storage method, and a recording medium that records the program To do.

上述した課題を解決し、目的を達成するため、本発明は、1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置において、マルチメディアデータの送信および蓄積を制御するマルチメディア情報転送蓄積方法であって、通信速度要求値とともにマルチメディアデータ転送要求を受け付けて、前記分散型マルチメディアサーバ間で1番組のマルチメディアデータがいくつかに分割された各セグメントの転送を行う場合に、送信側として機能する分散型マルチメディアサーバが、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、当該仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信する送信工程と、受信側として機能する分散型マルチメディアサーバが、送信側として機能する分散型マルチメディアサーバにおいて前記各セグメントを送信するために用いられた通信サーバモジュールと同じ台数の通信サーバモジュールを使用して当該各セグメントを受信する受信工程と、受信側として機能する分散型マルチメディアサーバが、前記受信工程により各セグメントを受信する際に使用した通信サーバモジュールの台数以上の台数の蓄積サーバモジュールにより、受信した各セグメントを各蓄積装置に分散格納する格納工程と、を含んだことを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention provides a plurality of segments in which each segment generated by dividing multimedia data of one program is distributed and stored in storage devices included in each segment. The network server can communicate with the storage server module and the communication server module that transmits the segment received from the storage server module to another external device and the segment received from the other external device to the storage server module. A multimedia information transfer storage method for controlling transmission and storage of multimedia data, wherein the multimedia data transfer request is received together with a communication speed request value, Multimedia of one program between distributed multimedia servers Used to transmit each segment distributed and stored in each storage device by each storage server module by the distributed multimedia server that functions as the sender when transferring each segment divided into several parts If the number of communication server modules to be temporarily set according to the communication speed request value received together with the data transfer request and the number of communication server modules temporarily set is available, the temporary setting Using the specified number of communication server modules, each segment is sent in parallel to the distributed multimedia server functioning as the receiving side, and the temporarily set number of communication server modules are not available. In this case, use the maximum number of communication server modules within the usable range to function as a receiver. A transmission step of transmitting each segment in parallel to the distributed multimedia server, and a distributed multimedia server functioning as a receiving side used to transmit each segment in the distributed multimedia server functioning as a transmitting side A receiving step for receiving each segment using the same number of communication server modules as the received communication server module, and a distributed multimedia server functioning as a receiving side used to receive each segment in the receiving step. A storage step of storing each segment received in each storage device in a distributed manner by the number of storage server modules equal to or greater than the number of communication server modules.

また、本発明は、上記の発明において、前記送信側として機能する分散型マルチメディアサーバにおいて、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行う工程をさらに含んだことを特徴とする。 Further, the present invention provides the communication server module for each of a plurality of storage server modules that are distributed and stored in the storage devices provided in the respective segments in the distributed multimedia server functioning as the transmission side in the above invention. And a step of reading a segment to be transmitted from only the storage server module to which each communication server module is assigned.

また、本発明は、上記の発明において、前記受信側として機能する分散型マルチメディアサーバにおいて、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみに、受信したセグメントの書き込みを行う工程をさらに含んだことを特徴とする。 Further, the present invention provides the communication server module for each of a plurality of storage server modules that are distributed and stored in the storage devices provided in the respective segments in the distributed multimedia server functioning as the receiving side in the above invention. And a step of writing the received segment only to the storage server module to which each communication server module is assigned.

また、本発明は、上記の発明において、前記送信側として機能する分散型マルチメディアサーバにおいて、前記各セグメントを送信する通信サーバモジュールが、前記受信側として機能する分散型マルチメディアサーバの通信サーバモジュールを当該セグメントごとに変更する工程をさらに含んだことを特徴とする。 Further, the present invention provides the communication server module of the distributed multimedia server in which the communication server module that transmits each segment functions as the receiving side in the distributed multimedia server that functions as the transmitting side in the above invention. The method further includes a step of changing the value for each segment.

また、本発明は、1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置であって、通信速度要求値とともにマルチメディアデータ転送要求を受け付けて、他の分散型マルチメディアサーバに対して、1番組のマルチメディアデータがいくつかに分割された各セグメントを転送する場合に、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、当該仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信する送信手段を備えたことを特徴とする。 In addition, the present invention provides a plurality of storage server modules that store each segment generated by dividing multimedia data of one program in a plurality of storage devices, respectively, and the storage server modules. Distributed multimedia configured to connect a communication server module that transmits a received segment to another external device and transmits a segment received from the other external device to the storage server module in a state where communication is possible over a network. A server device that receives a multimedia data transfer request together with a communication speed request value and transfers each segment obtained by dividing the multimedia data of one program into several parts to another distributed multimedia server In addition, each storage server module distributed and stored in each storage device The number of communication server modules used to transmit the segment is provisionally set according to the communication speed request value received together with the data transfer request, and the provisionally set number of communication server modules exists in a usable state. In this case, the temporarily set number of communication server modules are used to transmit each segment in parallel to the distributed multimedia server functioning as the receiving side. Transmitting means for transmitting each segment in parallel to a distributed multimedia server functioning as a receiving side by using the maximum number of communication server modules within the usable range when it does not exist in a usable state It is provided with.

また、本発明は、上記の発明において、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行う手段をさらに備えたことを特徴とする。 Further, according to the present invention , in the above invention, a communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in the storage device provided for each segment, and each communication server module is assigned to each of the storage server modules. It is further characterized by further comprising means for reading a segment to be transmitted from only the stored storage server module.

また、本発明は、上記の発明において、前記各セグメントを送信する通信サーバモジュールが、受信側として機能する他の分散型マルチメディアサーバ装置の通信サーバモジュールを当該セグメントごとに変更する手段をさらに備えたことを特徴とする。 Further, the present invention , in the above invention, further comprises means for the communication server module transmitting each segment to change the communication server module of another distributed multimedia server device functioning as a receiving side for each segment. It is characterized by that.

また、本発明は、1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置間において、当該1番組のマルチメディアデータがいくつかに分割された各セグメントの転送を行う分散型マルチメディアサーバシステムであって、送信側として機能する前記分散型マルチメディアサーバ装置は、通信速度要求値とともにマルチメディアデータ転送要求を受け付けた場合に、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、当該仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信する送信手段と、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行う手段と、前記各セグメントを送信する通信サーバモジュールが、受信側として機能する他の分散型マルチメディアサーバ装置の通信サーバモジュールを当該セグメントごとに変更する手段と、を備え、受信側として機能する前記分散型マルチメディアサーバ装置は、前記送信側の分散型マルチメディアサーバから1番組のマルチメディアデータがいくつかに分割された各セグメントを受信する場合に、当該送信側の分散型マルチメディアサーバにおいて各セグメントを送信するために用いられた通信サーバモジュールと同じ台数の通信サーバモジュールを使用して各セグメントを受信する受信手段と、前記受信手段により各セグメントを受信する際に使用した通信サーバモジュールの台数以上の台数の蓄積サーバモジュールにより、受信した各セグメントを各蓄積装置に分散格納する格納手段と、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみに、受信したセグメントの書き込みを行う手段と、を備えたことを特徴とする。 In addition, the present invention provides a plurality of storage server modules that store each segment generated by dividing multimedia data of one program in a plurality of storage devices, respectively, and the storage server modules. Distributed multimedia configured to connect a communication server module that transmits a received segment to another external device and transmits a segment received from the other external device to the storage server module in a state where communication is possible over a network. A distributed multimedia server system that transfers each segment obtained by dividing the multimedia data of one program into several pieces between server devices, and the distributed multimedia server device functioning as a transmission side Accepts multimedia data transfer request along with speed request value The number of communication server modules used to transmit each segment distributed and stored in each storage device by each storage server module according to the communication speed request value received together with the data transfer request, When the provisionally set number of communication server modules exist in a usable state, each segment is assigned to the distributed multimedia server functioning as a receiving side using the provisionally set number of communication server modules. If the number of communication server modules that are temporarily set does not exist in a usable state, use the maximum number of communication server modules within the usable range as the receiving side. Transmitting means for transmitting each segment in parallel to a functioning distributed multimedia server; and A communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in the storage device, and each communication server module reads a segment to be transmitted from only the storage server module assigned to each communication server module. And a communication server module that transmits each segment, the communication server module of another distributed multimedia server device that functions as a receiving side, for each segment, and the function as a receiving side When the distributed multimedia server apparatus receives each segment obtained by dividing the multimedia data of one program from the distributed multimedia server on the transmission side, the distributed multimedia server on the transmission side Used to send segments Receiving means for receiving each segment using the same number of communication server modules as the received communication server modules, and storage server modules having a number equal to or greater than the number of communication server modules used when receiving each segment by the receiving means The storage means for distributing and storing each received segment in each storage device, and the communication server module is uniquely assigned to each of a plurality of storage server modules distributed and stored in the storage devices provided for each segment, Means for writing the received segment only to the storage server modules to which the communication server modules are assigned.

また、本発明は、請求項1、請求項2、請求項3および請求項4に記載のマルチメディア情報転送蓄積方法をコンピュータに実行させることにより実現することを特徴とするプログラムである。 According to another aspect of the present invention , there is provided a program which is realized by causing a computer to execute the multimedia information transfer storage method according to claim 1, claim 2, claim 3 and claim 4.

また、本発明は、請求項1、請求項2、請求項3および請求項4に記載のマルチメディア情報転送蓄積方法をコンピュータに実行させることにより実現することを特徴とするプログラムを記録した記録媒体である。 Further, the present invention is realized by causing a computer to execute the multimedia information transfer and storage method according to claim 1, claim 2, claim 3 and claim 4, and recording medium on which a program is recorded It is.

[本発明の基本概念]
続いて、図を参照しつつ、本発明に係る、マルチメディア情報転送蓄積方法、分散型マルチメディアサーバ装置、分散型マルチメディアサーバシステム、マルチメディア情報転送蓄積方法を実現するプログラム、および当該プログラムを記録した記録媒体の基本概念について説明する。なお、以下では、いわゆる分散RAID型マルチメディアサーバ装置間でマルチメディア情報に関するデータ転送を行う場合に、分散RAID型マルチメディアサーバ装置の構成を限定した場合、および分散RAID型マルチメディアサーバ装置の構成を一般化した場合における本発明の基本概念をそれぞれ説明する。
[Basic concept of the present invention]
Subsequently, referring to the drawings, the multimedia information transfer and storage method, the distributed multimedia server device, the distributed multimedia server system, the program for realizing the multimedia information transfer and storage method, and the program according to the present invention The basic concept of the recorded recording medium will be described. In the following, when data related to multimedia information is transferred between so-called distributed RAID multimedia server devices, the configuration of the distributed RAID multimedia server device is limited, and the configuration of the distributed RAID multimedia server device. Each of the basic concepts of the present invention in the case of generalization will be described.

[分散RAID型マルチメディアサーバ装置の構成を限定した場合]
最初に、図を参照しつつ、分散RAID型マルチメディアサーバ装置の構成を限定した場合における本発明の基本概念を説明する。
[When the configuration of the distributed RAID type multimedia server device is limited]
First, the basic concept of the present invention when the configuration of the distributed RAID type multimedia server device is limited will be described with reference to the drawings.

図1に示すように、マルチメディアデータの送信側サーバでは、1番組を構成するマルチメディア情報をサーバ内の複数の通信サーバモジュールを同時に使用して並列に送出する。一方、図2に示すように、受信側のサーバでも、送信側サーバの通信サーバモジュールから送信されてきた1番組を構成するマルチメディアデータを、サーバ内の複数の通信サーバモジュールを同時に使用して並列に受信するとともに、蓄積装置への蓄積を行う。   As shown in FIG. 1, the multimedia data transmission side server transmits multimedia information constituting one program in parallel using a plurality of communication server modules in the server at the same time. On the other hand, as shown in FIG. 2, the receiving server also uses a plurality of communication server modules in the server for multimedia data constituting one program transmitted from the communication server module of the transmitting server. While receiving in parallel, it stores in the storage device.

このようにして、本発明は、1番組のマルチメディアデータ転送を複数の通信サーバモジュールを使用して行うことにより、サーバ間でのマルチメディア情報の転送を高速化する。   In this way, the present invention speeds up the transfer of multimedia information between servers by performing multimedia data transfer of one program using a plurality of communication server modules.

図1および図2は、マルチメディアデータを2台の分散RAID型マルチメディアサーバ装置間で送受信する場合に、以下の(1)〜(4)の条件を付与したものである。すなわち、(1)送信側サーバ、および受信側サーバはともに、通信サーバモジュールおよび蓄積サーバモジュールを同じ台数備えて構成される。(2)送信側サーバと受信側サーバとの規模が等しい(両サーバの通信サーバモジュールおよび蓄積サーバモジュールはともにN台)。(3)1番組を構成するマルチメディア情報は、N台全ての蓄積サーバモジュール上の蓄積装置に分散して格納される。(4)1番組を構成するマルチメディアデータ転送に、N台全ての通信サーバモジュールを使用する。   1 and 2 show the following conditions (1) to (4) when multimedia data is transmitted and received between two distributed RAID multimedia server apparatuses. That is, (1) both the transmission side server and the reception side server are configured to include the same number of communication server modules and storage server modules. (2) The size of the sending server and the receiving server is the same (both communication server modules and storage server modules of both servers are N). (3) The multimedia information constituting one program is distributed and stored in storage devices on all N storage server modules. (4) All N communication server modules are used to transfer multimedia data constituting one program.

そして、図1および図2に示すように、1番組のマルチメディア情報を構成する各セグメントの中から、「セグメント0」を蓄積装置1に、「セグメント1」を蓄積装置2にというように、セグメントごとに蓄積装置1〜Nを巡回して格納する場合に、上記した(1)〜(4)の条件を満足する構成を備えるものとすると、送信側サーバの通信サーバモジュールj(1≦j≦N)は、自身のサーバ内の蓄積装置j内に格納された該当番組のマルチメディア情報のセグメントj−1、N+j−1、2N+j−1、...を蓄積サーバモジュールjから受信し、受信側サーバの通信サーバモジュールjを送信先に指定して外部ネットワークへ送出する。一方、受信側サーバの通信サーバモジュールjは、受信したマルチメディア情報をセグメント化し、自身のサーバ内の蓄積サーバモジュールj内の蓄積装置jにセグメントを蓄積する。このように、複数の通信サーバモジュールを使用して1番組のマルチメディアデータを並列に転送することができるとともに、セグメントを正しい順序で受信側サーバに格納することができる。   Then, as shown in FIG. 1 and FIG. 2, among the segments constituting the multimedia information of one program, “Segment 0” is stored in the storage device 1, “Segment 1” is stored in the storage device 2, and so on. When the storage devices 1 to N are circulated and stored for each segment, assuming that the configuration satisfying the above conditions (1) to (4) is provided, the communication server module j (1 ≦ j of the transmitting server) ≦ N) is a multimedia information segment j−1, N + j−1, 2N + j−1,... Of the corresponding program stored in the storage device j in its own server. . . Is transmitted from the storage server module j, the communication server module j of the receiving server is designated as the transmission destination, and is transmitted to the external network. On the other hand, the communication server module j of the receiving server segments the received multimedia information and stores the segments in the storage device j in the storage server module j in its own server. In this way, multimedia data of one program can be transferred in parallel using a plurality of communication server modules, and segments can be stored in the receiving server in the correct order.

[分散RAID型マルチメディアサーバ装置の構成を一般化した場合]
続いて、図を参照しつつ、分散RAID型マルチメディアサーバ装置の構成を一般化した場合における本発明の基本概念を説明する。
[When the configuration of the distributed RAID type multimedia server device is generalized]
Next, the basic concept of the present invention when the configuration of the distributed RAID type multimedia server device is generalized will be described with reference to the drawings.

図3に示すように、送信側サーバは、P台の蓄積サーバモジュールおよびQ台の通信サーバモジュールから構成され、受信側サーバは、T台の蓄積サーバモジュールおよびR台の通信サーバモジュールから構成される。なお、両サーバの蓄積サーバモジュールおよび通信サーバモジュールには、1から始まる昇順の整数値の識別子が付与されているものとする。   As shown in FIG. 3, the transmission-side server is composed of P storage server modules and Q communication server modules, and the reception-side server is composed of T storage server modules and R communication server modules. The It is assumed that identifiers of integer values in ascending order starting from 1 are assigned to the storage server module and the communication server module of both servers.

そして、上記したサーバ構成を限定した場合とは異なり、前記の条件(1)および(2)を排除して、両サーバとも蓄積サーバモジュールおよび通信サーバモジュールの台数が異なり、両サーバの構成も互いに異なっている。さらに、前記の条件(3)を排除して、送信側サーバにおいて、送信対象となるマルチメディアデータは、蓄積サーバモジュール1〜Pの全てに分散して格納されているとは限らず、その部分集合のみに格納されている場合も対象とする。   Unlike the case where the server configuration is limited as described above, the above conditions (1) and (2) are eliminated, the number of storage server modules and communication server modules is different for both servers, and the configurations of both servers are also mutually different. Is different. Further, by eliminating the condition (3), the multimedia data to be transmitted is not necessarily distributed and stored in all of the storage server modules 1 to P in the transmission side server. It is also targeted if it is stored only in the set.

このようなことから、送信対象のマルチメディアデータを格納している蓄積サーバモジュール群を以下の式(1)ように表すことができる。   For this reason, the storage server module group storing the multimedia data to be transmitted can be expressed as the following equation (1).

Figure 0004879815
Figure 0004879815

ただし、式(1)に示すS1は以下の式(2)を見たす整数であり、集合Nの各要素は、各蓄積サーバモジュールに付与されている前述の識別子の値をとる1以上のS1以下の整数である。 However, S 1 shown in formula (1) is an integer representing viewed the following equation (2), each element of the set N is 1 or more to take the value of the aforementioned identifier assigned to each storage server module Of S 1 or less.

Figure 0004879815
Figure 0004879815

このとき、1番組のマルチメディアデータは、蓄積サーバモジュールn1からnS1のS1個の蓄積サーバモジュールに跨っていて、かつ、この順序でマルチメディアデータのセグメントごとに巡回する格納されていることを前提とする。すなわち、t、wを以下に示す式(3)で表される1以上の整数とした時、シーケンス番号q(qは0以上の整数)のセグメントは、蓄積サーバモジュールntの蓄積装置内のw番目セグメントして格納されているものとする。ただし、xdivy、xmodyは、0以上の整数xを正の整数yで割った時の商、余りをそれぞれ表す。 At this time, multimedia data of one program is stored so as to straddle the S 1 storage server modules from the storage server modules n 1 to n S1 and to circulate for each segment of the multimedia data in this order. Assuming that. That, t, when the integer of 1 or more represented by the formula (3) shown below w, sequence number q of (q is an integer of 0 or more) segments, in storage device of the storage server module n t It is assumed that the wth segment is stored. However, xdivy and xmody respectively represent a quotient and a remainder when an integer x greater than or equal to 0 is divided by a positive integer y.

Figure 0004879815
Figure 0004879815

さらに、本発明が対象とする分散RAID型マルチメディアサーバ装置間のデータ転送では、前記の条件(4)を排除して、マルチメディアデータの転送に使用する通信サーバモジュールの台数も自由に設定することができるものとする。このとき、送信側サーバにおいて、1番組のマルチメディアデータの転送に使用する通信サーバモジュールの集合N’は以下の式(4)に示すように定義することができる。   Further, in the data transfer between distributed RAID type multimedia server devices targeted by the present invention, the above condition (4) is eliminated and the number of communication server modules used for multimedia data transfer is also freely set. It shall be possible. At this time, a set N ′ of communication server modules used for transferring multimedia data of one program in the transmitting server can be defined as shown in the following equation (4).

Figure 0004879815
Figure 0004879815

ただし、集合N’は、送信側サーバの全通信サーバモジュールの識別子を並べた集合、以下の式(5)の部分集合であり、その要素数はS2で、各要素は識別子の値を昇順に並べたものとする。すなわち、以下の式(6)および(7)に示す条件が成立する。 However, the set N ′ is a set in which identifiers of all communication server modules of the sending server are arranged, and is a subset of the following formula (5), the number of elements is S 2 , and each element has an identifier value in ascending order It shall be arranged in That is, the conditions shown in the following formulas (6) and (7) are satisfied.

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

ただし、S2とS1との間には以下の式(8)に示す条件が成立するものとする。 However, the condition shown in the following equation (8) is satisfied between S 2 and S 1 .

Figure 0004879815
Figure 0004879815

これは、蓄積サーバモジュールの台数を上回る数の通信サーバモジュールを使用しても、多くの場合、蓄積サーバモジュールの転送性能を合計した速度を上回る速度でマルチメディアデータの送信を行うことはできず、意味がないためである。   In many cases, even if more communication server modules are used than the number of storage server modules, multimedia data cannot be transmitted at a speed exceeding the total transfer performance of the storage server modules. Because it is meaningless.

次に、受信側サーバについて説明する。受信側サーバでは、送信側サーバがマルチメディアデータの送信に使用する通信サーバモジュールと同じ台数、すなわち、S2台の通信サーバモジュールを使用して、送信側サーバから送信されてきたマルチメディアデータを受信するものとする。受信側サーバにおいて、1番組のマルチメディアデータの受信に使用する通信サーバモジュールの集合M’を以下の式(9)に示すように定義する。 Next, the receiving server will be described. The receiving server, the same number as the communication server module transmitting server uses to transmit multimedia data, i.e., by using the communication server module of two S, multimedia data transmitted from the transmitting server It shall be received. In the receiving server, a set M ′ of communication server modules used for receiving multimedia data of one program is defined as shown in the following equation (9).

Figure 0004879815
Figure 0004879815

ただし、集合M’は、受信側サーバの全通信サーバモジュールの識別子を並べた集合、以下の式(10)の部分集合であり、その要素数はS2で、各要素は識別子の値を昇順に並べたものとする。すなわち、以下の式(11)および(12)に示す条件が成立する。 However, the set M ′ is a set in which identifiers of all the communication server modules of the receiving server are arranged, and is a subset of the following formula (10). The number of elements is S 2 , and each element has an identifier value in ascending order. It shall be arranged in That is, the conditions shown in the following expressions (11) and (12) are satisfied.

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

通信サーバモジュールの集合M’を使用して受信した1番組の全てのマルチメディアデータは、最終的に以下の式(13)に示す識別子の集合からなる蓄積サーバモジュール内の蓄積装置内に、この順でセグメントごとに巡回する形で格納されるものとする。   All multimedia data of one program received using the communication server module set M ′ is finally stored in the storage device in the storage server module consisting of a set of identifiers shown in the following equation (13). It is assumed that the data is stored in a cycle for each segment in order.

Figure 0004879815
Figure 0004879815

すなわち、p、yを以下に示す式(14)で表される1以上の整数とした時、シーケンス番号q(qは0以上の整数)のセグメントは、蓄積サーバモジュールmpの蓄積装置内のy番目セグメントして格納するものとする。 That, p, when the integer of 1 or more represented by the formula (14) below the y, sequence number q of (q is an integer of 0 or more) segments, in storage device of the storage server module m p It is assumed that the yth segment is stored.

Figure 0004879815
Figure 0004879815

ただし、集合Mは、受信側サーバの全蓄積サーバモジュールの識別子を並べた集合、以下の式(15)の部分集合であり、その要素数はS3で、各要素は識別子の値を昇順に並べたものである。すなわち、以下の式(16)および(17)に示す条件が成立する。 However, the set M is a set in which the identifiers of all storage server modules of the receiving server are arranged, and is a subset of the following formula (15). The number of elements is S 3 , and each element has an identifier value in ascending order. They are arranged. That is, the conditions shown in the following equations (16) and (17) are satisfied.

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

さらに、S2トS3との間には以下の式(18)に示す条件が成立するものとする。 Further, between and S2 bets S 3 shall conditions shown in the following equation (18) holds.

Figure 0004879815
Figure 0004879815

これは、蓄積サーバモジュールの台数を通信サーバモジュールの台数S2よりも少なくすると、マルチメディアデータの蓄積サーバモジュール側への転送速度が端末側ネットワークからの受信速度に追いつかなくなり、不具合が生じるためである。よって、上記の式(6)、(8)、(11)と、上記の式(18)とをあわせると、S2は以下にしめす式(19)を満足する値でなくてはならない。 This is because, if less than the number S 2 of the communication server module the number of storage server module, in order to transfer rate of the multimedia data to the storage server module side is not catch up to the receiving rate from the terminal-side network, a problem arises is there. Therefore, when the above formulas (6), (8) and (11) are combined with the above formula (18), S 2 must satisfy the following formula (19).

Figure 0004879815
Figure 0004879815

以上をまとめると、分散RAID型マルチメディアサーバ装置の構成を一般化した場合に、本発明は、図3に示すような送信側サーバと受信側サーバにおいて、送信側サーバでは、上記の式(1)で表されるS1台の蓄積サーバモジュールに、上記の式(3)で表される順序で格納されている1番組のマルチメディアデータを、上記の式(4)で定義されるS2台の通信サーバモジュールを使って送信し、受信側サーバでは、上記の式(9)で定義されるS2台の通信サーバモジュールを使って受信し、上記の式(13)で定義されるS3台の蓄積サーバモジュールの蓄積装置上に、上記の式(14)で表される順序で格納する、という転送動作を基本概念とする。この基本概念を図4にまとめて示す。なお、以下では、この転送動作をT(S1,S3:S2)と表記する。 In summary, when the configuration of the distributed RAID type multimedia server device is generalized, the present invention relates to the transmission side server and the reception side server as shown in FIG. to S 1 single storage server module represented by), S 2 that multimedia data of one program being stored in the order represented by the above formula (3) is defined by formula (4) Transmission using two communication server modules, and the receiving server receives S using two communication server modules defined by the above equation (9), and S defined by the above equation (13). The basic concept is a transfer operation of storing in the order expressed by the above equation (14) on the storage devices of the three storage server modules. This basic concept is summarized in FIG. In the following, this transfer operation is represented as T (S 1 , S 3 : S 2 ).

また、1番組を構成するマルチメディアデータの転送が、そのデータの送受信を担当する1台の通信サーバモジュールを経由して実現される従来の技術は、本発明においてS2=1とした場合に帰着される。 Further, the conventional technique in which the transfer of multimedia data constituting one program is realized via one communication server module responsible for transmission / reception of the data is performed when S 2 = 1 in the present invention. It will be returned.

ここで、上記の式(3)は、以下に示す式(20)と同値であり、これを上記の式(14)に代入することにより、以下の示す式(21)のように、式(14)のp、yを式(3)のt、wで表すことができる。   Here, the above equation (3) is equivalent to the following equation (20), and by substituting this into the above equation (14), the following equation (21) P) and y in 14) can be represented by t and w in formula (3).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

ここで、上記の式(21)のp、qを表す式の右辺をそれぞれh(t,w,S1,S3)、k(t,w,S1,S3)と書くと、上記のT(S1,S3:S2)がそれぞれのセグメントについて1対1の可逆転送であることから、以下に示す(22)式が成立することは自明である。 Here, when the right sides of the expressions representing p and q in the above expression (21) are written as h (t, w, S 1 , S 3 ) and k (t, w, S 1 , S 3 ), respectively, Since T (S 1 , S 3 : S 2 ) is a one-to-one reversible transfer for each segment, it is obvious that the following equation (22) holds.

Figure 0004879815
Figure 0004879815

ところで、本発明の基本概念についてこれまで説明してきた以外の部分については、以下の3つの考え方に基づいた3種類の異なる方式1〜3を提供する。   By the way, about the part other than having demonstrated the basic concept of this invention so far, the three types of different systems 1-3 based on the following three ways of thinking are provided.

すなわち、方式1は、送信側サーバで、同一の蓄積サーバモジュールの蓄積装置内の1番組のセグメントは、全て同一の通信サーバモジュールから送信する方式である。   In other words, method 1 is a transmission server, in which all segments of one program in the storage device of the same storage server module are transmitted from the same communication server module.

方式2は、受信側サーバで、同一の蓄積サーバモジュールの蓄積装置内に格納される1番組のセグメントは、全て同一の通信サーバモジュールで受信する方式である。   Method 2 is a receiving server in which all segments of one program stored in the storage device of the same storage server module are received by the same communication server module.

方式3は、上記の方式1および方式2の双方を満たす方式である。   Method 3 is a method that satisfies both method 1 and method 2 described above.

以下に、方式1〜3のそれぞれの方式について具体的に説明する。   Hereinafter, each of the methods 1 to 3 will be described in detail.

[方式1について]
まず、本発明の方式1について説明する。方式1は、上記のT(S1,S3:S2)の実現する場合において、同一の蓄積サーバモジュールの蓄積装置内に格納されている送信対象番組のセグメントは、全て同一の通信サーバモジュールから送信されるように、セグメントを送信する通信サーバモジュールを割り付ける方式である。
[About Method 1]
First, system 1 of the present invention will be described. In the method 1, when the above T (S 1 , S 3 : S 2 ) is realized, all the segments of the transmission target program stored in the storage device of the same storage server module are the same communication server module. The communication server module for transmitting the segment is allocated so as to be transmitted from the network.

換言するならば、送信側サーバの各蓄積サーバモジュール、および各蓄積装置内の送信対象となる番組のファイルに対して、各通信サーバモジュールは排他的にアクセスを行う。また、各蓄積装置内の送信対象番組のファイルへのリードアクセスについて、必ずファイルの先頭位置から始め、リード操作の度にファイルの読出し位置を1セグメントサイズずつインクリメントする形で行うことができ、該当ファイルへのランダムアクセスを行う必要がない。このようなことから、この方式1では、送信側サーバの実装を容易にすることができる。   In other words, each communication server module exclusively accesses each storage server module of the transmitting server and a program file to be transmitted in each storage device. Also, read access to the file of the transmission target program in each storage device can be performed by always starting from the beginning position of the file and incrementing the read position of the file by one segment size for each read operation. There is no need for random access to the file. For this reason, this method 1 can facilitate the implementation of the transmission side server.

すなわち、集合Nの各要素を集合N’の各要素へ対応させる写像Ψとして、このときの集合N’の要素ni'(1≦i≦S2)へと写像される集合Nの要素の集合をNiとしたとき、以下に示す式(23)を満足する写像Ψを決定し、集合Niの要素を識別子に持つ蓄積サーバモジュールの蓄積装置内のマルチメディアデータを識別子ni'で表される通信サーバモジュール(以下、通信サーバモジュールni'と略記する)から送信する。 That is, as a mapping Ψ that associates each element of the set N with each element of the set N ′, the elements N i ′ (1 ≦ i ≦ S 2 ) of the set N ′ at this time are mapped. When the set is N i , a mapping Ψ satisfying the following equation (23) is determined, and the multimedia data in the storage device of the storage server module having the identifier of the set N i as an identifier is represented by the identifier n i ′. It is transmitted from the communication server module represented (hereinafter abbreviated as communication server module n i ′).

Figure 0004879815
Figure 0004879815

さらに、写像Ψは、上記の式(23)に加えて、以下に示す式(24)および(25)を満足するものとする。   Further, the mapping Ψ satisfies the following expressions (24) and (25) in addition to the above expression (23).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

式(24)は、集合N’に属する全ての通信サーバモジュールが、実際にマルチメディア情報の転送に使用されることを表し、式(25)は、通信サーバモジュールによって送信されない蓄積サーバモジュールの蓄積装置内のマルチメディアデータが存在してはならないことを示す。   Expression (24) represents that all communication server modules belonging to the set N ′ are actually used for transferring multimedia information, and Expression (25) represents accumulation of accumulation server modules that are not transmitted by the communication server module. Indicates that multimedia data in the device should not exist.

このとき、上記の式(23)および(25)により、以下に示す式(26)が成立する。   At this time, the following equation (26) is established by the above equations (23) and (25).

Figure 0004879815
Figure 0004879815

このような写像Ψによって集合Nの要素が集合N’の要素に対応される様子を図5に示す。   FIG. 5 shows how elements of the set N correspond to elements of the set N ′ by such a mapping Ψ.

次に、蓄積サーバモジュールの集合Niを割り当てられた通信サーバモジュールni'が、送信対象となる番組のマルチメディアデータのセグメントを、これらの蓄積サーバモジュールから受け取って端末側ネットワークへ送信する動作について説明する。まず、集合Niの要素を以下の式(27)のように示す。 Next, an operation in which the communication server module n i ′ assigned with the set N i of storage server modules receives the multimedia data segment of the program to be transmitted from these storage server modules and transmits it to the terminal-side network. Will be described. First, the elements of the set N i are represented by the following expression (27).

Figure 0004879815
Figure 0004879815

ただし、上記の式(27)の表記は、ni_k=nu、ni_l=nvのとき、以下に示す式(28)の条件を満足するように集合Niの要素を並べたものとする。このとき、通信サーバモジュールni'は、蓄積サーバモジュールni_1からni_|Ni|をこの順に巡回しながら、各蓄積サーバモジュールからマルチメディアデータのセグメントを1つずつ受け取り、それを受信側サーバの対向の通信サーバモジュールmi'に送信する、という動作を繰り返す。この通信サーバモジュールni'の動作の様子を図6に示す。 However, notation of the above formula (27), n i_k = n u, when n i_l = n v, and that arranged elements of the set N i so as to satisfy the condition of Equation (28) below To do. At this time, the communication server module n i 'circulates the storage server modules n i_1 to n i_ | Ni | in this order, receives one segment of multimedia data from each storage server module, and receives it from the receiving server. The operation of transmitting to the opposite communication server module m i ′ is repeated. FIG. 6 shows how the communication server module n i ′ operates.

Figure 0004879815
Figure 0004879815

さらに、送信側サーバの通信サーバモジュールni'は、受信側サーバが受信したセグメントを正しい順序に並べ直して蓄積装置内に格納できるように、自身が送信する送信対象の番組に関するマルチメディアデータの各セグメントに対して、番組内容を構成するデータに加えて、この番組内におけるそのセグメントの位置を表すシーケンス番号を付加情報として付与する。これについては、通信サーバモジュールni'は、蓄積サーバモジュールnt(1≦t≦S1)からw番目(1≦w)に受け取ったセグメントに対して、上記の式(20)で定まるシーケンス番号qを付与する(以下に示す式(29)にこの式を再記する)。 Further, the communication server module n i ′ of the transmission side server arranges the multimedia data related to the transmission target program transmitted by itself so that the segments received by the reception side server can be rearranged in the correct order and stored in the storage device. For each segment, in addition to the data constituting the program content, a sequence number representing the position of the segment in this program is given as additional information. For this, the communication server module n i ′ determines the sequence determined by the above equation (20) for the wth (1 ≦ w) segment received from the storage server module n t (1 ≦ t ≦ S 1 ). The number q is assigned (this formula is rewritten in the formula (29) shown below).

Figure 0004879815
Figure 0004879815

ここで、本方式1においては、上記の式(29)は以下に示す式(30)のように表すこともできる。   Here, in the present system 1, the above equation (29) can also be expressed as the following equation (30).

Figure 0004879815
Figure 0004879815

以上が送信側サーバの動作の説明である。次に、受信側サーバの動作の説明をすると、送信側サーバから送信されてきたマルチメディアデータのセグメントを通信サーバモジュールmi'を使って受信し、最終的に全てのセグメントをMの要素からなる蓄積サーバモジュール群の蓄積装置内に、図7に示すような配列で格納する。 The above is the description of the operation of the transmitting server. Next, the operation of the receiving server will be described. The multimedia data segment transmitted from the transmitting server is received using the communication server module m i ′, and finally all segments are received from the M elements. Are stored in the storage device of the storage server module group as shown in FIG.

この動作を実現するために、通信サーバモジュールmi'は、送信側サーバの対向の通信サーバモジュールni'から送信されてきたシーケンシャル番号qのセグメントを、上記の式(14)で定まる自身のサーバの蓄積サーバモジュールmpに転送する動作を繰り返す。また、これを受け取った蓄積サーバモジュールmpは、このセグメントを自身の蓄積装置内に上記の式(14)で定まるy番目のセグメントとして格納する。以上が、本発明の方式1の説明である。なお、方式1では、前記の写像Ψについて、それが満足すべき条件のみを規定し、写像Ψ自体については具体的に規定しない。 In order to realize this operation, the communication server module m i ′ determines the segment of the sequential number q transmitted from the communication server module n i ′ opposite to the transmission side server as determined by the above equation (14). It repeats the operation to be transferred to the storage server module m p of the server. Further, the storage server module m p having received this stores the y-th segment defined by the formula in this segment own storage device (14). The above is the description of method 1 of the present invention. In method 1, only the conditions that should be satisfied for the mapping Ψ are defined, and the mapping Ψ itself is not specifically defined.

[方式2について]
次に、本発明の方式2について説明する。方式2は、上記のT(S1,S3:S2)の実現において、受信側サーバで、同一の蓄積サーバモジュールの蓄積装置内に格納されるマルチメディアデータのセグメントは、全て同一の通信サーバモジュールで受信する方式である。
[About Method 2]
Next, system 2 of the present invention will be described. In method 2, in the realization of T (S 1 , S 3 : S 2 ), the multimedia data segments stored in the storage device of the same storage server module are all the same communication on the receiving server. This is a method of receiving by the server module.

換言するならば、受信側サーバの各蓄積サーバモジュール、および各蓄積装置内の対象となる番組のファイルに対して、各通信サーバモジュールは排他的にアクセスを行う。また、各蓄積装置内の対象となる番組のファイルへのライトアクセスについて、必ずファイルの先頭位置から始め、ライト操作の度にファイルの書き込み位置を1セグメントサイズずつインクリメントする形で行うことができ、該当ファイルへのランダムアクセスを行う必要がない。このようなことから、この方式2では、受信側サーバの実装を容易にすることができる。   In other words, each communication server module exclusively accesses each storage server module of the receiving server and the target program file in each storage device. In addition, write access to the target program file in each storage device can be performed by always starting from the beginning of the file and incrementing the file write position by one segment size for each write operation. There is no need to perform random access to the file. For this reason, this method 2 can facilitate the implementation of the receiving server.

すなわち、集合Mの各要素を集合M’の各要素へ対応させる写像をΩ、このとき集合M’の要素mi’(1≦i≦S2)へと写像される集合Mの要素の集合をMiとして、以下に示す式(31)を満足する写像Ωを決定し、集合Miの要素を識別子に持つ蓄積サーバモジュールの蓄積装置内のマルチメディアデータを識別子mi’で表される通信サーバモジュール(以下、通信サーバモジュールmi’と略記する)から受信する。 That is, the mapping that maps each element of the set M to each element of the set M ′ is Ω, and at this time, the set of elements of the set M that is mapped to the elements m i ′ (1 ≦ i ≦ S 2 ) of the set M ′. And M i satisfying the following equation (31) is determined, and multimedia data in the storage device of the storage server module having the identifier of the set M i as an identifier is represented by an identifier m i ′. Received from a communication server module (hereinafter abbreviated as communication server module m i ′).

Figure 0004879815
Figure 0004879815

さらに、写像Ωは、上記の式(31)に加えて、以下に示す式(32)および(33)も満足するものとする。   Further, the mapping Ω satisfies the following expressions (32) and (33) in addition to the above expression (31).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

式(32)は、集合M’に属する全ての通信サーバモジュールが実際にマルチメディア情報の受信に使用されることを表し、式(33)は、集合Mの蓄積サーバモジュールにおける蓄積装置内のマルチメディアデータが、必ず集合M’のいずれかの通信サーバモジュールによって受信されることを示す。   Expression (32) represents that all communication server modules belonging to the set M ′ are actually used for receiving multimedia information, and Expression (33) represents the multi-number in the storage device in the storage server module of the set M. It indicates that the media data is always received by any communication server module in the set M ′.

また、このときの集合Miの要素を、以下に示す式(34)のように表記する。 In addition, the elements of the set M i at this time are expressed as in the following Expression (34).

Figure 0004879815
Figure 0004879815

方式2では、受信側サーバの通信サーバモジュール、および蓄積サーバモジュールは、上述した方式1と全く同じ動作を行う。すなわち、受信したセグメントのシーケンス番号と上記の式(14)によって定まる場所にそのセグメントを格納する処理を繰り返す。   In method 2, the communication server module and storage server module of the receiving server perform exactly the same operations as in method 1 described above. That is, the process of storing the segment in a place determined by the sequence number of the received segment and the above equation (14) is repeated.

一方、送信側サーバの通信サーバモジュールni'の動作が方式1とは異なる。すなわち、方式2では、送信側サーバの通信サーバモジュールni'は、受信側サーバが上記の動作を行う場合に、結果として通信サーバモジュールmi’が蓄積サーバモジュールmi_1からmi_|Mi|をこの順に巡回しながらセグメントを格納するよう、然るべきセグメントを然るべき順序で送信する。 On the other hand, the operation of the communication server module n i ′ of the transmitting server is different from that in the method 1. That is, in the method 2, the communication server module n i ′ of the transmission side server, when the reception side server performs the above operation, as a result, the communication server module m i ′ is changed from the storage server modules m i_1 to m i_ | Mi | The appropriate segments are transmitted in the appropriate order so that the segments are stored while rotating in this order.

受信側サーバが上記のような巡回動作を行う場合、通信サーバモジュールmi’がx番目(0≦x)に蓄積サーバモジュール側に転送するセグメントは、蓄積サーバモジュールmi_pのy番目(1≦y)に格納される。 When the receiving server performs the cyclic operation as described above, the communication server module m i ′ transfers the x th (0 ≦ x) to the storage server module side as the y th (1 ≦ 1) of the storage server module mi_p. y).

ただし、p、yは、以下に示す式(35)によって定まる値である。   However, p and y are values determined by the following equation (35).

Figure 0004879815
Figure 0004879815

受信側でこのようにセグメントを格納した結果、最終的に受信側サーバの蓄積装置内にセグメントがシーケンス番号の順に正しく格納されたものとすると、上記のx番目のセグメントは、送信側サーバの蓄積サーバモジュールntの蓄積装置のw番目に格納されていたセグメントである。ただし、t、wは式(22)および(35)により求まる以下の式(36)および(37)で示される値である。 As a result of storing the segments in this way on the reception side, if the segments are finally stored correctly in the order of the sequence numbers in the storage device of the reception side server, the xth segment is stored in the transmission side server. a segment that was stored in the w-th storage device of the server module n t. However, t and w are values represented by the following formulas (36) and (37) obtained by formulas (22) and (35).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

よって、送信側サーバの通信サーバモジュールni'は、対向の受信側サーバの通信サーバモジュールmi’へ送信するx(0≦x)番目のセグメントとして、上記の式(36)および(37)で表される位置に格納されているセグメントを選択し、これを蓄積サーバモジュールから読み出す。そして、同セグメントに対し、上記の式(20)のtに式(36)、wに式(37)の値を代入することにより得られる以下の式(38)で定まるシーケンス番号qを付与した後、受信側サーバの通信サーバモジュールmi’へ送信する、という動作を繰り返せばよい。以上が、本発明の方式2の説明である。なお、方式2では、前記の写像Ωについて、それが満足すべき条件のみを規定し、写像Ω自体については具体的に規定しない。 Therefore, the communication server module n i of the sending server 'includes a communication server module of the opposing receiving server of m i' as a segment x (0 ≦ x) th to be transmitted to, the above equation (36) and (37) The segment stored in the position represented by is selected and read from the storage server module. Then, a sequence number q determined by the following equation (38) obtained by substituting the value of equation (36) for t in the above equation (20) and the value of equation (37) for w is assigned to the same segment. Thereafter, the operation of transmitting to the communication server module m i ′ of the receiving server may be repeated. The above is the description of method 2 of the present invention. In the method 2, only the conditions that the map Ω should satisfy are defined, and the map Ω itself is not specifically defined.

Figure 0004879815
Figure 0004879815

[方式3について]
続いて、方式3について説明する。方式3は、上記のT(S1,S3:S2)の実現において、送信側サーバで、同一の蓄積サーバモジュールの蓄積装置内に格納されているマルチメディアデータのセグメントは全て同一の通信サーバモジュールから送信されるという方式1と、受信側サーバで、同一の蓄積サーバモジュールの蓄積装置内に格納されるマルチメディアデータのセグメントは、全て同一の通信サーバモジュールで受信する方式2の双方の条件を満足する方式である。
[About method 3]
Next, method 3 will be described. In method 3, the above-described T (S 1 , S 3 : S 2 ) is realized, and all segments of multimedia data stored in the storage device of the same storage server module are the same communication in the transmission side server. Both the method 1 of transmitting from the server module and the method 2 of receiving all the segments of multimedia data stored in the storage device of the same storage server module at the receiving server by the same communication server module. It is a method that satisfies the conditions.

換言するならば、送受信サーバの各蓄積サーバモジュール、および各蓄積装置内の送受信対象となる番組ファイルに対して、それぞれのサーバの各通信サーバモジュールが排他的にアクセスを行う。また、各蓄積装置内の番組ファイルへのリード/ライトアクセスについて、必ずファイルの先頭位置から始め、リード/ライト操作の度にファイルの読出し/書き込み位置を1セグメントサイズずつインクリメントする形で行うことができ、該当ファイルへのランダムアクセスを行う必要がない。このようなことから、この方式3では、送受信側サーバの実装を容易にすることができる。   In other words, each communication server module of each server exclusively accesses each storage server module of the transmission / reception server and a program file to be transmitted / received in each storage device. Also, the read / write access to the program file in each storage device is always performed by starting from the beginning position of the file and incrementing the read / write position of the file by one segment size for each read / write operation. Yes, there is no need to perform random access to the file. For this reason, this method 3 can facilitate the implementation of the transmission / reception server.

方式3では、送信側サーバにおいては方式1と同様の写像Ψを定義し、受信側サーバにおいては方式2と同様の写像Ωを定義する。   In method 3, the same mapping Ψ as in method 1 is defined at the transmitting server, and the mapping Ω as in method 2 is defined at the receiving server.

すなわち、方式3では、送信側サーバの通信サーバモジュールni'は、方式1と同様に、蓄積サーバモジュールni_1からni_|Ni|をこの順に巡回しながら、各蓄積サーバモジュールからマルチメディアデータのセグメントを1つずつ受け取り、上記の式(29)(あるいは、式(30))で定まるシーケンス番号を付与して受信側サーバへ送信するという動作を繰り返す。 That is, in the method 3, the communication server module n i ′ of the transmission side server goes through the storage server modules n i_1 to n i_ | Ni | Each segment is received one by one, the sequence number determined by the above equation (29) (or equation (30)) is given, and the operation of transmitting to the receiving server is repeated.

また、受信側サーバの通信サーバモジュールは、方式1(あるいは、方式2)と同様に、受信したセグメントのシーケンス番号と上記の式(14)で定まる場所にセグメントを格納する処理を繰り返す。ただし、方式3の送受信側サーバの通信サーバモジュールは、以下に説明する2つの動作が方式1とは異なる。   Also, the communication server module of the receiving server repeats the process of storing the segment in the location determined by the sequence number of the received segment and the above equation (14), as in the method 1 (or method 2). However, the communication server module of the transmission / reception server in method 3 differs from method 1 in two operations described below.

すなわち、方式1とは異なる動作の一つ目は、送信側サーバの通信サーバモジュールni'は、受信側サーバの各通信サーバモジュールmk’が上記の動作をする場合に、結果として集合Mkの要素の蓄積サーバモジュール以外にアクセスしない形になるように、セグメントの送信先の通信サーバモジュールを変更しながら送信動作を行う点である。 That is, the first operation different from the method 1 is that the communication server module n i ′ of the transmission side server has the set M as a result when each communication server module m k ′ of the reception side server performs the above operation. The point is that the transmission operation is performed while changing the communication server module of the segment transmission destination so that only the storage server module of the element k is accessed.

具体的には、送信側サーバの通信サーバモジュールni'は、蓄積サーバモジュールni_t、すなわち、蓄積サーバモジュールnfi(t)からw番目に読み出したセグメントに対し、上記の式(21)を用いてこのセグメントの受信側サーバでの格納先となる蓄積装置の番号pを以下に示す式(39)により求める。 Specifically, the communication server module n i ′ of the sending server calculates the above equation (21) for the storage server module n i_t , that is, the wth segment read from the storage server module n fi (t). The number p of the storage device that is the storage destination in the receiving server of this segment is obtained by the following equation (39).

Figure 0004879815
Figure 0004879815

さらに、このpの値に対して、以下に示す式(40)を満足するjの値を求め、このセグメントの送信先を受信側サーバの通信サーバモジュールmj’に決定する(上記の式(31)および(33)により、このようなjが必ず存在し、その値が一意に定まる)。 Further, with respect to the value of p, a value of j that satisfies the following expression (40) is obtained, and the transmission destination of this segment is determined to be the communication server module m j ′ of the receiving server (the above expression ( 31) and (33) always have such a j, and its value is uniquely determined.

Figure 0004879815
Figure 0004879815

送信側サーバの通信サーバモジュールがこのような動作を行う時、受信側サーバのある1つの通信サーバモジュールに対しては、マルチメディアデータのセグメントが送信側サーバの複数の異なる通信サーバモジュールから非同期に、順不定に送信されてくることになる。   When the communication server module of the sending server performs such an operation, a segment of multimedia data is asynchronously transmitted from a plurality of different communication server modules of the sending server to one communication server module of the receiving server. , Will be sent out of order.

したがって、受信側サーバの通信サーバモジュールmi’が、方式2と同様に蓄積サーバモジュールmi_1からmi_|Mi|をこの順に巡回しながらセグメントを格納し、各蓄積装置内の番組ファイルへの書き込み位置をランダムに変化させることを避けるようにするためには、同通信サーバモジュールmi’は、蓄積装置m1_p(1≦p≦|Mi|)内の番組ファイルのy(1≦y)番目の位置に格納されるべきセグメントを、セグメントの到着順序とは無関係にx(0≦x)番目に蓄積サーバモジュール側へ転送する必要がある。ただし、xは、以下に示す式(41)により定められる。以上が、方式1とは異なる動作の二つ目である。 Accordingly, the communication server module m i ′ of the receiving server stores the segments while circulating the storage server modules m i — 1 to m i — | Mi | in this order in the same manner as in the method 2, and stores the segments in the program files in each storage device. In order to avoid changing the writing position at random, the communication server module m i ′ uses y (1 ≦ y) of the program file in the storage device m 1_p (1 ≦ p ≦ | M i |). The segment to be stored in the) th position needs to be transferred to the storage server module side x (0 ≦ x) th regardless of the arrival order of the segments. However, x is determined by the following equation (41). The above is the second operation different from the method 1.

Figure 0004879815
Figure 0004879815

以上が、本発明の方式3の説明である。なお、方式3では、上記の写像Ψ、Ωについて、それが満足すべき条件のみを規定し、写像Ψ、Ω自体については具体的に規定しない。   The above is the description of the method 3 of the present invention. In the method 3, only the conditions to be satisfied for the mappings Ψ and Ω are defined, and the mappings Ψ and Ω themselves are not specifically defined.

上述してきた本発明の基本概念および方式1〜3は、以下のように、従来の方式についての課題を解決する。すなわち、従来の方式では、1番組を構成する全てのマルチメディアデータが、そのデータの送受信を担当する1台の通信サーバモジュールを経由して外部装置との間で送受信されるため、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で1番組を構成する全てのマルチメディアデータを外部装置との間で送受信することはできない。これに対して、本発明の基本概念および方式1〜3では、1番組を構成する全てのマルチメディアデータを複数の通信サーバモジュールを同時に使用して送受信する。このようなことから、送受信側のサーバでそれぞれ使用される通信サーバモジュールの台数に応じて、1番組を構成するマルチメディアデータの転送速度の上限を向上させることができる。   The basic concept and methods 1 to 3 of the present invention described above solve the problems of the conventional method as follows. That is, in the conventional method, all multimedia data constituting one program is transmitted / received to / from an external device via one communication server module in charge of transmission / reception of the data. All multimedia data constituting one program cannot be transmitted / received to / from an external device at a speed exceeding the hardware performance limit of the communication server module. On the other hand, in the basic concept and methods 1 to 3 of the present invention, all multimedia data constituting one program is transmitted and received simultaneously using a plurality of communication server modules. For this reason, the upper limit of the transfer rate of multimedia data constituting one program can be improved in accordance with the number of communication server modules respectively used in the server on the transmission / reception side.

本発明によれば、通信速度要求値とともにマルチメディアデータ転送要求を受け付けて、分散型マルチメディアサーバ間で1番組のマルチメディアデータがいくつかに分割された各セグメントの転送を行う場合に、送信側として機能する分散型マルチメディアサーバが、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、受信側として機能する分散型マルチメディアサーバが、送信側として機能する分散型マルチメディアサーバが各セグメントを送信するために用いた通信サーバモジュールと同じ台数の通信サーバモジュールを使用して各セグメントを受信し、受信側として機能する分散型マルチメディアサーバが、各セグメントを受信する際に使用した通信サーバモジュールの台数以上の台数の蓄積サーバモジュールにより、受信した各セグメントを各蓄積装置に分散格納するので、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で送受信することが可能である。   According to the present invention, a multimedia data transfer request is received together with a communication speed request value, and transmission is performed when each segment in which multimedia data of one program is divided into several segments is distributed between distributed multimedia servers. The communication speed request value received by the distributed multimedia server functioning as the communication server module together with the data transfer request for the number of communication server modules used for transmitting each segment distributed and stored in each storage device by each storage server module If the provisionally set number of communication server modules exist in a usable state, the distributed multi-function functioning as the receiving side using the provisionally set number of communication server modules is present. Each server is sent to the media server in parallel, and the temporarily set number of communication server modules If not available, send each segment in parallel to the distributed multimedia server that functions as the receiver using the largest number of communication server modules within the usable range. The distributed multimedia server functioning as the receiving side receives each segment using the same number of communication server modules as the communication server module used by the distributed multimedia server functioning as the transmitting side to transmit each segment. Since the distributed multimedia server functioning as the receiving side stores each segment received in each storage device in a distributed manner by the number of storage server modules equal to or greater than the number of communication server modules used when receiving each segment. A speed exceeding the hardware performance limit of one communication server module It is possible to send and receive multimedia information of the program between distributed multimedia server.

また、本発明によれば、送信側として機能する分散型マルチメディアサーバにおいて、各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行うので、蓄積サーバモジュールおよび通信サーバモジュール間で排他的に読出しアクセスを行うことを保証することができ、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で高速に送受信することが可能であるとともに、送信側サーバの実装を容易にすることが可能である。   Further, according to the present invention, in the distributed multimedia server that functions as a transmission side, a communication server module is uniquely assigned to each of a plurality of storage server modules that are distributed and stored in storage devices that each segment includes, Since each communication server module reads the segment to be transmitted from only the storage server module assigned to each communication server module, it is possible to guarantee exclusive read access between the storage server module and the communication server module. In addition, it is possible to transmit and receive multimedia information of a certain program between distributed multimedia servers at high speed, and it is possible to facilitate the implementation of a transmitting server.

また、本発明によれば、受信側として機能する分散型マルチメディアサーバにおいて、各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみに、受信したセグメントの書き込みを行うので、蓄積サーバモジュールおよび通信サーバモジュール間で排他的に書き込みアクセスを行うことを保証することができ、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で高速に送受信することが可能であるとともに、受信側サーバの実装を容易にすることが可能である。   Further, according to the present invention, in the distributed multimedia server functioning as the receiving side, a communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in storage devices provided for each segment, Since each communication server module writes the received segment only to the storage server module assigned to each communication server module, it is possible to guarantee exclusive write access between the storage server module and the communication server module. It is possible to transmit and receive multimedia information of one program between distributed multimedia servers at a high speed and to easily implement a receiving server.

また、本発明によれば、送信側として機能する分散型マルチメディアサーバにおいて、各セグメントを送信する通信サーバモジュールが、受信側として機能する分散型マルチメディアサーバの通信サーバモジュールをセグメントごとに変更するので、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で高速に送受信する際に柔軟な対応を実現することが可能である。   Further, according to the present invention, in the distributed multimedia server that functions as a transmission side, the communication server module that transmits each segment changes the communication server module of the distributed multimedia server that functions as a reception side for each segment. Therefore, it is possible to realize a flexible response when multimedia information of a certain program is transmitted and received between distributed multimedia servers at high speed.

また、本発明によれば、分散型マルチメディアサーバ間でデータの送受信を行う場合であっても、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で送受信することが可能である。   Further, according to the present invention, even when data is transmitted / received between distributed multimedia servers, the multimedia information of a program at a speed exceeding the hardware performance limit of one communication server module. Can be transmitted and received between distributed multimedia servers.

また、本発明によれば、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で送受信することが可能なプログラム、およびこのプログラムを記録した記録媒体を得ることが可能である。   Further, according to the present invention, a program capable of transmitting and receiving multimedia information of one program between distributed multimedia servers at a speed exceeding the hardware performance limit of one communication server module, and this It is possible to obtain a recording medium on which the program is recorded.

以下に添付図面を参照して、この発明に係るマルチメディア情報転送蓄積方法、分散型マルチメディアサーバ装置、分散型マルチメディアサーバシステム、マルチメディア情報転送蓄積方法を実現するプログラムおよび当該プログラムを記録した記録媒体の実施例を詳細に説明する。なお、以下では、本発明に係るマルチメディア情報転送蓄積方法を適用したシステムを本発明の一実施形態である実施例1として説明した後に、本発明に含まれる他の実施例を説明する。   With reference to the accompanying drawings, a multimedia information transfer and storage method, a distributed multimedia server device, a distributed multimedia server system, a program for realizing a multimedia information transfer and storage method according to the present invention, and the program recorded therein An embodiment of the recording medium will be described in detail. In the following, a system to which the multimedia information transfer and storage method according to the present invention is applied will be described as a first embodiment which is an embodiment of the present invention, and then another embodiment included in the present invention will be described.

[システム構成(実施例1)]
まず最初に、図8を用いて、実施例1に係るシステム構成を説明する。実施例1に係るシステムは、分散RAID型マルチメディアサーバ装置1と、分散RAID型マルチメディアサーバ装置2と、制御端末と、管理DBとを端末側ネットワークを介して通信可能な状態で接続して構成される。
[System Configuration (Example 1)]
First, the system configuration according to the first embodiment will be described with reference to FIG. The system according to the first embodiment connects a distributed RAID multimedia server device 1, a distributed RAID multimedia server device 2, a control terminal, and a management DB in a communicable state via a terminal-side network. Composed.

分散RAID型マルチメディアサーバ装置1は、通信サーバモジュール1〜8と、蓄積サーバモジュール1〜8と、蓄積装置1〜8とを含んで構成され、通信サーバモジュール1〜8と蓄積サーバモジュール1〜8とがサーバモジュール間ネットワークを介して通信可能な状態で接続される。   The distributed RAID multimedia server device 1 includes communication server modules 1 to 8, storage server modules 1 to 8, and storage devices 1 to 8. The communication server modules 1 to 8 and the storage server modules 1 to 8 are configured. 8 are connected in a communicable state via the server module network.

分散RAID型マルチメディアサーバ装置2は、通信サーバモジュール1〜5と、蓄積サーバモジュール1〜5と、蓄積装置1〜5とを含んで構成され、通信サーバモジュール1〜5と蓄積サーバモジュール1〜5とがサーバモジュール間ネットワークを介して通信可能な状態で接続される。   The distributed RAID type multimedia server device 2 includes communication server modules 1 to 5, storage server modules 1 to 5, and storage devices 1 to 5. The communication server modules 1 to 5 and the storage server modules 1 to 5 are configured. 5 are connected in a communicable state via the server module network.

制御端末は、管理DBに対して、分散RAID型マルチメディアサーバ装置内に格納された所定の番組のマルチメディアデータの転送要求を発行する機能を備える。   The control terminal has a function of issuing a transfer request for multimedia data of a predetermined program stored in the distributed RAID multimedia server apparatus to the management DB.

管理DBは、分散RAID型マルチメディアサーバ装置の各種リソースに関する情報を管理するDBを有しており、そのDBにおいて管理されている情報に基づいて、制御端末からの転送要求を実現するために必要な指示を分散RAID型マルチメディアサーバ装置に発行する機能を備える。   The management DB has a DB for managing information related to various resources of the distributed RAID type multimedia server device, and is necessary for realizing a transfer request from the control terminal based on the information managed in the DB. A function of issuing a simple instruction to the distributed RAID multimedia server device.

なお、サーバモジュール間ネットワークについては、任意のサーバモジュール間で情報転送を行う機能を実現することができるものであればよく、高速LANやInfiniBandをはじめとする各種既存技術をそのまま利用することができる。また、端末側ネットワークについては、広域通信網として広く用いられているIP(Internet Protocol)ネットワークなどの既存技術をそのまま利用することができる。   Any network between server modules may be used as long as it can realize a function of transferring information between arbitrary server modules, and various existing technologies such as a high-speed LAN and InfiniBand can be used as they are. . For the terminal-side network, existing technologies such as an IP (Internet Protocol) network widely used as a wide area communication network can be used as they are.

分散RAID型マルチメディアサーバ装置は、従来の技術において記述した従来方式によるマルチメディア情報転送、すなわち、1番組につき1台の通信サーバモジュールを使用して端末側ネットワーク上の端末や、マルチメディア情報入力装置との間でマルチメディアデータを送受信する機能をも備える。   The distributed RAID type multimedia server device transfers multimedia information according to the conventional method described in the prior art, that is, a terminal on the terminal side network using one communication server module per program, and multimedia information input It also has a function of transmitting and receiving multimedia data to and from the device.

[各種構成要素の動作(実施例1)]
続いて、分散RAID型マルチメディアサーバ装置1を送信側サーバ、分散RAID型マルチメディアサーバ装置2を受信側サーバとして、これら2台のサーバ間で1番組を構成するマルチメディアデータの高速転送を行う場合における各構成要素の動作を説明する。
[Operations of Various Components (Example 1)]
Subsequently, the distributed RAID type multimedia server device 1 is used as a transmission side server, and the distributed RAID type multimedia server device 2 is used as a reception side server, so that multimedia data constituting one program is transferred at high speed between these two servers. The operation of each component in the case will be described.

なお、各サーバ装置では、マルチメディア情報のメディアの種類ごとに定まる1つの映像フレームを1つのセグメントを単位として、マルチメディアデータを扱うものとする。また、図9に例示すように、各サーバ装置内の蓄積装置では、各マルチメディアデータは番組ごとに独立したファイルとして格納されており、それぞれの番組のファイルは複数のセグメントを連ねたものとする。   Each server device handles multimedia data in units of one video frame determined for each type of multimedia information. Further, as shown in FIG. 9, in the storage device in each server device, each multimedia data is stored as an independent file for each program, and each program file includes a plurality of segments. To do.

[制御端末の動作(実施例1)]
まず、図を参照しつつ、構成要素の一つである制御端末の動作を説明する。図10に示すように、分散RAID型マルチメディアサーバ装置1から分散RAID型マルチメディアサーバ装置2に対して、ある1番組のマルチメディアデータの転送要求が発生すると(ステップS1001肯定)、制御端末は、管理DBへその番組のマルチメディアデータの転送要求を発行する(ステップS1002)。
[Operation of Control Terminal (Example 1)]
First, the operation of the control terminal, which is one of the components, will be described with reference to the drawings. As shown in FIG. 10, when a transfer request for multimedia data of a program is generated from the distributed RAID multimedia server device 1 to the distributed RAID multimedia server device 2 (Yes in step S1001), the control terminal Then, a transfer request for the multimedia data of the program is issued to the management DB (step S1002).

ここで、この転送要求は、図11に例示するように、転送したい番組のマルチメディアデータを格納している送信側サーバを示す識別子と、転送先の受信側サーバを示す識別子と、転送したい番組を表す番組名と、その番組を端末側ネットワーク上で転送する際の通信速度要求値とからなる。   Here, as illustrated in FIG. 11, the transfer request includes an identifier indicating a transmitting server storing multimedia data of a program to be transferred, an identifier indicating a receiving server as a transfer destination, and a program to be transferred. And a communication speed request value for transferring the program on the terminal side network.

転送要求の発行後、制御端末は、管理DBから正常な受付通知の受信を待機する(ステップS1003)。そして、管理DBから正常な受付通知を受信した場合には(ステップS1003肯定)、転送処理が完了するのを待つ(ステップS1004)。これとは反対に、管理DBから正常な受付通知を受信できなかった場合には(ステップS1003否定)、そのまま全ての処理を終了する。なお、正常な受付通知を受信できなかった場合とは、後述する転送要求受け付け不可通知を受信した場合に相当する。   After issuing the transfer request, the control terminal waits for reception of a normal reception notification from the management DB (step S1003). When a normal reception notification is received from the management DB (Yes at Step S1003), the process waits for the transfer process to be completed (Step S1004). On the other hand, if a normal reception notification cannot be received from the management DB (No at step S1003), all the processes are terminated. The case where the normal acceptance notification cannot be received corresponds to the case where a transfer request acceptance impossibility notification which will be described later is received.

ところで、図12に例示するように、分散RAID型マルチメディアサーバ装置1の蓄積装置3〜8をセグメントごとに巡回する形で格納されている所定の番組のマルチメディアデータが、上記の転送要求内の番組識別子によって転送処理の対象に指定されたものとすると、上記の式(1)および(2)によって規定される集合NとS1は、以下に示す式(42)のようになる。 By the way, as illustrated in FIG. 12, multimedia data of a predetermined program stored in the form of circulating the storage devices 3 to 8 of the distributed RAID type multimedia server device 1 for each segment is included in the above transfer request. The set N and S 1 defined by the above formulas (1) and (2) are as shown in the following formula (42).

Figure 0004879815
Figure 0004879815

[管理DBの動作(実施例1)]
次に、図を参照しつつ、構成要素の一つである管理DBの動作を説明する。
[Operation of Management DB (Example 1)]
Next, the operation of the management DB that is one of the components will be described with reference to the drawings.

管理DBは、図15に例示するように、各分散RAID型マルチメディアサーバ装置のリソース管理のためのデータベースを有する。このデータベースは、管理対象の分散RAID型マルチメディアサーバ装置ごとの情報を格納したサーバデータを記憶して構成される。各サーバデータは、サーバの属性を記述したサーバ属性、および同サーバに格納されている番組の情報を格納したサーバ内番組データから構成される。   As illustrated in FIG. 15, the management DB includes a database for resource management of each distributed RAID multimedia server device. This database is configured by storing server data storing information for each managed distributed RAID type multimedia server device. Each server data is composed of server attributes describing server attributes and in-server program data storing program information stored in the server.

ここで、サーバ属性には、サーバを構成する通信サーバモジュールおよび蓄積サーバモジュールの集合の情報、通信サーバモジュールおよび蓄積サーバモジュールの各性能値、およびマルチメディアデータの転送に使用中の通信サーバモジュールの集合の情報が含まれる。なお、以下の説明において、通信/蓄積サーバモジュール集合といった場合には、それらの識別子の順序も考慮した集合を意味するものとする。   Here, the server attribute includes information on a set of communication server modules and storage server modules constituting the server, performance values of the communication server modules and storage server modules, and communication server modules in use for transferring multimedia data. Contains set information. In the following description, a communication / accumulation server module set refers to a set that also considers the order of the identifiers.

サーバ内番組データには、その番組の属性を記述した番組属性として、番組名、セグメント数で表した番組長、映像メディアの種類、1つのセグメントのサイズ、その番組のマルチメディアデータを格納している蓄積サーバモジュールの集合Nが含まれている。   The program data in the server stores the program attribute describing the program attribute, the program name, the program length represented by the number of segments, the type of video media, the size of one segment, and the multimedia data of the program. A set N of storage server modules is included.

図13を用いて、管理DBの動作の説明を開始する。管理DBは、制御端末から転送要求を受信すると(ステップS1301肯定)、転送要求に含まれる送信側および受信側サーバの識別子を参照して、自データベース内の参照すべきサーバデータを特定するとともに(ステップS1302)、転送要求に含まれる番組名を参照して、同サーバデータ内の参照すべきサーバ内番組データを特定する(ステップS1303)。   The operation of the management DB will be described using FIG. When the management DB receives the transfer request from the control terminal (Yes at step S1301), it refers to the identifiers of the transmitting side and the receiving side server included in the transfer request and specifies server data to be referred to in its own database ( In step S1302, the program name in the server to be referred to in the server data is specified with reference to the program name included in the transfer request (step S1303).

そして、管理DBは、転送要求内に含まれる通信速度要求値と、サーバデータ内の通信/蓄積サーバモジュールの性能値のデータとを用いて、所望の通信速度要求値を実現するために通信サーバモジュールが何台必要であるかを計算し、さらに上記の式(19)の制約を考慮して、送受信サーバ間での転送処理に使用する通信サーバモジュールの台数S2を仮設定する(ステップS1304)。 Then, the management DB uses the communication speed request value included in the transfer request and the performance value data of the communication / accumulation server module in the server data to realize a desired communication speed request value. module calculates how many modules required, further taking into account the constraints in (19) above, temporarily sets the number S 2 of the communication server module to be used in the transfer process between transmitting and receiving server (step S1304 ).

続いて、管理DBは、サーバデータ内の使用中の通信サーバモジュールの集合を参照して、仮設定したS2台に等しい台数の通信サーバモジュールが送受信側の両サーバにおいて未使用の状態で存在するか否か検査する(ステップS1305)。検査の結果、S2台に等しい台数の通信サーバモジュールが送受信側の両サーバにおいて未使用の状態で存在する場合には(ステップS1305肯定)、実際に使用する通信サーバモジュールを決定して(ステップS1306)、決定された通信サーバモジュールの要素N’およびM’を新たにサーバデータ内の使用中の通信サーバモジュールのリストに追加する(ステップS1307)。 The management DB refers to the set of communication server module in use in the server data, present in the unused state in the communication server module both servers receiving side of number equal to two S was temporarily set It is inspected whether or not to perform (step S1305). Result of the test, if the communication server module number equal to two S is present in an unused state in both the server transmission and reception side (step S1305: Yes), determines a communication server module that is actually used (step In step S1306, the elements N ′ and M ′ of the determined communication server module are newly added to the list of communication server modules in use in the server data (step S1307).

一方、検査の結果、S2台に等しい台数の通信サーバモジュールが送受信側の両サーバにおいて未使用の状態で存在しない場合には(ステップS1305否定)、管理DBは、S2の値を1つずつ減らしていき(ステップS1308)、S2の値が“0”となっているか否か判定する(ステップS1309)。判定の結果、S2の値が“0”となっていない場合には(ステップS1309否定)、再び、ステップS1305に記載した検査を実行することにより、使用可能な範囲で最大の通信サーバモジュールの台数をS2の値として決定する。これとは反対に、判定の結果、S2の値が“0”となっている場合には(ステップS1309肯定)、番組のマルチメディアデータ転送処理が不可能であるものとして、管理DBは、制御端末に転送要求 受け付け不可通知を送信して(ステップS1310)、全ての処理を終了する。 On the other hand, results of the inspection, if the communication server module number equal to two S does not exist in the unused state in both the server transmission and reception side (step S1305: No), the management DB is one value of S 2 by gradually decreasing (step S1308), it determines whether the value of S 2 is "0" (step S1309). As a result of the determination, if the value of S 2 is not “0” (No at Step S1309), the inspection described in Step S1305 is executed again, so that the maximum communication server module in the usable range can be obtained. the number is determined as the value of S 2. On the other hand, if the result of determination is that the value of S 2 is “0” (Yes at step S1309), the management DB determines that the multimedia data transfer process of the program is impossible, A transfer request unacceptable notification is transmitted to the control terminal (step S1310), and all the processes are terminated.

ここでは、仮に、S2=4台の通信サーバモジュールを使用して、番組のマルチメディアデータ転送処理を実行するように最終決定され、上記の式(4)および(9)に相当する、送受信サーバで転送処理に使用される通信サーバモジュールの集合(N’、M’)が以下に示す式(43)のように決定されたものとする。 Here, suppose that S 2 = 4 communication server modules are used and the final decision is made to execute the multimedia data transfer process of the program, and transmission and reception corresponding to the above equations (4) and (9) It is assumed that a set (N ′, M ′) of communication server modules used for transfer processing in the server is determined as shown in Expression (43) below.

Figure 0004879815
Figure 0004879815

また、番組のマルチメディアデータの転送先である受信側サーバでは、転送されてきたデータは全て蓄積サーバモジュール上に蓄積装置を巡回する形で格納されるものとする。このとき、上記の式(13)で表される集合、および上記の式(16)のS3の値は、以下に示す式(44)のようになる。 In the receiving server, which is the transfer destination of the multimedia data of the program, all transferred data is stored on the storage server module in a form that circulates the storage device. At this time, the set represented by the above equation (13) and the value of S 3 in the above equation (16) are as shown in the following equation (44).

Figure 0004879815
Figure 0004879815

上述してきた管理DBによる各種設定状態を図16に例示する。   FIG. 16 illustrates various setting states by the management DB described above.

引き続き、図14を用いて、管理DBの動作を説明する。同図に示すように、送受信サーバで転送処理に使用される通信サーバモジュールの集合(N’、M’)を決定した管理DBは、N’で示される送信側サーバの通信サーバモジュールの全てに対して新規番組送信要求を送信するとともに(ステップS1401)、M’で示される受信側サーバの通信サーバモジュールの全てに対して新規番組受信要求を送信する(ステップS1402)。   Subsequently, the operation of the management DB will be described with reference to FIG. As shown in the figure, the management DB that determines the set (N ′, M ′) of communication server modules used for the transfer process in the transmission / reception server is included in all the communication server modules of the transmission side server indicated by N ′. On the other hand, a new program transmission request is transmitted (step S1401), and a new program reception request is transmitted to all the communication server modules of the receiving server indicated by M ′ (step S1402).

ここで、新規番組送信要求および新規番組受信要求は、それぞれ図17および図18に例示するように、転送対象となる番組のサーバ内番組データ、転送処理に使用される通信サーバモジュールの集合N’およびM’、その番組のマルチメディアデータが格納されている蓄積サーバモジュールの集合Mの情報を含んでいる。なお、転送対象となる番組のマルチメディアデータが格納されている蓄積サーバモジュールの集合Nの情報は、図15に例示したように、サーバ内番組データに格納されている。   Here, as illustrated in FIGS. 17 and 18, respectively, the new program transmission request and the new program reception request are the program data in the server of the program to be transferred, and the set N ′ of communication server modules used for the transfer process. And M ′, the information of the collection server module set M in which the multimedia data of the program is stored. Note that the information of the accumulation server module set N in which the multimedia data of the program to be transferred is stored is stored in the in-server program data as illustrated in FIG.

新規番組送信要求および新規番組受信要求を送信後、管理DBは、制御端末に対して転送要求の正常受付通知を送信し(ステップS1403)、集合N’およびM’の通信サーバモジュールから番組のマルチメディアデータの転送終了通知の受付を待機する(ステップS1404)。転送終了通知を受け付けると、管理DBは、制御端末へ転送処理の終了通知を送信して(ステップS1405)、集合N’およびM’の要素をサーバデータ内の使用中の通信サーバモジュールのリストから消去する(ステップS1406)。   After transmitting the new program transmission request and the new program reception request, the management DB transmits a normal acceptance notification of the transfer request to the control terminal (step S1403), and the multi-program of the program is transmitted from the communication server modules of the set N ′ and M ′. It waits for reception of media data transfer end notification (step S1404). Upon receipt of the transfer end notification, the management DB transmits a transfer processing end notification to the control terminal (step S1405), and sets N 'and M' elements from the list of used communication server modules in the server data. Erasing is performed (step S1406).

そして、管理DBは、番組のマルチメディアデータが受信側サーバへ転送されたことを記録するため、受信側サーバに対応するサーバデータ内に、受信側サーバへ転送された番組のマルチメディアデータをサーバ内番組データとして追加し(ステップS1407)、転送要求に対する処理を全て終了する。   The management DB records the fact that the multimedia data of the program has been transferred to the receiving server, and stores the multimedia data of the program transferred to the receiving server in the server data corresponding to the receiving server. It is added as internal program data (step S1407), and all the processes for the transfer request are terminated.

[送信側サーバの通信サーバモジュールの動作(実施例1)]
続いて、図を参照しつつ、送信側サーバの通信サーバモジュールの動作を説明する。送信側サーバでは、集合N’に含まれる1つ1つの通信サーバモジュールがそれぞれ独立に動作を実行する。
[Operation of Communication Server Module of Sending Server (Example 1)]
Next, the operation of the communication server module of the transmitting server will be described with reference to the drawings. In the transmitting server, each communication server module included in the set N ′ performs an operation independently.

すなわち、図19に示すように、通信サーバモジュールは、管理DBから新規番組送信要求を受信すると(ステップS1901肯定)、この送信要求に含まれる通信サーバモジュールの集合N’を参照し、この集合の中で自身の通信サーバモジュールの識別子が書かれている位置を検出することにより、N’における自身の位置を示す識別子iの値を判別する(ステップS1902)。   That is, as shown in FIG. 19, when the communication server module receives a new program transmission request from the management DB (Yes in step S1901), the communication server module refers to the set N ′ of communication server modules included in the transmission request, and By detecting the position where the identifier of its own communication server module is written, the value of the identifier i indicating its own position in N ′ is determined (step S1902).

例えば、N’中の通信サーバモジュール1は、この処理により自身がn1'(i=1)に相当することを判別し、通信サーバモジュール3は、同様に、自身がn2'(i=2)に相当することを判別する。 For example, the communication server module 1 in N ′ determines that it corresponds to n 1 ′ (i = 1) by this process, and the communication server module 3 similarly identifies itself as n 2 ′ (i = It is determined that it corresponds to 2).

次に、上記で判別した識別子iと、集合N’およびNとを用いて、上記で説明した写像Ψに基づく集合Niの要素、すなわち、自身が送信を担当する蓄積装置を有する蓄積サーバモジュールの集合、および上記で説明した関数fi( )を決定する(ステップS1903)。 Next, using the identifier i determined above and the sets N ′ and N, the elements of the set N i based on the map Ψ described above, that is, the storage server module having the storage device that is responsible for transmission And the function f i () described above are determined (step S1903).

ここで、写像Ψとしては、図21に例示するように、集合N’の各要素をn1'からnS2'へと巡回しながら、集合Nの要素をn1からnS1まで順に割り当てていく写像を用いるものとする。単純な写像ではあるが、各通信サーバモジュールが担当する蓄積サーバモジュールの数を最大限に均等化することができ、実用性が高いものである。このとき、図21から明らかなように、1≦i≦S2の条件を満足するiに対して、以下に示す式(45)〜(47)が成立する。 Here, as the mapping Ψ, as illustrated in FIG. 21, the elements of the set N ′ are sequentially assigned from n 1 to n S1 while circulating each element of the set N ′ from n 1 ′ to n S2 ′. Suppose you use a mapping. Although it is a simple mapping, the number of storage server modules in charge of each communication server module can be equalized to the maximum, and is highly practical. At this time, as is apparent from FIG. 21, the following equations (45) to (47) are established for i satisfying the condition of 1 ≦ i ≦ S 2 .

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

したがって、写像Ψでは、各通信サーバモジュールni'は自身が担当する蓄積サーバモジュールを巡回しながら1つずつセグメントを受け取り、上記の式(30)を用いて、所定の受信セグメントに対して、式(30)と式(47)とによって定義された以下の式(48)で定まるシーケンス番号qを付与して、対向の受信側サーバの通信サーバモジュールmi'に送信すればよい。 Therefore, in the mapping Ψ, each communication server module n i ′ receives segments one by one while going around the storage server module that it is in charge of, and using the above equation (30), for a given received segment, The sequence number q determined by the following equation (48) defined by the equations (30) and (47) may be assigned and transmitted to the communication server module mi ′ of the opposite receiving server.

Figure 0004879815
Figure 0004879815

この写像Ψを実施例1に係るシステムに適用すると、図21から確認できるように、以下に示す式(49)が成り立つことを容易に確認できるが、上記の式(45)および(46)を用いてNiを求めてみると、式(46)、(50)より、以下に示す式(51)が導かれ、これを考慮すると上記の式(45)により以下に示す式(52)となり、Niが求められる。 When this mapping Ψ is applied to the system according to the first embodiment, as can be confirmed from FIG. 21, it can be easily confirmed that the following expression (49) holds, but the above expressions (45) and (46) are When N i is obtained by using the equations (46) and (50), the following equation (51) is derived, and considering this, the above equation (45) yields the following equation (52). , N i are determined.

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

なお、この写像Ψが上記の式(23)〜(25)を満たすことは用意に確認できる。   In addition, it can confirm easily that this mapping (psi) satisfy | fills said Formula (23)-(25).

通信サーバモジュールは、担当する蓄積サーバモジュールの集合Niが求まると、Niの全ての蓄積サーバモジュールに対して番組ファイルをオープンするように指示を発行し(ステップS1904)、この指示に対する蓄積サーバモジュールからの応答(ファイルオープン終了通知)を待つ(ステップS1905)。 Communication server module, the set N i of the storage server module in charge is obtained, and issues an instruction to open the program files for all storage server module N i (step S1904), the storage server for this instruction It waits for a response from the module (file open end notification) (step S1905).

iの全ての蓄積サーバモジュールから番組ファイルオープン終了通知が届くと、通信サーバモジュールは、受信側サーバの対向の通信サーバモジュールmi'からセグメント受信完了通知が届くのを待つ(ステップS1906)。セグメント受信完了通知により、通信サーバモジュールは、受信側サーバの受信準備が完了したと判断し、転送対象である番組のマルチメディアデータのセグメント転送処理に移行する。 When the program file open end notification is received from all the storage server modules of N i , the communication server module waits for a segment reception completion notification from the communication server module m i ′ opposite to the receiving server (step S1906). Based on the segment reception completion notification, the communication server module determines that reception preparation of the receiving server has been completed, and shifts to a segment transfer process for multimedia data of a program to be transferred.

次に、図20を用いて、セグメント転送処理における通信サーバモジュールの動作を説明する。ni_tの各蓄積サーバモジュールに対応する転送終了フラグを全て“0”に初期化して(ステップS2001)、集合Niの蓄積サーバモジュールを示す添え字t、および各蓄積サーバモジュールへの何回目のセグメント要求であるかを示すセグメント要求通知番号wをともに“1”に初期化する(ステップS2002)。 Next, the operation of the communication server module in the segment transfer process will be described using FIG. The transfer end flags corresponding to the storage server modules of n i_t are all initialized to “0” (step S2001), the subscript t indicating the storage server modules of the set N i , and the number of times to each storage server module Both segment request notification numbers w indicating whether the request is a segment request are initialized to “1” (step S2002).

ここで、転送終了フラグC[t]について、その値が“1”である場合には、蓄積サーバモジュールni_tの蓄積装置内の該当番組のセグメントを全てmi’へ転送完了したことを示し、“0”である場合には、まだ転送が完了していないことを示す。 Here, when the value of the transfer end flag C [t] is “1”, it indicates that all the segments of the corresponding program in the storage device of the storage server module n i_t have been transferred to m i ′. , “0” indicates that the transfer has not been completed yet.

次に、tの値に対応する転送終了フラグが“1”であるか否か判定する(ステップS2003)。判定の結果、tの値に対応する転送終了フラグが“1”ではない場合(つまり、“0”である場合)には(ステップS2003否定)、通信サーバモジュールは、自身を表す送信元通信サーバモジュールの識別子、管理DBからの新規番組送信要求に含まれていた該当番組のサーバ内番組データ、およびセグメント要求通知信号wを付加情報に持つセグメント要求を作成し(ステップS2004)、蓄積サーバモジュールni_tへセグメント要求通知を発行する(ステップS2005)。 Next, it is determined whether or not the transfer end flag corresponding to the value of t is “1” (step S2003). As a result of the determination, when the transfer end flag corresponding to the value of t is not “1” (that is, when it is “0”) (No in step S2003), the communication server module transmits the source communication server representing itself. A segment request having additional information including the module identifier, the program data in the server included in the new program transmission request from the management DB, and the segment request notification signal w is created (step S2004), and the storage server module n A segment request notification is issued to i_t (step S2005).

このセグメント要求通知に対して送信されてきたセグメントを蓄積サーバモジュールから受信すると(ステップS2006)、そのセグメントにサーバ内番組データとシーケンス番号を付与し(ステップS2007)、受信側サーバの対向の通信サーバモジュールmi’へ、そのセグメントを送信する(ステップS2008)。 When the segment transmitted in response to this segment request notification is received from the storage server module (step S2006), the program data in the server and the sequence number are assigned to the segment (step S2007), and the communication server opposite the receiving server The segment is transmitted to the module m i ′ (step S2008).

蓄積サーバモジュールへ送信するセグメント要求通知と、そのセグメント要求通知に対して送信されてくるセグメントの形式を図22に例示するとともに、受信側サーバの対向の通信サーバモジュールへ送信されるセグメントの形式を図23に例示する。   The segment request notification transmitted to the storage server module and the segment format transmitted in response to the segment request notification are illustrated in FIG. 22, and the segment format transmitted to the communication server module opposite to the receiving server is illustrated. This is illustrated in FIG.

図22に例示するように、セグメント要求通知には、送信元の通信サーバモジュール識別子、転送対象となる該当番組のサーバ内番組データ、およびセグメント要求通知番号wが含まれている。また、同図に例示するように、蓄積サーバモジュールから転送されてくる該当番組のセグメントには、番組を構成するマルチメディアデータのほかに、送信元の蓄積サーバモジュール識別子、サーバ内番組データ、セグメント要求通知信号w、およびLASTFLAGが付加情報として付与されている。LASTFLAGは、該当番組のその蓄積サーバモジュールからの最後のセグメントであることを示すフラグであり、その値が“1”である場合には最後のセグメントであることを示す。   As illustrated in FIG. 22, the segment request notification includes a communication server module identifier of a transmission source, in-server program data of a corresponding program to be transferred, and a segment request notification number w. Further, as illustrated in the figure, the program segment transferred from the storage server module includes the transmission source storage server module identifier, in-server program data, segment in addition to the multimedia data constituting the program. A request notification signal w and LASTFLAG are given as additional information. LASTFLAG is a flag indicating that it is the last segment from the storage server module of the corresponding program. When the value is “1”, it indicates that it is the last segment.

セグメントを通信サーバモジュールmi’へ送信する際に付与するシーケンス番号は、上記の式(48)に基づいて算出する。ここで、通信サーバモジュールn1'がN1の要素の蓄積サーバモジュールから送信するセグメントのシーケンス番号について、その一部を計算してみると、以下に示す式(53)のようになり、図16の記載と一致することがわかる。 The sequence number assigned when the segment is transmitted to the communication server module m i ′ is calculated based on the above equation (48). Here, when a part of the sequence number of the segment transmitted from the storage server module of the element N 1 by the communication server module n 1 ′ is calculated, the following equation (53) is obtained. It turns out that it corresponds with description of 16.

Figure 0004879815
Figure 0004879815

再び、転送処理の動作の説明に戻ると、通信サーバモジュールは、蓄積サーバモジュールni_tから受け取ったセグメントのLASTFLAGの値が“1”であるか否か判定する(ステップS2009)。判定の結果、LASTFLAGの値が“1”である場合には(ステップS2009肯定)、通信サーバモジュールは、転送終了フラグの値を“1”にセットし(ステップS2010)、以降、その蓄積サーバモジュールへセグメント要求通知を発行する必要がないことを認識する。 Returning to the description of the operation of the transfer process again, the communication server module determines whether or not the LASTFLAG value of the segment received from the storage server module ni_t is “1” (step S2009). As a result of the determination, when the value of LASTFLAG is “1” (Yes at Step S2009), the communication server module sets the value of the transfer end flag to “1” (Step S2010), and thereafter, the storage server module. Recognize that there is no need to issue a segment request notification.

これとは反対に、LASTFLAGの値が“1”ではない場合には(ステップS2009否定)、通信サーバモジュールは、tおよびwの値をインクリメントさせながら(ステップS2012〜ステップS2015)、全てのtについて転送終了フラグの値が“1”になるまで上記の処理(ステップS2004〜S2008)を繰り返す。   On the other hand, when the value of LASTFLAG is not “1” (No in step S2009), the communication server module increments the values of t and w (steps S2012 to S2015), and all t The above processing (steps S2004 to S2008) is repeated until the value of the transfer end flag becomes “1”.

ここで、上記のステップS2003の説明に戻ると、上記のステップS2010において転送終了フラグの値が“1”にセットされた場合、すなわち、判定の結果、tの値に対応する転送終了フラグが“1”である場合には(ステップS2003肯定)、全てのtの値に対応する転送終了フラグが“1”であるか否か判定する(ステップS2011)。判定の結果、全てのtの値に対応する転送終了フラグが“1”である場合には(ステップS2011肯定)、受信側サーバの対向の通信サーバモジュールmi’に対して転送終了通知を送信し(ステップS2016)、管理DBに対しても転送終了通知を送信して(ステップS2017)、すべての処理を終了する。 Here, returning to the description of step S2003, when the value of the transfer end flag is set to “1” in step S2010, that is, as a result of the determination, the transfer end flag corresponding to the value of t is “ If it is 1 ”(Yes at Step S2003), it is determined whether or not the transfer end flags corresponding to all the values of t are“ 1 ”(Step S2011). As a result of the determination, when the transfer end flag corresponding to all the values of t is “1” (Yes in step S2011), a transfer end notification is transmitted to the communication server module mi ′ ′ opposite to the receiving server. (Step S2016), a transfer end notification is also transmitted to the management DB (Step S2017), and all the processes are ended.

[送信側サーバの蓄積サーバモジュールの動作(実施例1)]
続いて、図を参照しつつ、送信側サーバの蓄積サーバモジュールの動作を説明する。図24に示すように、蓄積サーバモジュールは、通信サーバモジュール(例えば、ni')から番組ファイルのオープン指示を受信すると(ステップS2401肯定)、指示された番組ファイルのオープン処理を実行する(ステップS2402)。そして、蓄積サーバモジュールは、通信サーバモジュールni'へファイルオープン終了通知を送信し(ステップS2403)、通信サーバモジュールni'からのセグメント要求通知(図22参照)の受信待ち状態をとる(ステップS2404)。
[Operation of Storage Server Module of Sending Server (Example 1)]
Subsequently, the operation of the storage server module of the transmission side server will be described with reference to the drawings. As shown in FIG. 24, when the storage server module receives an instruction to open a program file from the communication server module (for example, n i ′) (Yes in step S2401), the storage server module executes an opening process of the instructed program file (step S2401). S2402). The storage server module 'sends a file open completion notice to (step S2403), the communication server module n i' communication server module n i taking standby state for receiving the segment request notification (see FIG. 22) from (step S2404).

通信サーバモジュールni'からセグメント要求通知を受信すると、蓄積サーバモジュールは、自身の蓄積装置内の該当番組ファイルから、セグメント要求で指示された同蓄積装置におけるw番目のセグメントに相当するデータを読み出す(ステップS2405)。なお、w番目のセグメントに相当するデータとは、該当番組ファイルの先頭位置からw番目のセグメント位置から始まり、1セグメントの長さに相当するマルチメディアデータである。 When the segment request notification is received from the communication server module n i ′, the storage server module reads data corresponding to the w th segment in the storage device indicated by the segment request from the corresponding program file in its storage device. (Step S2405). The data corresponding to the w-th segment is multimedia data corresponding to the length of one segment starting from the w-th segment position from the start position of the corresponding program file.

蓄積サーバモジュールは、セグメント要求通知内のサーバ内番組データの番組属性(図15参照)に書かれている値を参照して、セグメントサイズを認識する。そして、蓄積サーバモジュールは、w番目のセグメントに相当するデータの読み出しを完了すると、このデータが蓄積装置内の最後のセグメントに相当するデータであるか否か確認する(ステップS2406)。確認の結果、最後のセグメントに相当するデータである場合には(ステップS2406肯定)、蓄積サーバモジュールは、同蓄積装置内の該当番組ファイルにおける最後のセグメントであることを示す値“1”をLASTFLAGに挿入し(ステップS2407)、このLASTFLAG、自身を表す送信元蓄積サーバモジュール識別子、セグメント要求通知に付与されている該当番組のサーバ内番組データ、および蓄積装置内でのセグメント番号wをセグメントに付与する(ステップS2408)。そして、蓄積サーバモジュールは、セグメント要求通知の送信元である通信サーバモジュールni'にセグメントを転送し(ステップS2409)、該当番組ファイルをクローズして(ステップS2410)、全ての処理を終了する。 The storage server module recognizes the segment size with reference to the value written in the program attribute (see FIG. 15) of the in-server program data in the segment request notification. Then, when the storage server module completes reading of data corresponding to the w-th segment, it checks whether or not this data is data corresponding to the last segment in the storage device (step S2406). As a result of the confirmation, if the data corresponds to the last segment (Yes at step S2406), the storage server module sets the value “1” indicating the last segment in the corresponding program file in the storage device to LASTFLAG. (Step S 2407), and this LASTFLAG, the transmission source storage server module identifier representing itself, the program data in the server of the program assigned to the segment request notification, and the segment number w in the storage device are assigned to the segment. (Step S2408). Then, the storage server module transfers the segment to the communication server module n i ′ that is the transmission source of the segment request notification (step S2409), closes the corresponding program file (step S2410), and ends all the processes.

一方、蓄積装置から読み出したw番目のセグメントに相当するデータが最後のセグメントに相当するデータであるか否かを確認した結果、最後のセグメントに相当するデータではない場合には(ステップS2406否定)、蓄積サーバモジュールは、同蓄積装置内の該当番組ファイルにおける最後のセグメントではないことを示す値“0”をLASTFLAGに挿入し(ステップS2411)、このLASTFLAG、自身を表す送信元蓄積サーバモジュール識別子、セグメント要求通知に付与されている該当番組のサーバ内番組データ、および蓄積装置内でのセグメント番号wをセグメントに付与する(ステップS2412)。そして、蓄積サーバモジュールは、セグメント要求通知の送信元である通信サーバモジュールni'にセグメントを転送する(ステップS2412)。 On the other hand, as a result of checking whether or not the data corresponding to the w th segment read from the storage device is the data corresponding to the last segment, if the data does not correspond to the last segment (No in step S2406). The storage server module inserts a value “0” indicating that it is not the last segment in the corresponding program file in the storage device into the LASTFLAG (step S2411), and this LASTFLAG, a transmission source storage server module identifier representing itself, The in-server program data of the corresponding program given to the segment request notification and the segment number w in the storage device are given to the segment (step S2412). Then, the accumulation server module transfers the segment to the communication server module n i ′ that is the transmission source of the segment request notification (step S2412).

以上のように、送信サーバ側の1台の蓄積装置に対してアクセスを行う通信サーバモジュールは1台だけであり(図21参照)、その蓄積装置内の番組ファイルに対して通信サーバモジュールにより行われるリードアクセスは、該当番組ファイルの先頭位置から始まって1セグメントずつシーケンシャルに位置をずらしながら行われる(つまり、アクセス位置を示すwの値を1つずつインクリメントしながら行われる、図25参照)。このため、送信側サーバにおいて、番組ファイルへのランダムアクセスは発生しない。以上が送信側サーバの動作の説明である。   As described above, only one communication server module accesses one storage device on the transmission server side (see FIG. 21), and the program file in the storage device is executed by the communication server module. Read access is performed while sequentially shifting the position one segment at a time starting from the head position of the corresponding program file (that is, incrementing the value of w indicating the access position by one, see FIG. 25). For this reason, random access to the program file does not occur in the transmitting server. The above is the description of the operation of the transmitting server.

[受信側サーバの通信サーバモジュールの動作(実施例1)]
続いて、図を参照しつつ、受信側サーバの通信サーバモジュールの動作を説明する。受信側サーバでは、集合M’に含まれる1つ1つの通信サーバモジュールがそれぞれ独立に動作を実行する。
[Operation of Communication Server Module of Receiving Server (Example 1)]
Next, the operation of the communication server module of the receiving server will be described with reference to the drawings. In the receiving server, each communication server module included in the set M ′ executes an operation independently.

すなわち、図26に示すように、受信側サーバの通信サーバモジュールは、管理DBから新規番組受信要求を受信すると(ステップS2601肯定)、番組データを格納する蓄積サーバモジュールMの集合に含まれる全ての蓄積サーバモジュールに対して、これから受信する番組のマルチメディアデータの格納用ファイルをオープンする指示を出した後(ステップS2602)、集合Mに含まれる全ての蓄積サーバモジュールからのファイルオープン終了通知を待つ(ステップS2603)。   That is, as shown in FIG. 26, when the communication server module of the receiving server receives a new program reception request from the management DB (Yes at step S2601), all communication server modules included in the set of storage server modules M that store program data. After instructing the storage server module to open a file for storing multimedia data of a program to be received (step S2602), it waits for a file open end notification from all of the storage server modules included in the set M. (Step S2603).

全ての蓄積サーバモジュールからのファイルオープン終了通知を受信すると、受信側サーバの通信サーバモジュールは、送信側サーバの対向の通信サーバモジュールに対して、セグメント受信準備完了通知を送信し(ステップS2604)、マルチメディアデータのセグメント受信処理へ移行する。   When receiving the file open end notification from all the storage server modules, the communication server module of the receiving server transmits a segment reception preparation completion notification to the communication server module opposite to the transmitting server (step S2604). Shift to multimedia data segment reception processing.

次に、図27を用いて、セグメント受信処理における通信サーバモジュールの動作を説明する。同図に示すように、受信側サーバの通信サーバモジュールmi'は、送信側サーバの対向の通信サーバモジュールni'から、新規番組のマルチメディアデータのセグメント(図23参照)を受信すると(ステップS2701肯定)、上記の式(14)を用いてセグメントの転送先となる蓄積サーバモジュールを示す識別子pの値を算出するとともに(ステップS2702)、転送先の蓄積サーバモジュールmpの蓄積装置内におけるセグメントの格納位置識別子yの値を算出する(ステップS2703)。 Next, the operation of the communication server module in the segment reception process will be described using FIG. As shown in the figure, when the communication server module m i ′ of the receiving server receives the multimedia data segment (see FIG. 23) of the new program from the opposite communication server module n i ′ of the transmitting server (see FIG. 23) ( In step S2701, the value of the identifier p indicating the storage server module serving as the transfer destination of the segment is calculated using the above equation (14) (step S2702), and the storage device module p of the storage server module mp serving as the transfer destination The value of the storage position identifier y of the segment is calculated (step S2703).

そして、通信サーバモジュールmi'は、受信したセグメントにサーバ内番組データおよび位置識別子yを付与した後(ステップS2704)、識別子pに基づいて判明した転送先の蓄積サーバモジュールmpへセグメントを転送する(ステップS2705)。図28に、通信サーバモジュールmi'から蓄積サーバモジュールmpへ転送されるセグメント構成例を示す。 The communication server module m i ', after applying the server in the program data and location identifier y in segment received (step S2704), transfer the stored segments to the server module m p of the transfer destination has been found based on the identifier p (Step S2705). Figure 28 shows an example segment configuration which is transferred from the communication server module m i 'to the storage server module m p.

蓄積サーバモジュールmpへセグメントを転送した後、通信サーバモジュールmi'は、送信側サーバの対向の通信サーバモジュールni'から転送終了通知が既に届いているか否か検査する(ステップS2706)。検査の結果、転送終了通知が既に届いている場合には(ステップS2706肯定)、新規番組のマルチメディアデータを格納する蓄積サーバモジュールの集合Mの要素であるすべての蓄積サーバモジュールに対して、通信サーバモジュールni'のセグメントの受信処理が終了したことを示す転送終了通知を送信するとともに(ステップS2707)、管理DBに対しても同様の転送終了通知を送信する(ステップS2708)。これとは反対に、通信サーバモジュールni'から転送終了通知がまだ届いていない場合には(ステップS2706否定)、通信サーバモジュールmi'は、新しいセグメントの受信を待機する。 After transferring the segment to the storage server module m p , the communication server module m i ′ checks whether a transfer end notification has already arrived from the communication server module n i ′ opposite to the transmitting server (step S2706). As a result of the inspection, if a transfer end notification has already arrived (Yes at step S2706), communication is performed with respect to all the storage server modules that are elements of the set M of storage server modules storing the multimedia data of the new program. A transfer completion notification indicating that the segment reception processing of the server module n i ′ has been completed is transmitted (step S2707), and a similar transfer completion notification is also transmitted to the management DB (step S2708). On the other hand, when the transfer end notification has not yet arrived from the communication server module n i ′ (No at Step S2706), the communication server module m i ′ waits for reception of a new segment.

ここで、セグメントの転送先の蓄積サーバモジュール識別子pと、セグメントの格納位置識別子yの算出方法についての理解を助けるため、上記の式(14)を用いて、該当番組のシーケンス番号qが0〜6間でのセグメントについて、蓄積サーバモジュール識別子pおよびセグメントの格納位置識別子yを算出してみると、以下に示す式(54)のようになり、これらの算出結果は図16に示す結果と一致していることがわかる。   Here, in order to help understanding of the calculation method of the storage server module identifier p of the segment transfer destination and the storage location identifier y of the segment, the sequence number q of the corresponding program is set to 0 to 0 using the above equation (14). When the storage server module identifier p and the segment storage location identifier y are calculated for the segments between 6, the following equation (54) is obtained, and these calculation results are the same as the results shown in FIG. You can see that you are doing it.

Figure 0004879815
Figure 0004879815

[受信側サーバの蓄積サーバモジュールの動作(実施例1)]
続いて、図を参照しつつ、受信側サーバの蓄積サーバモジュールの動作を説明する。集合Mに含まれる各蓄積サーバモジュールがそれぞれ独立に動作を実行する。
[Operation of Storage Server Module of Receiving Server (Example 1)]
Next, the operation of the storage server module of the receiving server will be described with reference to the drawings. Each storage server module included in the set M performs an operation independently.

すなわち、図29に示すように、受信側サーバの蓄積サーバモジュールは、集合M’に含まれる各通信サーバモジュールにおいて該当番組のセグメント受信処理が完了したか否かを示す転送終了フラグを全て“0”に初期化する(ステップS2901)。   That is, as shown in FIG. 29, the storage server module of the receiving server sets all the transfer end flags indicating whether or not the segment reception processing of the corresponding program has been completed in each communication server module included in the set M ′ to “0”. To "" (step S2901).

ここで、転送終了フラグC[j]の値が“0”である場合には、通信サーバモジュールmj'が、送信側サーバの対向の通信サーバモジュールnj'から送信されてくるセグメントの受信処理を完了しておらず、引き続き、通信サーバモジュールmj'から蓄積サーバモジュールへセグメントの転送が行われることを示す。一方、転送終了フラグC[j]の値が“1”である場合には、通信サーバモジュールmj'が、送信側サーバの対向の通信サーバモジュールnj'から送信されてくるセグメントの受信処理を完了しており、これ以上、通信サーバモジュールmj'から蓄積サーバモジュールへセグメントの転送が行われないことを示す。 Here, when the value of the transfer end flag C [j] is “0”, the communication server module m j ′ receives a segment transmitted from the opposite communication server module n j ′ of the transmitting server. This indicates that the processing has not been completed and the segment is continuously transferred from the communication server module m j ′ to the storage server module. On the other hand, when the value of the transfer end flag C [j] is “1”, the communication server module m j ′ receives a segment transmitted from the opposite communication server module n j ′ of the transmitting server. This indicates that no more segments are transferred from the communication server module m j ′ to the storage server module.

転送終了フラグの初期化を終えると、受信側サーバの蓄積サーバモジュールは、集合M’中の任意の通信サーバモジュールからの何かしらの通知を待つ(ステップS2902)。この通知としては、番組格納用のファイルオープン指示通知、セグメントの転送終了通知、および実際のセグメントの転送といった3種類の通知が考えられ、蓄積サーバモジュールは、これらの通知の種類に応じた動作を実行する。   When the initialization of the transfer end flag is completed, the storage server module of the receiving server waits for some notification from any communication server module in the set M ′ (step S <b> 2902). As this notification, there are three types of notifications, such as a program storage file open instruction notification, a segment transfer end notification, and an actual segment transfer, and the storage server module operates according to the types of these notifications. Execute.

通信サーバモジュールから通知を受け付けると(ステップS2902肯定)、受信側サーバの蓄積サーバモジュールは、通知がファイルオープン指示通知であるか否か確認する(ステップS2903)。確認の結果、ファイルオープン指示通知である場合には(ステップS2903肯定)、蓄積サーバモジュールは、該当番組格納用のファイルをオープン済みであるか否か確認する(ステップS2904)。確認の結果、ファイルをオープンしていない場合には(ステップS2904否定)、蓄積サーバモジュールは、自身の蓄積装置内の番組ファイルをオープンして、通信サーバモジュールにファイルオープン終了通知を送信する(ステップS2906)。これとは反対に、ファイルをオープン済みである場合には(ステップS2904肯定)、蓄積サーバモジュールは、そのまま、通信サーバモジュールにファイルオープン終了通知を送信する。   When a notification is received from the communication server module (Yes at step S2902), the storage server module of the receiving server checks whether the notification is a file open instruction notification (step S2903). If the result of the confirmation is a file open instruction notification (Yes at step S2903), the storage server module confirms whether or not the corresponding program storage file has been opened (step S2904). If the file has not been opened as a result of the confirmation (No at step S2904), the storage server module opens the program file in its storage device and transmits a file open end notification to the communication server module (step S2904). S2906). On the other hand, if the file has been opened (Yes at step S2904), the storage server module transmits a file open end notification to the communication server module as it is.

このように、各蓄積サーバモジュールは、自身の蓄積装置内に該当番組格納用のファイルをオープンする処理を1度行えばよい。しかし、実際には、集合M’中の各通信サーバモジュールが動作時において、それぞれ独立にファイルのオープン指示を全ての蓄積サーバモジュールに発行するため、各蓄積サーバモジュールには全部でS2からのファイルオープン指示通知が届くことになる。そこで、最初にファイルオープン指示通知が届いた時にのみ、番組格納用のファイルをオープンする処理を行い、それ以後のファイルオープン指示通知については、そのまま、ファイルオープン終了通知を送信を送信することで対処すればよい。 In this way, each storage server module may perform the process of opening the corresponding program storage file in its storage device once. However, in practice, each communication server module in the set M 'is in operation, to issue independently open instruction of a file to any storage server module, from S 2 in total Each storage server module You will receive a file open instruction notification. Therefore, only when the file open instruction notification is received for the first time, the program storage file is opened, and the subsequent file open instruction notification is handled by sending the file open end notification as it is. do it.

ここで、ステップS2903の説明に戻ると、通信サーバモジュールから受け付けた通知の内容を確認した結果、ファイルオープン指示通知ではない場合には(ステップS2903否定)、蓄積サーバモジュールは、転送終了通知であるか否か確認する(ステップS2907)。確認の結果、転送終了通知である場合には(ステップS2907肯定)、蓄積サーバモジュールは、その通知を送信した通信サーバモジュールmi'に対応する転送終了フラグの値を“1”にセットする(ステップS2908)。このとき、蓄積サーバモジュールは、全通信サーバモジュールに対応する全転送終了フラグの値が“1”であるか否か確認する(ステップS2909)。確認の結果、全転送終了フラグの値が全て“1”である場合には(ステップS2909肯定)、これ以上、通信サーバモジュールから該当番組のセグメントが転送されてくることはないので、番組格納用ファイルをクローズして(ステップS2910)、全ての処理を終了する。 Here, returning to the description of step S2903, if the result of checking the content of the notification received from the communication server module is not a file open instruction notification (No in step S2903), the storage server module is a transfer end notification. It is confirmed whether or not (step S2907). As a result of the confirmation, if it is a transfer end notification (Yes at step S2907), the storage server module sets the value of the transfer end flag corresponding to the communication server module m i ′ that transmitted the notification to “1” ( Step S2908). At this time, the storage server module confirms whether or not the value of all transfer end flags corresponding to all communication server modules is “1” (step S2909). As a result of the confirmation, if all the transfer end flag values are all “1” (Yes at step S2909), the segment of the corresponding program is not transferred from the communication server module any more, so The file is closed (step S2910), and all processing is terminated.

これとは反対に、全転送終了フラグの値が全て“1”ではない場合には(ステップS2909否定)、蓄積サーバモジュールは、通信サーバモジュールからの通知を待つ。   On the other hand, if the values of all transfer end flags are not all “1” (No in step S2909), the storage server module waits for a notification from the communication server module.

ここで、ステップS2907の説明に戻ると、通信サーバモジュールから受け付けた通知の内容を確認した結果、転送終了通知でもない場合には(ステップS2907否定)、蓄積サーバモジュールは、マルチメディアデータのセグメントが転送されてきたものと判断して、格納位置識別子yの値を参照し、転送されてきたマルチメディアデータのセグメントを自身の蓄積装置内の番組ファイルのy番目セグメント位置に格納する(ステップS2911)。図30に、この格納処理の概要を示す。格納処理を終了すると、蓄積サーバモジュールは、再び、通信サーバモジュールからの通知を待つ。以上が、受信側サーバの動作の説明である。   Returning to the description of step S2907, if the content of the notification received from the communication server module is confirmed, and if it is not a transfer end notification (NO in step S2907), the storage server module determines that the multimedia data segment is It is determined that the data has been transferred, the value of the storage location identifier y is referred to, and the transferred multimedia data segment is stored in the y-th segment position of the program file in its storage device (step S2911). . FIG. 30 shows an outline of this storage process. When the storage process ends, the storage server module waits for a notification from the communication server module again. The above is the description of the operation of the receiving server.

[実施例1による効果]
上述してきたように、実施例1では、上記した課題を解決するための手段(方式(1))を用いて、構成の異なる2台の分散RAID型マルチメディアサーバ装置間で、一方のマルチメディアサーバ装置内の蓄積装置に分散格納された1番組のマルチメディアデータのセグメントを4台の通信サーバモジュールを用いて、他方のマルチメディアサーバ装置に対して並列に転送し、転送先のマルチメディアサーバ装置では、受信したマルチメディアデータのセグメントを順序正しく並び替えて、自装置内の蓄積装置に格納する場合を説明した。このようなことから、実施例1によれば、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で送受信することが可能である。
[Effects of Example 1]
As described above, in the first embodiment, using the means for solving the above-described problem (method (1)), one multimedia between two distributed RAID type multimedia server apparatuses having different configurations is used. A multimedia server segment of one program distributed and stored in a storage device in the server device is transferred in parallel to the other multimedia server device using four communication server modules, and the destination multimedia server In the device, the case where the received multimedia data segments are rearranged in order and stored in the storage device in the device has been described. For this reason, according to the first embodiment, it is possible to transmit / receive multimedia information of one program between distributed multimedia servers at a speed exceeding the hardware performance limit of one communication server module. It is.

また、実施例1によれば、送信側として機能する分散RAID型マルチメディアサーバ装置において、各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行うので、蓄積サーバモジュールおよび通信サーバモジュール間で排他的に読出しアクセスを行うことを保証することができ、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で高速に送受信することが可能であるとともに、送信側サーバの実装を容易にすることが可能である。   Further, according to the first embodiment, in the distributed RAID type multimedia server device functioning as a transmission side, a communication server module is uniquely assigned to each of a plurality of storage server modules distributed and stored in storage devices each having each segment. And each communication server module reads the segment to be transmitted from only the storage server module assigned to each communication server module, thus guaranteeing exclusive read access between the storage server module and the communication server module. In addition, it is possible to transmit and receive multimedia information of a certain program between distributed multimedia servers at a high speed, and to facilitate the implementation of a transmission side server.

引き続き、以下では、本発明の一実施形態である実施例2について説明する。なお、以下の実施例2では、上記の実施例1と同様のシステム構成(図8参照)を用いて、分散RAID型マルチメディアサーバ装置1内の蓄積装置3〜8を跨いで格納されたマルチメディアデータを分散RAID型マルチメディアサーバ装置2に転送し、分散RAID型マルチメディアサーバ装置2内の蓄積装置1〜5に跨って格納される実施例1と同様の動作(図16参照)について説明する。   Subsequently, Example 2 which is one embodiment of the present invention will be described below. In the following second embodiment, a multi-store stored across the storage devices 3 to 8 in the distributed RAID type multimedia server device 1 using the same system configuration as that of the first embodiment (see FIG. 8). An operation similar to that of the first embodiment in which media data is transferred to the distributed RAID type multimedia server device 2 and stored across the storage devices 1 to 5 in the distributed RAID type multimedia server device 2 will be described (see FIG. 16). To do.

また、実施例2では、上記の方式(2)において説明した写像Ωとして、上記の実施例1で用いて写像Ψと同様の写像、すなわち、集合M’の各要素をm1'〜mS2'へと巡回しながら、集合Mの要素をm1〜mS3まで順番に一つずつ割り当てていく写像を用いるものとする。このとき、実施例1で用いた写像Ψと同様に考えて、1≦i≦S2となるiに対して、以下に示す式(55)、(56)および(57)が成立する。 In the second embodiment, the mapping Ω described in the above method (2) is used as the mapping Ψ used in the first embodiment, that is, each element of the set M ′ is represented by m 1 ′ to m S2. It is assumed that a map is used in which the elements of the set M are assigned one by one from m 1 to m S3 in order while traveling to '. At this time, considering the same as the mapping Ψ used in the first embodiment, the following expressions (55), (56), and (57) are established for i satisfying 1 ≦ i ≦ S 2 .

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

このとき、上記の方式(2)で説明した式(36)、(37)および(38)は、上記の式(57)を用いることにより、以下に示す式(58)、(59)および(60)のように具体化される。   At this time, the equations (36), (37), and (38) described in the above method (2) are expressed by the following equations (58), (59), and (38) by using the above equation (57). 60).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

実施例2では、図8に示す制御端末および管理DBは実施例1と同様の動作を行うので、詳細な説明は省略する。以下に、実施例2に係る送受信サーバの動作を説明する。   In the second embodiment, the control terminal and management DB shown in FIG. 8 perform the same operations as in the first embodiment, and thus detailed description thereof is omitted. The operation of the transmission / reception server according to the second embodiment will be described below.

[送信側サーバの通信サーバモジュールの動作(実施例2)]
まず、図を参照しつつ、送信側サーバの通信サーバモジュールの動作を説明する。送信側サーバでは、上記の実施例1と同様に、集合N’に含まれる1つ1つの通信サーバモジュールがそれぞれ独立に動作を実行するが、以下に説明する点が実施例1とは異なる。
[Operation of Communication Server Module of Sending Server (Example 2)]
First, the operation of the communication server module of the transmitting server will be described with reference to the drawings. In the transmitting server, each communication server module included in the set N ′ independently operates as in the first embodiment, but differs from the first embodiment in the points described below.

具体的には、図31に示すように、通信サーバモジュールは、集合N’に属するそれぞれの通信サーバモジュールが、集合Nの全ての要素の蓄積サーバモジュールに対して番組ファイルのオープン指示を発行する点(ステップS3104)、および受信側サーバの集合Miを求める計算を行う点(ステップS3103)が実施例1とは異なる。 Specifically, as shown in FIG. 31, in the communication server module, each communication server module belonging to the set N ′ issues a program file open instruction to the storage server modules of all elements of the set N. point (step S3104), and the point of performing calculation for obtaining the set M i of the receiving server (step S3103) is different from the first embodiment.

すなわち、上記の方式(2)に基づいた実施例2では、蓄積サーバモジュールに対して各通信サーバモジュールが排他的にアクセスを行っていないため、番組ファイルのオープン指示の発行について排他制御の枠組を適用する必要がなく、上記の式(58)、(59)および(60)の演算を実行するためにMiの情報が必要となるからである。これらの動作以外(ステップS3101、S3102,S3105およびS3106)は上記の実施例1と同様である(図19参照)。 That is, in the second embodiment based on the above method (2), since each communication server module does not exclusively access the storage server module, an exclusive control framework is provided for issuing a program file open instruction. This is because there is no need to apply, and information on M i is required to execute the operations of the above equations (58), (59), and (60). Other than these operations (steps S3101, S3102, S3105, and S3106) are the same as in the first embodiment (see FIG. 19).

ここで、図31に示すステップS3103の処理において定まる集合Miを具体的に求めてみる。すなわち、以下に示す式(61)および上記の式(56)から、以下に示す式(62)が導かれる。 Let us now specifically determined the set M i determined in the processing in step S3103 shown in FIG. 31. That is, the following formula (62) is derived from the following formula (61) and the above formula (56).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

さらに、上記の式(62)に示される値を考慮して、上記の式(55)により、以下に示す式(63)が導かれる。なお、ここで用いた写像Ωが上記の式(31)〜(33)を満たすことは容易に確認することができる。   Further, considering the value shown in the above equation (62), the following equation (63) is derived from the above equation (55). It can be easily confirmed that the mapping Ω used here satisfies the above equations (31) to (33).

Figure 0004879815
Figure 0004879815

次に、図32を用いて、セグメント転送処理における通信サーバモジュールの動作を説明する。同図に示すように、通信サーバモジュールni'は、受信側サーバの対向の通信サーバモジュールmi'に対して転送するセグメントのカウンタxの値を“0”に初期化して(ステップS3201)、図31に示すステップS3103で求めた|Mi|およびgi()と、上記の式(58)および(59)とを用いて、現在のxの値に対応するt、wの値を求める(ステップS3202)。 Next, the operation of the communication server module in the segment transfer process will be described using FIG. As shown in the figure, the communication server module n i ′ initializes the value of the counter x of the segment to be transferred to the communication server module m i ′ opposite to the receiving server to “0” (step S3201). 31. Using | M i | and g i () obtained in step S3103 shown in FIG. 31 and the above equations (58) and (59), the values of t and w corresponding to the current value of x are obtained. Obtained (step S3202).

t、wの値を求めた後、通信サーバモジュールni'は、自身を表す送信元通信サーバモジュール識別子、管理DBからの新規番組送信要求に含まれていた該当番組のサーバ内番組データ、および蓄積サーバモジュール内のセグメント番号wを付加情報に持つセグメント要求を作成し(ステップS3203)、蓄積サーバモジュールntへセグメント要求通知を発行する(ステップS3204)。 After obtaining the values of t and w, the communication server module n i ′, the transmission source communication server module identifier representing itself, the in-server program data of the corresponding program included in the new program transmission request from the management DB, and create a segment request with a segment number w in storage server module in the additional information (step S3203), and issues a segment request notification to the storage server module n t (step S3204).

蓄積サーバモジュールntからセグメント要求通知に対するセグメントを受信すると(ステップS3205)、受信したセグメント内のマルチメディアデータに対してサーバ内番組データ、および上記の式(60)で定まるシーケンス番号qを付与して(ステップS3206)、受信側サーバの対向の通信サーバモジュールmi'へそのセグメントを送信する(ステップS3207)。 When the storage server module n t receive the segment for the segment request notification from (step S3205), the sequence number q defined by the server in the program data, and the above equation (60) assigned to the multimedia data in the segments received (Step S3206), the segment is transmitted to the communication server module m i ′ opposite to the receiving server (Step S3207).

セグメントの送信後、通信サーバモジュールni'は、受信側サーバの対向の通信サーバモジュールmi'から転送終了通知が届いているか否か確認する(ステップS3208)。確認の結果、転送終了通知が届いていない場合には(ステップS3208否定)、通信サーバモジュールni'は、転送終了通知が届くまで、xの値をインクリメントしながら(ステップS3209)、上記のステップS3202〜ステップS3207までの処理を繰り返す。 After transmission of the segment, the communication server module n i 'is the communication server module m i of the counter of the receiving server' confirms whether received transfer end notification from (step S3208). As a result of the confirmation, if the transfer end notification has not arrived (No at Step S3208), the communication server module n i ′ increments the value of x until the transfer end notification arrives (Step S3209), while performing the above steps. The processing from S3202 to step S3207 is repeated.

これとは反対に、転送終了通知が届いている場合には(ステップS3208肯定)、通信サーバモジュールni'は、集合Nの全ての蓄積サーバモジュールへ転送終了通知を送信するとともに(ステップS3210)、管理DBへ転送終了通知を送信して(ステップS3211)、全ての処理を終了する。 On the contrary, if the transfer end notification has arrived (Yes at step S3208), the communication server module n i ′ transmits the transfer end notification to all the storage server modules in the set N (step S3210). Then, a transfer end notification is transmitted to the management DB (step S3211), and all the processes are ended.

ここで、送信側サーバの通信サーバモジュールni'が受信側サーバの通信サーバモジュールmi'に対して、セグメントを送信する場合の上記t、w、qの値の計算方法、および、それらの意味に関する理解を助けるために、通信サーバモジュールn1'(=1)が対向の通信サーバモジュールm1'(=2)に対して送信するセグメントについて、上記の式(58)、(59)および(60)を用いて、x=0〜5までのt、w、qの値を計算してみると、以下に示す式(64)、(65)、(66)、(67)、(68)および(69)のようになる(i=1、|Mi|=2、S1=6、S2=4、S3=5であることに注意)。 Here, when the communication server module n i ′ of the transmission side server transmits the segment to the communication server module m i ′ of the reception side server, the calculation method of the values of t, w, q described above, To help understand the meaning, for the segment that the communication server module n 1 ′ (= 1) sends to the opposite communication server module m 1 ′ (= 2), the above equations (58), (59) and When the values of t, w, and q from x = 0 to 5 are calculated using (60), the following equations (64), (65), (66), (67), (68) ) And (69) (note that i = 1, | M i | = 2, S 1 = 6, S 2 = 4, S 3 = 5).

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

Figure 0004879815
Figure 0004879815

以上の計算結果は、通信サーバモジュールn1'(=1)が、蓄積サーバモジュールnt=n1=3のw=1番目のセグメント位置にあるマルチメディアデータに、セグメント番号q=0を付与したものを最初のセグメントとしてm1'=2へ送信し、2番目のセグメントとして蓄積サーバモジュールnt=n5=7のw=1番目のセグメント位置にあるマルチメディアデータに、セグメント番号q=4を付与したものを送信し、3番目のセグメントとして蓄積サーバモジュールnt=n6=8のw=1番目のセグメント位置にあるマルチメディアデータに、セグメント番号q=5を付与したものを送信し、4番目のセグメントとして蓄積サーバモジュールnt=n4=6のw=2番目のセグメント位置にあるマルチメディアデータに、セグメント番号q=9を付与したものを送信し、5番目のセグメントとして蓄積サーバモジュールnt=n5=7のw=2番目のセグメント位置にあるマルチメディアデータに、セグメント番号q=10を付与したものを送信し、6番目のセグメントとして蓄積サーバモジュールnt=n3=5のw=3番目のセグメント位置にあるマルチメディアデータに、セグメント番号q=14を付与したものを送信することを意味している。 As a result of the above calculation, the communication server module n 1 ′ (= 1) assigns the segment number q = 0 to the multimedia data at the w = 1st segment position of the storage server module n t = n 1 = 3. Is transmitted to m 1 ′ = 2 as the first segment, and the storage server module n t = n 5 = 7 is set as the second segment to multimedia data at the first segment position w = segment number q = 4 is sent, and as the third segment, the storage server module n t = n 6 = 8, w = 1, the multimedia data at the first segment position with the segment number q = 5 sent and, in the multimedia data in the storage server module n t = n 4 = 6 w = 2 th segment position as the fourth segment, segment Send those granted port number q = 9, the multimedia data in the storage server module n t = n 5 = 7 for w = 2 th segment position as the fifth segment, impart segment number q = 10 To the multimedia data in the storage server module n t = n 3 = 5 w = 3rd segment position with the segment number q = 14 transmitted as the sixth segment. I mean.

上記の図16に示した分散RAID型マルチメディアサーバ装置1の蓄積サーバモジュールの蓄積装置上で、該当番組データのそれぞれのシーケンス番号のセグメントが格納されている位置とこれの計算結果とを比較することにより、上記の式(60)により送出セグメントへのシーケンス番号の付与が正しく行われていることがわかる。   On the storage device of the storage server module of the distributed RAID multimedia server device 1 shown in FIG. 16, the position where the segment of each sequence number of the corresponding program data is stored is compared with the calculation result. Thus, it can be seen that the sequence number is correctly assigned to the transmission segment by the above equation (60).

また、上記の6つのセグメントのシーケンス番号の並び“0,4,5,9,10,14”に着目すれば、これらのセグメントは分散RAID型マルチメディアサーバ装置2で受信された後、同サーバ装置内の蓄積サーバモジュールm1とm5に交互に格納されていることがわかる。ここで、m1=m1_1、m5=m1_2、|M1|=2であることから、分散RAID型マルチメディアサーバ装置2の通信サーバモジュールmi'は、M1のすべての要素の蓄積サーバモジュールを巡回しながら受信したセグメントを格納するという、上記の
方式(2)で説明した所望の動作を実現できていることが確認できる。分散RAID型マルチメディアサーバ装置1および2の他の通信サーバモジュールについても、同様の方法で動作を確認することができる。
If attention is paid to the sequence numbers “0, 4, 5, 9, 10, 14” of the above six segments, these segments are received by the distributed RAID multimedia server apparatus 2 and then the same server. It can be seen that the storage server modules m 1 and m 5 in the apparatus are alternately stored. Here, since m 1 = m 1_1 , m 5 = m 1_2 , and | M 1 | = 2, the communication server module m i ′ of the distributed RAID type multimedia server apparatus 2 includes all elements of M 1. It can be confirmed that the desired operation described in the above method (2), in which the received segment is stored while going around the storage server module, is realized. The operation of other communication server modules of the distributed RAID type multimedia server devices 1 and 2 can be confirmed in the same manner.

[送信側サーバの蓄積サーバモジュールの動作(実施例2)]
続いて、図を参照しつつ、送信側サーバの蓄積サーバモジュールの動作を説明する。図33に示すように、蓄積サーバモジュールは、集合N’に含まれる各通信サーバモジュールからセグメントの転送終了通知が到着したか否かを示す転送終了フラグの値を全て“0”に初期化する(ステップS3301)。
[Operation of Storage Server Module of Sending Server (Example 2)]
Subsequently, the operation of the storage server module of the transmission side server will be described with reference to the drawings. As shown in FIG. 33, the storage server module initializes all the values of the transfer end flag indicating whether or not a segment transfer end notification has arrived from each communication server module included in the set N ′ to “0”. (Step S3301).

転送終了フラグC[j]の値が“0”である場合には、通信サーバモジュールnj'からのセグメント要求通知が今後も送られてくることを示し、転送終了フラグC[j]の値が“0”ではない場合(“1”である場合)には、通信サーバモジュールnj'からのセグメント要求がこれ以上送られてこないことを示す。 When the value of the transfer end flag C [j] is “0”, it indicates that a segment request notification from the communication server module n j ′ will continue to be sent, and the value of the transfer end flag C [j] Is not “0” (when it is “1”), it indicates that no more segment requests are sent from the communication server module n j ′.

転送終了フラグの初期化が終了すると、蓄積サーバモジュールは、集合N’の任意の通信サーバモジュールからの通知を待つ(ステップS3302)。この通知としては、番組格納用ファイルのオープン指示、セグメント転送終了通知、およびセグメント要求通知の3種類があり、蓄積サーバモジュールは、これらの通知の種類に応じた動作を実行する。   When the initialization of the transfer end flag is completed, the storage server module waits for a notification from any communication server module in the set N ′ (step S3302). There are three types of notifications: an instruction to open a program storage file, a segment transfer end notification, and a segment request notification, and the storage server module executes an operation corresponding to the type of these notifications.

通信サーバモジュールから通知を受け付けると(ステップS3302肯定)、受信側サーバの蓄積サーバモジュールは、通知がファイルオープン指示通知であるか否か確認する(ステップS3303)。確認の結果、ファイルオープン指示通知である場合には(ステップS3303肯定)、蓄積サーバモジュールは、該当番組格納用のファイルをオープン済みであるか否か確認する(ステップS3304)。確認の結果、ファイルをオープンしていない場合には(ステップS3304否定)、蓄積サーバモジュールは、自身の蓄積装置内の番組ファイルをオープンして、通信サーバモジュールにファイルオープン終了通知を送信する(ステップS3305)。これとは反対に、ファイルをオープン済みである場合には(ステップS3304肯定)、蓄積サーバモジュールは、そのまま、通信サーバモジュールにファイルオープン終了通知を送信する(ステップS3306)。   When the notification is received from the communication server module (Yes at Step S3302), the storage server module of the receiving server checks whether the notification is a file open instruction notification (Step S3303). If the result of the confirmation is a file open instruction notification (Yes at step S3303), the storage server module checks whether or not the corresponding program storage file has been opened (step S3304). If the file has not been opened as a result of the confirmation (No at step S3304), the storage server module opens the program file in its storage device and transmits a file open end notification to the communication server module (step S3304). S3305). On the other hand, if the file has been opened (Yes at step S3304), the storage server module transmits a file open end notification to the communication server module as it is (step S3306).

前述のように、集合N’中の各通信サーバモジュールが動作の開始時においてそれぞれ独立にファイルのオープン指示をすべての蓄積サーバモジュールに対して発行するため、各蓄積サーバモジュールに対して全部でS2回のファイルのオープン指示が届く。しかし、本来、各蓄積サーバモジュールは、自身の蓄積装置内に該当番組格納用のファイルをオープンする処理を1度行えばよい。そこで、最初にファイルオープン指示通知が届いた時にのみ、番組格納用のファイルをオープンする処理を行い、それ以後のファイルオープン指示通知については、そのまま、ファイルオープン終了通知を送信を送信することで対処すればよい。 As described above, since each communication server module in the set N ′ issues a file open instruction to all the storage server modules independently at the start of operation, a total of S for each storage server module. open indication of two file arrives. However, each storage server module should essentially perform the process of opening the corresponding program storage file in its storage device once. Therefore, only when the file open instruction notification is received for the first time, the program storage file is opened, and the subsequent file open instruction notification is handled by sending the file open end notification as it is. do it.

ここで、ステップS3303の説明に戻ると、通信サーバモジュールから受け付けた通知の内容を確認した結果、ファイルオープン指示通知ではない場合には(ステップS3303否定)、蓄積サーバモジュールは、転送終了通知であるか否か確認する(ステップS3307)。確認の結果、転送終了通知である場合には(ステップS3307肯定)、蓄積サーバモジュールは、その通知を送信した通信サーバモジュールni'に対応する転送終了フラグの値を“1”にセットする(ステップS3308)。このとき、蓄積サーバモジュールは、全通信サーバモジュールに対応する全転送終了フラグの値が“1”であるか否か確認する(ステップS3309)。確認の結果、全転送終了フラグの値が全て“1”である場合には(ステップS3309肯定)、これ以上、通信サーバモジュールから該当番組のセグメントが転送されてくることはないので、番組格納用ファイルをクローズして(ステップS3310)、全ての処理を終了する。 Here, returning to the description of step S3303, if the result of checking the content of the notification received from the communication server module is not a file open instruction notification (No in step S3303), the storage server module is a transfer end notification. It is confirmed whether or not (step S3307). As a result of the confirmation, if it is a transfer end notification (Yes at step S3307), the storage server module sets the value of the transfer end flag corresponding to the communication server module n i 'that transmitted the notification to “1” ( Step S3308). At this time, the storage server module checks whether or not the value of all transfer end flags corresponding to all communication server modules is “1” (step S3309). As a result of the confirmation, if all the transfer end flag values are all “1” (Yes at step S3309), the program server segment will not be transferred any more from the communication server module. The file is closed (step S3310), and all processing is terminated.

これとは反対に、全転送終了フラグC[j]の値が全て“1”ではない場合には(ステップS3309否定)、蓄積サーバモジュールは、通信サーバモジュールからの通知を待つ。   On the other hand, if the values of all transfer end flags C [j] are not all “1” (No at step S3309), the storage server module waits for a notification from the communication server module.

ここで、ステップS3307の説明に戻ると、通信サーバモジュールから受け付けた通知の内容を確認した結果、転送終了通知でもない場合には(ステップS3307否定)、蓄積サーバモジュールは、マルチメディアデータのセグメント要求が通知されてきたものと判断して、格納位置識別子wの値を参照し、自身の蓄積装置内のすでにオープンしてある番組ファイルのw番目のセグメント位置のマルチメディアデータを読み出す(ステップS3311)。そして、このデータに、自身を表す送信元蓄積サーバモジュール識別子、サーバ内番組データ、および読み出したデータの蓄積装置内におけるセグメント位置を示す番号wを付与した後(ステップS3312)、通信サーバモジュールni'に対してセグメントを送信する(ステップS3313)。以上が、送信側サーバの動作の説明である。 Here, returning to the description of step S3307, if the content of the notification received from the communication server module is confirmed, and if it is not a transfer end notification (No at step S3307), the storage server module requests the multimedia data segment request. Is read and the value of the storage location identifier w is referred to, and the multimedia data at the w-th segment location of the program file already opened in its storage device is read (step S3311). . Then, a transmission source storage server module identifier representing itself, in-server program data, and a number w indicating the segment position in the storage device of the read data are assigned to this data (step S3312), and then the communication server module n i. A segment is transmitted to '(step S3313). The above is the description of the operation of the transmitting server.

[受信側サーバの通信サーバモジュールの動作(実施例2)]
続いて、図を参照しつつ、受信側サーバの通信サーバモジュールの動作を説明する。受信側サーバでは、集合M’に含まれる1つ1つの通信サーバモジュールがそれぞれ独立に動作を実行する。
[Operation of Communication Server Module of Receiving Server (Example 2)]
Next, the operation of the communication server module of the receiving server will be described with reference to the drawings. In the receiving server, each communication server module included in the set M ′ executes an operation independently.

すなわち、図34に示すように、受信側サーバの通信サーバモジュールは、管理DBから新規番組受信要求を受信すると(ステップS3401肯定)、この新規番組受信要求に含まれる通信サーバモジュールの集合M’を参照し、この集合の中に自身の通信サーバモジュール識別子が書かれている位置を検出することにより、この集合M’における自身の位置を示す識別子iの値を判別する(ステップS3402)。   That is, as shown in FIG. 34, when the communication server module of the receiving server receives a new program reception request from the management DB (Yes at step S3401), the communication server module set M ′ included in the new program reception request is displayed. By referring to this position and detecting the position where its own communication server module identifier is written in this set, the value of the identifier i indicating its own position in this set M ′ is determined (step S3402).

そして、通信サーバモジュールは、この判別した識別子iと、集合M’およびMを用いて、上記の式(55)および(56)から写像Ωに基づく集合Miの要素、すなわち、自身がセグメントの転送を担当する蓄積サーバモジュールの集合を決定する(ステップS3403)。 Then, the communication server module uses the determined identifier i and the sets M ′ and M, and the elements of the set M i based on the mapping Ω from the above formulas (55) and (56), that is, the segment itself is the segment. A set of storage server modules in charge of transfer is determined (step S3403).

iを決定すると、通信サーバモジュールは、集合Miの各要素Mi_j(1≦j≦|Mi|)へ転送すべき総セグメント数Ljを計算する(ステップS3404)。このLjは、mi_j=mgi(j)を満たす上記の式(57)の関数gi()、新規番組受信要求内の番組データに含まれる番組長L、およびS3を用いて、以下に示す式(70)のように算出される。 Upon determining the M i, the communication server module, the elements M I_j of the set M i (1 ≦ j ≦ | M i |) to calculate the total number of segments to be transferred to L j (step S3404). This L j is obtained by using the function g i () of the above equation (57 ) that satisfies m ij = m gi (j) , the program length L included in the program data in the new program reception request, and S 3 . It is calculated as shown in equation (70) below.

Figure 0004879815
Figure 0004879815

また、このLjは、送信側サーバの対向の通信サーバモジュールni'へセグメントの格納完了通知を送信するための判断に用いられる。 This L j is used for determination to transmit a segment storage completion notification to the communication server module n i ′ opposite to the transmitting server.

このように、上記の方式(2)に基づく実施例2では、送信側サーバの集合N’に属する通信サーバモジュールは、同サーバ内の集合Nに属する全蓄積サーバモジュールからランダムに番組データのセグメントを受信するため、同通信サーバモジュールにおいて番組データの送信終了を検出することは難しい。このため、実施例2では、以下に説明するように、受信側サーバの通信サーバモジュールにおいてセグメントの受信完了を判断し、送信側サーバに通知する。   As described above, in the second embodiment based on the above method (2), the communication server modules belonging to the set N ′ of the transmission side servers are randomly segmented from all the storage server modules belonging to the set N in the server. Therefore, it is difficult to detect the end of program data transmission in the communication server module. For this reason, in the second embodiment, as described below, the communication server module of the receiving server determines that the segment has been received and notifies the transmitting server.

上記のステップS3404が終了すると、通信サーバモジュールは、Miの全ての要素の蓄積サーバモジュールに対して、ファイルオープン指示通知を送信することにより番組格納用ファイルのオープンを指示する(ステップS3405)。そして、通信サーバモジュールはファイルオープン終了通知の受信を待機し(ステップS3406)、Miの全ての要素の蓄積サーバモジュールからファイルオープン終了通知を受け付けると、送信側サーバの対向の通信サーバモジュールni'へセグメントの受信準備完了通知を送信し(ステップS3407)、セグメント受信処理へ移行する。 When the above step S3404 is completed, the communication server module, to the storage server module of all elements of M i, indicating the opening of the file for the program storage by sending a file open instruction notification (step S3405). Then, the communication server module waits for reception of the file open end notification (step S3406). When the file open end notification is received from the storage server module of all elements of M i , the communication server module n i opposite to the transmitting server is received. A segment reception preparation completion notification is transmitted to '(step S3407), and the process proceeds to segment reception processing.

次に、図35を用いて、セグメント受信処理における通信サーバモジュールの動作を説明する。同図に示すように、受信側サーバの通信サーバモジュールは、Miの各要素に対応する格納終了フラグ、および格納セグメントカウンタを全て“0”に初期化する(ステップS3501およびステップS3502)。この格納終了フラグC1[j]は、Mi_jへのセグメント転送が完了したか否かを示すフラグであり、格納セグメントカウンタC2[j]は、Mi_jへ転送したセグメントの数を示すカウンタである。 Next, the operation of the communication server module in the segment reception process will be described using FIG. As shown in the drawing, the communication server module receiving server initializes the storage completion flag corresponding to each element of M i, and stores the segment counter all "0" (Step S3501 and Step S3502). This storage end flag C1 [j] is a flag indicating whether or not the segment transfer to M i_j is completed, and the storage segment counter C2 [j] is a counter indicating the number of segments transferred to M i_j . .

各フラグ、各カウンタの初期化が終了すると、送信側サーバの対向の通信サーバモジュールni'からの該当番組の新しいセグメントが到着するのを待つ(ステップS3503)。そして、新しいセグメントが到着すると、通信サーバモジュールは、そのセグメントのシーケンス番号qの値および上記の式(14)を用いて、セグメントの転送先蓄積サーバモジュールを示すpの値を求めるとともに(ステップS3504)、および蓄積装置内の該当番組ファイル内におけるセグメント格納位置識別子yの値を求める(ステップS3505)。そして、通信サーバモジュールは、転送先蓄積サーバモジュールmpに対応する格納セグメントカウンタの値をインクリメントする(ステップS3506)。 When the initialization of each flag and each counter is completed, it waits for the arrival of a new segment of the corresponding program from the opposite communication server module n i ′ of the transmitting server (step S3503). When a new segment arrives, the communication server module obtains the value of p indicating the transfer destination storage server module of the segment using the value of the sequence number q of the segment and the above equation (14) (step S3504). ) And the value of the segment storage position identifier y in the corresponding program file in the storage device is obtained (step S3505). The communication server module increments the value of the storage segment counter corresponding to the destination storage server module m p (step S3506).

そして、通信サーバモジュールは、蓄積サーバモジュールmpへ格納すべき該当番組の全てのセグメントの受信が完了したか否か判断する(格納セグメントカウンタの値がLpになっているか否か、ステップS3507)。その結果、蓄積サーバモジュールmpへ格納すべき全てのセグメントの受信が完了していない場合には(ステップS3507否定)、通信サーバモジュールmi'から蓄積サーバモジュールmpへの最後のセグメントの転送ではないことを示す値“0”LASTFLAGにセットし(ステップS3508)、送信側サーバから受信したセグメントのマルチメディアデータに対して、このLASTFLAG、サーバ内番組データ、および位置識別子yを付与するとともに(ステップS3509)、このセグメントを蓄積サーバモジュールmpへ転送して(ステップS3510)、次のセグメント到着を待つ。 The communication server module, whether the value of all received segments to determine whether complete (stores the segment counter of the relevant program to be stored in the storage server module m p is in L p, step S3507 ). As a result, when the reception of all segments to be stored in the storage server module m p is not completed (step S3507: No), the transfer of the last segment of the communication server module m i 'to the storage server module m p Is set to a value “0” LASTFLAG indicating that it is not (step S3508), and the LASTFLAG, the in-server program data, and the position identifier y are added to the multimedia data of the segment received from the transmitting server ( step S3509), and transfers the segment to the storage server module m p (step S3510), wait for the next segment arrival.

一方、通信サーバモジュールは、蓄積サーバモジュールmpへ格納すべき全てのセグメントの受信が完了している場合には(ステップS3507肯定)、通信サーバモジュールmi'から蓄積サーバモジュールmpへの最後のセグメントの転送であることを示す値“1”をLASTFLAGにセットし(ステップS3511)、送信側サーバから受信したセグメントのマルチメディアデータに対して、このLASTFLAG、サーバ内番組データ、および位置識別子yを付与するとともに(ステップS3512)、このセグメントを蓄積サーバモジュールmpへ転送する(ステップS3513)。そして、蓄積サーバモジュールmpに対応する格納終了フラグの値を“1”にセットする(ステップS3514)。 On the other hand, the communication server module is last when the reception of all segments to be stored in the storage server module m p is completed from (Step S3507: Yes), the communication server module m i 'to the storage server module m p Is set to LASTFLAG (step S3511), and for the multimedia data of the segment received from the transmitting server, this LASTFLAG, in-server program data, and position identifier y are set. with grant (step S3512), and transfers the segment to the storage server module m p (step S3513). Then, set to "1" the value of the storage completion flag corresponding to the storage server module m p (step S3514).

このとき、通信サーバモジュールは、全ての蓄積サーバモジュールに対応する格納終了フラグの値が“1”にセットされているか否か確認する(ステップS3515)。確認の結果、全ての蓄積サーバモジュールに対応する格納終了フラグの値が“1”にセットされている場合には(ステップS3515肯定)、通信サーバモジュールは、自身が担当する全ての蓄積サーバモジュールに対するセグメントの転送が完了したことになるため、送信側サーバの対向の通信サーバモジュールni'に対して、その旨を通知するための格納完了通知を送信するとともに(ステップS3516)、管理DBにも同様の格納完了通知を送信して(ステップS3517)、全ての処理を終了する。 At this time, the communication server module checks whether or not the value of the storage end flag corresponding to all the storage server modules is set to “1” (step S3515). As a result of the confirmation, when the value of the storage end flag corresponding to all the storage server modules is set to “1” (Yes in step S3515), the communication server module applies to all the storage server modules in charge of itself. Since the transfer of the segment is completed, a storage completion notification for notifying that is transmitted to the communication server module n i ′ opposite to the transmitting server (step S3516), and also to the management DB A similar storage completion notification is transmitted (step S3517), and all the processes are terminated.

これとは反対に、全ての蓄積サーバモジュールに対応する格納終了フラグの値が“1”にセットされていない場合には(ステップS3515否定)、通信サーバモジュールは、次のセグメントの到着を待つ。   On the other hand, if the value of the storage end flag corresponding to all the storage server modules is not set to “1” (No in step S3515), the communication server module waits for the arrival of the next segment.

[受信側サーバの蓄積サーバモジュールの動作(実施例2)]
続いて、図を参照しつつ、受信側サーバの蓄積サーバモジュールの動作を説明する。集合Mに含まれる各蓄積サーバモジュールがそれぞれ独立に動作を実行する。
[Operation of Storage Server Module of Receiving Server (Example 2)]
Next, the operation of the storage server module of the receiving server will be described with reference to the drawings. Each storage server module included in the set M performs an operation independently.

すなわち、図36に示すように、集合Miに含まれる蓄積サーバモジュールは、通信サーバモジュールmi'から番組格納用のファイルオープン指示があると(すなわち、ファイルオープン指示通知を受信すると、ステップS3601肯定)、自身の蓄積装置上に該当番組データの書込み用ファイルをオープンした後(ステップS3602)、通信サーバモジュールmi'へファイルオープン終了通知を送信する(ステップS3603)。 That is, as shown in FIG. 36, when the storage server module included in the set M i receives a file open instruction for storing a program from the communication server module m i ′ (that is, when a file open instruction notification is received, step S3601). Yes), after opening the write file of the relevant program data on its storage device (step S3602), it sends a file open completion notification to the communication server module m i '(step S3603).

そして、蓄積サーバモジュールは、通信サーバモジュールmi'から該当番組の新しいセグメントが到着するのを待つ(ステップS3604)。新しいセグメントが到着すると、蓄積サーバモジュールは、そのセグメント内のマルチメディアデータを番組格納用ファイルに格納する(ステップS3605)。このとき、セグメント内の位置識別子yによって指定された番組ファイル内の位置にマルチメディアデータを格納する。 Then, the storage server module waits for a new segment of the corresponding program to arrive from the communication server module m i ′ (step S3604). When a new segment arrives, the storage server module stores the multimedia data in the segment in the program storage file (step S3605). At this time, the multimedia data is stored at the position in the program file designated by the position identifier y in the segment.

マルチメディアデータを格納した後、蓄積サーバモジュールは、受信したセグメント内のLASTFLAGの値が“1”であるか否か確認する(ステップS3606)。確認の結果、LASTFLAGの値が“1”である場合には(ステップS3606肯定)、これ以上、通信サーバモジュールmi'から新しい番組のセグメントが到着することはないので、番組格納用ファイルをクローズして(ステップS3607)、全ての処理を終了する。これとは反対に、LASTFLAGの値が“1”ではない場合には(ステップS3606否定)、次のセグメント到着を待つ。以上が受信側サーバの動作の説明である。 After storing the multimedia data, the accumulation server module checks whether or not the value of LASTFLAG in the received segment is “1” (step S3606). As a result of the confirmation, when the value of LASTFLAG is "1" (step S3606: Yes), further, since the segments of the new program from the communication server module m i 'will not arrive, closes the file for program storage (Step S3607) and all the processes are terminated. On the other hand, if the value of LASTFLAG is not “1” (No at step S3606), the next segment arrival is waited for. The above is the description of the operation of the receiving server.

[実施例2による効果]
上述してきたように、実施例2では、上記した課題を解決するための手段(方式(2))を用いて、構成の異なる2台の分散RAID型マルチメディアサーバ装置間で、一方のマルチメディアサーバ装置内の蓄積装置に分散格納された1番組のマルチメディアデータのセグメントを4台の通信サーバモジュールを用いて、他方のマルチメディアサーバ装置に対して並列に転送し、転送先のマルチメディアサーバ装置では、受信したマルチメディアデータのセグメントを順序正しく並び替えて、自装置内の蓄積装置に格納する場合を説明した。このようなことから、実施例2によれば、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で送受信することが可能である。
[Effects of Example 2]
As described above, in the second embodiment, one multimedia is provided between two distributed RAID multimedia server apparatuses having different configurations using the means (method (2)) for solving the above-described problem. A multimedia server segment of one program distributed and stored in a storage device in the server device is transferred in parallel to the other multimedia server device using four communication server modules, and the destination multimedia server In the device, the case where the received multimedia data segments are rearranged in order and stored in the storage device in the device has been described. For this reason, according to the second embodiment, it is possible to transmit / receive multimedia information of one program between distributed multimedia servers at a speed exceeding the hardware performance limit of one communication server module. It is.

また、実施例2によれば、受信側として機能する分散RAID型マルチメディアサーバ装置において、各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみに、受信したセグメントの書き込みを行うので、蓄積サーバモジュールおよび通信サーバモジュール間で排他的に書き込みアクセスを行うことを保証することができ、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で高速に送受信することが可能であるとともに、受信側サーバの実装を容易にすることが可能である。   Further, according to the second embodiment, in the distributed RAID multimedia server device functioning as the receiving side, a communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in storage devices provided with the respective segments. Each communication server module writes the received segment only to the storage server module assigned to each communication server module, thus guaranteeing exclusive write access between the storage server module and the communication server module. In addition, it is possible to transmit and receive multimedia information of a certain program between distributed multimedia servers at high speed, and to facilitate the implementation of the receiving server.

引き続き、以下では、上記の課題を解決するための手段で説明した方式(3)に基づく本発明の一実施形態を実施例3として説明する。なお、以下の実施例2では、上記の実施例1および2と同様のシステム構成(図8参照)を用いて、分散RAID型マルチメディアサーバ装置1内の蓄積装置3〜8を跨いで格納されたマルチメディアデータを分散RAID型マルチメディアサーバ装置2に転送し、分散RAID型マルチメディアサーバ装置2内の蓄積装置1〜5に跨って格納される実施例1および2と同様の動作(図16参照)について説明する。   In the following, an embodiment of the present invention based on the method (3) described in the means for solving the above problem will be described as a third embodiment. In the following second embodiment, data is stored across the storage devices 3 to 8 in the distributed RAID type multimedia server device 1 using the same system configuration (see FIG. 8) as in the first and second embodiments. The same operations as in the first and second embodiments in which the multimedia data is transferred to the distributed RAID multimedia server device 2 and stored across the storage devices 1 to 5 in the distributed RAID multimedia server device 2 (FIG. 16). Reference) will be described.

また、実施例3では、送信側サーバ、すなわち、図8に例示する分散RAID型マルチメディアサーバ装置1に、課題を解決するための手段の方式(1)内で説明した写像Ψとして上記の実施例1と同様の写像を用い、受信側サーバ、すなわち、分散RAID型マルチメディアサーバ装置2に、課題を解決するための手段の方式(2)内で説明した写像Ωとして上記の実施例2と同様の写像を用いるものとする。したがって、実施例3においても、実施例1において説明した上記の式(45)〜(47)、実施例2において説明した上記の式(55)〜(57)が同様に成立する。また、実施例では、上記の式(47)により、上記の方式(3)で説明した上記の式(39)は以下に示す式(71)のように具体化される。   Further, in the third embodiment, the above-described implementation as the mapping Ψ described in the method (1) of the means for solving the problem is applied to the transmission side server, that is, the distributed RAID type multimedia server device 1 illustrated in FIG. Using the mapping similar to that in Example 1, the receiving side server, that is, the distributed RAID type multimedia server apparatus 2 uses the above-mentioned Example 2 as the mapping Ω described in the method (2) of the means for solving the problem. A similar mapping shall be used. Accordingly, also in the third embodiment, the above expressions (45) to (47) described in the first embodiment and the above expressions (55) to (57) described in the second embodiment are similarly established. Further, in the embodiment, the above equation (39) described in the above method (3) is embodied as the following equation (71) by the above equation (47).

Figure 0004879815
Figure 0004879815

また、実施例3では、図8に示す制御端末および管理DBは実施例1および2と同様の動作を行うので、詳細な説明は省略する。以下に、実施例3に係る送受信サーバの動作を説明する。   Moreover, in Example 3, since the control terminal and management DB which are shown in FIG. 8 perform the same operation | movement as Example 1 and 2, detailed description is abbreviate | omitted. The operation of the transmission / reception server according to the third embodiment will be described below.

[送信側サーバの通信サーバモジュールの動作(実施例3)]
まず、図を参照しつつ、送信側サーバの通信サーバモジュールの動作を説明する。送信側サーバでは、上記の実施例1と同様に、集合N’に含まれる1つ1つの通信サーバモジュールがそれぞれ独立に動作を実行するが、以下に説明する点が実施例1とは異なる。
[Operation of Communication Server Module of Sending Server (Example 3)]
First, the operation of the communication server module of the transmitting server will be described with reference to the drawings. In the transmitting server, each communication server module included in the set N ′ independently operates as in the first embodiment, but differs from the first embodiment in the points described below.

具体的には、図37に示すステップS3704の動作(Mj(1≦j≦S2)を求める計算を実行する点)が上記の実施例1とは異なり、それ以外の動作は実施例1で説明した送信側サーバの通信サーバモジュールと同様である(図19参照)。このステップS3704による計算結果は、図38に示すセグメント転送処理において、セグメントを受信側サーバへ送信する際の宛て先の通信サーバモジュールを決定するために必要となるものである。 Specifically, the operation of step S3704 shown in FIG. 37 (the point at which calculation for obtaining M j (1 ≦ j ≦ S 2 ) is executed) is different from the first embodiment, and other operations are the same as those in the first embodiment. This is the same as the communication server module of the transmitting server described in (see FIG. 19). The calculation result in step S3704 is necessary for determining the destination communication server module for transmitting the segment to the receiving server in the segment transfer process shown in FIG.

また、図38に示すセグメント転送処理についても、ステップS3808およびステップS3809の動作が上記の実施例1とは異なり、それ以外の動作は実施例1で説明した送信側サーバの通信サーバモジュールと同様である(図20参照)。すなわち、上記の実施例1では、セグメントの送信先となる受信側サーバの通信サーバモジュールは固定(対向の通信サーバモジュールmi')であるのに対し、実施例3では、ステップS3808によって求められる宛先に対して各セグメントを送信する。これにより、受信側サーバの通信サーバモジュールmj'(1≦j≦S2)が、受信側サーバの集合Mjに含まれる蓄積サーバモジュール以外の蓄積サーバモジュールにアクセスしないという排他制御を実現している。 Also, in the segment transfer process shown in FIG. 38, the operations in steps S3808 and S3809 are different from those in the first embodiment, and the other operations are the same as those in the communication server module of the transmitting server described in the first embodiment. Yes (see FIG. 20). In other words, in the first embodiment, the communication server module of the receiving server that is the transmission destination of the segment is fixed (opposite communication server module m i ′), whereas in the third embodiment, the communication server module is obtained in step S3808. Send each segment to the destination. As a result, the exclusive control that the communication server module m j ′ (1 ≦ j ≦ S 2 ) of the receiving server does not access the storage server modules other than the storage server modules included in the receiving server set M j is realized. ing.

ここで、セグメントの送信先となる受信側サーバの通信サーバモジュールを求める計算についての理解を助けるために、送信側サーバの通信サーバモジュールn1'の動作を例に挙げて、この通信サーバモジュールn1'が送信するセグメントについて計算した結果を以下の式(72)に示す。 Here, in order to assist in understanding the calculation for obtaining the communication server module of the receiving server that is the transmission destination of the segment, the operation of the communication server module n 1 ′ of the transmitting server is taken as an example, and this communication server module n The calculation result for the segment transmitted by 1 ′ is shown in the following formula (72).

Figure 0004879815
Figure 0004879815

このように、図16に示した分散RAID型マルチメディアサーバ装置1および2の蓄積サーバモジュールの蓄積装置上で、該当番組データのシーケンス番号のそれぞれに対応するセグメントが格納された位置、および前述の各集合の各構成要素と、上記の式(72)に示す計算結果を比較することにより、上記の式(48)によって送出セグメントへのシーケンス番号の付与が正しく行われ、また、上記の式(40)および(71)によって送信先通信サーバモジュールの選定が正しく行われていることが確認できる。   As described above, on the storage devices of the storage server modules of the distributed RAID type multimedia server devices 1 and 2 shown in FIG. 16, the position where the segment corresponding to each sequence number of the corresponding program data is stored, and the above-mentioned By comparing each component of each set with the calculation result shown in the above equation (72), the sequence number is correctly assigned to the transmission segment by the above equation (48), and the above equation ( 40) and (71), it can be confirmed that the destination communication server module is correctly selected.

[送信側サーバの蓄積サーバモジュールの動作(実施例3)]
実施例3の送信側サーバの蓄積サーバモジュールの動作は、図39に示すように、上記の実施例1で説明した蓄積サーバモジュールの動作(図24参照)と全く同様であるため説明は省略する。集合Nに含まれる各通信サーバモジュールがそれぞれ独立に図39に示す動作を実行する点も同様である。以上が、送信側サーバの動作の説明である。
[Operation of Storage Server Module of Sending Server (Example 3)]
As shown in FIG. 39, the operation of the storage server module of the transmission server according to the third embodiment is exactly the same as the operation of the storage server module described in the first embodiment (see FIG. 24), and thus the description thereof is omitted. . The same is true in that each communication server module included in the set N executes the operation shown in FIG. 39 independently. The above is the description of the operation of the transmitting server.

[受信側サーバの通信サーバモジュールの動作(実施例3)]
続いて、図を参照しつつ、受信側サーバの通信サーバモジュールの動作を説明する。動作の説明に入る前に、図40を用いて、実施例3に係る受信側サーバの通信サーバモジュールの構成を説明する。実施例3に係る受信側サーバの通信サーバモジュールは、本体およびメッセージ受信部の2つの動作主体を備えて構成される。
[Operation of Communication Server Module of Receiving Server (Example 3)]
Next, the operation of the communication server module of the receiving server will be described with reference to the drawings. Before describing the operation, the configuration of the communication server module of the receiving server according to the third embodiment will be described with reference to FIG. The communication server module of the receiving server according to the third embodiment is configured to include two operating entities, a main body and a message receiving unit.

メッセージ受信部は、同図に示すように、端末側ネットワークを経由して、送信側サーバの複数の通信サーバモジュールから送信されてくる、ある番組のマルチメディアデータのセグメント、あるいは、転送終了通知を到着順に1つずつ受信し、転送終了通知の場合は転送終了フラグ操作を行い、セグメントの場合はセグメントバッファに格納する処理を行う。   As shown in the figure, the message receiving unit sends a multimedia data segment of a certain program or a transfer end notification transmitted from a plurality of communication server modules of the transmitting server via the terminal side network. One by one is received in the order of arrival, and in the case of a transfer end notification, a transfer end flag operation is performed, and in the case of a segment, a process of storing in the segment buffer is performed.

ここで、実施例3では、送信側サーバの通信サーバモジュール同士が相互に同期を取ることなく非同期に動作していることや、端末側ネットワークの伝送特性に遅延を一定に保つこととする等の仮定をしていないことから、端末側ネットワークを経由して送信されてくる、ある番組のマルチメディアデータのセグメントが、どのような順序で通信サーバモジュールに到着するかは不定である。そこで、受信側サーバの通信サーバモジュール本体は、セグメントバッファに一時的に到着順に格納されたマルチメディアデータのセグメントを検索し、後述するように然るべき順序で蓄積サーバモジュールに転送する処理を行う。   Here, in the third embodiment, the communication server modules of the transmission side server are operating asynchronously without being synchronized with each other, the delay in the transmission characteristics of the terminal side network is kept constant, etc. Since no assumption is made, it is undefined in what order the multimedia data segments of a program transmitted via the terminal-side network arrive at the communication server module. Therefore, the communication server module main body of the receiving server searches for the segments of multimedia data temporarily stored in the segment buffer in the order of arrival, and performs processing of transferring them to the storage server module in an appropriate order as will be described later.

まず、図41を用いて、メッセージ受信部の動作を説明する。同図に示すように、メッセージ受信部は、本体によって起動されると(ステップS4101)、送信側サーバの各通信サーバモジュールに対応する転送終了フラグを全て“0”に初期化する(ステップS4102)。実施例3では、上記の実施例1と同様に、送信側サーバの各通信サーバモジュールがセグメントの転送終了を通知してくるため、本フラグを用いて各通信サーバモジュールからの転送終了通知の受信が完了したか否かを記録する。   First, the operation of the message receiving unit will be described with reference to FIG. As shown in the figure, when the message receiving unit is activated by the main body (step S4101), all the transfer end flags corresponding to the respective communication server modules of the transmitting server are initialized to “0” (step S4102). . In the third embodiment, as in the first embodiment, each communication server module of the sending server notifies the end of the transfer of the segment, and therefore, using this flag, the transfer end notification is received from each communication server module. Record whether or not

転送終了フラグの初期化後、メッセージ受信部は、送信側サーバのいずれかの通信サーバモジュールからのメッセージを待つ(ステップS4103)。そして、メッセージ受信部は、送信側サーバのある通信サーバモジュールni'からメッセージを受信すると(ステップS4103肯定)、受信したメッセージが転送終了通知であるか否か確認する(ステップS4104)。確認の結果、転送終了通知ではない場合には(ステップS4104否定)、メッセージ受信部は、受信したメッセージがセグメントであるものと認識し、セグメントをセグメントバッファ内に格納する(ステップS4105)。そして、メッセージ受信部は、次のメッセージを待つ。 After initialization of the transfer end flag, the message receiving unit waits for a message from one of the communication server modules of the transmitting server (step S4103). When the message receiving unit receives a message from the communication server module n i ′ with the transmitting server (Yes at Step S4103), the message receiving unit confirms whether or not the received message is a transfer end notification (Step S4104). As a result of the confirmation, if it is not a transfer end notification (No at Step S4104), the message receiving unit recognizes that the received message is a segment, and stores the segment in the segment buffer (Step S4105). Then, the message receiving unit waits for the next message.

一方、転送終了通知である場合には(ステップS4104肯定)、メッセージ受信部は、通信サーバモジュールni'に対応する転送終了フラグの値を“1”にセットして(ステップS4106)、以後、通信サーバモジュールni'からメッセージが転送されてこないことを記録する。このとき、メッセージ受信部は、送信側サーバの全ての通信サーバモジュールに対応する各転送フラグが“1”にセットされているか否か確認する(ステップS4107)。確認の結果、各通信サーバモジュールに対応する転送フラグが全て“1”にセットされている場合には(ステップS4107肯定)、メッセージ受信部は、全ての処理を終了する。これとは反対に、各通信サーバモジュールに対応する転送フラグの全てが“1”にセットされてはいない場合には(ステップS4107否定)、次のメッセージを待つ。 On the other hand, if it is a transfer end notification (Yes at step S4104), the message receiving unit sets the value of the transfer end flag corresponding to the communication server module n i ′ to “1” (step S4106). Record that no message is transferred from the communication server module n i ′. At this time, the message receiving unit checks whether or not each transfer flag corresponding to all the communication server modules of the transmitting server is set to “1” (step S4107). As a result of the confirmation, if all the transfer flags corresponding to the respective communication server modules are set to “1” (Yes at Step S4107), the message receiving unit ends all the processes. On the other hand, when all the transfer flags corresponding to each communication server module are not set to “1” (No in step S4107), the next message is waited for.

続いて、受信側の通信サーバモジュールの本体の動作について説明する。なお、この本体の動作は、図42に示すステップS4202の動作が追加されている点と、および図31のステップS3104の動作を必要としない点が上記の実施例2と異なっている。すなわち、実施例3では、送信側サーバの通信サーバモジュールはからセグメントの転送終了が通知されるので、後者の処理を必要としない。その他の本体の動作は、図31に示す動作と同様である。   Next, the operation of the main body of the receiving communication server module will be described. The operation of the main body is different from that of the second embodiment in that the operation in step S4202 shown in FIG. 42 is added and the operation in step S3104 in FIG. 31 is not required. That is, in the third embodiment, since the communication server module of the transmitting server is notified of the end of the segment transfer, the latter processing is not necessary. The other operations of the main body are the same as the operations shown in FIG.

図42に示す処理を終えると、本体は、図43に示すように、セグメント転送処理に移行する。本体は、この転送処理において、課題を解決するための手段内の方式(3)で説明したように、図42に示すステップS4204で求めた集合Miの蓄積サーバモジュールに対して、mi_1からmi_|Mi|をこの順に巡回しながら、セグメントを転送し、その結果、各蓄積装置内の番組ファイルへの書き込み位置を先頭からシーケンシャルに変化させることを達成しなければならない(注:受信側サーバにおける蓄積サーバモジュールへのアクセスの通信サーバモジュール間での排他制御については、送信側サーバによるセグメントの転送先制御により達成される)。 When the process shown in FIG. 42 is finished, the main body proceeds to the segment transfer process as shown in FIG. As described in the method (3) in the means for solving the problem in the transfer process, the main body starts with mi_1 from the accumulation server modules of the set M i obtained in step S4204 shown in FIG. While mi_ | Mi | is cycled in this order, the segments must be transferred, and as a result, the write position to the program file in each storage device must be changed sequentially from the beginning (Note: Receiver side) The exclusive control between the communication server modules for the access to the storage server module in the server is achieved by the transfer destination control of the segment by the transmitting server).

このようなことから、この転送処理では、蓄積装置mi_p(1≦p≦|Mi|)内の番組ファイルのy(1≦y)番目の位置に格納されるべきセグメントを、セグメントの到着順序とは無関係に、上記の式(41)によって定まるx番目にセグメントバッファから抽出して転送する動作を行う。 For this reason, in this transfer process, the segment to be stored at the y (1 ≦ y) th position of the program file in the storage device m i_p (1 ≦ p ≦ | M i |) Regardless of the order, an operation of extracting and transferring from the xth segment buffer determined by the above equation (41) is performed.

この動作は、x番目に転送されるセグメントに、上記の実施例2で説明した式(60)によって定まるシーケンス番号qが付与されていることに着目すれば、x、p、yのそれぞれ値をインクリメントしながら、xの値に対応するシーケンス番号qを持つセグメントをセグメントバッファから検索し、そのセグメントを蓄積装置mi_pへのy番目のセグメントとして転送することで実現されることが分かる。 This operation is based on the fact that the sequence number q determined by the equation (60) described in the second embodiment is assigned to the x-th transferred segment. It can be seen that this is realized by searching the segment buffer for the segment having the sequence number q corresponding to the value of x while incrementing and transferring the segment as the y-th segment to the storage device mi_p .

以下に、図43を用いて、この動作の流れを説明する。本体は、転送セグメント番号xの値を“0”に初期化するとともに(ステップS4301)、セグメントの転送先蓄積サーバモジュールを示す識別子p、および同セグメントの格納位置識別子yをそれぞれ“1”に初期化する(ステップS4302)。そして、図42に示すステップS4203で求められたiの値、同図に示すステップS4204で求められた集合Mi、および現在のxの値を用いて、次に転送すべきセグメントのシーケンス番号qの値を上記の式(60)によって算出する(ステップS4303)。 The flow of this operation will be described below with reference to FIG. The main body initializes the value of the transfer segment number x to “0” (step S4301), and initializes the identifier p indicating the transfer destination storage server module of the segment and the storage location identifier y of the segment to “1”, respectively. (Step S4302). Then, using the value of i obtained in step S4203 shown in FIG. 42, the set M i obtained in step S4204 shown in FIG. 42, and the current value of x, the sequence number q of the segment to be transferred next Is calculated by the above equation (60) (step S4303).

このとき、本体は、セグメントバッファ内を検索して、同バッファ内に未処理のセグメントが存在するか否か判断する(ステップS4304)。その結果、セグメントバッファ内に未処理のセグメントが存在する場合には(ステップS4304肯定)、上記のステップS4303で算出したシーケンス番号qのセグメントが存在するか否か判断する(ステップS4305)。その結果、シーケンス番号qのセグメントが存在する場合には(ステップS4305肯定)、そのセグメントのマルチメディアデータに、管理DBによって通知された番組のサーバ内番組データ、および位置識別子yを付与し(ステップS4306)、このセグメントを蓄積サーバモジュールmi_pに転送して(ステップS4307)、転送したセグメントをセグメントバッファから削除する(ステップS4308)。そして、本体は、x、p、yの値を適切にインクリメントして(ステップS4309〜ステップS4311)、再び、セグメントバッファの検索に戻る。 At this time, the main body searches the segment buffer and determines whether or not there is an unprocessed segment in the buffer (step S4304). As a result, when there is an unprocessed segment in the segment buffer (Yes in step S4304), it is determined whether or not there is a segment with the sequence number q calculated in step S4303 (step S4305). As a result, if the segment with the sequence number q exists (Yes at step S4305), the program data in the server of the program notified by the management DB and the position identifier y are assigned to the multimedia data of the segment (step S4305). In step S4306, the segment is transferred to the storage server module mi_p (step S4307), and the transferred segment is deleted from the segment buffer (step S4308). Then, the main body appropriately increments the values of x, p, and y (steps S4309 to S4311), and returns to the segment buffer search again.

一方、セグメントバッファ内に存在する未処理のセグメントの中に、シーケンス番号qのセグメントが存在しない場合には(ステップS4305否定)、本体は、シーケンス番号qのセグメントがセグメントバッファ内に格納されるまで、セグメントバッファ内の検索を繰り返す。   On the other hand, when the segment with the sequence number q does not exist among the unprocessed segments existing in the segment buffer (No in step S4305), the main body stores the segment with the sequence number q until it is stored in the segment buffer. Repeat the search in the segment buffer.

ここで、ステップS4304の説明に戻ると、セグメントバッファ内に未処理のセグメントが存在しない場合には(ステップS4304肯定)、本体は、転送終了フラグを参照して、転送終了フラグの値が全て“1”になっているか否か確認する(ステップS4312)。確認の結果、転送終了フラグの値が全て“1”になっている場合には(ステップS4312肯定)、本体は、これ以上、送信側サーバからセグメントが送信されてくることはないため、|Mi|の全蓄積サーバモジュールに対して転送終了通知を送信するとともに(ステップS4313)、管理DBに対しても同様の転送終了通知を送信して(ステップS4314)、処理を終了する。これとは反対に、確認の結果、転送終了フラグの値が全て“1”になってはいない場合には(ステップS4312否定)、本体は、再び、セグメントバッファの検索に戻る。以上が、受信側サーバの動作の説明である。 Here, returning to the description of step S4304, when there is no unprocessed segment in the segment buffer (Yes in step S4304), the main body refers to the transfer end flag, and all the values of the transfer end flag are “ It is confirmed whether or not 1 ″ (step S4312). If the values of the transfer end flag are all “1” as a result of the confirmation (Yes at step S4312), the main unit will not send any more segments from the sending server. A transfer end notification is transmitted to all the storage server modules i | (step S4313), and a similar transfer end notification is also transmitted to the management DB (step S4314), and the process is terminated. On the other hand, if the values of the transfer end flags are not all “1” as a result of the confirmation (No at step S4312), the main body returns to the search for the segment buffer again. The above is the description of the operation of the receiving server.

[受信側サーバの蓄積サーバモジュールの動作(実施例3)]
実施例3の受信側サーバの蓄積サーバモジュールの動作は、図44に示すように、処理の終了判断方法(ステップS4406参照)を除いて、上記の実施例2で説明した蓄積サーバモジュールの動作(図36参照)と全く同様であるため説明は省略する。以上が、受信側サーバの動作の説明である。
[Operation of Storage Server Module of Receiving Server (Example 3)]
As shown in FIG. 44, the operation of the storage server module of the receiving server according to the third embodiment is the same as the operation of the storage server module described in the second embodiment described above except for the process end determination method (see step S4406). The description is omitted because it is exactly the same as that shown in FIG. The above is the description of the operation of the receiving server.

[実施例3による効果]
上述してきたように、実施例3では、上記した課題を解決するための手段(方式(3))を用いて、構成の異なる2台の分散RAID型マルチメディアサーバ装置間で、一方のマルチメディアサーバ装置内の蓄積装置に分散格納された1番組のマルチメディアデータのセグメントを4台の通信サーバモジュールを用いて、他方のマルチメディアサーバ装置に対して並列に転送し、転送先のマルチメディアサーバ装置では、受信したマルチメディアデータのセグメントを順序正しく並び替えて、自装置内の蓄積装置に格納する場合を説明した。このようなことから、実施例3によれば、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で送受信することが可能である。
[Effects of Example 3]
As described above, according to the third embodiment, one multimedia can be used between two distributed RAID type multimedia server apparatuses having different configurations by using the means (method (3)) for solving the above-described problem. A multimedia server segment of one program distributed and stored in a storage device in the server device is transferred in parallel to the other multimedia server device using four communication server modules, and the destination multimedia server In the device, the case where the received multimedia data segments are rearranged in order and stored in the storage device in the device has been described. For this reason, according to the third embodiment, it is possible to transmit / receive multimedia information of one program among distributed multimedia servers at a speed exceeding the hardware performance limit of one communication server module. It is.

また、実施例3によれば、送信側として機能する分散RAID型マルチメディアサーバ装置において、各セグメントを送信する通信サーバモジュールが、受信側として機能する分散RAID型マルチメディアサーバ装置の通信サーバモジュールをセグメントごとに変更するので、ある1番組のマルチメディア情報を分散型マルチメディアサーバ間で高速に送受信する際に柔軟な対応を実現することが可能である。   Further, according to the third embodiment, in the distributed RAID multimedia server device functioning as the transmission side, the communication server module transmitting each segment is the communication server module of the distributed RAID multimedia server device functioning as the reception side. Since it is changed for each segment, it is possible to realize a flexible response when multimedia information of a certain program is transmitted and received at high speed between distributed multimedia servers.

以上のように、本発明に係るマルチメディア情報転送蓄積方法、分散型マルチメディアサーバ装置、分散型マルチメディアサーバシステム、マルチメディア情報転送蓄積方法を実現するプログラムおよび当該プログラムを記録した記録媒体は、1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置において、マルチメディアデータの送受信および蓄積を制御する場合に有用であり、特に、1台の通信サーバモジュールのハードウェアの性能限界を上回る速度で、ある1番組のマルチメディア情報を送受信することに適する。   As described above, the multimedia information transfer and storage method, the distributed multimedia server device, the distributed multimedia server system, the program for realizing the multimedia information transfer and storage method according to the present invention, and the recording medium on which the program is recorded are A plurality of storage server modules that store each segment generated by dividing multimedia data of one program in a storage device included in each segment, and segments received from the storage server module as other In a distributed multimedia server device configured by connecting a communication server module that transmits to an external device and receives a segment received from another external device to the storage server module in a state where communication is possible over a network, the multimedia Data transmission / reception and storage Are useful for controlling, in particular, at a rate greater than the hardware performance limitations of a single communication server module, adapted to send and receive multimedia information of a certain program.

さて、これまで本発明の実施例1〜3について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。   Although the first to third embodiments of the present invention have been described so far, the present invention may be implemented in various different forms other than the above-described embodiments. Therefore, another embodiment included in the present invention will be described below.

(1)システム構成等
図8に示したシステムを構成する分散RAID型マルチメディアサーバ装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、分散RAID型マルチメディアサーバ装置の分散・統合の具体的形態は図示のものに限られず、各通信サーバモジュールおよび各蓄積サーバモジュールをそれぞれ統合して、単数の通信サーバモジュールおよび単数の蓄積サーバモジュールとするなど、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、分散RAID型マルチメディアサーバ装置1にて行なわれる各処理機能(各通信サーバモジュールおよび各蓄積サーバモジュールの動作により実現される処理機能)は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(1) System Configuration, etc. Each component of the distributed RAID type multimedia server device configuring the system shown in FIG. 8 is functionally conceptual and does not necessarily need to be physically configured as illustrated. . That is, the specific form of distribution / integration of the distributed RAID type multimedia server device is not limited to the one shown in the figure, and each communication server module and each storage server module are integrated to provide a single communication server module and a single storage server. All or a part of the module, such as a module, can be configured to be functionally or physically distributed and integrated in arbitrary units according to various loads and usage conditions. Furthermore, each processing function (processing function realized by the operation of each communication server module and each storage server module) performed in the distributed RAID type multimedia server device 1 is entirely or arbitrarily part of the CPU and It can be realized by a program that is analyzed and executed by a CPU, or can be realized as hardware by wired logic.

なお、上記の実施例1〜3で説明した各通信サーバモジュールおよび各蓄積サーバモジュールの動作は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。   The operations of the communication server modules and the storage server modules described in the first to third embodiments can be realized by executing a prepared program on a computer such as a personal computer or a workstation. This program can be distributed via a network such as the Internet. The program can also be executed by being recorded on a computer-readable recording medium such as a hard disk, a flexible disk (FD), a CD-ROM, an MO, and a DVD and being read from the recording medium by the computer.

サーバの構成を限定した場合の本発明の方式における送信側サーバの動作例を示す図である。It is a figure which shows the operation example of the transmission side server in the system of this invention when the structure of a server is limited. サーバの構成を限定した場合の本発明の方式における受信側サーバの動作例を示す図である。It is a figure which shows the operation example of the receiving side server in the system of this invention when the structure of a server is limited. 構成が一般化された複数の分散RAID型マルチメディアサーバ装置からなるシステムの構成例を示す図である。It is a figure which shows the structural example of the system which consists of a some distributed RAID type | mold multimedia server apparatus by which the structure was generalized. 本発明の方式が実現する動作の概略を説明するための図である。It is a figure for demonstrating the outline of the operation | movement which the system of this invention implement | achieves. 集合Nの要素を集合N’の要素へ対応させる写像Ψの説明図である。It is explanatory drawing of mapping (PSI) which matches the element of the set N to the element of the set N '. 蓄積サーバモジュールを割り当てられた通信サーバモジュールの動作説明図である。It is operation | movement explanatory drawing of the communication server module to which the storage server module was allocated. 写像Ψを具体的に規定した場合のセグメント格納方法を説明するための図である。It is a figure for demonstrating the segment storage method when mapping Ψ is prescribed | regulated concretely. 本発明の実施例1の説明に用いるシステム構成図である。It is a system configuration figure used for explanation of Example 1 of the present invention. 蓄積装置内の番組データファイルの説明図である。It is explanatory drawing of the program data file in a storage device. 実施例1のシステムにおける制御端末の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the control terminal in the system of Example 1. FIG. 制御端末から管理DBへの転送要求メッセージの形式を示す図である。It is a figure which shows the format of the transfer request message from a control terminal to management DB. 実施例1の送信側サーバにおける番組データの格納方式を説明するための図である。FIG. 3 is a diagram for explaining a program data storage method in the transmission server according to the first embodiment. 実施例1のシステムにおける管理DBの動作を示すフローチャートである。It is a flowchart which shows operation | movement of management DB in the system of Example 1. FIG. 実施例1のシステムにおける管理DBの動作を示すフローチャートである。It is a flowchart which shows operation | movement of management DB in the system of Example 1. FIG. 管理DBが管理するデータベースの内容を示す図である。It is a figure which shows the content of the database which management DB manages. 実施例1の送受信側サーバにおける集合N、N’、M、M’の設定の様子をまとめて示す図である。It is a figure which shows collectively the mode of the setting of set N, N ', M, M' in the transmission / reception side server of Example 1. FIG. 管理DBから通信サーバモジュールへ送信される送信開始通知の形式を示す図である。It is a figure which shows the format of the transmission start notification transmitted to a communication server module from management DB. 管理DBから通信サーバモジュールへ送信される蓄積開始通知の形式を示す図である。It is a figure which shows the format of the accumulation | storage start notification transmitted from management DB to a communication server module. 実施例1の送信側サーバの通信サーバモジュールの動作を示すフローチャートである。6 is a flowchart illustrating an operation of a communication server module of a transmission side server according to the first exemplary embodiment. 実施例1の送信側サーバの通信サーバモジュールの動作を示すフローチャートである。6 is a flowchart illustrating an operation of a communication server module of a transmission side server according to the first exemplary embodiment. 実施例1で規定した写像Ψを具体的に示す図である。It is a figure which shows concretely mapping (PSI) prescribed | regulated in Example 1. FIG. 通信サーバモジュールからのセグメント要求通知とセグメントの形式を示す図である。It is a figure which shows the segment request notification from a communication server module, and the format of a segment. 送信側サーバの通信サーバモジュールから送信されるセグメントの形式を示す図である。It is a figure which shows the format of the segment transmitted from the communication server module of a transmission side server. 実施例1の送信側サーバの蓄積サーバモジュールの動作を示すフローチャートである。6 is a flowchart illustrating an operation of an accumulation server module of a transmission side server according to the first exemplary embodiment. 送信側サーバにおける番組ファイルからのセグメント読出し処理を説明するための図である。It is a figure for demonstrating the segment reading process from the program file in a transmission side server. 実施例1の受信側サーバの通信サーバモジュールの動作を示すフローチャートである。6 is a flowchart illustrating an operation of a communication server module of the receiving server according to the first exemplary embodiment. 実施例1の受信側サーバの通信サーバモジュールの動作を示すフローチャートである。6 is a flowchart illustrating an operation of a communication server module of the receiving server according to the first exemplary embodiment. 受信側サーバ内部におけるセグメントの形式を示す図である。It is a figure which shows the format of the segment in the receiving side server inside. 実施例1の受信側サーバの蓄積サーバモジュールの動作を示すフローチャートである。6 is a flowchart illustrating the operation of the storage server module of the receiving server according to the first embodiment. 受信側サーバにおけるセグメントの番組ファイルへの格納処理を説明するための図である。It is a figure for demonstrating the storage process to the program file of the segment in the receiving side server. 実施例2の送信側サーバの通信サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating an operation of a communication server module of a transmission side server according to the second embodiment. 実施例2の送信側サーバの通信サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating an operation of a communication server module of a transmission side server according to the second embodiment. 実施例2の送信側サーバの蓄積サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating the operation of the storage server module of the transmission side server according to the second embodiment. 実施例2の受信側サーバの通信サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating an operation of a communication server module of a receiving server according to the second embodiment. 実施例2の受信側サーバの通信サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating an operation of a communication server module of a receiving server according to the second embodiment. 実施例2の受信側サーバの蓄積サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating the operation of the storage server module of the receiving server according to the second embodiment. 実施例3の送信側サーバの通信サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating an operation of a communication server module of a transmission side server according to the third embodiment. 実施例3の送信側サーバの通信サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating an operation of a communication server module of a transmission side server according to the third embodiment. 実施例3の送信側サーバの蓄積サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating the operation of the storage server module of the transmission side server according to the third embodiment. 実施例3の受信側サーバの通信サーバモジュールの構成図である。FIG. 10 is a configuration diagram of a communication server module of a receiving server according to a third embodiment. 実施例3の受信側サーバの通信サーバモジュールにおけるメッセージ受信部の動作を示すフローチャートである。12 is a flowchart illustrating an operation of a message receiving unit in a communication server module of a receiving server according to the third embodiment. 実施例3の受信側サーバの通信サーバモジュールにおける本体の動作を示すフローチャートである。14 is a flowchart illustrating the operation of the main body in the communication server module of the receiving server according to the third embodiment. 実施例3の受信側サーバの通信サーバモジュールにおける本体の動作を示すフローチャートである。14 is a flowchart illustrating the operation of the main body in the communication server module of the receiving server according to the third embodiment. 実施例3の受信側サーバの蓄積サーバモジュールの動作を示すフローチャートである。10 is a flowchart illustrating the operation of the storage server module of the receiving server according to the third embodiment. 従来の分散RAID型マルチメディアサーバ装置の例を示す図である。It is a figure which shows the example of the conventional distributed RAID type | mold multimedia server apparatus. 従来の分散RAID型マルチメディアサーバ装置における受信処理の概要を説明するための図である。It is a figure for demonstrating the outline | summary of the reception process in the conventional distributed RAID type | mold multimedia server apparatus. 従来の分散RAID型マルチメディアサーバ装置における送信処理の概要を説明するための図である。It is a figure for demonstrating the outline | summary of the transmission process in the conventional distributed RAID type | mold multimedia server apparatus. 従来の分散RAID型マルチメディアサーバ装置における複数番組処理の例を示す図である。It is a figure which shows the example of the multiple program process in the conventional distributed RAID type | mold multimedia server apparatus.

Claims (10)

1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置において、マルチメディアデータの送受信および蓄積を制御するマルチメディア情報転送蓄積方法であって、
通信速度要求値とともにマルチメディアデータ転送要求を受け付けて、前記分散型マルチメディアサーバ間で1番組のマルチメディアデータがいくつかに分割された各セグメントの転送を行う場合に、送信側として機能する分散型マルチメディアサーバが、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、当該仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信する送信工程と、
受信側として機能する分散型マルチメディアサーバが、送信側として機能する分散型マルチメディアサーバにおいて前記各セグメントを送信するために用いられた通信サーバモジュールと同じ台数の通信サーバモジュールを使用して当該各セグメントを受信する受信工程と、
受信側として機能する分散型マルチメディアサーバが、前記受信工程により各セグメントを受信する際に使用した通信サーバモジュールの台数以上の台数の蓄積サーバモジュールにより、受信した各セグメントを各蓄積装置に分散格納する格納工程と、
を含んだことを特徴とするマルチメディア情報転送蓄積方法。
A plurality of storage server modules that store each segment generated by dividing multimedia data of one program in a storage device included in each segment, and segments received from the storage server module as other In a distributed multimedia server device configured by connecting a communication server module that transmits to an external device and receives a segment received from another external device to the storage server module in a state where communication is possible over a network, the multimedia A multimedia information transfer storage method for controlling data transmission / reception and storage,
A distribution functioning as a transmission side when receiving a multimedia data transfer request together with a communication speed request value and transferring each segment in which the multimedia data of one program is divided into several between the distributed multimedia servers Type multimedia server temporarily sets the number of communication server modules used to transmit each segment distributed and stored in each storage device by each storage server module according to the communication speed request value received together with the data transfer request However, when the temporarily set number of communication server modules exist in a usable state, the temporary set number of communication server modules are used to establish a distributed multimedia server functioning as a receiving side. Each segment is sent in parallel, and the temporarily set number of communication server modules A transmission process in which each segment is transmitted in parallel to the distributed multimedia server functioning as a reception side using the maximum number of communication server modules within the usable range when it does not exist in a usable state. When,
The distributed multimedia server functioning as the receiving side uses the same number of communication server modules as the communication server modules used for transmitting each segment in the distributed multimedia server functioning as the transmitting side. Receiving a segment; and
The distributed multimedia server functioning as a receiving side distributes and stores each received segment in each storage device by the number of storage server modules equal to or more than the number of communication server modules used when receiving each segment in the reception process. A storing step to perform,
A multimedia information transfer and storage method comprising:
前記送信側として機能する分散型マルチメディアサーバにおいて、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行う工程をさらに含んだことを特徴とする請求項1に記載のマルチメディア情報転送蓄積方法。   In the distributed multimedia server functioning as the transmission side, a communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in storage devices provided in the respective segments, and each communication server module is The multimedia information transfer and storage method according to claim 1, further comprising a step of reading a segment to be transmitted from only the storage server module assigned to. 前記受信側として機能する分散型マルチメディアサーバにおいて、前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみに、受信したセグメントの書き込みを行う工程をさらに含んだことを特徴とする請求項1に記載のマルチメディア情報転送蓄積方法。   In the distributed multimedia server functioning as the receiving side, a communication server module is uniquely assigned to each of a plurality of storage server modules distributed and stored in storage devices provided in the respective segments. The multimedia information transfer and storage method according to claim 1, further comprising the step of writing the received segment only to the storage server module assigned to. 前記送信側として機能する分散型マルチメディアサーバにおいて、前記各セグメントを送信する通信サーバモジュールが、前記受信側として機能する分散型マルチメディアサーバの通信サーバモジュールを当該セグメントごとに変更する工程をさらに含んだことを特徴とする請求項1または2に記載のマルチメディア情報転送蓄積方法。   In the distributed multimedia server that functions as the transmitting side, the communication server module that transmits each segment further includes a step of changing the communication server module of the distributed multimedia server that functions as the receiving side for each segment. 3. The multimedia information transfer storage method according to claim 1, wherein the multimedia information is transferred and stored. 1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置であって、
通信速度要求値とともにマルチメディアデータ転送要求を受け付けて、他の分散型マルチメディアサーバに対して、1番組のマルチメディアデータがいくつかに分割された各セグメントを転送する場合に、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、当該仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信する送信手段を備えたことを特徴とする分散型マルチメディアサーバ装置。
A plurality of storage server modules that store each segment generated by dividing multimedia data of one program in a storage device included in each segment, and segments received from the storage server module as other A distributed multimedia server device configured by connecting a communication server module that transmits to an external device and receives a segment received from another external device to the storage server module so as to be able to communicate over a network,
Each storage server module receives a multimedia data transfer request together with a communication speed request value and transfers each segment obtained by dividing the multimedia data of one program into several segments to another distributed multimedia server. Tentatively set the number of communication server modules used to transmit each segment distributedly stored in each storage device according to the communication speed request value received together with the data transfer request, and the communication of the temporarily set number of communication If the server module exists in a usable state, each segment is transmitted in parallel to the distributed multimedia server functioning as the receiving side using the temporarily set number of communication server modules. Can be used if there is no provisionally set number of communication server modules available A distributed multimedia server apparatus comprising: a transmission means for transmitting each segment in parallel to a distributed multimedia server functioning as a receiving side using the maximum number of communication server modules within the range. .
前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行う手段をさらに備えたことを特徴とする請求項5に記載の分散型マルチメディアサーバ装置。   A communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in the storage device provided with each segment, and only from the storage server module to which each communication server module is assigned. 6. The distributed multimedia server device according to claim 5, further comprising means for reading a segment. 前記各セグメントを送信する通信サーバモジュールが、受信側として機能する他の分散型マルチメディアサーバ装置の通信サーバモジュールを当該セグメントごとに変更する手段をさらに備えたことを特徴とする請求項5またはに記載の分散型マルチメディアサーバ装置。 Communication server module for transmitting said each segment, according to claim 5 or 6 communications server module other distributed multimedia server device functioning as a receiver and further comprising a means for changing each said segment 2. A distributed multimedia server device according to 1. 1番組のマルチメディアデータをいくつかに分割することにより生成された各セグメントを、それぞれが備える蓄積装置に分散させて格納する複数の蓄積サーバモジュールと、当該蓄積サーバモジュールから受信したセグメントを他の外部装置に送信し、他の外部装置から受信したセグメントを当該蓄積サーバモジュールに送信する通信サーバモジュールとをネットワークで通信可能な状態に接続して構成される分散型マルチメディアサーバ装置間において、当該1番組のマルチメディアデータがいくつかに分割された各セグメントの転送を行う分散型マルチメディアサーバシステムであって、
送信側として機能する前記分散型マルチメディアサーバ装置は、
通信速度要求値とともにマルチメディアデータ転送要求を受け付けた場合に、各蓄積サーバモジュールにより各蓄積装置に分散格納された各セグメントを送信するために使用する通信サーバモジュールの台数を、データ転送要求とともに受け付けた通信速度要求値に応じて仮設定し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在する場合には、当該仮設定された台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信し、当該仮設定された台数の通信サーバモジュールが使用可能な状態で存在しない場合には、使用可能な範囲内で最大の台数の通信サーバモジュールを使用して、受信側として機能する分散型マルチメディアサーバに各セグメントを並行して送信する送信手段と、
前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみから、送信対象となるセグメントの読み出しを行う手段と、
前記各セグメントを送信する通信サーバモジュールが、受信側として機能する他の分散型マルチメディアサーバ装置の通信サーバモジュールを当該セグメントごとに変更する手段と、
を備え、
受信側として機能する前記分散型マルチメディアサーバ装置は、
前記送信側の分散型マルチメディアサーバから1番組のマルチメディアデータがいくつかに分割された各セグメントを受信する場合に、当該送信側の分散型マルチメディアサーバにおいて各セグメントを送信するために用いられた通信サーバモジュールと同じ台数の通信サーバモジュールを使用して各セグメントを受信する受信手段と、
前記受信手段により各セグメントを受信する際に使用した通信サーバモジュールの台数以上の台数の蓄積サーバモジュールにより、受信した各セグメントを各蓄積装置に分散格納する格納手段と、
前記各セグメントをそれぞれが備える蓄積装置に分散格納した複数の蓄積サーバモジュールのそれぞれに対して通信サーバモジュールを一意に割り当て、各通信サーバモジュールがそれぞれに割り当てられた蓄積サーバモジュールのみに、受信したセグメントの書き込みを行う手段と、
を備えたことを特徴とする分散型マルチメディアサーバシステム。
A plurality of storage server modules that store each segment generated by dividing multimedia data of one program in a storage device included in each segment, and segments received from the storage server module as other Between distributed multimedia server devices configured by connecting a communication server module that transmits to an external device and transmits a segment received from another external device to the storage server module in a state in which communication is possible over a network. A distributed multimedia server system for transferring each segment obtained by dividing multimedia data of one program into several segments,
The distributed multimedia server device functioning as a transmitting side is:
When a multimedia data transfer request is received together with the communication speed request value, the number of communication server modules used for transmitting each segment distributed and stored in each storage device by each storage server module is received together with the data transfer request. Temporarily set according to the communication speed request value, and when the number of temporarily set communication server modules is available, receive using the temporarily set number of communication server modules. If each segment is sent in parallel to the distributed multimedia server functioning as a side and the provisionally set number of communication server modules are not available, the largest number within the usable range Each segment into a decentralized multimedia server that functions as a receiver using a communication server module And transmission means for transmitting parallel,
A communication server module is uniquely assigned to each of a plurality of storage server modules distributedly stored in the storage device provided with each segment, and only from the storage server module to which each communication server module is assigned. Means for reading the segment,
Means for changing the communication server module of each other distributed multimedia server device functioning as a receiving side for each segment, the communication server module transmitting each segment;
With
The distributed multimedia server device functioning as a receiving side is:
Used to transmit each segment in the distributed multimedia server on the transmitting side when receiving each segment obtained by dividing the multimedia data of one program into several from the distributed multimedia server on the transmitting side Receiving means for receiving each segment using the same number of communication server modules as the communication server modules
Storage means for distributing and storing each received segment in each storage device by the number of storage server modules equal to or greater than the number of communication server modules used when receiving each segment by the receiving means;
A communication server module is uniquely assigned to each of a plurality of storage server modules that are distributedly stored in storage devices included in the respective segments, and the received segments are only received by the storage server modules to which each communication server module is assigned. Means for writing
A distributed multimedia server system comprising:
請求項1、請求項2、請求項3および請求項4に記載のマルチメディア情報転送蓄積方法をコンピュータに実行させることにより実現することを特徴とするプログラム。   A program realized by causing a computer to execute the multimedia information transfer and storage method according to claim 1, claim 2, claim 3, and claim 4. 請求項1、請求項2、請求項3および請求項4に記載のマルチメディア情報転送蓄積方法をコンピュータに実行させることにより実現することを特徴とするプログラムを記録した記録媒体。   A recording medium on which a program is recorded, which is realized by causing a computer to execute the multimedia information transfer and storage method according to claim 1, claim 2, claim 3, and claim 4.
JP2007119315A 2007-04-27 2007-04-27 Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program Active JP4879815B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007119315A JP4879815B2 (en) 2007-04-27 2007-04-27 Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007119315A JP4879815B2 (en) 2007-04-27 2007-04-27 Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program

Publications (2)

Publication Number Publication Date
JP2008278198A JP2008278198A (en) 2008-11-13
JP4879815B2 true JP4879815B2 (en) 2012-02-22

Family

ID=40055629

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007119315A Active JP4879815B2 (en) 2007-04-27 2007-04-27 Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program

Country Status (1)

Country Link
JP (1) JP4879815B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5133312B2 (en) * 2009-09-09 2013-01-30 日本電信電話株式会社 Information transfer system and information transfer method
JPWO2012011473A1 (en) * 2010-07-20 2013-09-09 シャープ株式会社 TRANSMISSION DEVICE, TRANSMISSION METHOD, RECEPTION DEVICE, RECEPTION METHOD, COMMUNICATION SYSTEM, DATA STRUCTURE, PROGRAM, AND STORAGE MEDIUM

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100895859B1 (en) * 2005-05-18 2009-05-06 니폰덴신뎅와 가부시키가이샤 Distributed multi-media server system, multi-media information distribution method
JP4533819B2 (en) * 2005-08-11 2010-09-01 株式会社東芝 Video server system and data transfer method

Also Published As

Publication number Publication date
JP2008278198A (en) 2008-11-13

Similar Documents

Publication Publication Date Title
US5915095A (en) Method and apparatus for balancing processing requests among a plurality of servers based on measurable characteristics off network node and common application
JP2601993B2 (en) File providing method and device
US6014695A (en) Computer network system for packet-transferring data between computers, network file server in computer network system and data transferring method thereof
US7844681B2 (en) Network file sharing method and system
CN113485823A (en) Data transmission method, device, network equipment and storage medium
US20030120780A1 (en) Network resource assignment system and method
US7587506B2 (en) Computer system and data backup method in computer system
KR100934227B1 (en) Memory switching control device using open serial matching, its operation method and data storage device applied thereto
JPH09223089A (en) Method and device for making packet data difusable to plural bus targets
EP4318251A1 (en) Data access system and method, and device and network card
US6141729A (en) Data transfer system which divides data among transfer units having different transfer speed characteristics
JP4879815B2 (en) Multimedia information transfer and storage method, distributed multimedia server device, distributed multimedia server system, program for realizing multimedia information transfer and storage method, and recording medium recording the program
CN112817887A (en) Far memory access optimization method and system under separated combined architecture
CN101699421B (en) Method and server for sharing serial port
US20070088854A1 (en) Apparatus for searching TCP and UDP sockets
JP4057201B2 (en) High-speed data exchange method between different computers and extent extraction / conversion program recording medium
US6108694A (en) Memory disk sharing method and its implementing apparatus
CN112073212A (en) Parameter configuration method, device, terminal equipment and storage medium
US10951704B1 (en) Data object sync
US6070201A (en) Alternate selection of virtual data buffer pathways
CN113676510A (en) Cloud storage method, system, equipment and storage medium
CN115706727A (en) Cloud desktop data migration method, node and server
CN113507411B (en) Path selection method, device, equipment and storage medium
JP3897994B2 (en) Switch device and data transfer system
JP2585426B2 (en) Multi-line communication control method and device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090722

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110520

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110913

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111104

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4879815

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350