Network and method for servicing a computation request
AssigneeNortheastern University
InventorsEdmund Meng Yeh, Khashayar Kamran
Life of this patent
Estimating the term…
Abstract
A framework for joint computation, caching, and request forwarding in data-centric computing-based networks comprises a virtual control plane, which operates on request counters for computations and data, and an actual plane, which handles computation requests, data requests, data objects and computation results in the physical network. A throughput optimal policy, implemented in the virtual plane, provides a basis for adaptive and distributed computation, caching, and request forwarding in the actual plane. The framework provides superior performance in terms of request satisfaction delay as compared with several baseline policies over multiple network topologies.
Claims21
A node configured to be used in a data distribution network, the node comprising:
- a processor and a non-transitory computer-readable medium having processor instructions stored thereon, the processor configured to load and execute the instructions that, when executed, cause the node to be configured to:
- update a local joint policy defining rules to govern calculations used to make decisions to perform computations at the node to service a computation request;
- exchange computation request counters and data request counters with neighboring nodes in the network to enable the node to update the local joint policy to define rules to govern calculations used to make decisions to forward the computation request or representation thereof or a data request for at least a portion of a data object required for performing the computations to service the computation request, the computation request or the data request being forwarded from the node, the computation request counters exchanged representing demand for computations, the data request counters exchanged representing demand for data objects;
- update the local joint policy to define rules to govern calculations used to make decisions to cache at least a portion of the data object at the node;
- and
- update the local joint policy by calculating differences in accordance with the local joint policy, the differences calculated between respective computation request counters for computation requests of one or more queues at the node and respective data request counters for the computation requests of the one or more queues.
A node configured to be used in a data distribution network, the node comprising a processor and a non-transitory computer-readable medium having processor instructions stored thereon, the processor configured to load and execute the instructions that, when executed, cause the node to be configured to:
- make a self-determination in accordance with a local joint policy, the local joint policy defining rules for performing calculations used to make decisions to:
- perform computations to service a computation request received from an entity;
- forward the computation request or representation thereof or a data request for at least a portion of a data object;
- and
- cache the at least a portion of the data object;
- perform computations to service the computation request using data of the data object;
- and
- forward results of the computations performed, the results forwarded toward the entity that submitted the computation request and in a direction opposite to a direction in which the computation request is received by the node, wherein the local joint policy includes a calculation of a difference between respective computation request counters for computation requests of one or more queues at the node and respective data request counters for the computation requests of the one or more queues, the respective computation request counters representing demand for computations, the respective data request counters representing demand for data objects.
A method of servicing a computation request submitted by an entity to a node of a distribution network, the method comprising:
- making a self-determination in accordance with a local joint policy, the local joint policy defining rules for performing calculations used to make decisions to:
- perform computations to service the computation request received from the entity;
- forward the computation request or representation thereof or a data request for at least a portion of a data object;
- and
- cache the at least a portion of the data object;
- performing computations to service the computation request using data of the data object;
- and
- forwarding results of the computations performed, the results forwarded toward the entity that submitted the computation request and in a direction opposite to a direction in which the computation request is received by the node, wherein the local joint policy includes calculating a difference between respective computation request counters for one or more computation requests of one or more queues at the node and respective data request counters for the computation requests of the one or more queues, the respective computation request counters representing demand for computations, the respective data request counters representing demand for data objects.
Dependencies are inferred from the claim text.