IP Library › Granted Patent US 12,260,112
Granted Patent B2
US 12,260,112 · App. 17/730,798 · Granted Mar 25, 2025

Method and apparatus for accessing solid state disk

Inventors: Tao Cheng (Shenzhen, CN); Yi He (Chengdu, CN); Li Li (Shenzhen, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06F3/0655G06F3/0611G06F3/0679
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,260,112
App. No.
17/730,798
Granted
Mar 25, 2025
Kind
B2
Abstract

This disclosure provides a method and an apparatus for accessing a solid state disk (SSD). The method is applied to a storage node, the storage node includes a network interface card and an SSD, and the network interface card includes a memory. The network interface card receives a data write request sent by a client, where the data write request includes to-be-written data. The network interface card writes the to-be-written data to the memory of the network interface card, and the SSD obtains the to-be-written data from the memory of the network interface card and writes the to-be-written data to the SSD.

Claims (25)

1. A method for accessing a solid state disk (SSD) in a storage node, the storage node comprises a network interface card and the SSD, the network interface card comprises a memory, the SSD comprises an I/O queue, and the method comprises:

receiving, by the network interface card, a data write request sent by a client, wherein the data write request comprises to-be-written data and an SSD write command;

writing, by the network interface card, the to-be-written data to the memory of the network interface card;

writing, by the network interface card, the SSD write command into the I/O queue comprised in the SSD; and

obtaining, by the SSD, the to-be-written data directly from the memory of the network interface card, and storing the to-be-written data on the SSD.

2. The method according to claim 1 , wherein the memory of the network interface card has an I/O queue, the I/O queue comprised in the SSD comprises an NVMe I/O queue, and the writing of the SSD write command into the I/O queue of the SSD by the network interface card comprises:

writing, by the network interface card, the SSD write command to the NVMe I/O queue based on queue information of the NVMe I/O queue, and notifying the SSD of the SSD write command to be processed in the NVMe I/O queue.

3. The method according to claim 2 , wherein after the writing the to-be-written data to the SSD, the method further comprises:

writing, by the SSD, a write response message to the I/O queue of the network interface card based on queue information of the I/O queue, and notifying the network interface card of the write response message in the I/O queue, wherein the write response message indicates whether the SSD write command is successfully completed; and

sending, by the network interface card, the write response message to the client.

4. The method according to claim 2 , wherein the method further comprises:

receiving, by the network interface card, the queue information of the NVMe I/O queue, wherein the queue information of the NVMe I/O queue comprises a head address and a depth of the NVMe I/O queue; and

receiving, by the SSD, queue information of the I/O queue, wherein the queue information of the I/O queue comprises a head address and a depth of the I/O queue.

5. A storage node, wherein the storage node comprises a network interface card and a solid state disk (SSD), and the network interface card comprises a memory, the SSD comprises an I/O queue, wherein

the network interface card is configured to receive a data write request sent by a client, wherein the data write request comprises to-be-written data and an SSD write command;

the network interface card is further configured to write the to-be-written data to the memory of the network interface card and write the SSD write command into the I/O queue comprised in the SSD; and

the SSD is configured to obtain the to-be-written data directly from the memory of the network interface card, and store the to-be-written data to the SSD.

6. The storage node according to claim 5 , wherein the memory of the network interface card has an I/O queue, the I/O queue comprised in the SSD comprises an NVMe I/O queue; and

the network interface card is further configured to write the SSD write command to the NVMe I/O queue based on queue information of the NVMe I/O queue, and notify the SSD of the SSD write command to be processed in the NVMe I/O queue.

7. The storage node according to claim 6 , wherein

the SSD is further configured to: after the to-be-written data is written to the SSD, write a write response message to the I/O queue of the network interface card based on queue information of the I/O queue, and notify the network interface card of the write response message in the I/O queue, wherein the write response message indicates whether the SSD write command is successfully completed; and

the network interface card is further configured to send the write response message to the client.

8. The storage node according to claim 6 , wherein

the network interface card is further configured to receive the queue information of the NVMe I/O queue, wherein the queue information of the NVMe I/O queue comprises a head address and a depth of the NVMe I/O queue; and

the SSD is further configured to receive queue information of the I/O queue, wherein the queue information of the I/O queue comprises a head address and a depth of the I/O queue.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2024
From: CHENG, TAO; HE, YI; LI, LI
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 068296/0189 →
Priority Claims (1)
CN 201911031211.0 · Oct 28, 2019 · national
Continuity (2)
Continuation PCTCN2020119841 · Oct 7, 2020
Related Publication 20220253238A1 · Aug 11, 2022
References Cited (27)
US 6246682B1 · Roy · 2001 [cited by examiner]
US 6831916B1 · Parthasarathy · 2004 [cited by examiner]
US 7353301B2 · Radhakrishnan · 2008 [cited by examiner]
US 10761752B1 · Narayanan · 2020 [cited by examiner]
US 20110213854A1 · Haviv · 2011 [cited by applicant]
US 20110231613A1 · Ober · 2011 [cited by examiner]
US 20120079175A1 · Flynn · 2012 [cited by examiner]
US 20160124880A1 · Goren · 2016 [cited by examiner]
US 20160147676A1 · Cha et al. · 2016 [cited by applicant]
US 20170149920A1 · Sammatshetti · 2017 [cited by applicant]
US 20180253331A1 · Sato et al. · 2018 [cited by applicant]
US 20180307596A1 · Pandurangan · 2018 [cited by examiner]
US 20190272123A1 · Gissin et al. · 2019 [cited by applicant]
US 20190278701A1 · Enz · 2019 [cited by examiner]
US 20190310964A1 · Zhang · 2019 [cited by examiner]
US 20200210355A1 · Danilov · 2020 [cited by examiner]
US 20210072907A1 · Li · 2021 [cited by examiner]
US 20210200681A1 · Gong · 2021 [cited by examiner]
US 20220244861A1 · Li · 2022 [cited by examiner]
CN 106210041A · 2016 [cited by applicant]
CN 107003943A · 2017 [cited by applicant]
CN 107145459A · 2017 [cited by applicant]
CN 108365930A · 2018 [cited by applicant]
CN 108369530A · 2018 [cited by applicant]
CN 109117386A · 2019 [cited by applicant]
CN 109936513A · 2019 [cited by applicant]
IN 107077426A · 2017 [cited by applicant]