Message transmission method and device, and storage medium

By storing VN group information and determining the source and destination MAC addresses of IP packets through the UPF network element, the problem of low UE communication efficiency in 5G local area networks is solved, and efficient packet transmission within the same VN group is achieved.

CN115643222BActive Publication Date: 2025-11-04CHINA UNITED NETWORK COMM GRP CO LTD +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211214310.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-30
Publication Date
2025-11-04
Estimated Expiration
2042-09-30

AI Technical Summary

Technical Problem

In the 5G local area network specified by 3GPP, the communication efficiency between UEs is reduced due to the complex MAC address addition process.

Method used

UPF network elements store VN group information. By obtaining the source MAC address and destination MAC address of IP packets, they determine whether the same VN group exists. If it exists, the packet is sent directly; otherwise, forwarding information is created and the preset forwarding table is updated to improve transmission efficiency.

Benefits of technology

It enables efficient message transmission between terminals within the same VN group, simplifies the MAC address addition process, and improves communication efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115643222B_ABST
    Figure CN115643222B_ABST
Patent Text Reader

Abstract

The application provides a message transmission method and device and a storage medium, relates to the field of communication, and aims to improve the efficiency of message transmission. The method is applied to a user plane function (UPF) network element, and at least one virtual network (VN) group is stored in the UPF network element. The VN group comprises a plurality of media access control (MAC) addresses. The method comprises the following steps: acquiring a first Internet protocol (IP) message, the first IP message being an IP message of a first terminal. If there is a target VN group in the at least one VN group, the first IP message is sent to a second terminal, and the target VN group is a VN group in which a source MAC address and a target MAC address exist in the plurality of MAC addresses. In this way, the UPF network element can determine whether the first terminal and the second terminal are terminals in the same VN group, realize the transmission of messages between terminals in the same VN group, and improve the efficiency of message transmission.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of communication, and in particular to a message transmission method and device and storage medium. BACKGROUND

[0002] In the 3rd generation partnership project (3GPP), it is specified that an operator can provide a 5G local area network (5G LAN) service in the form of a virtual network (VN) group. A VN group can include multiple user equipment (UE).

[0003] Currently, when the UEs in a VN group communicate with each other, a Session Management Function (SMF) network element needs to set a User Plane Function (UPF) network element as a group-level session, and needs to add the Media Access Control (MAC) addresses of the UEs to the same VN group. Since the process of adding the MAC addresses of the UEs to the same VN group is complex, it can cause the efficiency of communication between the UEs in the same VN group to decrease. SUMMARY

[0004] The present application provides a message transmission method and device and storage medium, which are used to improve the efficiency of message transmission of terminals in a VN group.

[0005] To achieve the above-mentioned purpose, the present application adopts the following technical solutions:

[0006] In a first aspect, the present application provides a message transmission method. The method is applied to a User Plane Function (UPF) network element, and the UPF network element stores at least one virtual network (VN) group. The VN group includes multiple Media Access Control (MAC) addresses. In the method, a message transmission device (which can be referred to as a “transmission device” for short) obtains a first Internet Protocol (IP) message. The first IP message is an IP message of a first terminal. The first IP message includes a source MAC address and a destination MAC address. The source MAC address is the MAC address of the first terminal, and the destination MAC address is the MAC address of a second terminal. If there is a destination VN group in the at least one VN group, the transmission device can send the first IP message to the second terminal. The destination VN group is a VN group in which the source MAC address and the destination MAC address exist in the multiple MAC addresses.

[0007] Optionally, the UPF network element further stores first preset forwarding information, the first preset forwarding information including: a source MAC address and a MAC address of a terminal in communication with the first terminal. The method further includes: determining, by the transmission device, whether the first target forwarding information exists in the first preset forwarding information, the first target forwarding information including: a source MAC address and a destination MAC address. The method of "sending the first IP packet to the second terminal" includes: if the first target forwarding information exists in the first preset forwarding information, the transmission device sends the first IP packet to the second terminal according to the first target forwarding information.

[0008] Optionally, the method further includes: if the first target forwarding information does not exist in the first preset forwarding information, the transmission device creates the first target forwarding information and updates the first preset forwarding information, the updated first preset forwarding information including: the first target forwarding information. Then, the transmission device sends the first IP packet to the second terminal according to the first target forwarding information.

[0009] Optionally, the UPF network element further stores second preset forwarding information, the second preset forwarding information including: a destination MAC address and a MAC address of a terminal in communication with the second terminal. The method further includes: if the first target forwarding information does not exist in the second preset forwarding information, the transmission device updates the second preset forwarding information, the updated second preset forwarding information including: the first target forwarding information.

[0010] Optionally, the source MAC address corresponds to a first thread, and the destination MAC corresponds to a second thread. The first thread is used for processing the IP packet of the first terminal, and the second thread is used for processing the IP packet of the second terminal.

[0011] In a second aspect, the application provides a packet transmission device, which includes an acquisition module and a processing module.

[0012] The acquisition module is configured to acquire a first network protocol (IP) packet, the first IP packet being an IP packet of a first terminal, the first IP packet including: a source MAC address and a destination MAC address, the source MAC address being a MAC address of the first terminal, and the destination MAC address being a MAC address of a second terminal. The sending module is configured to send the first IP packet to the second terminal if a destination VN group exists in at least one VN group, the destination VN group being a VN group in which the source MAC address and the destination MAC address exist in a plurality of MAC addresses.

[0013] Optionally, the UPF network element further stores first preset forwarding information, the first preset forwarding information comprising: a source MAC address and a MAC address of a terminal in communication with the first terminal. The processing module is configured to determine whether the first preset forwarding information comprises first target forwarding information, the first target forwarding information comprising: the source MAC address and a destination MAC address. The sending module is specifically configured to send the first IP packet to the second terminal according to the first target forwarding information if the first preset forwarding information comprises the first target forwarding information.

[0014] Optionally, the processing module is specifically configured to create the first target forwarding information and update the first preset forwarding information if the first preset forwarding information does not comprise the first target forwarding information, the updated first preset forwarding information comprising: the first target forwarding information. The sending module is specifically configured to send the first IP packet to the second terminal according to the first target forwarding information.

[0015] Optionally, the UPF network element further stores second preset forwarding information, the second preset forwarding information comprising: the destination MAC address and the MAC address of the terminal in communication with the second terminal. The processing module is specifically configured to update the second preset forwarding information if the second preset forwarding information does not comprise the first target forwarding information, the updated second preset forwarding information comprising: the first target forwarding information.

[0016] Optionally, the source MAC address corresponds to a first thread, and the destination MAC corresponds to a second thread. The first thread is configured to process the IP packet of the first terminal, and the second thread is configured to process the IP packet of the second terminal.

[0017] In a third aspect, the present application provides a packet transmission device, comprising: a processor and a memory. The processor and the memory are coupled. The memory is configured to store one or more programs, the one or more programs comprising computer execution instructions. When the packet transmission device is running, the processor executes the computer execution instructions stored in the memory to implement the packet transmission method described in the first aspect and any possible implementation manner of the first aspect.

[0018] In a fourth aspect, the present application provides a computer readable storage medium, the computer readable storage medium storing instructions, when the instructions are running on a computer, causing the computer to execute the packet transmission method described in the first aspect and any possible implementation manner of the first aspect.

[0019] In a fifth aspect, the present application provides a computer program product, comprising a computer program, when the computer program is executed by a processor, causing a computer to implement the packet transmission method described in the first aspect and any possible implementation manner of the first aspect.

[0020] The technical problems and technical effects solved by the message transmission device, the computer device, the computer storage medium, or the computer program product in the above scheme can refer to the technical problems and technical effects solved by the first aspect, which will not be repeated here.

[0021] The technical scheme provided in the application brings at least the following beneficial effects: the UPF network element stores at least one VN group, and the VN group includes a plurality of MAC addresses. The UPF network element can obtain a first IP message, the first IP message being an IP message of a first terminal, and the first IP message including a source MAC address and a destination MAC address. The source MAC address is the MAC address of the first terminal, and the destination MAC address is the MAC address of a second terminal. Then, the UPF network element can determine whether there is a destination VN group in the at least one VN group, the destination VN group being a VN group in which the source MAC address and the destination MAC address exist in the plurality of MAC addresses. If there is a destination VN group in the at least one VN group, the UPF network element can send the first IP message to the second terminal. In this way, the UPF network element can determine whether the first terminal and the second terminal are terminals in the same VN group, and realize the transmission of messages between terminals in the same VN group, thereby improving the efficiency of message transmission. BRIEF DESCRIPTION OF DRAWINGS

[0022] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the application and, together with the description, serve to explain the principles of the application, and, without in any way limiting the application to an

[0023] Figure 1A is a schematic diagram of an internal software architecture of a UPF network element according to an example embodiment;

[0024] Figure 1B is a schematic diagram of a structure of a message transmission device according to an example embodiment;

[0025] Figure 1C is a schematic diagram of a structure of another message transmission device according to an example embodiment;

[0026] Figure 1D is a schematic diagram of a structure of another message transmission device according to an example embodiment;

[0027] Figure 2 is a flowchart of a message transmission method according to an example embodiment;

[0028] Figure 3 is a flowchart of another message transmission method according to an example embodiment;

[0029] Figure 4is a flow chart of another message transmission method according to an exemplary embodiment;

[0030] Figure 5 is a structural block diagram of a message transmission apparatus according to an exemplary embodiment;

[0031] Figure 6 is a structural schematic diagram of a message transmission apparatus according to an exemplary embodiment;

[0032] Figure 7 is a conceptual partial view of a computer program product according to an exemplary embodiment. DETAILED DESCRIPTION

[0033] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts fall within the scope of the present application.

[0034] The character " / " in the present application generally represents an "or" relationship between the front and rear associated objects. For example, A / B can be understood as A or B.

[0035] The terms "first" and "second" in the description and claims of the present application are used to distinguish different objects, rather than to describe a specific order of the objects.

[0036] In addition, the terms "include" and "have" and any variations thereof in the description of the present application are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or modules is not limited to the listed steps or modules, but can optionally include other steps or modules not listed, or can optionally include other steps or modules inherent to the process, method, product or device.

[0037] In addition, in the embodiments of the present application, the words "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design solution described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or advantageous than other embodiments or design solutions. Rather, the use of the words "exemplary" or "for example" is intended to present concepts in a particular manner.

[0038] Before the message transmission method of the embodiments of the present application is described in detail, the implementation environment and application scenarios of the embodiments of the present application are introduced.

[0039] Currently, the SMF network element needs to set the UPF network element as a group-level session and add the MAC address of the UE into the same VN group for the communication between the UEs in a VN group.

[0040] To solve the above problems, an embodiment of the present application provides a message transmission method, and the UPF network element stores at least one VN group, and the VN group includes a plurality of MAC addresses. The UPF network element can obtain a first IP message, the first IP message is an IP message of a first terminal, and the first IP message includes a source MAC address and a destination MAC address. The source MAC address is the MAC address of the first terminal, and the destination MAC address is the MAC address of a second terminal. Then, the UPF network element can determine whether there is a destination VN group in the at least one VN group, and the destination VN group is a VN group in which the source MAC address and the destination MAC address exist in the plurality of MAC addresses. If there is a destination VN group in the at least one VN group, the UPF network element can send the first IP message to the second terminal. In this way, the UPF network element can determine whether the first terminal and the second terminal are terminals in the same VN group, and realize the transmission of messages between terminals in the same VN group, thereby improving the efficiency of message transmission.

[0041] The implementation environment of the embodiment of the present application is introduced below.

[0042] The embodiment of the present application provides a message transmission system, Figure 1A is a UPF network element internal software architecture diagram provided by the present application. As Figure 1A shown, the UPF network element internal software architecture can include an operation and maintenance (OAM) module, a control management (CM) module, a redis database and a traffic management (TM) module.

[0043] The operation and maintenance module can include module one, module two, module three, module four, module five, module six and module seven. The module one can be api-gw, the module two can be conf, the module three can be log, the module four can be alarm, the module five can be sysmgr, the module six can be scada, and the module seven can be HActrl.

[0044] An operation and maintenance module is configured to implement configuration management, service registration, system state monitoring, interface display of signaling and statistical information. In some embodiments, the operation and maintenance module is further configured to support a correspondence between single network slice selection assistance information (S-NSSAI) or a data network name (DNN) and an Internet Protocol (IP) address segment, and support a static configuration start-up local exchange strategy.

[0045] The control management module can include module eight, module nine, module ten and module eleven. Module eight can be an N4 / N4u interface, module nine can be a pfcp parser, module ten can be high availability (HA), and module eleven can be a nodes session.

[0046] The control management module is configured to perform PFPC (Packet Forwarding Control Protocol) signaling interaction with an SMF network element through an N4 interface, implement node management and session management, and publish session information to a database.

[0047] The database can be a redis database. The database is configured to provide a publishing and subscribing channel for session information and statistical information.

[0048] It should be noted that in the embodiments of the present application, the UPF network element can be configured to synchronize session information with the HA. In this way, the availability of the UPF can be improved by eliminating single point of failure.

[0049] The traffic management module can include module twelve, module thirteen, module fourteen and module fifteen. Module twelve can be a report, module thirteen can be session data, module fourteen can be flow, and module fifteen can be fwd.

[0050] The traffic management module is configured to subscribe to session information, establish a table item, perform packet detection rule (PDR) matching on a first packet of a session, and report statistical information. The traffic management module is also configured to manage a million-level fast forwarding table item, receive data traffic of an N3 interface, an N6 interface, and an N9 interface, and perform efficient forwarding according to a forwarding action rule (FAR), a Qos enforcement rule (QER), and a usage reporting rule (URR). The traffic management module is also configured to classify traffic according to a destination MAC address segment, and perform a local fast exchange strategy for data sent by a two-layer terminal in a VN group to another two-layer terminal in the same group. In some embodiments, the traffic management module is highly modular, allowing new nodes to be inserted without changing the underlying code library.

[0051] Figure 1B is a structural diagram of a packet transmission system provided for the present application. The system includes a first terminal, a second terminal, and a UPF network element. The first terminal and the second terminal are located in a VN group of a two-layer private network, and the first terminal and the second terminal respectively establish a communication connection between the UPF network element.

[0052] The first terminal is provided with an N3 communication interface, and the connection between the first terminal and the UPF network element adopts an N3 interface. The second terminal is provided with an N3 communication interface, and the connection between the second terminal and the UPF network element adopts an N3 interface. Alternatively, the second terminal is provided with an N6 communication interface, and the connection between the second terminal and the UPF network element adopts an N6 interface.

[0053] For example, in actual application, the N3 communication interface can be an interface chip supporting an N3 communication protocol. The N6 communication interface can be an interface chip supporting an N6 communication protocol.

[0054] Figure 1C is another structural diagram of a packet transmission system provided for the present application. The UPF network element in the system can include a memory, and the memory stores a PDR. The PDR includes VN group information, which is used to indicate terminals in the same VN group.

[0055] For example, in actual application, the memory can be an erasable programmable read-only memory or an electrically erasable read-only memory. For example, the memory can be an AT93C46 chip. For another example, the memory can also be an AT24C08 chip. For another example, the memory can also be an AT28C16 chip.

[0056] In some embodiments, the VN group information can include: the VN group information includes: a MAC address of the terminal, and a MAC address of a terminal in communication with the terminal.

[0057] In combination Figure 1C The UPF network element in the system can also include a display for displaying a user interaction interface for a user to input a corresponding relationship between slice information and an address segment, the address segment including: a MAC address segment, and / or, an IP address segment.

[0058] For example, in actual application, the display and the memory in the UPF network element can be connected through a graphical user interface (GUI) or a command-line interface (CLI).

[0059] Figure 1D Another structure diagram of a packet transmission system provided by the present application is shown. The system also includes an SMF network element. The SMF network element is provided with an N4 interface, and the UPF network element is provided with an N4 interface. The SMF network element and the UPF network element establish an N4 communication link through the N4 interface. The N4 communication link is used to transmit session configuration information of the SMF network element.

[0060] In combination Figure 1D The UPF network element can also include a processor for managing at least one working thread, the at least one working thread including: a flow processing node. Each working thread in the at least one working thread corresponds to a MAC address of a terminal.

[0061] For example, in actual application, the processor can be composed of a general server (X86 architecture or ARM (advanced RISC machines) architecture) or a system on chip (SOC) solution.

[0062] The embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0063] As Figure 2 shown, a packet transmission method provided by an embodiment of the present application includes:

[0064] S201, a user plane function network element acquires a first IP packet.

[0065] The first IP packet is an IP packet of a first terminal. The first IP packet includes: a source MAC address and a destination MAC address. The source MAC address is a MAC address of the first terminal, and the destination MAC address is a MAC address of a second terminal.

[0066] It should be noted that in the embodiments of the present application, there is only one MAC address for one terminal.

[0067] In a possible implementation, the base station can obtain the IP packet of the first terminal. Then, the base station can send the first IP packet to the UPF network element. The UPF network element can receive the first IP packet from the base station.

[0068] For example, the base station can send the first IP packet to the UPF network element through the N3 port. Then, the UPF network element can receive the first IP packet from the base station.

[0069] S202, the user plane function network element determines whether the destination virtual network group exists in the at least one virtual network group.

[0070] The VN group includes a plurality of MAC addresses. The destination VN group is a VN group in which the source MAC address and the destination MAC address exist in the plurality of MAC addresses.

[0071] It should be noted that in the embodiments of the present application, if the source MAC address and the destination MAC address are in the same VN group, it means that the first terminal and the second terminal are in the same VN group. If the source MAC address and the destination MAC address are not in the same VN group, it means that the first terminal and the second terminal are not in the same VN group.

[0072] In a possible design, each VN group in the at least one VN group can generate a VN group identifier.

[0073] For example, if the at least one VN group includes a first VN group, a second VN group and a third VN group, the identifier of the first VN group can be VN group 1, the identifier of the second VN group can be VN group 2, and the identifier of the third VN group can be VN group 3.

[0074] In a possible implementation, the UPF network element stores at least one VN group. The UPF network element can determine whether there is a VN group identical to the identifier of the destination VN group in the identifier of the at least one VN group. If there is a VN group identical to the identifier of the destination VN group in the identifier of the at least one VN group, the UPF network element can determine that the destination VN group exists in the at least one VN group. If there is no VN group identical to the identifier of the destination VN group in the identifier of the at least one VN group, the UPF network element can determine that the destination VN group does not exist in the at least one VN group.

[0075] For example, if the at least one VN group includes VN group 1, VN group 2, and VN group 3, if the identifier of the destination VN group is VN group 1, the UPF network element can determine that the destination VN group exists in the at least one VN group. If the identifier of the destination VN group is VN group 4, the UPF network element can determine that the destination VN group does not exist in the at least one VN group.

[0076] In another possible implementation, the UPF network element stores a first correspondence relationship, and the first correspondence relationship is a correspondence relationship between slice information and a VN group. The UPF network element can determine whether the destination VN group exists in the at least one VN group by using the first correspondence relationship.

[0077] It should be noted that in the embodiments of the present application, the slice information is not limited. For example, the slice information can be a data network name (DNN). For another example, the slice information can be an S-NSSAI. For another example, the slice information can be an access point name (APN). An administrator can determine the correspondence relationship between the slice information and the VN group by using a configuration file.

[0078] For example, the DNNs of VN1 and VN2 are both dnn test1, VN1 is configured with a MAC address segment and a MAC address, and VN2 is configured with a MAC address segment and a MAC address. Similarly, the DNNs of VN3 and VN4 are both dnn test2, VN3 is configured with a MAC address segment and a MAC address, and VN4 is configured with a MAC address segment and a MAC address. The configuration code of the first correspondence relationship can be as follows.

[0079] citc_upf{dnn test1{vn-grp VN1{

[0080] mac-subnet 00:0c:29 / 24;mac-address 00:0c:30:6b:a9:18;}

[0081] vn-grp VN2{mac-subnet 00:0b:01 / 24;mac-address 00:0b:02:bb:c2:13;}}}。

[0082] In some embodiments, if the UPF network element determines that the destination VN group exists in the at least one VN group, the UPF network element can perform S203.

[0083] In some embodiments, if the UPF network element determines that the destination VN group does not exist in the at least one VN group, the UPF network element can send a first IP packet to a data network (DN).

[0084] Exemplarily, if the UPF network element determines that the destination VN group does not exist in the at least one VN group, the UPF network element can send the first IP packet to the DN through the N6 interface.

[0085] S203, the user plane function network element sends the first IP packet to the second terminal.

[0086] In a possible implementation, the UPF network element can determine the second terminal according to the destination MAC address. Then, the UPF network element can send the first IP packet to the second terminal.

[0087] Exemplarily, the UPF network element can send the first IP packet to the second terminal through the N3 interface.

[0088] It should be noted that in the embodiments of the present application, one terminal corresponds to one MAC address. Therefore, the UPF network element can determine the terminal according to the MAC address.

[0089] It can be understood that the UPF network element stores at least one VN group, and the VN group includes a plurality of MAC addresses. The UPF network element can obtain a first IP packet, the first IP packet being an IP packet of a first terminal, and the first IP packet including a source MAC address and a destination MAC address. The source MAC address is the MAC address of the first terminal, and the destination MAC address is the MAC address of a second terminal. Then, the UPF network element can determine whether a destination VN group exists in the at least one VN group, the destination VN group being a VN group in which the source MAC address and the destination MAC address exist in the plurality of MAC addresses. If the destination VN group exists in the at least one VN group, the UPF network element can send the first IP address to the second terminal. In this way, the UPF network element can determine whether the first terminal and the second terminal are terminals in the same VN group, so as to realize the transmission of packets between terminals in the same VN group, thereby improving the efficiency of packet transmission.

[0090] It should be noted that in the embodiments of the present application, in the process that the first terminal sends the first IP packet to the second terminal, the first terminal needs to send the first IP packet to all terminals except the first terminal in a broadcast manner through the UPF network element. After receiving the first IP packet, the second terminal needs to feed back to the UPF network element, and the UPF network element determines the second terminal. After receiving the first IP packet, the other terminals except the second terminal discard the first IP packet. In this way, the complexity of packet transmission is increased.

[0091] In the embodiments of the present application, as shown in Figure 3 the packet transmission method can further include S301-S303 before S202.

[0092] S301, the user plane function network element determines whether the first target forwarding information exists in the first preset forwarding information.

[0093] The first target forwarding information includes a source MAC address and a destination MAC address.

[0094] In the embodiment of the present application, the UPF network element stores the first preset forwarding information, and the first preset forwarding information includes a source MAC address and a MAC address of a terminal in communication with the first terminal.

[0095] For example, as shown in Table 1, the first preset forwarding information is shown. Assuming that the sending end is the first terminal, the source MAC address is the MAC address of the first terminal. The receiving end is a terminal in communication with the first terminal, and the receiving end can include a third terminal, a fourth terminal, and a fifth terminal.

[0096] Table 1: First preset forwarding information

[0097] Sending end Receiving end Source MAC address MAC address of the third terminal Source MAC address MAC address of the fourth terminal Source MAC address MAC address of the fifth terminal

[0098] That is, if the sending end is the source MAC address and the receiving end is the MAC address of the third terminal, the first terminal can communicate with the third terminal. If the sending end is the source MAC address and the receiving end is the MAC address of the fourth terminal, the first terminal can communicate with the fourth terminal. If the sending end is the source MAC address and the receiving end is the MAC address of the fifth terminal, the first terminal can communicate with the fifth terminal.

[0099] In a possible implementation, the UPF network element can determine whether the first preset forwarding information includes the same forwarding information as the first target forwarding information. If the first preset forwarding information includes the same forwarding information as the first target forwarding information, the UPF network element can determine that the first preset forwarding information includes the first target forwarding information. If the first preset forwarding information does not include the same forwarding information as the first target forwarding information, the UPF network element can determine that the first preset forwarding information does not include the first target forwarding information.

[0100] For example, in combination with Table 1, the first target forwarding information is the source MAC address (the MAC address of the first terminal) and the destination MAC address (the MAC address of the second terminal). Assuming that the first preset forwarding information includes the source MAC address and the MAC address of the third terminal, the source MAC address and the MAC address of the fourth terminal, and the source MAC address and the MAC address of the fifth terminal, the first preset forwarding information does not include the first target forwarding information. Assuming that the first preset forwarding information includes the source MAC address and the MAC address of the second terminal, the source MAC address and the MAC address of the third terminal, and the source MAC address and the MAC address of the fourth terminal, the first preset forwarding information includes the first target forwarding information.

[0101] It should be noted that in the embodiments of the present application, the execution order of S202 and S301 is not limited. For example, the UPF network element can first determine whether the destination VN group exists in the at least one VN group, and then determine whether the first target forwarding information exists in the first preset forwarding information. For another example, the UPF network element can first determine whether the first target forwarding information exists in the first preset forwarding information, and then determine whether the destination VN group exists in the at least one VN group.

[0102] In some embodiments, if the first target forwarding information exists in the first preset forwarding information, the UPF network element can perform S302.

[0103] In some embodiments, if the first target forwarding information does not exist in the first preset forwarding information, the UPF network element can perform S303. Then, the UPF network element can perform S302.

[0104] S302, the user plane function network element sends the first IP packet to the second terminal according to the first target forwarding information.

[0105] In a possible implementation, the UPF network element can determine the second terminal according to the first target forwarding information. Then, the UPF network element can send the first IP packet to the second terminal.

[0106] It should be noted that in the embodiments of the present application, the introduction of the UPF network element sending the first IP packet to the second terminal can refer to the description of the UPF network element sending the first IP packet to the second terminal in S203, which will not be repeated here.

[0107] It can be understood that the UPF network element stores the first preset forwarding information, and the first preset forwarding information includes the source MAC address and the MAC address of the terminal in communication with the first terminal. If the destination VN group exists in the at least one VN group, and the first target forwarding information exists in the first preset forwarding information, the UPF network element can send the first IP packet to the second terminal according to the first target forwarding information. In this way, the UPF network element can query the destination MAC address in the first preset forwarding information, determine the second terminal, and send the first IP packet to the second terminal. Thus, the efficiency of message transmission is improved.

[0108] S303, the user plane function network element creates the first target forwarding information, and updates the first preset forwarding information.

[0109] The updated first preset forwarding information includes the first target forwarding information.

[0110] It should be noted that in the embodiments of the present application, if the UPF network element determines that the first target forwarding information does not exist in the first preset forwarding information, the UPF network element needs to send the first IP packet to all terminals except the first terminal. After receiving the first IP packet, the second terminal sends the first feedback information to the UPF network element. The UPF network element can determine the second terminal through the first feedback information.

[0111] In a possible implementation, the UPF network element can create the first target forwarding information. Then, the UPF network element can update the first preset forwarding information according to a preset algorithm.

[0112] It should be noted that in the embodiments of the present application, the preset algorithm is not limited. For example, the preset algorithm can be a least recently used (LRU) algorithm. For another example, the preset algorithm can be a first in first out (FIFO) algorithm. For another example, the preset algorithm can be a least frequently used (LFU) algorithm.

[0113] It can be understood that the UPF network element stores the first preset forwarding information, and the first preset forwarding information includes a source MAC address and a MAC address of a terminal in communication with the first terminal. If there is a destination VN group in at least one VN group, but the first target forwarding information does not exist in the first preset forwarding information, the UPF network element can create the first target forwarding information and update the first preset forwarding information, and the updated first preset forwarding information includes the first target forwarding information. Then, the UPF network element can send the first IP packet to the second terminal according to the first target forwarding information. In this way, the UPF network element can update the first preset forwarding information for the use of the first target forwarding information in the subsequent packet transmission process. Thus, the complexity of packet transmission is reduced, and the efficiency of packet transmission is improved.

[0114] The transmission of the message in the present application is introduced below with specific embodiments. The transmission process of the message can be divided into four stages, which can include: stage one, stage two, stage three and stage four. Among them, stage one includes that the UPF network element can determine to obtain a first IP message, and perform legality verification on the IP message. Stage two includes that the UPF network element can determine a first thread of the first IP message according to the source MAC address, and the first thread is used for processing the IP message of the first terminal. Then, the UPF network element can determine a first target PDR according to the source MAC address, and process and decapsulate the first IP message. Stage three includes that the UPF network element can determine a second thread of the first IP message according to the destination MAC address, and the second thread is used for processing the IP message of the second terminal. Then, the UPF network element can determine a second target PDR according to the destination MAC address, and process and encapsulate the first IP message. Stage four includes that the UPF network element can send the first IP message to the second terminal.

[0115] The specific introduction of each stage is as follows, as shown in Figure 4 The UPF network element can include multiple nodes: message receiving node, IP message query node, local IP message processing node, UDP message query node, message distribution node, flow processing node, rule processing node, message classification node, GPRS user plane part (GTPU) message encapsulation node, IPv4 message header query node, Ethernet layer query node, interface packet node.

[0116] Among them, the message receiving node can include a first receiving node, a second receiving node and a third receiving node.

[0117] The first receiving node (dpdk-input) is used for receiving a Data Plane Development Kit (DPDK) message and determining whether the DPDK message is an IP message. The second receiving node (ip-input) is used for receiving an IP message. The IP message query node (ip-lookup) is used for determining the source IP address and the destination IP address of the IP message. The local IP message processing node (ip-local) is used for reassembling IP fragments. The UDP message query node (ip-udp-lookup) is used for determining the upper layer protocol of the IP message. The third receiving node (gtpu-input) is used for receiving a first IP message and classifying the first IP message.

[0118] A message distribution node (worker-handoff) is configured to assign a thread for processing the message according to the source MAC address. The message distribution node is also configured to assign a thread for processing the message according to the destination MAC address. A flow processing node (flow-process) is configured to match a PDR for the first IP message and maintain preset forwarding information.

[0119] A rule processing node (rule-process) is configured to process the message according to a rule corresponding to the PDR. The rule processing node is also configured to determine whether the first target forwarding information exists in the preset forwarding information. The rule processing node is also configured to create the first target forwarding information and update the preset forwarding information.

[0120] A message classification node (inner-classify) is configured to classify the inner message according to the destination MAC of the inner message. The message classification node is also configured to determine whether the destination VN group exists in the at least one VN group.

[0121] An Ethernet layer query node (mac-lookup) is configured to determine the destination MAC address of the IP message. A GTPU message encapsulation node (gtpu-encap) is configured to encapsulate a GTPU header for the first IP message according to a rule corresponding to the PDR. An IPv4 message header query node (ip4-rewirte) is configured to convert the IP address of the IP message.

[0122] A message sending node (interface-oput) is configured to determine a port for sending the IP message. The message sending node is also configured to send the first IP message to a second terminal. In stage one, in some embodiments, the UPF network element can determine to obtain the first IP message and perform a legality check on the IP message.

[0123] In the embodiments of the present application, the UPF network element can obtain a DPDK message through an N3 interface. A first receiving node can receive the DPDK message and classify the DPDK message according to a message type.

[0124] In a possible design, if the DPDK message is an IP message, the first receiving node can send the first IP message to a second receiving node. Optionally, the first IP message can include a source IP address, a destination IP address, an upper layer protocol, and a Protocol Data Unit (PDU) type.

[0125] Subsequently, the UPF network element obtains the source IP address and the destination IP address of the first IP message at the second receiving node. The UPF network element queries the source IP address and the destination IP address of the first IP message at an IP message query node to determine that the first IP message is a local IP message.

[0126] In a possible design, if the source IP address is the same as the destination IP address, the UPF network element can determine that the first IP packet is a local IP packet. Then, the IP packet query node sends the first IP packet to the local IP packet processing node.

[0127] Then, the UPF network element reassembles the IP fragments through the local IP packet processing node. Then, the local IP packet processing node sends the first IP packet to a User Datagram Protocol (UDP) packet query node. The UPF network element determines the upper layer protocol of the first IP packet at the UDP packet query node, and determines whether the first IP packet is a UDP packet.

[0128] In a possible design, if the upper layer protocol of the first IP packet is UDP, the UPF network element can determine that the first IP packet is a UDP packet. Then, the UDP packet query node can send the first IP packet to the transport layer according to the upper layer protocol, and the third receiving node receives the first IP packet.

[0129] It should be noted that, in the embodiment of the present application, after the UPF network element receives the first IP packet, the UPF network element does not detect the first IP packet, and thus cannot guarantee the legality of the first IP packet.

[0130] In some embodiments, the UPF network element can determine whether the first IP packet is a T-PDU packet according to the upper layer protocol of the first IP packet. Then, the UPF network element can determine whether the first IP packet is an uplink packet according to the PDU type of the first IP packet.

[0131] In a possible design, if the first IP packet is a T-PDU packet and the first IP packet is an uplink packet, the UPF network element can send the first IP packet to the transport layer.

[0132] It should be noted that, in the embodiment of the present application, if the first IP packet is a T-PDU packet and the first IP packet is an uplink packet, it means that the first IP packet is a legal packet, and the UPF network element can send the first IP packet to the transport layer.

[0133] In another possible design, if the first IP packet is not a T-PDU packet and / or the first IP packet is not an uplink packet, the UPF network element can send a feedback message to the first terminal, and the feedback message can be an error of the first IP packet.

[0134] That is, if the first IP packet is not a T-PDU packet, but the first IP packet is an uplink packet, the UPF network element can send a feedback message to the first terminal. If the first IP packet is a T-PDU packet, but the first IP packet is not an uplink packet, the UPF network element can send a feedback message to the first terminal. If the first IP packet is a T-PDU packet, and the first IP packet is not an uplink packet, the UPF network element can send a feedback message to the first terminal.

[0135] It should be noted that in the embodiments of the present application, if the first IP packet is not a T-PDU packet, and / or the first IP packet is not an uplink packet, it means that the first IP packet is not a legal packet, and the UPF network element can send a feedback message to the first terminal.

[0136] It can be understood that the UPF network element can determine whether the first IP packet is a T-PDU packet according to the upper layer protocol of the first IP packet. Then, the UPF network element can determine whether the first IP packet is an uplink packet according to the PDU (Protocol Data Unit) type of the first IP packet. In this way, the UPF network element can detect the legality of the first IP packet.

[0137] In stage two, in some embodiments, the UPF network element can determine the first thread of the first IP packet according to the source MAC address, the first thread being used for processing IP packets of the first terminal. Then, the UPF network element can determine the first target PDR according to the source MAC address, and process and decapsulate the first IP packet.

[0138] In the embodiments of the present application, the third receiving node can receive the first IP packet (S201) and record the slice offset of the first IP packet. Then, the third receiving node can determine that the working thread of the first IP packet is the first thread according to the source MAC address, the first thread being used for processing IP packets of the first terminal. The third receiving node can send the first IP packet to the packet distribution node. The packet distribution node can distribute the first IP packet to the first thread.

[0139] It should be noted that in the embodiments of the present application, when multiple working threads process IP packets of the same terminal, the problem of multi-thread locking may occur.

[0140] In some embodiments, the UPF network element can acquire a third IP packet, the third IP packet being an IP packet of a third terminal. The third IP packet includes a source MAC address and a destination MAC address. The source MAC address in the third IP packet is the MAC address of the third terminal, and the destination MAC address in the third IP packet is the MAC address of a fourth terminal. Then, the UPF network element can determine whether the first terminal and the third terminal are the same according to the source MAC address in the first IP packet and the source MAC address in the third IP packet.

[0141] In a possible design, if the source MAC address in the first IP packet is the same as the source MAC address in the third IP packet, the first terminal and the third terminal are the same. The UPF network element can then distribute the first IP packet and the third IP packet to the same worker thread.

[0142] It should be noted that in the embodiments of the present application, if the first terminal and the second terminal are the same, it means that the first IP packet and the third IP packet are IP packets sent by the same terminal. The UPF network element can distribute the IP packets sent by the same terminal to the same worker thread.

[0143] In another possible design, if the source MAC address in the first IP packet is different from the source MAC address in the third IP packet, the first terminal and the third terminal are different. The UPF network element can distribute the first IP packet and the third IP packet to different worker threads.

[0144] It should be noted that in the embodiments of the present application, if the first terminal and the second terminal are different, it means that the first IP packet and the third IP packet are not IP packets sent by the same terminal. The UPF network element can distribute the IP packets sent by different terminals to different worker threads.

[0145] It can be understood that the UPF network element can acquire a third IP packet, the third IP packet being an IP packet of a third terminal. The third IP packet includes a source MAC address and a destination MAC address. The UPF network element can determine whether the first terminal and the third terminal are the same according to the source MAC address in the first IP packet and the source MAC address in the third IP packet. If the first terminal and the third terminal are the same, the UPF network element can distribute the first IP packet and the third IP packet to the same worker thread. If the first terminal and the third terminal are different, the UPF network element can distribute the first IP packet and the third IP packet to different worker threads. In this way, it is ensured that multiple IP packets sent by the same terminal can be processed by the same worker thread, and the occurrence of the multi-thread locking problem is avoided.

[0146] Afterwards, the SMF network element can send a plurality of PDRs to the UPF network element in response to the first IP packet. The UPF network element can receive the plurality of PDRs from the SMF network element. Then, the UPF network element can determine a first target PDR from the plurality of PDRs according to the source MAC address at the flow processing node, the first target PDR being a PDR matching the first IP packet.

[0147] In a possible design, the UPF network element can determine the first target PDR according to a priority of the PDRs.

[0148] For example, the UPF network element can sort the plurality of PDRs according to the priority. The UPF network element can traverse the plurality of PDRs from the PDR with the highest priority to determine the first target PDR with the highest priority.

[0149] Afterwards, the UPF network element can determine a plurality of first target rules according to the first target PDR at the rule processing node. The first target rules can include a FAR, a QER, and a URR. The UPF network element can process the first IP packet according to the target rules.

[0150] Afterwards, the UPF network element can determine whether the first target forwarding information exists in the first preset forwarding information (S301). If the first target forwarding information exists in the first preset forwarding information, the UPF network element can decapsulate the first IP packet. If the first target forwarding information does not exist in the first preset forwarding information, the UPF network element can create the first target forwarding information and update the first preset forwarding information. Afterwards, the UPF network element can decapsulate the first IP packet.

[0151] In a possible design, the UPF network element can decapsulate the first IP packet according to the first target rules to determine a decapsulated first IP packet.

[0152] For example, the UPF network element can decapsulate the first IP packet according to a parameter Outer Header Creation in the first target rules to determine a decapsulated first IP packet.

[0153] In an embodiment of the present application, the UPF network element can send the decapsulated first IP packet to the packet classification node according to a token bucket algorithm.

[0154] In a possible design, the UPF network element stores a plurality of forwarding tokens, each of the plurality of forwarding tokens having a preset forwarding length, the preset forwarding length being a remaining forwarding length of the forwarding token. If the length of the first IP packet is greater than a preset token length threshold, the UPF network element can discard the first IP packet. If the length of the first IP packet is less than (or equal to) the preset token length threshold, the UPF network element can select, from the plurality of forwarding tokens, a forwarding token whose preset forwarding length is greater than (or equal to) the length of the first IP packet, and send the first IP packet to the second terminal.

[0155] For example, assuming that preset forwarding lengths of the plurality of forwarding tokens include: the preset forwarding length of the forwarding token a is 5, the preset forwarding length of the forwarding token b is 2, and the preset forwarding length of the forwarding token c is 8. If the length of the first IP packet is 6, the UPF network element can select the forwarding token c and send the first IP packet to the second terminal. If the length of the first IP packet is 10, the UPF network element can discard the first IP packet.

[0156] It can be understood that the UPF network element can send the first IP packet to the packet classification node according to a token algorithm. In this way, the UPF network element can select the most suitable forwarding token for the first IP packet, and implement transmission of the first IP packet.

[0157] In some embodiments, in stage three, the UPF network element can determine, according to the destination MAC address, a second thread of the first IP packet, the second thread being used for processing IP packets of the second terminal. Then, the UPF network element can determine a second target PDR according to the destination MAC address, and process and encapsulate the first IP packet.

[0158] It should be noted that, in the embodiments of the present application, after the UPF network element decapsulates the first IP packet, the UPF network element can send the first IP packet to the second terminal according to the destination MAC address. Therefore, the first IP packet is an IP packet sent to the second terminal. At this time, the first IP packet is a downlink packet.

[0159] In the embodiments of the present application, after the packet classification node receives the decapsulated first IP packet, the UPF network element can determine whether the first terminal and the second terminal are terminals in a same VN group according to the destination MAC address (S202).

[0160] In a possible design, if the first terminal and the second terminal are not terminals in a same VN group, the packet classification node can send the decapsulated first IP packet to an Ethernet layer query node. The Ethernet layer query node can send the first IP packet to a packet sending node according to the destination MAC address. Then, the packet sending node can send the first IP packet to a DN through an N6 interface.

[0161] In another possible design, if the first terminal and the second terminal are terminals in the same VN group, the message classification node can send the decapsulated first IP message to the message distribution node. The message distribution node can distribute the decapsulated first IP message to a second thread according to the destination MAC address, where the second thread is configured to process IP messages of the second terminal.

[0162] It should be noted that, in the embodiments of the present application, the description of "the message distribution node can distribute the decapsulated first IP message to a second thread according to the destination MAC address" can refer to the description of "the message distribution node can distribute the first IP message to a first thread" in stage two, which will not be repeated here.

[0163] It should be noted that, in the embodiments of the present application, in order to avoid the occurrence of the multi-thread locking problem, the UPF network element can determine whether the second terminal and the fourth terminal are the same according to the destination MAC address in the first IP message and the destination MAC address in the third IP message. The description of "the UPF network element can determine whether the second terminal and the fourth terminal are the same according to the destination MAC address in the first IP message and the destination MAC address in the third IP message" can refer to the description of "the UPF network element can determine whether the first terminal and the third terminal are the same according to the source MAC address in the first IP message and the source MAC address in the third IP message", which will not be repeated here.

[0164] It should be understood that the UPF network element can determine whether the second terminal and the fourth terminal are the same according to whether the destination MAC address in the first IP message and the destination MAC address in the third IP message are the same. If the second terminal and the fourth terminal are the same, the UPF network element can distribute the first IP message and the third IP message to the same working thread. If the second terminal and the fourth terminal are different, the UPF network element can distribute the first IP message and the third IP message to different working threads. In this way, it is ensured that multiple IP messages received by the same terminal can be processed by the same working thread, and the occurrence of the multi-thread locking problem is avoided.

[0165] In the embodiments of the present application, the UPF network element can determine a second target PDR from a plurality of PDRs according to the destination MAC address at the flow processing node, where the second target PDR is a PDR matched with the decapsulated first IP message.

[0166] It should be noted that in the embodiments of the present application, for the introduction of "the UPF network element can determine the second target PDR from the multiple PDRs according to the destination MAC address at the flow processing node", reference can be made to the description of "the UPF network element can determine the first target PDR from the multiple PDRs according to the source MAC address at the flow processing node" in stage two, which will not be repeated here.

[0167] Then, the UPF network element can determine multiple second target rules according to the second target PDR at the rule processing node. The UPF network element can process the first IP packet after decapsulation according to the second target rule.

[0168] It should be noted that in the embodiments of the present application, for the introduction of the second target rule, reference can be made to the description of the first target rule in stage two, which will not be repeated here.

[0169] Then, the UPF network element can determine whether the first target forwarding information exists in the second preset forwarding information, and the second preset forwarding information is the MAC address of the destination (i.e. the MAC address of the second terminal) and the MAC address of the terminal communicating with the second terminal. If the first target forwarding information exists in the second preset forwarding information, the UPF network element can send the first IP packet after decapsulation to the GTPU packet encapsulation node. If the first target forwarding information does not exist in the second preset forwarding information, the UPF network element can update the second preset forwarding information.

[0170] It should be noted that in the embodiments of the present application, when the second terminal is the sending terminal, the MAC address of the second terminal is the forwarding information of the source MAC address. In this way, the complexity of the process of the second terminal sending the IP packet to the first terminal is reduced, and the efficiency of packet transmission is improved.

[0171] It should be noted that in the embodiments of the present application, for the introduction of updating the second preset forwarding information, reference can be made to the description of updating the first preset forwarding information in S303, which will not be repeated here.

[0172] In one possible implementation, the UPF network element can send the first IP packet after decapsulation to the GTPU packet encapsulation node according to the token bucket rule.

[0173] It should be noted that in the embodiments of the present application, for the introduction of "the UPF network element sends the first IP packet after decapsulation to the GTPU packet encapsulation node according to the token bucket rule", reference can be made to the description of "the UPF network element sends the first IP packet after decapsulation to the packet classification node according to the token bucket algorithm" in stage two, which will not be repeated here.

[0174] Afterwards, the GTPU packet encapsulation node receives the decapsulated first IP packet. The GTPU packet encapsulation node encapsulates the decapsulated first IP packet according to the second target rule, and determines the first IP packet sent to the second terminal.

[0175] For example, the UPF network element can encapsulate the outer header of the decapsulated first IP packet according to the parameter Outer Header Creation in the second target rule, and determine the first IP packet sent to the second terminal.

[0176] In some embodiments, the UPF network element can send the first IP packet to the second terminal.

[0177] In the embodiments of the present application, the UPF network element can calculate the checksum of the first IP packet, and check whether the format of the first IP packet is correct. If the format of the first IP packet is correct, the UPF network element can send the first IP packet to the IP packet query node.

[0178] It should be noted that in the embodiments of the present application, the checksum of the first IP packet is used to check whether the outer header and the inner data of the first IP packet are correct.

[0179] Afterwards, the IP packet query node can determine the destination IP address and the destination MAC address of the first IP packet, and send the first IP packet to the IPv4 packet header rewriting node. The IPv4 packet header rewriting node can check the outer header of the first IP packet, and determine whether the first IP packet meets the network address translation (NAT) requirement. If the first IP packet meets the NAT requirement, the UPF network element can convert the IP address of the first IP packet, and then send the first IP packet to the packet sending node. If the first IP packet does not meet the NAT requirement, the UPF network element can send the first IP packet to the packet sending node.

[0180] In the embodiments of the present application, the packet sending node can receive the first IP packet, and send the first IP packet to the second terminal.

[0181] For example, the packet sending node can send the first IP packet to the second terminal through the N3 interface.

[0182] It can be understood that the UPF network element can obtain the first IP packet. Then, the UPF network element can determine a first thread for the first IP packet according to the source MAC address. The UPF network element can determine a target PDR for the first IP packet according to the source MAC address. Then, the UPF network element can determine a plurality of target rules according to the target PDR, and process and decapsulate the first IP packet according to the plurality of target rules. Then, the UPF network element can determine a second thread for the first IP packet according to the destination MAC address, and process the first IP packet according to the destination MAC address and the PDR corresponding rule. Then, the UPF network element can encapsulate the first IP packet and send the first IP packet to the second terminal. In this way, the transmission of the packet is realized.

[0183] The above mainly introduces the scheme provided by the embodiments of the application from the perspective of the computer device. It can be understood that the computer device contains the hardware structure and / or software module corresponding to the execution of each function in order to realize the above functions. Those skilled in the art should easily realize that the transmission method steps of the packet of each example described in combination with the embodiments disclosed in the application can be realized in the form of hardware or the combination of hardware and computer software. Whether a certain function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the application.

[0184] The embodiments of the application also provide a packet transmission system. The packet transmission system comprises a first terminal, a second terminal and a user plane function UPF network element. The first terminal and the second terminal are located in a virtual network VN group of a two-layer private network, and the first terminal and the second terminal respectively establish a communication connection with the UPF network element. The UPF network element comprises a memory, and the memory stores a packet detection rule PDR, wherein the PDR comprises: virtual network VN group information, and the VN group information is used to indicate terminals in the same VN group.

[0185] Optionally, the first terminal is provided with an N3 communication interface, and the connection between the first terminal and the UPF network element adopts an N3 interface connection mode. The second terminal is provided with an N3 communication interface, and the connection between the second terminal and the UPF network element adopts an N3 interface connection mode. Alternatively, the second terminal is provided with an N6 interface, and the connection between the second terminal and the UPF network element adopts an N6 interface connection mode.

[0186] Optionally, the VN group information comprises: the MAC address of the terminal and the MAC address of the terminal in communication with the terminal.

[0187] Optionally, the UPF includes a display configured to display a user interaction interface configured to receive user input of a correspondence between a slice information and an address segment, the address segment including a MAC address segment and / or an IP address segment.

[0188] Optionally, the packet transmission system further includes a session management function (SMF) network element. The SMF network element is configured with an N4 interface, and the UPF network element is configured with an N4 interface. The SMF network element and the UPF network element establish an N4 communication link through the N44 interface. The N4 communication link is configured to transmit session configuration information of the SMF network element.

[0189] Optionally, the UPF network element further includes a processor configured to manage at least one worker thread. The at least one worker thread includes a flow processing node. Each worker thread of the at least one worker thread corresponds to a MAC address of a terminal.

[0190] Embodiments of the present application also provide a packet transmission device. The packet transmission device can be a computer device, a CPU in the computer device, a module for transmitting a packet in the computer device, or a client for transmitting a packet in the computer device.

[0191] Embodiments of the present application can divide the function modules or function units for packet transmission according to the above method examples. For example, each function module or function unit can be divided according to each function, or two or more functions can be integrated into one processing module. The integrated module can be implemented in the form of hardware or software function module or function unit. The division of modules or units in embodiments of the present application is illustrative, and is only a logical function division. Actual implementation can have another division manner.

[0192] As shown in Figure 5 , it is a structure schematic diagram of a packet transmission device provided by an embodiment of the present application. The packet transmission device is configured to execute the packet transmission method shown in Figure 2 , Figure 3 and Figure 4 . The packet transmission device can include an acquisition module 501, a sending module 502, and a processing module 503.

[0193] The acquisition module 501 is configured to acquire a first network protocol (IP) message, the first IP message being an IP message of a first terminal, and the first IP message comprising a source MAC address and a destination MAC address, the source MAC address being a MAC address of the first terminal, and the destination MAC address being a MAC address of a second terminal.

[0194] Optionally, the UPF network element further stores first preset forwarding information, and the first preset forwarding information comprises the source MAC address and a MAC address of a terminal in communication with the first terminal. The processing module 503 is configured to determine whether the first preset forwarding information comprises first target forwarding information, and the first target forwarding information comprises the source MAC address and the destination MAC address. The sending module 502 is specifically configured to send the first IP message to the second terminal according to the first target forwarding information if the first preset forwarding information comprises the first target forwarding information.

[0195] Optionally, the processing module 503 is specifically configured to create the first target forwarding information and update the first preset forwarding information if the first preset forwarding information does not comprise the first target forwarding information, and the updated first preset forwarding information comprises the first target forwarding information. The sending module 502 is specifically configured to send the first IP message to the second terminal according to the first target forwarding information.

[0196] Optionally, the UPF network element further stores second preset forwarding information, and the second preset forwarding information comprises the destination MAC address and a MAC address of a terminal in communication with the second terminal. The processing module 503 is specifically configured to update the second preset forwarding information if the second preset forwarding information does not comprise the first target forwarding information, and the updated second preset forwarding information comprises the first target forwarding information.

[0197] Optionally, the source MAC address corresponds to a first thread, and the destination MAC corresponds to a second thread. The first thread is configured to process the IP message of the first terminal, and the second thread is configured to process the IP message of the second terminal.

[0198] Figure 6 FIG. 1 is a schematic diagram of a hardware structure of a message transmission device according to an example embodiment. The message transmission device can comprise a processor 601 configured to execute application code, thereby implementing the message transmission method in the present application.

[0199] The processor 601 can be a central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of programs of the solutions of the present application.

[0200] As shown in Figure 6 the message transmission device can further include a memory 602. The memory 602 is configured to store application program codes for implementing the solutions of the present application and to be controlled by the processor 601 to execute the application program codes.

[0201] The memory 602 can be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, a magneto-optical disk, a magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program codes in the form of instructions or data structures and that can be accessed by a computer, but is not limited to this. The memory 602 can exist independently and be connected to the processor 601 through the bus 604. The memory 602 can also be integrated with the processor 601.

[0202] As shown in Figure 6 the message transmission device can further include a communication interface 603. The processor 601, the memory 602, and the communication interface 603 can be coupled to each other, for example, through the bus 604. The communication interface 603 is configured to interact with other devices, for example, to support the message transmission device to interact with other devices.

[0203] It should be noted that the device structures shown in Figure 6 the message transmission device do not constitute a limitation on the message transmission device. In addition to the components shown in Figure 6 the message transmission device can include more or fewer components than those shown in the figure, or some components can be combined, or different components can be arranged.

[0204] In actual implementation, the functions implemented by the processing module 503 can be implemented byFigure 6 The processor 601 shown invokes program code in the memory 602 to implement.

[0205] The present application also provides a computer readable storage medium, and the computer readable storage medium stores instructions, when the instructions in the computer readable storage medium are executed by a processor of a computer device, the computer can execute the packet transmission method provided by the embodiments shown above. For example, the computer readable storage medium can be a memory 602 including instructions, and the above instructions can be executed by the processor 601 of the computer device to complete the above method. Alternatively, the computer readable storage medium can be a non-transitory computer readable storage medium, for example, the non-transitory computer readable storage medium can be a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device, etc.

[0206] Figure 7 The conceptual partial view of the computer program product provided by the embodiments of the present application is schematically shown, and the computer program product includes a computer program for executing a computer process on a computing device.

[0207] In one embodiment, the computer program product is provided using a signal bearing medium 700. The signal bearing medium 700 can include one or more program instructions, which when executed by one or more processors, can provide the above-described functionality or partial functionality. Thus, for example, referring to the embodiments shown in Figure 2 , Figure 3 and Figure 4 described above, one or more features of S201-S203 can be assumed by one or more instructions associated with the signal bearing medium 700. Further, the program instructions in Figure 2 also describe example instructions. Figure 7

[0208] In some examples, the signal bearing medium 700 can include a computer readable medium 701 such as, but not limited to, a hard disk drive, a compact disk (CD), a digital video disc (DVD), a digital tape, memory, read-only memory (ROM), or random access memory (RAM), etc.

[0209] In some embodiments, the signal bearing medium 700 can include a computer recordable medium 702 such as, but not limited to, a memory, a read / write (R / W) CD, a R / W DVD, etc.

[0210] ​In some embodiments, the signal-bearing medium 700 can comprise a communication medium 703, such as, but not limited to, digital and / or analog communication medium (e.g., fiber optic cable, waveguide, wired communication links, wireless communication links, etc.).

[0211] The signal-bearing medium 700 can be conveyed by a wireless form of the communication medium 703. The one or more program instructions can be, for example, computer-executable or logic-implementing instructions.

[0212] In some examples, such as for Figure 5 The transmission apparatus of the described message can be configured to provide various operations, functions, or actions in response to the one or more program instructions of the computer-readable medium 701, the computer-recordable medium 702, and / or the communication medium 703.

[0213] From the above descriptions of the embodiments, those skilled in the art can clearly understand that, for the convenience and brevity of description, only the above-described division of the functional modules is exemplified, and in actual application, the above-described functions can be completed by different functional modules, that is, the internal structure of the apparatus is divided into different functional modules to complete the full classification or part of the functions described above.

[0214] In several embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented by other ways. For example, the apparatus embodiments described above are only schematic, and the division of the modules or units is only a logical function division, and actual implementation can have another division manner, for example, a plurality of units or components can be combined or integrated into another apparatus, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interface, apparatus or unit, and can be electrical, mechanical or other forms.

[0215] The units described as separate components can or can not be physically separate, and the components shown as units can be one physical unit or multiple physical units, that is, can be located in one place or can be distributed to multiple different places. Some or all of the classification units can be selected according to actual needs to achieve the purpose of the embodiment.

[0216] In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit. The above integrated unit can be realized in the form of hardware or in the form of a software functional unit.

[0217] The integrated unit, if implemented in the form of a software function unit and sold or used as an independent product, can be stored in a readable storage medium. Based on such understanding, the technical solutions of the embodiments of the present application essentially or say the part that contributes to the prior art or the whole classification part or part of the technical solutions can be embodied in the form of a software product. The software product is stored in a storage medium, including a plurality of instructions to make a device (which can be a single-chip microcomputer, a chip, etc.) or a processor execute the whole classification part or part of the steps of the method of each embodiment of the present application. The storage medium mentioned above includes a U disk, a mobile hard disk, a ROM, a RAM, a magnetic disk or an optical disk, and various storage program codes.

[0218] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any change or replacement within the technical scope disclosed in the present application should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method for transmitting a message, characterized in that, The method is applied to a User Plane Function (UPF) network element, wherein the UPF network element stores at least one Virtual Network (VN) group, and the VN group includes: multiple Media Access Control (MAC) addresses; the method includes: Obtain the first IP packet, which is the IP packet of the first terminal. The first IP packet includes: source MAC address and destination MAC address. The source MAC address is the MAC address of the first terminal, and the destination MAC address is the MAC address of the second terminal. If a destination VN group exists within the at least one VN group, the first IP packet is sent to the second terminal, wherein the destination VN group is the VN group among the plurality of MAC addresses that contains both the source MAC address and the destination MAC address; The UPF network element is used to manage at least one thread, one thread corresponds to the MAC address of one terminal, and one thread is used to process the messages of one terminal.

2. The method according to claim 1, characterized in that, The UPF network element also stores a first preset forwarding information, which includes: the source MAC address and the MAC address of the terminal communicating with the first terminal. Before sending the first IP packet to the second terminal if a destination VN group exists within the at least one VN group, the method further includes: Determine whether there is first target forwarding information in the first preset forwarding information, wherein the first target forwarding information includes: the source MAC address and the destination MAC address; Sending the first IP packet to the second terminal includes: If the first target forwarding information exists in the first preset forwarding information, then the first IP packet is sent to the second terminal according to the first target forwarding information.

3. The method according to claim 2, characterized in that, The method further includes: If the first target forwarding information does not exist in the first preset forwarding information, then the first target forwarding information is created and the first preset forwarding information is updated. The updated first preset forwarding information includes: the first target forwarding information. Based on the first target forwarding information, the first IP packet is sent to the second terminal.

4. The method according to claim 2 or 3, characterized in that, The UPF network element also stores second preset forwarding information, which includes: the destination MAC address and the MAC address of the terminal communicating with the second terminal; the method further includes: If the first target forwarding information is not present in the second preset forwarding information, the second preset forwarding information is updated, and the updated second preset forwarding information includes the first target forwarding information.

5. The method according to claim 4, characterized in that, The source MAC address corresponds to the first thread, and the destination MAC address corresponds to the second thread; The first thread is used to process the IP packets of the first terminal, and the second thread is used to process the IP packets of the second terminal.

6. A message transmission device, characterized in that, User Plane Function (UPF) network element, wherein the UPF network element stores at least one Virtual Network (VN) group, the VN group including: multiple Media Access Control (MAC) addresses; the device includes: The acquisition module is used to acquire a first IP packet, which is the IP packet of a first terminal. The first IP packet includes a source MAC address and a destination MAC address, wherein the source MAC address is the MAC address of the first terminal and the destination MAC address is the MAC address of a second terminal. The sending module is configured to send the first IP packet to the second terminal if a destination VN group exists within the at least one VN group, wherein the destination VN group is a VN group among the plurality of MAC addresses that contains both the source MAC address and the destination MAC address; The UPF network element is used to manage at least one thread, one thread corresponds to the MAC address of one terminal, and one thread is used to process the messages of one terminal.

7. The apparatus according to claim 6, characterized in that, The UPF network element also stores a first preset forwarding information, which includes: the source MAC address and the MAC address of the terminal communicating with the first terminal. The processing module is used to determine whether there is first target forwarding information in the first preset forwarding information, wherein the first target forwarding information includes: the source MAC address and the destination MAC address; The sending module is specifically used to send the first IP packet to the second terminal according to the first target forwarding information if the first preset forwarding information contains first target forwarding information.

8. The apparatus according to claim 7, characterized in that, The processing module is specifically used to create the first target forwarding information and update the first preset forwarding information if the first target forwarding information does not exist in the first preset forwarding information. The updated first preset forwarding information includes the first target forwarding information. The sending module is specifically used to send the first IP packet to the second terminal according to the first target forwarding information.

9. The apparatus according to claim 7 or 8, characterized in that, The UPF network element also stores a second preset forwarding information, which includes: the destination MAC address and the MAC address of the terminal communicating with the second terminal. The processing module is specifically used to update the second preset forwarding information if the first target forwarding information does not exist in the second preset forwarding information. The updated second preset forwarding information includes the first target forwarding information.

10. The apparatus according to claim 9, characterized in that, The source MAC address corresponds to the first thread, and the destination MAC address corresponds to the second thread; The first thread is used to process the IP packets of the first terminal, and the second thread is used to process the IP packets of the second terminal.

11. A message transmission device, characterized in that, include: Processor and memory; The processor and the memory are coupled; The memory is used to store one or more programs, which include computer-executable instructions. When the message transmission device is running, the processor executes the computer-executable instructions stored in the memory to cause the message transmission device to perform the message transmission method as described in any one of claims 1-5.

12. A computer-readable storage medium storing instructions, characterized in that, When the computer executes the instruction, the computer performs the message transmission method as described in any one of claims 1-5.

13. A computer program product, comprising a computer program, characterized in that, When a computer program is executed by a processor, it implements the message transmission method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Data forwarding method and device and storage medium

    CN114980243A