IP Library Granted Patent US 7,809,850
Granted Patent B2
US 7,809,850 · App. 10/523,347 · Granted Oct 5, 2010

Digital content delivery system, digital content delivery method, program for executing the method, computer readable recording medium storing thereon the program, and server and client for it

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,809,850
App. No.
10/523,347
Granted
Oct 5, 2010
Kind
B2
Abstract

A system distributes digital contents through first and second networks and. A server is connected to the first network, and clients for receiving and displaying or reproducing the digital contents are connected to the second network. The server divides digital contents held therein into a plurality of packets, and transmits packets of a minimum unit for constructing the digital contents to the second network. The clients include storage for holding the digital contents therein by use of the packets of the minimum unit received from the server and packets received from other clients constructing the second network.

Claims (65)

1. A digital contents distribution server providing digital contents to a second network, the server comprising:

a connection to a first network, said first network for holding and transmitting the digital contents to a plurality of clients in the second network, wherein said clients in the second network are grouped into client groups that are mutually connected to the second network through lines different in communication capacity; and

a central processor unit configured for dividing the digital contents into a plurality of packets; wherein the packets are defined as a minimum unit required for reconstructing the digital contents;

a storage device storing an updatable list of client destinations located in the second network, wherein said updatable list comprises client group identifiers for identifying which clients belong to which client group; and wherein the server adds and removes the client destinations from the updatable list responsive to said client destinations joining or leaving their respective client group;

the central processor unit further configured for transmitting the packets to the first network wherein copies of said packets are then transmitted, through the second network to a selected client group;

the central processor unit further configured for dynamically allocating, by use of the updatable list, the selected client group in the second network to which the packets are transmitted;

a receiver configured for receiving receipt notices from the listed destinations;

the central processor unit further configured for dynamically selecting at least one client destination, from the updatable list of client destinations, serving as an intermediate node for the selected client group, by use of the receipt notices; and

the central processor unit further configured for transmitting the packets to the intermediate node, wherein the packets mean the minimum packets capable of reconstructing original digital contents without the overlap of the packets;

wherein the central processor unit further transmits to the intermediate node information comprising source packet distribution data and a list of the clients within the client group to which the intermediate node belongs; and

wherein the intermediate node refers to the transmitted information for distributing copies of the packets to other clients in the selected client group for reconstructing the digital contents from the packet copies.

2. The server of claim 1 , wherein the central processor unit is further configured for:

registering, with the server, a time when the server transmits the packets to a predetermined destination;

registering, with the server, a time when a client having the predetermined destination issues the receipt notice of the packets; and

calculating a time difference between the transmission time and the receipt notice issuance time.

3. The server according to claim 1 , wherein the central processor unit is further configured for dynamically updating the updatable list of client in association with a change of a construction of the second network.

4. A client for receiving digital contents distributed through a first network in a second network connected to the first network, the client comprising:

a receiving buffer that writes a received packet to an address corresponding to a packet identifier of the received packet for each time of receiving the packet and configured for:

receiving, through the first network, dynamically allocated packets of a minimum unit for constructing digital contents divided into a plurality of packets, wherein the packets of the minimum unit comprise a minimum number of packets capable of reconstructing original digital contents without an overlap of the packets;

wherein the packets for reconstructing the digital contents are received by a dynamically selected intermediate node within a client group in the second network;

wherein the clients in the second network are grouped into client groups that are mutually connected to the second network through lines different in communication capacity; and

a central processor unit configured for distributing to other clients within the client group in the second network copies of the packets of the minimum unit received through the first network and packets received from other clients through the second network.

5. The client according to claim 4 , wherein the central processor unit is further configured for preparing a receipt notice which comprises a time of receiving the packets of the minimum unit.

6. The client according to claim 4 , wherein the central processor unit is further configured for identifying the packets of the minimum unit from the packets received from the other clients.

7. The client according to claim 4 , further comprising:

an updatable list of members constructing the second network; and

wherein the central processor unit is further configured for updating the updatable list in any of cases where a client is added to and deleted from the second network.

8. A digital contents distribution system configured for distributing digital contents, the system comprising:

a server comprising a central processing unit, connected to a first network and configured for holding therein and transmitting the digital contents;

a first network and

a second network comprising a plurality of client groups connected to the first network through lines different in communication capacity, wherein each client group represents a wide area network; and

the plurality of client groups constructed by including clients constructing the second network connected to the first network and for constructing the wide area group for receiving and providing the digital contents wherein one of the clients in the second network is dynamically selected as an intermediate node for receiving a packet from the server and transmitting the received packet to other clients in the client group, and

wherein the server is configured for dividing the held digital contents into a plurality of packets and transmitting packets of a minimum unit for constructing the digital contents to the intermediate node by dynamically allocating the packets without overlap, and

wherein the intermediate node distributes copies of the packets of the minimum unit received from the server to all of the clients constructing the client group to which the intermediate node belongs, using an updatable list comprising:

client group identifiers for identifying which clients belong to which client group; and

a client list of the clients constructing the wide area network group within the second network, each client receiving the packets referring to source packet distribution data or a list of pre-allocated copy destinations, which is received together with said packets of a minimum unit for constructing digital contents; and

wherein the packets of the minimum unit mean the minimum number of packets capable of reconstructing original digital contents without the overlap of the packets.

9. A server connected to a first network for distributing digital contents, the server comprising:

an interface configured to acquire the digital contents;

a storage device for holding therein the digital contents;

wherein the storage device also stores an updatable list of client destinations located in a second network, wherein said updatable list comprises client group identifiers for identifying which clients belong to which client group; and

wherein the server adds and removes the client destinations from the updatable list responsive to said client destinations joining or leaving their respective client group;

a central processor unit configured for:

reading the digital contents from the storage device;

creating packets of a minimum unit by dividing the digital contents into a plurality of packets, wherein the packets of the minimum unit comprise the minimum number of packets capable of reconstructing original digital contents without an overlap of the packets;

selecting distribution destinations of the packets of the minimum unit in such a manner that identical packets of the minimum unit are not overlapped for a predetermined group, wherein the distribution destinations are selected from the updatable list of destinations included in the second network; and

transmitting the packets to a first network for transmitting to an intermediate node within the predetermined group for dynamically allocating the packets of the minimum unit for constructing the digital contents:

wherein the intermediate node distributes copies of the packets to clients of the selected destinations in the group.

10. The server according to claim 9 , wherein the central processor unit is configured for creating packets of a minimum unit including data for distributing a copy of the packets of the minimum unit at least to another group.

11. A method for controlling a computer as a server for distributing digital contents through a first network to a wide area group including a plurality of groups, the method making the computer execute the steps of:

storing the digital contents in a storage device;

creating packets of a minimum unit by dividing the held digital contents into a plurality of packets, wherein the packets of the minimum unit comprise the minimum number of packets capable of reconstructing original digital contents without an overlap of the packets;

selecting and registering therewith distribution destinations of the packets of the minimum unit in such a manner that identical packets of the minimum unit are not overlapped for a predetermined group, wherein the distribution destinations are selected from an updatable list of destinations;

wherein said updatable list comprises client group identifiers for identifying which clients belong to which client group; and wherein the server adds and removes the client destinations from the updatable list responsive to said client destinations joining or leaving their respective client group;

storing data of the selected distribution destinations as the packets of the minimum unit; and

reading and transmitting, for constructing the digital contents, the stored packets of the minimum unit to an intermediate node within the selected distribution destination for distributing copies of the packets to other clients of the selected distribution destinations in the group while dynamically allocating the read-out packets;

wherein the group is connected to the server through a second network connected to the first network through lines different in communication capacity.

12. A non-transitory computer readable recording medium recording therein a program for controlling a computer as a server for holding therein and distributing digital contents, through a first network, to a wide area group including a plurality of groups connected through a second network, wherein the program when executed causes the computer execute the steps of:

creating packets of a minimum unit by dividing the held digital contents into a plurality of packets;

selecting and registering therewith distribution destinations of the packets of the minimum unit in such a manner that identical packets of the minimum unit are not overlapped for a predetermined group, wherein the distribution destinations are selected from an updatable list of destinations comprising:

client group identifiers for identifying which clients belong to which client group, wherein each client group represents a wide area network;

a client list of the clients constructing the wide area network group within the second network, each client receiving packets referring to source packet distribution data or a list of pre-allocated copy destinations, which is received together with said packets of a minimum unit for constructing digital contents;

storing data of the selected distribution destinations as the packets of the minimum unit; and

reading and transmitting, for constructing the digital contents, the stored packets of the minimum unit to an intermediate node for distributing copies of the packets to the other clients of the selected distribution destinations in the group while dynamically allocating the read-out packets;

wherein the group is connected to the server through a second network connected to the first network through lines different in communication capacity.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2024
From: DAEDALUS BLUE LLC
To: TAIWAN SEMICONDUCTOR MANUFACTURING COMPANY, LIMITED
Reel/Frame 066749/0668 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: DAEDALUS GROUP, LLC
To: DAEDALUS BLUE LLC
Reel/Frame 051737/0191 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP, LLC
Reel/Frame 051710/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP LLC
Reel/Frame 051032/0784 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR NAME FROM SHU SHIMIZU TO SHUICHI SHIMIZU AND TO RE-RECORD ASSIGNMENT PREVIOUSLY RECORDED ON REEL 017137 FRAME 0821. ASSIGNOR(S) HEREBY CONFIRMS THE REQUESTED CORRECTION OF ASSIGNOR NAME FROM SHU SHIMIZU TO SHUICHI SHIMIZU.. Recorded May 20, 2013
From: SHIMIZU, SHUICHI; NAKAMURA, TAIGA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 030452/0904 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2005
From: SHIMIZU, SHU; NAKAMURA, TAIGA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 017137/0821 →