DPU network card hardware flow table unloading method and device, equipment and medium

By receiving BPF bytecode on the DPU network card and updating the hardware flow table component, the problem of existing DPU network cards requiring changes in operation and maintenance tools is solved, achieving lower adaptation costs and simpler user operations.

CN119402422AInactive Publication Date: 2025-02-07YUSUR TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411508625.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-28
Publication Date
2025-02-07
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

When the existing DPU network card is uninstalled, the tool interface used is not standard, which causes users to change the operation and maintenance tools to support the functions of the DPU network card. The adaptation cost is high and the user's operations are complicated.

Method used

Provide a DPU network card hardware flow table unloading method, by receiving the BPF byte code issued by the user's operation and maintenance tool, updating the hardware flow table component of the DPU network card, and performing path matching processing on the network data flow through the hardware flow table component, and determining The target path is transmitted.

Benefits of technology

It realizes updating the DPU network card hardware flow table component based on the BPF bytecode issued by the user operation and maintenance tools, reducing adaptation costs, reducing user operations, and improving user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119402422A_ABST
    Figure CN119402422A_ABST
Patent Text Reader

Abstract

The invention relates to a DPU network card hardware flow table unloading method and device, equipment and a medium. The DPU network card hardware flow table unloading method comprises the following steps: receiving a BPF byte code issued by an operation and maintenance tool of a user; updating a hardware flow table component of the DPU network card according to the BPF byte code; performing path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path; and transmitting the network data stream based on the target path. According to the embodiment of the invention, the adaptation cost can be reduced, the user operation is reduced, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of intelligent acceleration DPU network card, and in particular to a method, device, equipment and medium for unloading hardware flow tables of a DPU network card. Background Art

[0002] When the existing DPU network card unloads the flow table and then sends a specific five-tuple data packet to another fast path, the tool used is a specific tool with a non-standard interface. As a result, when users use the DPU network card of the equipment manufacturer, they need to change their own operation and maintenance tools to support the functions of the DPU network card.

[0003] Therefore, when users use DPU network cards from different equipment vendors, they need different operation and maintenance tools to support DPU network cards from different equipment vendors, which results in high adaptation costs and complicated user operations. Summary of the invention

[0004] In order to solve the above technical problems, the present disclosure provides a DPU network card hardware flow table unloading method, device, equipment and medium.

[0005] In a first aspect, the present disclosure provides a method for unloading a DPU network card hardware flow table, comprising:

[0006] Receive the BPF bytecode sent by the user's operation and maintenance tools;

[0007] Update the hardware flow table component of the DPU network card according to the BPF bytecode;

[0008] Performing path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path;

[0009] The network data flow is transmitted based on the target path.

[0010] In a second aspect, the present disclosure provides a DPU network card hardware flow table unloading device, comprising:

[0011] The data receiving module is used to receive the BPF bytecode sent by the user's operation and maintenance tools;

[0012] A flow table update module, used to update the hardware flow table component of the DPU network card according to the BPF bytecode;

[0013] A path matching module is used to perform path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path;

[0014] A data transmission module is used to transmit the network data stream based on the target path.

[0015] In a third aspect, the present disclosure provides a DPU network card hardware flow table unloading device, including:

[0016] processor;

[0017] A memory for storing executable instructions;

[0018] The processor is used to read executable instructions from the memory and execute the executable instructions to implement the DPU network card hardware flow table unloading method of the first aspect.

[0019] In a fourth aspect, the present disclosure provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, the processor implements the DPU network card hardware flow table unloading method of the first aspect.

[0020] Compared with the prior art, the technical solution provided by the embodiments of the present disclosure has the following advantages:

[0021] The DPU network card hardware flow table unloading method, device, equipment and medium of the disclosed embodiments can receive the BPF bytecode sent by the user's operation and maintenance tool, then update the hardware flow table component of the DPU network card according to the BPF bytecode, and then perform path matching processing on the received network data flow through the hardware flow table component to obtain the corresponding target path, and finally transmit the network data flow based on the target path. Therefore, the hardware flow table component of the DPU network card can be updated according to the BPF bytecode sent by the user's operation and maintenance tool, and after receiving the network data flow, the corresponding target path is determined by the hardware flow table component for transmission, so that the hardware flow table component of the DPU network card is updated according to the user's operation and maintenance tool, without the user changing the operation and maintenance tool, thereby reducing the adaptation cost, reducing user operations, and improving user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. Throughout the accompanying drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and the originals and elements are not necessarily drawn to scale.

[0023] Figure 1 A flowchart of a method for unloading a DPU network card hardware flow table provided in an embodiment of the present disclosure;

[0024] Figure 2 A flowchart of another DPU network card hardware flow table unloading method provided in an embodiment of the present disclosure;

[0025] Figure 3 A flowchart of another method for unloading a DPU network card hardware flow table provided in an embodiment of the present disclosure;

[0026] Figure 4 A structural diagram of a DPU network card hardware flow table unloading device provided in an embodiment of the present disclosure;

[0027] Figure 5 A structural schematic diagram of a DPU network card hardware flow table unloading device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0028] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments described herein, which are instead provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0029] It should be understood that the various steps described in the method embodiments of the present disclosure may be performed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this respect.

[0030] The term "including" and its variations used herein are open inclusions, i.e., "including but not limited to". The term "based on" means "based at least in part on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The relevant definitions of other terms will be given in the following description.

[0031] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0032] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".

[0033] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only used for illustrative purposes and are not used to limit the scope of these messages or information.

[0034] In order to solve the above problems, the present disclosure provides a method, device, equipment and medium for unloading the hardware flow table of a DPU network card. Figures 1 to 3The DPU network card hardware flow table unloading method provided in the embodiment of the present disclosure is described in detail.

[0035] Optionally, a data processing unit or dedicated data processor (Data Processing Unit, DPU) is a hardware accelerator for data processing that runs an independent operating system, complex hardware offload modules, and matching network, security, and storage software functions. DPUs are typically used to accelerate throughput-intensive tasks in data centers, cloud computing, and edge computing, such as artificial intelligence reasoning, large-scale data analysis, and network security. DPUs consist of three main elements, including processing cores, network interfaces, and memory interfaces. These components work together to enable the DPU to process data efficiently.

[0036] Figure 1 A flow chart of a DPU network card hardware flow table unloading method provided in an embodiment of the present disclosure is shown.

[0037] In an embodiment of the present disclosure, the DPU network card hardware flow table unloading method can be executed by an electronic device. The electronic device may include but is not limited to devices such as computer devices, cloud servers or cloud server clusters. The electronic device may include a DPU network card.

[0038] like Figure 1 As shown, the DPU network card hardware flow table unloading method may include the following steps.

[0039] S110: Receive the BPF bytecode sent by the user's operation and maintenance tool.

[0040] In an embodiment of the present disclosure, the electronic device may receive the BPF bytecode sent by the user's operation and maintenance tool.

[0041] Optionally, the operation and maintenance tool refers to a software tool that replaces manual operations to perform server configuration, deployment, management, monitoring and other tasks.

[0042] Optionally, Berkeley Packet Filter (BPF) bytecode is a binary intermediate code sent by a user's operation and maintenance tool.

[0043] Specifically, the operation and maintenance tool of the user software can send the BPF bytecode to the DPU network card, and the electronic device can receive the BPF bytecode sent by the operation and maintenance tool of the user through the DPU network card.

[0044] S120. Update the hardware flow table component of the DPU network card according to the BPF bytecode.

[0045] In an embodiment of the present disclosure, the electronic device may update the hardware flow table component of the DPU network card according to the BPF bytecode.

[0046] Optionally, the DPU network card may be computer hardware for communication on the electronic device.

[0047] Optionally, the hardware flow table component is a data structure used in an electronic device to determine how to process and forward data packets.

[0048] Specifically, after receiving the BPF bytecode, the electronic device can update the hardware flow table component of the DPU network card according to the BPF bytecode.

[0049] S130. Perform path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path.

[0050] In the disclosed embodiment, the electronic device may perform path matching processing on the received network data flow through the hardware flow table component to obtain the corresponding target path.

[0051] Optionally, the path matching process may be to determine that the network data flow is transmitted through a certain matching path.

[0052] Optionally, the target path may be a path for transmitting a network data flow.

[0053] Specifically, after receiving the network data stream, the electronic device can perform path matching processing on the received network data stream through the hardware flow table component, that is, obtain the corresponding target path by the path matching the network data stream in the hardware flow table component.

[0054] S140: Transmit the network data stream based on the target path.

[0055] In the embodiment of the present disclosure, the electronic device may transmit the network data stream based on the target path.

[0056] Specifically, after the electronic device determines the target path in the hardware flow table component, it can transmit the network data flow through the target path.

[0057] Therefore, in the embodiment of the present disclosure, it is possible to receive the BPF bytecode sent by the user's operation and maintenance tool, then update the hardware flow table component of the DPU network card according to the BPF bytecode, and then perform path matching processing on the received network data flow through the hardware flow table component to obtain the corresponding target path, and finally transmit the network data flow based on the target path. Therefore, the hardware flow table component of the DPU network card can be updated according to the BPF bytecode sent by the user's operation and maintenance tool, and after receiving the network data flow, the corresponding target path is determined for transmission through the hardware flow table component, thereby updating the hardware flow table component of the DPU network card according to the user's operation and maintenance tool, without the user having to change the operation and maintenance tool, thereby reducing the adaptation cost, reducing user operations, and improving user experience.

[0058] Optionally, after S110, the DPU network card hardware flow table unloading method may further include: interpreting the BPF bytecode through a BPF interpreter to obtain a flow table rule.

[0059] In the disclosed embodiment, the electronic device may interpret the BPF bytecode through a BPF interpreter to obtain a flow table rule.

[0060] Optionally, a BPF interpreter may be used to interpret the BPF bytecode.

[0061] Optionally, the flow table rule may be a rule related to the sending and receiving of data packets. For example, the flow table rule mainly involves the configuration of the flow table, the viewing method, and the management of the flow table.

[0062] Specifically, after receiving the BPF bytecode, the electronic device can interpret the BPF bytecode through the BPF interpreter in the DPU network card, that is, extract the flow table rules in the BPF bytecode to obtain the flow table rules.

[0063] Optionally, S120 may specifically include: registering the flow table rule to the hardware flow table component of the DPU network card.

[0064] In the embodiment of the present disclosure, the electronic device may register the flow table rule to the hardware flow table component of the DPU network card.

[0065] Specifically, after obtaining the flow table rules, the electronic device can register the flow table rules to the hardware flow table component of the DPU network card, for example, store the flow table configuration, viewing method and flow table management in the hardware flow table component of the DPU network card. The hardware flow table component can store the source address, destination address, port number and other parameters that describe the characteristics of the data packet.

[0066] Optionally, S130 may specifically include: receiving the network data flow and acquiring header information of the network data flow; performing path matching processing in the hardware flow table component based on the header information to obtain a corresponding target path.

[0067] In the embodiment of the present disclosure, the electronic device may receive the network data stream and obtain header information of the network data stream.

[0068] Optionally, the header information may include a source Internet Protocol (IP) address, a destination IP address, a protocol type, a data packet size, a port number, a sequence number, a confirmation number, a header length, and a flag bit.

[0069] Specifically, after receiving a network data stream, the electronic device can obtain the header information corresponding to the network data stream, such as the source IP address, destination IP address, protocol type, packet size, port number, sequence number, confirmation number, header length, and flag bit.

[0070] Furthermore, the electronic device may perform path matching processing in the hardware flow table component based on the header information to obtain a corresponding target path.

[0071] Optionally, performing path matching processing in the hardware flow table component based on the header information includes: searching in the hardware flow table component whether there is the flow table rule corresponding to the header information.

[0072] Specifically, the electronic device can obtain the header information of the network data flow, and search the hardware flow table component to see whether there is a flow table rule corresponding to the header information. For example, the hardware flow table component stores the source address, destination address, port number and other parameters describing the characteristics of the data packet, and the electronic device can search the hardware flow table component to see whether there is a flow table rule corresponding to the header information.

[0073] Optionally, S130 may specifically include: in a case where the flow table rule corresponding to the header information is found in the hardware flow table component, determining that the target path is a fast path.

[0074] In the embodiment of the present disclosure, when the flow table rule corresponding to the header information is found in the hardware flow table component, the electronic device can determine that the target path is a fast path.

[0075] Optionally, the fast path may be a fast processing path pre-set according to the flow table rule.

[0076] Specifically, if the flow table rule corresponding to the header information is found in the hardware flow table component, that is, the flow table rule corresponding to the header information has been stored in the hardware flow table component, then the electronic device can determine that the target path is a fast path, that is, transmit the network data flow through the fast path set in advance according to the flow table rule.

[0077] Optionally, S130 may specifically include: when the flow table rule corresponding to the header information is not found in the hardware flow table component, determining that the target path is a default path.

[0078] In the embodiment of the present disclosure, when the flow table rule corresponding to the header information is not found in the hardware flow table component, the electronic device may determine that the target path is a default path.

[0079] Optionally, the default path may be a pre-set universal transmission path.

[0080] Specifically, if the flow table rule corresponding to the header information is not found in the hardware flow table component, that is, the flow table rule corresponding to the header information is not stored in the hardware flow table component, then the electronic device can use the target path as the default path, that is, transmit the network data flow through a pre-set general default path.

[0081] Figure 2 A flow chart of another DPU network card hardware flow table unloading method provided by an embodiment of the present disclosure is shown.

[0082] like Figure 2 As shown, the operation and maintenance tool of the user software can send BPF bytecode to the DPU network card, and the electronic device can receive the BPF bytecode sent by the user's operation and maintenance tool through the DPU network card, and then the BPF bytecode can be interpreted and processed by the BPF interpreter in the DPU network card, that is, the flow table rules in the BPF bytecode are extracted to obtain the flow table rules, and finally the flow table rules are registered in the hardware flow table component of the DPU network card, for example, the configuration of the flow table, the viewing method and the management of the flow table are stored in the hardware flow table component of the DPU network card, and the hardware flow table component can store the source address, destination address, port number and other parameters describing the characteristics of the data packet.

[0083] Figure 3 A flow chart of another DPU network card hardware flow table unloading method provided in an embodiment of the present disclosure is shown.

[0084] like Figure 3As shown, the operation and maintenance tool of the user software can send BPF bytecode to the DPU network card, and the electronic device can receive the BPF bytecode sent by the user's operation and maintenance tool through the DPU network card, and then interpret the BPF bytecode through the BPF interpreter in the DPU network card, that is, extract the flow table rules in the BPF bytecode to obtain the flow table rules, and finally register the flow table rules to the hardware flow table component of the DPU network card. The electronic device can receive the network data flow and obtain the header information of the network data flow, perform path matching processing in the hardware flow table component based on the header information, and obtain the corresponding target path, that is, search in the hardware flow table component whether there is the flow table rule corresponding to the header information. For example, the hardware flow table component stores the source address, destination address, port number and other parameters describing the characteristics of the data packet. The electronic device can search in the hardware flow table component whether there is a flow table rule corresponding to the header information. If the flow table rule corresponding to the header information is found in the hardware flow table component, that is, the flow table rule corresponding to the header information has been stored in the hardware flow table component, the electronic device can determine that the target path is a fast path, that is, the network data flow is transmitted through the fast path pre-set according to the flow table rule. If the flow table rule corresponding to the header information is not found in the hardware flow table component, that is, the flow table rule corresponding to the header information is not stored in the hardware flow table component, the electronic device can set the target path as a default path, that is, the network data flow is transmitted through a pre-set universal default path.

[0085] Figure 4 A structural schematic diagram of a DPU network card hardware flow table unloading device provided by an embodiment of the present disclosure is shown.

[0086] like Figure 4 As shown, the DPU network card hardware flow table unloading device 400 may include a data receiving module 410 , a flow table updating module 420 , a path matching module 430 and a data transmission module 440 .

[0087] The data receiving module 410 can be used to receive the BPF bytecode sent by the user's operation and maintenance tool.

[0088] The flow table update module 420 can be used to update the hardware flow table component of the DPU network card according to the BPF bytecode.

[0089] The path matching module 430 can be used to perform path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path.

[0090] The data transmission module 440 may be configured to transmit the network data flow based on the target path.

[0091] Therefore, in the embodiment of the present disclosure, it is possible to receive the BPF bytecode sent by the user's operation and maintenance tool, then update the hardware flow table component of the DPU network card according to the BPF bytecode, and then perform path matching processing on the received network data flow through the hardware flow table component to obtain the corresponding target path, and finally transmit the network data flow based on the target path. Therefore, the hardware flow table component of the DPU network card can be updated according to the BPF bytecode sent by the user's operation and maintenance tool, and after receiving the network data flow, the corresponding target path is determined for transmission through the hardware flow table component, thereby updating the hardware flow table component of the DPU network card according to the user's operation and maintenance tool, without the user having to change the operation and maintenance tool, thereby reducing the adaptation cost, reducing user operations, and improving user experience.

[0092] In some embodiments of the present disclosure, the DPU network card hardware flow table unloading device 400 may further include an interpretation processing module.

[0093] The interpretation and processing module can be used to interpret the BPF bytecode sent by the operation and maintenance tool of the receiving user through a BPF interpreter to obtain a flow table rule.

[0094] In some embodiments of the present disclosure, the flow table updating module 420 may specifically include a rule registration unit.

[0095] The rule registration unit may be used to register the flow table rule to the hardware flow table component of the DPU network card.

[0096] In some embodiments of the present disclosure, the path matching module 430 may specifically include a data receiving unit and a path matching unit.

[0097] The data receiving unit can be used to receive the network data stream and obtain the header information of the network data stream.

[0098] The path matching unit can be used to perform path matching processing in the hardware flow table component based on the header information to obtain a corresponding target path.

[0099] In some embodiments of the present disclosure, the path matching unit may also be specifically configured to search the hardware flow table component for the flow table rule corresponding to the header information.

[0100] In some embodiments of the present disclosure, the path matching module 430 may further specifically include a first determining unit.

[0101] The first determination unit may be configured to determine that the target path is a fast path when the flow table rule corresponding to the header information is found in the hardware flow table component.

[0102] In some embodiments of the present disclosure, the path matching module 430 may further specifically include a second determining unit.

[0103] The second determination unit may be configured to determine that the target path is a default path when the flow table rule corresponding to the header information is not found in the hardware flow table component.

[0104] It should be noted that Figure 4 The DPU network card hardware flow table unloading device 400 shown can execute Figures 1 to 3 The various steps in the method embodiment shown in the figure are implemented Figures 1 to 3 The various processes and effects in the method embodiment shown are not described in detail here.

[0105] Figure 5 A structural schematic diagram of a DPU network card hardware flow table unloading device provided in an embodiment of the present disclosure is shown.

[0106] In some embodiments of the present disclosure, Figure 5 The DPU network card hardware flow table unloading device shown may be an electronic device. Specifically, the electronic device may include but is not limited to devices such as computer devices, cloud servers or cloud server clusters.

[0107] like Figure 5 As shown, the DPU network card hardware flow table unloading device may include a processor 501 and a memory 502 storing computer program instructions.

[0108] Specifically, the processor 501 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.

[0109] The memory 502 may include a large capacity memory for information or instructions. By way of example and not limitation, the memory 502 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a tape, or a universal serial bus (USB) drive or a combination of two or more of these. Where appropriate, the memory 502 may include a removable or non-removable (or fixed) medium. Where appropriate, the memory 502 may be inside or outside the integrated gateway device. In a particular embodiment, the memory 502 is a non-volatile solid-state memory. In a particular embodiment, the memory 502 includes a read-only memory (ROM). Where appropriate, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (Electrically Erasable Programmable ROM, EEPROM), an electrically rewritable ROM (EAROM) or a flash memory, or a combination of two or more of these.

[0110] The processor 501 reads and executes the computer program instructions stored in the memory 502 to perform the steps of the DPU network card hardware flow table unloading method provided in the embodiment of the present disclosure.

[0111] In one example, the DPU network card hardware flow table unloading device may further include a transceiver 503 and a bus 504. Figure 5 As shown, the processor 501, the memory 502 and the transceiver 503 are connected via a bus 504 and communicate with each other.

[0112] The bus 504 includes hardware, software, or both. For example, but not limitation, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industrial Standard Architecture (ISA) bus, an InfiniBand interconnect, a Low Pin Count (LPC) bus, a memory bus, a MicroChannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Bus (VLB) bus, or other suitable buses or a combination of two or more of these. Where appropriate, the bus 504 may include one or more buses. Although embodiments of the present application describe and illustrate a particular bus, the present application contemplates any suitable bus or interconnect.

[0113] The embodiment of the present disclosure also provides a computer-readable storage medium, which can store a computer program. When the computer program is executed by a processor, the processor implements the DPU network card hardware flow table unloading method provided by the embodiment of the present disclosure.

[0114] The above-mentioned storage medium may, for example, include a memory 502 of computer program instructions, and the above-mentioned instructions may be executed by the processor 501 of the DPU network card hardware flow table unloading device to complete the DPU network card hardware flow table unloading method provided in the embodiment of the present disclosure. Optionally, the storage medium may be a non-temporary computer-readable storage medium, for example, the non-temporary computer-readable storage medium may be a ROM, a random access memory (Random Access Memory, RAM), a compact disc read-only memory (Compact Disc ROM, CD-ROM), a magnetic tape, a floppy disk, and an optical data storage device, etc.

[0115] It should be noted that, in this article, relational terms such as "first" and "second" 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 term "comprising" is intended to cover non-exclusive inclusion, so that a process, method, article or 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 device.

[0116] The above description is only a specific embodiment of the present disclosure, so that those skilled in the art can understand or implement the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to the embodiments described herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method for unloading a DPU network card hardware flow table, characterized in that: include: Receive the BPF bytecode sent by the user's operation and maintenance tools; Update the hardware flow table component of the DPU network card according to the BPF bytecode; Performing path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path; The network data flow is transmitted based on the target path.

2. The method according to claim 1, characterized in that After receiving the BPF bytecode sent by the user's operation and maintenance tool, the method further includes: The BPF bytecode is interpreted by a BPF interpreter to obtain flow table rules.

3. The method according to claim 2, characterized in that The updating of the hardware flow table component of the DPU network card according to the BPF bytecode includes: Register the flow table rule to the hardware flow table component of the DPU network card.

4. The method according to claim 2, characterized in that: The performing path matching processing on the received network data flow through the hardware flow table component to obtain the corresponding target path includes: Receive the network data stream and obtain header information of the network data stream; Based on the header information, path matching processing is performed in the hardware flow table component to obtain a corresponding target path.

5. The method according to claim 4, characterized in that The performing path matching processing in the hardware flow table component based on the header information includes: The hardware flow table component is searched to determine whether the flow table rule corresponding to the header information exists.

6. The method according to claim 5, characterized in that The obtaining of the corresponding target path includes: In the case where the flow table rule corresponding to the header information is found in the hardware flow table component, the target path is determined to be a fast path.

7. The method according to claim 5, characterized in that The obtaining of the corresponding target path includes: When the flow table rule corresponding to the header information is not found in the hardware flow table component, the target path is determined to be a default path.

8. A DPU network card hardware flow table unloading device, characterized in that: include: The data receiving module is used to receive the BPF bytecode sent by the user's operation and maintenance tools; A flow table update module, used to update the hardware flow table component of the DPU network card according to the BPF bytecode; A path matching module is used to perform path matching processing on the received network data flow through the hardware flow table component to obtain a corresponding target path; A data transmission module is used to transmit the network data stream based on the target path.

9. A DPU network card hardware flow table unloading device, characterized in that: include: processor; A memory for storing executable instructions; The processor is used to read the executable instructions from the memory and execute the executable instructions to implement the DPU network card hardware flow table unloading method described in any one of claims 1 to 7.

10. A non-volatile computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by the processor, the processor implements the DPU network card hardware flow table unloading method described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Flow table unloading method and device

    CN116339857A

  • Data processing method, device and system, readable storage medium and imported network card

    CN116545978A

  • Method for packet data processing using multi layer caching strategy and electronic device for supporting the same

    KR102420610B1

  • Common parser-deparser for libraries of packet-processing programs

    US20240037429A1