User plane data transmission method and device, computer equipment, readable storage medium and program product
By dividing and replicating data packets in the 5G network and using multiple non-intersecting paths for transmission, the problem of low reliability of user-plane data transmission is solved, redundant path transmission is achieved, and the risk of communication interruption is reduced, making it suitable for mission-critical applications.
Patent Information
- Application Number
- CN202510916525.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-03
- Publication Date
- 2025-09-26
AI Technical Summary
In 5G networks, user-plane data transmission has low reliability and is easily interrupted by power outages, fiber cuts, hardware defects, or software vulnerabilities. The existing fast rerouting mechanism cannot meet the recovery time requirements of mission-critical applications.
By dividing the data flow into multiple target data packets at the inlet node of the transmission tunnel and duplicating each data packet to form a target data packet group, the data packets are sent to the exit node of the transmission tunnel using multiple non-intersecting paths, the earliest received data packet is retained and the remaining data packets are eliminated, thus realizing redundant path transmission.
It improves the reliability of user-plane data transmission and reduces the risk of communication interruption due to single point failure, making it suitable for reliable and low-latency communication scenarios.
Smart Images

Figure CN120711451A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of network security technology, and in particular to a user plane data transmission method, apparatus, computer equipment, readable storage medium, and program product. Background Art
[0002] In 5G networks, data flows from user devices to the data network via the user plane in the radio access network. However, user plane failures can adversely affect connectivity, such as interruptions due to power outages, fiber cuts, hardware defects, or software vulnerabilities. Therefore, related technologies employ redundant links to ensure connectivity even in the event of failures. Mechanisms such as fast rerouting provide sub-millisecond failover mechanisms, but mission-critical applications require even shorter recovery times. Consequently, related user plane data transmission methods suffer from low reliability. Summary of the Invention
[0003] Based on this, it is necessary to provide a user plane data transmission method, apparatus, computer equipment, computer-readable storage medium and computer program product that can improve reliability in order to address the above technical problems.
[0004] In a first aspect, the present application provides a user plane data transmission method, comprising:
[0005] receiving a data stream sent by a user device, and dividing the data stream into a plurality of target data packets;
[0006] Copying each target data packet separately to obtain a target data packet group corresponding to each target data packet; each target data packet and its copy data packet constitute a target data packet group;
[0007] For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
[0008] In one embodiment, transmitting the plurality of target data packet groups to the tunnel exit node via the plurality of disjoint paths comprises:
[0009] In a case where the transmission tunnel entry node is deployed at a base station, for the same target data packet group, each target data packet of the target data packet group is sent to the base station;
[0010] The base station sends each of the target data packets to a transmission tunnel exit node corresponding to each of the target data packets through multiple user plane network elements.
[0011] In one embodiment, transmitting the plurality of target data packet groups to the tunnel exit node via the plurality of disjoint paths comprises:
[0012] In a case where the transmission tunnel entry node is deployed on the user equipment, for a same target data packet group, each target data packet of the target data packet group is sent to multiple base stations respectively;
[0013] Each of the base stations sends the received target data packets to the transmission tunnel exit nodes corresponding to the target data packets through the user plane network element corresponding to the base station.
[0014] In one of the embodiments, the base station is further used to add a tunnel protocol header to the received target data packet to obtain an encapsulated data packet, and send the encapsulated data packet to the transmission tunnel exit node corresponding to the encapsulated data packet through the user plane network element.
[0015] In one of the embodiments, the user-side network element is used to receive the encapsulated data packet sent by the base station, remove the tunnel protocol header of the encapsulated data packet to obtain the target data packet before encapsulation, and send the target data packet to the transmission tunnel exit node according to the address of the transmission tunnel exit node in the protection header of the target data packet.
[0016] In one of the embodiments, the user plane network element is further used to obtain the service quality priority of the target data packet, and according to the service quality priority, send the target data packet to the transmission tunnel exit node according to the address of the transmission tunnel exit node in the protection header.
[0017] In one embodiment, dividing the data stream into a plurality of target data packets includes:
[0018] Dividing the data stream according to a preset packet size to obtain a plurality of initial data packets;
[0019] According to the serial number information of each initial data packet and the address of the corresponding transmission tunnel exit node, a corresponding protection header is set for each initial data packet to obtain multiple target data packets; the protection header is used to identify the transmission path of each target data packet.
[0020] In a second aspect, the present application further provides a user plane data transmission device, applied to a transmission tunnel ingress node, comprising:
[0021] A data division module, configured to receive a data stream sent by a user device and divide the data stream into a plurality of target data packets;
[0022] A data replication module is used to replicate each target data packet to obtain a target data packet group corresponding to each target data packet; each target data packet and its replicated data packet constitute a target data packet group;
[0023] A data transmission module is used to send each target data packet in each target data packet group to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
[0024] In a third aspect, the present application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0025] receiving a data stream sent by a user device, and dividing the data stream into a plurality of target data packets;
[0026] Copying each target data packet separately to obtain a target data packet group corresponding to each target data packet; each target data packet and its copy data packet constitute a target data packet group;
[0027] For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
[0028] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:
[0029] receiving a data stream sent by a user device, and dividing the data stream into a plurality of target data packets;
[0030] Copying each target data packet separately to obtain a target data packet group corresponding to each target data packet; each target data packet and its copy data packet constitute a target data packet group;
[0031] For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
[0032] In a fifth aspect, the present application further provides a computer program product, comprising a computer program, which, when executed by a processor, implements the following steps:
[0033] receiving a data stream sent by a user device, and dividing the data stream into a plurality of target data packets;
[0034] Copying each target data packet separately to obtain a target data packet group corresponding to each target data packet; each target data packet and its copy data packet constitute a target data packet group;
[0035] For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
[0036] The above-mentioned user-plane data transmission method, apparatus, computer equipment, computer-readable storage medium and computer program product receive the data stream sent by the user equipment through the transmission tunnel inlet node, and divide the data stream into multiple target data packets to facilitate batch transmission, and copy and process each target data packet separately to obtain a target data packet group corresponding to each target data packet, wherein each target data packet and the copy data packet of the target data packet constitute a target data packet group, which serves as the basis for subsequent redundant transmission. For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths. The transmission tunnel exit node is used to retain the earliest received target data packet in the same target data packet group and eliminate the remaining target data packets, thereby realizing redundant path transmission of the data stream that the user equipment needs to send to the data network, reducing the risk of communication interruption due to single point failure, and being suitable for scenarios of reliable low-latency communication, thereby realizing the reliability of user-plane data transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments of the present application or related technical descriptions. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying any creative work.
[0038] Figure 1 This is a diagram showing an application environment of a method for transmitting user plane data in one embodiment;
[0039] Figure 21 is a flow chart of a method for transmitting user plane data in one embodiment;
[0040] Figure 3 A schematic diagram of the structure of a user plane data transmission system in one embodiment;
[0041] Figure 4 A schematic structural diagram of a user plane data transmission system in another embodiment;
[0042] Figure 5 is a structural block diagram of a user plane data transmission device in one embodiment;
[0043] Figure 6 FIG. 1 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0044] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0045] As described in the background art, the user-plane data transmission method of the related art has the problem of low reliability. The inventors have found that the reason for this problem is that in the 5G network, traffic is forwarded from the user device to the data network through the user plane in the wireless access network. However, user-plane failures can have an adverse effect on connectivity. User-plane connections may be interrupted due to power outages, fiber cuts, hardware defects, or software vulnerabilities. Therefore, redundant links are a common method to ensure that connections can be maintained even in the event of a failure. Mechanisms such as fast reroute can provide sub-millisecond failover mechanisms, but for mission-critical applications, a shorter recovery time is required. Packet replication and elimination are described as a feasible method to achieve ultra-high reliability.
[0046] Based on the above reasons, this application proposes a user-plane data transmission method that adopts a conceptual integration scheme of redundant paths and programmable elements, while taking into account the deployment in the existing 5G infrastructure and the trade-off between latency and enhanced traffic engineering, aiming to improve the reliability of data transmission on the user plane.
[0047] The user plane data transmission method provided in the embodiment of the present application can be applied to Figure 1The application environment shown includes a user device 102, a transmission tunnel entry node 104, and a transmission tunnel exit node 106. The transmission tunnel entry node 104 and the transmission tunnel exit node 106 are connected via multiple disjoint paths. The user device 102 communicates with the transmission tunnel entry node 104 via a network. The user device 102 may be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices may include smart speakers, smart TVs, smart air conditioners, smart car devices, and projectors. Portable wearable devices may include smart watches, smart bracelets, head-mounted devices, and the like. Head-mounted devices may include virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, and the like. The transmission tunnel entry node 104 receives the data stream sent by the user device 102 and divides the data stream into multiple target data packets. Furthermore, the transmission tunnel entry node 104 replicates each target data packet to obtain a target data packet group corresponding to each target data packet; each target data packet and the replicated data packet of the target data packet constitute a target data packet group; and for each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node 106 through multiple non-intersecting paths, wherein the transmission tunnel exit node 106 is used to retain the earliest received target data packet in the same target data packet group and eliminate the remaining target data packets.
[0048] In an exemplary embodiment, Figure 2 As shown, a user plane data transmission method is provided, which is applied to Figure 1 Taking the transmission tunnel ingress node 104 in FIG. 1 as an example, the method includes the following steps S202 to S206. In which:
[0049] Step S202: Receive a data stream sent by a user equipment, and divide the data stream into a plurality of target data packets.
[0050] The user device may refer to a terminal device that initiates data transmission, such as a smartphone, an IoT device, a mobile terminal, etc. The data stream may be a continuous data set generated by the user device, such as an audio or video stream, sensor data, or a file transfer.
[0051] The target data packet may be the smallest transmission unit after the data stream is divided, and includes payload user data and header information, such as routing, sequence number, etc.
[0052] The transmission tunnel ingress node may be a PTI (Protection Tunnel Ingress) node.
[0053] Optionally, the transmission tunnel entry node receives a data stream sent by the user equipment, which is the traffic that the user equipment wants to forward to the data network through the user plane in the wireless access network. The transmission tunnel entry node divides the data stream into multiple target data packets according to a preset division rule.
[0054] Step S204 , copying each target data packet to obtain a target data packet group corresponding to each target data packet.
[0055] Each target data packet and its duplicate data packet constitute a target data packet group.
[0056] Among them, the replication processing can be a mechanism PREOF (Packet Replication, Elimination, and Ordering Functions) proposed by the IETF DetNet working group. DetNet (Deterministic Networking) is a technology developed by the Internet Engineering Task Force (IETF) to provide deterministic services for the network by replicating data packets, eliminating redundant copies after multi-path transmission, and ensuring sequential delivery.
[0057] Optionally, the transmission tunnel entry node copies each target data packet separately to obtain each target data packet and its corresponding copy data packet, which are used as the basis for subsequent data redundancy transmission; each target data packet and its copy data packet constitute a target data packet group, thereby obtaining a target data packet group corresponding to each target data packet.
[0058] Step S206 : For each target data packet in each target data packet group, each target data packet is sent to a corresponding transmission tunnel exit node via a plurality of disjoint paths.
[0059] The transmission tunnel egress node is used to retain the earliest received target data packet in the same target data packet group and eliminate the remaining target data packets. The transmission tunnel egress node can be a PTE (Protection Tunnel Egress) node deployed in the data network.
[0060] Optionally, the transmission tunnel inlet node sends each target data packet in each target data packet group to the corresponding transmission tunnel exit node through multiple non-intersecting paths. It can be understood that the multiple non-intersecting paths have no overlapping nodes or links physically or logically, thereby realizing redundant transmission of the target data packets and avoiding the loss of all data due to a single point failure during the data transmission process.
[0061] In the above-mentioned user plane data transmission method, the data stream sent by the user equipment is received through the transmission tunnel inlet node, and the data stream is divided into multiple target data packets for easy batch transmission. Each target data packet is copied and processed respectively to obtain a target data packet group corresponding to each target data packet, wherein each target data packet and the copy data packet of the target data packet constitute a target data packet group, which serves as the basis for subsequent redundant transmission. For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths. The transmission tunnel exit node is used to retain the earliest received target data packet in the same target data packet group and eliminate the remaining target data packets, thereby realizing redundant path transmission of the data stream that the user equipment needs to send to the data network, reducing the risk of communication interruption due to single point failure, and being suitable for scenarios of reliable low-latency communication, thereby realizing the reliability of user plane data transmission.
[0062] In an exemplary embodiment, transmitting the multiple target data packet groups to the tunnel egress node via multiple disjoint paths in step S206 includes:
[0063] When the transmission tunnel entry node is deployed at the base station, for the same target data packet group, each target data packet of the target data packet group is sent to the base station; the base station sends each target data packet to the transmission tunnel exit node corresponding to each target data packet through multiple user-plane network elements.
[0064] Among them, the base station can be a gNB (5G Node B) base station, the core equipment of the 5G wireless access network, responsible for wireless communication connections with user equipment.
[0065] Among them, the user plane network element can be UPF (User Plane Function), which is the core component of the 5G core network and is responsible for the routing, forwarding and traffic processing of user data packets. Each user plane network element UPF is equipped with an eBPF (extended Berkeley Packet Filter) protection agent.
[0066] Alternatively, as Figure 3As shown, a schematic diagram of the structure of the user-plane data transmission system is provided, wherein the transmission tunnel egress node PTE also includes a transmission tunnel egress sorting node PTE-O, which is used to sort the received target data packets. The PTE node also sends the target data packets to the target server or cloud corresponding to the IP address in the data network (Data Network) based on the IP (Internet Protocol) address in the target data packets. When the transmission tunnel entry node is deployed in the base station, for the same target data packet group, the transmission tunnel entry node sends each target data packet of the target data packet group to the base station; the base station sends each target data packet to the transmission tunnel egress node corresponding to each target data packet through multiple user-plane network elements. It can be understood that there is a one-to-one correspondence between the user-plane network element and each target data packet, and each user-plane network element has a synchronous session state, thereby forming non-intersecting paths.
[0067] It should be noted that, in one embodiment, the base station is further configured to add a tunneling protocol header to the received target data packet, specify the user plane network element address of the target data packet, obtain an encapsulated data packet, and send the encapsulated data packet to the transmission tunnel egress node corresponding to the encapsulated data packet via the user plane network element. The tunneling protocol header may be the GPRS Tunneling Protocol for User Plane (GPRS Tunneling Protocol for User Plane), a protocol used to encapsulate user data packets in the 5G core network.
[0068] In this embodiment, the transmission tunnel entry node is deployed at the base station, and redundant transmission of user-plane data can be achieved without modifying the hardware or software of the user equipment, thereby reducing the modification cost. Each target data packet corresponds to a user-plane network element, and the redundant setting of the user-plane network element forms multiple non-intersecting paths, thereby redundantly transmitting the copied target data packets, further improving the reliability of user-plane data transmission.
[0069] In an exemplary embodiment, transmitting the multiple target data packet groups to the tunnel egress node via multiple disjoint paths in step S206 includes:
[0070] When the transmission tunnel entry node is deployed on the user equipment, for the same target data packet group, each target data packet of the target data packet group is sent to multiple base stations respectively; each base station sends each received target data packet to the transmission tunnel exit node corresponding to each target data packet through the user plane network element corresponding to each base station.
[0071] Alternatively, as Figure 4As shown, a structural schematic diagram of another user-plane data transmission system is provided. When the transmission tunnel entry node is deployed on the user equipment, for the same target data packet group, the transmission tunnel entry node sends each target data packet of the target data packet group to multiple base stations respectively; each base station sends each received target data packet to the transmission tunnel exit node corresponding to each target data packet through the user-plane network element corresponding to each base station. It can be understood that the target data packet, the base station and the user-plane network element are in a one-to-one correspondence, and each base station and each user-plane network element form multiple non-intersecting paths, thereby realizing redundant transmission of each copied target data packet.
[0072] It should be noted that, in this embodiment, the base station is also used to add a tunnel protocol header (GTP-U) to the received target data packet, specify the user plane network element address of the target data packet, obtain the encapsulated data packet, and send the encapsulated data packet to the transmission tunnel exit node corresponding to the encapsulated data packet through the user plane network element.
[0073] In this embodiment, the transmission tunnel entry node is deployed on the user equipment. There is no need to modify the 5G standard. The redundant transmission of user-plane data is directly implemented at the operating system level, which reduces the transformation cost. Each target data packet corresponds to a base station and a user-plane network element. The redundant settings of the base station and the user-plane network element form multiple non-intersecting paths, thereby redundantly transmitting the copied target data packets, further improving the reliability of user-plane data transmission.
[0074] In an exemplary embodiment, the user-side network element is used to receive an encapsulated data packet sent by a base station, remove the tunnel protocol header of the encapsulated data packet, obtain the target data packet before encapsulation, and send the target data packet to the transmission tunnel exit node according to the address of the transmission tunnel exit node in the protection header of the target data packet.
[0075] Among them, continue to refer to Figure 3 or Figure 4 The target data packet includes a protection header (Protect) and an Internet Protocol (IP) address, and the encapsulation data packet includes a tunneling protocol header (GTP-U), a protection header (Protect), and an Internet Protocol (IP) address. The protection header can be the encapsulation structure of the target data packet, consisting of information such as a sequence number and the transport tunnel exit node address.
[0076] It should be noted that user-plane network elements cannot directly disassemble and analyze encapsulated packets. However, the eBPF protection agent, based on the network packet disassembly and analysis capabilities provided by the eBPF protection agent, can extract the packet header data in the protection header of the encapsulated packet, thereby obtaining the address of the transmission tunnel egress node corresponding to the target packet. Typically, the user-plane network element UPF is used to disassemble the tunnel protocol header GTP-U, thereby terminating the GTP-U tunnel and forwarding the target packet based on the underlying Layer 3 information.
[0077] In this embodiment, the traditional UPF only supports parsing the standard GTP-U header. However, the protection header of the target data packet in this embodiment is a newly added encapsulation layer (used to implement the PREOF mechanism), which the UPF cannot directly identify. Instead, the eBPF protection agent is used to intercept the data packet at the kernel layer and extract the PTE address in the protection header, without modifying the UPF hardware or protocol stack. Extracting the transport tunnel egress node address through the eBPF protection agent ensures that the data packet accurately reaches the corresponding transport tunnel egress node via a redundant path, further improving the reliability of user plane data transmission.
[0078] In an exemplary embodiment, the user plane network element is further configured to obtain the quality of service priority of the target data packet, and send the target data packet to the transmission tunnel egress node according to the quality of service priority and the address of the transmission tunnel egress node in the protection header.
[0079] The quality of service priority may be a QoS (Quality of Service) priority, which is a traffic engineering mechanism in which the UPF allocates resources according to service requirements (such as priority and bandwidth).
[0080] Optionally, the user-side network element obtains the service quality priority of the target data packet through the Internet Protocol address protected by the protection header of the target data packet, provides corresponding network services based on the service quality priority of each target data packet, and sends the target data packet to the transmission tunnel exit node according to the address of the transmission tunnel exit node in the protection header.
[0081] In this embodiment, the user plane network element provides corresponding levels of service to target data packets through an additional traffic engineering mechanism with a quality of service priority, thereby ensuring the quality of service of data transmission and further improving the reliability of user plane data transmission.
[0082] In an exemplary embodiment, dividing the data stream into a plurality of target data packets in step S202 includes:
[0083] The data stream is divided according to the preset packet size to obtain multiple initial data packets; according to the serial number information of each initial data packet and the address of the corresponding transmission tunnel exit node, a corresponding protection header is set for each initial data packet to obtain multiple target data packets.
[0084] The protection header is used to identify the transmission path of each target data packet.
[0085] The packet size may be the total number of bytes contained in a single data packet set by a technician based on actual data transmission requirements.
[0086] The initial data packet may be data after the data stream is divided, or a data packet before receiving encapsulation.
[0087] Optionally, the transmission tunnel entry node divides the data stream according to a preset packet size to obtain multiple initial data packets, and determines the serial number information of each initial data packet and the address of the corresponding transmission tunnel exit node based on the order of each initial data packet in the data stream and the transmission destination of the data stream. Furthermore, the transmission tunnel entry node sets a corresponding protection header for each initial data packet based on the serial number information of each initial data packet and the address of the corresponding transmission tunnel exit node to obtain multiple target data packets.
[0088] It should be noted that when the data stream sent by the same user device is transmitted to multiple servers or clouds in the data network, or when the data streams sent by multiple user devices arrive at the transmission tunnel entry node, there are different five-tuple data in the data stream. The transmission tunnel entry node divides the data stream with the same five-tuple to obtain multiple initial data packets.
[0089] In this embodiment, data streams are divided according to preset packet sizes. Packets of uniform size facilitate batch processing by UPF and PTE nodes, improving forwarding efficiency. Packets with the same quintuple share paths and PTE nodes, reducing routing table complexity. Furthermore, the protection header specifies the transport tunnel egress node address, clearly pointing to the convergence point of redundant paths, improving data forwarding accuracy.
[0090] In an exemplary embodiment, another user plane data transmission method is provided, which is applied to Figure 3 or Figure 4 The user plane data transmission system shown includes:
[0091] It is understandable that Figure 3 The system integrates a PTI node in the gNB, which performs the replication and encapsulation mechanisms of the PREOF. Data packets are replicated within a single gNB and sent over multiple disjoint paths and UPFs. Figure 4The system integrates PTI in the UE. In this approach, the UE performs protection header encapsulation. Furthermore, the UE sends the encapsulated traffic to multiple gNBs over multiple radio links.
[0092] Step 1: The UE sends its traffic to the gNB in the RAN over the radio link. The Protection Tunnel Ingress (PTI) node performs the duplication and encapsulation mechanism of the PREOF.
[0093] In step 2, the PTI node adds a protection header to the data packet, containing sequence number information and specifying the address of the protection tunnel egress (PTE) node. The PTI then replicates the packet and sends it to the PTE node via multiple disjoint paths. The gNB encapsulates the traffic using a GTP-U header in accordance with the 5G standard and specifies the corresponding UPF address. Redundant UPFs with synchronized session state are deployed on all disjoint paths.
[0094] In step 3, the UPF removes the GTP-U header and forwards the packet to the PTE node based on the address information in the protection header. At the PTE node, duplicate packets are eliminated and the traffic is forwarded to the data network.
[0095] In step 4, the PTE node offloads the PREOF's sorting functionality to an external server, PTE-O. Typically, the UPF terminates the GTP-U tunnel and forwards packets based on underlying Layer 3 information. In large 5G network domains, the UPF may apply additional traffic engineering mechanisms, such as Quality of Service (QoS)-based prioritization. This traffic engineering is performed based on the IP header received from the UE. The UE's IP header is encapsulated in a protection header and is not directly accessible to the UPF. To allow the UPF to inspect packets when using PREOF, it is recommended to use an eBPF protection agent in this scenario.
[0096] As you can understand, this embodiment proposes a packet duplication and elimination design for 5G and beyond network environments. This design leverages the Packet Replication, Elimination, and Ordering Function (PREOF) mechanism introduced by the IETF DetNet Working Group to protect the user plane of the 5G network using a 1+1 protection scheme. Each level of redundant equipment has redundant downstream equipment, achieving a multi-layered approach. Packet-level redundancy is provided for UEs with redundant UPFs, as well as for UEs with redundant UPFs and gNBs. PREOF provides redundant data paths by replicating traffic, sending it over multiple disjoint paths, and eliminating duplicate packets at the end. Using the PREOF mechanism introduced by the IETF DetNet Working Group, packet-level redundancy is achieved for components in the 5G environment. To this end, existing 5G network equipment is extended to include packet duplication and elimination capabilities. Packet ordering is offloaded to a network entity to ensure in-order delivery of reassembled packets. One approach is to integrate the packet duplication function within the gNB base station or within the UE.
[0097] In this embodiment, the PTI node adds a protection header to the data packet, which contains sequence number information and specifies the address of the protection tunnel egress (PTE) node. The PTI then replicates the packet and sends it to the PTE node via multiple disjoint paths. The gNB, in accordance with 5G standards, encapsulates traffic using a GTP-U header and specifies the corresponding UPF address. Redundant UPFs with synchronized session state are deployed on all disjoint paths. The UPF removes the GTP-U header and forwards the packet to the PTE node based on the address information in the protection header. At the PTE node, duplicate packets are eliminated and the traffic is forwarded to the data network. High reliability: Transmitting data packets over redundant paths significantly reduces the risk of communication interruption due to single points of failure (such as UPF or gNB failure). This is suitable for ultra-reliable low-latency communication (URLLC) scenarios such as industrial automation and remote surgery. Flexibility: Two implementation options are provided, allowing the replication function to be integrated in either the gNB or the UE, depending on application requirements. This supports the expansion of existing 5G infrastructure without requiring major modifications. Compatibility: (gNB integration) is transparent to the UE, requiring no modifications to UE hardware or software. (UE integration) requires no changes to the 5G standard and is implemented directly at the operating system level. Future potential application scenarios include ensuring communication for mission-critical applications, such as ensuring communication continuity and stability in the core network, or optimizing network traffic engineering. This reduces the cost and complexity of network upgrades by expanding functionality on existing 5G infrastructure, with some components (such as the UPF) adapting to the new mechanism without modification. The integration of PTI into the gNB, if co-located, does not require changes to the 5G standard, reducing the cost and complexity of deploying new mechanisms in existing networks and facilitating widespread adoption. It also improves overall network reliability by introducing packet duplication, elimination, and reordering capabilities in the 5G network, deploying redundant paths. This ensures that data transmission remains stable even if some network components (such as the UPF and gNB) fail. This enhances the reliability of the entire 5G core network, reduces service interruptions caused by hardware defects, software vulnerabilities, power outages, or fiber cuts, and improves user experience.
[0098] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.
[0099] Based on the same inventive concept, embodiments of the present application further provide a user plane data transmission device for implementing the aforementioned user plane data transmission method. The implementation solution provided by this device is similar to the implementation solution described in the aforementioned method. Therefore, the specific limitations in one or more user plane data transmission device embodiments provided below can be found in the above-mentioned limitations on the user plane data transmission method and are not further elaborated here.
[0100] In an exemplary embodiment, Figure 5 As shown, a user plane data transmission device 500 is provided, which is applied to a transmission tunnel ingress node, including: a data partitioning module 501, a data replication module 502 and a data transmission module 503, wherein:
[0101] The data division module 501 is configured to receive a data stream sent by a user equipment and divide the data stream into a plurality of target data packets;
[0102] The data replication module 502 is used to replicate each target data packet to obtain a target data packet group corresponding to each target data packet; each target data packet and its replicated data packet constitute a target data packet group;
[0103] The data transmission module 503 is used to send each target data packet in each target data packet group to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the earliest received target data packet in the same target data packet group and eliminate the remaining target data packets.
[0104] Furthermore, in one embodiment, the data transmission module 503 is also used to send each target data packet of the target data packet group to the base station for the same target data packet group when the transmission tunnel entry node is deployed at the base station; the base station sends each target data packet to the transmission tunnel exit node corresponding to each target data packet through multiple user-plane network elements.
[0105] Furthermore, in one embodiment, the data transmission module 503 is also used to send each target data packet of the target data packet group to multiple base stations respectively for the same target data packet group when the transmission tunnel entry node is deployed on the user equipment; each base station sends each received target data packet to the transmission tunnel exit node corresponding to each target data packet through the user plane network element corresponding to each base station.
[0106] Furthermore, in one embodiment, the data partitioning module 501 is also used to partition the data stream according to a preset packet size to obtain multiple initial data packets; according to the serial number information of each initial data packet and the address of the corresponding transmission tunnel exit node, a corresponding protection header is set for each initial data packet to obtain multiple target data packets; the protection header is used to identify the transmission path of each target data packet.
[0107] Each module in the user plane data transmission device 500 can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in the computer device in the form of software, so that the processor can call and execute the corresponding operations of each module.
[0108] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 6 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O) and a communication interface. The processor, memory and input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The database of the computer device is used to store data such as data streams, target data packets, sequence numbers and transmission tunnel exit node addresses. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a user plane data transmission method is implemented.
[0109] Those skilled in the art will understand that Figure 6 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0110] In one embodiment, a computer device is further provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above method embodiments when executing the computer program.
[0111] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0112] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0113] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0114] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. In particular, any reference to memory, database, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), quantum computing-based data processing logic devices, artificial intelligence (AI) processors, and the like.
[0115] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0116] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A user plane data transmission method, characterized in that: Applied to a transmission tunnel ingress node, the method includes: receiving a data stream sent by a user device, and dividing the data stream into a plurality of target data packets; Copying each target data packet separately to obtain a target data packet group corresponding to each target data packet; each target data packet and its copy data packet constitute a target data packet group; For each target data packet in each target data packet group, each target data packet is sent to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
2. The method according to claim 1, characterized in that The step of transmitting the plurality of target data packet groups to the tunnel exit node through the plurality of disjoint paths includes: In the case where the transmission tunnel entry node is deployed at a base station, for the same target data packet group, each target data packet of the target data packet group is sent to the base station; The base station sends each of the target data packets to a transmission tunnel exit node corresponding to each of the target data packets through multiple user plane network elements.
3. The method according to claim 1, characterized in that The step of transmitting the plurality of target data packet groups to the tunnel exit node through the plurality of disjoint paths includes: In a case where the transmission tunnel entry node is deployed on the user equipment, for a same target data packet group, each target data packet of the target data packet group is sent to multiple base stations respectively; Each of the base stations sends the received target data packets to the transmission tunnel exit nodes corresponding to the target data packets through the user plane network element corresponding to the base station.
4. The method according to claim 2 or 3, characterized in that The base station is further configured to add a tunnel protocol header to the received target data packet to obtain an encapsulated data packet, and send the encapsulated data packet to a transmission tunnel exit node corresponding to the encapsulated data packet through the user plane network element.
5. The method according to claim 4, characterized in that The user plane network element is used to receive the encapsulated data packet sent by the base station, remove the tunnel protocol header of the encapsulated data packet, obtain the target data packet before encapsulation, and send the target data packet to the transmission tunnel exit node according to the address of the transmission tunnel exit node in the protection header of the target data packet.
6. The method according to claim 5, characterized in that The user plane network element is further configured to obtain the quality of service priority of the target data packet, and send the target data packet to the transmission tunnel egress node according to the quality of service priority and the address of the transmission tunnel egress node in the protection header.
7. The method according to claim 1, characterized in that The step of dividing the data stream into a plurality of target data packets comprises: Dividing the data stream according to a preset packet size to obtain a plurality of initial data packets; According to the serial number information of each initial data packet and the address of the corresponding transmission tunnel exit node, a corresponding protection header is set for each initial data packet to obtain multiple target data packets; the protection header is used to identify the transmission path of each target data packet.
8. A user plane data transmission device, characterized in that: Applied to a transmission tunnel ingress node, the device includes: A data division module, configured to receive a data stream sent by a user device and divide the data stream into a plurality of target data packets; A data replication module is used to replicate each target data packet to obtain a target data packet group corresponding to each target data packet; each target data packet and its replicated data packet constitute a target data packet group; A data transmission module is used to send each target data packet in each target data packet group to the corresponding transmission tunnel exit node through multiple non-intersecting paths; the transmission tunnel exit node is used to retain the target data packet received earliest in the same target data packet group and eliminate the remaining target data packets.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
11. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.