MANAGING RESOURCE UTILIZATION IN A DISPERSED STORAGE NETWORK
A method for execution by a storage unit of a dispersed storage network (DSN), starts with the storage unit receiving a memory permit request from a user device and determining an amount of currently available memory associated with the processing unit. The method continues with the storage unit determining whether to grant the memory allocation request and in response to a determination not to grant the memory allocation request, transmit, a first message to the user device indicating that the memory allocation request has not been granted. When the storage unit determines to grant the memory permit request the method continues with the storage unit updating the amount of currently available memory and transmitting a second message to the user device indicating that the memory allocation request has been granted.
1 . A storage unit (SU) comprising:
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN);
memory that stores operational instructions; and
processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to:
receive a memory permit request from a first computing device;
determine an amount of currently available memory;
based on the currently available memory, determine whether to grant the memory permit request;
in response to a determination not to grant the memory permit request, transmit a first message to a second computing device, wherein the message includes information sufficient to indicate that the memory permit request has not been granted;
in response to a determination to grant the memory permit request, update the amount of currently available memory; and
transmit a second message to the second computing device, wherein the second message includes information sufficient to indicate that the memory permit request has been granted.
2 . The storage unit of claim 1 , wherein the memory permit request may include one or more of a user identifier, a data type indicator, and the amount of memory requested indicator, and expected time duration, and a user device performance history indicator.
3 . The storage unit of claim 1 , wherein the amount of currently available memory is determined based on at least one of a number of currently active permits, an amount of memory indicator allocated to currently active permits, an active memory utilization indicator, and an available memory indicator.
4 . The storage unit of claim 1 , wherein the determination whether to grant the memory permit request is based at least one of a number of currently pending memory permit requests, a current memory allocation, a maximum number of active permits threshold, a maximum amount of memory allocated to currently active permits threshold, an available memory threshold, and a DS unit performance history.
5 . The storage unit of claim 1 , wherein the message to the second computing device includes at least one of the memory permit request, a user identifier, an allowable amount of memory, and instructions to re- request.
6 . The storage unit of claim 1 , wherein the memory permit request is used to reserve a portion of the memory associated with the storage unit.
7 . The storage unit of claim 1 , wherein the information sufficient to indicate that the memory permit request has not been granted includes at least one of the memory permit request, a user identifier, an allowable amount of memory, and instructions to re- request.
8 . The storage unit of claim 1 , wherein the second computing device is the first computing device.
9 . The storage unit of claim 1 , wherein the second computing device is a DS managing unit.
10 . The storage unit of claim 1 , wherein the second message is a memory permit response message, and further wherein the memory permit response message includes at least one of a user identity, the memory permit request, a memory permit identifier, an amount of memory allocated and a time duration of the memory permit.
11 . A method for execution by a processing unit of a storage unit of a dispersed storage network (DSN), the method comprises:
receiving, at the storage unit, a memory permit request from a first computing device;
determining, by the processing unit, an amount of currently available memory associated with the processing unit;
based on the currently available memory, determine, by the processing unit, whether to grant the memory permit request;
in response to a determination not to grant the memory permit request, transmit, a first message to a second computing device, wherein the message includes information sufficient to indicate that the memory permit request has not been granted;
in response to a determination to grant the memory permit request, update, by the processing unit, the amount of currently available memory; and
transmit a second message to the second computing device, wherein the second message includes information sufficient to indicate that the memory permit request has been granted.
12 . The method of claim 11 , wherein the memory permit request may include one or more of a user identifier, a data type indicator, and the amount of memory requested indicator, and expected time duration, and a user device performance history indicator.
13 . The method of claim 11 , wherein the amount of currently available memory is determined based on at least one of a number of currently active permits, an amount of memory indicator allocated to currently active permits, an active memory utilization indicator, and an available memory indicator.
14 . The method of claim 11 , wherein the determination whether to grant the memory permit request is based at least one of a number of currently pending memory permit requests, a current memory allocation, a maximum number of active permits threshold, a maximum amount of memory allocated to currently active permits threshold, an available memory threshold, and a DS unit performance history.
15 . The method of claim 11 , wherein the message to the second computing device includes at least one of the memory permit request, a user identifier, an allowable amount of memory, and instructions to re- request.
16 . The method of claim 11 , wherein the memory permit request is used to restrict the use of memory associated with the storage unit.
17 . The method of claim 11 , wherein the information sufficient to indicate that the memory permit request has not been granted includes at least one of the memory permit request, a user identifier, an allowable amount of memory, and instructions to re- request.
18 . The method of claim 11 , wherein the second computing device is the first computing device.
19 . The method of claim 11 , wherein the second computing device is a DS managing unit.
20 . A computing device in a distributed storage network (DSN)comprising:
an interface configured to interface and communicate with a communication system;
memory that stores operational instructions; and
processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to:
receive a memory permit request from a user device;
determine an amount of currently available memory;
based on the currently available memory, determine whether to grant the memory permit request;
in response to a determination not to grant the memory permit request, transmit a first message to the user device, wherein the message includes information sufficient to indicate that the memory permit request has not been granted;
in response to a determination to grant the memory permit request, update the amount of currently available memory; and
transmit a second message to the user device, wherein the second message includes information sufficient to indicate that the memory permit request has been granted.