CN111736982B - Data forwarding processing method and server of 5G data forwarding plane - Google Patents

Data forwarding processing method and server of 5G data forwarding plane Download PDF

Info

Publication number
CN111736982B
CN111736982B CN202010397514.0A CN202010397514A CN111736982B CN 111736982 B CN111736982 B CN 111736982B CN 202010397514 A CN202010397514 A CN 202010397514A CN 111736982 B CN111736982 B CN 111736982B
Authority
CN
China
Prior art keywords
forwarding
forwarding processing
user
data
processing rule
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
CN202010397514.0A
Other languages
Chinese (zh)
Other versions
CN111736982A (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.)
Shenzhen Genew Technologies Co Ltd
Original Assignee
Shenzhen Genew 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 Shenzhen Genew Technologies Co Ltd filed Critical Shenzhen Genew Technologies Co Ltd
Priority to CN202010397514.0A priority Critical patent/CN111736982B/en
Publication of CN111736982A publication Critical patent/CN111736982A/en
Application granted granted Critical
Publication of CN111736982B publication Critical patent/CN111736982B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/252Store and forward routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a data forwarding processing method and a server of a 5G data forwarding plane, wherein the method comprises the following steps: when a forwarding program is run on a plurality of CPU cores at the same time, the forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different from each other, and each CPU core corresponds to one forwarding processing rule sub-table; when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching forwarding processing rules in the first forwarding processing rule sub-table according to the data packet of the user. The invention realizes the purpose of processing the data packet of the user by multi-core concurrent high-speed forwarding, and avoids the conflict of accessing the memory.

Description

Data forwarding processing method and server of 5G data forwarding plane
Technical Field
The present invention relates to the field of computer application technologies, and in particular, to a data forwarding processing method and a server for a 5G data forwarding plane.
Background
The 5G data forwarding plane is a hardware resource and a software resource for forwarding a user's data packet in a 5G network (the 5G network is a fifth generation mobile communication network, the peak theoretical transmission speed of which can reach 1GB per 8 seconds, which is more than 10 times faster than the transmission speed of the 4G network, and for the 5G network, it shows more obvious advantages and more powerful functions in the actual application process).
The 5G data forwarding plane is used for forwarding the data packet of the user in the 5G network, and a program for realizing the data forwarding plane is called a forwarding program. The number of users supported in the 5G network is very large, and the data packets of different users often have different forwarding rules according to the user information in the data packets of the users based on the demand of customizable forwarding of the user traffic. Even different types of packets of the same user have different forwarding rules.
For example, the forwarding processing rules are exemplified as follows:
the user information is assumed to be in the form of a mobile phone number, and of course, may be other forms of user information.
In a server running a forwarding program, perhaps, thousands or even tens of thousands of user data packet forwarding rules are stored, and a set of these forwarding rules is called a forwarding rule table, and when the forwarding program processes a user data packet, the forwarding program needs to search for and match a suitable forwarding rule according to information carried by the data packet.
In order to improve the processing capability of the forwarding program on a single server and reduce the average operation cost of a user, it is easy to think about processing the data packet by adopting a multi-core concurrency (multiple CPU cores forward the data packet simultaneously, each operation core of the CPU can independently operate the program, the multiple operation cores simultaneously operate the program as concurrency, and the CPU cores are the meaning of the CPU cores).
If the forwarding program is simply run on multiple CPU cores, the forwarding capability actually promoted is relatively limited; only one forwarding rule table is in the memory, so that the CPU core running the forwarding program needs to access the one forwarding rule table, and frequent access can cause access memory conflict. If the forwarding rule table is copied to each CPU core, the problem of access memory conflict can be solved, but when a certain rule needs to be added, deleted and changed, all the forwarding rule tables need to be updated synchronously, and when a plurality of forwarding rule tables exist, it is very difficult to update data synchronously and efficiently.
Accordingly, the prior art is still in need of improvement and development.
Disclosure of Invention
The invention mainly aims to provide a data forwarding processing method and a server for a 5G data forwarding plane, and aims to solve the problems that in the prior art, a plurality of forwarding processing rule tables exist, when one forwarding processing rule table needs to be added, deleted and changed, all forwarding processing rule tables need to be synchronously updated, and data is difficult to be synchronously updated with high efficiency.
In order to achieve the above object, the present invention provides a data forwarding processing method for a 5G data forwarding plane, where the data forwarding processing method for a 5G data forwarding plane includes the following steps:
when a forwarding program is run on a plurality of CPU cores at the same time, the forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different from each other, and each CPU core corresponds to one forwarding processing rule sub-table;
when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching forwarding processing rules in the first forwarding processing rule sub-table according to the data packet of the user.
Optionally, in the data forwarding processing method of the 5G data forwarding plane, a forwarding program running on each CPU core only reads a forwarding processing rule from a corresponding forwarding processing rule sub-table, and the forwarding program processes a data packet of a user according to the read forwarding processing rule.
Optionally, in the data forwarding processing method of the 5G data forwarding plane, the data packet and the forwarding processing rule table of the user both carry user information identifying the user.
Optionally, in the data forwarding processing method of a 5G data forwarding plane, when forwarding programs are run on multiple CPU cores simultaneously, a forwarding processing rule table is divided into multiple forwarding processing rule sub-tables, forwarding processing rules in each forwarding processing rule sub-table are different, and each CPU core corresponds to one forwarding processing rule sub-table, which specifically includes:
loading the forwarding program onto a plurality of CPU cores, and numbering the plurality of CPU cores in sequence respectively;
classifying all forwarding processing rules in the forwarding processing rule table into a plurality of forwarding processing rule sub-tables according to the user information in each forwarding processing rule, and numbering the forwarding processing rule sub-tables in sequence respectively;
and designating a CPU core corresponding to each forwarding processing rule sub-table, wherein the forwarding processing rules in each forwarding processing rule sub-table are different from each other.
Optionally, in the data forwarding processing method of the 5G data forwarding plane, forwarding processing rules of the same class of users and data packets of the same class of users are both corresponding to the same CPU core.
Optionally, in the data forwarding processing method of a 5G data forwarding plane, when a first CPU core of the multiple CPU cores receives a data packet of a user, the first CPU core obtains a corresponding first forwarding processing rule table, and performs forwarding processing after searching for a forwarding processing rule in the first forwarding processing rule table according to the data packet of the user, before the foregoing steps further include:
and receiving the data packet of the user through the network card driver, and distributing the data packet of the user to the corresponding CPU core for processing according to the user information in the data packet of the user.
Optionally, the data forwarding processing method of the 5G data forwarding plane, wherein the allocating the user data packet to the corresponding CPU core for processing according to the user information in the user data packet specifically includes:
classifying the data packets of the user according to the user information in the data packets of the user, and transmitting the data packets of the user to the corresponding CPU cores according to the type of the data packet classification of the user;
when the CPU core receives the data packet of the user, the CPU core searches the forwarding processing rule from the corresponding forwarding processing rule sub-table to forward the data packet of the user.
Optionally, in the data forwarding processing method of the 5G data forwarding plane, a number of each of the plurality of CPU cores is the same as a number of each of the corresponding plurality of forwarding processing rule sub-tables.
In addition, to achieve the above object, the present invention also provides a server, wherein the server includes: the method comprises the steps of a memory, a processor and a data forwarding processing program of a 5G data forwarding plane, wherein the data forwarding processing program of the 5G data forwarding plane is stored in the memory and can run on the processor, and the data forwarding processing program of the 5G data forwarding plane realizes the data forwarding processing method of the 5G data forwarding plane when being executed by the processor.
In addition, to achieve the above object, the present invention also provides a storage medium storing a data forwarding processing program of a 5G data forwarding plane, where the data forwarding processing program of the 5G data forwarding plane, when executed by a processor, implements the steps of the data forwarding processing method of the 5G data forwarding plane as described above.
In the invention, when a forwarding program is simultaneously operated on a plurality of CPU cores, a forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different, and each CPU core corresponds to one forwarding processing rule sub-table; when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching forwarding processing rules in the first forwarding processing rule sub-table according to the data packet of the user. The invention divides the forwarding rule table into a plurality of forwarding rule sub-tables, each CPU core corresponds to one forwarding rule sub-table, and both the forwarding rule of the same user and the data packet of the user of the same user are corresponding to the same CPU core, and forwarding processing is carried out after the forwarding rule is searched according to the data packet of the user in the corresponding forwarding rule sub-table, thereby achieving the purpose of multi-core concurrent high-speed forwarding processing of the data packet of the user and avoiding access memory conflict.
Drawings
FIG. 1 is a flow chart of a preferred embodiment of a data forwarding processing method of the 5G data forwarding plane of the present invention;
FIG. 2 is a schematic diagram of an operating environment of a server according to a preferred embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more clear and clear, the present invention will be further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
As shown in fig. 1, the data forwarding processing method of the 5G data forwarding plane according to the preferred embodiment of the present invention includes the following steps:
and S10, when the forwarding program is run on a plurality of CPU cores simultaneously, dividing the forwarding processing rule table into a plurality of forwarding processing rule sub-tables, wherein the forwarding processing rules in each forwarding processing rule sub-table are different from each other, and each CPU core corresponds to one forwarding processing rule sub-table.
Specifically, the 5G data forwarding plane is used for forwarding a data packet of a user in the 5G network, a program for implementing the data forwarding plane is called a forwarding program, in order to improve a processing capability of the forwarding program on a single server, a multi-core concurrent (multiple CPU cores are used for forwarding the data packet simultaneously, each operation core of the CPU can independently operate the program, the multiple operation cores operate the program simultaneously and are called concurrent), the CPU cores (CPU cores are CPU operation cores) load and operate the same forwarding program, and the multiple CPU cores (i.e. multi-core CPUs, collectively referred to as CPUs with multiple operation cores) respectively share a forwarding processing work responsible for a part of the data packet, and the multi-core concurrent is that the multiple CPU cores concurrently operate the forwarding program.
Specifically, a forwarding program is loaded onto a plurality of CPU cores, and the plurality of CPU cores are numbered in sequence respectively; classifying all forwarding processing rules in the forwarding processing rule table into a plurality of forwarding processing rule sub-tables according to the user information in each forwarding processing rule, and numbering the forwarding processing rule sub-tables in sequence respectively; and designating a CPU core corresponding to each forwarding processing rule sub-table, wherein the forwarding processing rules in each forwarding processing rule sub-table are different from each other.
For example, a forwarding program is loaded onto n CPU cores (where n is a positive integer, e.g., n is 8, i.e., the forwarding program is loaded onto 8 CPU cores), and the n CPU cores are numbered: 1,2, 3.), n (when n is 8, i.e., 8 CPU cores are numbered 1-8 in sequence); classifying all forwarding rules in the forwarding rule table into n types according to user information in each forwarding rule, wherein each type corresponds to one forwarding rule sub-table, and sequentially numbering the forwarding rule sub-tables into 1,2 and 3.
For example, CPU core number 1 corresponds to the forwarding rule sub-table number 1, CPU core number 2 corresponds to the forwarding rule sub-table number 2. It can be seen that the number of CPU cores is the same as the number of forwarding processing rule sub-tables, so that each CPU core corresponds to one forwarding processing rule sub-table, that is, a forwarding program running on the CPU core only reads a forwarding processing rule from the forwarding processing rule sub-table, thereby avoiding access memory conflicts (each CPU core only needs to access its corresponding forwarding processing rule sub-table and does not need to access other forwarding processing rule sub-tables), and all forwarding processing rule sub-tables do not need to be updated synchronously (that is, when a forwarding processing rule sub-table needs to add, delete or change a rule, only needs to add, delete or change a rule in its own forwarding processing rule sub-table, and all forwarding processing rule sub-tables do not need to be updated synchronously).
Further, the forwarding program running on each CPU core only reads the forwarding processing rule from the corresponding forwarding processing rule sub-table, and the forwarding program processes the data packet of the user according to the read forwarding processing rule, for example, the forwarding program running on CPU core i only reads the forwarding processing rule from the corresponding forwarding processing rule sub-table i, and the forwarding program processes the data packet of the user according to the read forwarding processing rule.
The user data packet and the forwarding rule table both carry user information identifying the user, and the user data packet and the user information in the forwarding rule table represent the same type of user (even if the expression forms are different, the user data packet and the user information in the forwarding rule table are actually equivalent, namely represent the same type of user, for example, represent the same user); then both the forwarding rules of the same class of users and the packets of the same class of users may be mapped to the same CPU core (e.g., both the forwarding rules of the same user and the packets of the same user may be mapped to the same CPU core, meaning that as long as the users with the same user information may be categorized as the same class of users, in fact, the users may have the same user information but may have only one user or may have multiple users).
Step S20, when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching a forwarding processing rule in the first forwarding processing rule sub-table according to the data packet of the user.
Specifically, before the step S20, the network card driver receives the user data packet, and distributes the user data packet to the corresponding CPU core for processing according to the user information in the user data packet, which specifically includes: classifying the data packets of the user according to the user information in the data packets of the user, and transmitting the data packets of the user to the corresponding CPU cores according to the type of the data packet classification of the user; when the CPU core receives the data packet of the user, the CPU core searches the forwarding processing rule from the corresponding forwarding processing rule sub-table to forward the data packet of the user.
For example, users are classified into the i-th class according to user information in the data packet of the users (for example, the class 1 users can include a plurality of users), then the data packet of the users can be sent to the corresponding CPU core i, the CPU core i reads the forwarding processing rule in the corresponding forwarding processing rule sub-table i, and the forwarding program processes the data packet of the class i user according to the read forwarding processing rule.
When a first CPU core (herein, the first CPU core may refer to any one of the n CPU cores, for example, the first CPU core may refer to the CPU core with the number 4, that is, the first CPU core may be denoted as the CPU core i) of the plurality of CPU cores (for example, n, n=8) receives a packet of the user, the first CPU core obtains a corresponding first forwarding rule table (herein, the first forwarding rule table refers to the forwarding rule table corresponding to the first CPU core, and all CPU cores and all forwarding rule tables are in a one-to-one correspondence, for example, when the first CPU core is the CPU core with the number 4, the first forwarding rule table refers to the forwarding rule table with the number 4, that is, the first forwarding rule table may be denoted as the forwarding rule table i), and performs forwarding after searching for the forwarding rule according to the packet of the user (for example, the packet of the class i user) according to the packet of the user.
According to the relation among the CPU core, the forwarding processing rule sub-table and the data packet of the user, the following corresponding relation can be established:
CPU core 1 Forwarding processing rule sub-table 1 Class 1 user data packet
CPU core 2 Forwarding processing rules sub-table 2 Class 2 user data packet
··· ··· ···
CPU core i Forwarding processing rule sub-table i Class i user data packet
··· ··· ···
CPU core n Forwarding processing rule sub-table n Data packet for n-class user
It can be seen that, as long as the user information in the forwarding rule is the same as the user information in the user's data packet, the forwarding rule of the user and the data packet of the user are necessarily classified into the i-th class, and both correspond to the same CPU core i.
When the CPU core i receives the data packet of the class i user, the forwarding processing rule of the user is quickly inquired from the forwarding processing rule sub-table i and processed, the worry that the forwarding processing rule of the user does not exist in the forwarding processing rule sub-table i is avoided, the other CPU cores also do not need to access the forwarding processing rule sub-table i to cause access conflict, and the forwarding processing rule of the user does not need to be slowly inquired from the forwarding processing rule table with large volume, so that the efficient forwarding processing of the data packet of the user is realized.
When the forwarding program is operated on a plurality of CPU cores, the forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different from each other, each CPU core corresponds to one forwarding processing rule sub-table, namely, the forwarding program operated on the CPU core only reads the forwarding processing rule from the forwarding processing rule sub-table, thereby avoiding access memory conflict, and not needing to synchronously update all forwarding processing rule sub-tables, and after the forwarding processing rule sub-tables are divided into a plurality of forwarding processing rule sub-tables, the data volume in each forwarding processing rule sub-table is far smaller than the data volume in the original forwarding processing rule sub-table, so that the speed of searching the forwarding processing rule of a user in the forwarding processing rule sub-table is far faster than that of the forwarding processing rule in the original forwarding processing rule sub-table, and the speed of forwarding processing is further improved.
Each CPU core only needs to process the data packet of the user matched with the forwarding processing rule in the forwarding processing rule sub-table corresponding to the CPU core, and the data packet of the user and the forwarding processing rule table carry user information for identifying the user, so the invention classifies the forwarding processing rule in the forwarding processing rule table according to the user information to divide the forwarding processing rule sub-table into a plurality of forwarding processing rule sub-tables and appoints the CPU core corresponding to each forwarding processing rule sub-table, and then the network card drive distributes the data packet of the user to the corresponding CPU core for processing according to the user information in the data packet of the user when receiving the data packet of the user, thereby realizing that the forwarding processing rule of one user and the data packet of the user are both corresponding to the same CPU core, and finally achieving the purpose of multi-core concurrent high-speed forwarding processing of the data packet of the user.
Further, as shown in fig. 2, the present invention further provides a corresponding server based on the data forwarding processing method of the 5G data forwarding plane, which includes a processor, and a memory connected to the processor, where the memory stores a data forwarding processing program of the 5G data forwarding plane, and the data forwarding processing program of the 5G data forwarding plane is used to implement the steps of the data forwarding processing method of the 5G data forwarding plane according to the first embodiment when executed by the processor.
In one embodiment, the following steps are implemented when the processor executes a data forwarding handler of the 5G data forwarding plane in the memory:
when a forwarding program is run on a plurality of CPU cores at the same time, the forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different from each other, and each CPU core corresponds to one forwarding processing rule sub-table;
when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching forwarding processing rules in the first forwarding processing rule sub-table according to the data packet of the user.
The forwarding program running on each CPU core only reads the forwarding processing rule from the corresponding forwarding processing rule sub-table, and the forwarding program processes the data packet of the user according to the read forwarding processing rule.
The user data packet and the forwarding rule table both carry user information for identifying the user.
When the forwarding program is run on the multiple CPU cores simultaneously, the forwarding processing rule table is divided into multiple forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different, and each CPU core corresponds to one forwarding processing rule sub-table, and the method specifically comprises the following steps:
loading the forwarding program onto a plurality of CPU cores, and numbering the plurality of CPU cores in sequence respectively;
classifying all forwarding processing rules in the forwarding processing rule table into a plurality of forwarding processing rule sub-tables according to the user information in each forwarding processing rule, and numbering the forwarding processing rule sub-tables in sequence respectively;
and designating a CPU core corresponding to each forwarding processing rule sub-table, wherein the forwarding processing rules in each forwarding processing rule sub-table are different from each other.
And the forwarding processing rules of the same class of users and the data packets of the same class of users are respectively corresponding to the same CPU core.
When a first CPU core of the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching forwarding processing rules in the first forwarding processing rule sub-table according to the data packet of the user, and the method further comprises the following steps:
and receiving the data packet of the user through the network card driver, and distributing the data packet of the user to the corresponding CPU core for processing according to the user information in the data packet of the user.
The method for distributing the user data packet to the corresponding CPU core for processing according to the user information in the user data packet specifically comprises the following steps:
classifying the data packets of the user according to the user information in the data packets of the user, and transmitting the data packets of the user to the corresponding CPU cores according to the type of the data packet classification of the user;
when the CPU core receives the data packet of the user, the CPU core searches the forwarding processing rule from the corresponding forwarding processing rule sub-table to forward the data packet of the user.
Wherein, the number of each CPU core is the same as the number of each forwarding processing rule sub-table in the corresponding forwarding processing rule sub-tables.
The present invention also provides a storage medium, where the storage medium stores a data forwarding processing program of a 5G data forwarding plane, and the data forwarding processing program of the 5G data forwarding plane implements the steps of the data forwarding processing method of the 5G data forwarding plane as described above when executed by a processor.
In summary, the present invention provides a data forwarding processing method and a server for a 5G data forwarding plane, where the method includes: when a forwarding program is run on a plurality of CPU cores at the same time, the forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different from each other, and each CPU core corresponds to one forwarding processing rule sub-table; when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching forwarding processing rules in the first forwarding processing rule sub-table according to the data packet of the user. The invention divides the forwarding rule table into a plurality of forwarding rule sub-tables, each CPU core corresponds to one forwarding rule sub-table, and both the forwarding rule of the same user and the data packet of the user of the same user are corresponding to the same CPU core, and forwarding processing is carried out after the forwarding rule is searched according to the data packet of the user in the corresponding forwarding rule sub-table, thereby achieving the purpose of multi-core concurrent high-speed forwarding processing of the data packet of the user and avoiding access memory conflict.
Of course, those skilled in the art will appreciate that implementing all or part of the above-described methods may be implemented by a computer program for instructing relevant hardware (such as a processor, a controller, etc.), where the program may be stored in a computer-readable storage medium, and where the program may include the steps of the above-described method embodiments when executed. The storage medium may be a memory, a magnetic disk, an optical disk, or the like.
It is to be understood that the invention is not limited in its application to the examples described above, but is capable of modification and variation in light of the above teachings by those skilled in the art, and that all such modifications and variations are intended to be included within the scope of the appended claims.

Claims (7)

1. The data forwarding processing method of the 5G data forwarding plane is characterized by comprising the following steps of:
when a forwarding program is run on a plurality of CPU cores at the same time, the forwarding processing rule table is divided into a plurality of forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different from each other, and each CPU core corresponds to one forwarding processing rule sub-table;
when a first CPU core in the plurality of CPU cores receives a data packet of a user, the first CPU core acquires a corresponding first forwarding processing rule sub-table, and performs forwarding processing after searching a forwarding processing rule in the first forwarding processing rule sub-table according to the data packet of the user;
the forwarding program running on each CPU core only reads the forwarding processing rules from the corresponding forwarding processing rule sub-table, and the forwarding program processes the data packet of the user according to the read forwarding processing rules;
the data packet and the forwarding rule table of the user both carry user information for identifying the user;
when the forwarding program is run on the multiple CPU cores simultaneously, the forwarding processing rule table is divided into multiple forwarding processing rule sub-tables, the forwarding processing rules in each forwarding processing rule sub-table are different, and each CPU core corresponds to one forwarding processing rule sub-table, and the method specifically comprises the following steps:
loading the forwarding program onto a plurality of CPU cores, and numbering the plurality of CPU cores in sequence respectively;
classifying all forwarding processing rules in the forwarding processing rule table into a plurality of forwarding processing rule sub-tables according to the user information in each forwarding processing rule, and numbering the forwarding processing rule sub-tables in sequence respectively;
designating CPU cores corresponding to each forwarding processing rule sub-table, wherein the number of the CPU cores is the same as that of the forwarding processing rule sub-tables, so that each CPU core corresponds to one forwarding processing rule sub-table, access memory conflict is avoided, and forwarding processing rules in each forwarding processing rule sub-table are different;
when a certain rule is required to be added, deleted and changed in the forwarding processing rule sub-table, only a certain rule is required to be correspondingly added, deleted and changed in the forwarding processing rule sub-table, and all forwarding processing rule sub-tables are not required to be synchronously updated.
2. The method according to claim 1, wherein the forwarding rules of the same class of users and the packets of the same class of users are both mapped to the same CPU core.
3. The method for forwarding data in a 5G data forwarding plane according to claim 2, wherein when a first CPU core of the plurality of CPU cores receives a data packet of a user, the first CPU core obtains a corresponding first forwarding rule table, and performs forwarding processing after searching for a forwarding rule in the first forwarding rule table according to the data packet of the user, further comprising:
and receiving the data packet of the user through the network card driver, and distributing the data packet of the user to the corresponding CPU core for processing according to the user information in the data packet of the user.
4. The method for forwarding data in the 5G data forwarding plane according to claim 3, wherein the allocating the user's data packet to the corresponding CPU core for processing according to the user information in the user's data packet specifically comprises:
classifying the data packets of the user according to the user information in the data packets of the user, and transmitting the data packets of the user to the corresponding CPU cores according to the type of the data packet classification of the user;
when the CPU core receives the data packet of the user, the CPU core searches the forwarding processing rule from the corresponding forwarding processing rule sub-table to forward the data packet of the user.
5. The data forwarding processing method of the 5G data forwarding plane of claim 1 wherein a number of each of the plurality of CPU cores is the same as a number of each of the corresponding plurality of forwarding processing rule sub-tables.
6. A server, the server comprising: memory, a processor and a data forwarding processing program of a 5G data forwarding plane stored on the memory and executable on the processor, the data forwarding processing program of the 5G data forwarding plane implementing the steps of the data forwarding processing method of the 5G data forwarding plane according to any of claims 1-5 when executed by the processor.
7. A storage medium storing a data forwarding processing program of a 5G data forwarding plane, the data forwarding processing program of the 5G data forwarding plane implementing the steps of the data forwarding processing method of the 5G data forwarding plane according to any one of claims 1 to 5 when executed by a processor.
CN202010397514.0A 2020-05-12 2020-05-12 Data forwarding processing method and server of 5G data forwarding plane Active CN111736982B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010397514.0A CN111736982B (en) 2020-05-12 2020-05-12 Data forwarding processing method and server of 5G data forwarding plane

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010397514.0A CN111736982B (en) 2020-05-12 2020-05-12 Data forwarding processing method and server of 5G data forwarding plane

Publications (2)

Publication Number Publication Date
CN111736982A CN111736982A (en) 2020-10-02
CN111736982B true CN111736982B (en) 2023-12-08

Family

ID=72647136

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010397514.0A Active CN111736982B (en) 2020-05-12 2020-05-12 Data forwarding processing method and server of 5G data forwarding plane

Country Status (1)

Country Link
CN (1) CN111736982B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112770344B (en) * 2021-01-26 2022-06-14 深圳震有科技股份有限公司 Method, system and terminal for controlling forwarding efficiency of 5G data forwarding plane
CN113141633A (en) * 2021-03-16 2021-07-20 深圳震有科技股份有限公司 5G communication data packet forwarding method and terminal
CN113141632A (en) * 2021-03-16 2021-07-20 深圳震有科技股份有限公司 Method and terminal for orderly forwarding data packets on 5G communication user plane

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789901A (en) * 2009-12-30 2010-07-28 北京天融信科技有限公司 Accelerating method and device of transmitting system positioned on multinuclear platform
CN104199800A (en) * 2014-07-21 2014-12-10 上海寰创通信科技股份有限公司 Method for eliminating mutual exclusion of table items in multi-core system
CN104348724A (en) * 2013-07-31 2015-02-11 华为技术有限公司 Multi-tenant supporting data forwarding method and device
CN104462144A (en) * 2013-09-24 2015-03-25 中兴通讯股份有限公司 Search method and device of packet classification rules
CN104965810A (en) * 2015-05-08 2015-10-07 国家计算机网络与信息安全管理中心 Method and device for rapidly processing data message in multi-core mode
CN105224692A (en) * 2015-11-03 2016-01-06 武汉烽火网络有限责任公司 Support the system and method for the SDN multilevel flow table parallel search of polycaryon processor
CN106997233A (en) * 2016-01-26 2017-08-01 英特尔公司 The access outside polycaryon processor SoC is provided voltage is independently configured
KR20170125564A (en) * 2016-05-04 2017-11-15 한국전자통신연구원 Packet distribution method and apparatus for parallel packet processing
CN109428945A (en) * 2017-08-29 2019-03-05 华为技术有限公司 Data transmission method, equipment and system
CN110022330A (en) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 For the processing method of network packet, device and electronic equipment
CN110138662A (en) * 2019-05-08 2019-08-16 东软集团股份有限公司 Session entry processing method, device and multiple nucleus system in multiple nucleus system
CN110855629A (en) * 2019-10-21 2020-02-28 新华三信息安全技术有限公司 Matching method of IP address, generating method of matching table and related device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112016004860T5 (en) * 2015-10-21 2018-07-26 Arris International Ip Ltd. Distributed rule deployment in an extended bridge

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789901A (en) * 2009-12-30 2010-07-28 北京天融信科技有限公司 Accelerating method and device of transmitting system positioned on multinuclear platform
CN104348724A (en) * 2013-07-31 2015-02-11 华为技术有限公司 Multi-tenant supporting data forwarding method and device
CN104462144A (en) * 2013-09-24 2015-03-25 中兴通讯股份有限公司 Search method and device of packet classification rules
CN104199800A (en) * 2014-07-21 2014-12-10 上海寰创通信科技股份有限公司 Method for eliminating mutual exclusion of table items in multi-core system
CN104965810A (en) * 2015-05-08 2015-10-07 国家计算机网络与信息安全管理中心 Method and device for rapidly processing data message in multi-core mode
CN105224692A (en) * 2015-11-03 2016-01-06 武汉烽火网络有限责任公司 Support the system and method for the SDN multilevel flow table parallel search of polycaryon processor
CN106997233A (en) * 2016-01-26 2017-08-01 英特尔公司 The access outside polycaryon processor SoC is provided voltage is independently configured
KR20170125564A (en) * 2016-05-04 2017-11-15 한국전자통신연구원 Packet distribution method and apparatus for parallel packet processing
CN109428945A (en) * 2017-08-29 2019-03-05 华为技术有限公司 Data transmission method, equipment and system
CN110022330A (en) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 For the processing method of network packet, device and electronic equipment
CN110138662A (en) * 2019-05-08 2019-08-16 东软集团股份有限公司 Session entry processing method, device and multiple nucleus system in multiple nucleus system
CN110855629A (en) * 2019-10-21 2020-02-28 新华三信息安全技术有限公司 Matching method of IP address, generating method of matching table and related device

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
5G切片中高速通信技术研究;伏云翔;《中国优秀硕士论文全文数据库》;全文 *
5G核心网UPF硬件加速技术;王立文;王友祥;唐雄燕;杨文聪;张雪贝;李沸乐;;移动通信(第01期);全文 *
SoftBox: A Customizable, Low-Latency, and Scalable 5G Core Network Architecture;Mehrdad Moradi;《IEEE Journal on Selected Areas in Communications ( Volume: 36, Issue: 3, March 2018)》;全文 *
基于多核处理器的边缘数据采集分析节点架构;张润滋;王劲林;陈晓;叶晓舟;;网络新媒体技术(第02期);全文 *

Also Published As

Publication number Publication date
CN111736982A (en) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111736982B (en) Data forwarding processing method and server of 5G data forwarding plane
US11675785B2 (en) Dynamic asynchronous traversals for distributed graph queries
US9736270B2 (en) Automated client/server operation partitioning
US20220391260A1 (en) Method and Apparatus for Creating Container, Device, Medium, and Program Product
CN105740048A (en) Image management method, device and system
JP2007122302A (en) Information retrieval system, index management method, and program
CN109829287A (en) Api interface permission access method, equipment, storage medium and device
US10114866B2 (en) Memory-constrained aggregation using intra-operator pipelining
CN110389812B (en) Method, apparatus, and computer-readable storage medium for managing virtual machines
US20210132987A1 (en) Computer program for asynchronous data processing in a database management system
CN113312283B (en) Heterogeneous diagram learning system based on FPGA acceleration
CN112231052A (en) High-performance distributed container mirror image distribution system and method
US11038783B2 (en) Method and apparatus for managing network connection, and storage medium
CN105138649A (en) Data search method and device and terminal
CN111026397A (en) Rpm packet distributed compiling method and device
US8606744B1 (en) Parallel transfer of data from one or more external sources into a database system
US20230237043A1 (en) Accelerating change data capture determination using row bitsets
CN111752941B (en) Data storage and access method and device, server and storage medium
US11593310B2 (en) Providing writable streams for external data sources
CN116775712A (en) Method, device, electronic equipment, distributed system and storage medium for inquiring linked list
CN111767126A (en) System and method for distributed batch processing
CN115617859A (en) Data query method and device based on knowledge graph cluster
CN112764897B (en) Task request processing method, device and system and computer readable storage medium
CN115357606A (en) Data source query method, system, computer equipment and storage medium
CN113342270A (en) Volume unloading method and device and electronic equipment

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