Data processing method for network adapter and network adapter

US12014173B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12014173-B2
Application numberUS-202218062874-A
CountryUS
Kind codeB2
Filing dateDec 7, 2022
Priority dateJun 9, 2020
Publication dateJun 18, 2024
Grant dateJun 18, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A data processing method for a network adapter includes the network adapter that obtains a first input/output (I/O) command. The first I/O command instructs to write data stored in a local server to at least one remote server, and the first I/O command includes address information and length information that are of the data and that are stored in the local server. The network adapter splits the data based on the address information and the length information to obtain a plurality of groups of address information and length information. The network adapter obtains, from the local server based on the groups of address information and length information, data corresponding to the groups of address information and length information, and sends the data to the at least one remote server.

First claim

Opening claim text (preview).

What is claimed is: 1. A method implemented by a network adapter, wherein the method comprises: obtaining a first input/output (I/O) command instructing to write first data stored in a local server to at least one remote server, wherein the first I/O command comprises address information of the first data and length information of the first data; splitting, based on the address information and the length information, the first data to obtain a plurality of groups of address information and length information; obtaining, from the local server and based on the groups of address information and length information, second data corresponding to the groups of address information and length information; and sending the second data to the at least one remote server. 2. The method of claim 1 , further comprising further obtaining, from a first virtual machine (VM) that is in the local server and that delivers the first I/O command and based on an identifier corresponding to the first VM, the second data. 3. The method of claim 1 , further comprising not storing the second data in a memory on the network adapter. 4. The method of claim 1 , further comprising: receiving a plurality of second I/O commands; and selecting, from the second I/O commands and based on a storage address at which the second I/O commands are stored in the remote server, the first I/O command. 5. The method of claim 4 , further comprising further selecting, by a hardware engine in the network adapter, the first I/O command from the second I/O commands. 6. The method of claim 1 , further comprising: determining, based on context information of the first I/O command, whether a plurality of pieces of the second data are all written to the at least one remote server, wherein the context information comprises a storage status of the pieces of the second data in the at least one remote server; and sending, to the local server through an interface, an I/O write complete message when the pieces of the second data are all written to the at least one remote server. 7. The method of claim 1 , further comprising: receiving a plurality of second I/O commands; and selecting, from the second I/O commands and based on a storage address at which the second I/O commands are stored in a virtual machine (VM) that is in the local server and that delivers the second I/O commands, the first I/O command. 8. The computer program product of claim 7 , wherein the instructions that when executed by the processor further cause the network adapter to: receive a plurality of second I/O commands; and select, from the second I/O commands and based on a storage address at which the second I/O commands are stored in the at least one server or a virtual machine (VM) that is in the local server and that delivers the second I/O commands, the first I/O command. 9. A network adapter comprising: a memory configured to store instructions; and a processor coupled to the memory and configured to execute the instructions to cause the network adapter to: obtain a first input/output (I/O) command instructing to write first data stored in a local server to at least one server, wherein the first I/O command comprises address information of the first data and length information of the first data; split, based on the address information and the length information, the first data to obtain a plurality of groups of address information and length information; obtain, from the local server based on the groups of address information and length information, second data corresponding to the groups of address information and length information; and send the second data to the at least one server. 10. The network adapter of claim 9 , wherein a memory on the network adapter does not store the second data. 11. The network adapter of claim 9 , wherein the processor is further configured to execute the instructions to cause the network adapter to further obtain, from a first virtual machine (VM) that is in the local server and that delivers the first I/O command and based on the groups of address information and length information and an identifier corresponding to the first VM, the second data. 12. The network adapter of claim 9 , wherein the processor is further configured to execute the instructions to cause the network adapter to: receive a plurality of second I/O commands; and select, from the second I/O commands and based on a storage address at which the second I/O commands are stored in the at least one server or a virtual machine (VM) that is in the local server and that delivers the second I/O commands, the first I/O command. 13. The network adapter of claim 12 , further comprising a hardware engine coupled to the processor, wherein the processor is further configured to execute the instructions to cause the network adapter to select, using the hardware engine, the first I/O command. 14. The network adapter of claim 9 , wherein the processor is further configured to execute the instructions to cause the network adapter to: determine, based on context information of the first I/O command, whether a plurality of pieces of the second data are all written to the at least one server, wherein the context information comprises a storage status of the pieces of the second data in the at least one server; and send, to the local server through an interface, an I/O write complete message when the pieces of the second data are all written to the at least one server. 15. The network adapter of claim 9 , wherein the processor is further configured to execute the instructions to cause the network adapter to: receive a plurality of second I/O commands; and select, from the second I/O commands and based on a storage address at which the second I/O commands are stored in a virtual machine (VM) that is in the local server and that delivers the second I/O commands, the first I/O command. 16. A computer program product comprising instructions that are stored on a non-transitory computer readable medium and that when executed by a processor, causes a network adapter to: obtain a first input/output (I/O) command instructing to write first data stored in a local server to at least one server, wherein the first I/O command comprises address information of the first data and length information of the first data; split, based on the address information and the length information, the first data to obtain a plurality of groups of address information and length information; obtain, from the local server based on the groups of address information and length information, second data corresponding to the groups of address information and length information; and send the second data to the at least one server. 17. The computer program product of claim 16 , wherein a memory on the network adapter does not store the second data. 18. The computer program product of claim 16 , wherein the instructions that when executed by the processor further cause the network adapter to further obtain, from a first virtual machine (VM) that is in the local server and that delivers the first I/O command and based on the groups of address information and length information and an identifier corresponding to the first VM, the second data. 19. The computer program product of claim 18 , wherein the instructions that when executed by the processor further cause the network adapter to select, using a hardware engine coupled to the processor, the first I/O command. 20. The computer program product of claim 18 , wherein the instr

Assignees

Inventors

Classifications

  • Improving or facilitating administration, e.g. storage management · CPC title

  • with address mapping · CPC title

  • for dedicated transfers to a network (for protocol converters G06F13/387) · CPC title

  • In-line storage system · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12014173B2 cover?
A data processing method for a network adapter includes the network adapter that obtains a first input/output (I/O) command. The first I/O command instructs to write data stored in a local server to at least one remote server, and the first I/O command includes address information and length information that are of the data and that are stored in the local server. The network adapter splits the…
Who is the assignee on this patent?
Huawei Tech Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/06. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 18 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).