Systems and methods for seamless host migration
First Claim
Patent Images
1. A method for maintaining network data distribution, the method comprising:
- establishing connections between a host and a plurality of clients;
negotiating a backup viability of one or more of the plurality of clients based on a parameter of the one or more clients;
transmitting host information to a first client from the plurality of clients after the backup viability of the first client has been determined by the host, the host information directing the first client to establish connections as a back-up host to one or more other clients from the plurality of clients based on at least the host information;
transmitting the host information to a second client from the plurality of clients, the host information directing the second client to send data to the first client when communication between the host and the second client is interrupted and to send the data to the first client before transmitting the data to a third client from the plurality of clients based on at least an order in which a connection was established with the host; and
transmitting the host information to the third client from the plurality of clients after the backup viability of the third client has been determined, the host information directing the third client to connect as a back-up host to all other clients from the plurality of clients based on at least the host information and to receive data from the second client when communication between the first client and the second client is interrupted.
5 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods of the present invention for maintaining network data distribution are provided. Network data may be distributed in such as manner as to allow a network session to weather interrupted communications between host and clients without significant loss of data. Embodiments of the present invention provide for one or more clients to serve as backup host(s) for the network session. When the other clients transmit data to the host, they may also transmit the data to one or more backup hosts if there are any indications of interrupted communication.
154 Citations
23 Claims
-
1. A method for maintaining network data distribution, the method comprising:
-
establishing connections between a host and a plurality of clients; negotiating a backup viability of one or more of the plurality of clients based on a parameter of the one or more clients; transmitting host information to a first client from the plurality of clients after the backup viability of the first client has been determined by the host, the host information directing the first client to establish connections as a back-up host to one or more other clients from the plurality of clients based on at least the host information; transmitting the host information to a second client from the plurality of clients, the host information directing the second client to send data to the first client when communication between the host and the second client is interrupted and to send the data to the first client before transmitting the data to a third client from the plurality of clients based on at least an order in which a connection was established with the host; and transmitting the host information to the third client from the plurality of clients after the backup viability of the third client has been determined, the host information directing the third client to connect as a back-up host to all other clients from the plurality of clients based on at least the host information and to receive data from the second client when communication between the first client and the second client is interrupted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A network data distribution maintenance system, the system comprising:
-
a host that connects to a plurality of clients, wherein the host receives and acknowledges the receipt of data from each of the plurality of clients; a first client from the plurality of clients that receives host information after a backup viability of the first client has been determined by the host based on a parameter of the first client, wherein the first client connects as a back-up host to one or more of the other clients from the plurality of clients based on at least the host information; a second client from the plurality of clients that transmits data to the first client when communication between the host and the second client is interrupted; and a third client from the plurality of clients that; receives host information after a backup viability of the third client has been determined by the host based on a parameter of the third client, connects as a back-up host to all other clients from the plurality of clients based on at least the host information, and receives data from the second client when communication between the first client and the second client is interrupted, wherein the second client transmits the data to the first client before transmitting the data to the third client based on at least an order in which a connection was established with the host. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A computing device that maintains data distribution in networks, the computing device comprising:
-
a network interface communicatively coupled to a plurality of clients; an acknowledgement module stored in memory, coupled to the network interface, and executable by a processor to transmit a reply acknowledging data received from one or more of the plurality of clients; a negotiation module stored in memory, coupled to the network interface, and executable by a processor to negotiate a backup viability of one or more of the plurality of clients based on a parameter of the negotiated client; and a backup application module stored in memory, coupled to the network interface, and executable by the processor to; transmit an application providing host information to a first client from the plurality of clients after the backup viability of the first client has been determined by the negotiation module, wherein the first client connects as a back-up host to one or more of the other clients from the plurality of clients based on at least the host information, wherein the first client receives data from a second client from the plurality of clients when communication between the host and the second client is interrupted; and transmit an application providing host information to a third client from the plurality of clients after the backup viability of the third client has been determined by the negotiation module, wherein the third client connects as a back-up host to all other clients from the plurality of clients based on at least the host information, wherein the third client receives data from the second client when communication between the first client and the second client is interrupted, and wherein the second client transmits the data to the first client before transmitting the data to the third client based on at least an order in which a connection was established with the host. - View Dependent Claims (19, 20, 21)
-
-
22. A non-transitory computer-readable storage medium having embodied thereon a program, the program being executable by a processor to perform a method for maintaining network data distribution, the method comprising:
-
connecting a host to a plurality of clients, such that data exchanged between the host and each of the plurality of clients is acknowledged upon receipt; negotiating a backup viability of one or more of the plurality of clients based on a parameter of the one or more clients; transmitting host information to the first client from the plurality of clients after the backup viability of the first client has been determined by the host, the host information directing the first client to connect as a back-up host to one or more other clients from the plurality of clients based on at least the host information; transmitting the host information to a second client from the plurality of clients, the host information directing the second client to send data to the first client when communication between the host and the second client is interrupted and to send the data to the first client before transmitting the data to a third client from the plurality of clients based on at least an order in which a connection was established with the host; and transmitting the host information to the third client from the plurality of clients after the backup viability of the third client has been determined, the host information directing the third client to connect as a back-up host to all other clients from the plurality of clients based on at least the host information and to receive data from the second client when communication between the first client and the second client is interrupted. - View Dependent Claims (23)
-
Specification