IP Library › Granted Patent US 12,603,937
Granted Patent B2
US 12,603,937 · App. 18/627,649 · Granted Apr 14, 2026

I/O request performance improvement using backend as a service

Inventors: Earl Medeiros (Fall River, MA); Ramesh Doddaiah (Westborough, MA); Rong Yu (West Roxbury, MA); Lixin Pang (Needham, MA); Jiahui Wang (Framingham, MA)
Assignee: Dell Products L.P.
H04L67/1097G06F3/061G06F3/0656G06F3/0689
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,603,937
App. No.
18/627,649
Granted
Apr 14, 2026
Kind
B2
Abstract

Methods and apparatuses are provided for utilizing additional and available system resources to cache one or more incoming I/O write requests. A storage processor may implement a policy including a Backend as a Service (BEaaS) to use a node pair backend, a fabric network, and other resources to absorb incoming bursts of I/O write requests from a host and direct the requests temporarily to NVMe storage devices. The policy may further use local and/or remote storage arrays connected over the fabric to alleviate strain on local processing resources. The policy may provide for using cut-through writes, including for example, dual-cast operations over PCIe connections, to send I/O requests directly to the NVMe storage devices.

Claims (38)

1 . A computer-implemented method performed by a storage processor comprising a local cache memory, a fabric network interface, and a selection manager executing a selection policy the method comprising:

receiving, at the storage processor an input/output (I/O) request from a host device;

determining, by the selection manager a memory utilization threshold for the local cache memory;

determining by the selection manager, a local memory utilization level of the local cache memory;

in response to determining that the local memory utilization level equals or exceeds the memory utilization threshold;

invoking a backend as a service policy implement ed by the storage processor to generate a remote direct memory access (RDMA) operation encapsulating the I/O request; and

transmitting, via the fabric network interface, the RDMA operation to a second memory, thereby temporarily storing the I/O request to reduce local cache memory overflow.

2 . The method of claim 1 wherein the RDMA operation is executed by a remote processor.

3 . The method of claim 1 wherein the second memory is a RAID-1 array.

4 . The method of claim 1 wherein the I/O request is stored a controller memory buffer (CMB) of the second memory.

5 . The method of claim 1 wherein the local memory utilization level includes a write pending level.

6 . The method of claim 1 further comprising determining the local memory utilization level has decreased below the memory utilization threshold and relocating the I/O request from the second memory to the local cache memory.

7 . The method of claim 1 wherein the memory utilization threshold is determined by a number of memory devices.

8 . The method of claim 1 wherein the fabric network interface includes an InfiniBand network interface.

9 . The method of claim 1 wherein the second memory is a non-volatile memory express (NVMe).

10 . A data storage system comprising:

a memory; and

at least one processor that is operatively coupled to the memory, the at least one processor being configured to perform the operations of:

receiving an input/output (I/O) request from a host device;

determining a memory utilization threshold for a local cache memory;

determining a local memory utilization level of the local cache memory;

in response to determining that the local memory utilization level equals or exceeds the memory utilization threshold;

invoking a backend as a service policy implemented by the storage processor to generate a remote direct memory access (RDMA) operation encapsulating the I/O request; and

transmitting, via a fabric network interface, the RDMA operation to a second memory, thereby temporarily storing the I/O request to reduce local cache memory overflow.

11 . The data storage system of claim 10 wherein the RDMA operation is executed by a remote processor.

12 . The data storage system of claim 10 wherein the second memory is a RAID-1 array.

13 . The data storage system of claim 10 wherein the I/O request is stored a controller memory buffer (CMB) of the second memory.

14 . The data storage system of claim 10 wherein the local memory utilization level includes a write pending level.

15 . The data storage system of claim 10 further comprising determining the local memory utilization level has decreased below the memory utilization threshold and relocating the I/O request from the second memory to local cache memory.

16 . The data storage system of claim 10 wherein the memory utilization threshold is determined by a number of memory devices.

17 . The data storage system of claim 10 wherein the fabric network interface includes an InfiniBand network interface.

18 . A non-transitory computer-readable medium storing one or more processor-executable instructions, which when executed by at least one processor cause the at least one processor to perform the operations of:

receiving an input/output (I/O) request from a host device;

determining a memory utilization threshold for a local cache memory;

determining a local memory utilization level of the local cache memory;

in response to determining that the local memory utilization level equals or exceeds the memory utilization threshold;

invoking a backend as a service policy implemented by the storage processor to generate a remote direct memory access (RDMA) operation encapsulating the I/O request; and

transmitting, via a fabric network interface, the RDMA operation to a second memory, thereby temporarily storing the I/O request to reduce local cache memory overflow.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 8, 2024
From: MEDEIROS, EARL; DODDAIAH, RAMESH; YU, RONG; PANG, LIXIN; WANG, JIAHUI
To: DELL PRODUCTS L.P.
Reel/Frame 067030/0777 →
Continuity (1)
Related Publication 20250317488A1 · Oct 9, 2025
References Cited (15)
US 7299266B2 · Boyd · 2007 [cited by examiner]
US 7577787B1 · Yochai · 2009 [cited by examiner]
US 7627693B2 · Pandya · 2009 [cited by examiner]
US 10031883B2 · Hack · 2018 [cited by examiner]
US 10397362B1 · Volpe · 2019 [cited by examiner]
US 10585628B2 · He · 2020 [cited by examiner]
US 10778767B2 · Chernin · 2020 [cited by examiner]
US 10862805B1 · Dods · 2020 [cited by examiner]
US 11200168B2 · Johns · 2021 [cited by examiner]
US 11445225B2 · Sotnikov · 2022 [cited by examiner]
US 20100231600A1 · Kaufman · 2010 [cited by examiner]
US 20120054446A1 · Wang · 2012 [cited by examiner]
US 20220261164A1 · Zhuravlev · 2022 [cited by examiner]
US 20230195659A1 · Agarwal · 2023 [cited by examiner]
US 20240036940A1 · Lee · 2024 [cited by examiner]