Remote storage access method and device, medium and equipment
By integrating the NVME-supported RDMA engine in the computing server in the data center, the storage access request is directly transmitted to the solid-state memory of the storage server, and the data transmission delay and CPU load problems between the storage nodes and the computing nodes in the data center are solved, and the data transmission delay and CPU load problems are realized. Low latency, lightweight remote storage access.
Patent Information
- Application Number
- CN202411289733.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-14
- Publication Date
- 2025-02-18
AI Technical Summary
In the data center, the storage node server is separated from the computing node server, resulting in the need to be transmitted to the computing node frequently and in large quantities, which increases the performance burden of the computing node and has problems such as storage access delay and increased CPU load.
By integrating the remote direct memory access RDMA engine that supports high-speed interface protocol NVME in the accelerator card of the computing server, the remote memory access request of the computing server is converted into RDMA access requests, and transmitted to the storage server through the network port, and the storage server's network card receives The access request to the memory can directly bypass the CPU to read and write solid-state memory.
This method reduces the load on the storage server CPU and reduces the memory access delay, realizing lightweight and low-latency remote storage access.
Smart Images

Figure CN119484648A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data access technology, and more specifically, to a remote storage access method, device, medium and equipment. Background Art
[0002] Low-latency, lightweight memory access is critical in the data center field. In general, the storage node server and the computing node server in a data center are separated and connected through a switch. During the business operation of the data center, the data located in the storage node needs to be frequently and massively transmitted to the computing node. Accelerating this data transmission to improve the performance of the computing node has become a technical problem that needs to be solved in this field. Summary of the invention
[0003] In view of the deficiencies in the prior art, the present invention provides a remote storage access method, device, medium and equipment.
[0004] According to one aspect of the present invention, a remote storage access method is provided, comprising:
[0005] The computing server sends a remote storage access request through the network port;
[0006] The remote memory access request reaches the network switch via the network link;
[0007] The network switch sends the remote storage access request to the designated storage server;
[0008] The storage server directly reads and writes solid-state storage based on remote memory access requests, bypassing the storage server's central processor.
[0009] Optionally, a remote direct memory access (RDMA) engine supporting a high-speed interface protocol NVME is integrated in an accelerator card of the computing server.
[0010] Optionally, the computing server sends a storage access request through a network port, including:
[0011] The computing server initiates a remote storage access request through the accelerator card;
[0012] The remote memory access request of the computing server is converted into a remote direct memory access request through the high-speed interface protocol NVME in the accelerator card;
[0013] Send a remote direct memory access request through the network port.
[0014] Optionally, the storage server bypasses the central processor of the storage server and directly reads and writes the solid-state storage according to the remote storage access request, including:
[0015] The network card of the storage server receives the remote direct memory access request;
[0016] The storage server directly reads and writes to the solid-state storage based on remote direct memory access requests.
[0017] According to another aspect of the present invention, there is provided a remote storage access device, comprising:
[0018] An issuing module is used for the computing server to issue a remote memory access request through a network port;
[0019] A reaching module, used for a remote memory access request to reach a network switch via a network link;
[0020] A delivery module, used for the network switch to deliver the remote storage access request to the designated storage server;
[0021] The read / write module is used for the storage server to bypass the central processor of the storage server and directly read / write the solid-state memory according to the remote memory access request.
[0022] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the storage medium stores a computer program, and the computer program is used to execute the method described in any one of the above aspects of the present invention.
[0023] According to another aspect of the present invention, an electronic device is provided, comprising: a processor; a memory for storing instructions executable by the processor; the processor is configured to read the executable instructions from the memory and execute the instructions to implement the method described in any one of the above aspects of the present invention.
[0024] Thus, in the present invention, the remote memory access request of the computing server is converted into a remote direct memory access RDMA access request by the high-speed interface protocol NVME engine, and then transmitted to the storage server through the network port. The network card of the storage server receives the memory access request and can directly read and write the SSD memory. This process does not require the participation of the CPU, thereby reducing the CPU load and reducing the memory access delay. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] A more complete understanding of exemplary embodiments of the present invention may be obtained by referring to the following drawings:
[0026] Figure 1 is a flowchart of a remote storage access method provided by an exemplary embodiment of the present invention;
[0027] Figure 2 is a schematic diagram of a traditional remote memory access path provided by an exemplary embodiment of the present invention;
[0028] Figure 3 is a schematic diagram of a remote storage access path of the present invention provided by an exemplary embodiment of the present invention;
[0029] Figure 4 is a schematic diagram of the structure of an accelerator card provided by an exemplary embodiment of the present invention;
[0030] Figure 5 is a schematic structural diagram of a remote storage access device provided by an exemplary embodiment of the present invention;
[0031] Figure 6 This is a structure of an electronic device provided by an exemplary embodiment of the present invention. DETAILED DESCRIPTION
[0032] Below, the exemplary embodiments according to the present invention will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments of the present invention, and it should be understood that the present invention is not limited to the exemplary embodiments described here.
[0033] It should be noted that the relative arrangement of components and steps, the numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present invention unless specifically stated otherwise.
[0034] Those skilled in the art can understand that the terms "first" and "second" in the embodiments of the present invention are only used to distinguish different steps, devices or modules, etc., and neither represent any specific technical meaning nor indicate the necessary logical order between them.
[0035] It should also be understood that, in the embodiments of the present invention, “plurality” may refer to two or more than two, and “at least one” may refer to one, two or more than two.
[0036] It should also be understood that any component, data or structure mentioned in the embodiments of the present invention can generally be understood as one or more, unless explicitly limited or otherwise indicated in the context.
[0037] In addition, the term "and / or" in the present invention is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in the present invention generally indicates that the associated objects before and after are in an "or" relationship.
[0038] It should also be understood that the description of the various embodiments of the present invention focuses on the differences between the various embodiments, and the same or similar aspects thereof can be referenced to each other, and for the sake of brevity, they will not be described one by one.
[0039] At the same time, it should be understood that for the convenience of description, the sizes of the various parts shown in the drawings are not drawn according to the actual proportional relationship.
[0040] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the invention, its application, or uses.
[0041] Technologies, methods, and equipment known to ordinary technicians in the relevant art may not be discussed in detail, but where appropriate, the technologies, methods, and equipment should be considered part of the specification.
[0042] It should be noted that like reference numerals and letters refer to similar items in the following figures, and therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.
[0043] Embodiments of the present invention can be applied to electronic devices such as terminal devices, computer systems, servers, etc., which can operate with many other general or special computing system environments or configurations. Examples of well-known terminal devices, computing systems, environments and / or configurations suitable for use with electronic devices such as terminal devices, computer systems, servers, etc. include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network personal computers, small computer systems, large computer systems, and distributed cloud computing technology environments including any of the above systems, etc.
[0044] Electronic devices such as terminal devices, computer systems, servers, etc. can be described in the general context of computer system executable instructions (such as program modules) executed by computer systems. Generally, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in a distributed cloud computing environment, where tasks are performed by remote processing devices linked through a communication network. In a distributed cloud computing environment, program modules can be located on local or remote computing system storage media including storage devices.
[0045] Exemplary Methods
[0046] Figure 1 FIG. 1 is a flow chart of a remote storage access method provided by an exemplary embodiment of the present invention. This embodiment can be applied to electronic devices, such as Figure 1 As shown, the remote storage access method 100 includes the following steps:
[0047] Step 101, the computing server sends a remote memory access request through a network port;
[0048] Step 102, the remote memory access request reaches the network switch via the network link;
[0049] Step 103, the network switch sends the remote storage access request to the designated storage server;
[0050] Step 104 , the storage server bypasses the central processor of the storage server and directly reads and writes the solid-state memory according to the remote memory access request.
[0051] Specifically, Figure 2 As shown, the traditional remote memory access path is:
[0052] ① The computing server issues a storage access request and sends it through the network port;
[0053] ②The memory access request reaches the network switch through the network link;
[0054] ③The network switch sends the storage access request to the designated storage server;
[0055] ④The memory access request is responded to and processed by the CPU of the storage server;
[0056] ⑤The storage server CPU reads and writes the SSD memory to transfer data.
[0057] It can be seen that in traditional remote storage methods, data located at storage nodes need to be frequently and massively transmitted to computing nodes, which results in technical problems such as storage access delays and increased CPU load on storage servers.
[0058] In view of this, the present invention proposes a low-latency, lightweight remote storage access method compatible with the ROCe communication mode, which can effectively reduce the CPU load of the storage server and reduce the memory access latency.
[0059] Specifically, refer to Figure 3 As shown, the low-latency, lightweight remote memory access path of the present invention is:
[0060] ① The computing server issues a storage access request and sends it through the network port;
[0061] ②The memory access request reaches the network switch through the network link;
[0062] ③The network switch sends the storage access request to the designated storage server;
[0063] ④Memory access requests bypass the CPU and directly read and write SSD memory;
[0064] By comparing the above two processes of the conventional method and the present invention, it can be found that the method proposed by the present invention can bypass the CPU of the storage server and directly access the SSD memory. Figure 4 As shown, the reason why this can be achieved is that the present invention adds an NVME engine on the basis of traditional RDMA. The remote memory access request of the computing server is converted into an RDMA access request by the NVME engine, and then transmitted to the storage server through the network port. The network card of the storage server receives the memory access request and can directly read and write the SSD memory. This process does not require the participation of the CPU, thereby reducing the CPU load and reducing the memory access delay.
[0065] Therefore, the RDMA engine supporting NVME access proposed in the present invention can achieve lightweight and low-latency access to remote storage. The RDMA engine supporting NVME is integrated into the AI computing accelerator card. When the AI accelerator card initiates remote storage access, it can directly reach the storage server through RDMA via Ethernet and network switches. The CPU of the storage server does not need to intervene in the request and directly reads and writes the SSD storage to achieve low-latency data transmission.
[0066] Exemplary Devices
[0067] Figure 5 FIG. 1 is a schematic diagram of the structure of a remote storage access device provided by an exemplary embodiment of the present invention. Figure 5 As shown, the device 500 includes:
[0068] An issuing module 510 is used for the computing server to issue a remote memory access request through a network port;
[0069] Reaching module 520, for remote memory access request to reach the network switch via the network link;
[0070] A delivery module 530, used for the network switch to deliver the remote storage access request to the designated storage server;
[0071] The read / write module 540 is used for the storage server to bypass the central processor of the storage server and directly read / write the solid-state memory according to the remote memory access request.
[0072] Optionally, a remote direct memory access (RDMA) engine supporting a high-speed interface protocol NVME is integrated in an accelerator card of the computing server.
[0073] Optionally, the issuing module 510 includes:
[0074] An initiating submodule, used for the computing server to initiate a remote storage access request through the accelerator card;
[0075] A conversion submodule, used to convert a remote memory access request of a computing server into a remote direct memory access request through a high-speed interface protocol NVME in an accelerator card;
[0076] The sending submodule is used to send a remote direct memory access request through the network port.
[0077] Optionally, the read-write module 540 includes:
[0078] A receiving submodule, used for the network card of the storage server to receive a remote direct memory access request;
[0079] The read / write submodule is used for the storage server to directly read and write the solid-state memory according to the remote direct memory access request.
[0080] Exemplary Electronic Devices
[0081] Figure 6 This is a structure of an electronic device provided by an exemplary embodiment of the present invention. Figure 6 As shown, the electronic device 60 includes one or more processors 61 and a memory 62 .
[0082] The processor 61 may be a central processing unit (CPU) or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
[0083] The memory 62 may include one or more computer program products, and the computer program product may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory (cache), etc. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 61 may run the program instructions to implement the methods of the software programs of the various embodiments of the present invention described above and / or other desired functions. In one example, the electronic device may also include: an input device 63 and an output device 64, which are interconnected via a bus system and / or other forms of connection mechanisms (not shown).
[0084] In addition, the input device 63 may also include, for example, a keyboard, a mouse, etc.
[0085] The output device 64 can output various information to the outside, and can include, for example, a display, a speaker, a printer, a communication network and a remote output device connected thereto.
[0086] Of course, to simplify, Figure 6 Only some of the components related to the present invention in the electronic device are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, according to specific application conditions, the electronic device may also include any other appropriate components.
[0087] Exemplary computer program products and computer-readable storage media
[0088] In addition to the above-mentioned methods and devices, an embodiment of the present invention may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the method according to various embodiments of the present invention described in the above-mentioned "Exemplary Method" section of this specification.
[0089] The computer program product may be written in any combination of one or more programming languages to write program code for performing the operations of the embodiments of the present invention, including object-oriented programming languages such as Java, C++, etc., and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0090] In addition, an embodiment of the present invention may also be a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, enable the processor to execute the steps of the method according to various embodiments of the present invention described in the above “Exemplary Method” section of this specification.
[0091] The computer readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can include, for example, but is not limited to, a system, system or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0092] The basic principle of the present invention is described above in conjunction with specific embodiments. However, it should be pointed out that the advantages, strengths, effects, etc. mentioned in the present invention are only examples and not limitations, and it cannot be considered that these advantages, strengths, effects, etc. must be possessed by each embodiment of the present invention. In addition, the specific details disclosed above are only for the purpose of illustration and facilitation of understanding, rather than limitation, and the above details do not limit the present invention to being implemented by adopting the above specific details.
[0093] Each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the system embodiment, since it basically corresponds to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0094] The block diagrams of the devices, systems, equipment, and systems involved in the present invention are only illustrative examples and are not intended to require or imply that they must be connected, arranged, and configured in the manner shown in the block diagram. As will be appreciated by those skilled in the art, these devices, systems, equipment, and systems can be connected, arranged, and configured in any manner. Words such as "including", "comprising", "having", etc. are open words, referring to "including but not limited to", and can be used interchangeably with them. The words "or" and "and" used here refer to the words "and / or" and can be used interchangeably with them, unless the context clearly indicates otherwise. The word "such as" used here refers to the phrase "such as but not limited to", and can be used interchangeably with it.
[0095] The method and system of the present invention may be implemented in many ways. For example, the method and system of the present invention may be implemented by software, hardware, firmware or any combination of software, hardware, firmware. The above order of steps for the method is only for illustration, and the steps of the method of the present invention are not limited to the order specifically described above, unless otherwise specifically stated. In addition, in some embodiments, the present invention may also be implemented as a program recorded in a recording medium, which includes machine-readable instructions for implementing the method according to the present invention. Thus, the present invention also covers a recording medium storing a program for executing the method according to the present invention.
[0096] It should also be noted that in the system, device and method of the present invention, each component or each step can be decomposed and / or recombined. These decompositions and / or recombinations should be regarded as equivalent schemes of the present invention. The above description of the disclosed aspects is provided to enable any technician in the field to make or use the present invention. Various modifications to these aspects are very obvious to those skilled in the art, and the general principles defined here can be applied to other aspects without departing from the scope of the present invention. Therefore, the present invention is not intended to be limited to the aspects shown here, but in accordance with the widest range consistent with the principles and novel features disclosed here.
[0097] The above description has been given for the purpose of illustration and description. In addition, this description is not intended to limit the embodiments of the present invention to the forms disclosed herein. Although a number of example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, changes, additions and sub-combinations thereof.
Claims
1. A remote storage access method, characterized in that: include: The computing server sends a remote storage access request through the network port; The remote memory access request reaches the network switch via the network link; The network switch sends the remote storage access request to a designated storage server; The storage server directly reads and writes the solid-state memory according to the remote memory access request, bypassing the central processor of the storage server.
2. The method according to claim 1, characterized in that: The accelerator card of the computing server is integrated with a remote direct memory access (RDMA) engine that supports the high-speed interface protocol NVME.
3. The method according to claim 2, characterized in that The computing server sends a storage access request through the network port, including: The computing server initiates a remote storage access request through the acceleration card; Converting the remote memory access request of the computing server into a remote direct memory access request through the high-speed interface protocol NVME in the acceleration card; The remote direct memory access request is sent through the network port.
4. The method according to claim 3, characterized in that The storage server bypasses the central processor of the storage server and directly reads and writes the solid-state memory according to the remote memory access request, including: The network card of the storage server receives the remote direct memory access request; The storage server directly reads and writes the solid-state storage according to the remote direct memory access request.
5. A remote storage access device, characterized in that: include: An issuing module is used for the computing server to issue a remote memory access request through a network port; A reaching module, used for the remote memory access request to reach the network switch via the network link; A delivery module, used for the network switch to deliver the remote storage access request to a designated storage server; The read / write module is used for the storage server to bypass the central processor of the storage server and directly read / write the solid-state memory according to the remote memory access request.
6. The device according to claim 5, characterized in that The accelerator card of the computing server is integrated with a remote direct memory access (RDMA) engine that supports the high-speed interface protocol NVME.
7. The device according to claim 6, characterized in that Emit modules, including: An initiating submodule, used for the computing server to initiate a remote storage access request through the acceleration card; A conversion submodule, used to convert the remote memory access request of the computing server into a remote direct memory access request through the high-speed interface protocol NVME in the acceleration card; The sending submodule is used to send the remote direct memory access request through the network port.
8. The device according to claim 7, characterized in that Read and write modules, including: A receiving submodule, configured for the network card of the storage server to receive the remote direct memory access request; The read / write submodule is used for the storage server to directly read and write the solid-state memory according to the remote direct memory access request.
9. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and the computer program is used to execute the method according to any one of claims 1 to 4.
10. An electronic device, characterized in that: The electronic device comprises: processor; a memory for storing instructions executable by the processor; The processor is used to read the executable instructions from the memory and execute the instructions to implement the method described in any one of claims 1 to 4.