IP Library Granted Patent US 12,613,651
Granted Patent B2
US 12,613,651 · App. 18/599,810 · Granted Apr 28, 2026

Quality of service management in a distributed storage system

Inventors: Maor Ben Dayan (Tel Aviv, IL); Omri Palmon (Tel Aviv, IL); Liran Zvibel (Tel Aviv, IL); Kanael Arditti (Tel Aviv, IL); Tomer Filiba (Tel Aviv, IL)
Assignee: WEKA.IO Ltd.
G06F3/0647G06F3/0604G06F3/0607G06F3/061G06F3/0613G06F3/0619G06F3/0635G06F3/0643G06F3/0656G06F3/0665G06F3/067G06F3/0673G06F3/0685G06F16/182G06F16/1827H04L43/0882H04L43/16H04L47/6275H04L47/83H04L49/90H04L67/06H04L67/1097
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,613,651
App. No.
18/599,810
Granted
Apr 28, 2026
Kind
B2
Abstract

One or more computing devices may comprise congestion management circuitry, one or more client file system request buffers, and DESS interface circuitry. The congestion management circuitry is operable to determine an amount of congestion in the DESS. The one or more client file system request buffers is/are operable to queue first client file system requests of a first priority level and second client file system requests of a second priority level, wherein the first priority level is higher priority than the second priority level. The DESS interface circuitry is operable to control a rate at which the first file system requests and second file system requests are fetched from the one or more client file system request buffers based on the amount of congestion in the DESS, on the first priority level, and on the second priority level.

Claims (38)

1 . A system, wherein the system comprises:

a congestion management circuit operable to determine a quality of service (QoS) in a storage system;

a request buffer operable to queue a plurality of requests; and

an interface circuit operable to control a choking rate and a fetching rate of the plurality requests, wherein the interface circuit comprises:

a file system mounting point that is not statically associated with one particular priority class,

a centralized priority manager configured to store and distribute priority settings to nodes within the storage system, and

a buffering control circuit configured to allocate different fetching rates, via the file system mounting point, according to priority levels assigned by the centralized priority manager.

2 . The system of claim 1 , wherein the choking rate is controlled according to the QoS of the storage system.

3 . The system of claim 1 , wherein the fetching rate is controlled according to the QoS of the storage system.

4 . The system of claim 1 , wherein the choking rate is controlled according to a priority of each of the plurality of requests.

5 . The system of claim 1 , wherein the fetching rate is controlled according to a priority of each of the plurality of requests.

6 . The system of claim 1 , wherein the choking rate is controlled according to a number of operations of each of the plurality of requests.

7 . The system of claim 1 , wherein the fetching rate is controlled according to a number of operations of each of the plurality of requests.

8 . The system of claim 1 , wherein the choking rate is controlled according to a level of requests previously queued in the request buffer.

9 . The system of claim 1 , wherein the fetching rate is controlled according to a level of requests previously queued in the request buffer.

10 . The system of claim 1 , wherein the system comprises:

a queueing circuit operable to:

receive a particular request, and

determine the priority of the particular request according to a mount point to which the particular request is directed.

11 . The system of claim 1 , wherein the system comprises:

a queueing circuit operable to:

receive a particular request;

queue the particular request in a first buffer if the particular request is directed to first mount point; and

queue the particular request in a second buffer if the particular request is directed to a second mount point.

12 . The system of claim 1 , wherein a particular request of the plurality of requests is directed to a file system mounted at a particular mount point according to a priority associated with the particular request.

13 . The system of claim 1 , wherein a particular request of the plurality of requests is directed to a file system mounted at a particular mount point according to a number of operations of the particular request.

14 . The system of claim 1 , wherein the interface circuitry is operable to fetch requests from the request buffers in accordance with a round-robin schedule.

15 . The system of claim 14 , wherein in each round of the round-robin schedule:

at least one request directed to a file system mounted at a first mount point is fetched.

16 . The system of claim 15 , wherein in each round of the round-robin schedule:

at least one request directed to a file system mounted at a second mount point is fetched.

17 . The system of claim 1 , wherein the system comprises:

a priority management circuit operable to determine a mount point at which a file system should be mounted on a node of the storage system, wherein the mount point is determined according to a characteristic of the node.

18 . The system of claim 17 , wherein the characteristic of the node is based on a client process that runs on the node.

19 . The system of claim 1 , wherein the interface circuitry is operable to:

fetch all requests of the plurality of requests when the QoS is below a threshold.

20 . The system of claim 1 , wherein the interface circuitry is operable to:

fetch a request of the plurality of requests according to priority when the QoS is above the threshold.

Continuity (5)
Continuation 17155763 · Jan 22, 2021
Continuation 15599773 · May 19, 2017
Continuation 15075129 · Mar 19, 2016
Provisional Application 62288106 · Jan 28, 2016
Related Publication 20240211131A1 · Jun 27, 2024
References Cited (37)
US 6335927B1 · Elliott · 2002 [cited by examiner]
US 6484145B1 · Home et al. · 2002 [cited by applicant]
US 6731625B1 · Eastep · 2004 [cited by examiner]
US 6938085B1 · Belkin · 2005 [cited by examiner]
US 6990667B2 · Ulrich · 2006 [cited by examiner]
US 7299311B1 · Sepeda · 2007 [cited by examiner]
US 7447839B2 · Uppala · 2008 [cited by applicant]
US 7877511B1 · Berger et al. · 2011 [cited by applicant]
US 8139485B2 · Arseneault · 2012 [cited by examiner]
US 8347010B1 · Radovanovic · 2013 [cited by applicant]
US 8472312B1 · Yang · 2013 [cited by examiner]
US 8918478B2 · Ozzie et al. · 2014 [cited by applicant]
US 20020124137A1 · Ulrich · 2002 [cited by examiner]
US 20020138559A1 · Ulrich · 2002 [cited by examiner]
US 20020191311A1 · Ulrich · 2002 [cited by examiner]
US 20030115218A1 · Bobbitt et al. · 2003 [cited by applicant]
US 20030115393A1 · Kim · 2003 [cited by examiner]
US 20040047334A1 · Francois · 2004 [cited by examiner]
US 20040062238A1 · Yoshizawa · 2004 [cited by examiner]
US 20040098415A1 · Bone et al. · 2004 [cited by applicant]
US 20050204045A1 · Belkin et al. · 2005 [cited by applicant]
US 20050289152A1 · Earl et al. · 2005 [cited by applicant]
US 20060133368A1 · Tolliver · 2006 [cited by examiner]
US 20070140260A1 · Duxbury · 2007 [cited by examiner]
US 20080069115A1 · Jensen · 2008 [cited by examiner]
US 20080069128A1 · Jensen · 2008 [cited by examiner]
US 20080069129A1 · Jensen · 2008 [cited by examiner]
US 20080069130A1 · Jensen · 2008 [cited by examiner]
US 20110119518A1 · Orfitelli · 2011 [cited by applicant]
US 20130103787A1 · Glover et al. · 2013 [cited by applicant]
US 20140244897A1 · Goss et al. · 2014 [cited by applicant]
US 20140281280A1 · Goss et al. · 2014 [cited by applicant]
US 20150210095A1 · Anzai · 2015 [cited by applicant]
US 20150248366A1 · Bergsten et al. · 2015 [cited by applicant]
US 20150254088A1 · Chou et al. · 2015 [cited by applicant]
US 20150355971A1 · Becker-Szendy et al. · 2015 [cited by applicant]
US 20170255642A1 · Ben Dayan · 2017 [cited by examiner]