Resource allocation using traffic aggregability and future bandwidth availability in a network
US-2024292275-A1 · Aug 29, 2024 · US
US2026032091A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2026032091-A1 |
| Application number | US-202519340104-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 25, 2025 |
| Priority date | Jun 23, 2021 |
| Publication date | Jan 29, 2026 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Systems, apparatuses and methods provide for a memory controller to manage quality of service enforcement. For example, a memory controller includes logic to determine a plurality of projected bandwidth levels and a plurality of projected quality of service levels on a user-by-user basis. The projected bandwidth levels and the projected quality of service levels are determined for a plurality of device configurations based on one or more storage device parameters. A requested bandwidth level and a requested quality of service level is received from a host in response to the plurality of projected bandwidth levels and the plurality of projected quality of service levels.
Opening claim text (preview).
1 .- 20 . (canceled) 21 . A memory controller comprising logic to: determine a plurality of projected bandwidth levels and a plurality of projected quality of service levels on a user-by-user basis based on one or more storage device parameters; cause to be transmitted to a host the plurality of projected bandwidth levels and the plurality of projected quality of service levels; receive, from the host, a requested bandwidth level and a requested quality of service level that were determined based on the plurality of projected bandwidth levels and on the plurality of projected quality of service levels; based on the requested bandwidth level and on the requested quality of service level, select a target storage device from a plurality of storage devices, the plurality of storage devices comprising a first storage device of a first media type and a second storage device of a second media type, wherein the second storage device is to operate more slowly than the first storage device; and cause an incoming user command to be issued to the target storage device. 22 . The memory controller of claim 21 , wherein the one or more storage device parameters comprise one or more of a number of dies, an internal queue depth, a media operation speed, a per die read projection, a per die write projection, a program suspend projection, or an erase suspend projection. 23 . The memory controller of claim 21 , wherein the logic is further to: receive, from the host, a command priority in response to the plurality of projected bandwidth levels and the plurality of projected quality of service levels; and control an internal queue depth to maintain the requested quality of service level, wherein the internal queue depth is controlled based at least in part on dynamically reallocating the command priority. 24 . The memory controller of claim 23 , wherein the logic is further to: receive, from the host, permission to dynamically reallocate the command priority. 25 . The memory controller of claim 23 , wherein the logic is further to: receive, from the host, instructions on how to dynamically reallocate the command priority. 26 . The memory controller of claim 23 , wherein the dynamically reallocating of the command priority includes configuring a first percentage of user commands to be executed at a first priority and a second percentage of user commands to be executed at a second priority, and wherein the first priority is different from the second priority. 27 . The memory controller of claim 23 , wherein the dynamically reallocating of the command priority is based at least in part on one or more of a change in the internal queue depth, a change in media type among the plurality of storage devices, a change in power management per user, or a change in defragment policy. 28 . The memory controller of claim 23 , wherein the logic is further to: receive, from the host, a request for a current priority of a user; and report the current priority of the user to the host based on the dynamically reallocating of the command priority. 29 . The memory controller of claim 21 , wherein the logic is further to: receive, from the host, a requested garbage collection frequency for a garbage collection timer; and configure the garbage collection timer based on the requested garbage collection frequency. 30 . The memory controller of claim 21 , wherein the logic is further to: receive, from the host, a request to activate a write aggregation and de-staging timer; and send, to the host, a report of completion when ready to accept de-staged writes in response to the write aggregation and de-staging timer. 31 . A method comprising: determining a plurality of projected bandwidth levels and a plurality of projected quality of service levels on a user-by-user basis based on one or more storage device parameters; causing to be transmitted to a host the plurality of projected bandwidth levels and the plurality of projected quality of service levels; receiving, from the host, a requested bandwidth level and a requested quality of service level that were determined based on the plurality of projected bandwidth levels and on the plurality of projected quality of service levels; based on the requested bandwidth level and on the requested quality of service level, selecting a target storage device from a plurality of storage devices, the plurality of storage devices comprising a first storage device of a first media type and a second storage device of a second media type, wherein the second storage device is to operate more slowly than the first storage device; and causing an incoming user command to be issued to the target storage device. 32 . The method of claim 31 , wherein the one or more storage device parameters comprises one or more of a number of dies, an internal queue depth, a media operation speed, a per die read projection, a per die write projection, a program suspend projection, or an erase suspend projection. 33 . The method of claim 31 , wherein the method further comprises: receiving, from the host, a command priority in response to the plurality of projected bandwidth levels and the plurality of projected quality of service levels; and controlling an internal queue depth to maintain the requested quality of service level, wherein the internal queue depth is controlled based at least in part on dynamically reallocating the command priority. 34 . The method of claim 33 , wherein the method further comprises: receiving, from the host, permission to dynamically reallocate the command priority. 35 . The method of claim 33 , wherein the method further comprises: receiving, from the host, instructions on how to dynamically reallocate the command priority. 36 . The method of claim 33 , wherein the dynamically reallocating of the command priority includes configuring a first percentage of user commands to be executed at a first priority and a second percentage of user commands to be executed at a second priority, and wherein the first priority is different from the second priority. 37 . The method of claim 33 , wherein the dynamically reallocating of the command priority is based at least in part on one or more of a change in the internal queue depth, a change in media type among the plurality of storage devices, a change in power management per user, or a change in defragment policy. 38 . The method of claim 33 , wherein the method further comprises: receiving, from the host, a request for a current priority of a user; and reporting the current priority of the user to the host based on the dynamically reallocating of the command priority. 39 . The method of claim 31 , wherein the method further comprises: receiving, from the host, a requested garbage collection frequency for a garbage collection timer; and configuring the garbage collection timer based on the requested garbage collection frequency. 40 . The method of claim 31 , wherein the method further comprises: receiving, from the host, a request to activate a write aggregation and de-staging timer, and sending, to the host, a report of completion when ready to accept de-staged writes in response to the write aggregation and de-staging timer.
Traffic characterised by specific attributes, e.g. priority or QoS · CPC title
based on usage prediction · CPC title
QOS or priority aware · CPC title
Centralised allocation of resources · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.