System and method for data distribution and recovery
First Claim
1. A method for data distribution and recovery comprising the steps of:
- attaching unique sequence numbers to data packets;
broadcasting the data packets from a server to a plurality of clients and an archive;
waiting, at the server, for an acknowledgement from the archive for each individual data packet of the data packets, wherein the server receives the acknowledgement upon the archive receiving and storing the individual data packet, and wherein if the server does not receive the acknowledgement, then the server stores the individual data packet;
storing the data packets with their attached unique sequence numbers that have been received at the plurality of clients;
monitoring for a missing sequence number at a client;
sending a query from the client that requests re-transmission of a missing data packet having the missing sequence number; and
transmitting to the client the missing data packetwherein the step of sending a query comprises sending the query from the client to the archive and wherein if the archive does not respond or if the archive does not have the missing data packet then the step of sending a query further comprises sending the query to the server.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for data distribution and recovery, including a server that broadcasts data to a plurality of clients and a means for a client to identify and recover broadcast data that the client missed while it was off line. In a representative embodiment, the system includes a transfer server, a plurality of clients in communication with the transfer server, and an archive in communication with the transfer server and the plurality of clients. The transfer server receives data packets from a data source, uniquely identifies each data packet, and broadcasts the data packets to the plurality of clients and the archive. Each client receives the data broadcast from the transfer server, identifies missing data, and communicates with the archive to recover the missing data.
36 Citations
24 Claims
-
1. A method for data distribution and recovery comprising the steps of:
-
attaching unique sequence numbers to data packets; broadcasting the data packets from a server to a plurality of clients and an archive; waiting, at the server, for an acknowledgement from the archive for each individual data packet of the data packets, wherein the server receives the acknowledgement upon the archive receiving and storing the individual data packet, and wherein if the server does not receive the acknowledgement, then the server stores the individual data packet; storing the data packets with their attached unique sequence numbers that have been received at the plurality of clients; monitoring for a missing sequence number at a client; sending a query from the client that requests re-transmission of a missing data packet having the missing sequence number; and transmitting to the client the missing data packet wherein the step of sending a query comprises sending the query from the client to the archive and wherein if the archive does not respond or if the archive does not have the missing data packet then the step of sending a query further comprises sending the query to the server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for distributing data comprising:
-
attaching a unique sequence number to each of a sequence of data packets; transmitting the data packets from a server to a plurality of clients and to an archive; receiving one or more of the data packets at the archive; storing the received data packets at the archive; determining whether a client of the plurality of clients has not received at least one of the data packets; and upon determining that a data packet has not been received by the client, sending a query from the client to the archive, and wherein, if the archive does not respond or if the archive does not have the missing data packet, then sending a query from the client to the server; and re-transmitting the data packets that have not been received by the client to the client from the archive in response to the query if the archive has the missing data packet or from the server in response to the query if the archive does not have the missing data packet. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A computer readable medium having instructions that when executed by a server computer, an archive computer, and a plurality of client computers results in acts comprising:
-
attaching a unique sequence number to each of a sequence of data packets; transmitting the data packets from the server computer to the plurality of client computers and to the archive computer; receiving one or more of the data packets at the archive computer; storing the received data packets at the archive computer; determining whether a client computer of the plurality of client computers has not received at least one of the data packets; upon determining that a data packet has not been received by the client computer, sending a query from the client computer to the archive computer, and wherein, if the archive computer does not respond or if the archive computer does not have the missing data packet, then sending a query from the client computer to the server computer; and re-transmitting the data packets that have not been received by the client computer to the client computer from the archive computer in response to the query if the archive computer has the missing data packet or from the server computer in response to the query if the archive computer does not have the missing data packet. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification