JP2012185601A - Distribution system, server device, terminal device, service method, terminal method and program - Google Patents

Distribution system, server device, terminal device, service method, terminal method and program Download PDF

Info

Publication number
JP2012185601A
JP2012185601A JP2011047238A JP2011047238A JP2012185601A JP 2012185601 A JP2012185601 A JP 2012185601A JP 2011047238 A JP2011047238 A JP 2011047238A JP 2011047238 A JP2011047238 A JP 2011047238A JP 2012185601 A JP2012185601 A JP 2012185601A
Authority
JP
Japan
Prior art keywords
fragment
data
identification name
unit
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011047238A
Other languages
Japanese (ja)
Other versions
JP5250065B2 (en
Inventor
Shoji Mori
昌二 森
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.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2011047238A priority Critical patent/JP5250065B2/en
Publication of JP2012185601A publication Critical patent/JP2012185601A/en
Application granted granted Critical
Publication of JP5250065B2 publication Critical patent/JP5250065B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a distribution system, a server device, a terminal device, a service method, a terminal method and a program realizing them with a computer capable of reducing a load of a server and improving transmission efficiency of data when a plurality of terminals acquire the same data through a network.SOLUTION: A server device 201 adds terminal identification names of terminal devices of message's transmission sources and a designated data identification name to a storage part 503 corresponding to request messages from a plurality of terminal devices. An acquisition part 504 acquires a data identification name stored in the storage part 503 without duplication, divides data into segments by the acquired data identification names and circularly transmits the segments to the terminal devices of transmission sources from a segment transmission part 505. When the terminal devices receiving the segments have acquired all the segments, they transmit a completion message to the server device 201 to finish the reception.

Description

本発明は、ネットワーク経由で複数の端末が同一のデータを取得する際に、サーバの負担を軽減でき、データの伝送効率を向上させることができる配信システム、サーバ装置、端末装置、サービス方法、端末方法、並びにこれらをコンピュータにて実現するプログラムに関する。   The present invention provides a distribution system, a server device, a terminal device, a service method, and a terminal that can reduce the load on the server and improve the data transmission efficiency when a plurality of terminals acquire the same data via a network. The present invention relates to a method and a program for realizing these methods on a computer.

従来から、ネットワーク経由でデータを取得する際に、一つの装置にアクセスが集中することをできるだけ防止するのに好適なデータ処理システムが提案されている(特許文献1参照)。   Conventionally, when acquiring data via a network, a data processing system suitable for preventing as much access as possible from being concentrated on one device has been proposed (see Patent Document 1).

特開2006−209343号公報JP 2006-209343 A

一方で、ネットワーク経由で複数の端末が同一のデータを取得する際に、サーバの負担を少なくし、データの伝送効率を高くするようなシステムが要望されている。   On the other hand, there is a demand for a system that reduces the burden on the server and increases the data transmission efficiency when a plurality of terminals acquire the same data via a network.

本発明は、上記のような課題を解決するもので、ネットワーク経由で複数の端末が同一のデータを取得する際に、サーバの負担を軽減でき、データの伝送効率を向上させることができる配信システム、サーバ装置、端末装置、サービス方法、端末方法、並びにこれらをコンピュータにて実現するプログラムを提供することを目的とする。   SUMMARY OF THE INVENTION The present invention solves the above-described problems, and a distribution system that can reduce the load on a server and improve data transmission efficiency when a plurality of terminals acquire the same data via a network. An object of the present invention is to provide a server device, a terminal device, a service method, a terminal method, and a program that implements these on a computer.

上記目的を達成するため、本発明の第1の観点に係る配信システムは、サーバ装置と、サーバ装置と通信可能に接続される複数の端末装置とを備える。
サーバ装置は、例えば、情報のアップデート・新たなコンテンツの提供等を行う装置であり、端末装置は、例えば、ゲーム装置が該当する。当該システムを使用することにより、例えば、新規コンテンツ提供直後におけるサーバ装置へのアクセス集中によるサーバ負荷を軽減できるものである。
In order to achieve the above object, a distribution system according to a first aspect of the present invention includes a server device and a plurality of terminal devices connected to be able to communicate with the server device.
For example, the server device is a device that updates information, provides new content, and the like, and the terminal device corresponds to, for example, a game device. By using the system, for example, the server load due to concentration of access to the server apparatus immediately after provision of new content can be reduced.

まず、サーバ装置は、記憶部、要求受信部、追加部、取得部、断片送信部、完了受信部、削除部を備える。
ここで、記憶部は、端末識別名と、データ識別名と、が指定される接続情報を記憶し、要求受信部は、複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信し、追加部は、要求メッセージを受信すると、要求メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名と、を指定する接続情報を、記憶部に追加する。
First, the server device includes a storage unit, a request reception unit, an addition unit, an acquisition unit, a fragment transmission unit, a completion reception unit, and a deletion unit.
Here, the storage unit stores connection information in which a terminal identification name and a data identification name are designated, and the request reception unit receives a request message for designating a data identification name from any of a plurality of terminal devices. Upon receipt of the request message, the adding unit adds connection information that specifies the terminal identification name of the terminal device that is the transmission source of the request message and the data identification name specified in the request message to the storage unit. .

すなわち、記憶部は、IPアドレス等で特定される端末識別名とゲームコンテンツ等の種類を特定するデータ識別名が指定される接続情報を記憶する。
複数の端末装置のうちのひとつから、その端末装置がダウンロードを希望するゲームコンテンツ等のデータ識別名が指定された要求メッセージが送信されると、追加部は、送信元の端末装置が指定するデータ識別名及び送信元の端末識別名からなる接続情報を、記憶部に追加して記憶する。
That is, the storage unit stores connection information in which a terminal identification name specified by an IP address or the like and a data identification name specifying a type of game content or the like are designated.
When a request message in which a data identification name of a game content or the like that the terminal device desires to download is transmitted from one of the plurality of terminal devices, the adding unit specifies data specified by the transmission source terminal device Connection information including the identification name and the terminal identification name of the transmission source is added and stored in the storage unit.

取得部は、記憶部に接続情報が記憶されている間、記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、重複なく取得されたデータ識別名毎に、データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得し、断片送信部は、断片が取得されると、断片と、断片の分割元データ内において、断片が配置されていた位置とを指定する断片メッセージを、断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する。    While the connection information is stored in the storage unit, the acquisition unit acquires the data identification name specified for each of the stored connection information without duplication, and for each data identification name obtained without duplication, data Fragments obtained by dividing the data associated with the identification names are acquired in a predetermined cyclic order, and when the fragments are acquired, the fragment transmission unit identifies the fragments in the fragments and the fragment source data of the fragments. A fragment message designating the position where the fragment was placed is transmitted to each terminal apparatus having the terminal identification name designated in the connection information that caused the fragment to be acquired.

すなわち、取得部では、記憶部に既に記憶されたデータ識別名は、取得せずに、記憶部にはないデータ識別名を取得する。例えば、端末装置Xでは、データ識別名Aを指定し、端末装置Yでは、データ識別名Aを指定し、端末装置Zでは、データ識別名Aを指定し、端末装置Wでは、データ識別名Bを指定する場合、取得部では、重複するデータ識別名は取得せずに、A、B各々2つのみ取得することになる。   That is, the acquisition unit does not acquire the data identification name already stored in the storage unit, and acquires a data identification name that does not exist in the storage unit. For example, the terminal device X designates the data identification name A, the terminal device Y designates the data identification name A, the terminal device Z designates the data identification name A, and the terminal device W designates the data identification name B. In the case of designating, the obtaining unit obtains only two each of A and B without obtaining duplicate data identification names.

そして、データ識別名に対応付けられたデータ、例えばAは、複数の断片a1〜a6に分割される。これらの断片は、所定の順序で巡回する形式、例えば、a1→a2→a3→a4→a5→a6→a1→a2…という形式で、取得部において、取得される。   The data associated with the data identification name, for example A, is divided into a plurality of fragments a1 to a6. These fragments are acquired in the acquisition unit in a form that circulates in a predetermined order, for example, a1 → a2 → a3 → a4 → a5 → a6 → a1 → a2.

さらに、各断片には、データ内で断片が配置されていた位置の情報が付与される。例えば、任意のデータ識別名のデータを6つの断片に分割した場合、3番目の位置に配置された断片には、3/6という位置情報が付与される。断片内容の情報と、位置情報とは、併せて断片メッセージとして、断片送信部より、データ要求元の端末に送信される。   Furthermore, information on the position where the fragment is arranged in the data is given to each fragment. For example, when data of an arbitrary data identification name is divided into six fragments, the position information of 3/6 is assigned to the fragment arranged at the third position. The fragment content information and the position information are transmitted together as a fragment message from the fragment transmitting unit to the data requesting terminal.

完了受信部は、複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信し、削除部は、完了メッセージを受信すると、完了メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名と、が指定されている接続情報を記憶部から削除する。   The completion receiving unit receives a completion message designating a data identification name from any of the plurality of terminal devices, and when the deletion unit receives the completion message, the terminal identification name of the terminal device that is the transmission source of the completion message, The connection information specifying the data identification name specified in the request message is deleted from the storage unit.

すなわち、データ要求元の端末装置において、要求したデータ識別名に対応する全ての断片を取得した場合には、完了メッセージが送信され、サーバ装置は、送信メッセージを受信すると、削除部が、記憶部に記憶された端末識別名とデータ識別名からなる接続情報を削除する。   That is, in the data request source terminal device, when all fragments corresponding to the requested data identification name are acquired, a completion message is transmitted, and when the server device receives the transmission message, the deletion unit, the storage unit The connection information including the terminal identification name and the data identification name stored in is deleted.

一方、複数の端末装置は、それぞれ、要求送信部、断片受信部、蓄積部、復元部、完了送信部を備える。
ここで、要求送信部は、サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信し、断片受信部は、所望のデータが復元されるまで、サーバ装置から断片メッセージを受信し、蓄積部は、受信された断片メッセージに指定される断片と、当該断片が所望のデータにおいて配置されていた位置とを対応付けて蓄積する。
On the other hand, each of the plurality of terminal devices includes a request transmission unit, a fragment reception unit, a storage unit, a restoration unit, and a completion transmission unit.
Here, the request transmission unit transmits a request message designating the data identification name of the desired data to the server device, and the fragment reception unit receives the fragment message from the server device until the desired data is restored. The accumulating unit accumulates the fragment specified in the received fragment message in association with the position where the fragment is arranged in the desired data.

すなわち、各端末装置は、例えば、ゲームプレイヤが要求するコンテンツを特定するデータ識別名を指定した要求メッセージを送信する。
要求したデータ識別名のデータは、複数の断片に分割されたデータの形で、断片メッセージとして断片受信部において受信され、蓄積される。
That is, each terminal device transmits, for example, a request message specifying a data identification name that specifies content requested by the game player.
The requested data identifier data is received and stored as a fragment message at the fragment receiver in the form of data divided into a plurality of fragments.

そして、復元部は、所望のデータを分割することにより得られるすべての断片が蓄積されると、蓄積された断片のそれぞれと、蓄積された断片のそれぞれに対応付けて蓄積された位置とから所望のデータを復元し、完了送信部は、所望のデータが復元されると、サーバ装置へ、所望のデータのデータ識別名を指定する完了メッセージを送信する。   Then, when all the fragments obtained by dividing the desired data are accumulated, the restoration unit obtains a desired value from each of the accumulated fragments and a position accumulated in association with each of the accumulated fragments. When the desired data is restored, the completion transmitting unit transmits a completion message designating the data identification name of the desired data to the server device.

すなわち、要求元の端末装置において、要求したデータのすべての断片が蓄積されると、断片の位置情報に基づいて、データが復元される。
データが復元されると、完了メッセージが完了送信部よりサーバ装置へ送信される。
That is, when all the pieces of requested data are accumulated in the requesting terminal device, the data is restored based on the fragment position information.
When the data is restored, a completion message is transmitted from the completion transmission unit to the server device.

本発明によれば、複数の端末装置から要求されたデータ識別名に対応するデータを、複数の断片に分け、所定の順序で巡回的に送信して、端末装置側で復元することで、通信によるサーバ装置の負荷を低減できる配信システムを提供することができる。   According to the present invention, data corresponding to data identification names requested from a plurality of terminal devices is divided into a plurality of fragments, cyclically transmitted in a predetermined order, and restored on the terminal device side, thereby enabling communication. It is possible to provide a distribution system that can reduce the load on the server device.

本発明のその他の観点に係るサーバ装置は、上記配信システムにおけるサーバ装置である。   A server device according to another aspect of the present invention is a server device in the distribution system.

すなわち、サーバ装置は、記憶部、要求受信部、追加部、取得部、断片送信部、完了受信部、削除部を備える。
ここで、記憶部は、端末識別名と、データ識別名と、が指定される接続情報を記憶し、要求受信部は、複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信し、追加部は、要求メッセージを受信すると、要求メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名と、を指定する接続情報を記憶部に追加する。
That is, the server device includes a storage unit, a request reception unit, an addition unit, an acquisition unit, a fragment transmission unit, a completion reception unit, and a deletion unit.
Here, the storage unit stores connection information in which a terminal identification name and a data identification name are designated, and the request reception unit receives a request message for designating a data identification name from any of a plurality of terminal devices. Upon receiving the request message, the adding unit adds connection information specifying the terminal identification name of the terminal device that is the transmission source of the request message and the data identification name specified in the request message to the storage unit.

取得部は、記憶部に接続情報が記憶されている間、記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、重複なく取得されたデータ識別名毎に、データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得し、断片送信部は、断片が取得されると、断片と、断片の分割元データ内において、断片が配置されていた位置とを指定する断片メッセージを、断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する。   While the connection information is stored in the storage unit, the acquisition unit acquires the data identification name specified for each of the stored connection information without duplication, and for each data identification name obtained without duplication, data Fragments obtained by dividing the data associated with the identification names are acquired in a predetermined cyclic order, and when the fragments are acquired, the fragment transmission unit identifies the fragments in the fragments and the fragment source data of the fragments. A fragment message designating the position where the fragment was placed is transmitted to each terminal apparatus having the terminal identification name designated in the connection information that caused the fragment to be acquired.

完了受信部は、複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信し、削除部は、完了メッセージを受信すると、完了メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名とが指定されている接続情報を記憶部から削除する。   The completion receiving unit receives a completion message designating a data identification name from any of the plurality of terminal devices, and when the deletion unit receives the completion message, the terminal identification name of the terminal device that is the transmission source of the completion message, The connection information specifying the data identification name specified in the request message is deleted from the storage unit.

また、サーバ装置において、要求受信部ならびに完了受信部は、それぞれ、要求メッセージと完了メッセージを、コネクション型プロトコルにより受信し、断片送信部は、断片メッセージをコネクションレス型プロトコルにより送信する。   Further, in the server device, the request receiving unit and the completion receiving unit respectively receive the request message and the completion message by the connection type protocol, and the fragment transmission unit transmits the fragment message by the connectionless type protocol.

コネクション型プロトコルは、通信を開始するときにデータを送受信する端末間にデータ伝送に先立ってコネクションを確立し、通信が終わるまで接続関係を保持する通信形態で使用されるプロトコルである。コネクションレス型プロトコルは、送受信する端末間にデータの伝送に先立ってコネクションの確立を行わず、宛先アドレスを明示したパケットを送る通信形態で使用されるプロトコルである。   The connection-type protocol is a protocol used in a communication mode in which a connection is established before data transmission between terminals that transmit and receive data when communication is started and the connection relationship is maintained until communication is completed. The connectionless protocol is a protocol used in a communication mode in which a packet specifying a destination address is transmitted without establishing a connection between transmitting and receiving terminals.

本発明によれば、通信を確実に行いたい送受信形態である、要求メッセージと完了メッセージはコネクション型プロトコルを使用し、接続よりも送受信の負荷を減少させたい送信形態である断片メッセージは、コネクションレスプロトコルを使用することができる。
また、通信負荷が高いコネクションの使用を押さえて、通信の大半をコネクションレスで行うことで、オーバ負荷を減らすことができる。
According to the present invention, a request message and a completion message, which are transmission / reception forms for which communication is to be reliably performed, use a connection-type protocol, and a fragment message, which is a transmission form for reducing transmission / reception load rather than connection, is a connectionless Protocol can be used.
In addition, it is possible to reduce the overload by suppressing the use of a connection with a high communication load and performing most of the communication without connection.

さらに、本発明のサーバ装置において、コネクション型プロトコルは、TCP(Transmission Control Protocol)であり、コネクションレス型プロトコルは、UDP(User Datagram Protocol)である。
本発明によれば、コネクション型またはコネクションレス型に対応して、適切なトランスポート層のプロトコルを使用することができる。
Further, in the server device of the present invention, the connection type protocol is TCP (Transmission Control Protocol), and the connectionless type protocol is UDP (User Datagram Protocol).
According to the present invention, it is possible to use an appropriate transport layer protocol corresponding to the connection type or the connectionless type.

また、本発明のサーバ装置において、サーバー装置は、接続受信部をさらに備える。
ここで、削除部は、記憶部に記憶される接続情報のそれぞれについて、接続情報に接続する端末識別名を有する端末装置から送信される接続メッセージが、所定の閾値時間以上受信されなかった場合、接続情報を、記憶部から削除する。
In the server device of the present invention, the server device further includes a connection receiver.
Here, the deletion unit, for each of the connection information stored in the storage unit, when the connection message transmitted from the terminal device having the terminal identification name connected to the connection information has not been received for a predetermined threshold time or more, The connection information is deleted from the storage unit.

すなわち、端末装置から送信される接続メッセージが、一定期間受信されない場合には、通信が切断されたと判断して、その接続メッセージに対応する接続情報を記憶部から削除する。
本発明によれば、接続メッセージの有無を確認することにより、無駄な送信を省くことができ、通信負荷を抑制することができる。
That is, when the connection message transmitted from the terminal device is not received for a certain period, it is determined that the communication has been disconnected, and the connection information corresponding to the connection message is deleted from the storage unit.
According to the present invention, by confirming the presence or absence of a connection message, useless transmission can be omitted and the communication load can be suppressed.

本発明のその他の観点に係る端末装置は、上記配信システムにおける端末装置である。   A terminal device according to another aspect of the present invention is a terminal device in the distribution system.

すなわち、端末装置は、要求送信部、断片受信部、蓄積部、復元部、完了送信部を備える。
ここで、要求送信部は、サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信し、断片受信部は、所望のデータが復元されるまで、サーバ装置から、断片メッセージを受信する、蓄積部は、受信された断片メッセージに指定される断片と、当該断片が当該所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する。
That is, the terminal device includes a request transmission unit, a fragment reception unit, a storage unit, a restoration unit, and a completion transmission unit.
Here, the request transmission unit transmits a request message specifying the data identification name of the desired data to the server device, and the fragment reception unit receives the fragment message from the server device until the desired data is restored. The accumulating unit accumulates the fragment specified in the received fragment message and the position where the fragment is arranged in the desired data in association with each other.

復元部は、所望のデータを分割することにより得られるすべての断片が蓄積されると、当該蓄積された断片のそれぞれと、当該蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、当該所望のデータを復元し、完了送信部は、所望のデータが復元されると、サーバ装置へ、当該所望のデータのデータ識別名を指定する完了メッセージを送信する。   When all the fragments obtained by dividing the desired data are accumulated, the restoration unit stores each of the accumulated fragments and the position accumulated in association with each of the accumulated fragments. The desired transmission data is restored, and when the desired data is restored, the completion transmitting unit transmits a completion message designating the data identification name of the desired data to the server device.

本発明の端末装置は、接続送信部をさらに備える。
ここで、接続送信部は、要求メッセージを送信した後、所望のデータが復元されるまで、所定の時間間隔で、サーバ装置へ接続メッセージを送信する。
The terminal device of the present invention further includes a connection transmission unit.
Here, after transmitting the request message, the connection transmission unit transmits the connection message to the server device at a predetermined time interval until the desired data is restored.

すなわち、接続送信部は、一定の時間間隔で、接続メッセージを送信することで、サーバ装置側が接続の確認を行うことができる。   That is, the connection transmission unit transmits a connection message at a constant time interval, so that the server device side can confirm the connection.

本発明のその他の観点に係るサービス方法は、サーバ装置にて、実行されるサービス方法であって、サーバ装置は、記憶部、要求受信部、追加部、取得部、断片送信部、完了受信部、削除部を有し、要求受信工程、追加工程、取得工程、断片送信工程、完了受信工程、削除工程を備え、以下のように構成する。   A service method according to another aspect of the present invention is a service method executed in a server device, and the server device includes a storage unit, a request reception unit, an addition unit, an acquisition unit, a fragment transmission unit, and a completion reception unit. And a deletion unit, which includes a request reception process, an addition process, an acquisition process, a fragment transmission process, a completion reception process, and a deletion process, and is configured as follows.

すなわち、要求受信工程では、要求受信部が、複数の端末装置のいずれかから、データ識別名を指名する要求メッセージを受信する。   That is, in the request receiving step, the request receiving unit receives a request message for designating a data identification name from any of a plurality of terminal devices.

追加工程では、追加部が、要求メッセージが受信されると、要求メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名と、を指定する接続情報を、記憶部に追加する。   In the adding step, when the requesting message is received, the adding unit stores connection information that specifies the terminal identification name of the terminal device that has transmitted the request message and the data identification name specified in the request message, Add to

取得工程では、取得部が、記憶部に接続情報が記憶されている間、記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、重複なく取得されたデータ識別名毎に、データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得する。   In the acquisition step, the acquisition unit acquires the data identification name specified for each of the stored connection information without duplication while the connection information is stored in the storage unit, and the data identification name obtained without duplication Each time, a fragment obtained by dividing the data associated with the data identification name is acquired in a predetermined cyclic order.

断片送信工程では、断片送信部が、断片が取得されると、当該断片と、当該断片の分割元のデータ内において、当該断片が配置されていた位置と、を指定する断片メッセージを、当該断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する。   In the fragment transmission step, when the fragment transmission unit acquires the fragment, a fragment message that specifies the fragment and the position where the fragment is located in the fragment source data Is transmitted to each of the terminal devices having the terminal identification name specified in the connection information that has been acquired.

完了受信工程では、完了受信部が、複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信する。   In the completion reception step, the completion reception unit receives a completion message designating a data identification name from any of the plurality of terminal devices.

削除工程では、削除部が、完了メッセージが受信されると、当該完了メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、が指定されている接続情報を、記憶部から削除する。   In the deletion step, when the deletion unit receives the completion message, the connection information in which the terminal identification name of the terminal device that has transmitted the completion message and the data identification name specified in the request message are specified Are deleted from the storage unit.

本発明のその他の観点に係る端末方法は、サーバ装置と通信可能に接続される端末装置において実行される端末方法であって、端末装置は、要求送信部、断片受信部、蓄積部、復元部、完了送信部を有し、要求送信工程、断片受信工程、蓄積工程、復元工程、完了送信工程を備え、以下のように構成する。   A terminal method according to another aspect of the present invention is a terminal method executed in a terminal device communicably connected to a server device, and the terminal device includes a request transmission unit, a fragment reception unit, a storage unit, and a restoration unit. And a completion transmission unit, which includes a request transmission process, a fragment reception process, an accumulation process, a restoration process, and a completion transmission process, and is configured as follows.

すなわち、要求送信工程では、要求送信部が、サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信する。   That is, in the request transmission step, the request transmission unit transmits a request message for designating a data identification name of desired data to the server device.

断片受信工程では、断片受信部が、所望のデータが復元されるまで、サーバ装置から、断片メッセージを受信する。   In the fragment receiving step, the fragment receiving unit receives a fragment message from the server device until the desired data is restored.

蓄積工程では、蓄積部が、受信された断片メッセージに指定される断片と、当該断片が当該所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する。   In the accumulation step, the accumulation unit accumulates the fragment specified in the received fragment message and the position where the fragment is arranged in the desired data in association with each other.

復元工程では、復元部が、所望のデータを分割することにより得られるすべての断片が蓄積されると、当該蓄積された断片のそれぞれと、当該蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、当該所望のデータを復元する。   In the restoration process, when all the fragments obtained by dividing the desired data are accumulated by the restoration unit, the fragments are accumulated in association with each of the accumulated fragments and each of the accumulated fragments. The desired data is restored from the position.

完了送信工程では、完了送信部が、所望のデータが復元されると、サーバ装置へ、当該所望のデータのデータ識別名を指定する完了メッセージを送信する。   In the completion transmission step, when the desired data is restored, the completion transmission unit transmits a completion message designating the data identification name of the desired data to the server device.

本発明のその他の観点に係るプログラムは、コンピュータをサーバ装置として機能させ、コンピュータにサービス方法を実行させるように構成し、サーバ装置は、要求受信部、追加部、取得部、断片送信部、完了受信部、削除部を備える。   A program according to another aspect of the present invention is configured to cause a computer to function as a server device and cause the computer to execute a service method. The server device includes a request reception unit, an addition unit, an acquisition unit, a fragment transmission unit, and a completion. A receiving unit and a deleting unit are provided.

ここで、記憶部は、端末識別名と、データ識別名とが指定される接続情報を記憶し、要求受信部は、複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信し、追加部は、要求メッセージを受信すると、要求メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名とを指定する接続情報を記憶部に追加する。   Here, the storage unit stores connection information in which a terminal identification name and a data identification name are designated, and the request reception unit receives a request message for designating the data identification name from any of a plurality of terminal devices. Then, when receiving the request message, the adding unit adds connection information specifying the terminal identification name of the terminal device that is the transmission source of the request message and the data identification name specified in the request message to the storage unit.

取得部は、記憶部に接続情報が記憶されている間、記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、重複なく取得されたデータ識別名毎に、データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得し、断片送信部は、断片が取得されると、断片と、断片の分割元データ内において、断片が配置されていた位置とを指定する断片メッセージを、断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する。   While the connection information is stored in the storage unit, the acquisition unit acquires the data identification name specified for each of the stored connection information without duplication, and for each data identification name obtained without duplication, data Fragments obtained by dividing the data associated with the identification names are acquired in a predetermined cyclic order, and when the fragments are acquired, the fragment transmission unit identifies the fragments in the fragments and the fragment source data of the fragments. A fragment message designating the position where the fragment was placed is transmitted to each terminal apparatus having the terminal identification name designated in the connection information that caused the fragment to be acquired.

完了受信部は、複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信し、削除部は、完了メッセージを受信すると、完了メッセージの送信元の端末装置の端末識別名と、要求メッセージに指定されたデータ識別名とが指定されている接続情報を、記憶部から削除する。   The completion receiving unit receives a completion message designating a data identification name from any of the plurality of terminal devices, and when the deletion unit receives the completion message, the terminal identification name of the terminal device that is the transmission source of the completion message, The connection information in which the data identification name specified in the request message is specified is deleted from the storage unit.

本発明のその他の観点に係るプログラムは、コンピュータを端末装置として機能させ、コンピュータに端末方法を実行させるように構成し、端末装置は、要求送信部、断片受信部、蓄積部、復元部、完了送信部を備える。   A program according to another aspect of the present invention is configured to cause a computer to function as a terminal device and cause the computer to execute a terminal method. The terminal device includes a request transmission unit, a fragment reception unit, a storage unit, a restoration unit, and a completion. A transmission unit is provided.

ここで、要求送信部は、サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信し、断片受信部は、所望のデータが復元されるまで、サーバ装置から断片メッセージを受信し、蓄積部は、受信された断片メッセージに指定される断片と、当該断片が所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する。   Here, the request transmission unit transmits a request message designating the data identification name of the desired data to the server device, and the fragment reception unit receives the fragment message from the server device until the desired data is restored. The accumulating unit accumulates the fragments specified in the received fragment message and the positions where the fragments are arranged in the desired data in association with each other.

そして、復元部は、所望のデータを分割することにより得られるすべての断片が蓄積されると、蓄積された断片のそれぞれと、蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、所望のデータを復元し、完了送信部は、所望のデータが復元されると、サーバ装置へ、所望のデータのデータ識別名を指定する完了メッセージを送信する。   Then, when all the fragments obtained by dividing the desired data are accumulated, the restoration unit, from each of the accumulated fragments, and the position accumulated in association with each of the accumulated fragments, When the desired data is restored, the completion transmission unit transmits a completion message designating the data identification name of the desired data to the server device.

また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータと独立して、コンピュータ通信網を介して配布、販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布、販売することができる。
The program of the present invention can be recorded on a computer-readable information storage medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
The above program can be distributed and sold via a computer communication network independently of the computer on which the program is executed. The information storage medium can be distributed and sold independently from the computer.

本発明によれば、ネットワーク経由で複数の端末で同一のデータを取得する際に、サーバの負担を軽減でき、データの伝送効率を向上させることができる配信システム、サーバ装置、端末装置、サービス方法、端末方法、並びにこれらをコンピュータにて実現するプログラムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, when acquiring the same data with a some terminal via a network, the delivery system which can reduce the burden of a server, and can improve the transmission efficiency of data, a server apparatus, a terminal device, and a service method , A terminal method, and a program that implements these on a computer can be provided.

本発明の実施形態に係る配信システムが実現される典型的な情報処理装置の概要構成を示す模式図である。It is a mimetic diagram showing the outline composition of the typical information processor with which the distribution system concerning the embodiment of the present invention is realized. 本発明の実施形態の1つに係る配信システムの概要構成を示す説明図である。It is explanatory drawing which shows schematic structure of the delivery system which concerns on one of embodiment of this invention. 本実施形態における各種の通信のやりとりの様子を示すシーケンス図である。It is a sequence diagram which shows the mode of the exchange of various communications in this embodiment. 本実施形態における各種の通信のやりとりの様子を示すシーケンス図である。It is a sequence diagram which shows the mode of the exchange of various communications in this embodiment. 本実施形態に係るサーバ装置の概要構成を示す模式図である。It is a schematic diagram which shows schematic structure of the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置にて実行されるサービス方法のサービス処理の制御の流れを示すフローチャートである。It is a flowchart which shows the flow of control of the service process of the service method performed with the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置にて実行されるサービス方法の受信処理の制御の流れを示すフローチャートである。It is a flowchart which shows the flow of control of the reception process of the service method performed with the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置にて実行されるサービス方法の送信処理の制御の流れを示すフローチャートである。It is a flowchart which shows the flow of control of the transmission process of the service method performed with the server apparatus which concerns on this embodiment. 本実施態様に係るサーバ装置の記憶部におけるデータ蓄積状況を示す図である。It is a figure which shows the data storage condition in the memory | storage part of the server apparatus which concerns on this embodiment. 本実施形態に係る端末装置の概要構成を示す模式図である。It is a schematic diagram which shows schematic structure of the terminal device which concerns on this embodiment. 本実施形態に係る端末装置にて実行される端末方法の端末処理の制御の流れを示すフローチャートである。It is a flowchart which shows the flow of control of the terminal process of the terminal method performed with the terminal device which concerns on this embodiment.

以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素を均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。   Embodiments of the present invention will be described below. In the following, for ease of understanding, an embodiment in which the present invention is realized using a game information processing device will be described. However, the embodiment described below is for explanation, and the present invention It does not limit the range. Therefore, those skilled in the art can employ embodiments in which these elements are replaced with equivalent ones, and these embodiments are also included in the scope of the present invention.

(実施形態1)
図1は、本発明の実施形態に係る配信システムが実現される典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。
(Embodiment 1)
FIG. 1 is a schematic diagram showing a schematic configuration of a typical information processing apparatus in which a distribution system according to an embodiment of the present invention is realized. Hereinafter, a description will be given with reference to FIG.

情報処理装置100は、CPU(Central Processing Unit)101と、ROM 102と、RAM(Random Access Memory)103と、インターフェース104と、コントローラ105と、外部メモリ106と、画像処理部107と、DVD−ROM(Digital Versatile Disc ROM)ドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、を備える。   The information processing apparatus 100 includes a CPU (Central Processing Unit) 101, a ROM 102, a RAM (Random Access Memory) 103, an interface 104, a controller 105, an external memory 106, an image processing unit 107, and a DVD-ROM. (Digital Versatile Disc ROM) drive 108, NIC (Network Interface Card) 109, and audio processing unit 110.

ゲーム用のプログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ108に装着して、情報処理装置100の電源を投入することにより、当該プログラムが実行され、本実施形態の配信システム等が実現される。   A DVD-ROM storing a game program and data is loaded into the DVD-ROM drive 108 and the information processing apparatus 100 is turned on to execute the program, thereby realizing the distribution system and the like of the present embodiment. Is done.

CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、CPU 101は、レジスタ(図示せず)という高速アクセスが可能な記憶域に対してALU(Arithmetic Logic Unit)(図示せず)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、CPU 101自身が構成されているものや、コプロセッサを備えて実現するものがある。   The CPU 101 controls the overall operation of the information processing apparatus 100 and is connected to each component to exchange control signals and data. Further, the CPU 101 uses arithmetic operations such as addition / subtraction / multiplication / division, logical sum, logical product, etc. using an ALU (Arithmetic Logic Unit) (not shown) for a storage area called a register (not shown) that can be accessed at high speed. , Logic operations such as logical negation, bit operations such as bit sum, bit product, bit inversion, bit shift, and bit rotation can be performed. In addition, the CPU 101 itself is configured so that saturation operations such as addition / subtraction / multiplication / division for multimedia processing, vector operations such as trigonometric functions, etc. can be performed at a high speed, and those provided with a coprocessor. There is.

ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD−ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。   The ROM 102 records an IPL (Initial Program Loader) that is executed immediately after the power is turned on, and when this is executed, the program recorded on the DVD-ROM is read out to the RAM 103 and execution by the CPU 101 is started. The The ROM 102 stores an operating system program and various data necessary for operation control of the entire information processing apparatus 100.

RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、CPU 101は、RAM 103に変数領域を設け、当該変数に格納された値に対して直接ALUを作用させて演算を行う、また、RAM 103に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。   The RAM 103 is for temporarily storing data and programs, and holds programs and data read from the DVD-ROM and other data necessary for game progress and chat communication. In addition, the CPU 101 provides a variable area in the RAM 103, performs an operation by directly operating the ALU on the value stored in the variable, and temporarily stores the value stored in the RAM 103 in a register. Performs an operation on the register and writes the result back to the memory.

インターフェース104を介して接続されたコントローラ105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。   The controller 105 connected via the interface 104 receives an operation input performed when the user executes the game.

インターフェース104を介して着脱自在に接続された外部メモリ106には、ゲーム等のプレイ状況(過去の成績等)を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。   The external memory 106 detachably connected via the interface 104 stores data indicating game play status (past results, etc.), data indicating the progress of the game, and log of chat communication in a network battle ( Data) is stored in a rewritable manner. The user can record these data in the external memory 106 as appropriate by inputting an instruction via the controller 105.

DVD−ROMドライブ108に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ108は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。   A DVD-ROM mounted on the DVD-ROM drive 108 stores a program for realizing the game and image data and audio data associated with the game. Under the control of the CPU 101, the DVD-ROM drive 108 performs a reading process on the DVD-ROM loaded therein, reads out necessary programs and data, and these are temporarily stored in the RAM 103 or the like.

画像処理部107は、DVD−ROMから読み出されたデータをCPU 101や画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部107に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能となる。   The image processing unit 107 processes the data read from the DVD-ROM by an image arithmetic processor (not shown) included in the CPU 101 or the image processing unit 107, and then processes the processed data on a frame memory ( (Not shown). The image information recorded in the frame memory is converted into a video signal at a predetermined synchronization timing and output to a monitor (not shown) connected to the image processing unit 107. Thereby, various image displays are possible.

画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。   The image calculation processor can execute a two-dimensional image overlay calculation, a transmission calculation such as α blending, and various saturation calculations at high speed.

また、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。   Also, polygon information arranged in the virtual three-dimensional space and added with various texture information is rendered by the Z buffer method, and the polygon arranged in the virtual three-dimensional space from the predetermined viewpoint position is determined in the direction of the predetermined line of sight It is also possible to perform high-speed execution of operations for obtaining rendered images.

さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画したりすることが可能である。フォント情報は、ROM 102に記録されているが、DVD−ROMに記録された専用のフォント情報を利用することも可能である。   Further, the CPU 101 and the image arithmetic processor cooperate to draw a character string as a two-dimensional image in the frame memory or draw it on the surface of each polygon according to the font information that defines the character shape. Is possible. The font information is recorded in the ROM 102, but it is also possible to use dedicated font information recorded in the DVD-ROM.

NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェース(図示せず)により構成される。   The NIC 109 is used to connect the information processing apparatus 100 to a computer communication network (not shown) such as the Internet, and is based on the 10BASE-T / 100BASE-T standard used when configuring a LAN (Local Area Network). To connect to the Internet using an analog modem, ISDN (Integrated Services Digital Network) modem, ADSL (Asymmetric Digital Subscriber Line) modem, cable television line A cable modem or the like and an interface (not shown) that mediates between these and the CPU 101 are configured.

音声処理部110は、DVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。   The audio processing unit 110 converts audio data read from the DVD-ROM into an analog audio signal and outputs the analog audio signal from a speaker (not shown) connected thereto. Further, under the control of the CPU 101, sound effects and music data to be generated during the progress of the game are generated, and sound corresponding to this is output from the speaker.

音声処理部110では、DVD−ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換を行って、スピーカに出力することにより、音声出力が可能となる。   When the audio data recorded on the DVD-ROM is MIDI data, the audio processing unit 110 refers to the sound source data included in the audio data and converts the MIDI data into PCM data. If the compressed audio data is in ADPCM format or Ogg Vorbis format, it is expanded and converted to PCM data. The PCM data can be output by performing D / A (Digital / Analog) conversion at a timing corresponding to the sampling frequency and outputting it to a speaker.

さらに、情報処理装置100には、インターフェース104を介してマイク(図示せず)を接続することができる。この場合、マイクからのアナログ信号に対しては、適当なサンプリング周波数でA/D変換を行い、PCM形式のディジタル信号として、音声処理部110でのミキシング等の処理ができるようにする。   Furthermore, a microphone (not shown) can be connected to the information processing apparatus 100 via the interface 104. In this case, the analog signal from the microphone is subjected to A / D conversion at an appropriate sampling frequency so that processing such as mixing in the audio processing unit 110 can be performed as a PCM format digital signal.

情報処理装置100をカラオケ装置として利用する場合には、DVD−ROMから読み出した音声データ、もしくは、NIC 109を介してコンピュータ通信網から取得した音声データを伴奏データとし、マイクから入力された音声データを歌唱データとして、伴奏データと歌唱データを音声処理部110がミキシングし、スピーカから出力する。また、スピーカにかえて、ヘッドホン(図示せず)やイヤフォン(図示せず)を用いて、音声を出力させることもできる。   When the information processing apparatus 100 is used as a karaoke apparatus, voice data read from a DVD-ROM or voice data acquired from a computer communication network via the NIC 109 is used as accompaniment data, and voice data input from a microphone Singing data, the audio processing unit 110 mixes the accompaniment data and the singing data, and outputs them from the speaker. Moreover, it is possible to output sound using headphones (not shown) or earphones (not shown) instead of the speakers.

このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ108に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。   In addition, the information processing apparatus 100 uses a large-capacity external storage device such as a hard disk so as to perform the same function as the ROM 102, the RAM 103, the external memory 106, the DVD-ROM mounted on the DVD-ROM drive 108, and the like. You may comprise.

また、ユーザからの文字列の編集入力を受け付けるためのキーボードや、各種の位置の指定および選択入力を受け付けるためのマウスなどを接続する形態も採用することができる。また、本実施形態の情報処理装置100にかえて、汎用のパーソナルコンピュータを利用することもできる。   Further, it is possible to adopt a form in which a keyboard for accepting a character string editing input from a user, a mouse for accepting various position designations and selection inputs, and the like are connected. In addition, a general-purpose personal computer can be used instead of the information processing apparatus 100 of the present embodiment.

以上で説明した情報処理装置100は、いわゆる「コンシューマ向けテレビゲーム装置」に相当するものであるが、携帯電話、携帯ゲーム機器、カラオケ装置、一般的なビジネス用コンピュータなど、種々の計算機上で本発明を実現することが可能である。   The information processing apparatus 100 described above corresponds to a so-called “consumer video game apparatus”. However, the information processing apparatus 100 may be used on various computers such as a mobile phone, a mobile game device, a karaoke apparatus, and a general business computer. It is possible to realize the invention.

例えば、一般的なコンピュータは、上記情報処理装置100と同様に、CPU、RAM、ROM、DVD−ROMドライブ、及び、NICを備え、情報処理装置100よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラ105ではなく、キーボードやマウスなどを入力装置として利用する。   For example, a general computer includes an CPU, a RAM, a ROM, a DVD-ROM drive, and an NIC as in the information processing apparatus 100, and an image processing unit having a simpler function than the information processing apparatus 100. In addition to having a hard disk as an external storage device, a flexible disk, a magneto-optical disk, a magnetic tape, and the like can be used. Further, not the controller 105 but a keyboard or a mouse is used as an input device.

図2は、本発明の実施形態の1つに係る配信システムの概要構成を示す説明図である。以下、本図を参照して説明する。   FIG. 2 is an explanatory diagram showing a schematic configuration of a distribution system according to one embodiment of the present invention. Hereinafter, a description will be given with reference to FIG.

配信システム200は、サーバ装置201と、複数の端末装置202(202a、202b、202c、202d、・・202n)とからなり、サーバ装置201と複数の端末装置202は、インターネット203を介して接続されている。サーバ装置201は、データの提供者が維持管理するデータサーバ機器である。サーバ装置201のメモリとして、キャッシュメモリ(cache memory)を使用することも可能であり、メインメモリの一部のデータをコピーしておくことで、高速アクセスを図ることができる。複数の端末装置202は、データの利用者が維持管理する端末機器である。   The distribution system 200 includes a server device 201 and a plurality of terminal devices 202 (202a, 202b, 202c, 202d,... 202n). The server device 201 and the plurality of terminal devices 202 are connected via the Internet 203. ing. The server device 201 is a data server device that is maintained and managed by a data provider. As the memory of the server apparatus 201, a cache memory can be used, and high-speed access can be achieved by copying a part of the data in the main memory. The plurality of terminal devices 202 are terminal devices maintained and managed by data users.

端末装置202からの送信信号に応じて、サーバ装置201は、端末装置202が要求するコンテンツを端末装置毎に送信する。   In response to the transmission signal from the terminal device 202, the server device 201 transmits the content requested by the terminal device 202 for each terminal device.

図3、図4は、本実施形態における各種の通信のやりとりの様子を示すシーケンス図である。
以下、図面を参照して説明する。
3 and 4 are sequence diagrams showing how various communications are exchanged in the present embodiment.
Hereinafter, description will be given with reference to the drawings.

サーバ装置201は、端末装置202に提供すべきデータを記憶している。各データには、データ毎に、例えばA、B、C・・というデータ識別名が付与される。各データは、データ識別名毎に、複数の断片に分割されている。そして、その断片には当該データ中で当該断片が配置されていた位置を示す位置情報が付与されている。例えば、Aというデータ識別名を有するデータを6つの断片に分割した場合には、a1〜a6という断片が形成され、その配置順に、(1/6)、(2/6)、(3/6)、(4/6)、(5/6)、(6/6)という位置情報が各断片に付与される。   The server device 201 stores data to be provided to the terminal device 202. Each data is given a data identification name such as A, B, C,. Each data is divided into a plurality of fragments for each data identification name. And the position information which shows the position where the said fragment was arrange | positioned in the said data is provided to the fragment. For example, when the data having the data identification name A is divided into six fragments, fragments a1 to a6 are formed, and (1/6), (2/6), (3/6) in the arrangement order. ), (4/6), (5/6), and (6/6) position information is assigned to each fragment.

各断片は、それぞれ同程度の大きさであり、データ全体の大きさにより、例えばコンテンツAは、a1〜a6という6つの断片に分割され、コンテンツBは、b1〜b8という8つの断片に分割される。   Each fragment has the same size. For example, the content A is divided into six fragments a1 to a6, and the content B is divided into eight fragments b1 to b8 according to the size of the entire data. The

なお、データは、「ファイル」と呼ばれる形式で提供されることが最も多いが、いわゆるバイト列やビット列として構成されるものであれば、どのようなものであっても良い。
また、「識別名」としては、ファイル名を使用するものが最も一般的である。データがある大きなデータ内の一部を構成するものである場合(例えば、プログラム内のオーバーレイモジュールの場合等)、当該大きなデータベースによって検索された位置情報とサイズ情報の組合せが「識別名」となる。また、データベースによって検索された結果を「データ」とする場合には、検索に用いる検索式(SQL式など)を「識別名」としても良い。
The data is most often provided in a format called “file”, but any data may be used as long as it is configured as a so-called byte string or bit string.
As the “identification name”, a file name is most commonly used. When data constitutes a part of large data (for example, in the case of an overlay module in a program), a combination of position information and size information searched by the large database becomes an “identification name”. . Further, when the result searched by the database is “data”, a search expression (SQL expression or the like) used for the search may be “identification name”.

ここで、端末装置202aが、コンテンツAをサーバ装置201に要求した場合、サーバ装置201は、分割された断片a1〜a6をa1から巡回的に送信することになる。そして、端末装置202aが、コンテンツAに関して、全ての断片を受信した場合には、端末装置202aは、データを復元した後、完了メッセージをサーバ装置201に送信する。これによって、サーバ装置201からの断片送信は終了する。   Here, when the terminal device 202a requests the server device 201 for the content A, the server device 201 cyclically transmits the divided fragments a1 to a6 from a1. If the terminal device 202a receives all pieces of content A, the terminal device 202a transmits a completion message to the server device 201 after restoring the data. Thereby, the fragment transmission from the server apparatus 201 is completed.

次に、複数の端末装置202が、同一のコンテンツデータを時間を異にして、要求した場合のコンテンツデータの送信方法について、図面を参照して説明する。   Next, a method for transmitting content data when a plurality of terminal devices 202 request the same content data at different times will be described with reference to the drawings.

サーバ装置201が、端末装置202bから、コンテンツBを要求する信号を受信した場合、8つの断片b1〜b8に分割されたコンテンツBのデータを、断片b1から順次、端末装置202bに送り始める。   When the server device 201 receives a signal requesting the content B from the terminal device 202b, the data of the content B divided into eight fragments b1 to b8 starts to be sequentially transmitted from the fragment b1 to the terminal device 202b.

サーバ装置201が、端末装置202bへコンテンツBの断片b1,b2まで送信したときに、端末装置202cから、同一のコンテンツBを要求する信号を受信する。この場合、サーバ装置201は、端末装置202bに対して、既に断片b1,b2まで断片を送信しているので、端末装置202b、202cに対して、断片b3を送信する。   When the server device 201 transmits up to the content B fragments b1 and b2 to the terminal device 202b, a signal requesting the same content B is received from the terminal device 202c. In this case, since the server apparatus 201 has already transmitted the fragments up to the fragments b1 and b2 to the terminal device 202b, the server device 201 transmits the fragment b3 to the terminal devices 202b and 202c.

端末装置202bは、コンテンツBのデータを断片b1から受信しているので、最後の断片b8を受信したところで、コンテンツBを復元し、サーバ装置201に対して完了メッセージを送信して、断片の受信を終了する。   Since the terminal device 202b has received the data of the content B from the fragment b1, when receiving the last fragment b8, the terminal device 202b restores the content B, transmits a completion message to the server device 201, and receives the fragment. Exit.

一方、端末装置202cは、断片b3から受信を開始しているので、断片b8まで受信した後、更に断片b1,b2 まで受信した時点で、コンテンツBを復元し、サーバ装置201に対して、完了メッセージを送信して、断片の受信を終了する。   On the other hand, since the terminal device 202c has started reception from the fragment b3, after receiving up to the fragment b8 and further receiving up to the fragments b1 and b2, the content B is restored and completed to the server device 201. Send the message and finish receiving the fragment.

また、端末装置202dは、サーバ装置201に対して、サーバ装置201が端末装置202b,202cに対して、断片b4まで送信した時点で、Bコンテンツの要求をする。
その場合、サーバ装置201は、端末装置202dに対して、断片b5から送信することになる。
The terminal device 202d requests the B content to the server device 201 when the server device 201 transmits up to the fragment b4 to the terminal devices 202b and 202c.
In that case, the server apparatus 201 transmits to the terminal apparatus 202d from the fragment b5.

通信障害等の原因から、断片b6を受信できなくとも、端末装置202dは、その後も続けて断片b7、b8を受信する。そして、図3及び図4に示すように、端末装置202dは、最初に受信したb5より前に配信された断片b1〜b4を続けて受信する。   Even if the fragment b6 cannot be received due to a communication failure or the like, the terminal device 202d continues to receive the fragments b7 and b8. Then, as illustrated in FIGS. 3 and 4, the terminal device 202d continuously receives the fragments b1 to b4 distributed before b5 received first.

更に、端末装置202dは、b6を取得できなかったので、b5,b6まで受信する。端末装置202dは、断片b5については、重複して受信することになる。本システムは、重複受信することより、サーバ装置201の負荷を軽くすることを優先したシステムである。
尚、重複して受信された断片b5は、端末装置202dにおいて、廃棄される。
Furthermore, since the terminal device 202d cannot acquire b6, it receives up to b5 and b6. The terminal device 202d receives the fragment b5 redundantly. This system is a system that prioritizes reducing the load on the server device 201 over receiving duplicates.
Note that the fragment b5 received in duplicate is discarded in the terminal device 202d.

端末装置202dは、断片b6まで取得した時点で、コンテンツBについて全ての断片を取得したことになるので、コンテンツBを復元した後、サーバ装置201に対して、完了メッセージを送信する。   Since the terminal device 202d has acquired all the fragments for the content B at the time of acquiring the fragment b6, the terminal device 202d transmits a completion message to the server device 201 after restoring the content B.

このような処理手順に従って、複数の端末装置202は、サーバ装置201からのデータの提供を受けることになる。この場合、データを複数の断片に分けて、巡回的に端末装置202に送信することにより、サーバ装置201は、コンテンツ全データを個別に端末装置に送信するときと比べて、負荷を受けずに処理を継続することができる。   In accordance with such a processing procedure, the plurality of terminal apparatuses 202 receive provision of data from the server apparatus 201. In this case, by dividing the data into a plurality of fragments and cyclically transmitting the data to the terminal device 202, the server device 201 is not subjected to a load as compared to when transmitting all the content data individually to the terminal device. Processing can continue.

また、各断片は、UDPという通信プロトコルを使用して送信する。UDPを使用すると宛先に到達したか否かを判定しないため、高速な通信が可能となる。   Each fragment is transmitted using a communication protocol called UDP. If UDP is used, it is not determined whether or not the destination has been reached, so that high-speed communication is possible.

図5は、本実施形態に係るサーバ装置の概要構成を示す模式図である。図6は、本実施形態に係るサーバ装置にて実行されるサービス方法のサービス処理の制御の流れを示すフローチャートである。図7は、本実施形態に係るサーバ装置にて実行されるサービス方法の受信処理の制御の流れを示すフローチャートである。図8は、本実施形態に係るサーバ装置にて実行されるサービス方法の送信処理の制御の流れを示すフローチャートである。 以下、本図を参照して説明する。なお、以下の説明では、サーバ装置201が上記の情報処理装置100上に実現されている場合を例にあげて説明する。   FIG. 5 is a schematic diagram showing a schematic configuration of the server apparatus according to the present embodiment. FIG. 6 is a flowchart showing a flow of control of service processing of a service method executed by the server device according to the present embodiment. FIG. 7 is a flowchart showing a flow of control of reception processing of a service method executed by the server device according to the present embodiment. FIG. 8 is a flowchart showing a flow of control of the transmission process of the service method executed by the server device according to the present embodiment. Hereinafter, a description will be given with reference to FIG. In the following description, a case where the server apparatus 201 is realized on the information processing apparatus 100 will be described as an example.

サーバ装置201は、要求受信部501、追加部502、記憶部503、取得部504、断片送信部505、完了受信部506、接続受信部507、削除部508を備える。   The server apparatus 201 includes a request reception unit 501, an addition unit 502, a storage unit 503, an acquisition unit 504, a fragment transmission unit 505, a completion reception unit 506, a connection reception unit 507, and a deletion unit 508.

ここで、記憶部503は、データをデータ識別名に対応付けて記憶する。当該データは、将来端末装置202にダウンロードされるであろうデータである。   Here, the storage unit 503 stores the data in association with the data identification name. The data is data that will be downloaded to the terminal device 202 in the future.

図6に示すように、本サービス処理は、サーバ装置201が初期化(ステップS601)され、受信処理と(ステップS602)、送信処理(ステップS603)とを並列に開始する。   As shown in FIG. 6, in this service process, the server apparatus 201 is initialized (step S601), and the reception process (step S602) and the transmission process (step S603) are started in parallel.

図7に示すように、受信処理が開始すると、サーバ装置201は、端末装置202からメッセージを受信し(ステップS701)、そのメッセージの種類を判断する(ステップS702)。
メッセージが、要求メッセージである場合は、そのメッセージは、要求受信部501において、受信される。要求メッセージは、要求を送信した送信元の端末装置の端末識別名と、要求したコンテンツ等のデータ識別名とを指定するメッセージである。
As shown in FIG. 7, when the reception process starts, the server apparatus 201 receives a message from the terminal apparatus 202 (step S701), and determines the type of the message (step S702).
If the message is a request message, the message is received by the request reception unit 501. The request message is a message that designates the terminal identification name of the transmission source terminal device that transmitted the request and the data identification name of the requested content or the like.

要求受信部501で、要求メッセージが受信されると、当該データ識別名と当該端末識別名とが、接続情報として、追加部502により記憶部503に追加される(ステップS703)。   When the request message is received by the request receiving unit 501, the data identification name and the terminal identification name are added as connection information to the storage unit 503 by the adding unit 502 (step S703).

一方、メッセージが、端末装置202が要求したデータを復元したときに送信される完了メッセージである場合、削除部508は、その端末装置202の端末識別名と要求メッセージで指定されたデータ識別名を記録部503から削除する(ステップS704)。   On the other hand, when the message is a completion message transmitted when the data requested by the terminal device 202 is restored, the deletion unit 508 uses the terminal identification name of the terminal device 202 and the data identification name specified in the request message. It deletes from the recording part 503 (step S704).

また、メッセージが、端末装置202からの接続メッセージであり、当該メッセージが接続受信部507で受信された場合には、その時刻を記録する(ステップS705)。   If the message is a connection message from the terminal device 202 and the message is received by the connection reception unit 507, the time is recorded (step S705).

サーバ装置201が、その他のメッセージを受信した場合には、そのメッセージに従った処理を行うことになる(ステップS706)。   When the server apparatus 201 receives another message, the server apparatus 201 performs processing according to the message (step S706).

それぞれのメッセージに応じた処理が完了した後、記憶部503において、記録された時刻がかなり前であるか否かが判断され、記録された時刻がかなり前である場合には(ステップS707;YES)、対応するメッセージに応じたデータは、記憶部503から削除される(ステップS708)。記録された時刻がかなり前でない場合には(ステップS707;NO)、データは削除されない。この一連の処理は、全端末装置202について、繰り返される(ステップS709)。   After the processing corresponding to each message is completed, it is determined in the storage unit 503 whether or not the recorded time is much earlier. If the recorded time is much earlier (step S707; YES) ), Data corresponding to the corresponding message is deleted from the storage unit 503 (step S708). If the recorded time is not much before (step S707; NO), the data is not deleted. This series of processing is repeated for all terminal devices 202 (step S709).

追加部502によって記憶部503に記憶された端末識別名とデータ識別名は、接続情報として、記憶部503に記憶されている。取得部504では、複数の端末装置202から受信したデータ識別名を重複なく取得する。例えば、データ識別名A、B、Cという3種類のデータを、時系列的に、AABACCABという順序で取得した場合、取得部504では、A、B、C各々ひとつづつのデータ識別名を取得する。   The terminal identification name and the data identification name stored in the storage unit 503 by the adding unit 502 are stored in the storage unit 503 as connection information. The acquisition unit 504 acquires the data identification names received from the plurality of terminal devices 202 without duplication. For example, when three types of data of data identification names A, B, and C are acquired in the order of AABACCAB in time series, the acquisition unit 504 acquires one data identification name for each of A, B, and C. .

そして、取得されたデータ識別名毎に、データを分割して断片を取得する。例えば、データ識別名Aを6つに分割して、6個の断片を取得する。   Then, for each acquired data identification name, the data is divided to obtain fragments. For example, the data identification name A is divided into six to obtain six pieces.

各断片の大きさは、UDP通信のパケットとして伝送するのに適したサイズとすることが望ましい。これは、ネットワークの状況によって変化するが、過去の通信履歴から統計的にサイズを求めることができる。   The size of each fragment is preferably a size suitable for transmission as a UDP communication packet. This varies depending on the network conditions, but the size can be statistically obtained from the past communication history.

更に、取得された各断片は、元のデータで配置されていた位置を指定される。例えば、分割総数○○個の断片のうち当該断片は先頭から数えて○○番目の断片である、という情報を、所定のフォーマットで指定するものとする。
より具体的には、データ識別名Aを6つに分割して出来た6個の断片は、元のデータで配置されていた順番で、(1/6)、(2/6)、(3/6)、(4/6)、(5/6)、(6/6)という位置情報が与えられる。
Furthermore, each acquired fragment is designated at the position where it was arranged with the original data. For example, it is assumed that information indicating that the fragment is the XXth fragment counted from the top of the XX fragments is designated in a predetermined format.
More specifically, the six fragments obtained by dividing the data identification name A into six are (1/6), (2/6), (3 / 6), (4/6), (5/6), (6/6) location information is given.

元のデータ識別名は、上述の例のように適当な文字列の形式を定めてこれによって表現しても良いし、整数により識別番号形式で表現しても良い。   The original data identification name may be expressed by determining an appropriate character string format as in the above example, or may be expressed in an identification number format by an integer.

断片そのものを指定する際には、通信路の途中での通信障害によりデータが壊れたり、第三者の妨害によってデータが改変されたりしたことを検出するため、チェックサムなどを合わせて指定しても良い。   When specifying the fragment itself, specify the checksum etc. together to detect that the data has been corrupted due to a communication failure in the middle of the communication path, or that the data has been altered due to interference from a third party. Also good.

従って、記憶部503には、データ要求元の端末識別名、それに対応するデータ識別名、データ自身、断片自身、断片の位置情報が記憶されることになる。   Therefore, the storage unit 503 stores the terminal identification name of the data request source, the corresponding data identification name, the data itself, the fragment itself, and the fragment position information.

そして、断片は、断片の位置情報とともに、断片メッセージとして、断片送信部505から要求元の端末装置202へ送信されることになる。
断片の送信(ステップS804)は、図8に示すように、各端末装置202について(ステップS801)、断片ごと(ステップS802)に、各データ識別名について(ステップS803)繰り返し行われることになる。
Then, the fragment is transmitted from the fragment transmitting unit 505 to the requesting terminal device 202 as a fragment message together with the fragment position information.
As shown in FIG. 8, the fragment transmission (step S804) is repeatedly performed for each data identification name (step S803) for each terminal device 202 (step S801), for each fragment (step S802).

ここで、記憶部503におけるデータの記憶状況を、図3及び図4の流れに沿って、図9図により説明する。   Here, the data storage state in the storage unit 503 will be described with reference to FIG. 9 along the flow of FIG. 3 and FIG.

図9の表900には、記憶部503の接続情報の蓄積状況がどのように推移していくかを、システム起動時、各端末装置202a〜202dがコンテンツ要求信号送信時及び完了メッセージ送信時を基準に時系列として示したものである。   A table 900 in FIG. 9 shows how the connection information accumulation state of the storage unit 503 changes, when the system is activated, when each terminal device 202a to 202d transmits a content request signal and when a completion message is transmitted. It is shown as a time series in the standard.

システムに立ち上がった時点(t0)では、記憶部503は、接続情報のデータは空の状態である。まず、端末装置202aからコンテンツAのデータを要求するメッセージが送信された場合(t1)、追加部502によって、記憶部503には、端末装置202aの端末識別名Xとデータ識別名Aが追加される。すなわち、記憶部503には、接続情報である(端末装置名、データ識別名)が(X、A)という形式で記憶される。サーバ装置201は、データ識別名Aに対応する断片a1〜a6を端末装置202aに巡回的に送信する。   At the time (t0) when the system is started up, the storage unit 503 has the connection information data empty. First, when a message requesting data of content A is transmitted from the terminal device 202a (t1), the adding unit 502 adds the terminal identification name X and the data identification name A of the terminal device 202a to the storage unit 503. The That is, the storage unit 503 stores connection information (terminal device name, data identification name) in the format (X, A). The server apparatus 201 cyclically transmits the fragments a1 to a6 corresponding to the data identification name A to the terminal apparatus 202a.

次に、端末装置202bからコンテンツBのデータを要求するメッセージが送信された場合(t2)、追加部502によって、記憶部503には、端末装置202bの端末識別名Yとデータ識別名Bが追加される。この時点で、記憶部503には、接続情報として(X、A)、(Y、B)が記憶されている。サーバ装置201は、データ識別名Bに該当する断片b1〜b8を端末装置202bに巡回的に送信する。   Next, when a message requesting content B data is transmitted from the terminal device 202b (t2), the adding unit 502 adds the terminal identification name Y and the data identification name B of the terminal device 202b to the storage unit 503. Is done. At this time, the storage unit 503 stores (X, A), (Y, B) as connection information. The server apparatus 201 cyclically transmits the fragments b1 to b8 corresponding to the data identification name B to the terminal apparatus 202b.

更に、 端末装置202cからコンテンツBのデータを要求するメッセージが送信された場合(t3)、追加部502によって、記憶部503には、端末装置202cの端末識別名Zとデータ識別名Bが追加される。この時点で、記憶部503には、接続情報として(X、A)、(Y、B)、(Z、B)が記憶されている。サーバ装置201は、データ識別名Bに該当する断片b1〜b8を端末装置202cに巡回的に送信する。   Furthermore, when a message requesting data of content B is transmitted from the terminal device 202c (t3), the terminal identification name Z and the data identification name B of the terminal device 202c are added to the storage unit 503 by the adding unit 502. The At this time, the storage unit 503 stores (X, A), (Y, B), (Z, B) as connection information. The server apparatus 201 cyclically transmits the fragments b1 to b8 corresponding to the data identification name B to the terminal apparatus 202c.

そして、端末装置202dからコンテンツBのデータを要求するメッセージが送信された場合(t4)、追加部502によって、記憶部503には、端末装置202dの端末識別名Wとデータ識別名Bが追加される。サーバ装置201は、データ識別名Bに該当する断片b1〜b8を端末装置202dに巡回的に送信する。   When a message requesting data of content B is transmitted from the terminal device 202d (t4), the adding unit 502 adds the terminal identification name W and the data identification name B of the terminal device 202d to the storage unit 503. The The server apparatus 201 cyclically transmits the fragments b1 to b8 corresponding to the data identification name B to the terminal apparatus 202d.

この時点で、記憶部503には、接続情報として、(X、A)、(Y、B)、(Z、B)、(W、B)が記憶されていることになる。   At this time, (X, A), (Y, B), (Z, B), (W, B) are stored in the storage unit 503 as connection information.

その後、端末装置202aが全ての断片を受信して、完了メッセージをサーバ装置201に送信すると(t5)、記憶部503に記憶された端末装置202aの接続情報である(X、A)は、削除部508によって削除されることになる。従って、記憶部503には接続情報として(Y、B)、(Z、B)、(W、B)が残る。   Thereafter, when the terminal device 202a receives all fragments and transmits a completion message to the server device 201 (t5), the connection information (X, A) of the terminal device 202a stored in the storage unit 503 is deleted. The part 508 is deleted. Therefore, (Y, B), (Z, B), (W, B) remain as connection information in the storage unit 503.

同様に、端末装置202bが完了メッセージをサーバ装置201に送信すると(t6)、記憶部503の接続情報(Y、B)が、削除されるので、記憶部503には、接続情報として(Z、B)、(W、B)が残る。   Similarly, when the terminal device 202b transmits a completion message to the server device 201 (t6), the connection information (Y, B) in the storage unit 503 is deleted, so the storage unit 503 stores (Z, B) and (W, B) remain.

更に、端末装置202cが完了メッセージを送信すると(t7)、接続情報(Z、B)が、記憶部503から、削除部508によって削除されるので、接続情報としては、(W、B)が記憶部503に残ることになる。   Furthermore, when the terminal device 202c transmits a completion message (t7), the connection information (Z, B) is deleted from the storage unit 503 by the deletion unit 508, so that (W, B) is stored as the connection information. Part 503 remains.

最後に、端末装置202dが完了メッセージを送信すると(t8)、接続情報(W、B)が、記憶部503から削除され、この時点で記憶部503の接続情報は空の状態となる。   Finally, when the terminal device 202d transmits a completion message (t8), the connection information (W, B) is deleted from the storage unit 503, and the connection information in the storage unit 503 becomes empty at this point.

これらの一連の処理において、サーバ装置201は、どの端末装置202がどの断片を入手したかは管理していないため、サーバ装置201での計算処理の負荷は少なく、効率のよいサーバ処理を行うことができる。    In these series of processes, the server apparatus 201 does not manage which terminal apparatus 202 has obtained which fragment, and therefore, the server apparatus 201 has a small calculation processing load and performs efficient server processing. Can do.

なお、サーバ装置201で受信される要求メッセージ及び完了メッセージは、コネクション型プロトコルにより受信される。   The request message and the completion message received by the server device 201 are received by a connection type protocol.

コネクション型プロトコルは、通信を開始するときに、送信側から接続要求を出し、相手方からは接続応答があり、コネクションを確立してからデータを送信することを特徴としている。送信側からデータが送信されると、受信側では確認応答(Acknowledgment::ACK)を送って、確実に受信したことを伝える。   The connection-type protocol is characterized in that when communication is started, a connection request is issued from the transmission side, a connection response is received from the other party, and data is transmitted after the connection is established. When data is transmitted from the transmitting side, the receiving side sends an acknowledgment (Acknowledgment :: ACK) to notify that it has been received reliably.

コネクション型プロトコルは、通信効率は優先せずに、信頼性の高いデータ伝送を望む場合に使用されることが多い。本実施態様においても、要求メッセージ及び完了メッセージは、確実に送受信することが望まれるので、コネクション型プロトコルを使用することが好ましい。   The connection-type protocol is often used when reliable data transmission is desired without giving priority to communication efficiency. Also in this embodiment, since it is desired to transmit and receive the request message and the completion message reliably, it is preferable to use a connection type protocol.

インターネットのトランスポート層では、TCP(Transmission Control Protocol)が使用される。   TCP (Transmission Control Protocol) is used in the transport layer of the Internet.

一方、サーバ装置から送信される断片メッセージには、コネクションレス型プロトコルを使用することが好ましい。   On the other hand, it is preferable to use a connectionless protocol for the fragment message transmitted from the server device.

コネクションレス型プロトコルは、データ伝送を始める前にコネクションを確立しない通信プロトコルである。コネクションレス型プロトコルは、宛先のみを指定してデータを送信するので、コネクションの確立やACKなどの通信データの送信等の処理がないため、通信効率がよい。   The connectionless protocol is a communication protocol that does not establish a connection before starting data transmission. Since the connectionless protocol transmits data by designating only the destination, there is no processing such as establishment of a connection or transmission of communication data such as ACK, so that communication efficiency is high.

本実施形態においても、断片送受信については、通信の信頼性はある程度犠牲にしても、通信効率を求められるので、コネクションレス型プロトコルを使用することが好適である。   Also in the present embodiment, for fragment transmission / reception, it is preferable to use a connectionless protocol because communication efficiency is required even if communication reliability is sacrificed to some extent.

インターネットのトランスポート層では、UDP(User Datagram Protocol)が採用される。UDPは、ポート番号以外のTCPの機能を全て削除した通信プロトコルである。   UDP (User Datagram Protocol) is employed in the transport layer of the Internet. UDP is a communication protocol in which all TCP functions other than port numbers are deleted.

このように、本実施形態では、送信元から要求されたデータを、複数の断片に分割して、巡回的に送信することにより、サーバ装置の負荷を軽減することができる。   As described above, in this embodiment, the data requested by the transmission source is divided into a plurality of fragments and transmitted cyclically, thereby reducing the load on the server device.

また、サーバ装置におけるデータの送受信において、受信するメッセージである受信メッセージと完了メッセージは、信頼性の高いコネクション型プロトコルを使用するとともに、送信するメッセージであるデータの断片については、コネクションレス型プロトコルを使用することにより、サーバ装置の負荷を更に軽減することができる。    In addition, in the transmission and reception of data in the server device, the received message and the completion message that are received use a reliable connection type protocol, and the data fragment that is the message to be transmitted is connected to the connectionless protocol. By using it, the load on the server device can be further reduced.

図10は、本実施形態に係る端末装置の概要構成を示す模式図である。図11は、本実施形態に係る端末装置にて実行される端末方法の端末処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。なお、以下の説明では、端末装置202が上記の情報処理装置100上に実現されている場合を例にあげて説明する。   FIG. 10 is a schematic diagram illustrating a schematic configuration of the terminal device according to the present embodiment. FIG. 11 is a flowchart showing a control flow of terminal processing of the terminal method executed by the terminal device according to the present embodiment. Hereinafter, a description will be given with reference to FIG. In the following description, a case where the terminal device 202 is realized on the information processing apparatus 100 will be described as an example.

複数の端末装置202は、それぞれ、要求送信部1001、接続送信部1002、断片受信部1003、蓄積部1004、復元部1005、完了送信部1006を備える。   Each of the plurality of terminal devices 202 includes a request transmission unit 1001, a connection transmission unit 1002, a fragment reception unit 1003, a storage unit 1004, a restoration unit 1005, and a completion transmission unit 1006.

本処理が開始されると、各端末装置202の要求送信部1001は、サーバ装置201へ要求メッセージを送信する。(ステップS1101)要求メッセージには、要求するデータのデータ識別名と、送信元である端末識別名とが含まれる。   When this process is started, the request transmission unit 1001 of each terminal device 202 transmits a request message to the server device 201. (Step S1101) The request message includes the data identification name of the requested data and the terminal identification name that is the transmission source.

各端末装置202では、サーバ装置201から断片メッセージが到着したか否かが判断され、断片メッセージが到着した場合(ステップS1102;YES)には、NIC109を介して、サーバ装置201で生成されたデータの断片を、断片受信部1003において巡回的に受信する(ステップS1103)。   Each terminal device 202 determines whether or not a fragment message has arrived from the server device 201. If the fragment message has arrived (step S1102; YES), the data generated by the server device 201 via the NIC 109 is determined. Are received cyclically by the fragment receiver 1003 (step S1103).

受信された断片が、初めて受信した断片であった場合(ステップS1104;YES)、蓄積部1004において、断片メッセージにより指定される断片のデータ内容と、当該断片が元のデータにおいてどの位置に配置されていたかを示す位置情報とが、対応付けられて蓄積される(ステップS1105)。   If the received fragment is a fragment received for the first time (step S1104; YES), in the storage unit 1004, the data content of the fragment specified by the fragment message and where the fragment is located in the original data. Position information indicating whether or not it has been stored is stored in association with each other (step S1105).

受信された断片が、既に受信した断片であった場合(ステップS1104;NO)、その断片は削除され(ステップS1106)、新しい断片が到着したかを判断する(ステップS1102)。   If the received fragment is a fragment that has already been received (step S1104; NO), the fragment is deleted (step S1106), and it is determined whether a new fragment has arrived (step S1102).

断片メッセージが到着していない場合(ステップS1102;NO)には、一定時間が経過したか否かを判断し、一定時間が経過していれば(ステップS1107;YES)、接続送信部1002から接続メッセージが送信され(ステップS1108)、断片メッセージの到着に備える(ステップS1102)。一定時間が経過していなければ(ステップS1107;NO)、接続メッセージは送信されず、断片メッセージの到着に備える(ステップS1102)。   If the fragment message has not arrived (step S1102; NO), it is determined whether or not a certain time has passed. If the certain time has passed (step S1107; YES), the connection transmission unit 1002 connects. A message is transmitted (step S1108) and prepared for the arrival of the fragment message (step S1102). If the predetermined time has not elapsed (step S1107; NO), the connection message is not transmitted, and the fragment message is prepared for arrival (step S1102).

蓄積部1004において、断片とその位置情報を蓄積した場合には、更に、要求した全ての断片を蓄積したかを判断し(ステップS1109)、要求したデータの全ての断片を蓄積した場合には(ステップS1109;YES)、位置情報に基づいて、復元部1005にてデータを復元する(ステップS1010)。そして、完了送信部1006が、完了メッセージをサーバ装置201に送信して(ステップ1011)、処理を終了する。   When the storage unit 1004 stores the fragments and the position information thereof, it is further determined whether all the requested fragments have been stored (step S1109). When all the fragments of the requested data are stored (step S1109) Step S1109; YES), based on the position information, the restoration unit 1005 restores the data (step S1010). Then, the completion transmission unit 1006 transmits a completion message to the server apparatus 201 (step 1011), and the process is terminated.

一方、全ての断片を蓄積していない場合(ステップ1109;NO)には、一定時間が経過したか否かを判断し(ステップS1107)、一定時間が経過している場合には(ステップS1107;YES)、接続送信部1002からサーバ装置201へ接続メッセージを送信し(ステップS1108)、断片メッセージの到着に備える(ステップS1102)。
一定時間が経過していない場合には(ステップS1107;NO)、接続メッセージは送信せず、断片メッセージの到着に備える(ステップS1102)。
そして、全ての断片を取得するまで、この処理は繰り返される。
On the other hand, if not all fragments have been accumulated (step 1109; NO), it is determined whether or not a certain time has passed (step S1107). If a certain time has passed (step S1107; (YES), a connection message is transmitted from the connection transmission unit 1002 to the server device 201 (step S1108) to prepare for the arrival of the fragment message (step S1102).
If the predetermined time has not elapsed (step S1107; NO), the connection message is not transmitted, and the fragment message is prepared for arrival (step S1102).
This process is repeated until all fragments are acquired.

ここで、端末装置202において、断片が蓄積していく過程を、図3、図4における端末装置202dでの処理フローを例に、以下説明する。   Here, the process in which the fragments are accumulated in the terminal device 202 will be described below by taking the processing flow in the terminal device 202d in FIGS. 3 and 4 as an example.

端末装置202dがBコンテンツを要求する要求メッセージを送信した場合、サーバ装置201は、既にコンテンツBの断片b4まで送信しているので、断片b5を端末202dに送信する。   When the terminal device 202d transmits a request message for requesting B content, the server device 201 has already transmitted up to the fragment B4 of the content B, and therefore transmits the fragment b5 to the terminal 202d.

サーバ装置201は、断片を送信する際には、断片メッセージとして、その断片自身と断片の分割元の配置位置情報とを含めて送信する。従って、端末装置202dで断片b5を受信する際には、断片自体b5と断片の位置情報、すなわち(b5,5/8)というデータを受信し、蓄積部1004に蓄積する。   When transmitting the fragment, the server apparatus 201 transmits the fragment itself including the fragment itself and the arrangement position information of the fragment source. Therefore, when the terminal device 202d receives the fragment b5, the fragment itself b5 and fragment position information, that is, data (b5, 5/8) are received and stored in the storage unit 1004.

断片b6は、受信ミスで、受信できないので、蓄積部1004にはデータは蓄積されない。断片b7は受信されるので、蓄積部904に、(b7、7/8)というデータとして蓄積される。この時点は、蓄積部1004には、(b5、5/8)、(b7、7/8)というデータが蓄積される。   Since the fragment b6 cannot be received due to a reception error, no data is stored in the storage unit 1004. Since the fragment b7 is received, it is stored in the storage unit 904 as data (b7, 7/8). At this time, the storage unit 1004 stores data (b5, 5/8) and (b7, 7/8).

断片b8も受信され、蓄積部1004に、(b8、8/8)というデータが蓄積される。
従って、蓄積部1004には、(b5,5/8)、(b7,7/8)、(b8,8/8)というデータが蓄積されることになる。
The fragment b8 is also received, and data (b8, 8/8) is accumulated in the accumulation unit 1004.
Therefore, the storage unit 1004 stores data (b5, 5/8), (b7, 7/8), and (b8, 8/8).

断片は巡回的に送信されているので、続いて、断片b1、断片b2、断片b3、断片b4の順で断片メッセージが端末装置202dで受信されるので、この時点で蓄積部904には、(b5,5/8)、(b7,7/8)、(b8,8/8)、(b1,1/8)、(b2、2/8)、(b3、3/8)、(b4、4/8)というデータが蓄積されることになる。   Since the fragments are transmitted cyclically, subsequently, since the fragment message is received by the terminal device 202d in the order of the fragment b1, the fragment b2, the fragment b3, and the fragment b4, the storage unit 904 stores ( b5, 5/8), (b7, 7/8), (b8, 8/8), (b1, 1/8), (b2, 2/8), (b3, 3/8), (b4, 4/8) will be accumulated.

端末装置202dは、受信ミスをしていなければ、この段階で全ての断片が揃うことになるが、断片b6を受信していないので、更に受信を継続する。
すなわち、端末装置202dは、断片b5,断片b6の順で断片メッセージを受信するが、断片b5は既に受信しているために蓄積部1004には蓄積されず、断片b6の断片メッセージ(b6,6/8)のみが蓄積部1004に蓄積される。
If the terminal device 202d has not made a reception error, all the fragments are prepared at this stage, but since the fragment b6 has not been received, the terminal device 202d continues receiving.
That is, the terminal device 202d receives the fragment messages in the order of fragment b5 and fragment b6, but since the fragment b5 has already been received, it is not stored in the storage unit 1004, and the fragment message (b6, 6 of the fragment b6 is not stored. / 8) only is stored in the storage unit 1004.

この時点でコンテンツBの断片は、全て揃うことになり、蓄積部1004には、(b5,5/8)、(b7,7/8)、(b8,8/8)、(b1,1/8)、(b2、2/8)、(b3,3/8)、(b4,4/8)、(b6,6/8)というデータが蓄積されることになる。   At this time, all the pieces of content B are collected, and the storage unit 1004 has (b5, 5/8), (b7, 7/8), (b8, 8/8), (b1, 1 / 8), (b2, 2/8), (b3, 3/8), (b4, 4/8), (b6, 6/8) data are accumulated.

そして、蓄積部1004に蓄積された各データは、断片それぞれに付与された位置情報に基づいて正式な順番に並び替えられる。すなわち、(b1,1/8)、(b2,2/8)、(b3,3/8)、(b4、4/8)、(b5,5/8)、(b6,6/8)、(b7,7/8)、(b8,8/8)と並び替えられ、コンテンツBが復元される。   Each piece of data stored in the storage unit 1004 is rearranged in a formal order based on position information given to each fragment. That is, (b1, 1/8), (b2, 2/8), (b3, 3/8), (b4, 4/8), (b5, 5/8), (b6, 6/8), The content B is restored by rearranging (b7, 7/8) and (b8, 8/8).

尚、本実施形態では、端末装置202dを例に、蓄積部1004におけるデータ蓄積過程を説明したが、他の端末装置202a、202b、202cにおいても同様な処理が行われる。   In the present embodiment, the data storage process in the storage unit 1004 has been described by taking the terminal device 202d as an example, but similar processing is performed in the other terminal devices 202a, 202b, and 202c.

このように、端末装置202で、要求したデータを断片の状態で巡回的に受信することになるので、サーバ装置201の負担を軽減することができる。さらに、サーバ装置201が、端末装置202から送信される接続信号に基づいて、接続状況を常時確認できるので、両者間で無駄な通信を行うこと回避することができる。   In this way, since the requested data is cyclically received in the state of fragments in the terminal device 202, the burden on the server device 201 can be reduced. Furthermore, since the server apparatus 201 can always check the connection status based on the connection signal transmitted from the terminal apparatus 202, it is possible to avoid performing unnecessary communication between the two.

(変形例1)
通信状態が悪い等の原因で、断片を受信できなかった場合、上記の実施形態では、巡回的に送信される断片を繰り返し取得することで、未取得の断片を取得しているが、本変形例によれば、未取得の断片のみを個別に受信することもできる。以下に、その断片受信方法を説明する。
(Modification 1)
If the fragment cannot be received due to a bad communication state or the like, in the above embodiment, the unacquired fragment is acquired by repeatedly acquiring the fragment transmitted cyclically. According to the example, only unacquired fragments can be received individually. Hereinafter, the fragment receiving method will be described.

端末装置202では、蓄積部1004で断片の位置情報を蓄積しているので、一定期間内における断片受信個数と位置情報を確認することができる。例えば、コンテンツBの断片をb1からb8まで取得した場合、全ての断片を取得していれば位置情報は1/8〜8/8まで揃い、端末装置202は、100%の確率で断片を受信していることになる。   In the terminal device 202, since the position information of the fragments is accumulated in the accumulation unit 1004, the number of fragments received and the position information within a certain period can be confirmed. For example, when pieces of content B are obtained from b1 to b8, if all pieces are obtained, the position information is 1/8 to 8/8, and the terminal device 202 receives the pieces with a probability of 100%. Will be.

一方、断片b1からb8まで取得する間、断片b3,b5を受信できなかった場合には、位置情報3/8,5/8がないことがわかり、端末装置202は、3/4の確率で断片を受信していることがわかる。   On the other hand, if the fragments b3 and b5 are not received during the acquisition of the fragments b1 to b8, it is found that there is no position information 3/8, 5/8, and the terminal device 202 has a probability of 3/4. It can be seen that the fragment is received.

このように、一定期間内における断片個数と位置情報を確認することにより、その期間における通信状況が良好か否かを判断することができる。
従って、端末装置202は、一定値の受信確率以上であれば、通信状況が良好と判断して、サーバ装置201に対して、受信できなかった断片の再送を指示する。
指示を受信したサーバ装置201は、当該断片を個別に送信することになる。
In this way, by confirming the number of pieces and position information within a certain period, it is possible to determine whether or not the communication status in that period is good.
Therefore, if the terminal device 202 is equal to or higher than a certain value of the reception probability, the terminal device 202 determines that the communication status is good and instructs the server device 201 to retransmit the fragment that could not be received.
The server apparatus 201 that has received the instruction transmits the fragment individually.

サーバ装置201が、当該断片を送信する際には、確実に送信する必要があるためコネクション型の通信プロトコルを使用することが望ましい。   When the server apparatus 201 transmits the fragment, it is desirable to use a connection-type communication protocol because it is necessary to transmit the fragment reliably.

一方、受信確率が一定値以下である場合には、通信状況が良好ではないと判断され、端末装置202からの再送指示は行わない。この場合には、上記実施形態における送信方法であるUDP形式での断片送信を行うことになる。   On the other hand, if the reception probability is equal to or less than a certain value, it is determined that the communication status is not good, and no retransmission instruction is issued from the terminal device 202. In this case, fragment transmission in the UDP format, which is the transmission method in the above embodiment, is performed.

このように、本変形例によれば、サーバ装置と端末装置との間の通信状態が良好であれば、個別に未受信の断片を取得することができ、端末装置でのデータ復元を速やかに実行することができる。   Thus, according to this modification, if the communication state between the server device and the terminal device is good, it is possible to individually acquire unreceived fragments and quickly restore data in the terminal device. Can be executed.

以上説明したように、ネットワーク経由で複数の端末で同一のデータを取得する際に、サーバの負担を軽減でき、データの伝送効率を向上させることができる配信システム、サーバ装置、端末装置、サービス方法、端末方法、並びにこれらをコンピュータにて実現するプログラムを提供することができる。   As described above, a distribution system, a server device, a terminal device, and a service method that can reduce the load on the server and improve the data transmission efficiency when acquiring the same data by a plurality of terminals via a network. , A terminal method, and a program that implements these on a computer can be provided.

100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェイス
105 コントローラ
106 外部メモリ
107 画像処理部
108 DVD−ROMドライブ
109 NIC
110 音声処理部
200 配信システム
201 サーバ装置
202 端末装置
203 ネットワーク
501 要求受信部
502 追加部
503 記憶部
504 取得部
505 断片送信部
506 完了受信部
507 接続受信部
508 削除部
1001 要求送信部
1002 接続送信部
1003 断片受信部
1004 蓄積部
1005 復元部
1006 完了送信部
100 Information processing apparatus 101 CPU
102 ROM
103 RAM
104 Interface 105 Controller 106 External Memory 107 Image Processing Unit 108 DVD-ROM Drive 109 NIC
110 voice processing unit 200 distribution system 201 server device 202 terminal device 203 network 501 request receiving unit 502 adding unit 503 storage unit 504 obtaining unit 505 fragment transmitting unit 506 completion receiving unit 507 connection receiving unit 508 deleting unit 1001 request transmitting unit 1002 connection transmission Unit 1003 fragment receiving unit 1004 accumulating unit 1005 restoring unit 1006 completion transmitting unit

Claims (11)

サーバ装置と、当該サーバ装置と通信可能に接続される複数の端末装置と、を有する配信システムであって、
(a)前記サーバ装置は、
端末識別名と、データ識別名と、が指定される接続情報が記憶される記憶部、
前記複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信する要求受信部、
前記要求メッセージが受信されると、当該要求メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、を指定する接続情報を、前記記憶部に追加する追加部、
前記記憶部に接続情報が記憶されている間、当該記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、当該重複なく取得されたデータ識別名毎に、当該データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得する取得部、
前記断片が取得されると、当該断片と、当該断片の分割元のデータ内において、当該断片が配置されていた位置と、を指定する断片メッセージを、当該断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する断片送信部、
前記複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信する完了受信部、
前記完了メッセージが受信されると、当該完了メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、が指定されている接続情報を、前記記憶部から削除する削除部
を備え、
(b)前記複数の端末装置のそれぞれは、
前記サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信する要求送信部、
前記所望のデータが復元されるまで、前記サーバ装置から、断片メッセージを受信する断片受信部、
前記受信された断片メッセージに指定される断片と、当該断片が当該所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する蓄積部、
前記所望のデータを分割することにより得られるすべての断片が蓄積されると、当該蓄積された断片のそれぞれと、当該蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、当該所望のデータを復元する復元部、
前記所望のデータが復元されると、前記サーバ装置へ、当該所望のデータのデータ識別名を指定する完了メッセージを送信する完了送信部
を備えることを特徴とする配信システム。
A distribution system having a server device and a plurality of terminal devices connected to be communicable with the server device,
(A) The server device
A storage unit for storing connection information for specifying a terminal identification name and a data identification name;
A request receiving unit for receiving a request message designating a data identification name from any of the plurality of terminal devices;
When the request message is received, the connection information specifying the terminal identification name of the terminal device that is the transmission source of the request message and the data identification name specified in the request message is added to the storage unit Part,
While the connection information is stored in the storage unit, the data identification name specified for each of the stored connection information is obtained without duplication, and the data is obtained for each data identification name obtained without duplication. An acquisition unit that acquires a fragment obtained by dividing data associated with an identification name in a predetermined cyclic order;
When the fragment is acquired, the fragment message that specifies the fragment and the position where the fragment is located in the data that is the source of the fragment, and the connection that caused the fragment to be acquired A fragment transmitter for transmitting to each of the terminal devices having the terminal identification name specified in the information;
A completion receiving unit for receiving a completion message designating a data identification name from any of the plurality of terminal devices;
When the completion message is received, the connection information in which the terminal identification name of the terminal device that is the transmission source of the completion message and the data identification name specified in the request message are deleted from the storage unit With a deletion part
(B) Each of the plurality of terminal devices is
A request transmission unit for transmitting a request message for designating a data identification name of desired data to the server device;
A fragment receiver for receiving a fragment message from the server device until the desired data is restored;
An accumulation unit that accumulates the fragment specified in the received fragment message and the position where the fragment is arranged in the desired data in association with each other;
When all the fragments obtained by dividing the desired data are accumulated, each desired fragment is obtained from each of the accumulated fragments and the position accumulated in association with each of the accumulated fragments. Restore unit to restore data,
A distribution system comprising: a completion transmission unit that transmits a completion message designating a data identification name of the desired data to the server device when the desired data is restored.
複数の端末装置と通信可能に接続されるサーバ装置であって、
端末識別名と、データ識別名と、が指定される接続情報が記憶される記憶部、
前記複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信する要求受信部、
前記要求メッセージが受信されると、当該要求メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、を指定する接続情報を、前記記憶部に追加する追加部、
前記記憶部に接続情報が記憶されている間、当該記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、当該重複なく取得されたデータ識別名毎に、当該データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得する取得部、
前記断片が取得されると、当該断片と、当該断片の分割元のデータ内において、当該断片が配置されていた位置と、を指定する断片メッセージを、当該断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する断片送信部、
前記複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信する完了受信部、
前記完了メッセージが受信されると、当該完了メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、が指定されている接続情報を、前記記憶部から削除する削除部
を備えることを特徴とするサーバ装置。
A server device communicably connected to a plurality of terminal devices,
A storage unit for storing connection information for specifying a terminal identification name and a data identification name;
A request receiving unit for receiving a request message designating a data identification name from any of the plurality of terminal devices;
When the request message is received, the connection information specifying the terminal identification name of the terminal device that is the transmission source of the request message and the data identification name specified in the request message is added to the storage unit Part,
While the connection information is stored in the storage unit, the data identification name specified for each of the stored connection information is obtained without duplication, and the data is obtained for each data identification name obtained without duplication. An acquisition unit that acquires a fragment obtained by dividing data associated with an identification name in a predetermined cyclic order;
When the fragment is acquired, the fragment message that specifies the fragment and the position where the fragment is located in the data that is the source of the fragment, and the connection that caused the fragment to be acquired A fragment transmitter for transmitting to each of the terminal devices having the terminal identification name specified in the information;
A completion receiving unit for receiving a completion message designating a data identification name from any of the plurality of terminal devices;
When the completion message is received, the connection information in which the terminal identification name of the terminal device that is the transmission source of the completion message and the data identification name specified in the request message are deleted from the storage unit The server apparatus characterized by including the deletion part to perform.
請求項2に記載のサーバ装置であって、
前記要求受信部ならびに前記完了受信部は、それぞれ、前記要求メッセージならびに前記完了メッセージを、コネクション型プロトコルにより受信し、
前記断片送信部は、前記断片メッセージを、コネクションレス型プロトコルにより送信する
ことを特徴とするサーバ装置。
The server device according to claim 2,
The request receiving unit and the completion receiving unit respectively receive the request message and the completion message by a connection type protocol,
The fragment transmission unit transmits the fragment message by a connectionless protocol.
請求項3に記載のサーバ装置であって、
前記コネクション型プロトコルは、TCP(Transmission Control Protocol)であり、
前記コネクションレス型プロトコルは、UDP(User Datagram Protocol)である
ことを特徴とするサーバ装置。
The server device according to claim 3,
The connection type protocol is TCP (Transmission Control Protocol),
The server device, wherein the connectionless protocol is UDP (User Datagram Protocol).
請求項2から4のいずれか1項に記載のサーバ装置であって、
前記複数の端末装置のいずれかから、接続メッセージを受信する接続受信部
をさらに備え、
前記削除部は、前記記憶部に記憶される接続情報のそれぞれについて、当該接続情報に接続する端末識別名を有する端末装置から送信される接続メッセージが、所定の閾値時間以上受信されなかった場合、当該接続情報を、前記記憶部から削除する
ことを特徴とするサーバ装置。
The server device according to any one of claims 2 to 4,
A connection receiver for receiving a connection message from any of the plurality of terminal devices;
The deletion unit, for each of the connection information stored in the storage unit, when a connection message transmitted from a terminal device having a terminal identification name connected to the connection information is not received for a predetermined threshold time or more, The server apparatus, wherein the connection information is deleted from the storage unit.
サーバ装置と通信可能に接続される端末装置であって、
前記サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信する要求送信部、
前記所望のデータが復元されるまで、前記サーバ装置から、断片メッセージを受信する断片受信部、
前記受信された断片メッセージに指定される断片と、当該断片が当該所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する蓄積部、
前記所望のデータを分割することにより得られるすべての断片が蓄積されると、当該蓄積された断片のそれぞれと、当該蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、当該所望のデータを復元する復元部、
前記所望のデータが復元されると、前記サーバ装置へ、当該所望のデータのデータ識別名を指定する完了メッセージを送信する完了送信部
を備えることを特徴とする端末装置。
A terminal device communicably connected to a server device,
A request transmission unit for transmitting a request message for designating a data identification name of desired data to the server device;
A fragment receiver for receiving a fragment message from the server device until the desired data is restored;
An accumulation unit that accumulates the fragment specified in the received fragment message and the position where the fragment is arranged in the desired data in association with each other;
When all the fragments obtained by dividing the desired data are accumulated, each desired fragment is obtained from each of the accumulated fragments and the position accumulated in association with each of the accumulated fragments. Restore unit to restore data,
A terminal device comprising: a completion transmission unit that transmits a completion message designating a data identification name of the desired data to the server device when the desired data is restored.
請求項6に記載の端末装置であって、
前記要求メッセージを送信した後、前記所望のデータが復元されるまで、所定の時間間隔で、前記サーバ装置へ、接続メッセージを送信する接続送信部
をさらに備えることを特徴とする端末装置。
The terminal device according to claim 6,
A terminal device further comprising: a connection transmission unit that transmits a connection message to the server device at a predetermined time interval after transmitting the request message until the desired data is restored.
サーバ装置が、実行するサービス方法であって、前記サーバ装置は、記憶部、要求受信部、追加部、取得部、断片送信部、完了受信部、削除部を有し、
記憶部には、端末識別名と、データ識別名と、が指定される接続情報が記憶され、
要求受信部が、複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信する要求受信工程、
追加部が、前記要求メッセージが受信されると、当該要求メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、を指定する接続情報を、前記記憶部に追加する追加工程、
取得部が、前記記憶部に接続情報が記憶されている間、当該記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、当該重複なく取得されたデータ識別名毎に、当該データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得する取得工程、
断片送信部が、前記断片が取得されると、当該断片と、当該断片の分割元のデータ内において、当該断片が配置されていた位置と、を指定する断片メッセージを、当該断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する断片送信工程、
完了受信部が、前記複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信する完了受信工程、
削除部が、前記完了メッセージが受信されると、当該完了メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、が指定されている接続情報を、前記記憶部から削除する削除工程を備えることを特徴とするサービス方法。
The server device is a service method to be executed, and the server device includes a storage unit, a request reception unit, an addition unit, an acquisition unit, a fragment transmission unit, a completion reception unit, and a deletion unit,
The storage unit stores connection information for specifying a terminal identification name and a data identification name,
A request receiving step for receiving a request message for designating a data identification name from any of a plurality of terminal devices;
When the adding unit receives the request message, the storage unit specifies connection information that specifies a terminal identification name of a terminal device that is a transmission source of the request message and a data identification name specified in the request message. Additional steps to add to,
While the connection information is stored in the storage unit, the acquisition unit acquires the data identification name specified for each of the stored connection information without duplication, and for each data identification name acquired without duplication An acquisition step of acquiring a fragment obtained by dividing the data associated with the data identification name in a predetermined cyclic order;
When the fragment transmission unit acquires the fragment, the fragment transmission unit acquires a fragment message that specifies the fragment and the position where the fragment is located in the data of the fragment source. Fragment transmission step for transmitting to each of the terminal devices having the terminal identification name specified in the connection information that has caused,
A completion receiving step of receiving a completion message designating a data identification name from any of the plurality of terminal devices;
When the completion message is received by the deletion unit, the connection information in which the terminal identification name of the terminal device that is the transmission source of the completion message and the data identification name specified in the request message are specified, A service method comprising a deletion step of deleting from a storage unit.
サーバ装置と通信可能に接続される端末装置が実行する端末方法であって、前記端末装置は、要求送信部、断片受信部、蓄積部、復元部、完了送信部を有し、
要求送信部が、前記サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信する要求送信工程と、
断片受信部が、前記所望のデータが復元されるまで、前記サーバ装置から、断片メッセージを受信する断片受信工程と、
蓄積部が、前記受信された断片メッセージに指定される断片と、当該断片が当該所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する蓄積工程と、
復元部が、前記所望のデータを分割することにより得られるすべての断片が蓄積されると、当該蓄積された断片のそれぞれと、当該蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、当該所望のデータを復元する復元工程と、
完了送信部が、前記所望のデータが復元されると、前記サーバ装置へ、当該所望のデータのデータ識別名を指定する完了メッセージを送信する完了送信工程と
を備えることを特徴とする端末方法。
A terminal method executed by a terminal device that is communicably connected to a server device, wherein the terminal device includes a request transmission unit, a fragment reception unit, a storage unit, a restoration unit, and a completion transmission unit,
A request transmitting step for transmitting a request message for designating a data identification name of desired data to the server device;
A fragment receiving step for receiving a fragment message from the server device until the desired data is restored;
An accumulating step in which the accumulating unit accumulates the fragment specified in the received fragment message and the position where the fragment is arranged in the desired data in association with each other;
When all the fragments obtained by the restoration unit dividing the desired data are accumulated, each of the accumulated fragments, the position accumulated in association with each of the accumulated fragments, A restoring process for restoring the desired data;
And a completion transmitting step of transmitting a completion message designating a data identification name of the desired data to the server device when the desired data is restored.
コンピュータを、複数の端末装置と通信可能に接続されるサーバ装置として機能させるプログラムであって、前記プログラムは、前記コンピュータを
端末識別名と、データ識別名と、が指定される接続情報が記憶される記憶部、
前記複数の端末装置のいずれかから、データ識別名を指定する要求メッセージを受信する要求受信部、
前記要求メッセージが受信されると、当該要求メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、を指定する接続情報を、前記記憶部に追加する追加部、
前記記憶部に接続情報が記憶されている間、当該記憶されている接続情報のそれぞれに指定されているデータ識別名を重複なく取得し、当該重複なく取得されたデータ識別名毎に、当該データ識別名に対応付けられるデータを分割することにより得られる断片を、所定の巡回順序で取得する取得部、
前記断片が取得されると、当該断片と、当該断片の分割元のデータ内において、当該断片が配置されていた位置と、を指定する断片メッセージを、当該断片が取得される起因となった接続情報に指定されている端末識別名を有する端末装置のそれぞれへ、送信する断片送信部、
前記複数の端末装置のいずれかから、データ識別名を指定する完了メッセージを受信する完了受信部、
前記完了メッセージが受信されると、当該完了メッセージの送信元の端末装置の端末識別名と、当該要求メッセージに指定されたデータ識別名と、が指定されている接続情報を、前記記憶部から削除する削除部
として機能させることを特徴とするプログラム。
A program that causes a computer to function as a server device that is communicably connected to a plurality of terminal devices, wherein the program stores connection information in which the terminal identification name and data identification name are designated. Memory part,
A request receiving unit for receiving a request message designating a data identification name from any of the plurality of terminal devices;
When the request message is received, the connection information specifying the terminal identification name of the terminal device that is the transmission source of the request message and the data identification name specified in the request message is added to the storage unit Part,
While the connection information is stored in the storage unit, the data identification name specified for each of the stored connection information is obtained without duplication, and the data is obtained for each data identification name obtained without duplication. An acquisition unit that acquires a fragment obtained by dividing data associated with an identification name in a predetermined cyclic order;
When the fragment is acquired, the fragment message that specifies the fragment and the position where the fragment is located in the data that is the source of the fragment, and the connection that caused the fragment to be acquired A fragment transmitter for transmitting to each of the terminal devices having the terminal identification name specified in the information;
A completion receiving unit for receiving a completion message designating a data identification name from any of the plurality of terminal devices;
When the completion message is received, the connection information in which the terminal identification name of the terminal device that is the transmission source of the completion message and the data identification name specified in the request message are deleted from the storage unit A program characterized by causing it to function as a deleting unit.
コンピュータを、サーバ装置と通信可能に接続される端末装置として機能させるプログラムであって、前記プログラムは、前記コンピュータを
前記サーバ装置へ、所望のデータのデータ識別名を指定する要求メッセージを送信する要求送信部、
前記所望のデータが復元されるまで、前記サーバ装置から、断片メッセージを受信する断片受信部、
前記受信された断片メッセージに指定される断片と、当該断片が当該所望のデータにおいて配置されていた位置と、を、対応付けて蓄積する蓄積部、
前記所望のデータを分割することにより得られるすべての断片が蓄積されると、当該蓄積された断片のそれぞれと、当該蓄積された断片のそれぞれに対応付けて蓄積された位置と、から、当該所望のデータを復元する復元部、
前記所望のデータが復元されると、前記サーバ装置へ、当該所望のデータのデータ識別名を指定する完了メッセージを送信する完了送信部
として機能させることを特徴とするプログラム。
A program that causes a computer to function as a terminal device that is communicably connected to a server device, wherein the program sends a request message that specifies a data identification name of desired data to the server device. Transmitter,
A fragment receiver for receiving a fragment message from the server device until the desired data is restored;
An accumulation unit that accumulates the fragment specified in the received fragment message and the position where the fragment is arranged in the desired data in association with each other;
When all the fragments obtained by dividing the desired data are accumulated, each desired fragment is obtained from each of the accumulated fragments and the position accumulated in association with each of the accumulated fragments. Restore unit to restore data,
When the desired data is restored, the program causes the server device to function as a completion transmission unit that transmits a completion message designating a data identification name of the desired data.
JP2011047238A 2011-03-04 2011-03-04 Distribution system, terminal device, distribution method, terminal method, and program Active JP5250065B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011047238A JP5250065B2 (en) 2011-03-04 2011-03-04 Distribution system, terminal device, distribution method, terminal method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011047238A JP5250065B2 (en) 2011-03-04 2011-03-04 Distribution system, terminal device, distribution method, terminal method, and program

Publications (2)

Publication Number Publication Date
JP2012185601A true JP2012185601A (en) 2012-09-27
JP5250065B2 JP5250065B2 (en) 2013-07-31

Family

ID=47015654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011047238A Active JP5250065B2 (en) 2011-03-04 2011-03-04 Distribution system, terminal device, distribution method, terminal method, and program

Country Status (1)

Country Link
JP (1) JP5250065B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018501596A (en) * 2014-12-19 2018-01-18 エマーソン プロセス マネージメント リミテッド ライアビリティ リミテッド パートナーシップEmerson Process Management Lllp Data transmission method and apparatus in industrial process network
JP6372812B1 (en) * 2017-12-15 2018-08-15 株式会社コナミデジタルエンタテインメント GAME SYSTEM, GAME TERMINAL, SERVER DEVICE, AND PROGRAM
JP2020009022A (en) * 2018-07-04 2020-01-16 キヤノン株式会社 Communication device and control method thereof and communication system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049454A (en) * 1996-07-29 1998-02-20 Fujitsu Ltd System and method for program distribution of multi-layered system
JPH10326207A (en) * 1997-05-26 1998-12-08 Hitachi Ltd Session maintenance control system for www server
JP2004178031A (en) * 2002-11-25 2004-06-24 Hitachi Ltd Resource distribution method and system
JP2004287631A (en) * 2003-03-20 2004-10-14 Konami Co Ltd Download service system, terminal, command column executing method and program
JP2006209343A (en) * 2005-01-26 2006-08-10 Konami Digital Entertainment:Kk Data processing system, central unit, auxiliary unit, requester unit, central service method, auxiliary service method, requester method and program
WO2006085500A1 (en) * 2005-02-09 2006-08-17 Matsushita Electric Industrial Co., Ltd. Monitoring camera device, monitoring system using the same, and monitoring image transmission method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049454A (en) * 1996-07-29 1998-02-20 Fujitsu Ltd System and method for program distribution of multi-layered system
JPH10326207A (en) * 1997-05-26 1998-12-08 Hitachi Ltd Session maintenance control system for www server
JP2004178031A (en) * 2002-11-25 2004-06-24 Hitachi Ltd Resource distribution method and system
JP2004287631A (en) * 2003-03-20 2004-10-14 Konami Co Ltd Download service system, terminal, command column executing method and program
JP2006209343A (en) * 2005-01-26 2006-08-10 Konami Digital Entertainment:Kk Data processing system, central unit, auxiliary unit, requester unit, central service method, auxiliary service method, requester method and program
WO2006085500A1 (en) * 2005-02-09 2006-08-17 Matsushita Electric Industrial Co., Ltd. Monitoring camera device, monitoring system using the same, and monitoring image transmission method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018501596A (en) * 2014-12-19 2018-01-18 エマーソン プロセス マネージメント リミテッド ライアビリティ リミテッド パートナーシップEmerson Process Management Lllp Data transmission method and apparatus in industrial process network
JP6372812B1 (en) * 2017-12-15 2018-08-15 株式会社コナミデジタルエンタテインメント GAME SYSTEM, GAME TERMINAL, SERVER DEVICE, AND PROGRAM
JP2019107054A (en) * 2017-12-15 2019-07-04 株式会社コナミデジタルエンタテインメント Game system, game terminal, server device, and program
JP2020009022A (en) * 2018-07-04 2020-01-16 キヤノン株式会社 Communication device and control method thereof and communication system

Also Published As

Publication number Publication date
JP5250065B2 (en) 2013-07-31

Similar Documents

Publication Publication Date Title
WO2018003174A1 (en) Information processing device control method, information processing device, and program
JP4854736B2 (en) Immersive audio communication
US10569169B2 (en) Data processing method and apparatus for network system
KR101261660B1 (en) Serialization of media transfer communications
US8365251B2 (en) User management system, user management method, information recording medium and user management program
US9479569B1 (en) Parallel multiple format downloads
WO2022257699A1 (en) Image picture display method and apparatus, device, storage medium and program product
JP2008547290A5 (en)
JP2006244494A (en) Recording medium and method for managing presence document at client side
CN105786441B (en) A kind of method of audio processing, server, user equipment and system
JP2004038575A (en) Data transmitting and receiving system, data transmitting and receiving method, information providing device, information providing method, data transmitting device, and data receiving method
JP5250065B2 (en) Distribution system, terminal device, distribution method, terminal method, and program
CN112153042A (en) Method, system, equipment and medium for preventing downloading of Web end audio online playing
CN110162255A (en) Operation method, device, equipment and the storage medium of stand-alone program
CN111541905B (en) Live broadcast method and device, computer equipment and storage medium
KR101603676B1 (en) Audio apparatus for portable devices
CN113242173A (en) Screen sharing method, device and system and instant messaging server
JP4637145B2 (en) Network system, node device, data distribution method, and program
JP3916601B2 (en) COMMUNICATION SYSTEM, SERVER DEVICE, TERMINAL, SERVICE METHOD, TERMINAL METHOD, AND PROGRAM
JP3930849B2 (en) Communication system, gateway device, data relay method, and program
JP3748847B2 (en) Storage device, program, and storage method
US20140149853A1 (en) Microblog-based document file sharing method and device
JP3585481B2 (en) GAME DEVICE AND PROGRAM
JP4912451B2 (en) Communication system and communication method
JP3842251B2 (en) Node device, communication system, node method, and program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130215

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130412

R150 Certificate of patent or registration of utility model

Ref document number: 5250065

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250