Patent ID: 7512630

Claim:
A method for data distribution and recovery comprising: attaching unique sequence numbers to data packets by a server; broadcasting the data packets from the server to a plurality of clients and an archive; storing the data packets with the attached unique sequence numbers that have been received at the archive, wherein a communication path of the data packets received at the archive is at least partly distinct from a communication path of the data packets broadcasted to the plurality of clients, and wherein at least one client monitors for a missing sequence number by: receiving a first data packet and recording a first unique sequence number associated with the first data packet, receiving a second data packet and recording a second unique sequence number associated with the second data packet, comparing the first unique sequence number to the second unique sequence number, and if the second unique sequence number is not in sequence after the first unique sequence number, then determining that the client is missing the sequence number; receiving by the archive a first query via point-to-point communication from the at least one client requesting re-transmission of a missing data packet having the missing sequence number; receiving by the server a second query from the at least one client requesting re-transmission of a missing data packet having the missing sequence number, if the archive fails to respond to the first query or if the archive does not have the missing data packet; and transmitting to the client the missing data packet.