Local data caching for data transfers on a network of computational devices
First Claim
1. A method of data caching and distribution, comprising:
- at a computational machine having a local cache, wherein the computational machine is coupled in a linear communication orbit that is further coupled to a server via a head node of the linear communication orbit, and the computational machine is distinct from the head node, the linear communication orbit further including a first machine and a second machine;
receiving, via the linear communication orbit, from the first machine a data request that is used to request specific data;
determining whether the computational machine stores the specific data in the local cache; and
in accordance with a determination that the computational machine does not store the specific data in the local cache, responding to the data request, by;
passing, via the linear communication orbit, the data request to the second machine, andwhen the second machine returns the specific data to the computational machine, returning, via the linear communication orbit, the specific data to the first machine and determining whether to store the specific data in the local cache according to a data caching method,wherein the head node, first machine, computational machine and second machine are sequentially ordered in an ordered sequence on the linear communication orbit based on a predefined set of rules, the computational machine is between the first machine and the second machine in said ordered sequence, and the first machine or the second machine is between the computational machine and the head node in said ordered sequence.
1 Assignment
0 Petitions
Accused Products
Abstract
In accordance with some embodiments, a computational machine having one or more processors, a local cache and memory receives from a first machine a data request that is used to request specific data. The computational machine determines whether the computational machine stores the specific data in the local cache. In accordance with a determination that the computational machine does not store the specific data in the local cache, the computational machine responds to the data request by passing the data request to a second machine and returning the specific data to the first machine when the second machine returns the specific data to the computational machine. Additionally, the computational machine determines whether to store the returned specific data in the local cache according to a data caching method.
-
Citations
24 Claims
-
1. A method of data caching and distribution, comprising:
-
at a computational machine having a local cache, wherein the computational machine is coupled in a linear communication orbit that is further coupled to a server via a head node of the linear communication orbit, and the computational machine is distinct from the head node, the linear communication orbit further including a first machine and a second machine; receiving, via the linear communication orbit, from the first machine a data request that is used to request specific data; determining whether the computational machine stores the specific data in the local cache; and in accordance with a determination that the computational machine does not store the specific data in the local cache, responding to the data request, by; passing, via the linear communication orbit, the data request to the second machine, and when the second machine returns the specific data to the computational machine, returning, via the linear communication orbit, the specific data to the first machine and determining whether to store the specific data in the local cache according to a data caching method, wherein the head node, first machine, computational machine and second machine are sequentially ordered in an ordered sequence on the linear communication orbit based on a predefined set of rules, the computational machine is between the first machine and the second machine in said ordered sequence, and the first machine or the second machine is between the computational machine and the head node in said ordered sequence. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of data caching and distribution, comprising:
-
at a computational machine having a local cache, wherein the computational machine is coupled in a linear communication orbit that is further coupled to a server via a head node of the linear communication orbit, and the computational machine is distinct from the head node, the linear communication orbit further including a second machine and a third machine; generating a first data request that is used to request specific data; passing, via the linear communication orbit, the data request to the second machine; receiving, via the linear communication orbit, at the computational machine, from the third machine, a second data request to request the specific data after the computational machine generates the first data request, and in accordance with a determination that predefined criteria are satisfied, forgoing passing the second data request to the second machine; and when the second machine returns, via the linear communication orbit, the specific data to the computational machine, returning, via the linear communication orbit, the specific data to the third machine, wherein the head node, third machine, computational machine and second machine are sequentially ordered in an ordered sequence on the linear communication orbit based on a predefined set of rules, the computational machine is between the third machine and the second machine in said ordered sequence, and the third machine or second machine is between the head node and the computational machine in said ordered sequence.
-
-
13. A non-transitory computer-readable medium, having instructions stored thereon, which when executed by one or more processors cause the processors to perform operations comprising:
-
at a computational machine that has a local cache, wherein the computational machine is coupled in a linear communication orbit that is further coupled to a server via a head node of the linear communication orbit, and the computational machine is distinct from the head node, the linear communication orbit further including a first machine and a second machine; receiving, via the linear communication orbit, from the first machine a data request that is used to request specific data; determining whether the computational machine stores the specific data in the local cache; and in accordance with a determination that the computational machine does not store the specific data in the local cache, responding to the data request, by; passing, via the linear communication orbit, the data request to the second machine, and when the second machine returns the specific data to the computational machine, returning, via the linear communication orbit, the specific data to the first machine and determining whether to store the specific data in the local cache according to a data caching method, wherein the head node, first machine, computational machine and second machine are sequentially ordered in an ordered sequence on the linear communication orbit based on a predefined set of rules, the computational machine is between the first machine and the second machine in said ordered sequence, and the first machine or the second machine is between the computational machine and the head node in said ordered sequence. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A computational machine, comprising:
-
one or more processors; a local cache; and memory having instructions stored thereon, which when executed by the one or more processors cause the processors to perform operations, comprising; at the computational machine, wherein the computational machine is coupled in a linear communication orbit that is further coupled to a server via a head node of the linear communication orbit, and the computational machine is distinct from the head node, the linear communication orbit further including a first machine and a second machine; receiving, via the linear communication orbit, from the first machine a data request that is used to request specific data; determining whether the computational machine stores the specific data in the local cache; and in accordance with a determination that the computational machine does not store the specific data in the local cache, responding to the data request, by; passing, via the linear communication orbit, the data request to the second machine, and when the second machine returns the specific data to the computational machine, returning, via the linear communication orbit, the specific data to the first machine and determining whether to store the specific data in the local cache according to a data caching method; wherein the head node, first machine, computational machine and second machine are sequentially ordered in an ordered sequence on the linear communication orbit based on a predefined set of rules, the computational machine is between the first machine and the second machine in said ordered sequence, and the first machine or the second machine is between the computational machine and the head node in said ordered sequence. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification