System and method for providing input/output determinism for servers hosting remotely accessible storages
AssigneeExcelero Storage Ltd.
InventorsYaniv Romem, Omri Mann, Ofer Oshri
Life of this patent
Estimating the term…
Abstract
Systems and methods for providing input/output (I/O) determinism. An I/O instruction and at least one service level indicator are received, wherein the at least one service level indicator includes a required time for executing the I/O instruction. It is determined whether the I/O instruction can be executed on the storage within the required time. When it is not determined that the I/O instruction can be executed on the storage within the required time, a notification is sent.
Claims14
A method for providing input/output (I/O) determinism for a server hosting at least a remotely accessible storage, comprising:
- receiving an I/O instruction and at least one service level indicator from a client device, wherein the at least one service level indicator includes a required time for executing the I/O instruction;
- determining whether the I/O instruction can be executed on the storage within the required time, wherein determining whether the I/O instruction can be executed on the storage within the required time further comprises:
- determining a first latency of communication between the server and the client device;
- and
- determining a first execution time for executing the I/O instruction on the storage, wherein it is determined that the I/O instruction can be executed on the storage within the required time when a sum of the first latency and the first execution time is less than the required time;
- and
- sending, to the client device, a notification, when it is not determined that the I/O instruction can be executed on the storage within the required time.
A system for providing input/output (I/O) determinism, comprising:
- a storage;
- a processing circuitry;
- and
- a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to:
- receive an I/O instruction and at least one service level indicator from a client device, wherein the at least one service level indicator includes a required time for executing the I/O instruction;
- determine a first latency of communication between the system and the client device;
- determine a first execution time for executing the I/O instruction on the storage;
- determine whether the I/O instruction can be executed on the storage within the required time, wherein it is determined that the I/O instruction can be executed on the storage within the required time when a sum of the first latency and the first execution time is less than the required time;
- and
- send, to the client device, a notification, when it is not determined that the I/O instruction can be executed on the storage within the required time.
A method for providing input/output (I/O) determinism for a server hosting at least a storage, the server including a processing circuitry, comprising:
- sending, by the processing circuitry to the storage, an I/O instruction and at least one service level indicator, wherein the at least one service level indicator includes a required time for executing the I/O instruction;
- determining, by the storage, whether the I/O instruction can be executed on the storage within the required time;
- and
- sending, to the processing circuitry by the storage, a notification, when it is not determined that the I/O instruction can be executed on the storage within the required time;
- sending the I/O instruction to another server including at least one other storage, wherein the I/O instruction is sent to the other server when the I/O instruction can be executed on the at least one other storage within the required time;
- determining a latency of communication between the server and the other server;
- determining an execution time for executing the I/O instruction on the at least one other storage, wherein the I/O instruction can be executed on the at least one other storage within the required time when a sum of the determined latency and the determined execution time is less than the required time;
- and
- sending, to the at least one other storage, the I/O instruction for execution, when it is determined that the I/O instruction can be executed on the at least one other storage within the required time.
A system for providing input/output (I/O) determinism, comprising:
- a storage;
- a processing circuitry;
- and
- a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to:
- sending, by the processing circuitry to the storage, an I/O instruction and at least one service level indicator, wherein the at least one service level indicator includes a required time for executing the I/O instruction;
- determining, by the storage, whether the I/O instruction can be executed on the storage within the required time;
- and
- sending, to the processing circuitry by the storage, a notification, when it is not determined that the I/O instruction can be executed on the storage within the required time;
- send the I/O instruction to another server including at least one other storage;
- determine a latency of communication between the server and the other server;
- determine an execution time for executing the I/O instruction on the at least one other storage, wherein the I/O instruction can be executed on the at least one other storage within the required time when a sum of the determined latency and the determined execution time is less than the required time;
- and
- send, to the at least one other storage, the I/O instruction for execution, when it is determined that the I/O instruction can be executed on the at least one other storage within the required time.
Dependencies are inferred from the claim text.