Remote direct memory access processing method and device, electronic equipment and storage medium

By converting RDMA protocol and video network protocol in network devices between the client and the server, the problem of complexity and high cost of RDMA technology deployment is solved, and efficient communication and data security in video network environment is achieved. .

CN119484659APending Publication Date: 2025-02-18VISIONVERA INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411544738.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

The existing RDMA technology has complexity and high cost in deployment and application, mainly due to the need to adapt and upgrade switches, routers and other devices in the network link to support the RDMA protocol.

Method used

By accessing the first network device and the second network device between the client and the server, these network devices are used to perform protocol conversion between the RDMA protocol and the video network protocol, thereby applying RDMA technology in the video network environment to reduce the RDMA to the RDMA environment. Switch and router dependency.

Benefits of technology

It realizes efficient communication in a video network environment, reduces deployment complexity and cost, and ensures data security, improves network transmission efficiency and reduces the load of server CPU.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119484659A_ABST
    Figure CN119484659A_ABST
Patent Text Reader

Abstract

The invention provides a remote direct memory access processing method and device, electronic equipment and a storage medium. The method comprises the following steps: after first network equipment receives first information sent by a client, identifying whether the first information is an RDMA protocol, if so, converting the first information into second information of an articulated naturality web protocol, and sending the second information to second network equipment; after receiving the second information, the second network equipment identifies whether the second information is an articulated naturality web protocol, if yes, the second information is converted into third information of an RDMA protocol, and the third information is sent to the server; and after receiving fifth information sent by the second network equipment, the first network equipment identifies whether the fifth information is an articulated naturality web protocol, and if yes, converts the fifth information into sixth information of an RDMA protocol, and sends the sixth information to the client. According to the invention, the RDMA technology can be applied to the articulated naturality web, and the deployment complexity is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network technology, and in particular to a remote direct memory access processing method, device, electronic equipment and storage medium. Background Art

[0002] In traditional Ethernet data processing solutions, when using system calls such as the send function (the send function is used to send data to a remote host connected to a socket) or the sendto function (the sendto function allows you to send data to a specific address even if no connection is established), the CPU (Central Processing Unit) needs to frequently switch between user mode and kernel mode, which consumes a lot of time and resources. When sending data, the CPU needs to copy the data from user space to kernel space for transmission through the network stack. When receiving data, it needs to copy the data in the reverse direction. This copying process increases the delay of data transmission and may cause performance bottlenecks. During the data processing process, the CPU needs to participate in the encapsulation and parsing of data packets throughout the process. When the amount of data is large, this will bring a heavy burden to the CPU and may cause system performance to decline.

[0003] RDMA (Remote Direct Memory Access) is a new memory access technology that allows servers to directly read and write memory data of other servers at high speed without the need for processing by the operating system / CPU. In RDMA technology, first, there is no system call during the data transmission process; then, zero copy is achieved within the system memory, eliminating the process of copying data between user space and kernel space; finally, the encapsulation and parsing of data packets are done by the RDMA network card hardware, reducing the CPU load.

[0004] However, the current RDMA technology uses RDMA network cards. Therefore, in order to support RDMA technology, network devices such as switches and routers in the network link also need to be adapted and upgraded to support the RDMA protocol. Therefore, the deployment complexity and cost are relatively high. Summary of the invention

[0005] In view of the above problems, embodiments of the present invention are proposed to provide a remote direct memory access processing method, device, electronic device and storage medium that overcome the above problems or at least partially solve the above problems.

[0006] In a first aspect, an embodiment of the present invention discloses a remote direct memory access processing method, the method comprising:

[0007] After receiving the first information sent by the client, the first network device identifies whether the first information is a remote direct memory access RDMA protocol, and if so, converts the first information into second information of a visual networking protocol, and sends the second information to the second network device; so that after receiving the second information, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to the server, and after receiving the fourth information sent by the server, identifies whether the fourth information is an RDMA protocol, and if so, converts the fourth information into fifth information of the visual networking protocol, and sends the fifth information to the first network device;

[0008] After receiving the fifth information, the first network device identifies whether the fifth information is a visual networking protocol. If so, the fifth information is converted into sixth information of the RDMA protocol and sent to the client.

[0009] Optionally, when the first information is connection request information and the fourth information is connection response information, the RDMA connection between the client and the server is established; when the first information is write request information, the first memory data of the client is written into the second memory of the server; when the first information is read request information and the fourth information is the second memory data of the server, the client reads the second memory data; when the first information is disconnect request information and the fourth information is disconnect response information, the RDMA connection between the client and the server is disconnected, and the disconnect request information is sent after writing or reading is completed.

[0010] Optionally, the method also includes: after receiving the first information, the first network device obtains the first source MAC address carried by the first information and the first port number corresponding to the first information, and saves the first source MAC address and the first port number corresponding to the first mapping relationship between the MAC address and the port number; sending the sixth information to the client includes: obtaining the sixth destination MAC address carried by the sixth information, querying the port number corresponding to the sixth destination MAC address from the first mapping relationship, and sending the sixth information to the client based on the port number corresponding to the sixth destination MAC address.

[0011] Optionally, the identifying whether the first information is an RDMA protocol includes: parsing information of a first setting field from a packet header of the first information, the first setting field being a field capable of identifying the RDMA protocol; and identifying whether the first information is an RDMA protocol based on the information of the first setting field.

[0012] Optionally, converting the first information into second information of the visual networking protocol includes: adding a first visual networking protocol header to the first information to obtain the second information of the visual networking protocol; converting the fifth information into sixth information of the RDMA protocol includes: deleting the second visual networking protocol header in the fifth information to obtain the sixth information of the RDMA protocol.

[0013] In a second aspect, an embodiment of the present invention discloses a remote direct memory access processing method, the method comprising:

[0014] After receiving the second information sent by the first network device, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to the server; the second information is received by the first network device after the first information sent by the client is identified whether the first information is an RDMA protocol, and if so, converts the first information into second information of the visual networking protocol and then sends it;

[0015] After receiving the fourth information sent by the server, the second network device identifies whether the fourth information is the RDMA protocol. If so, the fourth information is converted into the fifth information of the visual networking protocol and the fifth information is sent to the first network device; so that after receiving the fifth information, the first network device can identify whether the fifth information is the visual networking protocol. If so, the fifth information is converted into the sixth information of the RDMA protocol and the sixth information is sent to the client.

[0016] In a third aspect, an embodiment of the present invention discloses a remote direct memory access processing device, which is applied to a first network device, and includes:

[0017] A first processing module is used to, after receiving first information sent by a client, identify whether the first information is a remote direct memory access (RDMA) protocol, and if so, convert the first information into second information of a visual networking protocol, and send the second information to a second network device; so that after receiving the second information, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to a server, and after receiving fourth information sent by the server, identifies whether the fourth information is an RDMA protocol, and if so, converts the fourth information into fifth information of the visual networking protocol, and sends the fifth information to the first network device;

[0018] The second processing module is used to identify whether the fifth information is a visual networking protocol after receiving the fifth information. If so, convert the fifth information into sixth information of the RDMA protocol and send the sixth information to the client.

[0019] Optionally, when the first information is connection request information and the fourth information is connection response information, the RDMA connection between the client and the server is established; when the first information is write request information, the first memory data of the client is written into the second memory of the server; when the first information is read request information and the fourth information is the second memory data of the server, the client reads the second memory data; when the first information is disconnect request information and the fourth information is disconnect response information, the RDMA connection between the client and the server is disconnected, and the disconnect request information is sent after writing or reading is completed.

[0020] Optionally, the first processing module is also used to obtain the first source MAC address carried by the first information and the first port number corresponding to the first information after receiving the first information, and save the first source MAC address and the first port number corresponding to the first mapping relationship between the MAC address and the port number; the first processing module includes: a query unit, used to obtain the sixth destination MAC address carried by the sixth information, query the port number corresponding to the sixth destination MAC address from the first mapping relationship, and send the sixth information to the client based on the port number corresponding to the sixth destination MAC address.

[0021] Optionally, the first processing module includes: an identification unit, used to parse the first information header to obtain information of a first setting field, where the first setting field is a field that can identify the RDMA protocol; and identify whether the first information is the RDMA protocol based on the information of the first setting field.

[0022] Optionally, the first processing module includes: a first conversion unit, used to add a first visual networking protocol header to the first information to obtain second information of the visual networking protocol; the second processing module includes: a second conversion unit, used to delete the second visual networking protocol header in the fifth information to obtain sixth information of the RDMA protocol.

[0023] In a fourth aspect, an embodiment of the present invention discloses a remote direct memory access processing device, which is applied to a second network device, and includes:

[0024] The third processing module is used to identify whether the second information is a visual networking protocol after receiving the second information sent by the first network device, and if so, convert the second information into third information of the RDMA protocol and send the third information to the server; the second information is the first information sent by the client after the first network device receives the first information, identifies whether the first information is an RDMA protocol, and if so, converts the first information into second information of the visual networking protocol and then sends it;

[0025] The fourth processing module is used to identify whether the fourth information is an RDMA protocol after receiving the fourth information sent by the server, and if so, convert the fourth information into fifth information of the visual networking protocol, and send the fifth information to the first network device; so that the first network device can identify whether the fifth information is a visual networking protocol after receiving the fifth information, and if so, convert the fifth information into sixth information of the RDMA protocol, and send the sixth information to the client.

[0026] In a fifth aspect, an embodiment of the present invention discloses an electronic device, comprising a processor and a computer-readable storage medium, wherein a computer program is stored on the computer-readable storage medium; when the computer program is executed by the processor, the processor executes the remote direct memory access processing method as described in any one of the above items.

[0027] In a sixth aspect, an embodiment of the present invention discloses a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the processor executes the remote direct memory access processing method as described in any one of the above items.

[0028] In an embodiment of the present invention, after receiving the first information sent by the client, the first network device identifies whether the first information is an RDMA protocol, and if so, converts the first information into second information of a visual networking protocol, and sends the second information to the second network device; after receiving the second information, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to the server, and after receiving the fourth information sent by the server, identifies whether the fourth information is an RDMA protocol, and if so, converts the fourth information into fifth information of the visual networking protocol, and sends the fifth information to the first network device; after receiving the fifth information, the first network device identifies whether the fifth information is a visual networking protocol, and if so, converts the fifth information into sixth information of the RDMA protocol, and sends the sixth information to the client.

[0029] It can be seen that in the embodiment of the present invention, by connecting the first network device and the second network device between the client and the server, and using the first network device and the second network device to perform protocol conversion between the RDMA protocol and the visual networking protocol, it is possible to apply the RDMA technology to the visual networking and communicate in the visual networking environment, thereby ensuring the security of the data; and the first network device and the second network device replace network devices such as RDMA switches and RDMA routers, thereby solving the dependence on network devices such as RDMA switches and RDMA routers, reducing the complexity of deployment, and reducing communication costs.

[0030] The above description is only an overview of the technical solution of the present invention. In order to more clearly understand the technical means of the present invention, it can be implemented according to the contents of the specification. In order to make the above and other purposes, features and advantages of the present invention more obvious and easy to understand, the specific implementation methods of the present invention are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] In order to more clearly illustrate the technical solution of the embodiment of the present invention, the drawings required for use in the description of the embodiment of the present invention will be briefly introduced below. Obviously, the drawings described below are only some drawings of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0032] Figure 1 is a system architecture diagram of an embodiment of the present invention;

[0033] Figure 2 is a functional architecture diagram of an embodiment of the present invention;

[0034] Figure 3 is a flow chart of a remote direct memory access processing method according to an embodiment of the present invention;

[0035] Figure 4 is a flow chart of another remote direct memory access processing method according to an embodiment of the present invention;

[0036] Figure 5 is a structural block diagram of a remote direct memory access processing device according to an embodiment of the present invention;

[0037] Figure 6 is a structural block diagram of another remote direct memory access processing device according to an embodiment of the present invention;

[0038] Figure 7 is a structural block diagram of an electronic device according to an embodiment of the present invention;

[0039] Figure 8 It is a structural block diagram of a computer-readable storage medium according to an embodiment of the present invention. DETAILED DESCRIPTION

[0040] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0041] Reference Figure 1 , showing a system architecture diagram of an embodiment of the present invention.

[0042] like Figure 1 As shown, in the embodiment of the present invention, the client in the core computer room is connected to the first network device for communication, the client is configured with a first RDMA network card, and the first network device (i.e. Figure 1 vHub1 in the video network is connected to the second network device (i.e. Figure 1 The vHub2) in the core computer room is connected to the second network device, and the second RDMA network card is configured on the server.

[0043] The server is usually responsible for listening to a specific IP (Internet Protocol) address and port, waiting for the client's connection request. Once the client initiates a connection, the server establishes an RDMA session by accepting the connection. In an RDMA session, the server can receive data sent by the client, or send data to the client. The server usually needs to initialize RDMA devices and resources, create and configure queue pairs (QP) to handle data transmission. The server is also responsible for listening to and responding to the client's RDMA operations, such as RDMA read operations, write operations, etc.

[0044] The client is responsible for initiating a request to connect to the server and establishing an RDMA session. The client can send data to the server or request the server to send data. The client also needs to initialize RDMA devices and resources, and create and configure queue pairs (QPs) to handle data transmission. The client directly accesses the server's memory through RDMA operations, such as RDMA read operations and write operations, to achieve efficient data exchange.

[0045] In RDMA communication, the roles of client and server are relative. A system can act as a client in one communication and as a server in another communication.

[0046] RDMA network card is a network interface card that supports remote direct memory access technology. It allows data to be transferred directly from the memory of one host to the memory of another host without the intervention of the operating system kernel, thereby reducing the latency of data transmission and the load on the CPU. RDMA network card supports operations such as data writing and data reading, which can specify remote addresses for operation, bypassing the receiver's CPU. RDMA network card is the hardware basis for communication between client and server, and it provides the necessary hardware support to implement RDMA operations. Both the client and the server rely on RDMA network card to perform efficient data transmission, and they exchange data through the hardware resources on the RDMA network card. In general, RDMA network card is the key hardware component for implementing RDMA technology, while client and server are concepts at the software level, and they perform efficient data transmission and communication through RDMA network card.

[0047] The network device may be a device that supports the visual networking protocol and has the function of converting between the RDMA protocol and the visual networking protocol, for example, it may be a device such as a vHub (visual networking hub) in the visual networking.

[0048] Reference Figure 2 , showing a functional architecture diagram of an embodiment of the present invention.

[0049] like Figure 2 As shown, in an embodiment of the present invention, the remote direct memory access processing method involves visual network management and RDMA management. Visual network management may include network entry and exit management, protocol management, heartbeat management, and network port management. RDMA management may include protocol identification, MAC (Media Access Control) address learning, RDMA connection management, RDMA event management, and RDMA work domain management.

[0050] Network access and network exit management is responsible for managing the access of devices to or exit from the visual network.

[0051] Protocol management is responsible for the management of video networking protocols, etc.

[0052] Heartbeat management is responsible for managing the heartbeat connection between devices in the visual network.

[0053] Network port management is responsible for the management of network ports of devices in the video network.

[0054] Protocol identification is responsible for the identification, conversion and other management of RDMA protocols and visual networking protocols.

[0055] MAC address learning is responsible for learning MAC addresses and creating a mapping relationship between MAC addresses and port numbers.

[0056] RDMA connection management is responsible for establishing and releasing RDMA connections.

[0057] RDMA event management is responsible for managing events involved in the RDMA data transmission process.

[0058] RDMA work domain management is responsible for the management of RDMA client and server work domains.

[0059] Next, in combination with the above system architecture and functional architecture, the remote direct memory access processing method in the embodiment of the present invention is described in detail.

[0060] Reference Figure 3 , shows a flowchart of a remote direct memory access processing method according to an embodiment of the present invention. Figure 3 The remote direct memory access processing method shown can be applied to a first network device.

[0061] like Figure 3 As shown, the remote direct memory access processing method may include the following steps:

[0062] Step 301: after receiving the first information sent by the client, the first network device identifies whether the first information is the RDMA protocol. If so, convert the first information into second information of the visual networking protocol and send the second information to the second network device; so that after receiving the second information, the second network device identifies whether the second information is the visual networking protocol. If so, convert the second information into third information of the RDMA protocol and send the third information to the server. After receiving the fourth information sent by the server, identify whether the fourth information is the RDMA protocol. If so, convert the fourth information into fifth information of the visual networking protocol and send the fifth information to the first network device.

[0063] In the embodiment of the present invention, it is necessary to pre-establish a visual network communication connection between the first network device and the second network device.

[0064] Exemplarily, the process of establishing a visual networking communication connection between the first network device and the second network device may include:

[0065] Start the first network device, configure the visual network MAC address for the first network device, the first network device applies for access to the visual network based on the visual network MAC address configured for the first network device, and obtains the visual network number of the first network device (involving the above-mentioned network entry and exit management).

[0066] Start the second network device, configure the visual network MAC address for the second network device, and the second network device applies to access the visual network based on the visual network MAC address configured for the second network device, and obtains the visual network number of the second network device (involving the above-mentioned network entry and exit management).

[0067] The visual network number of the second network device is configured on the first network device, and the visual network number of the first network device is configured on the second network device. The first network device (or the second network device) sends a connection request packet to the second network device (or the first network device), and the second network device (or the first network device) receives the connection request packet, allocates channel information, and returns connection confirmation information to the first network device (or the second network device), and carries the above-mentioned channel information to establish a visual network communication connection between the first network device and the second network device.

[0068] The client can send the first information to the first network device. If the first information is the RDMA protocol, the client needs to send the first information to the first network device through the first RDMA network card. After receiving the first information sent by the client, the first network device identifies whether the first information is the RDMA protocol. If the first information is the RDMA protocol, the first network device converts the first information into second information of the visual networking protocol, and sends the second information to the second network device through the visual networking. If the first information is not the RDMA protocol, the first network device processes the first information accordingly according to the protocol of the first information. For example, when the first information is the IP protocol, the first network device can perform conversion operations between the IP protocol and the visual networking protocol, etc. This embodiment does not limit this.

[0069] Exemplarily, the process of the first network device identifying whether the first information is an RDMA protocol may include: parsing information of a first setting field from a packet header of the first information, where the first setting field is a field that can identify the RDMA protocol; and identifying whether the first information is an RDMA protocol based on the information of the first setting field.

[0070] Specifically, if the information in the first setting field identifies that the protocol corresponding to the first information is the RDMA protocol, then the first information is determined to be the RDMA protocol; if the information in the first setting field identifies that the protocol corresponding to the first information is a protocol other than the RDMA protocol, then the first information is determined not to be the RDMA protocol.

[0071] The above-mentioned first setting field can be set to any applicable field according to actual conditions, and this embodiment does not limit this. For example, the first setting field can be a protocol type field, and the specific information of the protocol type field includes the protocol type (such as RDMA protocol, visual networking protocol, IP protocol, etc.). Therefore, according to the protocol type included in the protocol type field, it can be determined whether the first information is an RDMA protocol. For another example, the first setting field can be a port number field, and the specific information of the port number field includes a port number. Different port numbers can correspond to different protocol types. For example, the RDMA protocol corresponds to a fixed port number. Therefore, according to the port number included in the port number field, it can be determined whether the first information is an RDMA protocol.

[0072] Exemplarily, the process of the first network device converting the first information into the second information of the visual networking protocol may include: adding a first visual networking protocol packet header to the first information to obtain the second information of the visual networking protocol.

[0073] The first visual network protocol packet header may include but is not limited to: a first source visual network number, a first destination visual network number, a first source visual network MAC address, a first destination visual network MAC address, etc. The first source visual network number is the visual network number of the first network device, the first destination visual network number is the visual network number of the second network device, the first source visual network MAC address is the visual network MAC address of the first network device, and the first destination visual network MAC address is the visual network MAC address of the second network device.

[0074] Exemplarily, the process of converting the first information into second information of the visual networking protocol may include: deleting the UDP (User Datagram Protocol) packet header in the first information, and adding the first visual networking protocol packet header to the first information to obtain the second information of the visual networking protocol.

[0075] After receiving the second information sent by the first network device, the second network device identifies whether the second information is a visual networking protocol. If the second information is a visual networking protocol, the second network device converts the second information into third information of the RDMA protocol and sends the third information to the server, where the server needs to receive the third information sent by the second network device through the second RDMA network card. If the second information is not a visual networking protocol, the second network device processes the second information accordingly according to the protocol of the second information, and this embodiment does not limit this.

[0076] Exemplarily, the process of the second network device identifying whether the second information is a visual networking protocol may include: parsing information of a second setting field from a packet header of the second information (specifically, it may be a first visual networking protocol packet header added by the first network device to the first information), where the second setting field is a field that can identify the visual networking protocol; identifying whether the second information is a visual networking protocol based on the information of the second setting field.

[0077] Specifically, if the information in the second setting field identifies that the protocol corresponding to the second information is a visual networking protocol, then it is determined that the second information is a visual networking protocol; if the information in the second setting field identifies that the protocol corresponding to the second information is a protocol other than the visual networking protocol, then it is determined that the second information is not a visual networking protocol.

[0078] The second setting field can be set to any applicable field according to the actual situation, and this embodiment does not limit this. For example, the second setting field can be a protocol type field, and the specific information of the protocol type field includes the protocol type (such as RDMA protocol, visual networking protocol, IP protocol, etc.). Therefore, according to the protocol type included in the protocol type field, it can be determined whether the second information is a visual networking protocol. For another example, the second setting field can be a protocol identification field, and the specific information of the protocol identification field includes a protocol identification. Different protocol identifications can correspond to different protocol types. Therefore, according to the protocol identification included in the protocol identification field, it can be determined whether the second information is a visual networking protocol.

[0079] Exemplarily, the process of the second network device converting the second information into the third information of the RDMA protocol may include: deleting the first visual networking protocol packet header added to the second information to obtain the third information of the RDMA protocol.

[0080] In some possible scenarios, the server can send the fourth information to the second network device. If the fourth information is the RDMA protocol, the client needs to send the fourth information to the second network device through the second RDMA network card. After receiving the fourth information sent by the server, the second network device identifies whether the fourth information is the RDMA protocol. If the fourth information is the RDMA protocol, the second network device converts the fourth information into the fifth information of the visual networking protocol, and sends the fifth information to the first network device through the visual networking. If the fourth information is not the RDMA protocol, the second network device processes the fourth information accordingly according to the protocol of the fourth information, and this embodiment does not limit this.

[0081] Exemplarily, the process of the second network device identifying whether the fourth information is an RDMA protocol may include: parsing the information of the first setting field from the packet header of the fourth information; and identifying whether the fourth information is an RDMA protocol based on the information of the first setting field.

[0082] Specifically, if the information of the first setting field indicates that the protocol corresponding to the fourth information is the RDMA protocol, then the fourth information is determined to be the RDMA protocol; if the information of the first setting field indicates that the protocol corresponding to the fourth information is a protocol other than the RDMA protocol, then the fourth information is determined not to be the RDMA protocol.

[0083] Exemplarily, the process of the second network device converting the fourth information into the fifth information of the visual networking protocol may include: adding a second visual networking protocol packet header to the fourth information to obtain the fifth information of the visual networking protocol.

[0084] The second visual network protocol packet header may include but is not limited to: a second source visual network number, a second destination visual network number, a second source visual network MAC address, a second destination visual network MAC address, etc. The second source visual network number is the visual network number of the second network device, the second destination visual network number is the visual network number of the first network device, the second source visual network MAC address is the visual network MAC address of the second network device, and the second destination visual network MAC address is the visual network MAC address of the first network device.

[0085] Step 302: After receiving the fifth information, the first network device identifies whether the fifth information is a visual networking protocol. If so, the fifth information is converted into sixth information of the RDMA protocol and sent to the client.

[0086] After receiving the fifth information sent by the second network device, the first network device identifies whether the fifth information is a visual networking protocol. If the fifth information is a visual networking protocol, the first network device converts the fifth information into the sixth information of the RDMA protocol and sends the sixth information to the client, where the client needs to receive the sixth information sent by the second network device through the second RDMA network card. If the fifth information is not a visual networking protocol, the first network device processes the fifth information accordingly according to the protocol of the fifth information, and this embodiment does not limit this.

[0087] Exemplarily, the process of the first network device identifying whether the fifth information is a visual networking protocol may include: parsing the information of the second setting field from the packet header of the fifth information (specifically, it may be the second visual networking protocol packet header added by the second network device to the fifth information); identifying whether the fifth information is a visual networking protocol based on the information of the second setting field.

[0088] Specifically, if the information of the second setting field indicates that the protocol corresponding to the fifth information is the visual networking protocol, then the fifth information is determined to be the visual networking protocol; if the information of the second setting field indicates that the protocol corresponding to the fifth information is a protocol other than the visual networking protocol, then the fifth information is determined not to be the visual networking protocol.

[0089] Exemplarily, the process of the first network device converting the fifth information into the sixth information of the RDMA protocol may include: deleting the second visual networking protocol packet header added to the fifth information to obtain the sixth information of the RDMA protocol.

[0090] In the embodiment of the present invention, through the above process, the interaction requirements between the client and the server in various scenarios can be realized.

[0091] Exemplarily, when the first information is connection request information and the fourth information is connection response information, an RDMA connection is established between the client and the server.

[0092] Exemplarily, when the first information is write request information, the first memory data of the client is written into the second memory of the server.

[0093] Exemplarily, when the first information is read request information and the fourth information is the second memory data of the server, the client reads the second memory data.

[0094] Exemplarily, when the first information is disconnection request information and the fourth information is disconnection response information, disconnection of the RDMA connection between the client and the server is achieved, and the disconnection request information is sent after writing or reading is completed.

[0095] In an optional implementation, after receiving the first information, the first network device may also obtain the first source MAC address carried by the first information and the first port number corresponding to the first information, and save the first source MAC address and the first port number in a first mapping relationship between a MAC address and a port number. The first port number corresponding to the first information may be obtained by the first network device when receiving the first information.

[0096] Correspondingly, the process of the first network device sending the sixth information to the client may include: obtaining the sixth destination MAC address carried by the sixth information, querying the port number corresponding to the sixth destination MAC address from the first mapping relationship, and sending the sixth information to the client based on the port number corresponding to the sixth destination MAC address.

[0097] In an optional implementation, after receiving the fourth information sent by the server, the second network device may also obtain the fourth source MAC address carried by the fourth information and the fourth port number corresponding to the fourth information, and save the fourth source MAC address and the fourth port number in the second mapping relationship between the MAC address and the port number. The fourth port number corresponding to the fourth information can be obtained by the second network device when receiving the fourth information.

[0098] Accordingly, the process of the second network device sending the third information to the server may include: obtaining a third destination MAC address carried by the third information, querying the port number corresponding to the third destination MAC address from the second mapping relationship, and sending the third information to the server based on the port number corresponding to the third destination MAC address. If the port number corresponding to the third destination MAC address is not queried, the third information is sent to the server by broadcasting the port.

[0099] In the embodiment of the present invention, through the above-mentioned MAC address learning method, the network device can learn the mapping relationship between the MAC address and the port number, so that the network device can directly send information to the RDMA network card according to the mapping relationship without broadcasting to all ports, thereby reducing unnecessary data transmission, improving the forwarding efficiency of the network, and reducing broadcast traffic.

[0100] Reference Figure 4 , shows a flowchart of another remote direct memory access processing method according to an embodiment of the present invention.

[0101] like Figure 4 As shown, the remote direct memory access processing method may include the following steps:

[0102] Step 401: After receiving the second information sent by the first network device, the second network device identifies whether the second information is a visual networking protocol. If so, the second information is converted into third information of the RDMA protocol and the third information is sent to the server. The second information is received by the first network device after the first information sent by the client is identified whether the first information is an RDMA protocol. If so, the first information is converted into second information of the visual networking protocol and then sent.

[0103] Step 402: After receiving the fourth information sent by the server, the second network device identifies whether the fourth information is the RDMA protocol. If so, convert the fourth information into the fifth information of the visual networking protocol and send the fifth information to the first network device; so that after receiving the fifth information, the first network device identifies whether the fifth information is the visual networking protocol. If so, convert the fifth information into the sixth information of the RDMA protocol and send the sixth information to the client.

[0104] For the specific process of step 401 and step 402, reference may be made to the specific description of the above embodiment, and this embodiment will not be discussed in detail here.

[0105] In an embodiment of the present invention, by connecting a first network device and a second network device between a client and a server, and using the first network device and the second network device to perform protocol conversion between an RDMA protocol and a visual networking protocol, it is possible to apply RDMA technology to a visual networking environment and perform communication in a visual networking environment, thereby ensuring data security; and, the first network device and the second network device replace network devices such as RDMA switches and RDMA routers, thereby solving the dependence on network devices such as RDMA switches and RDMA routers, reducing deployment complexity, and reducing communication costs.

[0106] Next, the specific process of the remote direct memory access processing method is introduced.

[0107] The specific process of the remote direct memory access processing method may include:

[0108] (1) The first network device and the second network device are respectively connected to the visual network, and a visual network communication connection is established between the first network device and the second network device.

[0109] (2) The client and server are initialized separately.

[0110] During the initialization process, it may include but is not limited to applying for work domain information, memory information, event information, etc., which can be specifically set according to actual needs, and this embodiment does not limit this.

[0111] (3) The client sends a connection request message (first message) to the first network device through the first RDMA network card.

[0112] The connection request information may include, but is not limited to: client's working domain information, memory information, connection indication information, and the like.

[0113] (4) The first network device identifies whether the received connection request information (first information) is the RDMA protocol. If so, it converts the received connection request information (first information) into connection request information (second information) of the visual networking protocol, and sends the connection request information (second information) of the visual networking protocol to the second network device.

[0114] (5) The second network device identifies whether the received connection request information (second information) is a visual networking protocol. If so, the received connection request information (second information) is converted into a connection request information (third information) of the RDMA protocol, and the connection request information (third information) of the RDMA protocol is sent to the server.

[0115] (6) After receiving the connection request information (third information) of the RDMA protocol, the server sends a connection response information (fourth information) to the second network device through the second RDMA network card.

[0116] The connection response information may include, but is not limited to: the server's working domain information, memory information, connection indication information, local identification number information, remote identification number information, and the like.

[0117] (7) The second network device identifies whether the received connection response information (fourth information) is the RDMA protocol. If so, it converts the received connection response information (fourth information) into connection response information (fifth information) of the visual networking protocol, and sends the connection response information (fifth information) of the visual networking protocol to the first network device.

[0118] (8) The first network device identifies whether the received connection response information (fifth information) is a visual networking protocol. If so, the received connection response information (fifth information) is converted into connection response information (sixth information) of the RDMA protocol, and the connection response information (sixth information) of the RDMA protocol is sent to the client.

[0119] (9) After receiving the connection response information (sixth information) of the RDMA protocol, the client sends a connection confirmation information to the first network device through the first RDMA network card.

[0120] (10) The first network device identifies whether the received connection confirmation information is of the RDMA protocol. If so, the first network device converts the received connection confirmation information into connection confirmation information of the visual networking protocol and sends the connection confirmation information of the visual networking protocol to the second network device.

[0121] (11) The second network device identifies whether the received connection confirmation information is a visual networking protocol. If so, the received connection confirmation information is converted into connection confirmation information of the RDMA protocol, and the connection confirmation information of the RDMA protocol is sent to the server.

[0122] At this point, the RDMA connection between the client and the server is established.

[0123] (12) The client sends a write request message (first message) to the first network device through the first RDMA network card.

[0124] In the implementation, the client adds a work request for a write operation to its own sending queue, including the write target memory address of the server and the local address of the first memory data of the client. The first RDMA network card processes the work request for the write operation and retrieves the first memory data of the client from the first memory of the client according to the local address of the first memory data of the client. The first RDMA network card sends a write request message to the first network device, and the write request message may include but is not limited to: the target memory address of the server, the first memory data of the client, and so on.

[0125] (13) The first network device identifies whether the received write request information (first information) is the RDMA protocol. If so, it converts the received write request information (first information) into write request information (second information) of the visual networking protocol, and sends the write request information (second information) of the visual networking protocol to the second network device.

[0126] (14) The second network device identifies whether the received write request information (second information) is a visual networking protocol. If so, the received write request information (second information) is converted into a write request information (third information) of the RDMA protocol, and the write request information (third information) of the RDMA protocol is sent to the server.

[0127] (15) After receiving the write request information (third information) of the RDMA protocol, the server writes the first memory data of the client into the second memory of the server through the second RDMA network card.

[0128] In the implementation, the second RDMA network card writes the first memory data of the client into the second memory of the server according to the write target memory address of the server.

[0129] During the writing process, if there is data packet loss, the data will be resent until the data is complete.

[0130] When the server completes writing, the completion queue of the server will receive a completion queue entry to notify the operating system of the writing completion. The server can notify the client of the writing completion through the path of the server, the second network device, the first network device, and the client.

[0131] (16) After learning that the writing is completed, the client sends a disconnection request message (first message) to the first network device through the first RDMA network card.

[0132] (17) The first network device identifies whether the received disconnection request information (first information) is the RDMA protocol. If so, the received disconnection request information (first information) is converted into the disconnection request information (second information) of the visual networking protocol, and the disconnection request information (second information) of the visual networking protocol is sent to the second network device.

[0133] (18) The second network device identifies whether the received disconnection request information (second information) is a visual networking protocol. If so, the received disconnection request information (second information) is converted into a disconnection request information (third information) of the RDMA protocol, and the disconnection request information (third information) of the RDMA protocol is sent to the server.

[0134] (19) After receiving the disconnection request information (third information) of the RDMA protocol, the server sends a disconnection response information (fourth information) to the second network device through the second RDMA network card.

[0135] (20) The second network device identifies whether the received disconnection response information (fourth information) is the RDMA protocol. If so, it converts the received disconnection response information (fourth information) into the disconnection response information (fifth information) of the visual networking protocol, and sends the disconnection response information (fifth information) of the visual networking protocol to the first network device.

[0136] (21) The first network device identifies whether the received disconnection response information (fifth information) is a visual networking protocol. If so, the received disconnection response information (fifth information) is converted into a disconnection response information (sixth information) of the RDMA protocol, and the disconnection response information (sixth information) of the RDMA protocol is sent to the client.

[0137] (22) After the client receives the disconnection response information (sixth information) of the RDMA protocol, the RDMA connection between the client and the server is disconnected.

[0138] After disconnecting the RDMA connection between the client and the server, the client and the server release the work domain information, memory information, event information, etc. respectively.

[0139] (23) The client sends a read request message (first message) to the first network device through the first RDMA network card.

[0140] In the implementation, the client adds a work request for a read operation to its own sending queue, including the read target memory address of the server. The first RDMA network card processes the work request for the read operation and sends a read request message to the first network device. The read request message may include but is not limited to: the read target memory address of the server, etc.

[0141] (24) The first network device identifies whether the received read request information (first information) is the RDMA protocol. If so, it converts the received read request information (first information) into the read request information (second information) of the visual networking protocol, and sends the read request information (second information) of the visual networking protocol to the second network device.

[0142] (25) The second network device identifies whether the received read request information (second information) is a visual networking protocol. If so, the received read request information (second information) is converted into a read request information (third information) of the RDMA protocol, and the read request information (third information) of the RDMA protocol is sent to the server.

[0143] (26) After receiving the read request information (third information) of the RDMA protocol, the server reads the second memory data of the server through the second RDMA network card, and sends the second memory data of the server (fourth information) to the second network device.

[0144] In the implementation, the second RDMA network card reads the second memory data of the server according to the read target memory address of the server.

[0145] (27) The second network device identifies whether the second memory data (fourth information) received from the server is of RDMA protocol. If so, the second memory data (fourth information) received from the server is converted into the second memory data (fifth information) of the server of the visual networking protocol, and the second memory data (fifth information) of the server of the visual networking protocol is sent to the first network device.

[0146] (28) The first network device identifies whether the second memory data (fifth information) received from the server is a visual networking protocol. If so, the second memory data (fifth information) received from the server is converted into the second memory data (sixth information) of the server of the RDMA protocol, and the second memory data (sixth information) of the server of the RDMA protocol is sent to the client.

[0147] (29) After the client receives the second memory data (sixth information) of the server of the RDMA protocol, the client sends the second memory data of the server to the memory area specified by the client through the first RDMA network card, so that the client reads the second memory data.

[0148] During the reading process, if there is data packet loss, the data will be resent until the data is complete.

[0149] When the client completes the read, the client's completion queue will receive a completion queue entry to notify the operating system that the read is complete.

[0150] (30) After learning that the reading is completed, the client sends a disconnection request message (first message) to the first network device through the first RDMA network card.

[0151] (31) The first network device identifies whether the received disconnection request information (first information) is the RDMA protocol. If so, the received disconnection request information (first information) is converted into the disconnection request information (second information) of the visual networking protocol, and the disconnection request information (second information) of the visual networking protocol is sent to the second network device.

[0152] (32) The second network device identifies whether the received disconnection request information (second information) is a visual networking protocol. If so, the received disconnection request information (second information) is converted into a disconnection request information (third information) of the RDMA protocol, and the disconnection request information (third information) of the RDMA protocol is sent to the server.

[0153] (33) After receiving the disconnection request information (third information) of the RDMA protocol, the server sends a disconnection response information (fourth information) to the second network device through the second RDMA network card.

[0154] (34) The second network device identifies whether the received disconnection response information (fourth information) is the RDMA protocol. If so, it converts the received disconnection response information (fourth information) into disconnection response information (fifth information) of the visual networking protocol, and sends the disconnection response information (fifth information) of the visual networking protocol to the first network device.

[0155] (35) The first network device identifies whether the received disconnection response information (fifth information) is a visual networking protocol. If so, the received disconnection response information (fifth information) is converted into a disconnection response information (sixth information) of the RDMA protocol, and the disconnection response information (sixth information) of the RDMA protocol is sent to the client.

[0156] (36) After receiving the disconnection response information (sixth information) of the RDMA protocol, the client releases the work domain information, memory information, and event information to disconnect the RDMA connection between the client and the server.

[0157] After disconnecting the RDMA connection between the client and the server, the client and the server release the work domain information, memory information, event information, etc. respectively.

[0158] The embodiments of the present invention can realize visual networking supporting the RDMA protocol, improve network transmission efficiency, reduce server CPU usage, and solve the dependence on RDMA switches.

[0159] Reference Figure 5 , shows a structural block diagram of a remote direct memory access processing device according to an embodiment of the present invention. Figure 5 The remote direct memory access processing device shown is applied to a first network device.

[0160] like Figure 5 As shown, the remote direct memory access processing device may include the following modules:

[0161] The first processing module 501 is used to, after receiving the first information sent by the client, identify whether the first information is a remote direct memory access RDMA protocol, and if so, convert the first information into second information of a visual networking protocol, and send the second information to a second network device; so that after receiving the second information, the second network device can identify whether the second information is a visual networking protocol, and if so, convert the second information into third information of the RDMA protocol, and send the third information to the server, and after receiving the fourth information sent by the server, identify whether the fourth information is an RDMA protocol, and if so, convert the fourth information into fifth information of the visual networking protocol, and send the fifth information to the first network device;

[0162] The second processing module 502 is used to identify whether the fifth information is a visual networking protocol after receiving the fifth information. If so, convert the fifth information into sixth information of the RDMA protocol and send the sixth information to the client.

[0163] Optionally, when the first information is connection request information and the fourth information is connection response information, the RDMA connection between the client and the server is established; when the first information is write request information, the first memory data of the client is written into the second memory of the server; when the first information is read request information and the fourth information is the second memory data of the server, the client reads the second memory data; when the first information is disconnect request information and the fourth information is disconnect response information, the RDMA connection between the client and the server is disconnected, and the disconnect request information is sent after writing or reading is completed.

[0164] Optionally, the first processing module 501 is also used to obtain the first source MAC address carried by the first information and the first port number corresponding to the first information after receiving the first information, and save the first source MAC address and the first port number corresponding to the first mapping relationship between the MAC address and the port number; the first processing module 501 includes: a query unit, used to obtain the sixth destination MAC address carried by the sixth information, query the port number corresponding to the sixth destination MAC address from the first mapping relationship, and send the sixth information to the client based on the port number corresponding to the sixth destination MAC address.

[0165] Optionally, the first processing module 501 includes: an identification unit, used to parse the first information header to obtain information of a first setting field, where the first setting field is a field that can identify the RDMA protocol; and identify whether the first information is the RDMA protocol based on the information of the first setting field.

[0166] Optionally, the first processing module 501 includes: a first conversion unit, used to add a first visual networking protocol header to the first information to obtain second information of the visual networking protocol; the second processing module 502 includes: a second conversion unit, used to delete the second visual networking protocol header in the fifth information to obtain sixth information of the RDMA protocol.

[0167] Reference Figure 6 , shows a structural block diagram of another remote direct memory access processing device according to an embodiment of the present invention. Figure 6 The remote direct memory access processing device shown is applied to the second network device.

[0168] like Figure 6 As shown, the remote direct memory access processing device may include the following modules:

[0169] The third processing module 601 is used to, after receiving the second information sent by the first network device, identify whether the second information is a visual networking protocol, and if so, convert the second information into third information of the RDMA protocol, and send the third information to the server; the second information is received by the first network device after receiving the first information sent by the client, and identify whether the first information is an RDMA protocol, and if so, convert the first information into second information of the visual networking protocol and then send it;

[0170] The fourth processing module 602 is used to identify whether the fourth information is an RDMA protocol after receiving the fourth information sent by the server, and if so, convert the fourth information into fifth information of the visual networking protocol, and send the fifth information to the first network device; so that the first network device can identify whether the fifth information is a visual networking protocol after receiving the fifth information, and if so, convert the fifth information into sixth information of the RDMA protocol, and send the sixth information to the client.

[0171] In an embodiment of the present invention, by connecting a first network device and a second network device between a client and a server, and using the first network device and the second network device to perform protocol conversion between an RDMA protocol and a visual networking protocol, it is possible to apply RDMA technology to a visual networking environment and perform communication in a visual networking environment, thereby ensuring data security; and, the first network device and the second network device replace network devices such as RDMA switches and RDMA routers, thereby solving the dependence on network devices such as RDMA switches and RDMA routers, reducing deployment complexity, and reducing communication costs.

[0172] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0173] In an embodiment of the present invention, an electronic device is further provided. The electronic device may include a processor and a computer-readable storage medium, wherein a computer program is stored on the computer-readable storage medium; when the computer program is executed by the processor, the processor executes the remote direct memory access processing method of any of the above embodiments.

[0174] Reference Figure 7 , shows a structural block diagram of an electronic device according to an embodiment of the present invention. Figure 7 As shown, the electronic device 70 includes a processor 701 and a computer-readable storage medium 702 , on which a computer program 7021 is stored.

[0175] The processor 701 is used to execute the computer program 7021 stored on the computer-readable storage medium 702. When executing the computer program 7021, the processor 701 implements the remote direct memory access processing method of any of the above-mentioned embodiments and can achieve the same technical effect. To avoid repetition, it will not be repeated.

[0176] The processor 701 mentioned above may include but is not limited to: CPU, network processor (Network Processor, NP), digital signal processor (Digital Signal Processing, DSP), application specific integrated circuit (Application Specific Integrated Circuit, ASIC), field programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0177] The computer-readable storage medium 702 mentioned above may include but is not limited to: Read Only Memory (ROM), Random Access Memory (RAM), Compact Disc Read Only Memory (CD-ROM), Electronic Erasable Programmable Read Only Memory (EEPROM), hard disk, floppy disk, flash memory, and the like.

[0178] In an embodiment of the present invention, a computer-readable storage medium is also provided, on which a computer program is stored. The computer program can be executed by a processor of an electronic device. When the computer program is executed by the processor, the processor executes the remote direct memory access processing method described in any of the above embodiments.

[0179] Reference Figure 8 , shows a block diagram of a computer-readable storage medium according to an embodiment of the present invention. Figure 8 As shown, a computer program 801 is stored on a computer-readable storage medium 80. When the computer program 801 is executed by a processor, the processor executes the remote direct memory access processing method described in any of the above embodiments and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0180] The various embodiments in this specification are interrelated, and each embodiment is described in a progressive manner. Each embodiment focuses on the differences from other embodiments, and the same or similar parts between the various embodiments can be referenced to each other.

[0181] It will be appreciated by those skilled in the art that the embodiments of the present invention may be provided as methods, devices, or computer program products. Therefore, the embodiments of the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0182] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0183] These computer program instructions may also be stored in a computer readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0184] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0185] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present invention.

[0186] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0187] The above is a detailed introduction to a remote direct memory access processing method, device, electronic device and storage medium provided by the present invention. Specific examples are used in this article to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. At the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present invention.

Claims

1. A remote direct memory access processing method, characterized in that: The method comprises: After receiving the first information sent by the client, the first network device identifies whether the first information is a remote direct memory access RDMA protocol, and if so, converts the first information into second information of a visual networking protocol, and sends the second information to the second network device; so that after receiving the second information, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to the server, and after receiving the fourth information sent by the server, identifies whether the fourth information is an RDMA protocol, and if so, converts the fourth information into fifth information of the visual networking protocol, and sends the fifth information to the first network device; After receiving the fifth information, the first network device identifies whether the fifth information is a visual networking protocol. If so, the fifth information is converted into sixth information of the RDMA protocol and sent to the client.

2. The method according to claim 1, characterized in that When the first information is connection request information and the fourth information is connection response information, establishing an RDMA connection between the client and the server; When the first information is write request information, the first memory data of the client is written into the second memory of the server; When the first information is read request information and the fourth information is second memory data of the server, the client is enabled to read the second memory data; When the first information is disconnection request information and the fourth information is disconnection response information, the RDMA connection between the client and the server is disconnected, and the disconnection request information is sent after writing or reading is completed.

3. The method according to claim 1, characterized in that The method further includes: after receiving the first information, the first network device obtains a first source MAC address carried by the first information and a first port number corresponding to the first information, and saves the first source MAC address and the first port number in a first mapping relationship between a MAC address and a port number; The sending of the sixth information to the client includes: obtaining a sixth destination MAC address carried by the sixth information, querying a port number corresponding to the sixth destination MAC address from the first mapping relationship, and sending the sixth information to the client based on the port number corresponding to the sixth destination MAC address.

4. The method according to claim 1, characterized in that: The identifying whether the first information is an RDMA protocol includes: Parsing the first information header to obtain information of a first setting field, where the first setting field is a field capable of identifying an RDMA protocol; It is identified whether the first information is an RDMA protocol according to the information of the first setting field.

5. The method according to claim 1, characterized in that The converting the first information into the second information of the visual networking protocol includes: adding a first visual networking protocol packet header to the first information to obtain the second information of the visual networking protocol; The converting the fifth information into the sixth information of the RDMA protocol includes: deleting the second visual networking protocol packet header in the fifth information to obtain the sixth information of the RDMA protocol.

6. A remote direct memory access processing method, characterized in that: The method comprises: After receiving the second information sent by the first network device, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to the server; the second information is received by the first network device after the first information sent by the client is identified whether the first information is an RDMA protocol, and if so, converts the first information into second information of the visual networking protocol and then sends it; After receiving the fourth information sent by the server, the second network device identifies whether the fourth information is the RDMA protocol. If so, the fourth information is converted into the fifth information of the visual networking protocol and the fifth information is sent to the first network device; so that after receiving the fifth information, the first network device can identify whether the fifth information is the visual networking protocol. If so, the fifth information is converted into the sixth information of the RDMA protocol and the sixth information is sent to the client.

7. A remote direct memory access processing device, characterized in that: The device is applied to a first network device, and the device includes: A first processing module is used to, after receiving first information sent by a client, identify whether the first information is a remote direct memory access (RDMA) protocol, and if so, convert the first information into second information of a visual networking protocol, and send the second information to a second network device; so that after receiving the second information, the second network device identifies whether the second information is a visual networking protocol, and if so, converts the second information into third information of the RDMA protocol, and sends the third information to a server, and after receiving fourth information sent by the server, identifies whether the fourth information is an RDMA protocol, and if so, converts the fourth information into fifth information of the visual networking protocol, and sends the fifth information to the first network device; The second processing module is used to identify whether the fifth information is a visual networking protocol after receiving the fifth information. If so, convert the fifth information into sixth information of the RDMA protocol and send the sixth information to the client.

8. A remote direct memory access processing device, characterized in that: The device is applied to a second network device, and the device includes: The third processing module is used to identify whether the second information is a visual networking protocol after receiving the second information sent by the first network device, and if so, convert the second information into third information of the RDMA protocol and send the third information to the server; the second information is the first information sent by the client after the first network device receives the first information, identifies whether the first information is an RDMA protocol, and if so, converts the first information into second information of the visual networking protocol and then sends it; The fourth processing module is used to identify whether the fourth information is an RDMA protocol after receiving the fourth information sent by the server, and if so, convert the fourth information into fifth information of the visual networking protocol, and send the fifth information to the first network device; so that the first network device can identify whether the fifth information is a visual networking protocol after receiving the fifth information, and if so, convert the fifth information into sixth information of the RDMA protocol, and send the sixth information to the client.

9. An electronic device, characterized in that: The electronic device includes a processor and a computer-readable storage medium, wherein a computer program is stored on the computer-readable storage medium; when the computer program is executed by the processor, the processor executes the remote direct memory access processing method as described in any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor executes the remote direct memory access processing method according to any one of claims 1 to 6.