WO2004049178A1 - 情報処理装置および方法、並びにコンピュータ・プログラム - Google Patents
情報処理装置および方法、並びにコンピュータ・プログラム Download PDFInfo
- Publication number
- WO2004049178A1 WO2004049178A1 PCT/JP2003/014635 JP0314635W WO2004049178A1 WO 2004049178 A1 WO2004049178 A1 WO 2004049178A1 JP 0314635 W JP0314635 W JP 0314635W WO 2004049178 A1 WO2004049178 A1 WO 2004049178A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- processing
- recording
- packet
- request
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
Definitions
- the present invention relates to an information processing apparatus and method, and a computer program. More specifically, the present invention relates to an information processing apparatus and method capable of efficiently executing data processing, in particular, data recording / reproducing processing using a plurality of information processing apparatuses connected via a network, and a computer program. . BACKGROUND ART
- various information processing devices for example, personal computers (PCs), large computers, servers, and other communication devices have been connected to a communication network such as the Internet, and video, image data, The transfer of audio data, contents such as various programs, and the transfer of various processed data are performed.
- a large-scale storage system that records certain data in a distributed manner to a large number of information processing terminals connected to each other via a network has attracted attention.
- a server that records and manages data transmits data to an information processing terminal or another server by multicast or the like, and transmits the data to a local server provided in the information processing terminal or another server. Recorded on a recording medium. In this case, in order to be able to retrieve data on demand, the recording medium You have to record a lot of data on your body.
- a capacity of 1 terabyte or more is required.
- a protocol that requires retransmission of data such as the arrival signal (ACK) of TCPZIP, is used.
- ACK arrival signal
- this method imposes a heavy burden on the server side, and currently, even if a single high-performance server is used, it can only provide services to several hundred clients.
- Peer-to-Peer (P2P) network technology has been developed and used as a direct communication process between information processing devices.
- P2P networks instead of installing servers that perform centralized processing, information processing devices as resources of each network client, such as PCs, mobile terminals, PDAs, mobile phones, and more.
- Various devices such as a disk device or a printer, which has a function that can perform communication processing or is a storage device connected to a communication device, communicate with each other via a network, and each network client has This configuration allows sharing of resources.
- Peer-to-peer (P2P: Peer-to-Peer) network technology was first used in APPN (Advanced Peer to Peer Networking) by IBM Corporation I have.
- Peer-to-peer (P2P) networks include “Pure (peer-to-peer) networks” and “Hybrid” networks. (Hybrid) Peer. Two-peer (P2P: Peer-to-Peer) network. Pure Peer A '2' peer (P2P: Peer-to-Peer) network is a network in which each component (peer) of the system has the same function and role and performs equal communication.
- Hybrid A peer-to-peer (P2P: Peer-to-Peer) network is a pure peer-to-peer (p2P) network and each component of the system. This is a network configuration that uses a control server to facilitate interaction between (peers).
- Napster is one of the typical services that use it.
- processing execution determination devices are managed by a method such as arranging them in a slick relationship, and processing such as resource search is distributed to and executed by a plurality of devices based on management information. It is.
- this method when the number of devices that execute processing increases, for example, to millions, the amount of information for managing the configuration increases, the number of processing instructions for transmitting execution instructions to a plurality of processing devices increases, Or problems such as ensuring the integrity of the tree may occur.
- the present invention has been made in view of the above-described problems.
- data processing such as content recording processing or content reproduction processing is performed.
- a content recording request or a content recording request can be made based on a predetermined rule without performing a process such as a node search in advance.
- Sends a playback request, and the terminal (node) that receives these requests autonomously determines whether or not to execute the command and selectively executes the command.
- An information processing device and method, and a computer that can efficiently execute data processing while suppressing an increase in network traffic due to transfer. The purpose is to provide a computer program. According to a first aspect of the present invention,
- An information processing device serving as a recording instruction device for transmitting a data recording processing request to a node connected to the network
- a rule determination condition setting unit that sets determination data applicable to a determination processing of whether or not to execute processing in accordance with the processing request
- a bucket generation unit that stores the determination data set in the rule determination condition setting unit and generates a data recording processing request packet storing the data to be recorded;
- a network interface unit for transmitting a packet generated by the packet generation unit
- the rule determination condition setting unit applies the rule determination process to a node that receives the data recording processing request to determine whether or not to execute a process according to the processing request.
- the packet generation unit is configured to execute a process of setting a probability value: ⁇ as a possible recording rule determination condition description, and the packet generation unit generates a packet storing the probability value: ⁇ as the recording rule determination condition description. It is characterized by performing processing. Further, in one embodiment of the information processing apparatus of the present invention, the information processing apparatus includes a data processing unit that performs an FEC encoding process and an interleave process on data to be recorded, and the bucket generation unit includes the data generation unit.
- the information processing apparatus It is characterized in that it is configured to execute a packet generation process in which data processed in the processing unit is set as a payload. Further, in one embodiment of the information processing apparatus of the present invention, the information processing apparatus It has a data processing unit that performs FEC encoding of the data to be recorded. The data processing unit divides the data into p blocks, and performs FEC encoding on the generated p blocks. And performs coding processing at a coding rate ci Zp for converting the data into q blocks, and the rule determination condition setting unit performs the data processing at a node receiving the data recording processing request with a recording probability: ⁇ .
- n The number of reply blocks that can be calculated by n: qXaXnX / 3 and the number of blocks: p
- An information processing device serving as a playback instruction device for transmitting a data playback processing request to a node connected to a network
- a node for receiving the data reproduction processing request a rule determination condition setting unit that sets determination data applicable to a determination processing of whether or not to execute processing in accordance with the processing request;
- a packet generation unit that stores the determination data set in the rule determination condition setting unit and generates a data reproduction processing request packet storing instruction data of the reproduction processing target data;
- a network interface unit for transmitting the packet generated by the packet generation unit
- the rule determination condition setting unit is adapted to determine whether or not a node receiving the data reproduction processing request executes a process according to the processing request. Probability value as description of possible reproduction rule judgment condition:; a configuration for executing processing for setting 3; The unit is configured to execute a process of generating a packet storing the probability value:] 3 as the reproduction rule determination condition description. Further, in one embodiment of the information processing device of the present invention, the information processing device further includes a data restoration processing unit that executes a dinterleaving process and an FEC decoding process, and the data restoration processing unit includes the data reproduction process.
- the data to be reproduced stored in the node is a data! ) Number of blocks, and coding processing of the coding rate q / p obtained by applying FEC coding to p blocks and converting the blocks into q blocks, and the rule determination condition setting unit,
- Return probability at the node receiving the data reproduction processing request Probability value for returning data at 3): ⁇ is set as the description of the reproduction rule judgment condition, and is specified by the recording instruction device connected to the network.
- the probability value: ⁇ is set.
- a data receiving unit
- a rule determination processing unit that determines whether to execute data processing based on a data processing request received via the data reception unit
- a data processing unit that executes data processing based on the determination in the rule determination processing unit
- the rule determination processing unit Information for determining whether or not to execute processing in accordance with the processing request based on the determination data included in the data processing request received via the data receiving unit; In the processing unit.
- the determination data is a probability value as a rule determination condition descriptor included in a data processing request, and the rule determination processing unit determines And executing a process for determining whether or not to execute a process in accordance with the process request.
- the determination data is a probability value as a rule determination condition descriptor included in a data processing request, and the rule determination processing unit executes a random number generation process.
- the determination data is data processing request storage data included in a data processing request
- the rule determination processing unit includes a hash function based on the data processing request storage data.
- a data recording processing method for transmitting a data recording processing request to a plurality of nodes connected to a network and executing distributed data recording processing for the plurality of nodes, wherein a node receiving the data recording processing request complies with the processing request.
- a rule judgment condition setting step for setting judgment data applicable to the judgment processing of whether or not to execute the processing;
- the rule determining condition setting step includes a step of determining whether or not to execute a process according to a processing request at a node receiving the data recording processing request.
- the data recording processing method includes a data processing step of executing FEC encoding processing and interleaving processing of data to be recorded, and the packet generation step.
- the data recording processing method includes a data processing step of executing FEC encoding processing of the data to be recorded, and the data processing step includes: Divide into p blocks, perform FEC coding on the generated p blocks, and convert them to q blocks. Is set as a recording rule determination condition description at a node that receives the data recording processing request with a recording probability: ⁇ , and is specified by a playback instruction device connected to the network.
- a data reproduction processing method for transmitting a data reproduction processing request to a node connected to a network and performing data reproduction processing based on return data.
- a rule judgment condition setting step for setting judgment data applicable to a judgment process of whether or not to execute
- the rule determination condition setting step includes a step of determining whether or not a node receiving the data reproduction processing request executes a process according to the processing request.
- a process of setting a probability value: ⁇ as a description of a playback rule judgment condition applicable to the device is executed, and the packet generation step generates a packet storing a probability value: 3 as the description of the playback rule judgment condition. Processing is performed.
- the data reproduction processing method further includes a data restoration processing step of executing a deinterleave processing and an FEC decoding processing, and the data restoration processing step Is characterized in that it executes a dinter leap process and an FEC decoding process on data to be reproduced extracted from a packet received from a node that has received the data reproduction process request, and performs data restoration.
- the data to be reproduced stored in the node is obtained by dividing the data into p blocks and subjecting the p blocks to FEC encoding to obtain q Coding rate q ZP encoded processing data
- the rule determination condition setting step is a probability that data is returned at a node receiving the data reproduction processing request with a return probability:] 3 : / 3 is set as the playback rule judgment condition description, and the recording probability specified by the recording instruction device connected to the network: ⁇ , and the number of encoding blocks: q, and the number of network connection nodes: n
- a sixth aspect of the present invention provides
- a data processing method for analyzing a data processing request received via a data receiving unit and performing a determination process as to whether to execute the data processing request is analyzed.
- a rule determination processing step for determining whether to execute data processing based on the data processing request
- the rule determination processing step includes:
- a data processing method characterized by executing a determination process as to whether or not to execute a process according to a processing request based on determination data included in a data processing request received via a data receiving unit.
- the determination data is a probability value as a rule determination condition descriptor included in a data processing request, and the rule determination processing step is performed according to the probability value. And determining whether or not to execute a process according to the process request.
- the determination data is a probability value as a rule determination condition descriptor included in a data processing request, and the rule determination processing step executes random number generation processing.
- the determination data is data processing request storage data included in a data processing request
- the rule determination processing step includes:
- a seventh aspect of the present invention provides a seventh aspect of the present invention.
- a computer program for transmitting a data recording processing request to a plurality of nodes connected to a network and executing distributed data recording processing for the plurality of nodes.
- a rule judgment condition setting step for setting judgment data applicable to a judgment process of whether or not to execute
- an eighth aspect of the present invention provides A computer program that transmits a data reproduction processing request to a node connected to a network and executes data reproduction processing based on return data.
- a node that receives the data reproduction processing request performs processing in accordance with the processing request.
- a rule judgment condition setting step for setting judgment data applicable to the judgment processing of whether or not to execute;
- the computer is characterized by having a program. Further, a ninth aspect of the present invention is a
- a computer that analyzes a data processing request received via a data receiving unit and performs a process of determining whether to execute the data processing request.
- a computer program that determines whether to execute data processing based on the data processing request.
- the rule determination processing step includes:
- the recording instruction device when performing data recording processing in a distributed manner for a plurality of nodes connected to a network, performs processing for determining whether or not a node performs data recording. Applicable judgment data is set, and a data recording request containing the set judgment data and the data to be recorded is sent to each node. The node autonomously performs data recording processing based on the judgment data.
- the reproduction instruction device for transmitting the data reproduction processing request includes the node for extracting and transmitting the data. Set the data for judgment that can be applied to the judgment processing of whether or not to execute, and send a data reproduction processing request that stores the set judgment data and the instruction data of the data to be reproduced to each node, and the node side makes the judgment.
- the system is configured to autonomously determine whether to perform data extraction and transmission processing based on the data for use, and perform the processing, so that the reproduction instruction device that issues the reproduction request does not require pre-processing such as selecting a specific recording node.
- the information processing device connected to the network executes the processing according to the processing request based on the determination data included in the data processing request received via the data receiving unit. Since it is configured to execute the process of determining whether or not to perform processing, it is not necessary to search for the processing target node (information processing device) on the processing request side.
- the data that is distributed and recorded in each node is divided into p blocks, and the p blocks are subjected to FEC encoding to form q blocks.
- the coding rate to be converted is the data that has been subjected to the coding processing of qZp, and the recording probability at each node: ⁇ , the reply probability specified by the playback instruction device: 13, the number of reply blocks: qXaXn Since the configuration is set so that X 0> number of blocks: ⁇ , it is possible to achieve a configuration that guarantees reliable data restoration from the return data.
- the computer program of the present invention is, for example, a computer readable system for a general-purpose computer system that can execute various programs.
- FIG. 1 is a diagram for explaining a configuration example of a distributed storage system to which the present invention can be applied.
- FIG. 2 is a diagram illustrating an example of a network configuration to which the present invention can be applied.
- Fig. 3 is a diagram illustrating the configuration of an information processing device (node) connected to the network.
- FIG. 4 is a diagram illustrating the configuration of the recording instruction device.
- FIG. 5 is a diagram illustrating FEC encoding processing and interleaving processing of data executed in the recording instruction device.
- FIG. 6 is a diagram illustrating a configuration of a data recording processing request packet transmitted from the recording instruction device.
- FIG. 7 is a diagram illustrating a process of transmitting a data recording process request bucket from a recording instruction device to a node.
- FIG. 8 is a flowchart illustrating a processing procedure including an autonomous processing execution determination processing in a node that has received a data recording processing request packet from the recording instruction device.
- FIG. 9 is a flowchart illustrating a processing procedure including an autonomous processing execution determination process in a node that has received a data recording processing request packet from the recording instruction device.
- FIG. 10 is a diagram illustrating an example of a hash value generated in an autonomous process execution determination in a node that has received a data recording request packet from a recording instruction device.
- FIG. 11 is a diagram illustrating the configuration of the playback instruction device.
- FIG. 12 is a diagram illustrating the configuration of a data reproduction processing request packet transmitted from the reproduction instruction device.
- FIG. 13 is a diagram illustrating a configuration of a packet transmitted from the node that has received the data reproduction processing request packet to the reproduction instruction device.
- FIG. 14 is a diagram for explaining data dinterleaving and FEC decoding performed in the playback instruction device.
- FIG. 15 is a diagram illustrating a process of transmitting a data reproduction processing request packet from a reproduction instruction device to a node.
- FIG. 16 is a diagram illustrating a process of transmitting a data storage packet from a node that has received a data reproduction processing request packet from the reproduction instruction device.
- FIG. 17 is a flowchart illustrating a processing procedure including an autonomous processing execution determination processing in a node that has received a data reproduction processing request packet from the reproduction instruction device.
- FIG. 18 is a flowchart illustrating a processing procedure including an autonomous processing execution determination process in a node that has received a data reproduction processing request packet from a reproduction instruction device.
- FIG. 19 shows the data recording processing request from the recording instruction device, the data recording processing at the node, the data reproduction processing request from the reproduction instruction device, the data extraction and transmission processing at the node, and the reproduction processing at the reproduction instruction device.
- FIG. 4 is a sequence diagram to be described.
- FIG. 20 is a diagram illustrating an example of a hardware configuration of the information processing apparatus of the present invention.
- BEST MODE FOR CARRYING OUT THE INVENTION an information processing apparatus and method, and a computer program according to the present invention will be described in detail with reference to the drawings. The description will be made in the following order.
- FIG. 1 is a diagram showing a specific example of a distributed storage system in which data is distributed and recorded on terminals constituting a network.
- the distributed storage system instructs n nodes 1 1 1, 1 1 2,-1, and 1 5 connected to the communication network of network 100, and records data to each node It has a recording instruction device 101 to be controlled and a reproduction instruction device 102 to read data recorded in each node.
- the recording instruction device 101, each of the nodes 111 to 115, and the reproduction instruction device 102 are described as separate devices, but they have the functions of these two devices.
- each of the nodes can be provided with a function as a recording instruction device or a reproduction instruction device.
- each device constituting the network can be used without distinction.
- the recording instruction device, the reproduction instruction device, and the node are collectively called an information processing device. That is, a network configuration as shown in FIG. 2 can be assumed.
- the information processing device has a configuration capable of communicating with another information processing device and is connected by a communication network.
- the network is basically a pure peer that does not have a controlling server as a look-up server. It is a two-to-peer (P2P) network. As shown in FIG.
- the information processing devices 12 1 to 12 26 communicate with each other via the network 110 and execute various types of data processing such as content recording processing and content reproduction processing.
- the present invention is also applicable to a hybrid peer-to-peer (P2P: Peer-to-Peer) network in which a control server exists, and in particular, restricts the network configuration. Any configuration is possible as long as information processing apparatuses can communicate with each other.
- P2P Peer-to-Peer
- One of the information processing devices 122 1 to 126 shown in FIG. 2 outputs a content recording request or a content reproduction request to an information processing device connected to a network.
- a content recording request for example, a recording request processing request packet in which a multicast address is set based on a predetermined rule is generated
- the content is subjected to FEC (Forward Error Correction) and the interleave processing is performed. It is stored as divided data and transmitted to other information processing devices.
- the information processing apparatus that has received these buckets autonomously determines whether or not to execute data recording processing, and performs content recording processing based on the determination.
- any one of the information processing apparatuses 121 to 126 generates a content reproduction request from another information processing apparatus, for example, a request packet in which a multicast address is set based on a predetermined rule. And send.
- the information processing device that receives these buckets autonomously determines whether or not to execute data extraction processing, performs content extraction processing based on the determination, and extracts data according to the request, for example, FEC (Forward Error Error). Correction) is applied and the interleaved divided data is stored in a packet and transmitted to the playback request information processing device.
- FEC Forward Error Error
- Correction is applied and the interleaved divided data is stored in a packet and transmitted to the playback request information processing device.
- transmission control devices such as routers that make up the network are omitted in Figs. 1 and 2, actually, the route of the packet passing through the node is selected.
- a transmission control device such as a router is provided.
- the transmission control device may be provided separately from the node, or the node may have a function as the transmission control device.
- FIG. 3 is a diagram illustrating a configuration of an information processing device that functions as a node.
- the information processing device (node) 200 includes a rule determination processing unit 201, a data processing unit 202, a packet processing unit 203, and a data transmitting / receiving unit 204.
- the data transmission / reception unit 204 executes a process of outputting a transmission packet to another information processing device connected via a network and a process of inputting a reception packet from another information processing device.
- the packet processing unit 203 performs a process of generating a packet to be transmitted from the own device to another information processing device connected to the network, a process of analyzing a packet received from another information processing device, and the like.
- the data processing unit 202 performs a process according to a data processing program stored in each information processing device. For example, data processing based on a data processing request from another information processing device such as a recording instruction device or a reproduction instruction device connected to the network. For example, in the case of a content reproduction request, the designated content is stored in the storage unit 205. This is a process of extracting the packet and outputting it to the packet processing unit 203. If the request is a content recording request, the input content is stored in the storage unit 205.
- the rule determination processing unit 201 is a processing unit that executes processing unique to the information processing apparatus of the present invention, and calculates a probability value: ⁇ or 13 as [rule determination condition description] described in an input packet. Based on bucket-based data processing, such as data Data reception and storage processing to the storage unit as processing corresponding to the data recording instruction, or data extraction and transmission processing from the storage unit as processing corresponding to the data reproduction instruction, and whether or not to execute these processing. Execute the determination process.
- the probability of executing the recording instruction is set as ct, and the probability of executing the reproduction instruction is set as] 3, and these are included in the recording request or the reproduction request packet transmitted by the recording instruction device and the reproduction instruction device, respectively.
- a probability value is set.
- the rule determination processing unit 201 of each node determines whether or not to execute the reproduction instruction based on the probability: 3, and executes it. As described above, in the reproduction command, since the command is executed only at a certain probability at each node, the bucket is lost.
- the FIS Forward The original data can be reproduced by performing an error collection based on (Error Collection).
- FIG. 4 is a diagram showing a configuration of the recording instruction device 250.
- the recording instruction device 250 is a data input unit 251, which inputs recording processing request data (contents) to a plurality of nodes, such as FEC (Forward Error Collection) encoding, and interleave processing for encoded data.
- the data processing unit 2 52 that executes data processing, the probability value as the above [rule determination condition description]: the rule determination condition setting unit 2 that sets ⁇ , the processing data generated by the data processing unit 2 52
- the rule judgment condition setting set in the rule judgment condition setting section 2 5 3 was stored and the address was set.
- the FEC coding is a general term for coding methods that perform error correction on the receiving side, such as a tornado coding method, a lead tornado coding method, and a turbo coding method.
- the data input from the input unit 25 1 is divided into p blocks, and the p blocks are subjected to FEC encoding to be converted into q blocks. Coding from P blocks into q blocks is called coding rate qZp, and changing this coding rate qZp changes the recording efficiency and transmission efficiency of this distributed storage system. can do.
- the interleaving process is a process of rearranging the order of encoded data. By interleaving, data can be dispersed, and burst errors caused by packet loss can be random errors.As a result, lost data can be corrected by error correction according to FEC. Become.
- FEC encoding and the interleaving process will be described with reference to FIG.
- Fig. 5 (a) the input original data is divided into p blocks.
- FIG. 5 (b) FEC coding at a coding rate of qZp is performed, and the data divided into p blocks is converted into q coding blocks.
- FEC coding is a general term for coding methods that perform error correction on the receiving side, such as tornado coding, read tornado coding, and turbo coding, and uses FEC coding.
- the data subjected to FEC coding is subjected to an interleaving process as shown in FIG. 5 (c).
- the order of the encoded data is rearranged to distribute the data.
- the data subjected to the interleave processing is output to the rail determination condition setting unit 253, and a probability value: ⁇ is set as the above [rule determination condition description].
- the setting process of the probability value: ⁇ as the [rule determination condition description] is set in relation to the above-described processing of the data adding unit.
- the data processing unit divides the data into ⁇ blocks, performs FEC encoding on the generated ⁇ blocks, and converts them into q blocks.
- the rail judgment condition setting unit 253 sets the probability of recording data with the recording probability: ⁇ at the node receiving the data recording processing request as the recording rule judgment condition description.
- the return probability specified from the playback instruction device 102 connected to the network see FIG. 1): 13, the number of encoded blocks: q, and the number of return blocks that can be calculated from the number of network connection nodes: n :
- the relationship between q X a X n X jS and the number of blocks: p is
- the packet generation unit 254 divides the processing data generated by the data processing unit 252 into a predetermined size, stores the rule determination condition description set by the rail determination condition setting unit 253, and stores the address. It generates a packet with a header and footer including it, and sends it through the network interface 255. The packet is transmitted to each node configuring the distributed storage system using address setting according to the transmission node, that is, using multicast or multicast.
- FIG. 6 is a diagram showing the structure of the packet 40 generated by the packet generator 254.
- the packet consists of a header, a description of the recording rule judgment condition, a payload, and a footer.
- the payload stores the processed data (processed content) that has been subjected to the FEC encoder processing and the interleave processing.
- the header and footer contain control information such as a data ID indicating the type of data, a CRC (Cyclic Redundancy Check) checksum, a GUID (Global Unique ID) as a unique identifier of a packet transmission destination node, and a network address. It has been described.
- a probability that each node described later records this packet: ⁇ is described.
- the rule determination processing unit 201 of the node that has received the packet (see FIG. 3) records the packet based on the recording probability ⁇ . All nodes constituting the distributed storage system determine whether to record a packet based on the recording probability. As a result, data is recorded at a probability of ⁇ in the nodes constituting the distributed storage system. In this distributed storage system, when the number of nodes ⁇ is sufficiently large and the number of decoded packets q is sufficiently large, data can be distributed to each node with equal probability.
- FIG. 7 is a diagram illustrating a process of transmitting the data recording process request packet shown in FIG. 6 as a data recording command from the recording instruction device 101 to the plurality of nodes 11 1 to 11.
- the recording instruction device uses the processed data that has been subjected to the FEC processing and the interleave processing described in FIG. 6 as a payload, and further transmits a packet in which a probability value: ⁇ as a rule determination condition description is set to each node. It transmits by multicast or multicast.
- a processing procedure in the node that has received the packet will be described. First, in step S101, a data recording processing request packet is awaited. If it is determined in step S102 that a packet has been received, random number generation processing is executed in step S103.
- the generated random number is compared with the recording rule judgment condition description: probability ⁇ stored in the data recording processing request packet, and execution or non-execution of an instruction is determined based on the comparison result. . For example, if the generated random number> probability ⁇ , the processing for recording the processed data stored as the payload of the packet in its own storage means is executed, and if the generated random number probability ⁇ , the data recording processing is not executed.
- the random numbers generated at each node are bucketed to all nodes if the number ⁇ of nodes constituting the distributed storage system is sufficiently large and the number q of decoded blocks is sufficiently large.
- step S104 If it is determined that the data recording processing request should be executed as a result of the comparison processing based on the random number in step S104, the process proceeds to step S105, in which the processed data stored as the payload of the bucket is processed. Execute the extraction process, and A process for recording the extracted data in the storage means of (node) is executed. On the other hand, if it is determined that the data recording processing request is not to be executed as a comparison processing result based on the random number, the process proceeds to step S106, and the processing ends without executing the data recording processing.
- the information processing apparatus that has received the data recording processing request autonomously executes and non-executes the command based on the comparison between the recording rule determination condition description stored in the packet and the random number. Judge and perform the process according to the judgment.
- the information processing apparatus that has received the data recording processing request calculates a hash value, and executes the data recording processing request autonomously based on the hash value. The process of determining non-execution will be described.
- step S201 a data processing request packet is awaited.
- a hash value is generated based on the data stored in the received bucket.
- step S204 execution or non-execution of an instruction is determined based on the generated hash value.
- the information processing apparatus stores a preset set value as a threshold value in the storage unit, and executes the instruction if the generated hash value is greater than the set value, and executes the instruction if the generated hash value is less than or equal to the set value.
- Settings such as non-execution.
- the data stored in the data processing request packet for which the hash value is to be generated is, for example, an identifier (data ID) of the content data or a part of the data, for example, a predetermined number from the beginning of the data. It is possible to set (n) -bit data as hash target data.
- MD5 can be applied. As shown in FIG. 10, a hash value of MD5 of data ID or a hash value of MD5 of data content is generated. If it is determined that the data recording processing request should be executed as a result of the determination based on the hash value in step S204, the process proceeds to step S205, and the processing data stored as the payload of the packet is processed. The extraction process is executed, and the process of recording the extracted data in the storage means of the own device (node) is executed. On the other hand, if it is determined that the data recording processing request is not to be executed as the comparison processing result based on the hash value, the process proceeds to step S206, and the processing ends without executing the data recording processing.
- the information processing apparatus that has received the data recording processing request (command) autonomously executes the command based on the comparison between the hash value of the data stored in the packet and the set value of each node. , Determine non-execution and perform processing according to the determination.
- FIG. 11 is a diagram showing a configuration of the reproduction instruction device 270.
- the playback instruction device 270 is a network interface 271 for transmitting and receiving data to and from the outside via a network, and generates a packet for requesting a node to transmit playback data specifying playback target data. It has a data request packet generation unit 272 and a rule determination condition setting unit 273 that determines the probability value: [rule determination condition description] to be set in the data request packet.
- the network interface 271 receives the playback data storage packet from each node, and the packet processing unit 274 of the playback instruction device 270 performs a process of combining the data divided into packets.
- the data restoration processing unit 275 executes the deinterleaving processing and the FEC decoding processing of the data extracted from the received packet, and executes the restoration of the content data.
- the restored data is input to the data processing unit 276, and the monitor speed (not shown) It is output to an external device or stored in a recording device (not shown).
- the data request packet generator 272 transmits a packet requesting data to each node constituting the distributed storage system.
- FIG. 12 is a diagram showing a configuration of a packet requesting data.
- the packet is composed of a header, a description part of the playback rule judgment condition, a request description part, and a footer.
- a data ID for identifying the requested data is recorded.
- Control information such as CRC checksum, network address and GUID of the node, and a sequence number indicating the order of data are recorded in the header and footer.
- the return probability determined by the rail determination condition setting section 273 is set in the reproduction rule determination condition description section.
- Reply probability] 3 is a variable for determining whether or not the node that has received the packet returns data. Based on this variable, some nodes determine that data will be returned, and some nodes will not return data. However, the return probability] 3 is based on a macroscopic view of the entire distributed storage system.
- FIG. 13 is a diagram showing a data structure of a packet returned from the node. As shown in Fig. 13, the packet is composed of a header, a payload, and a hook.
- the data extracted from the storage unit by each node that is, the FEC processing and the The interleaved data block is stored, and the header and footer store control information such as CRC checksum, network address of the receiving node, and sequence number indicating the packet order.
- the bucket processing unit 274 performs packet analysis, reads a sequence number, changes the order of the received packets, and exchanges control information such as headers and footers. Remove and combine packets in sequence number order.
- the data restoration processing unit 275 performs interleaving on the received data block, arranges the data arrangement, and further performs FEC decoding on the interleaved data to restore the original data.
- the received packets from each node are lost on the network, and the received data blocks and the lost data blocks are mixed.
- the received data block is subjected to FEC coding at a coding rate of qZp, and the data divided into p blocks is converted into q coded blocks. This is the converted block data.
- the data restoration processing unit 275 in the playback instruction device applies dinterleaving to the received data block, arranges the data arrangement, and converts the dinterrip processing data shown in Fig. 14 (b). Generate.
- FEC FEC coding
- the data restoration processor 275 performs error correction by FEC on the dinterleaved data shown in FIG. 14 (b), and restores the restored data shown in FIG. 14 (c).
- FEC coding is a general term for coding methods that perform error correction on the receiving side, such as tornado coding, read tornado coding, and turbo coding, and uses FEC coding.
- the data restored by the data restoration processing unit 275 is output to the data processing unit 276.
- the data processing unit 276 stores the decrypted data in a recording unit (not shown) or outputs it to an output unit such as a monitor or a speaker via an output interface.
- the distributed storage system is a system in which data is recorded in each node with a recording probability ⁇ , and the data recorded in each node is returned with a return probability of 3;
- the original data output from 101 is returned at a rate of ⁇ .
- ⁇ blocks are encoded into q blocks, q X a X n X j 3 blocks are returned. If the number of returned blocks is larger than the number p of blocks before decoding, the data can be decoded, as described in the above-mentioned paper RIZZ 097. Therefore, if the values of ⁇ and ⁇ q / p are determined so that the number of returned blocks is larger than p, the target data can be decoded.
- the rule determination condition setting unit 273 in the playback instruction device 270 determines that the playback target data stored in the node is a code obtained by performing FEC encoding on p blocks and converting them into q blocks.
- the coding rate is qZp encoding processing data
- the recording probability specified by the recording instruction device connected to the network a and the return probability:] 3 and p
- q the number of coding blocks: q and the number of network connection nodes:
- the return probability may be set, so that the data recording efficiency and transmission efficiency can be changed by changing the coding rate q / p, the recording probability ⁇ , and the return probability within the range that satisfies the above formula.
- An example of setting each parameter of qZp, ⁇ ,] 3 will be described below. For example, if the value of the recording probability ⁇ is increased and the value of the response probability / 3 is reduced for data that has an extremely large number of reply requests, the amount of data transmitted from each node decreases, and the Search processing and data transmission processing will be simplified.
- the data search process at each node ⁇ the data transmission process is simplified. can do. Also, if the coding rate qZp is reduced and the recording probability ⁇ is increased, the number of packets to be transmitted can be suppressed. This is effective when ⁇ is large enough. Also, by reducing the recording probability ⁇ and decreasing the coding rate qZp, it is possible to avoid recording the same packet in multiple nodes. This is effective when p is small enough. Also, increase return probability / 3 and decrease recording probability ⁇ or coding rate q / p. This makes it possible to reduce the amount of encoded data recorded in the entire distributed storage system.
- the probability of packet loss during data recording, output, or transmission is a, ⁇ , ⁇ , q Z p such that aXnXaXqX is sufficiently larger than p.
- the probability of packet loss during data recording, output, or transmission is a, ⁇ , ⁇ , q Z p such that aXnXaXqX is sufficiently larger than p.
- the number of unique packets returned from multiple nodes is mathematically estimated, and the probability of arrival of unique packets can be increased by increasing the recording probability, return probability, or coding rate. it can.
- FIG. 15 illustrates processing for transmitting a data reproduction processing request packet shown in FIG. 12 as a data reproduction command from the reproduction instruction device 102 to the plurality of nodes 11 1 to 11 15.
- the playback instruction device sets the identifier of the playback specification data, for example, a content ID, a GUID, etc., as the request description, and further sets the probability value:] 3 as the rule judgment condition description. , And distributes the packet to each node by unicast or multicast.
- Fig. 16 shows the data reproduction processing, that is, the node receiving the data reproduction processing request packet shown in Fig. 12 according to the reproduction command, that is, reading of specified data from its own storage unit, packet generation, and packet transmission.
- step S301 a bucket for data reproduction processing request is waited for, and if it is determined in step S302 that a bucket has been received, in step S303, random number generation processing is executed.
- the generated random number is compared with the reproduction rule judgment condition description: probability / 3 stored in the data reproduction processing request packet, and the instruction is executed or not executed based on the comparison result. judge. For example, if the generated random number> probability is 3, the specified content stored in its own storage means is extracted, a packet with the extracted data as a payload (see FIG. 13) is generated, and the packet is sent to the playback instruction device. If the generated random number probability is [3], the data reproduction process is not executed. If it is determined that the data reproduction processing request should be executed as a result of the comparison processing based on the random number in step S304, the process proceeds to step S305, where the request is stored in the storage means of the own device (node).
- the extracted data is extracted, a packet with the extracted data as a payload (see Fig. 13) is generated, and the packet is transmitted to the playback instruction device.
- the process proceeds to step S306, and the processing ends without executing the data reproduction processing.
- the information processing device that has received the data reproduction processing request (instruction) autonomously executes and non-executes the instruction based on a comparison between the reproduction rule determination condition description stored in the packet and the random number. Judge and perform the process according to the judgment. Next, referring to the processing flow of FIG.
- step S401 a packet for requesting a data reproduction process is awaited.
- step S403 the hash value based on the data stored in the received packet is determined.
- step S404 execution or non-execution of an instruction is determined based on the generated hash value.
- the information processing apparatus stores a preset set value as a threshold value in the storage unit, and executes the instruction if the generated hash value is greater than the set value, and executes the instruction if the generated hash value is less than or equal to the set value.
- Settings such as non-execution.
- the data for which the hash value is to be generated is, for example, the content data identifier (data ID) shown in FIG. 10 or a part of the data, for example, from the beginning of the data as shown in FIG.
- data ID content data identifier
- MD5 can be applied to the hash value calculation. As shown in FIG.
- step S404 If it is determined that the data recording processing request should be executed as the determination result based on the hash value in step S404, the process proceeds to step S405, where the data is stored in the storage means of the own device (node). It executes the process of extracting the processed data, generates a bucket with the extracted data as the payload (see Fig. 13), and sends it to the playback instruction device. On the other hand, if it is determined that the data reproduction processing request is not to be executed as the comparison processing result based on the hash value, the process proceeds to step S406, and the processing ends without executing the data reproduction processing.
- the information processing device that receives the data reproduction processing request (command) autonomously executes the command based on the comparison between the hash value of the data stored in the packet and the set value of each node. , Determine non-execution and perform processing according to the determination. [5. Data recording / playback processing sequence]
- the recording instruction device issues a data recording processing request to the node, the node performs data recording processing, the reproduction instruction device issues a data reproduction processing request to the node, the node extracts data, A series of processing sequences of the transmission processing will be described together.
- the recording instruction device executes processing of recording target data (contents), that is, FEC processing and interleave processing. This process is the process described above with reference to FIG.
- step S12 the recording instruction device executes a data recording processing request (instruction) packet generation process.
- the interleaved data is stored as a payload, and the packet with the probability value: ⁇ set as the [rule decision condition description] determined by the rule decision condition setting unit 25 3 (see Fig. 4) Generate.
- the recording instruction device transmits an address to each node configuring the distributed storage system using an address setting corresponding to the transmitting node, that is, using a unicast or a multicast.
- the processing of the node that has received the data recording processing request (command) packet from the recording instruction device is performed by autonomously judging the execution or non-execution of the processing described above with reference to FIGS. Processing.
- Figure 19 shows the processing of two nodes (nodes 1 and 2).
- autonomous judgment is performed at many nodes, and data recording processing is performed. Some nodes do not perform data recording.
- the two nodes (nodes 1 and 2) shown in FIG. 19 correspond to steps S 2 1 and S 3 1
- the probability control process that is, the process execution / processing based on the comparison between the generated random number described with reference to FIG. 8 and the probability: ⁇ set as the recording rule judgment condition description in the received packet (data recording request packet).
- the non-execution determination process or the process execution / non-execution determination process based on the comparison between the hash value based on the data in the packet described with reference to FIG. 9 and the node setting value is executed.
- step S41 the reproduction instruction device transmits a reproduction processing request (command) packet (see FIG. 12) to each node.
- the content ID to be played back is stored as a request description, and each node that has received a playback processing request (instruction) packet (see Fig. 12), which is a packet with a playback rule judgment condition description (probability: ⁇ ), is set.
- the two nodes (nodes 1 and 2) shown in FIG. 19 are the probability control processes of steps S51 and S61, that is, the generated random number described with reference to FIG. Probabilities set as the description of the playback rule judgment condition in the packet (data playback processing request packet): judgment processing of non-execution of processing based on comparison with
- the corresponding data is acquired from the storage unit of the local node, and the acquired data is stored as a payload in the packet (Fig. 13 Is generated and transmitted to the playback instruction device in step S53.
- FIG. 19 shows a configuration in which data from only node 1 is transmitted to the reproduction instruction device, data storage packets from nodes 3 to n (not shown) are transmitted to the reproduction instruction device, and The pointing device has received many packets from many nodes.
- the playback instruction device that has received the packet storing the playback data applies the interleaving to the received data block, arranges the data order, and performs the FEC decoding on the interleaved data. And restore the original data.
- the data restoration processing based on the FEC and the Dinter Leap processing is as described above with reference to FIG. Even if there is a lost packet, the error is not a burst error in which the error portion is present as a large data area but a random error, and the original data is restored by the FEC decoding process.
- the information processing device that has received the data recording or reproduction processing request (instruction) writes the recording rule judgment condition description or the reproduction rule judgment condition description set in each processing request packet, or other data in the packet. It is possible to autonomously determine the execution or non-execution of an instruction on the basis of, and perform processing according to the determination.
- the distributed storage system in the present embodiment The data is distributed and recorded by sending a packet describing the recording probability ⁇ to the constituent nodes. Then, the data recorded in the node is returned with a return probability of 0, thereby extracting the data.
- data can be stored without concentrating the data management load on one server. Also, since one node is shared by a plurality of nodes, the data capacity required for the entire system can be reduced. Also, if data is received from multiple nodes, traffic will not be concentrated on one server, and data can be transmitted and received with a stable communication volume. Further, by changing the values of ⁇ , ⁇ ⁇ qZp, the transmission efficiency and the amount of data to be recorded can be changed.
- the recording instruction device transmits the data to be recorded and the recording probability in the same packet, but transmits the data to be recorded and the recording probability in different packets, or uses an external recording device.
- the information may be recorded in a device and referred to from each information processing node.
- a description has been given mainly of a configuration example in which a packet transfer process is performed in an information processing device connected to a network.
- the present invention is not limited to a configuration having a packet transfer configuration.
- the data corresponding to the above-described processing rule determination condition description is applied to each transfer data. By setting the data, it becomes possible to autonomously determine whether or not to execute the request processing in the wireless communication device or device that has received the processing request data.
- FIG. 20 shows an example of an information processing apparatus provided with a CPU (Central Processing Unit) as a control means.
- a CPU Central Processing Unit
- a ROM Read-Only-Memory
- a RAM Random Access Memory
- a storage area and a work area for a program executed in the processing of the CPU 901 and parameters that change as appropriate in the program processing.
- the HDD 904 controls the hard disk, and stores and reads various data and programs from and to the hard disk.
- the encode / decode processing unit 905 executes the encode processing of transmission data such as content and the decoding processing of received data in accordance with the above-described processing. It is composed of a No. 9 21 fi Peripheral Component Internet / Interface (PGI) / device and enables data transfer with each module and each input / output device via the input / output interface 8 22.
- the input unit 9111 is an input unit including, for example, a keyboard and a pointing device.
- the output unit 912 is, for example, a CRT, a liquid crystal display, or the like, and displays various kinds of information as text or images.
- the communication unit 913 executes communication between information processing devices or communication processing with other entities, and under control of the CPU 901, data supplied from each storage unit or C
- the PU 901 executes the processing of transmitting data processed by the encoder Z decoding processing section 905 and receiving data from another entity.
- the drive 9 14 is a flexi-pure disc, CD—ROM (Compact Disc Read)
- the software A computer in which the program is embedded in dedicated hardware, or a general-purpose personal computer that can execute various functions by installing various programs, such as a general-purpose personal computer.
- the program may be stored and provided on a program readable recording medium such as a ROM, or the program may be downloaded via a communication network such as the Internet.
- the program can be recorded in a hard disk or a ROM (Read Only Memory) as a recording medium in advance.
- the program can be temporarily stored on a removable storage medium such as a flexible disk, CD-ROM (Compact Disc Read Only Memory), MO (Magneto optical) disk, DVD (Digital Versatile Disc) magnetic disk, or semiconductor memory.
- Such a removable recording medium can be provided as so-called package software.
- the program can be installed on the computer from the above-mentioned removable recording medium, wirelessly transferred to a computer from a download site, or via a network such as a LAN (Local Area Network) or the Internet. Then, the program can be transferred to a computer by wire, and the computer can receive the program thus transferred and install the program on a recording medium such as a built-in hard disk.
- a camcorder, a personal video recorder, a home gateway, or the like can be considered as an information processing device that constitutes the node, the recording instruction device, and the reproduction instruction device, and a recording unit that records data and performs a predetermined operation.
- the device may have another configuration as long as it has a control unit and a network interface for transmitting and receiving data.
- the recording probability ⁇ and the reply probability were recorded in the packet, but the recording probability ⁇ and the return probability were recorded.
- the transmission probability 3 may be recorded in an arbitrary recording device or a bucket, and each node may refer to the value.
- the recording instruction device when performing data recording processing in a distributed manner to a plurality of nodes connected to a network, includes: Set the data for judgment that can be applied to the judgment processing of whether or not the data recording is executed by the node, and send a data recording processing request storing the set judgment data and the data to be recorded to each node, Since the node side autonomously determines whether or not to execute data recording processing based on the determination data, and performs the processing, preprocessing such as selecting a specific recording node in the recording instruction device that issues a recording request Is unnecessary, and the data recording processing using the distributed nodes is efficiently executed.
- the network is distributed to the nodes connected to the network.
- the playback instruction device that sends a data playback processing request sets determination data applicable to the node to determine whether to execute data extraction and transmission
- a data reproduction request containing the set determination data and the instruction data of the data to be reproduced is transmitted to each node, and the node autonomously extracts data based on the determination data and determines whether or not to execute transmission processing. Since the processing is performed, the reproduction instructing device that issues the reproduction request does not need to perform a pre-processing such as selecting a specific recording node, and the data reproduction processing using the distributed nodes is efficiently executed.
- the information processing device connected to the network executes the processing according to the processing request based on the determination data included in the data processing request received via the data receiving unit. Since it is configured to execute the process of determining whether or not to perform processing, it is not necessary to search for the processing target node (information processing device) on the processing request side. Further, according to the configuration of the present invention, the data that is distributed and recorded in each node is divided into p blocks, and the p blocks are subjected to FEC encoding to form q blocks.
- the coding rate to be converted is assumed to be data that has been subjected to coding processing of Zp, and the recording probability at each node: ⁇ , the reply probability specified by the playback instruction device: ⁇ , the number of reply packets: ( ⁇ ⁇ Since the configuration is set so that ⁇ ⁇ ⁇ ⁇ > number of blocks: ⁇ , a configuration that guarantees reliable data restoration from the return data is possible.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP03775828.1A EP1473636B1 (en) | 2002-11-26 | 2003-11-18 | Information processing device and method, and computer program |
| US10/501,082 US8195821B2 (en) | 2002-11-26 | 2003-11-18 | Autonomous information processing apparatus and method in a network of information processing apparatuses |
| AU2003284406A AU2003284406A1 (en) | 2002-11-26 | 2003-11-18 | Information processing device and method, and computer program |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002-342440 | 2002-11-26 | ||
| JP2002342440A JP4172259B2 (ja) | 2002-11-26 | 2002-11-26 | 情報処理装置および方法、並びにコンピュータ・プログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2004049178A1 true WO2004049178A1 (ja) | 2004-06-10 |
Family
ID=32375883
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2003/014635 Ceased WO2004049178A1 (ja) | 2002-11-26 | 2003-11-18 | 情報処理装置および方法、並びにコンピュータ・プログラム |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US8195821B2 (ja) |
| EP (1) | EP1473636B1 (ja) |
| JP (1) | JP4172259B2 (ja) |
| KR (1) | KR100994521B1 (ja) |
| AU (1) | AU2003284406A1 (ja) |
| WO (1) | WO2004049178A1 (ja) |
Families Citing this family (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7127655B2 (en) * | 2004-01-20 | 2006-10-24 | Qualcomm, Inc. | Methods and apparatus to optimize delivery of multicast content using probabilistic feedback |
| JP4208776B2 (ja) * | 2004-06-25 | 2009-01-14 | キヤノン株式会社 | 印刷クライアント、ネットワークプリンタ及び印刷システム |
| KR100678956B1 (ko) * | 2005-08-25 | 2007-02-06 | 삼성전자주식회사 | 네트워크 상에서 컨텐츠 정보를 요청 및 제공하는 장치 및그 방법 |
| US7480848B2 (en) * | 2006-02-10 | 2009-01-20 | The Directv Group, Inc. | Methods and apparatus to select tornado error correction parameters |
| US8023738B1 (en) | 2006-03-28 | 2011-09-20 | Amazon Technologies, Inc. | Generating reflow files from digital images for rendering on various sized displays |
| US7788580B1 (en) * | 2006-03-28 | 2010-08-31 | Amazon Technologies, Inc. | Processing digital images including headers and footers into reflow content |
| US7433548B2 (en) * | 2006-03-28 | 2008-10-07 | Amazon Technologies, Inc. | Efficient processing of non-reflow content in a digital image |
| US7966557B2 (en) * | 2006-03-29 | 2011-06-21 | Amazon Technologies, Inc. | Generating image-based reflowable files for rendering on various sized displays |
| JP4135956B2 (ja) * | 2006-05-16 | 2008-08-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 複数の情報処理装置を有する情報処理システムの性能を解析する技術 |
| US7715635B1 (en) | 2006-09-28 | 2010-05-11 | Amazon Technologies, Inc. | Identifying similarly formed paragraphs in scanned images |
| US7810026B1 (en) | 2006-09-29 | 2010-10-05 | Amazon Technologies, Inc. | Optimizing typographical content for transmission and display |
| JP2009129164A (ja) * | 2007-11-22 | 2009-06-11 | Nec Corp | 分散ストレージでのファイル配置およびアクセス方法、その装置及びそのプログラム |
| US8782516B1 (en) | 2007-12-21 | 2014-07-15 | Amazon Technologies, Inc. | Content style detection |
| US8572480B1 (en) | 2008-05-30 | 2013-10-29 | Amazon Technologies, Inc. | Editing the sequential flow of a page |
| US9229911B1 (en) | 2008-09-30 | 2016-01-05 | Amazon Technologies, Inc. | Detecting continuation of flow of a page |
| US8499236B1 (en) | 2010-01-21 | 2013-07-30 | Amazon Technologies, Inc. | Systems and methods for presenting reflowable content on a display |
| CN103825790B (zh) * | 2014-01-29 | 2018-08-24 | 昆山三泰新电子科技有限公司 | 远端总线的传输系统、装置与其传输方法 |
| TWI519108B (zh) * | 2014-01-29 | 2016-01-21 | 三泰科技股份有限公司 | 遠端匯流排之傳輸系統、裝置與其傳輸方法 |
| WO2016051512A1 (ja) | 2014-09-30 | 2016-04-07 | 株式会社日立製作所 | 分散型ストレージシステム |
| US10411867B2 (en) * | 2015-04-30 | 2019-09-10 | Sony Corporation | Communication apparatus and communication method |
| US11726851B2 (en) * | 2019-11-05 | 2023-08-15 | EMC IP Holding Company, LLC | Storage management system and method |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001045098A (ja) * | 1999-05-26 | 2001-02-16 | Canon Inc | データ通信システム、データ通信装置、データ通信方法及び記憶媒体 |
| JP2001051834A (ja) * | 1999-08-04 | 2001-02-23 | Hitachi Ltd | ワークフローシステムにおける動的アプリケーション起動方法及びシステム |
| JP2001251266A (ja) * | 2000-03-07 | 2001-09-14 | Sony Corp | データ送出装置及びトランスポートストリーム生成装置並びにそのデータストリーム生成方法 |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5841598A (en) * | 1994-10-28 | 1998-11-24 | Olympus Optical Co., Ltd. | Information recording/reproducing apparatus and data processing method |
| US5699369A (en) * | 1995-03-29 | 1997-12-16 | Network Systems Corporation | Adaptive forward error correction system and method |
| JP3456064B2 (ja) * | 1995-09-08 | 2003-10-14 | ソニー株式会社 | 音声・映像データ記録・再生装置 |
| US6301432B2 (en) * | 1996-04-12 | 2001-10-09 | Sony Corporation | Data recording/reproducing apparatus with a plurality of recording/reproducing units and capable of data recovery |
| US6567176B1 (en) * | 1996-12-26 | 2003-05-20 | Canon Kabushiki Kaisha | Information processing apparatus and control method therefor |
| US6415373B1 (en) * | 1997-12-24 | 2002-07-02 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
| JP2000021137A (ja) * | 1998-06-30 | 2000-01-21 | Sony Corp | 編集装置 |
| JP4779183B2 (ja) * | 1999-03-26 | 2011-09-28 | ソニー株式会社 | 再生装置および再生方法 |
| JP2001291374A (ja) * | 2000-04-07 | 2001-10-19 | Sony Corp | データ記録再生装置及び方法 |
| JP2002010237A (ja) * | 2000-06-22 | 2002-01-11 | Sony Corp | 情報送受信システム及び方法、情報処理装置及び方法 |
| US6990453B2 (en) * | 2000-07-31 | 2006-01-24 | Landmark Digital Services Llc | System and methods for recognizing sound and music signals in high noise and distortion |
| US7073055B1 (en) * | 2001-02-22 | 2006-07-04 | 3Com Corporation | System and method for providing distributed and dynamic network services for remote access server users |
| DE10291762B4 (de) * | 2001-04-25 | 2014-07-10 | Sony Corporation | Datenübertragungsverfahren und Datenübertragungsgerät zum Übertragen von Datenstromdaten |
| US7395245B2 (en) * | 2001-06-07 | 2008-07-01 | Matsushita Electric Industrial Co., Ltd. | Content usage management system and server used in the system |
| US7716332B1 (en) * | 2001-06-20 | 2010-05-11 | At&T Intellectual Property I, L.P. | System and method for server-based predictive caching of back-end system data |
| EP1494113A4 (en) * | 2002-04-10 | 2008-08-06 | Matsushita Electric Industrial Co Ltd | CONTENT GENERATOR, RECEIVER, PRINTER, CONTENT SYSTEM |
-
2002
- 2002-11-26 JP JP2002342440A patent/JP4172259B2/ja not_active Expired - Fee Related
-
2003
- 2003-11-18 WO PCT/JP2003/014635 patent/WO2004049178A1/ja not_active Ceased
- 2003-11-18 EP EP03775828.1A patent/EP1473636B1/en not_active Expired - Lifetime
- 2003-11-18 AU AU2003284406A patent/AU2003284406A1/en not_active Abandoned
- 2003-11-18 US US10/501,082 patent/US8195821B2/en not_active Expired - Fee Related
- 2003-11-18 KR KR20047011450A patent/KR100994521B1/ko not_active Expired - Fee Related
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001045098A (ja) * | 1999-05-26 | 2001-02-16 | Canon Inc | データ通信システム、データ通信装置、データ通信方法及び記憶媒体 |
| JP2001051834A (ja) * | 1999-08-04 | 2001-02-23 | Hitachi Ltd | ワークフローシステムにおける動的アプリケーション起動方法及びシステム |
| JP2001251266A (ja) * | 2000-03-07 | 2001-09-14 | Sony Corp | データ送出装置及びトランスポートストリーム生成装置並びにそのデータストリーム生成方法 |
Non-Patent Citations (3)
| Title |
|---|
| "Efficient epidemic-style protocols for reliable and scalable multicast", IEEE COMP. SOC, US, 13 October 2002 (2002-10-13), pages 180 - 189 |
| AYALVADI J GANESH ET AL., SCAMP: PEER-TO-PEER LIGHTWEIGHT MEMBERSHIP SERVICE FOR LARGE-SCALE GROUP COMMUNICATION, 1 January 2001 (2001-01-01), pages 44 - 55 |
| See also references of EP1473636A4 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20050125549A1 (en) | 2005-06-09 |
| EP1473636A1 (en) | 2004-11-03 |
| KR100994521B1 (ko) | 2010-11-15 |
| AU2003284406A1 (en) | 2004-06-18 |
| KR20050084762A (ko) | 2005-08-29 |
| EP1473636A4 (en) | 2011-11-23 |
| EP1473636B1 (en) | 2016-02-03 |
| JP2004179876A (ja) | 2004-06-24 |
| JP4172259B2 (ja) | 2008-10-29 |
| US8195821B2 (en) | 2012-06-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4172259B2 (ja) | 情報処理装置および方法、並びにコンピュータ・プログラム | |
| KR101009326B1 (ko) | 정보 처리 장치, 정보 처리 방법, 및 기록 매체 | |
| US9350488B2 (en) | Content delivery system with allocation of source data and repair data among HTTP servers | |
| JP4738900B2 (ja) | ピアツーピアコンピュータネットワーク内の効率的な一対多コンテンツ配信 | |
| JP6278531B2 (ja) | ハイブリッドhttp及びudpコンテンツ配信 | |
| JP4920220B2 (ja) | ピアツーピアネットワークでの受信側主導のシステム及び方法 | |
| EP1505508B1 (en) | Distributed data recording and retrieval | |
| KR102110421B1 (ko) | 클라이언트 장치에 시청각 컨텐츠를 전달하는 시스템 및 방법 | |
| KR20080106187A (ko) | 분산형 네트워크에 저장될 파일들을 인코딩하기 위한 컴퓨터 구현 프로세스 및 이를 실행하기 위한 컴퓨터 판독 가능 매체, 피어 투 피어 네트워크의 저장 신뢰도 및 효율성을 향상시키기 위한 시스템, 및 분산형 네트워크에 저장된 인코딩된 파일을 디코딩하기 위한 컴퓨터 구현 프로세스 | |
| JP2006074744A (ja) | 拡張可能なメディアの分散ストリーミングのシステムおよび方法 | |
| US20150181460A1 (en) | Dynamic coding for network traffic by fog computing node | |
| EP2774347A2 (en) | Content delivery system with allocation of source data and repair data among http servers | |
| JP2004531824A (ja) | ネットワーク環境でのファイル伝送方法 | |
| CN114679265B (zh) | 流量获取方法、装置、电子设备和存储介质 | |
| WO2012011473A1 (ja) | 送信装置、送信方法、受信装置、受信方法、通信システム、データ構造、プログラム、及び、記憶媒体 | |
| JP2004179877A (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
| JP2004127168A (ja) | 通信処理装置、および通信処理方法、並びにコンピュータ・プログラム | |
| WO2009087774A1 (ja) | ネットワークカードおよび情報処理装置 | |
| JP2004220183A (ja) | 情報処理装置および情報処理方法、並びにコンピュータ・プログラム | |
| JP2004221756A (ja) | 情報処理装置および情報処理方法、並びにコンピュータ・プログラム | |
| CN121367679A (zh) | 数据传输方法、装置、设备、介质及产品 | |
| JP2009049530A (ja) | データ送信装置、データ中継装置及びデータ受信装置 | |
| JP2021087036A (ja) | 受信装置、配信システム、及びプログラム | |
| CN101192933A (zh) | 一种节目列表服务装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 10501082 Country of ref document: US |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 1020047011450 Country of ref document: KR |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2003775828 Country of ref document: EP |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| WWP | Wipo information: published in national office |
Ref document number: 2003775828 Country of ref document: EP |