A data packet processing method and related device
By configuring the association between the data network name and the virtual route forwarding identifier in the UPF network element, the problem of service offloading in the 5G customized network is solved, enabling users to receive targeted offloading without their awareness, and reducing operation and maintenance costs and 5GC resource consumption.
Patent Information
- Application Number
- CN202211097044.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-08
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2042-09-08
AI Technical Summary
Existing technologies have not been able to effectively solve the problem of how to offload segmented services in 5G customized networks to meet the needs of different slice access and customer private network communication.
By using the association between the data network name and the virtual route forwarding identifier, the UPF network element processes data packets to achieve targeted traffic splitting for different services. This includes configuring the association between the data network name and the virtual route forwarding identifier, and forwarding data packets through the N3 or N6 interface according to the packet type.
It enables targeted traffic splitting of different services without the user's awareness, reduces the cost of existing network operation and maintenance and 5GC resource consumption, and meets the needs of different slice access in 5G customized networks and customer private network communication.
Smart Images

Figure CN115802412B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the field of communication technology, and in particular, to a data packet processing method, a data packet processing apparatus, an electronic device, and a computer readable storage medium. BACKGROUND
[0002] With the development of 5G customized network services, further segmentation of industry services is a big trend. The current 5G customized network slice construction requires the use of different VPNs (Virtual Private Network) on the RAN (Radio Access Network) side of the existing network bearer network to carry different user services, providing customized communication services for customer private networks. Therefore, how to complete the shunting of segmented services to meet the needs of 5G customized network different slice access and customer private network communication has important research significance.
[0003] It should be noted that the information disclosed in the above BACKGROUND section is only used to strengthen the understanding of the background of the present disclosure, and therefore can include information that does not constitute prior art known to those of ordinary skill in the art. SUMMARY
[0004] The embodiments of the present disclosure provide a data packet processing method, a data packet processing apparatus, an electronic device, and a computer readable storage medium, which can route different services to their corresponding data networks based on the association relationship between the data network name and the virtual route forwarding identifier.
[0005] Other characteristics and advantages of the present disclosure will become apparent from the following detailed description, or will be learned by practice of the present disclosure.
[0006] According to one aspect of the present disclosure, a data packet processing method is provided, which comprises: receiving a data packet, obtaining a target data network name to which the data packet belongs and a packet type of the data packet; based on an association relationship between a data network name and a virtual route forwarding identifier, according to the target data network name and the packet type of the data packet, searching for a target virtual route forwarding identifier associated with the target data network name; and if the target virtual route forwarding identifier is found, forwarding the data packet according to the target virtual route forwarding identifier.
[0007] In some embodiments of the present disclosure, the association relationship between the data network name and the virtual route forwarding identifier includes an association relationship between the data network name and a first virtual route forwarding identifier and a second virtual route forwarding identifier; wherein the first virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N3 interface, and the second virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N6 interface.
[0008] In some embodiments of the present disclosure, the association between the data network name and the virtual route forwarding identifier is preconfigured by the following method: inputting a data network name to be configured, a first virtual route forwarding identifier to be configured, and a second virtual route forwarding identifier to be configured by using a vector packet processing technology; searching for the data network name to be configured in an association between already configured data network names and virtual route forwarding identifiers; and if the search is not successful, adding an association between the data network name to be configured and the first virtual route forwarding identifier to be configured and the second virtual route forwarding identifier to be configured in the association between the already configured data network names and the virtual route forwarding identifiers.
[0009] In some embodiments of the present disclosure, based on the association between the data network name and the virtual route forwarding identifier, the target virtual route forwarding identifier associated with the target data network name is searched according to the target data network name and the message type of the data packet, which includes: if the message type of the data packet is an uplink data packet, searching for a target second virtual route forwarding identifier associated with the target data network name in the association between the data network name and the virtual route forwarding identifier.
[0010] In some embodiments of the present disclosure, if the target virtual route forwarding identifier is found, the data packet is forwarded according to the target virtual route forwarding identifier, which includes: if the target second virtual route forwarding identifier is found, setting a forwarding information base index of the data packet as the target second virtual route forwarding identifier; searching for a target route in a corresponding forwarding information base according to the forwarding information base index of the data packet, and then forwarding the data packet through an N6 interface according to the searched target route.
[0011] In some embodiments of the present disclosure, based on the association between the data network name and the virtual route forwarding identifier, the target virtual route forwarding identifier associated with the target data network name is searched according to the target data network name and the message type of the data packet, which includes: if the message type of the data packet is a downlink data packet, searching for a target first virtual route forwarding identifier associated with the target data network name in the association between the data network name and the virtual route forwarding identifier.
[0012] In some embodiments of the present disclosure, if the target virtual route forwarding identifier is found, forwarding the data packet according to the target virtual route forwarding identifier comprises: if the target first virtual route forwarding identifier is found, setting a forwarding information table index of the data packet as the target first virtual route forwarding identifier; searching for a target route in a corresponding forwarding information table according to the forwarding information table index of the data packet, and then forwarding the data packet through an N3 interface according to the searched target route.
[0013] In some embodiments of the present disclosure, obtaining the target data network name to which the data packet belongs and the packet type of the data packet comprises: searching for a PDU session corresponding to the data packet, and then obtaining the target data network name according to the PDU session; processing the data packet based on a packet processing rule corresponding to the PDU session to obtain the packet type of the data packet.
[0014] According to still another aspect of the present disclosure, a data packet processing apparatus is provided, the apparatus comprising: an obtaining module configured to receive a data packet, and obtain a target data network name to which the data packet belongs and a packet type of the data packet; a searching module configured to search for a target virtual route forwarding identifier associated with the target data network name according to the target data network name and the packet type of the data packet based on an association relationship between data network names and virtual route forwarding identifiers; and a forwarding module configured to forward the data packet according to the target virtual route forwarding identifier if the target virtual route forwarding identifier is found.
[0015] In some embodiments of the present disclosure, the association relationship between the data network names and the virtual route forwarding identifiers comprises an association relationship between the data network names and a first virtual route forwarding identifier and a second virtual route forwarding identifier; the first virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N3 interface, and the second virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N6 interface.
[0016] In some embodiments of the present disclosure, the apparatus further comprises a relationship configuring module configured to: input a data network name to be configured, a first virtual route forwarding identifier to be configured, and a second virtual route forwarding identifier to be configured by using a vector packet processing technology; search in an association relationship between already configured data network names and virtual route forwarding identifiers according to the data network name to be configured; if the search is not hit, add an association relationship between the data network name to be configured and the first virtual route forwarding identifier to be configured and the second virtual route forwarding identifier to be configured in the association relationship between the already configured data network names and the virtual route forwarding identifiers.
[0017] In some embodiments of the present disclosure, the searching module is further configured to: if the message type of the data message is an uplink data message, search for a target second virtual route forwarding identifier associated with the target data network name in the association relationship between the data network name and the virtual route forwarding identifier.
[0018] In some embodiments of the present disclosure, the forwarding module is further configured to: if the target second virtual route forwarding identifier is found, set a forwarding information base index of the data message as the target second virtual route forwarding identifier; search for a target route in a corresponding forwarding information base according to the forwarding information base index of the data message, and then forward the data message through an N6 interface according to the searched target route.
[0019] In some embodiments of the present disclosure, the searching module is further configured to: if the message type of the data message is a downlink data message, search for a target first virtual route forwarding identifier associated with the target data network name in the association relationship between the data network name and the virtual route forwarding identifier.
[0020] In some embodiments of the present disclosure, the forwarding module is further configured to: if the target first virtual route forwarding identifier is found, set a forwarding information base index of the data message as the target first virtual route forwarding identifier; search for a target route in a corresponding forwarding information base according to the forwarding information base index of the data message, and then forward the data message through an N3 interface according to the searched target route.
[0021] In some embodiments of the present disclosure, the obtaining module is further configured to: search for a PDU session corresponding to the data message, and then obtain the target data network name according to the PDU session; and process the data message based on a message processing rule corresponding to the PDU session to obtain the message type of the data message.
[0022] According to yet another aspect of the present disclosure, an electronic device is provided, comprising: one or more processors; a storage device configured to store one or more programs, which, when executed by the one or more processors, cause the one or more processors to implement the data message processing method as described in the above embodiments.
[0023] According to yet another aspect of the present disclosure, a computer readable storage medium is provided, which stores a computer program, the program being executed by a processor to implement the data message processing method as described in the above embodiments.
[0024] The data packet processing method provided in the embodiments of the present disclosure can analyze a received data packet, obtain a target data network name and a packet type to which the data packet belongs, and based on an association relationship between a data network name and a virtual route forwarding identifier, find a target virtual route forwarding identifier associated with the target data network name according to the target data network name and the packet type, and then forward the data packet according to the target virtual route forwarding identifier. It can be seen that the data packet processing method provided in the embodiments of the present disclosure can route data packets of different services to corresponding data networks based on the association relationship between the data network name and the virtual route forwarding identifier, without the need to increase additional network elements, reduce the cost of network operation and maintenance, control 5GC signaling, reduce 5GC resource consumption, and complete the directional distribution of different services without user awareness.
[0025] It should be understood that the foregoing general description and the following detailed description are only exemplary and explanatory, and cannot limit the present disclosure. BRIEF DESCRIPTION OF DRAWINGS
[0026] The accompanying drawings incorporated in the specification and forming a part of the specification illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure, and do not constitute an undue limitation on the present disclosure.
[0027] Figure 1 A schematic diagram of a bearer network RAN side using different VPNs to respectively bear different user services is shown;
[0028] Figure 2 A flowchart of a data packet processing method of the embodiments of the present disclosure is shown;
[0029] Figure 3 A flowchart of configuring an association relationship between a data network name and a virtual route forwarding identifier is shown;
[0030] Figure 4 A flowchart of an uplink data packet forwarding method of the embodiments of the present disclosure is shown;
[0031] Figure 5 A flowchart of a downlink data packet forwarding method of the embodiments of the present disclosure is shown;
[0032] Figure 6 A flowchart of a data packet processing method of another embodiment of the present disclosure is shown;
[0033] Figure 7 An application scenario diagram of the data packet processing method of the embodiments of the present disclosure is shown;
[0034] Figure 8 A structural schematic diagram of a data packet processing apparatus of the embodiments of the present disclosure is shown;
[0035] Figure 9 A structural block diagram of an electronic device in an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0036] Example implementations are now described with reference to the drawings. Example implementations can, however, be implemented in many different forms and should not be construed as limited to the examples set forth herein; rather, these implementations are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example implementations to those skilled in the art. The described features, structures, or characteristics can be combined in one or more implementations.
[0037] In addition, the accompanying drawings are included to provide a thorough understanding of the present disclosure and are not intended to be exhaustive or to limit the present disclosure to the precise outlines described. The same or similar components are denoted by the same reference numerals throughout the drawings, and thus repeated description thereof will be omitted. Some of the block diagrams shown in the drawings are functional entities, which do not necessarily have to correspond to physically or logically independent entities. The functional entities can be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0038] It should be noted that the ordinal numbers such as "first", "second", etc. mentioned in the embodiments of the present disclosure are used to distinguish a plurality of objects, and are not used to limit the order, time sequence, priority or importance of the plurality of objects, and the description of "first", "second" does not necessarily mean that the objects are different.
[0039] 5G customized network is not only a communication network, but also a comprehensive solution that integrates network, cloud computing, edge computing, and application platform for full customization. For industries such as tourism, education, and venues that require high network stability, 5G customized network needs to provide service channel services with better quality than public customer networks. For industries such as industrial manufacturing and ports, 5G customized network needs to meet the needs of local business processing to ensure high security of business data, low latency and high stability of business processing. For industries such as high-end equipment manufacturing, mining, and power that require high data security and reliability, 5G customized network needs to provide the highest security level of business and application protection capabilities.
[0040] With the development of 5G customized network business, further segmentation of industry business is a major trend. The current 5G customized network slicing construction requires the use of different VPNs on the RAN side of the existing network bearer network to carry different user businesses, providing customized communication services for customer private networks. Therefore, how to complete the shunting of segmented businesses to meet the needs of 5G customized network access and customer private network communication has important research significance.
[0041] To solve the above problems, the data message processing technical solution provided by the embodiments of the present disclosure can route different services to their corresponding data networks based on the association relationship between the data network name and the virtual routing forwarding identifier, so as to meet the needs of 5G customized network different slice access and customer private network communication. The specific implementation of the data message processing method of the embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
[0042] Figure 1 The schematic diagram of the embodiments of the present disclosure is shown, which shows that the RAN side of the bearer network uses different VPNs to respectively bear different user services. Figure 1 As shown, the UPF (User Plane Function) network element supports access to multiple different RAN VPNs. Based on the association relationship between the data network name and the virtual routing forwarding identifier, the user services of different DNs (Data Networks) can enter the UPF network element through different RAN VPNs, and then enter different DNs to realize different user service functions, which can meet the needs of 5G customized network different slice access and customer private network communication.
[0043] Figure 1 In the figure, after the user service 1 accesses the base station, it enters the CDMA (Code Division Multiple Access) -RAN bearer network through the VLAN (Virtual Local Area Network) 43, and then enters the UPF network element through the VLAN 1000, and then accesses the DN corresponding to the user service 1 through the VLAN 1001 to realize the function of the user service 1. After the user service 2 accesses the base station, it enters the CDMA-RAN bearer network through the VLAN 43, and then enters the UPF network element through the VLAN 1000, and then accesses the DN corresponding to the user service 2 through the VLAN 1002 to realize the function of the user service 2. After the user service 3 accesses the base station, it enters the 2B-RAN bearer network through the VLAN 45, and then enters the UPF network element through the VLAN 2000, and then accesses the DN corresponding to the user service 3 through the VLAN 2001 to realize the function of the user service 3. After the user service 4 accesses the base station, it enters the Local VRF (Virtual Routing Forwarding) bearer network through the VLAN 46, and then enters the UPF network element through the VLAN 3000, and then accesses the DN corresponding to the user service 4 through the VLAN 3001 to realize the function of the user service 4.
[0044] Figure 2 The flowchart of the data message processing method of the embodiments of the present disclosure is shown. Figure 2The data packet processing method provided by the embodiment can be executed by a UPF network element. As shown in Figure 2 The data packet processing method specifically includes the following steps S201 to S203.
[0045] Step S201: receiving a data packet, and obtaining a target data network name to which the data packet belongs and a packet type of the data packet.
[0046] After receiving the data packet, the UPF network element can parse the received data packet, obtain the target data network name to which the data packet belongs and the packet type of the data packet, so as to subsequently forward the data packet to a corresponding data network or forward the data packet to a corresponding terminal.
[0047] In some embodiments of the present disclosure, obtaining the target data network name to which the data packet belongs and the packet type of the data packet can include: finding a PDU (Protocol Data Unit) session corresponding to the data packet, and then obtaining the target data network name according to the PDU session; processing the data packet based on a packet processing rule corresponding to the PDU session, and obtaining the packet type of the data packet.
[0048] The PDU (Protocol Data Unit) session provides data connectivity between a terminal and a DN, and all data traffic of the terminal must be carried through the PDU session. After receiving the data packet, the UPF network element performs PDR (Packet Detection Rule) matching on the data packet, finds the PDU session corresponding to the data packet, and then obtains the target data network name to which the data packet belongs according to the found PDU session. After finding the PDU session corresponding to the data packet, the UPF network element can select a processing rule corresponding to the data packet, such as a FAR (Forwarding Action Rule), a URR (Usage Reporting Rule) and a QER (QoS Enforcement Rule), and then the UPF network element processes the data packet through the selected FAR, URR and QER packet processing rules. The FAR contains forwarding policy information of whether to apply a forwarding, discarding or buffering operation to the packet, and the packet type of the data packet can be determined according to the processing result of the FAR.
[0049] In the embodiments of the present disclosure, the message type of the data message can include uplink data message and downlink data message. The uplink data message is a data message sent by the terminal to the UPF network element through the base station, and the data message needs to be sent to the DN. The downlink data message is a data message sent by the DN to the UPF network element, and the data message needs to be sent to the terminal through the base station. The UPF network element determines whether the received data message is an uplink data message or a downlink data message, and then can forward the data message to the DN or the terminal.
[0050] Step S202: According to the target data network name and the message type of the data message, the target virtual route forwarding identifier associated with the target data network name is found based on the association relationship between the data network name and the virtual route forwarding identifier.
[0051] Step S203: If the target virtual route forwarding identifier is found, the data message is forwarded according to the target virtual route forwarding identifier.
[0052] It should be noted that if the target virtual route forwarding identifier is not found, the received data message can be discarded.
[0053] In the embodiments of the present disclosure, the association relationship between the data network name and the virtual route forwarding identifier (DNN-VRF association relationship) includes the association relationship between the data network name and the first virtual route forwarding identifier, and the association relationship between the second virtual route forwarding identifier.
[0054] The first virtual route forwarding identifier is a virtual route forwarding identifier (N3VRF ID) corresponding to an N3 interface. The N3 interface is an interface between the UPF network element and the base station, and the UPF network element supports multiple N3 interfaces. Each N3 interface corresponds to a virtual route forwarding identifier to support access to multiple different RAN VPNs. The second virtual route forwarding identifier is a virtual route forwarding identifier (N6VRF ID) corresponding to an N6 interface. The N6 interface is an interface between the UPF network element and the DN, and the UPF network element supports multiple N6 interfaces. Each N6 interface corresponds to a virtual route forwarding identifier to access different DNs through the N6 interface.
[0055] In the embodiments of the present disclosure, the UPF network element can be preconfigured with the association relationship between the data network name and the N3VRF ID (i.e., the first virtual route forwarding identifier) and the N6VRF ID (i.e., the second virtual route forwarding identifier). In this way, after the UPF network element receives the data message, the corresponding virtual route forwarding identifier can be queried based on the configured association relationship, and then the data message is forwarded.
[0056] It should be noted that in the embodiments of the present disclosure, the DNN-VRF association relationship can be pre-configured in the UPF network element; or the core network can pre-configure the DNN-VRF association relationship, and then issue the configured DNN-VRF association relationship to the UPF network element, so that the UPF network element forwards the data packet based on the configured DNN-VRF association relationship.
[0057] Figure 3 A flowchart of configuring the association relationship between the data network name and the virtual route forwarding identifier in the embodiments of the present disclosure is shown. As shown in Figure 3 , the configuration process of the association relationship is as follows:
[0058] In step S301, the data network name to be configured, the first virtual route forwarding identifier to be configured, and the second virtual route forwarding identifier to be configured are input by using the vector packet processing technology.
[0059] In step S302, the data network name to be configured is used to search in the already configured association relationship between the data network name and the virtual route forwarding identifier.
[0060] In step S303, if the search is not hit, the association relationship between the data network name to be configured and the first virtual route forwarding identifier to be configured, and the second virtual route forwarding identifier to be configured is newly added in the already configured association relationship between the data network name and the virtual route forwarding identifier.
[0061] The vector packet processing (VPP) is an extensible open source framework, which provides easy-to-use, high-quality switching and routing functions. In the process of configuring the association relationship between the data network name and the virtual route forwarding identifier, the parameters to be configured, i.e., the data network name to be configured, the N3 VRF ID to be configured, and the N6 VRF ID to be configured, can be input in the VPP command line. Then, according to the data network name to be configured, it is queried whether the association relationship between the data network name to be configured and the N3 VRF ID to be configured, and the N6 VRF ID to be configured already exists in the already configured DNN-VRF association relationship. If the search is hit, it means that the association relationship between the data network to be configured and the virtual route forwarding identifier has been configured. If the search is not hit, a new entry is created in the already configured DNN-VRF association relationship, and the association relationship between the data network name to be configured and the N3 VRF ID to be configured, and the N6 VRF ID to be configured is added.
[0062] In the embodiments of the present disclosure, the DNN-VRF association relationship can be pre-configured through the VPP, so that when data packets are forwarded, the corresponding virtual route forwarding identifier can be queried based on the pre-configured DNN-VRF association relationship, and the data packets can be forwarded according to the queried virtual route forwarding identifier, the routing forwarding table items of different user services can be segmented, and the forwarding table conflict can be reduced.
[0063] In some embodiments of the present disclosure, based on the association relationship between the data network name and the virtual route forwarding identifier, the target virtual route forwarding identifier associated with the target data network name can be found according to the target data network name and the packet type of the data packet, which can include: if the packet type of the data packet is an uplink data packet, the target second virtual route forwarding identifier associated with the target data network name in the association relationship between the data network name and the virtual route forwarding identifier is found.
[0064] Further, if the target virtual route forwarding identifier is found, the data packet can be forwarded according to the target virtual route forwarding identifier, which can include: if the target second virtual route forwarding identifier is found, the forwarding information table index of the data packet is set as the target second virtual route forwarding identifier; the target route is found in the corresponding forwarding information table according to the forwarding information table index of the data packet, and then the data packet is forwarded through the N6 interface according to the found target route.
[0065] The uplink data packet is a data packet sent by a terminal to a UPF network element through a base station, and the data packet needs to be sent to a DN. After the UPF network element receives the data packet, if it is found that the data type of the data packet is an uplink data packet, it indicates that the data packet needs to be forwarded to the DN. Therefore, the UPF network element can find the target second virtual route forwarding identifier associated with the target data network name in the DNN-VRF association relationship, that is, the N6 VRF ID associated with the target data network name.
[0066] If the N6 VRF ID associated with the target data network name is found in the DNN-VRF association relationship, the forwarding information table index (Fib_Index) of the data packet is set as the found N6 VRF ID, then the target route is found in the corresponding forwarding information table according to the set forwarding information table index, and finally the data packet can be forwarded through the N6 interface according to the target route.
[0067] In some embodiments of the present disclosure, if the message type of the data message is an uplink data message, the UPF network element can calculate the message header offset, strip the GTPU header, and then perform lookup in the DNN-VRF association relationship according to the target data network name. GTPU is the abbreviation of GPRS (General Packet Radio Service) Tunneling Protocol for the user plane, which is a communication protocol based on IP protocol for supporting GPRS service. GTPU is used to transmit user data in the core network and between the radio access network and the core network.
[0068] Figure 4 A flowchart of an uplink data message forwarding method according to an embodiment of the present disclosure is shown. As shown in Figure 4 The uplink data message forwarding method can include the following steps:
[0069] Step S401: If the data message received by the UPF network element is an uplink data message, calculate the message header offset and strip the GTPU header of the data message.
[0070] Step S402: Perform lookup in the DNN-VRF association relationship according to the target data network name carried by the PDU session, wherein the data message received by the UPF network element is carried by the PDU session.
[0071] Step S403: If the N6 VRF ID associated with the target data network name is found, set the Fib_Index of the data message as the N6 VRF ID.
[0072] Step S404: Find the target route according to the Fib_Index to the corresponding forwarding information table.
[0073] Step S405: Forward the data message through the N6 interface according to the found target route, so as to forward the data message to the target data network.
[0074] Step S406: If the N6 VRF ID associated with the target data network name is not found, discard the data message.
[0075] In some embodiments of the present disclosure, based on the association relationship between the data network name and the virtual route forwarding identifier, according to the target data network name and the message type of the data message, finding the target virtual route forwarding identifier associated with the target data network name can include: if the message type of the data message is a downlink data message, finding the target first virtual route forwarding identifier associated with the target data network name in the association relationship between the data network name and the virtual route forwarding identifier.
[0076] Further, if the target virtual route forwarding identifier is found, forwarding the data packet according to the target virtual route forwarding identifier can include: if the target first virtual route forwarding identifier is found, setting a forwarding information table index of the data packet as the target first virtual route forwarding identifier; searching for a target route in a corresponding forwarding information table according to the forwarding information table index of the data packet, and then forwarding the data packet through the N3 interface according to the searched target route.
[0077] The downlink data packet is a data packet sent by a DN to a UPF network element, and the data packet needs to be sent to a terminal through a base station. After the UPF network element receives the data packet, if it is found that the data type of the data packet is a downlink data packet, it is indicated that the data packet needs to be forwarded to the terminal. Therefore, the UPF network element can search for a target first virtual route forwarding identifier associated with a target data network name in a DNN-VRF association relationship, that is, an N3VRF ID associated with the target data network name.
[0078] If the N3VRF ID associated with the target data network name is found in the DNN-VRF association relationship, the forwarding information table index (Fib_Index) of the data packet is set as the found N3VRF ID, then a target route is searched in a corresponding forwarding information table according to the set forwarding information table index, and finally the data packet can be forwarded through the N3 interface according to the target route.
[0079] In some embodiments of the present disclosure, if the packet type of the data packet is a downlink data packet, the UPF network element can calculate the packet header offset, add the GTPU header, and then search in the DNN-VRF association relationship according to the target data network name.
[0080] Figure 5 A flowchart of a downlink data packet forwarding method according to an embodiment of the present disclosure is shown. As shown in Figure 5 The downlink data packet forwarding method can include:
[0081] Step S501: If the data packet received by the UPF network element is a downlink data packet, calculate the packet header offset and add the GTPU header of the data packet;
[0082] Step S502: Search in a DNN-VRF association relationship according to a target data network name carried by a PDU session, wherein the data packet received by the UPF network element is carried through the PDU session;
[0083] Step S503: If the N3 VRF ID associated with the target data network name is found, set Fib_Index of the data packet as the N3 VRF ID;
[0084] Step S505: Find the target route according to Fib_Index to the corresponding forwarding information table;
[0085] Step S505: According to the target route found, the data packet is forwarded through the N3 interface to forward the data packet to the corresponding terminal;
[0086] Step S506: If the N3 VRF ID associated with the target data network name is not found, discard the data packet.
[0087] Figure 6 A flow chart of a data packet processing method of another embodiment of the present disclosure is shown. As shown in the figure, the main process of the data packet processing method can include: Figure 6
[0088] Step S601: Receive a data packet;
[0089] Step S602: Find the PDU session corresponding to the data packet, and obtain the target data network name carried by the PDU session;
[0090] Step S603: Process the data packet based on the message processing rule corresponding to the PDU session, and obtain the message type of the data packet;
[0091] Step S604: If the data packet is an uplink data packet, the data packet is forwarded according to the above steps S401 to S406;
[0092] Step S605: If the data packet is a downlink data packet, the data packet is forwarded according to the above steps S501 to S506.
[0093] In the embodiments of the present disclosure, when the UPF network element determines that the received data packet is an uplink data packet, the UPF network element can find the N6 VRF ID associated with the target data network name in the DNN-VRF association relationship, and then set the N6 VRF ID as Fib_Index, and then find the route according to Fib_Index to the corresponding forwarding information table, and finally forward the data packet to the target data network according to the found route. In addition, when the UPF network element determines that the received data packet is a downlink data packet, the UPF network element can find the N3 VRF ID associated with the target data network name in the DNN-VRF association relationship, and then set the N3 VRF ID as Fib_Index, and then find the route according to Fib_Index to the corresponding forwarding information table, and finally forward the data packet to the corresponding terminal according to the found route. The data packet processing method provided by the embodiments of the present disclosure can complete the directional shunting of user services at the UPF network element without user awareness. Only data packet forwarding based on the DNN-VRF association relationship is required, and 5GC signaling control is not required, thereby reducing 5GC resource consumption.
[0094] Figure 7 An application scenario diagram of the data packet processing method of the embodiments of the present disclosure is shown. Figure 7 In the embodiments of the present disclosure, for 2B Internet of Things services and 2C Internet of People services, the same VLAN access is adopted to access different DNNs. Between the base station side and the UPF network element, bearer forwarding can be performed, and for different service accesses, the DNN-VRF association relationship is configured to access the corresponding DNN, so that the uplink and downlink traffic forwarding is normal. For 2B Internet of People services and 2B Internet of Things services, different VLAN accesses are adopted to access different DNNs. Between the base station side and the UPF network element, different bearer forwarding can be adopted, and for different service accesses, the DNN-VRF association relationship is configured to access the corresponding DNN, so that the uplink and downlink traffic forwarding is normal. For “2B Internet of Things services + special slice” and 2B Internet of People services, the same VLAN access is adopted to access different DNNs. Between the base station side and the UPF network element, the same bearer forwarding can be adopted, and for different service accesses, the DNN-VRF association relationship is configured to access the corresponding DNN, so that the uplink and downlink traffic forwarding is normal.
[0095] Based on the same inventive concept, the embodiments of the present disclosure provide a data packet processing device, as described in the following embodiments. Since the principle of solving problems of the data packet processing device embodiments is similar to the above-mentioned method embodiments, the implementation of the data packet processing device embodiments can be referred to the implementation of the above-mentioned method embodiments, and the repeated parts will not be described here.
[0096] Figure 8A structural schematic diagram of a data packet processing apparatus of an embodiment of the present disclosure is shown. As shown in Figure 8 The data packet processing apparatus 800 can include an obtaining module 801, a searching module 802, and a forwarding module 803.
[0097] The obtaining module 801 can be configured to receive a data packet, and obtain a target data network name to which the data packet belongs and a packet type of the data packet. The searching module 802 can be configured to search, according to the target data network name and the packet type of the data packet, a target virtual route forwarding identifier associated with the target data network name based on an association relationship between data network names and virtual route forwarding identifiers. The forwarding module 803 can be configured to forward the data packet according to the target virtual route forwarding identifier if the target virtual route forwarding identifier is found.
[0098] In some embodiments of the present disclosure, the association relationship between the data network names and the virtual route forwarding identifiers includes an association relationship between the data network names and a first virtual route forwarding identifier and a second virtual route forwarding identifier. The first virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N3 interface, and the second virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N6 interface.
[0099] As shown in Figure 8 In some embodiments of the present disclosure, the data packet processing apparatus 800 can further include a relationship configuration module 804, which can be configured to input, through a vector data packet processing technology, a data network name to be configured, a first virtual route forwarding identifier to be configured, and a second virtual route forwarding identifier to be configured; search, according to the data network name to be configured, in an association relationship between already-configured data network names and virtual route forwarding identifiers; and if the search is not hit, add, in the association relationship between the already-configured data network names and the virtual route forwarding identifiers, an association relationship between the data network name to be configured, the first virtual route forwarding identifier to be configured, and the second virtual route forwarding identifier to be configured.
[0100] In some embodiments of the present disclosure, the searching module 802 can be further configured to search, in the association relationship between the data network names and the virtual route forwarding identifiers, a target second virtual route forwarding identifier associated with the target data network name if the packet type of the data packet is an uplink data packet.
[0101] In some embodiments of the present disclosure, the forwarding module 803 can be further configured to set a forwarding information base index of the data packet as the target second virtual route forwarding identifier if the target second virtual route forwarding identifier is found, search a target route in a corresponding forwarding information base according to the forwarding information base index of the data packet, and then forward the data packet through the N6 interface according to the searched target route.
[0102] In some embodiments of the present disclosure, the searching module 802 is further configured to: if the message type of the data message is a downlink data message, search for a target first virtual route forwarding identifier associated with a target data network name in an association between the data network name and the virtual route forwarding identifier.
[0103] In some embodiments of the present disclosure, the forwarding module 803 is further configured to: if the target first virtual route forwarding identifier is found, set a forwarding information table index of the data message as the target first virtual route forwarding identifier; search for a target route in a corresponding forwarding information table according to the forwarding information table index of the data message, and then forward the data message through the N3 interface according to the searched target route.
[0104] In some embodiments of the present disclosure, the obtaining module 801 is further configured to: search for a PDU session corresponding to the data message, and then obtain the target data network name according to the PDU session; and process the data message based on a message processing rule corresponding to the PDU session to obtain the message type of the data message.
[0105] Figure 9 A structural block diagram of an electronic device in an embodiment of the present disclosure is shown. The electronic device 900 according to this embodiment of the present disclosure will be described below with reference to Figure 9 Figure 9 The electronic device 900 shown is merely an example and should not impose any limitation on the functions and use range of the embodiments of the present disclosure.
[0106] As shown in Figure 9 , the electronic device 900 is in the form of a general computing device. The components of the electronic device 900 can include, but are not limited to, the at least one processing unit 910 described above, the at least one storage unit 920 described above, a bus 930 connecting different system components including the storage unit 920 and the processing unit 910, and a display unit 940.
[0107] The storage unit stores program codes which can be executed by the processing unit 910, so that the processing unit 910 performs the steps according to various exemplary embodiments of the present application described in the above “Exemplary Method” section of the present specification. Specifically, when the electronic device 910 provided in the embodiments of the present disclosure is a UPF network element, the following steps in the above embodiments can be performed: step S201, receiving a data packet, obtaining a target data network name to which the data packet belongs and a packet type of the data packet; step S202, based on the association relationship between the data network name and the virtual route forwarding identifier, according to the target data network name and the packet type of the data packet, searching for a target virtual route forwarding identifier associated with the target data network name; and step S203, if the target virtual route forwarding identifier is found, forwarding the data packet according to the target virtual route forwarding identifier.
[0108] The storage unit 920 can include a readable medium in the form of a volatile storage unit, such as a random access memory (RAM) 9201 and / or a cache memory 9202, and can further include a read-only memory (ROM) 9203.
[0109] The storage unit 920 can further include a program / utility 9204 having a set (at least one) of program modules 9205, such as an operating system, one or more application programs, other program modules, and program data, each or a combination thereof can include implementation of a network environment.
[0110] The bus 930 can represent one or more of several types of bus structures, including a storage unit bus or storage unit controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of a variety of bus architectures.
[0111] The electronic device 900 can also communicate with one or more external devices 970 such as a keyboard or pointing device, a Bluetooth device, or a database, etc.; and / or can communicate with one or more devices that enable a user to interact with the electronic device 900; and / or can communicate with any devices (such as a router, a modem, a server, etc.) that enable the electronic device 900 to communicate with one or more other computing devices. Such communication can occur via an input / output (I / O) interface 950. Still yet, the electronic device 900 can communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), and / or a public network (e.g., the Internet) via the network adapter 960. As depicted, the network adapter 960 communicates with the other components of the electronic device 900 via the bus 930. It should be appreciated that although the network adapter 960 is depicted as a single component, the network adapter 960 can comprise two or more components that operate together to facilitate the communication of data and / or signals between the electronic device 900 and one or more other devices.
[0112] In the example embodiments of the present disclosure, a computer readable storage medium having stored thereon a program product capable of implementing the above-described methods of the present specification is also provided. In some possible implementations, various aspects of the present disclosure can also be implemented as a program product in the form of a computer readable storage medium having program code portions stored thereon, the program code portions being capable of implementing the steps described in the above "Example Methods" section of the present specification according to various example embodiments of the present disclosure when the program product is run on a terminal device.
[0113] The program product for implementing the above-described methods according to embodiments of the present disclosure can take the form of a portable compact disc read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not limited to this, and in the present document, a readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0114] The program product can take any combination of one or more readable media. The readable media can be a readable signal medium or a readable storage medium. The readable storage medium, for example, can be, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of the readable storage medium include an electrical connection having one or more wires, a portable disc, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0115] A computer readable signal medium can include a propagated data signal with computer executable program code embodied therein. The propagated data signal can take any of a variety of forms, including but not limited to radio frequency signals, light signals, infrared signals, and any suitable combination thereof. The computer readable signal medium can be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate or transport program code.
[0116] Program code embodied on a computer readable medium can be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0117] Computer program code for carrying out operations for aspects of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++, or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computing device, partly on the user's computing device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server. In the latter scenario, the remote computing device can be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computing device, such as through the Internet using an Internet Service Provider. The application program code can be downloaded to the user's computing device from an external computing device or server through any type of network, including a local area network, a wide area network, or the Internet using a browser or other software.
[0118] It should be noted that, although the above detailed description refers to several modules or units of the device for performing actions, this division is not mandatory. Indeed, according to embodiments of the present disclosure, features and functionalities of two or more modules or units described above can be embodied in one module or unit. Conversely, features and functionalities of one module or unit described above can be further divided into several modules or units.
[0119] Moreover, although the various steps of the methods of the present disclosure are described in a particular order in the figures, this is not mandatory. Indeed, the steps can be performed in a different order, or not all of the steps shown can be performed, or a step can be split into several steps, etc.
[0120] Those skilled in the art can easily understand, through the above description of the embodiments, that the example embodiments described herein can be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash disk, a mobile hard disk, or the like) or a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to perform the methods according to the embodiments of the present disclosure.
[0121] Other embodiments of the present disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the features disclosed herein. It is intended that the present disclosure cover any and all variations of the present disclosure that come within the scope of the following claims and their equivalents. It is intended that the specification and examples be considered exemplary only, with the true scope and spirit of the present disclosure being indicated by the following claims.
[0122] It should be understood that the present disclosure is not limited to the precise structures as herein described and illustrated in the drawings, and that various modifications and changes can be made without departing from the scope thereof. The scope of the present disclosure is limited only by the claims that follow.
Claims
1. A data packet processing method, characterized by, The method is executed by a UPF network element, and comprises: receiving a data packet, obtaining a target data network name to which the data packet belongs and a packet type of the data packet; the packet type of the data packet comprises uplink data packets and downlink data packets; based on an association relationship between data network names and virtual route forwarding identifiers, according to the target data network name and the packet type of the data packet, searching for a target virtual route forwarding identifier associated with the target data network name; if the target virtual route forwarding identifier is found, forwarding the data packet according to the target virtual route forwarding identifier.
2. The method of claim 1, wherein, The association relationship between the data network names and the virtual route forwarding identifiers comprises an association relationship between the data network names and a first virtual route forwarding identifier and a second virtual route forwarding identifier; wherein the first virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N3 interface, and the second virtual route forwarding identifier is a virtual route forwarding identifier corresponding to an N6 interface.
3. The method of claim 2, wherein, The association relationship between the data network names and the virtual route forwarding identifiers is preconfigured according to the following method: using a vector data packet processing technology to input a data network name to be configured, a first virtual route forwarding identifier to be configured, and a second virtual route forwarding identifier to be configured; according to the data network name to be configured, searching in an already configured association relationship between data network names and virtual route forwarding identifiers; if the search is not hit, adding an association relationship between the data network name to be configured and the first virtual route forwarding identifier to be configured and the second virtual route forwarding identifier to be configured in the already configured association relationship between data network names and virtual route forwarding identifiers.
4. The method of claim 2, wherein, Based on the association relationship between the data network names and the virtual route forwarding identifiers, according to the target data network name and the packet type of the data packet, searching for a target virtual route forwarding identifier associated with the target data network name, comprises: if the packet type of the data packet is an uplink data packet, searching for a target second virtual route forwarding identifier associated with the target data network name in the association relationship between the data network names and the virtual route forwarding identifiers.
5. The method of claim 4, wherein, If the target virtual route forwarding identifier is found, forwarding the data packet according to the target virtual route forwarding identifier, comprises: if the target second virtual route forwarding identifier is found, setting a forwarding information table index of the data packet as the target second virtual route forwarding identifier; according to the forwarding information table index of the data packet, searching for a target route in a corresponding forwarding information table, and then forwarding the data packet through an N6 interface according to the searched target route.
6. The method of claim 2, wherein, Based on the association relationship between the data network names and the virtual route forwarding identifiers, according to the target data network name and the packet type of the data packet, searching for a target virtual route forwarding identifier associated with the target data network name, comprises: If the packet type of the data packet is a downlink data packet, in an association relationship between the data network name and the virtual route forwarding identifier, a target first virtual route forwarding identifier associated with the target data network name is found.
7. The method of claim 6, wherein, If the target virtual route forwarding identifier is found, the data packet is forwarded according to the target virtual route forwarding identifier, including: If the target first virtual route forwarding identifier is found, a forwarding information table index of the data packet is set as the target first virtual route forwarding identifier. According to the forwarding information table index of the data packet, a target route is found in a corresponding forwarding information table, and then the data packet is forwarded through an N3 interface according to the found target route.
8. The method of claim 1, wherein, The target data network name to which the data packet belongs and the packet type of the data packet are acquired, including: A PDU session corresponding to the data packet is found, and then the target data network name is acquired according to the PDU session. The data packet is processed based on a packet processing rule corresponding to the PDU session, and the packet type of the data packet is acquired.
9. A data packet processing device, characterized by The apparatus is applied to a UPF network element, and the apparatus includes: An acquisition module is configured to receive a data packet, and acquire a target data network name to which the data packet belongs and a packet type of the data packet; the packet type of the data packet includes an uplink data packet and a downlink data packet; A finding module is configured to find, based on an association relationship between a data network name and a virtual route forwarding identifier, a target virtual route forwarding identifier associated with the target data network name according to the target data network name and the packet type of the data packet. A forwarding module is configured to, if the target virtual route forwarding identifier is found, forward the data packet according to the target virtual route forwarding identifier.
10. An electronic device, comprising: The apparatus includes: One or more processors; A storage device configured to store one or more programs, when the one or more programs are executed by the one or more processors, the one or more programs cause the one or more processors to implement the method in any one of claims 1 to 8. 11.A computer readable storage medium, storing a computer program, characterized in that, The computer program is executed by the processor to implement the method in any one of claims 1 to 8.
Citation Information
Patent Citations
Gateway
CN112019428A