Software application updating in a local network
First Claim
1. A method of data caching and distribution, comprising:
- at each respective machine in a plurality of machines that are included in a linear communication orbit, wherein the linear communication orbit includes machines at two end nodes, comprising a head node and a tail node, and the linear communication orbit is coupled to a server via at least one of the machines at the two end nodes;
executing a plurality of software programs;
executing a local server distinct from the plurality of software programs;
at the local server, receiving, via the linear communication orbit, update metadata;
at an update module executed by the respective machine, the update module distinct from the local server and the plurality of software programs,receiving the update metadata from the local server; and
evaluating software version information using the update metadata to determine a set of one or more updates to be applied to one or more of the plurality of software programs;
sending, via the linear communication orbit, one or more requests so as to request one or more software update files corresponding to the set of one or more updates;
receiving the one or more software update files corresponding to the set of one or more updates; and
at the update module, updating the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs;
wherein the linear communication orbit comprises a linearly arranged sequence of machines configured to sequentially convey messages to each machine in the linearly arranged sequence of machines in the linear communication orbit.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of updating software, performed by respective machines in a linear communication orbit includes, at a local server executed by a respective machine, receiving, via the linear communication orbit, update metadata. At an update module executed by the respective machine, an update module evaluates software version information using the update metadata to determine a set of one or more updates to be applied to one or more software programs. A patch module sends, via the linear communication orbit, requests for one or more software update files corresponding to the set of one or more updates, and receives the one or more software update files corresponding to the set of one or more updates. The update module then updates the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs.
109 Citations
24 Claims
-
1. A method of data caching and distribution, comprising:
at each respective machine in a plurality of machines that are included in a linear communication orbit, wherein the linear communication orbit includes machines at two end nodes, comprising a head node and a tail node, and the linear communication orbit is coupled to a server via at least one of the machines at the two end nodes; executing a plurality of software programs; executing a local server distinct from the plurality of software programs; at the local server, receiving, via the linear communication orbit, update metadata; at an update module executed by the respective machine, the update module distinct from the local server and the plurality of software programs, receiving the update metadata from the local server; and evaluating software version information using the update metadata to determine a set of one or more updates to be applied to one or more of the plurality of software programs; sending, via the linear communication orbit, one or more requests so as to request one or more software update files corresponding to the set of one or more updates; receiving the one or more software update files corresponding to the set of one or more updates; and at the update module, updating the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs; wherein the linear communication orbit comprises a linearly arranged sequence of machines configured to sequentially convey messages to each machine in the linearly arranged sequence of machines in the linear communication orbit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. A system, comprising a respective machine in a plurality of machines that are included in a linear communication orbit, wherein the linear communication orbit includes machines at two end nodes, comprising a head node and a tail node, and the linear communication orbit is coupled to a server via at least one of the machines at the two end nodes;
the system comprising; one or more processors; memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions for; executing a plurality of software programs; executing a local server distinct from the plurality of software programs; at the local server, receiving, via the linear communication orbit, update metadata; at an update module executed by the respective machine, the update module distinct from the local server and the plurality of software programs; receiving the update metadata from the local server; and evaluating software version information using the update metadata to determine a set of one or more updates to be applied to one or more of the plurality of software programs; sending, via the linear communication orbit, one or more requests so as to request one or more software update files corresponding to the set of one or more updates; receiving the one or more software update files corresponding to the set of one or more updates; and at the update module, updating the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs; wherein the linear communication orbit comprises a linearly arranged sequence of machines configured to sequentially convey messages to each machine in the linearly arranged sequence of machines in the linear communication orbit. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
17. A non-transitory computer readable storage medium storing one or more programs for execution by a respective machine of a plurality of machines arranged in a linear communication orbit so as to sequentially convey messages to each of the machines in the linear communication orbit, wherein the linear communication orbit includes machines at two end nodes, comprising a head node and a tail node, and the linear communication orbit is coupled to a server via one of the two end nodes;
- the one or more programs including instructions for;
executing a plurality of software programs; executing a local server distinct from the plurality of software programs; at the local server, receiving, via the linear communication orbit, update metadata; at an update module executed by the respective machine, the update module distinct from the local server and the plurality of software programs, receiving the update metadata from the local server; and evaluating software version information using the update metadata to determine a set of one or more updates to be applied to one or more of the plurality of software programs; sending, via the linear communication orbit, one or more requests so as to request one or more software update files corresponding to the set of one or more updates; receiving the one or more software update files corresponding to the set of one or more updates; and at the update module, updating the one or more of the software programs by applying the received one or more software update files to the one or more of the software programs; wherein the linear communication orbit comprises a linearly arranged sequence of machines configured to sequentially convey messages to each machine in the linearly arranged sequence of machines in the linear communication orbit. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
- the one or more programs including instructions for;
Specification