CN116668375B - Message distribution method, device, network equipment and storage medium - Google Patents

Message distribution method, device, network equipment and storage medium Download PDF

Info

Publication number
CN116668375B
CN116668375B CN202310957392.XA CN202310957392A CN116668375B CN 116668375 B CN116668375 B CN 116668375B CN 202310957392 A CN202310957392 A CN 202310957392A CN 116668375 B CN116668375 B CN 116668375B
Authority
CN
China
Prior art keywords
message
target
network card
original
message type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310957392.XA
Other languages
Chinese (zh)
Other versions
CN116668375A (en
Inventor
刘生根
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN202310957392.XA priority Critical patent/CN116668375B/en
Publication of CN116668375A publication Critical patent/CN116668375A/en
Application granted granted Critical
Publication of CN116668375B publication Critical patent/CN116668375B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

The embodiment of the application provides a message distribution method, a device, network equipment and a storage medium, which relate to the technical field of communication, wherein the network equipment comprises an IO interface, a programmable logic device, a network card and a plurality of CPU cores, the programmable logic device is connected between the network card and the IO interface, and the CPU cores are connected with the network card, and the method comprises the following steps: the programmable logic device receives an original message through an IO interface; identifying the original message to obtain a target message type of the original message; encapsulating the target message type in an original message to obtain a target message; and sending the target message to the network card. The network card determines a target receiving queue corresponding to the target message type according to the mapping relation between the pre-stored message type and the receiving queue, and stores the target message into the target receiving queue. By applying the scheme provided by the embodiment of the application, the flexibility of message distribution can be improved.

Description

Message distribution method, device, network equipment and storage medium
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method, an apparatus, a network device, and a storage medium for packet splitting.
Background
In order to improve the performance of processing network data streams, the network device mostly adopts a multi-core CPU (Central Processing Unit ) to process the data streams, and the data streams are equally divided into a plurality of CPU cores through a load sharing strategy, so that the forwarding performance and the network throughput are improved in a concurrent processing mode. In the network equipment, the basis of the concurrent processing of the data streams by a plurality of CPU cores is the hardware shunting function provided by the existing various network cards, after the data streams enter the network cards, the network cards analyze the message frames according to the preset message identification flow, extract the message information in the message frames, and distribute the messages to one receiving queue of the hardware according to a certain algorithm to shunt the messages. However, the message identification types supported by the network card are limited, and various messages cannot be flexibly split.
Disclosure of Invention
The embodiment of the application aims to provide a message distribution method, a device, network equipment and a storage medium, so as to improve the flexibility of message distribution. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present application provides a method for packet splitting, which is applied to a programmable logic device in a network device, where the network device further includes an Input/Output (IO) interface and a network card, and the programmable logic device is connected between the network card and the IO interface; the method comprises the following steps:
Receiving an original message through the IO interface;
identifying the original message to obtain a target message type of the original message;
encapsulating the target message type in the original message to obtain a target message;
and sending the target message to the network card, so that the network card determines a target receiving queue corresponding to the target message type according to the mapping relation between the pre-stored message type and the receiving queue, and stores the target message into the target receiving queue.
In some embodiments, the step of identifying the original message to obtain the target message type of the original message includes:
identifying the original message to obtain an original message type of the original message;
if the original message type indicates that the original message is a high-priority message, determining that a preset message type is a target message type of the original message;
if the original message type indicates that the original message is a common priority message, determining a target message type of the original message according to the message information of the original message.
In some embodiments, the step of determining the target message type of the original message according to the message information of the original message includes:
Calculating a hash value of the message information of the original message;
and extracting a value of a designated position in the hash value to serve as a target message type of the original message.
In some embodiments, the step of encapsulating the target packet type in the original packet to obtain a target packet includes:
adding a message type field in the original message, wherein the position of the message type field is the position identified by the hardware shunting function of the network card;
and encapsulating the target message type in the message type field.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC (Cyclic Redundancy Check ) value carried by the original message is the same as the CRC value carried by the target message; the frame checksum function of the network card is closed;
before encapsulating the target message type in the original message, the method further comprises:
and carrying out CRC on the original message according to the CRC value carried by the original message.
In a second aspect, an embodiment of the present application provides a packet splitting method, which is applied to a network card in a network device, where the network device further includes an IO interface and a programmable logic device, where the programmable logic device is connected between the network card and the IO interface; the method comprises the following steps:
Receiving a target message sent by the programmable logic device, wherein the target message is a message obtained by the programmable logic device according to the method of the first aspect, and the target message carries a target message type;
determining a target receiving queue corresponding to the target message type according to a mapping relation between the pre-stored message type and the receiving queue;
and storing the target message to the target receiving queue.
In some embodiments, the target message includes a message type field for populating the target message type;
and the position of the message type field is the position identified by the hardware shunting function of the network card.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the target packet is the same as the CRC value carried by the original packet; and the frame checksum function of the network card is closed.
In a third aspect, an embodiment of the present application provides a method for packet splitting, which is applied to a CPU core in a network device, where the network device further includes a programmable logic device, an IO interface, and a network card, where the programmable logic device is connected between the network card and the IO interface, and the CPU core is connected with the network card; the method comprises the following steps:
Reading a target message stored in a receiving queue by the network card from the receiving queue bound by the CPU core, wherein the target message is obtained by the programmable logic device according to the method of the first aspect, and the target message carries a target message type;
stripping the target message type in the target message to obtain an original message;
and processing the original message according to the processing rule corresponding to the original message.
In some embodiments, the CPU core binds a plurality of receive queues;
the step of reading the target message stored in the receiving queue by the network card from the receiving queue bound by the CPU core comprises the following steps:
and using a time round algorithm to read target messages stored in the plurality of receiving queues by the network card from the plurality of receiving queues.
In some embodiments, the target message includes a message type field for populating the target message type;
the position of the message type field is the position identified by the hardware shunting function of the network card;
the step of stripping the target message type in the target message to obtain an original message comprises the following steps:
Stripping the message type field in the target message to obtain an original message.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the target packet is the same as the CRC value carried by the original packet; and the frame checksum function of the network card is closed.
In a fourth aspect, an embodiment of the present application provides a packet splitting apparatus, which is applied to a programmable logic device in a network device, where the network device further includes an IO interface and a network card, and the programmable logic device is connected between the network card and the IO interface; the device comprises:
the first receiving module is used for receiving the original message through the IO interface;
the identification module is used for identifying the original message to obtain a target message type of the original message;
the encapsulation module is used for encapsulating the target message type in the original message to obtain a target message;
and the sending module is used for sending the target message to the network card so that the network card can determine a target receiving queue corresponding to the target message type according to the mapping relation between the pre-stored message type and the receiving queue, and store the target message into the target receiving queue.
In some embodiments, the identification module is specifically configured to:
identifying the original message to obtain an original message type of the original message;
if the original message type indicates that the original message is a high-priority message, determining that a preset message type is a target message type of the original message;
if the original message type indicates that the original message is a common priority message, determining a target message type of the original message according to the message information of the original message.
In some embodiments, the identification module is specifically configured to:
calculating a hash value of the message information of the original message;
and extracting a value of a designated position in the hash value to serve as a target message type of the original message.
In some embodiments, the packaging module is specifically configured to:
adding a message type field in the original message, wherein the position of the message type field is the position identified by the hardware shunting function of the network card;
and encapsulating the target message type in the message type field.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the original packet is the same as the CRC value carried by the target packet; the frame checksum function of the network card is closed; the identification module is further configured to:
and carrying out CRC on the original message according to the CRC value carried by the original message.
In a fifth aspect, an embodiment of the present application provides a packet splitting apparatus, which is applied to a network card in a network device, where the network device further includes an IO interface and a programmable logic device, where the programmable logic device is connected between the network card and the IO interface; the device comprises:
the second receiving module is configured to receive a target message sent by the programmable logic device, where the target message is a message obtained by the programmable logic device according to the apparatus of the fourth aspect, and the target message carries a target message type;
the determining module is used for determining a target receiving queue corresponding to the target message type according to the mapping relation between the pre-stored message type and the receiving queue;
and the storage module is used for storing the target message to the target receiving queue.
In some embodiments, the target message includes a message type field for populating the target message type; and the position of the message type field is the position identified by the hardware shunting function of the network card.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the target packet is the same as the CRC value carried by the original packet; and the frame checksum function of the network card is closed.
In a sixth aspect, an embodiment of the present application provides a packet splitting apparatus, which is applied to a CPU core in a network device, where the network device further includes a programmable logic device, an IO interface, and a network card, where the programmable logic device is connected between the network card and the IO interface, and the CPU core is connected with the network card; the device comprises:
the reading module is used for reading a target message which is stored in the receiving queue by the network card from the receiving queue bound by the CPU core, wherein the target message is obtained by the programmable logic device according to the device in the fourth aspect, and the target message carries a target message type;
the stripping module is used for stripping the target message type in the target message to obtain an original message;
and the processing module is used for processing the original message according to the processing rule corresponding to the original message.
In some embodiments, the CPU core binds a plurality of receive queues; the reading module is specifically configured to:
and using a time round algorithm to read target messages stored in the plurality of receiving queues by the network card from the plurality of receiving queues.
In some embodiments, the target message includes a message type field for populating the target message type; the position of the message type field is the position identified by the hardware shunting function of the network card; the stripping module is specifically used for:
stripping the message type field in the target message to obtain an original message.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the target packet is the same as the CRC value carried by the original packet; and the frame checksum function of the network card is closed.
In a seventh aspect, an embodiment of the present application provides a network device, including an IO interface, a programmable logic device, a network card, and a plurality of CPU cores, where the programmable logic device is connected between the network card and the IO interface, and the CPU cores are connected with the network card; the programmable logic device performs the method steps of the first aspect, the network card performs the method steps of the second aspect, and the CPU core performs the method steps of the third aspect.
In an eighth aspect, embodiments of the present application provide a computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the method steps described in the first aspect, or implements the method steps described in the second aspect, or implements the method steps described in the third aspect.
In a further embodiment of the present application, a computer program product comprising instructions is also provided, which when run on a computer causes the computer to perform the method steps described in the first aspect of the above embodiment, or to perform the method steps described in the second aspect of the above embodiment, or to perform the method steps described in the third aspect of the above embodiment.
The embodiment of the application has the beneficial effects that:
in the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
Of course, it is not necessary for any one product or method of practicing the application to achieve all of the advantages set forth above at the same time.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the application, and other embodiments may be obtained according to these drawings to those skilled in the art.
Fig. 1 is a schematic diagram of a first structure of a network device according to an embodiment of the present application;
fig. 2 is a schematic flow chart of a first packet splitting method according to an embodiment of the present application;
fig. 3 is a detailed schematic diagram of step S22 according to an embodiment of the present application;
fig. 4 is a schematic diagram of a message format change in a network device according to an embodiment of the present application;
fig. 5 is a second flow chart of a packet splitting method according to an embodiment of the present application;
fig. 6 is a third flow chart of a packet splitting method according to an embodiment of the present application;
fig. 7 is a schematic diagram of a second structure of a network device according to an embodiment of the present application;
Fig. 8 is a schematic diagram of a first structure of a packet splitting device according to an embodiment of the present application;
fig. 9 is a schematic diagram of a second structure of a packet splitting device according to an embodiment of the present application;
fig. 10 is a schematic diagram of a third structure of a packet splitting device according to an embodiment of the present application;
fig. 11 is a schematic diagram of a third structure of a network device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. Based on the embodiments of the present application, all other embodiments obtained by the person skilled in the art based on the present application are included in the scope of protection of the present application.
In order to improve the performance of processing network data streams, network devices mostly adopt multi-core CPUs, and are intended to uniformly divide a plurality of data streams in a network into a plurality of CPU cores through a load sharing strategy, so that the forwarding performance and the network throughput are improved in a concurrent processing mode. Before the message is processed by the CPU core of the network device, the message must first enter the front-end network card from the network link, and rely on the most critical hardware splitting function of the network card, so that the message can be distributed to each CPU core, i.e. in the network device, the basis of the concurrent processing of the data streams by multiple CPU cores is the hardware splitting function provided by the existing various network cards, such as the RSS (Receive Side Scaling, receiver regulation) hardware splitting function.
The hardware shunt function is: after data flows classified according to message information such as triple information, quintuple information or seven-tuple information enter a network card, the network card analyzes the message according to a preset message identification flow, extracts the message information in the message, takes the message information as an operator, acquires a HASH value according to a certain HASH algorithm, and finally distributes the message to a certain receiving queue of hardware according to the HASH value. Different hash values correspond to different receive queues. The multiple CPU cores at the CPU end can be respectively bound to process different receiving queues, so that the aim of concurrently processing multiple data streams in the network is fulfilled. One CPU core may bind one or more receive queues.
The capability of message identification and analysis is the key of flexible network card distribution. However, when the network card is applied to a traditional fixed network environment, the following three problems are encountered.
1) Because the application scene of the network card is fixed initially, a plurality of network cards are faced to a server and a data center, and the supported message identification types are limited. For example, except for IPv4 (Internet Protocol version, fourth version of internet protocol), IPv6 (Internet Protocol version, sixth version of internet protocol), TCP (Transmission Control Protocol ), UDP (User Datagram Protocol, user datagram protocol), messages with up to two layers of VLAN (Virtual Local Area Network ) and common GRE (Generic Routing Encapsulation, generic routing encapsulation) tunnel messages, common message types in other fixed networks, such as MPLS (Multiprotocol Label Switching, multiprotocol label switching technology) messages, VXLAN (Virtual eXtensible Local Area Network, virtual extended local area network) tunnel inner layer messages, etc., cannot be identified by the network card, and these messages cannot be split normally.
2) In addition to the function of splitting, it is also important that the message identification prevents the loss of high priority messages in the receiving direction. For example, for common protocol messages: BFD (Bidirectional Forwarding Detection ) messages, OSPF (Open Shortest Path First, open shortest path first) messages, BGP (Border Gateway Protocol ) messages and the like, the CPU side needs to provide high-priority resource guarantees, including memory resources, time slice resources and the like, so that the smoothness of the protocol messages can be ensured when network congestion occurs, which is very important for improving network stability and guaranteeing QoS (Quality of Service ) of high-priority services. The current universal network card does not support the identification of the protocol messages, and can not ensure that the protocol messages are processed with high priority on the physical link layer and the CPU side.
3) The distributed architecture device comprises a plurality of main control boards and a plurality of forwarding boards, wherein message interaction is required between the plurality of main control boards and the plurality of forwarding boards, and the messages comprise key heartbeat messages, device management synchronous messages, routing synchronous messages and the like, and the messages are required to be guaranteed with high priority. The formats of the messages are more various, and the messages can be in a private and self-defined message format of the equipment manufacturer, so that the network card can not identify the messages and can not shunt the messages.
The three problems put forward more flexible and complex requirements on the message identification capability and the shunting capability of the network card. In order to improve the capability of message splitting, the prior art proposes two schemes for message splitting.
Scheme 1, adopt the hardware coprocessor in CPU to carry on the scheme of the packet and shunted. The hardware coprocessor is integrated in the CPU, can be used for customizing and specifying the message protocol type by a user, even customizing and identifying certain message fields, such as MAC (Media Access Control ) addresses, fixed offset fields and the like, and distributing the messages to a specified receiving queue, thereby providing a more flexible message distribution function. However, the hardware coprocessor cannot be separately used from the hardware, which means that if the flexible message identification and distribution functions are to be realized, only a CPU integrated with the hardware coprocessor can be used, which forms a brake for using a lower-cost CPU or iterating some devices which have to integrate network cards.
Scheme 2, the scheme of packet splitting by adopting an independent CPU core. When one CPU core is used alone to make the shunting function, the message shunting and processing process in the network equipment is changed from the network card to the CPU data core to the network card to the CPU message receiving core, and then from the CPU message receiving core to each CPU data core. On the CPU message receiving core, the message from the network card is identified and processed on the software, so that the requirements of message identification and distribution can be met. However, dividing a physical core alone wastes valuable CPU physical core resources, and for a device having only two cores, a general forwarding model is a control core and a forwarding core, and at this time, a packet receiving core for packet splitting cannot be reserved alone, which results in limited application scenarios of the technical scheme. And the processing flow of the CPU message receiving core is greatly different from the processing flow of other CPU data cores, so that the common instruction cache can be polluted with high probability. In addition, the message flows among the CPU cores, but is not processed on a single CPU core all the time, so that inter-core communication overhead and data cache deletion overhead are brought, the forwarding performance of the network equipment is lowered as a whole, and more serious performance loss is caused.
In order to improve flexibility of packet splitting, an embodiment of the present application provides a network device, as shown in fig. 1, where the network device includes: the IO interface 11, the programmable logic device 12, the network card 13, a plurality of CPU cores 14, a memory 15 and other hardware 16, wherein the programmable logic device 12 is connected between the network card 13 and the IO interface 11, the CPU cores 14 are connected with the network card 13, the CPU cores 14 can be also connected with the memory 15 and other hardware 16, and the other hardware 16 can comprise a power supply system, a hardware buffer and the like. The network device may be a switch, a router, or the like, and the programmable logic device may be a CPLD (Complex Programmable Logic Device ), an FPGA (Field Programmable Gate Array, field programmable gate array), or the like, and the network card may be any general network card, where the type and model of the network device, the programmable logic device, the network card, and the CPU core used are not limited. The network device in fig. 1 and the functional units included in the network device are only examples, and the internal structure of the network device is not limited herein.
Based on the network device, the embodiment of the application provides a message distribution method, in the method, the network device receives an original message through an IO interface, and identifies the original message in a programmable logic device to obtain a target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
The following describes the message splitting method provided by the embodiment of the present application in detail through a specific embodiment.
Referring to fig. 2, a first flow chart of the packet splitting method provided by the embodiment of the application is applied to a programmable logic device in a network device, and as shown in fig. 1, the network device further includes an IO interface and a network card, and the programmable logic device is connected between the network card and the IO interface. The message splitting method comprises the following steps:
step S21, receiving an original message through an IO interface.
In the embodiment of the application, the original message can be any message in the data stream. And after the IO interface receives the original message from the network, the original message is uploaded to the programmable logic device. Further, the programmable logic device receives the original message.
Step S22, the original message is identified, and the target message type of the original message is obtained.
In the embodiment of the present application, the target message type is the message type of the original message, and the message type may be expressed as 0x0000, 0x0001, 0x000F, etc., and the expression form of the message type is not limited herein. The programmable logic device supports flexible rule configuration, so that the programmable logic device can identify any received original message based on flexible configuration to obtain the message type of the original message, namely the target message type.
For example, the programmable logic device may support the identification of common types of messages such as IPv4 messages, TCP messages, MPLS messages, etc., may support the identification of protocol messages such as BFD messages, OSPF messages, BGP messages, etc. for the conventional fixed network, and may further add corresponding identification entries in the programmable logic device through configuration of a user or a manufacturer, so as to identify custom messages such as heartbeat messages, device management synchronization message messages, etc., where the messages that may be identified by the programmable logic device are not limited. The programmable logic device can identify the original message according to the protocol type information, the specific field information and the like in the original message, and the identification mode is not limited.
Step S23, the target message type is encapsulated in the original message, and the target message is obtained.
In the embodiment of the application, after the programmable logic device determines the type of the target message, the type of the target message is encapsulated in the original message, and the encapsulated message is the target message.
In some embodiments, after receiving the original message and before encapsulating the target message type in the original message, the programmable logic device performs CRC on the original message according to the CRC value carried by the original message, so as to check the original message, ensure the accuracy of the original message, and make the cyclic redundancy detection result not affected by the target message type. In addition, the CRC value carried by the target message is not changed in the process of packaging the target message type in the original message by the programmable logic device, and the obtained CRC value carried by the target message is the same as the CRC value carried by the original message. In the network card, since the target message type is already encapsulated in the target message, the CRC is not required to be performed on the target message, and the Frame Check Sum (FCS) function of the network card is turned off.
Step S24, the target message is sent to the network card, so that the network card determines a target receiving queue corresponding to the target message type according to the mapping relation between the pre-stored message type and the receiving queue, and the target message is stored in the target receiving queue.
In the embodiment of the application, one receiving queue is bound to one CPU core, and one or more receiving queues can be bound to one CPU core. For a receive queue, the CPU core bound to the receive queue processes the messages stored to the receive queue. The network card stores the mapping relation between the message type and the receiving queue in advance, for example, if the message type is 0x0000, the corresponding receiving queue is queue 0, and if the message type is 0x0001, the corresponding receiving queue is queue 1, and the mapping relation is only an example and is not limited.
The network card receives the target message carrying the target message type, extracts the target message type in the target message, and further determines a receiving queue corresponding to the target message type, namely a target receiving queue according to the mapping relation between the prestored message type and the receiving queue. The network card stores the target message in the target receive queue, for example, DMA (Direct Memory Access ) may be used to store the target message in the target receive queue, and the manner in which the target message is stored in the receive queue is not limited.
After the network card stores the target message into the target receiving queue, the CPU core bound with the target receiving queue reads and processes the target message stored into the target receiving queue. Before processing the target message, the CPU core strips the target message type from the target message, restores the target message to an original message, and processes the original message, such as CRC (cyclic redundancy check) and the like, according to a processing rule corresponding to the original message, so that the influence of the target message type on message processing is avoided. The subsequent message processing flow does not need to be changed.
In the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
In addition, the embodiment of the application provides a message distribution method with universality, and different messages can be stored in different receiving queues by combining the message identification function of a programmable logic device, the hardware distribution function of a network card and the cooperation of a CPU (central processing unit) end, and different CPU cores are adopted for processing, so that the message hardware distribution function is more flexible and perfect, more and more flexible message formats and message field expansion can be provided according to the actual network environment of network equipment, the active identification requirements of various network equipment on specific messages and specific fields are met, and the concurrent multi-stream processing function is realized. In addition, the adoption of the programmable logic device does not influence the operation of other functional units in the network equipment.
In some embodiments, referring to fig. 3, a detailed schematic diagram of step S22 is provided in an embodiment of the present application. The step S22 may include the following steps S31 to S33.
Step S31, the original message is identified, and the original message type of the original message is obtained.
In the embodiment of the present application, the original message type is a type to which the message belongs, for example, the original message type may include a type that can be identified by a programmable logic device such as an IPv4 message, a TCP message, an MPLS message, a BFD message, an OSPF message, a BGP message, a custom message, and the like. The programmable logic device can identify the original message, determine the type of the original message, and obtain the original message type of the original message.
The corresponding relation between the original message type and the priority is prestored in the programmable logic device. The user can flexibly set the corresponding relation according to the actual application scenario of the network device, for example, the original message types of data messages such as an IPv4 message, an IPv6 message, a TCP message and the like can be set to correspond to the common priority, and the original message types of protocol messages such as an ARP (Address Resolution Protocol ) message, an LLDP (Link Layer Discovery Protocol, link layer discovery protocol) message, an ND (Neighbor Discovery ) message, a BFD message, an ISIS (Intermediate System-to-Intermediate System, an intermediate system to intermediate system) message, an RIP (Routing Information Protocol ) message, an OSPF message, a BGP message and the like can be set to correspond to the high priority. In a specific environment, the protocol messages such as the BFD message, the OSPF message and the like do not need to be designated as high-priority messages, and the original message types of the protocol messages can correspond to the common priority, so that the corresponding relationship between the original message types and the priorities is not limited.
The programmable logic device can determine the priority of the original message according to the original message type of the original message and the corresponding relation between the original message type and the priority, and then determine the target message type according to the priority of the original message. If the original message type of the original message indicates that the original message is a high priority message, the programmable logic device executes step S32; if the original message type of the original message indicates that the original message is a common priority message, the programmable logic device executes step S33.
Step S32, determining the preset message type as the target message type of the original message.
In the embodiment of the application, the message type of the high-priority message, namely the preset message type, can be stored in the programmable logic device in advance. When the original message is a high-priority message, the programmable logic device determines that the preset message type is a target message type. The receiving queue corresponding to the preset message type is a receiving queue with high priority, and a resource guarantee with high priority can be obtained at the CPU side, for example, under the condition that an idle CPU core exists, the receiving queue with high priority can be bound to the idle CPU core, so that the high-priority message can be processed more quickly at the CPU side, and the processing mode of the high-priority message is not limited. The preset message type can be 0x000F or other preset values, and the representation form and the value of the preset message type are not limited.
Step S33, determining the target message type of the original message according to the message information of the original message.
In the embodiment of the application, the message information of the original message can be triple information, quintuple information or seven-tuple information and the like, and the content of the message information is not limited. When the original message is a common priority message, the programmable logic device can extract the message information of the original message and determine the type of the target message according to the message information.
For example, the correspondence between the message information and the message type is stored in the programmable logic device in advance. And the programmable logic device determines a target message type corresponding to the message information of the original message according to the corresponding relation between the pre-stored message information and the message type.
In some embodiments, in the case where the original message is a normal priority message, the programmable logic device may determine the target message type by: calculating a hash value of message information of an original message; and extracting a value of a designated position in the hash value to serve as a target message type of the original message.
The programmable logic device extracts the message information of the original message, calculates the hash value of the message information of the original message based on a hash algorithm or other algorithms, extracts the value of the designated position from the calculated hash value, for example, the designated position may be 2 bits lower, the programmable logic device may extract the value of 2 bits lower of the hash value, map to the target message type, and the range of the target message type may be 0x0000 to 0x0003. The designated position may be other positions, such as a high or low preset bit number, and the designated position and the preset bit number may be determined by the user according to the actual requirement, which is not limited.
In the embodiment of the application, the programmable logic device can also take the calculated whole hash value as the target message type of the original message, which is not limited.
The hash value is adopted to determine the target message type, so that the message type is convenient to normalize, the corresponding relation between the message type and the receiving queue in the network card is flexibly configured, and the flexibility of message splitting is improved.
By applying the scheme provided by the embodiment of the application, the corresponding relation between the type and the priority of the original message is flexibly configured based on the actual application scene, so that the programmable logic device can determine the priority of the original message according to the type of the original message, and further determine the target message type of the original message. For a high-priority message, determining a preset message type as a target message type; for common priority messages, determining target message types according to message information, determining different target message types for messages of different original message types, and further storing the messages of different original message types into different receiving queues to meet customizable priority guarantee of the messages of each type.
In some embodiments, the programmable logic device may encapsulate the target message type in the original message by: adding a message type field in the original message, wherein the position of the message type field is the position identified by the hardware shunting function of the network card; and encapsulating the target message type in a message type field.
In the embodiment of the application, the hardware shunting function of the network card can identify the field at a specific position. The programmable logic device can add a message type field in a specific position of an original message, and fill a target message type in the message type field to obtain a target message, so that the network card can identify the message type field in the specific position of the target message through a hardware shunting function, the target message type is extracted, and the identification efficiency of the target message type is improved. In addition, the programmable logic device encapsulates the target message type in the message type field, so that the content of other fields in the target message is the same as that of the original message, and the accuracy of subsequent message processing is ensured.
In some embodiments, the hardware offload function adjusts the offload function for the receiving end, with the message type field preceding the ethernet type field of the original message. When the position of the message Type field in the target message is the same as the position of the Ethernet Type field in the original message, and the length of the message Type field is the same as the Ethernet Type field, the receiving end adjusting and splitting function of the network card can analyze and identify the message Type field by adopting a second layer of Ethernet Type Filter (L2 Ether-Type Filter) to obtain the target message Type. Referring to fig. 4, a schematic diagram of a message format change in a network device according to an embodiment of the present application is shown. Taking the example that the network device includes the IO interface 41, the programmable logic device 42, the network card 43 and the CPU core 44, the original message includes a source address field, a destination address field, an ethernet type field and a load, the fields included in the original message are not limited herein. The length of each field in fig. 4 is only an example and does not represent the actual length of each field. Specifically, the method can be divided into the following three stages.
Stage 1, the programmable logic device receives the original message through the IO interface (wire network). The original message includes the following fields:
a Source Address (SA) with a length of 6 bytes is used to fill the Source Address of the original message.
Destination address (Destination Address, DA) of 6 bytes in length for filling the destination address of the original message.
An Ethernet Type (Ethernet Type) of length 2 bytes for specifying the Type of protocol to be applied to the payload (data frame).
And a Payload (Payload), which is a data frame in the original message and is used for storing the effective data in the original message.
And 2, the programmable logic device encapsulates the target message type in the original message to obtain a target message, and sends the target message to the network card. The target message includes the following fields:
the source address is the same as the source address field in the original message.
The destination address is the same as the destination address field in the original message.
The message type is 2 bytes long and is the same as the Ethernet type field in length and is used for encapsulating the target message type.
The ethernet type is the same as the ethernet type field in the original message.
The load is the same as in the original message.
The programmable logic device adds the message type field to the position of the Ethernet type field of the original message, the contents of the Ethernet type field and the load of the original message are unchanged, and the message is sequentially connected behind the message type field, and at the moment, the length of the message is increased by 2 bytes.
And 3, the network card sends the target message to the CPU core bound with the target receiving queue. Before processing the message, the CPU core needs to strip the message type field in the target message, and the obtained message is the same as the original message, as shown in fig. 4.
In the embodiment of the application, the message type field can be positioned at other positions of the original message, and the receiving end adjusting and shunting function of the corresponding network card adopts other filters to identify the message type field, so that the length and the position of the message type field are not limited.
By applying the scheme provided by the embodiment of the application, the programmable logic device can package the message type field to the appointed position, for example, before the Ethernet type field of the original message, and the hardware shunting function of the corresponding network card, namely the receiving end adjusting shunting function adopts the corresponding filter to identify the message type field, so that the packaged message type field can be identified, and the message type field can be flexibly packaged and identified.
Corresponding to the above-mentioned packet splitting method, the embodiment of the present application further provides a packet splitting method, referring to fig. 5, which is a second flow diagram of the packet splitting method provided in the embodiment of the present application, where the second flow diagram is applied to a network card in a network device, and the network device further includes an IO interface and a programmable logic device, where the programmable logic device is connected between the network card and the IO interface, and specifically, reference may be made to the description related to the packet splitting method applied to the programmable logic device. The message distribution method comprises the following steps:
step S51, receiving a target message sent by the programmable logic device, wherein the target message is a message obtained by the programmable logic device according to any message splitting method, and the target message carries a target message type.
In the embodiment of the present application, the network card receives the target message carrying the target message type and sent by the programmable logic device, and specifically, see the description related to the target message obtained in the step S21-step S23.
Step S52, determining a target receiving queue corresponding to the target message type according to the mapping relation between the pre-stored message type and the receiving queue.
Step S53, storing the target message in the target receiving queue.
In the embodiment of the application, the network card determines a receiving queue corresponding to the type of the target message, namely a target receiving queue according to the mapping relation between the type of the pre-stored message and the receiving queue, and stores the target message into the target receiving queue. See for details the description of step S24 above.
In the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
In some embodiments, the CRC value carried by the target message is the same as the CRC value carried by the original message; the frame checksum function of the network card is turned off, and the above description of step S23 is specifically referred to.
In some embodiments, the target message includes a message type field for populating the target message type; the position of the message type field is the position identified by the hardware shunting function of the network card. The programmable logic device encapsulates the target message type by adopting the message type field, and the network card identifies the message type field at a specific position based on the hardware shunting function and extracts the target message type, and the specific description about the message type field can be seen.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet, and the location of the packet type field and the receiver adjusting splitting function of the network card are not limited herein, and can be specifically described with reference to fig. 4.
Corresponding to the above-mentioned packet splitting method, the embodiment of the present application further provides a packet splitting method, referring to fig. 6, which is a third flow schematic diagram of the packet splitting method provided by the embodiment of the present application, applied to a CPU core in a network device, where the network device further includes a programmable logic device, an IO interface, and a network card, the programmable logic device is connected between the network card and the IO interface, and the CPU core is connected with the network card, and specifically, referring to the above-mentioned related description in the packet splitting method applied to the programmable logic device. The message distribution method comprises the following steps:
Step S61, reading the target message stored in the receiving queue by the network card from the receiving queue bound by the CPU core, wherein the target message is a message obtained by the programmable logic device according to any message splitting method, and the target message carries the type of the target message.
Step S62, stripping the target message type in the target message to obtain the original message.
Step S63, processing the original message according to the processing rule corresponding to the original message.
In the embodiment of the application, for each receiving queue in the network card, a CPU core bound with the receiving queue is adopted to process the target message stored in the receiving queue. Because the target message carries the target message type, before the CPU core processes, the target message type needs to be stripped from the target message to obtain an original message corresponding to the target message, where the original message is the same as the original message received from the IO interface in step S21. And the CPU core processes the original message according to the processing rule corresponding to the original message and the original message processing flow.
The processing rules can be set according to actual requirements. For example, the processing rule may be to perform CRC processing, to perform deep packet inspection, and the like.
In the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
In addition, in the process of processing the target message in the receiving queue by the CPU core, firstly stripping the target message type in the target message, restoring the target message into an original message, and processing the original message by adopting a processing rule corresponding to the original message so as to avoid the influence of the insertion of the target message type on the message processing.
In some embodiments, in the case where one CPU core binds a plurality of receive queues, the above step S61 may be implemented by: and using a time round algorithm to read target messages stored in the plurality of receiving queues by the network card from the plurality of receiving queues. Multiple receive queues may be bound to the CPU core at the same time, and the priorities of the multiple receive queues may be the same or different. The CPU core adopts a time round algorithm to read target messages of a plurality of receiving queues for processing. The time wheel algorithm used is as follows:
two receive queues (queue 0 and queue 1) are bound to a CPU core, including a high priority receive queue (queue 0) and a normal priority receive queue (queue 1) are illustrated and not limiting. The CPU can set a status flag bit for each receiving queue to indicate whether the receiving queue stores the message or not, if the status flag bit is 1, the CPU indicates that the receiving queue stores the message, i.e. the message is to be processed; when the status flag bit is 0, it indicates that there is no message in the receiving queue, that is, there is no message to be processed, and the indication mode of whether there is a message stored in the receiving queue and the value of the status flag bit are not limited. The CPU core firstly detects the status flag bit of the receiving queue (queue 0) with high priority, and if the message is stored in the queue 0, the CPU core preferentially processes the message in the queue 0 until no message exists in the queue 0.
When the CPU core detects that no message exists in the queue 0, the CPU core detects a status flag bit of a receiving queue (queue 1) with common priority, and if the message is stored in the queue 1, the message in the queue 1 is processed. And detecting the status flag bit of the queue 0 (high-priority receiving queue) once every preset number of messages in the processing queue 1, and if the messages stored in the queue 0 are detected, preferentially processing the messages in the queue 0. The preset number may be 1, that is, 1 message in the receiving queue of the normal priority is processed, and the status flag bit of the receiving queue of the high priority is detected once. The number of the preset number is not limited.
By applying the scheme provided by the embodiment of the application, the CPU core adopts a time round algorithm to process the target messages in the plurality of receiving queues bound to the CPU core, so that the CPU core can process the target messages in the plurality of receiving queues in turn, ensure the processing priority of the messages in the receiving queues with high priority and realize the functions of flow distribution enhancement and priority guarantee from bottom to top.
In some embodiments, the CRC value carried by the target message is the same as the CRC value carried by the original message; the frame checksum function of the network card is turned off, and the above description of step S23 is specifically referred to.
In some embodiments, the target message includes a message type field for populating the target message type; the location of the message type field is the location identified by the hardware splitting function of the network card, and particularly, reference may be made to the above description about the message type field. In the case where the programmable logic device encapsulates the target message type with the message type field, the CPU core may implement step S62 by: stripping the message type field in the target message to obtain the original message. The CPU core strips the message type field from the target message, and other fields are unchanged, so that the target message type in the target message is stripped, and the original message is obtained.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet, and the location of the packet type field and the receiver adjusting splitting function of the network card are not limited herein, and can be specifically described with reference to fig. 4.
Referring to fig. 7, a second structural schematic diagram of a network device according to an embodiment of the present application is provided, where the network device includes an IO interface 71, a programmable logic device 72, a network card 73, a CPU74, a memory 75, and other hardware 76. Taking a CPU including a plurality of CPU cores, such as CPU0, CPU1, CPU2 and CPU3, a receiving queue in the network card includes a queue 0, a queue 1, a queue 2, a queue 3 and a queue 4, where CPU0 is bound to queue 0 and queue 1, CPU1 is bound to queue 2, CPU2 is bound to queue 3 and CPU3 is bound to queue 4, and queue 0 is a receiving queue with a high priority, which is illustrated and not limiting.
The programmable logic device 72 receives an original message from the IO interface 71, processes the original message through three modules, wherein the message identification module is used for identifying the original message, the shunting module and the message type mapping and processing module are used for determining a target message type, and encapsulates the target message type in the original message to obtain a target message, and sends the target message to the network card 73. The network card 73 receives the target message sent by the programmable logic device 72, stores the received target message into different receiving queues through a hardware shunting function, and uploads the message stored in each receiving queue to the CPU core in the CPU74 bound by each receiving queue for processing.
By applying the scheme provided by the embodiment of the application, the enhanced distribution function is realized based on the existing universal network card and the programmable logic device, and the enhanced distribution function can realize the identification of more types of messages of the network, such as common priority messages and high priority messages. For identifiable high-priority messages, the second-layer Ethernet type filter function of the universal network card can be used for mapping to a designated high-priority receiving queue, and the priority distribution of the high-priority messages in the receiving direction based on the universal network card is realized by combining the software high-priority processing of the CPU side. For the common priority message, the programmable logic device can calculate and obtain the hash value according to the message information, such as five-tuple information, to map to the target message type and then map to the receiving queue of the network card, so that the RSS shunting function of the original network card is realized, and the two-stage mapping also provides a more controllable and flexible shunting scheme. In hardware, only a low-cost programmable logic device is needed to be added, and the network card can be enhanced by being arranged between the network card and a physical port (IO interface), so that the very flexible customization of message distribution and identification can be supported, and the network card can be widely applied to scenes such as inter-board communication in network and network equipment manufacturers.
In the technical scheme provided by the embodiment of the application, the key for realizing the enhancement of the shunt capability is the matching of the programmable logic device and the existing shunt function of the network card. On the premise that the programmable logic device can identify each type of message, two-stage normalized mapping from the message to the receiving queue in the network card is completed. The first level is the mapping of net messages to message types, such as the mapping of normal priority messages to 0x0000 to 0x0003 and the mapping of high priority messages to 0x000F mentioned above; the second level is the mapping between the message type and the receiving queue, such as the second layer ethernet type filter of the network card, and the mapping between the message type and the receiving queue configured by the user is very flexible.
On the premise of discarding the RSS shunting function limited by the network card, combining the message identification function of the programmable logic device with the hardware shunting function of the network card, and inserting a 2-byte message type field into the original message to complete the expansion of the shunting function. When the CPU side processes, the 2-byte message type field is stripped. The life cycle of the field only exists on the programmable logic device and the network card, and the processing of the business layer of the original message frame is not affected at all, so that the field is a general shunting technical scheme. The hardware shunting functions of various network cards may be different, and are not limited to the second layer ethernet type filter function, so that the method for inserting the message type field can also be changed according to the different hardware shunting functions of the network cards, and the length and the inserting position of the network cards can be adapted according to the hardware shunting requirements.
In addition, the shunt enhancement method realized by the embodiment of the application has the greatest advantage that the shunt enhancement method can be flexibly customized according to the actual application scene of the network equipment. The programmable logic device can specify the corresponding relation between the original message type and the priority of the message according to the actual application scene of the user or the device. For example, it is not necessary to designate a high-priority message for a protocol message such as a BFD message, an OSPF message, etc., and the messages may be quite many in a specific environment and do not need priority, at this time, the messages need to be designated as a common-priority message, and by setting a mapping relationship with a receiving queue and a CPU core, the messages are directed and shunted to the designated receiving queue and the CPU core for processing, so as to maximally meet the actual application requirements. The flexibly configured shunting enhancement method realizes the accurate targeting processing of the designated type of messages, and can universally complete the shunting requirement of the diversification of network equipment.
Corresponding to the above-mentioned message splitting method, the embodiment of the present application further provides a message splitting apparatus, referring to fig. 8, which is a schematic diagram of a first structure of the message splitting apparatus provided by the embodiment of the present application, and is applied to a programmable logic device in a network device, where the network device further includes an IO interface and a network card, and the programmable logic device is connected between the network card and the IO interface; the device comprises:
A first receiving module 81, configured to receive an original packet through the IO interface;
the identifying module 82 is configured to identify the original message, so as to obtain a target message type of the original message;
the encapsulation module 83 is configured to encapsulate the target message type in the original message to obtain a target message;
and the sending module 84 is configured to send the target message to the network card, so that the network card determines a target receiving queue corresponding to the target message type according to a mapping relationship between a pre-stored message type and the receiving queue, and stores the target message in the target receiving queue.
In some embodiments, the identification module 82 is specifically configured to:
identifying the original message to obtain an original message type of the original message;
if the original message type indicates that the original message is a high-priority message, determining that a preset message type is a target message type of the original message;
if the original message type indicates that the original message is a common priority message, determining a target message type of the original message according to the message information of the original message.
In some embodiments, the identification module 82 is specifically configured to:
Calculating a hash value of the message information of the original message;
and extracting a value of a designated position in the hash value to serve as a target message type of the original message.
In some embodiments, the encapsulation module 83 is specifically configured to:
adding a message type field in the original message, wherein the position of the message type field is the position identified by the hardware shunting function of the network card;
and encapsulating the target message type in the message type field.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the original packet is the same as the CRC value carried by the target packet; the frame checksum function of the network card is closed; the identification module 82 is further configured to:
and carrying out CRC on the original message according to the CRC value carried by the original message.
In the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
Corresponding to the above-mentioned packet splitting method, the embodiment of the present application further provides a packet splitting device, referring to fig. 9, which is a schematic diagram of a second structure of the packet splitting device provided in the embodiment of the present application, and is applied to a network card in a network device, where the network device further includes an IO interface and a programmable logic device, and the programmable logic device is connected between the network card and the IO interface; the device comprises:
a second receiving module 91, configured to receive a target message sent by the programmable logic device, where the target message is obtained by the programmable logic device according to any one of the foregoing message splitting devices, and the target message carries a target message type;
a determining module 92, configured to determine a target receiving queue corresponding to the target message type according to a mapping relationship between a pre-stored message type and the receiving queue;
and a storage module 93, configured to store the target packet into the target receive queue.
In some embodiments, the target message includes a message type field for populating the target message type; and the position of the message type field is the position identified by the hardware shunting function of the network card.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the target packet is the same as the CRC value carried by the original packet; and the frame checksum function of the network card is closed.
In the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
Corresponding to the above-mentioned packet splitting method, the embodiment of the present application further provides a packet splitting device, referring to fig. 10, which is a schematic diagram of a third structure of the packet splitting device provided by the embodiment of the present application, and is applied to a CPU core in a network device, where the network device further includes a programmable logic device, an IO interface, and a network card, where the programmable logic device is connected between the network card and the IO interface, and the CPU core is connected with the network card; the device comprises:
the reading module 101 is configured to read, from a receiving queue bound by the CPU core, a target packet stored in the receiving queue by the network card, where the target packet is obtained by the programmable logic device according to any packet splitting device, and the target packet carries a target packet type;
a stripping module 102, configured to strip the target message type in the target message to obtain an original message;
and the processing module 103 is configured to process the original message according to a processing rule corresponding to the original message.
In some embodiments, the CPU core binds a plurality of receive queues; the reading module 101 is specifically configured to:
and using a time round algorithm to read target messages stored in the plurality of receiving queues by the network card from the plurality of receiving queues.
In some embodiments, the target message includes a message type field for populating the target message type; the position of the message type field is the position identified by the hardware shunting function of the network card; the stripping module 102 is specifically configured to:
stripping the message type field in the target message to obtain an original message.
In some embodiments, the hardware splitting function is a receiver adjusting splitting function, and the packet type field is located before the ethernet type field of the original packet.
In some embodiments, the CRC value carried by the target packet is the same as the CRC value carried by the original packet; and the frame checksum function of the network card is closed.
In the technical scheme provided by the embodiment of the application, the network equipment receives the original message through the IO interface, and identifies the original message in the programmable logic device to obtain the target message type of the original message. And the programmable logic device transmits the identified target message type to the network card by sending the target message carrying the target message type to the network card. Furthermore, the network card adopts the hardware shunting function of the network card to perform normalized mapping of the message type and the receiving queue according to the target message type carried by the target message and the mapping relation between the prestored message type and the receiving queue, determines the target receiving queue corresponding to the target message type, and stores the target message into the target receiving queue to realize message shunting. By applying the technical scheme provided by the embodiment of the application, a programmable logic device is added in the network equipment, a message identification function is sunk into the programmable logic device and combined with a hardware distribution function of the network card, each type of message is directionally distributed to a designated receiving queue based on the identification of the programmable logic device on each type of message, and then a CPU core reads and processes the message stored in the receiving queue bound by the CPU core, so that the distribution and processing of each type of message received from an IO interface are realized, the message distribution is not limited by the message identification type supported by the network card, and the flexibility of the message distribution is improved.
The embodiment of the present application further provides a network device, as shown in fig. 11, including an IO interface 111, a programmable logic device 112, a network card 113, and a plurality of CPU cores 114, where the programmable logic device 112 is connected between the network card 113 and the IO interface 111, the CPU cores 114 are connected with the network card 113, the programmable logic device 112 performs the steps of any packet splitting method applied to the programmable logic device 112, the network card 113 performs the steps of any packet splitting method applied to the network card 113, and the CPU cores 114 perform the steps of any packet splitting method applied to the CPU cores 114.
In still another embodiment of the present application, a computer readable storage medium is provided, where a computer program is stored, where the computer program when executed by a processor implements the steps of any one of the packet splitting methods applied to the programmable logic device, or implements the steps of any one of the packet splitting methods applied to the network card, or implements the steps of any one of the packet splitting methods applied to the CPU core.
In yet another embodiment of the present application, a computer program product containing instructions that, when executed on a computer, cause the computer to perform the steps of any of the packet splitting methods described above that are applied to a programmable logic device, or perform the steps of any of the packet splitting methods described above that are applied to a network card, or implement the steps of any of the packet splitting methods described above that are applied to a CPU core is also provided.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present application, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), etc.
It is noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
In this specification, each embodiment is described in a related manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for an apparatus, network device, computer readable storage medium, computer program product embodiment, the description is relatively simple as it is substantially similar to the method embodiment, where relevant see also part of the description of the method embodiment.
The foregoing description is only of the preferred embodiments of the present application and is not intended to limit the scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application are included in the protection scope of the present application.

Claims (19)

1. The message distribution method is characterized by being applied to a programmable logic device in network equipment, wherein the network equipment also comprises an input/output (IO) interface and a network card, and the programmable logic device is connected between the network card and the IO interface; the method comprises the following steps:
receiving an original message through the IO interface;
identifying the original message to obtain a target message type of the original message;
adding a message type field in the original message, wherein the position of the message type field is the position identified by the hardware shunting function of the network card;
encapsulating the target message type in the message type field to obtain a target message, wherein the content of other fields in the target message is the same as that of the original message;
and sending the target message to the network card, so that the network card identifies the target message type encapsulated in the message type field based on a hardware shunting function, and determines a target receiving queue corresponding to the target message type according to the mapping relation between the prestored message type and the receiving queue, and stores the target message into the target receiving queue.
2. The method of claim 1, wherein the step of identifying the original message to obtain the target message type of the original message comprises:
identifying the original message to obtain an original message type of the original message;
if the original message type indicates that the original message is a high-priority message, determining that a preset message type is a target message type of the original message;
if the original message type indicates that the original message is a common priority message, determining a target message type of the original message according to the message information of the original message.
3. The method according to claim 2, wherein the step of determining the target message type of the original message according to the message information of the original message comprises:
calculating a hash value of the message information of the original message;
and extracting a value of a designated position in the hash value to serve as a target message type of the original message.
4. The method of claim 1, wherein the hardware offload function adjusts offload functions for a receiving end, the message type field being located before an ethernet type field of the original message.
5. The method according to any one of claims 1-4, wherein the cyclic redundancy check, CRC, value carried by the original message is the same as the CRC value carried by the target message; the frame checksum function of the network card is closed;
before encapsulating the target message type in the original message, the method further comprises:
and carrying out CRC on the original message according to the CRC value carried by the original message.
6. The message distribution method is characterized by being applied to a network card in network equipment, wherein the network equipment further comprises an input/output (IO) interface and a programmable logic device, and the programmable logic device is connected between the network card and the IO interface; the method comprises the following steps:
receiving a target message sent by the programmable logic device, wherein the target message is a message obtained by the programmable logic device according to the method of any one of claims 1-5, and the target message carries a target message type;
identifying the target message type encapsulated in the message type field based on a hardware shunting function;
determining a target receiving queue corresponding to the target message type according to a mapping relation between the pre-stored message type and the receiving queue;
And storing the target message to the target receiving queue.
7. The method of claim 6, wherein the target message includes a message type field for populating the target message type;
and the position of the message type field is the position identified by the hardware shunting function of the network card.
8. The method of claim 7, wherein the hardware offload function adjusts offload functions for a receiving end, the message type field being located before an ethernet type field of the original message.
9. The method according to any one of claims 6-8, wherein the cyclic redundancy check, CRC, value carried by the target message is the same as the CRC value carried by the original message; and the frame checksum function of the network card is closed.
10. The message distribution method is characterized by being applied to a Central Processing Unit (CPU) core in network equipment, wherein the network equipment also comprises a programmable logic device, an input/output (IO) interface and a network card, the programmable logic device is connected between the network card and the IO interface, and the CPU core is connected with the network card; the method comprises the following steps:
reading a target message stored in a receiving queue by the network card from the receiving queue bound by the CPU core, wherein the target message is a message obtained by the programmable logic device according to the method of any one of claims 1-5, and the target message carries a target message type;
Stripping the target message type in the target message to obtain an original message;
and processing the original message according to the processing rule corresponding to the original message.
11. The method of claim 10, wherein the CPU core binds a plurality of receive queues;
the step of reading the target message stored in the receiving queue by the network card from the receiving queue bound by the CPU core comprises the following steps:
and using a time round algorithm to read target messages stored in the plurality of receiving queues by the network card from the plurality of receiving queues.
12. The method of claim 10, wherein the target message includes a message type field for populating the target message type;
the position of the message type field is the position identified by the hardware shunting function of the network card;
the step of stripping the target message type in the target message to obtain an original message comprises the following steps:
stripping the message type field in the target message to obtain an original message.
13. The method of claim 11, wherein the hardware offload function adjusts offload functions for a receiving end, the message type field being located before an ethernet type field of the original message.
14. The method according to any one of claims 10-13, wherein the cyclic redundancy check, CRC, value carried by the target message is the same as the CRC value carried by the original message; and the frame checksum function of the network card is closed.
15. The message shunting device is characterized by being applied to a programmable logic device in network equipment, wherein the network equipment further comprises an input/output (IO) interface and a network card, and the programmable logic device is connected between the network card and the IO interface; the device comprises:
the first receiving module is used for receiving the original message through the IO interface;
the identification module is used for identifying the original message to obtain a target message type of the original message;
the encapsulation module is used for adding a message type field into the original message, wherein the position of the message type field is the position identified by the hardware shunting function of the network card; encapsulating the target message type in the message type field to obtain a target message, wherein the content of other fields in the target message is the same as that of the original message;
and the sending module is used for sending the target message to the network card, so that the network card identifies the target message type encapsulated in the message type field based on a hardware shunting function, and determines a target receiving queue corresponding to the target message type according to the mapping relation between the prestored message type and the receiving queue, and stores the target message into the target receiving queue.
16. The message shunting device is characterized by being applied to a network card in network equipment, wherein the network equipment further comprises an input/output (IO) interface and a programmable logic device, and the programmable logic device is connected between the network card and the IO interface; the device comprises:
the second receiving module is configured to receive a target message sent by the programmable logic device, where the target message is a message obtained by the programmable logic device according to the apparatus of claim 15, and the target message carries a target message type;
the determining module is used for identifying the target message type encapsulated in the message type field based on a hardware shunting function; determining a target receiving queue corresponding to the target message type according to a mapping relation between the pre-stored message type and the receiving queue;
and the storage module is used for storing the target message to the target receiving queue.
17. The message shunting device is characterized by being applied to a Central Processing Unit (CPU) core in network equipment, wherein the network equipment further comprises a programmable logic device, an input/output (IO) interface and a network card, the programmable logic device is connected between the network card and the IO interface, and the CPU core is connected with the network card; the device comprises:
The reading module is used for reading a target message stored in the receiving queue by the network card from the receiving queue bound by the CPU core, wherein the target message is a message obtained by the programmable logic device according to the device of claim 15, and the target message carries a target message type;
the stripping module is used for stripping the target message type in the target message to obtain an original message;
and the processing module is used for processing the original message according to the processing rule corresponding to the original message.
18. The network equipment is characterized by comprising an input/output IO interface, a programmable logic device, a network card and a plurality of CPU cores, wherein the programmable logic device is connected between the network card and the IO interface, and the CPU cores are connected with the network card; the programmable logic device performs the method steps of any of claims 1-5, the network card performs the method steps of any of claims 6-9, and the CPU core performs the method steps of any of claims 10-14.
19. A computer readable storage medium, characterized in that the computer readable storage medium has stored therein a computer program which, when executed by a processor, implements the method steps of any of claims 1-5 or claims 6-9 or claims 10-14.
CN202310957392.XA 2023-07-31 2023-07-31 Message distribution method, device, network equipment and storage medium Active CN116668375B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310957392.XA CN116668375B (en) 2023-07-31 2023-07-31 Message distribution method, device, network equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310957392.XA CN116668375B (en) 2023-07-31 2023-07-31 Message distribution method, device, network equipment and storage medium

Publications (2)

Publication Number Publication Date
CN116668375A CN116668375A (en) 2023-08-29
CN116668375B true CN116668375B (en) 2023-11-21

Family

ID=87717515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310957392.XA Active CN116668375B (en) 2023-07-31 2023-07-31 Message distribution method, device, network equipment and storage medium

Country Status (1)

Country Link
CN (1) CN116668375B (en)

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103825976A (en) * 2014-03-04 2014-05-28 杭州华三通信技术有限公司 NAT (network address translation) processing method and device in distributed system architecture
CN203827377U (en) * 2014-01-17 2014-09-10 贵州电力试验研究院 Multi-network port FPGA network card capable of automatically adjusting sending strategy according to message types
WO2015067118A1 (en) * 2013-11-08 2015-05-14 华为技术有限公司 Multiple protocol stack load balancing method and apparatus
CN106713185A (en) * 2016-12-06 2017-05-24 瑞斯康达科技发展股份有限公司 Load balancing method and apparatus of multi-core CPU
CN108092913A (en) * 2017-12-27 2018-05-29 杭州迪普科技股份有限公司 A kind of method and the multi-core CPU network equipment of message shunting
CN108667733A (en) * 2018-03-29 2018-10-16 新华三信息安全技术有限公司 A kind of network equipment and message processing method
CN108881060A (en) * 2018-06-29 2018-11-23 新华三信息安全技术有限公司 A kind of method and device handling communication message
CN109936513A (en) * 2019-02-18 2019-06-25 网宿科技股份有限公司 Data message processing method, intelligent network adapter and CDN server based on FPGA
WO2019129167A1 (en) * 2017-12-29 2019-07-04 华为技术有限公司 Method for processing data packet and network card
CN209517181U (en) * 2018-12-28 2019-10-18 江苏金智科技股份有限公司 The network interface card and dual-ring network for receiving message are forwarded and filtered automatically according to message characteristic
CN111628941A (en) * 2020-05-27 2020-09-04 广东浪潮大数据研究有限公司 Network traffic classification processing method, device, equipment and medium
CN112714073A (en) * 2019-10-24 2021-04-27 中兴通讯股份有限公司 Message distribution method, system and storage medium based on SR-IOV network card
CN112737967A (en) * 2020-12-25 2021-04-30 江苏省未来网络创新研究院 Method for realizing IPv4 GRE message load balancing based on Flow Director
CN112799840A (en) * 2021-01-29 2021-05-14 北京百度网讯科技有限公司 Method, device, equipment and storage medium for transmitting data
CN114157533A (en) * 2021-12-06 2022-03-08 北京锐安科技有限公司 Message cross-board multicast copying and forwarding method and system based on CLOS architecture
CN115242711A (en) * 2022-07-14 2022-10-25 天翼云科技有限公司 Message transmission method and device
CN115499387A (en) * 2022-09-13 2022-12-20 北京天融信网络安全技术有限公司 Message processing method and device, electronic equipment and storage medium
WO2023061061A1 (en) * 2021-10-15 2023-04-20 中兴通讯股份有限公司 Message processing method, cable clip, device, and storage medium

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015067118A1 (en) * 2013-11-08 2015-05-14 华为技术有限公司 Multiple protocol stack load balancing method and apparatus
CN203827377U (en) * 2014-01-17 2014-09-10 贵州电力试验研究院 Multi-network port FPGA network card capable of automatically adjusting sending strategy according to message types
CN103825976A (en) * 2014-03-04 2014-05-28 杭州华三通信技术有限公司 NAT (network address translation) processing method and device in distributed system architecture
CN106713185A (en) * 2016-12-06 2017-05-24 瑞斯康达科技发展股份有限公司 Load balancing method and apparatus of multi-core CPU
CN108092913A (en) * 2017-12-27 2018-05-29 杭州迪普科技股份有限公司 A kind of method and the multi-core CPU network equipment of message shunting
WO2019129167A1 (en) * 2017-12-29 2019-07-04 华为技术有限公司 Method for processing data packet and network card
CN108667733A (en) * 2018-03-29 2018-10-16 新华三信息安全技术有限公司 A kind of network equipment and message processing method
CN108881060A (en) * 2018-06-29 2018-11-23 新华三信息安全技术有限公司 A kind of method and device handling communication message
CN209517181U (en) * 2018-12-28 2019-10-18 江苏金智科技股份有限公司 The network interface card and dual-ring network for receiving message are forwarded and filtered automatically according to message characteristic
CN109936513A (en) * 2019-02-18 2019-06-25 网宿科技股份有限公司 Data message processing method, intelligent network adapter and CDN server based on FPGA
CN112714073A (en) * 2019-10-24 2021-04-27 中兴通讯股份有限公司 Message distribution method, system and storage medium based on SR-IOV network card
WO2021238248A1 (en) * 2020-05-27 2021-12-02 广东浪潮智慧计算技术有限公司 Network traffic classification processing method and apparatus, device, and medium
CN111628941A (en) * 2020-05-27 2020-09-04 广东浪潮大数据研究有限公司 Network traffic classification processing method, device, equipment and medium
CN112737967A (en) * 2020-12-25 2021-04-30 江苏省未来网络创新研究院 Method for realizing IPv4 GRE message load balancing based on Flow Director
CN112799840A (en) * 2021-01-29 2021-05-14 北京百度网讯科技有限公司 Method, device, equipment and storage medium for transmitting data
WO2023061061A1 (en) * 2021-10-15 2023-04-20 中兴通讯股份有限公司 Message processing method, cable clip, device, and storage medium
CN114157533A (en) * 2021-12-06 2022-03-08 北京锐安科技有限公司 Message cross-board multicast copying and forwarding method and system based on CLOS architecture
CN115242711A (en) * 2022-07-14 2022-10-25 天翼云科技有限公司 Message transmission method and device
CN115499387A (en) * 2022-09-13 2022-12-20 北京天融信网络安全技术有限公司 Message processing method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN116668375A (en) 2023-08-29

Similar Documents

Publication Publication Date Title
US11134132B2 (en) Accelerated network packet processing
US10237177B2 (en) Transfer device and transfer system
US11924099B2 (en) Method for forwarding packet in hybrid network, device, and system
US20170331741A1 (en) Mac chaining load balancer
US20230078123A1 (en) Method for Forwarding Packet in SRV6 Service Function Chain and SF Device
US20220255772A1 (en) Packet sending method, apparatus, and system
US10038572B1 (en) Programmable tunnel creation for hardware-based packet processing
US10284460B1 (en) Network packet tracing
US11522795B1 (en) End to end application identification and analytics of tunnel encapsulated traffic in the underlay
CN110311860B (en) Multilink load balancing method and device under VXLAN
US20230300070A1 (en) Packet Sending Method, Device, and System
CN112422679A (en) Communication method and device
JP2022537296A (en) EVPN message transfer method, system, storage medium and terminal
US20240048479A1 (en) Packet Forwarding Method and Apparatus, Network Device, and Storage Medium
JP2022545919A (en) Method, apparatus and system for forwarding packets in SR network
CN108737239B (en) Message forwarding method and device
CN112737954A (en) Message processing method, device, system, equipment and storage medium
JP6222505B2 (en) Method and apparatus for generating input parameters
US20230216792A1 (en) Method for Generating Routing Information, Method for Sending Location Information, Method for Forwarding Packet, and Device
CN116668375B (en) Message distribution method, device, network equipment and storage medium
CN113542112B (en) Message forwarding method and network equipment
US9246820B1 (en) Methods and apparatus for implementing multiple loopback links
WO2022252569A1 (en) Packet processing method, apparatus and system
CN117478458A (en) Message processing method, device and network equipment
CN117376233A (en) Data processing method, device and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant