Data transmission method, data transmission system and computer readable storage medium
By working collaboratively with core network equipment and network management servers, the number of data packets copied is adaptively adjusted, solving the problem of unstable data transmission caused by electromagnetic interference and wireless signal fading, and achieving reliability and integrity of data transmission.
Patent Information
- Application Number
- CN202411920190.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-25
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2044-12-25
AI Technical Summary
Existing data transmission methods are prone to failure in environments with severe electromagnetic interference or severe wireless signal fading. Furthermore, dual-transmission and selective-reception strategies based on multi-user equipment or single-user equipment cannot guarantee the reliability and effectiveness of data transmission in the event of a failure.
The core network equipment generates an index and updates the local list, extracts sub-lists and generates data records, and the network management server analyzes and makes decisions, adaptively adjusting the number of data packets replicated to ensure the reliability and integrity of data transmission.
In the event of increased wireless interference, the system automatically adds copies of data packets to ensure the reliability and integrity of data transmission, avoid invalid transmissions, and improve the system's ability to withstand wireless fading and terminal equipment failures.
Smart Images

Figure CN119766829B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of communication, in particular to a data transmission method, a data transmission system and a computer readable storage medium. BACKGROUND
[0002] In the field of wireless communication, especially in the scene with complex and changeable electromagnetic environment, the reliability and stability of data transmission are crucial.
[0003] The existing data transmission method usually adopts a dual-transmission and selective-reception strategy of multiple user equipment (UE) or single user equipment UE, which copies the original data packet into two copies and transmits them through two independent paths. However, in an environment with serious electromagnetic interference or serious wireless signal fading, even if the original data packet is copied into two copies for transmission, data transmission failure may occur due to simultaneous interference. Based on the dual-transmission and selective-reception strategy of multiple user equipment UE, when one of the user equipment UEs fails, the other user equipment UE lacks an effective fault detection and response mechanism, and the original data packet is transmitted by a single link, resulting in the failure of the dual-transmission and selective-reception mechanism. Based on the dual-transmission and selective-reception strategy of single user equipment UE, since the entire data transmission process depends on a specific user equipment UE, once the user equipment UE fails, the entire data transmission link will be completely terminated. Therefore, in a replicated industrial environment, it is very important to ensure the effectiveness and reliability of data transmission. SUMMARY
[0004] The present application aims to solve the problem of low effectiveness and reliability of data transmission in the prior art by providing a data transmission method, a data transmission system and a computer readable storage medium.
[0005] To achieve the above-mentioned purpose, the technical solutions adopted by the embodiments of the present application are as follows:
[0006] In a first aspect, the embodiments of the present application provide a data transmission method applied to a data transmission system, the system comprising at least one terminal device, a core network device and a network management server, and the method comprising:
[0007] The core network device receives an uplink data packet, generates a first index according to a first redundancy label and a session identifier corresponding to the uplink data packet, and updates a first local list based on the first index to obtain a first updated list, the first local list being used to store the association relationship between the sequence number of the redundancy label and the session identifier of the data packet;
[0008] The core network device extracts at least one first sub-list from the first updated list, adds a target identifier to at least one entry in each of the first sub-lists, generates a first data record corresponding to the first sub-list, and sends the first data record to the network management server, wherein the session identifiers corresponding to the entries in the first sub-list are the same, and the sequence numbers corresponding to the entries are arranged in order, the first data record includes a first identifier quantity and a session identifier of the first sub-list, and the first identifier quantity is the number of entries in the first sub-list that contain the target identifier;
[0009] The network management server compares the first identifier quantity with a first preset threshold value, and if the first identifier quantity is greater than the first preset threshold value, the core network device obtains address information of a target terminal device corresponding to the session identifier of the first sub-list, and sends a first copy adjustment instruction to the target terminal device based on the address information, wherein the first copy adjustment instruction includes packet copy information;
[0010] The target terminal device responds to the first copy adjustment instruction, copies the uplink data packet based on the packet copy information, generates a plurality of data packet copies, and sends the plurality of data packet copies to the core network device.
[0011] As a possible implementation, the first index is generated according to the first redundancy label and the session identifier corresponding to the uplink data packet, and the first local list is updated based on the first index to obtain a first updated list, including:
[0012] The first redundancy label and the session identifier are combined to generate the first index;
[0013] The first local list is searched based on the first index to find whether there is a matching entry corresponding to the first index in the first local list;
[0014] If there is, the matching entry is deleted, otherwise, the first index is added to the first local list to obtain the first updated list.
[0015] As a possible implementation, the at least one first sub-list is extracted from the first updated list, including:
[0016] The entries in the first updated list are sorted according to the sequence numbers corresponding to the entries in the first updated list to obtain a sorted list;
[0017] Target entries with the same session identifier are extracted from the sorted list, and at least one first sub-list is generated based on the target entries.
[0018] As a possible implementation manner, the adding the target identifier to at least one table entry in each of the first sub-lists and generating the first data record corresponding to the first sub-lists comprises:
[0019] The target identifier is added to a tail table entry in the first sub-list based on the arrangement order of the serial numbers corresponding to each table entry in the first sub-list;
[0020] For each intermediate table entry of the first sub-list, a serial number difference value between any two adjacent intermediate table entries is determined, and the intermediate table entry is a table entry other than the tail table entry and a head table entry;
[0021] The target identifier is added to at least one intermediate table entry based on the serial number difference value;
[0022] The number of table entries in the first sub-list to which the target identifier is added is determined, and the first identifier number is obtained;
[0023] The first data record is generated based on the first identifier number and a session identifier of the first sub-list.
[0024] As a possible implementation manner, the adding the target identifier to at least one intermediate table entry based on the serial number difference value comprises:
[0025] If the serial number difference value is greater than a second preset threshold value, the target identifier is added to an intermediate table entry in the two adjacent intermediate table entries that is in front in the serial number order.
[0026] As a possible implementation manner, the method further comprises:
[0027] Each of the terminal devices sends heartbeat data to the network management server at a preset period;
[0028] The network management server resets a local timer corresponding to each of the terminal devices in response to receiving the heartbeat data, and detects whether the local timer corresponding to each of the terminal devices is timed out;
[0029] If the local timer corresponding to the first terminal device is timed out, the first copy adjustment instruction is sent to the second terminal device.
[0030] As a possible implementation manner, the method further comprises:
[0031] The terminal device receives a downlink data packet, reads a second redundancy label corresponding to the downlink data packet, takes a serial number corresponding to the second redundancy label as a second index, and updates a second local list based on the second index to obtain a second updated list;
[0032] The terminal device extracts at least one second sub-list from the second updated list, adds a target identifier to each entry in the at least one second sub-list, generates a second data record corresponding to the second sub-list, and sends the second data record to the network management server, each entry in the second sub-list has the same session identifier, and each entry has a sequence number arranged in order, the second data record includes a second identifier quantity and a session identifier of the second sub-list, and the second identifier quantity is a quantity of entries in the second sub-list that contain the target identifier;
[0033] The network management server compares the second identifier quantity with the first preset threshold value, and if the second identifier quantity is greater than the first preset threshold value, the core network device acquires address information of a target terminal device corresponding to the session identifier of the second sub-list, and sends a second copy adjustment instruction to the core network device, the second copy adjustment instruction including the address information and packet copy information.
[0034] The core network device responds to the second copy adjustment instruction, copies the downlink data packet based on the packet copy information, generates a plurality of data packet copies, and sends the plurality of data packet copies to the target terminal device.
[0035] As a possible implementation, the method further includes:
[0036] The core network device receives terminal failure information sent by the network management server, and the terminal failure information includes address information of a failure terminal device.
[0037] The address information of the failure terminal device is acquired, and the downlink data packet is stopped from being sent to a target session corresponding to the session identifier until the failure terminal device recovers.
[0038] In a second aspect, the embodiments of the present application provide a data transmission system, the system including at least one terminal device, a core network device, and a network management server.
[0039] The terminal device is configured to perform the steps performed by the terminal device in any one of the first aspect.
[0040] The core network device is configured to perform the steps performed by the core network device in any one of the first aspect.
[0041] The network management server is configured to perform the steps performed by the network management server in any one of the first aspect.
[0042] In a third aspect, an electronic device is provided, and includes a processor, a storage medium, and a bus. The storage medium stores machine readable instructions executable by the processor. When the electronic device is running, the processor communicates with the storage medium through the bus. The processor executes the machine readable instructions to perform the steps of the data transmission method according to any one of the first aspect.
[0043] In a fourth aspect, a computer readable storage medium is provided, and the computer readable storage medium stores a computer program. When the computer program is run by a processor, the computer program performs the steps of the data transmission method according to any one of the first aspect.
[0044] According to the data transmission method, the data transmission system, and the computer readable storage medium, the core network device receives the uplink data packet, generates the first index according to the first redundancy label and the session identifier corresponding to the uplink data packet, updates the first local list based on the first index to obtain a first updated list, extracts at least one first sub-list from the first updated list, adds the target identifier to at least one entry in each first sub-list, generates a first data record corresponding to the first sub-list, and sends the first data record to the network management server. The network management server compares the first identifier quantity with the first preset threshold value. If the first identifier quantity is greater than the first preset threshold value, the core network device obtains address information of the target terminal device corresponding to the session identifier of the first sub-list, and sends a first copy adjustment instruction to the target terminal device based on the address information. The target terminal device responds to the first copy adjustment instruction, copies the uplink data packet based on the data packet copy information, generates a plurality of data packet copies, and sends the plurality of data packet copies to the core network device. According to the embodiments of the present application, the redundancy label and the session identifier are carried in the uplink data packet. The core network device can track and distinguish different data packets and their corresponding sessions according to the redundancy label and the session identifier, and generate the first index based on the redundancy label and the session identifier to track the data packet receiving condition of each session in real time. After updating the first local list according to the first index to obtain the first updated list, the entries with the same session identifier are extracted from the updated list to generate the first sub-list, and the first sub-list is marked to generate the first data record containing the first identifier quantity. The network management server analyzes and decides based on the first data record, and sends the first copy adjustment instruction to the target terminal device in the case of unreliable data transmission, so that the target terminal device adjusts the data packet copy quantity and retransmits the data. Based on this, the present application adaptively adjusts the data packet copy quantity according to the actual data transmission condition, so as to effectively ensure the data transmission reliability and integrity by automatically increasing the data packet copies in the case of increased wireless interference. BRIEF DESCRIPTION OF DRAWINGS
[0045] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the embodiments will be briefly introduced as follows. It should be understood that the following drawings only show some of the embodiments of the present application, and therefore should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can also be obtained without creative labor under the guidance of the content of the present application.
[0046] Figure 1 A schematic diagram of an architecture of a data transmission system provided by an embodiment of the present application is shown;
[0047] Figure 2 A schematic diagram of an architecture of another data transmission system provided by an embodiment of the present application is shown;
[0048] Figure 3 An interaction schematic diagram of a data transmission method provided by an embodiment of the present application is shown;
[0049] Figure 4 A flow schematic diagram of a first updated list determination method provided by an embodiment of the present application is shown;
[0050] Figure 5 A flow schematic diagram of a first data record generation method provided by an embodiment of the present application is shown;
[0051] Figure 6 A flow schematic diagram of a detection method provided by an embodiment of the present application is shown;
[0052] Figure 7 An interaction schematic diagram of another data transmission method provided by an embodiment of the present application is shown;
[0053] Figure 8 A structural schematic diagram of an electronic device provided by an embodiment of the present application is shown. DETAILED DESCRIPTION
[0054] In order to make the purpose, technical solutions and advantages of the embodiments of the present application more clear, the technical solutions in the embodiments of the present application will be described clearly and completely with reference to the drawings in the embodiments of the present application. It should be understood that the drawings in the present application only serve the purpose of illustration and description, and should not be regarded as a limitation on the scope of protection of the present application. In addition, it should be understood that the schematic drawings are not drawn according to the actual proportions. The flowchart shows the operations implemented according to some embodiments of the present application. It should be understood that the operations of the flowchart can not be implemented in sequence, and the steps without logical context relationship can be reversed in sequence or implemented simultaneously. In addition, one or more other operations can be added to the flowchart or removed from the flowchart by those skilled in the art under the guidance of the content of the present application.
[0055] In addition, the described embodiments are only some embodiments of the present application, rather than all embodiments. The components of the embodiments of the present application described and shown in the accompanying drawings can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the claimed present application, but only represents selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.
[0056] It should be noted that the term "comprising" will be used in the embodiments of the present application to indicate the presence of the features declared thereafter, but does not exclude the addition of other features.
[0057] 5G dual-redundancy selection refers to data redundancy transmission based on two independent user equipment (UE) in a 5G independent networking scenario, and high-reliability forwarding of 5G connection is achieved by using FRER (IEEE 802.1CB), or HSR / PRP (IEC 62439-3) dual-redundancy selection protocol at the terminal side and network side equipment. In the data transmission process, the sending end copies the original data frame into two parts, adds corresponding fields in the data frame packet header to fill in the protocol type, redundant message sequence number and other information, and simultaneously transmits from two links, such as R-TAG of dual-redundancy selection protocol FRER, HSR TAG of dual-redundancy selection protocol HSR, RCT reserved field of PRP, etc. The receiving end identifies the redundant frame through the redundant message sequence number, and performs data deduplication to avoid packet loss caused by single link failure, further reduces the damage of business caused by node failure, data packet loss or jitter of transmission network and other links, and thus improves the reliability of end-to-end data transmission.
[0058] However, the existing data transmission method based on dual-redundancy selection has the following problems:
[0059] (1) Only the original data packet is copied into two parts for transmission, but in an environment with serious electromagnetic interference, two copied packets are not enough to counteract the data packet loss caused by wireless fading, so the receiving end may still not receive the data packet after using dual-redundancy selection.
[0060] (2) The dual-redundancy selection scheme based on multiple UEs supports data transmission through at most two wireless terminals. When a terminal fails, the other terminal cannot perceive the situation and can only transmit a single data packet over the wireless link, thereby causing the dual-redundancy selection mechanism to fail.
[0061] (3) The single-UE-based dual-transmission and selective-reception scheme has a single-point failure problem of terminal equipment. When the terminal device performing the dual-transmission and selective-reception function fails, the data transmission will fail. Due to cost constraints, the hardware reliability of the terminal is relatively poor compared with the traditional industrial switch. In the industrial environment, the terminal is more prone to hardware failure compared with the industrial switch.
[0062] To solve the above problems, the application provides a data transmission method and a data transmission system. The key components UPF in the terminal equipment and the core network equipment can adaptively adjust the number of data packet copies according to the actual data transmission situation, so that the number of data packet copies can be automatically increased in the case of increasing wireless interference, and the data transmission reliability is ensured. In addition, in the case of failure of a certain terminal device, the number of uplink data packet copies of another terminal is actively increased to ensure the reliability of uplink transmission, and the number of downlink data packet copies sent to the terminal device with failure is actively avoided, thereby avoiding invalid transmission.
[0063] Figure 1 A structure diagram of a data transmission system provided by an embodiment of the application is shown. Referring to Figure 1 The data transmission system includes at least one terminal device, a core network device, and a network management server. Based on the interaction between the terminal device, the core network device, and the network management server, the transmission process of the uplink data packet and the downlink data packet can be realized. The core network device includes a key component (User Plane Function, UPF) and a key component (Network Exposure Function, NEF). The key component UPF is mainly responsible for processing data traffic of the user plane to ensure efficient and secure transmission of data packets between the user equipment UE and the external network. The key component NEF is a bridge between the 5G core network and external entities, enabling external entities to safely access and utilize the capabilities and information of the 5G network.
[0064] Optionally, as shown in Figure 2 In addition to the terminal device, the core network device, and the network management server, the data transmission system provided by the application also includes a machine device, a dual-transmission and selective-reception switch, and a host computer. The machine device is a networked device that can be used to generate uplink data packets. The machine device is connected to the dual-transmission and selective-reception switch with dual-transmission and selective-reception capability, and two terminal devices are connected to the external network interface of the dual-transmission and selective-reception switch. Each terminal device has only one 5G module, and the terminal device is connected to the core network device. The core network device provides a 5G network, and a dual-transmission and selective-reception module is built into the key component UPF on the 5G network side to interact with the host computer through the key component UPF.
[0065] Based on this, the data transmission system provided in the embodiments of this application can automatically adjust the number of data packets copied by each terminal in a 5G network according to the wireless interference situation and the working status of different wireless terminals, thereby improving the system's ability to resist wireless fading and terminal equipment failure.
[0066] The following is in conjunction with the above. Figure 1 and Figure 2 The data transmission system shown herein provides a detailed description of the data transmission method provided in the embodiments of this application.
[0067] Figure 3 This illustration shows an interactive diagram of a data transmission method provided in an embodiment of this application. (Refer to...) Figure 3 As shown, the method specifically includes the following steps:
[0068] S301. The core network device receives uplink data packets, generates a first index based on the first redundancy tag and session identifier corresponding to the uplink data packets, and updates the first local list based on the first index to obtain the first updated list.
[0069] Optionally, in combination with the above Figure 2 As shown, during the uplink data transmission process, the machine generates uplink data packets and sends them to the dual-transmitter selective receiver switch. The dual-transmitter selective receiver switch copies the uplink data packets into two copies and adds a redundancy tag to each copy. Then, it sends the uplink data packets to two terminal devices through two independent network ports. Each terminal device sends the uplink data packets with redundancy tags to the base station, and the base station forwards the data packets with redundancy tags from the two terminal devices to the core network equipment.
[0070] Optionally, the core network device stores a first local list.<pdu_id,seq> The first local list stores the association between the sequence number of the redundancy tag and the session identifier of the data packet. The redundancy tag is a mechanism to enhance data transmission reliability. Redundancy tags are added to the header of the uplink data packet by adding extra information, such as sequence number and protocol type. The session identifier is an identifier used to uniquely identify a specific data transmission session.
[0071] Further, the core network device reads the session identifier pdu_id of the uplink data packet after receiving the uplink data packet sent by the base station, identifies the redundancy label seq carried in the uplink data packet, generates a first index <pdu_id, seq> based on the session identifier pdu_id and the redundancy label, and retrieves the first local list [<pdu_id, seq>] by using the first index <pdu_id, seq> to update the first local list [<pdu_id, seq>] to obtain a first updated list, wherein the first updated list contains the latest data packet reception information.
[0072] S302, the core network device extracts at least one first sub-list from the first updated list, adds a target identifier to at least one entry in each first sub-list, generates a first data record corresponding to the first sub-list, and sends the first data record to the network management server.
[0073] Optionally, the session identifiers corresponding to each entry in the first sub-list are the same, and the sequence numbers corresponding to each entry are arranged in order, and the first data record includes a first identifier quantity and a session identifier of the first sub-list, and the first identifier quantity is the number of entries in the first sub-list that contain the target identifier.
[0074] Optionally, the core network device selects at least one subset, i.e., the first sub-list, from the first updated list based on a specific rule or extraction condition, for example, extracts at least one first sub-list from the first updated list according to the extraction condition of having the same session identifier, the session identifiers corresponding to each entry in the first sub-list are the same, which means that the first sub-list is constructed based on the same communication session, and the sequence numbers corresponding to each entry are arranged in order, which helps to maintain the correct ordering of the sad packets. On this basis, the target identifier is added to at least one entry in the first sub-list to specially mark certain entries in the first sub-list based on the target identifier, and a corresponding first data record is generated according to the marked first sub-list, and the first data record is sent to the network management server.
[0075] S303, the network management server compares the first identifier quantity with a first preset threshold value, and if the first identifier quantity is greater than the first preset threshold value, the core network device obtains address information of a target terminal device corresponding to the session identifier of the first sub-list, and sends a first copy adjustment instruction to the target terminal device based on the address information.
[0076] Optionally, the first copy adjustment instruction is used to adjust the processing mode of the uplink data packet, in particular, the copy of the uplink data packet. Specifically, the first copy adjustment instruction includes packet copy information, which is used to indicate how many copies of the uplink data packet are to be made.
[0077] Optionally, the first preset threshold is a preset value, which is used as a criterion for triggering the core network device to acquire the address information of the target terminal device corresponding to the session identifiers in the first sub-list. After receiving the first data record sent by the core network device, the network management server compares the first identification quantity in the first data record with the first preset threshold to determine whether the data packet processing mode of the related session needs to be adjusted.
[0078] Optionally, if the first identification quantity is greater than the first preset threshold, it means that some data packets under the session need special attention or there are abnormal situations, and a response process is triggered, in which the core network device acquires the address information of the target terminal device corresponding to the session identifiers in the first sub-list, and sends a first copy adjustment instruction to the corresponding target terminal device using the obtained address information. The first copy adjustment instruction contains specific instructions about uplink data packet copying, specifically how many copies of uplink data packets are to be copied, so as to improve the reliability of data transmission by adjusting the data packet copying mode and ensure that even if some data packets are lost, the core network device can still reconstruct complete information.
[0079] S304、The target terminal device responds to the first copy adjustment instruction, copies the uplink data packet based on the data packet copy information, generates multiple data packet copies, and sends the multiple data packet copies to the core network device.
[0080] Optionally, after receiving the first copy adjustment instruction, the target terminal device updates the local data forwarding strategy, and again copies the uplink data packet from the dual-transmit-receive switch to form multiple data packet copies, and sends the multiple data packet copies to the core network device through the base station. Specifically, the target terminal device determines how many copies of uplink data packets are needed according to the data packet copy information carried in the first copy adjustment instruction. In this process, the target terminal device parses the first copy adjustment instruction and generates multiple data packet copies according to the requirements in the first copy adjustment instruction. Each data packet copy is a complete copy of the original uplink data packet.
[0081] Optionally, after completing the copying, the target terminal device sends the multiple data packet copies back to the core network device. In this process, the target terminal device needs to ensure that all data packet copies can be sent out in proper order and time interval, avoiding excessive occupation of network resources or causing congestion.
[0082] According to the data transmission method provided in the embodiments of the present application, the uplink data packet carries the redundancy label and the session identifier, the core network device can track and distinguish different data packets and the sessions to which the data packets belong according to the redundancy label and the session identifier, and generate the first index based on the redundancy label and the session identifier, so as to track the data packet receiving status of each session in real time. After the first local list is updated according to the first index to obtain the first updated list, the entries with the same session identifier are extracted from the updated list to generate the first sub-list, the first sub-list is marked to generate the first data record containing the first identification quantity, the network management server analyzes and makes decisions based on the first data record, and sends the first copy adjustment instruction to the target terminal device in the case that the data transmission is unreliable, so that the target terminal device adjusts the data packet copy quantity and re-performs data transmission. Based on this, the present application adaptively adjusts the data packet copy quantity according to the actual data transmission status, so as to effectively ensure the data transmission reliability and integrity by automatically increasing the data packet copies in the case that the wireless interference increases.
[0083] Figure 4 A flowchart of a first updated list determination method provided in the embodiments of the present application is shown. Referring to FIG. 4, the step S301 generates the first index according to the first redundancy label and the session identifier corresponding to the uplink data packet, and updates the first local list based on the first index to obtain the first updated list, which specifically includes the following steps: Figure 4
[0084] S401, the first redundancy label and the session identifier are combined to generate the first index.
[0085] Exemplarily, the first redundancy label seq and the session identifier pdu_id are combined according to a preset combination mode to form a unique identifier, i.e., the first index. The preset combination mode can be simple string splicing, for example, the first redundancy label seq and the session identifier pdu_id are spliced by using the strings “,” and “<>” to obtain the first index <pdu_id, seq>, which can be used for subsequent retrieval and updating of the first local list.
[0086] S402, the first local list is retrieved based on the first index to find out whether there is a matching entry corresponding to the first index in the first local list.
[0087] Exemplarily, the first local list [<pdu_id, seq>] is a data structure, and the first index <pdu_id, seq> is used to search the first local list [<pdu_id, seq>] to find whether there is a matching entry in the first local list [<pdu_id, seq>] that is completely matched with the first index <pdu_id, seq>, that is, a matching entry.
[0088] S403, if the matching entry exists, the matching entry is deleted, otherwise, the first index is added to the first local list to obtain a first updated list.
[0089] Exemplarily, if the matching entry corresponding to the first index <pdu_id, seq> exists in the first local list [<pdu_id, seq>], it means that the uplink data packet or the corresponding session has been processed and there is no need to retain the information of the uplink data packet or the corresponding session, and then a deletion operation is performed to remove the matching entry from the first local list [<pdu_id, seq>] and obtain a first updated list.
[0090] Exemplarily, if the matching entry corresponding to the first index <pdu_id, seq> does not exist in the first local list [<pdu_id, seq>], it means that the uplink data packet or the corresponding session is new and needs to be recorded for subsequent processing, and then an addition operation is performed to add the first index <pdu_id, seq> to the first local list [<pdu_id, seq>], remove the redundant label from the uplink data packet, and then forward the processed uplink data packet to the host computer.
[0091] Therefore, by generating an index and updating a local list, the received uplink data packet can be tracked and managed, so that the data packet is not processed repeatedly, and the information of the new data packet can be recorded for subsequent use. This operation is crucial for maintaining the integrity and consistency of network data.
[0092] As a possible implementation, the step S302 of extracting at least one first sub-list from the first updated list comprises:
[0093] According to the sequence numbers corresponding to the entries in the first updated list, the entries in the first updated list are sorted to obtain a sorted list, and target entries with the same session identifier are extracted from the sorted list, and at least one first sub-list is generated based on the target entries.
[0094] Exemplarily, after obtaining the first updated list, each entry in the first updated list can be sorted in ascending order according to the sequence number corresponding to each entry in the first updated list, to obtain a sorted list arranged in sequence number order. It should be noted that the purpose of sorting each entry in the first updated list is to ensure that all entries are sorted in the correct order in the communication session.
[0095] Exemplarily, after obtaining the sorted list, all entries with the same session identifier are found from the sorted list as target entries, with the same session identifier as the screening condition, and at least one first sub-list is generated according to the screened target entries. <seq>]. In the process of generating the first sub-list, if there is only one session of all the entries in the screening result, a first sub-list containing these entries is generated, and if there are multiple sessions of entries screened out, a first sub-list is generated for each session. It should be noted that the operation of screening entries according to the session identifier is to concentrate the processing of data packets belonging to the same session, so as to facilitate the management and analysis of the behavior or problem of a specific session.
[0096] Based on this, the core network device extracts the entries with the same session identifier from the first updated list and groups them into at least one first sub-list, ensuring that the extracted sub-list can meet the specific processing requirements, and helping to improve the accuracy and efficiency of data processing.
[0097] Figure 5 A flowchart of a first data record generation method provided by an embodiment of the present application is shown. Referring to Figure 5 As shown in FIG. 5, the above step S302 adds the target identifier to at least one entry in each first sub-list and generates a first data record corresponding to the first sub-list, specifically including the following steps:
[0098] S501, based on the arrangement order of the sequence numbers corresponding to each entry in the first sub-list, adding the target identifier to the last entry in the first sub-list.
[0099] Exemplarily, if the first sub-list <seq>The number of entries in the table is n, and the first sublist [ <seq>The sequence numbers corresponding to each entry in the table are arranged in order. The first entry (seq1) in the first sublist is marked as Ts, and the last entry (seq) in the first sublist is marked as Ts. n Marked as Te. It should be noted that, in this application, the target identifier is Te as an example; the first sublist [ <seq>the end entry seq in the list n i.e. as a target entry is added target identification Te, i.e. the end entry seq n marked as Te.
[0100] S502, for each intermediate entry of the first sub-list, determining a sequence number difference between any two adjacent intermediate entries, the intermediate entry being an entry other than the end entry and the first entry.
[0101] Exemplarily, for each first sub-list[ <seq>], except for the first entry seq1 and the last entry seq n , the first sub-list [ <seq>the sequence number difference seq i+1 seq i .
[0102] It should be noted that by calculating the sequence number difference, the continuity or interval between the entries can be evaluated, which is an important basis for determining whether to add the target identifier to certain entries in the subsequent steps.
[0103] S503, based on the sequence number difference, adding the target identifier to at least one intermediate entry.
[0104] Optionally, if the sequence number difference is greater than a second preset threshold, the target identifier is added to the intermediate entry with the earlier sequence number among the two adjacent intermediate entries.
[0105] Exemplarily, the second preset threshold is a preset value, which can be set to 1, for example. The sequence number difference is compared with the second preset threshold, and the target identifier is selectively added to the intermediate entry according to the comparison result. Specifically, when the sequence number difference seq i+1 seq i is greater than 1, seq i is marked as Te, and seq i+1 is marked as Ts, that is, the target identifier Te is added to the intermediate entry with the earlier sequence number among the two adjacent intermediate entries.
[0106] S504, determining the number of entries in the first sub-list to which the target identifier is added, to obtain a first identifier number.
[0107] Exemplarily, when the sequence number difference seq i+1 seq i is greater than 1, seq i is marked as Te, and seq i+1 is marked as Ts, after the marking of each intermediate entry in the first sub-list based on this marking principle is completed, the number of entries in the first sub-list to which the target identifier Te is added is counted, that is, the first identifier number N is obtained, in combination with the marking processing of the first and last entries in the first sub-list.
[0108] S505, generating a first data record based on the first identifier number and the session identifier of the first sub-list.
[0109] Exemplarily, the first identifier quantity is N, and the session identifier of the first sub-list is pdu_id, the first identifier quantity N and the session identifier pdu_id of the first sub-list are combined to generate a first data record <pdu_id, N>. Further, the key component UPF sends the first data record <pdu_id, N> to the network management server, so that the network management server judges whether to perform data forwarding strategy based on the first data record <pdu_id, N>.
[0110] Based on this, by sequentially adding identifiers to the entries in the first sub-list, the core network device can more accurately manage and track the status of the data packet, ensuring that the network can be quickly located and measures can be taken when problems occur in the network. In addition, the generated first data record provides valuable information to the network management server, so that the network management server can adjust the network strategy and quality of service according to the actual situation, thereby improving the overall network performance and reliability.
[0111] Figure 6 A flowchart of a detection method provided by an embodiment of the application is shown. Referring to FIG. 6, as one possible implementation manner, the method further includes: Figure 6
[0112] S601, each terminal device sends heartbeat data to the network management server according to a preset period.
[0113] Exemplarily, the preset period is a time period set in advance, for example, 5 minutes, 10 minutes, etc., which can be set according to actual needs. Each terminal device sends heartbeat data to the network management server according to the preset period, and the heartbeat data can be used to indicate that the terminal device is currently active and online.
[0114] S602, the network management server resets the local timer corresponding to each terminal device in response to receiving the heartbeat data, and detects whether the local timer corresponding to each terminal device is overdue.
[0115] Exemplarily, the network management server maintains a local timer for each terminal device, and resets the local timer corresponding to the terminal device when the network management server receives the heartbeat data sent by the terminal device, which means that if the network management server continuously receives the heartbeat data of a terminal device, the local timer of the terminal device will not be overdue.
[0116] Exemplarily, the network management server also periodically detects whether the local timer corresponding to each terminal device is overdue, and the timeout means that the network management server has not received the heartbeat data sent by the terminal device within the preset period, which means that the terminal device has a problem such as failure or network disconnection.
[0117] S603, if the local timer corresponding to the first terminal device expires, sending a first copy adjustment instruction to the second terminal device.
[0118] Exemplarily, if the network management server detects that the local timer corresponding to the first terminal device has expired, that is, the network management server has not received the heartbeat data of the first terminal device within the preset period, at this time, the network management server sends a first copy adjustment instruction to the second terminal device, so that the second terminal device copies the uplink data packet according to the data packet copy information in the first copy adjustment instruction, and sends the copied multiple data packet copies to the core network device, so as to enhance the redundancy and reliability of data transmission, and ensure the communication quality and service level even if the first terminal device has a problem.
[0119] Based on this, the network management server effectively monitors the state of the terminal device, discovers the terminal device that has a fault or is lost in time through the heartbeat data and the local timer, and compensates for the possible service interruption by sending a copy adjustment instruction to other terminal devices. That is, in the case that a certain terminal device has a fault, the application actively increases the number of uplink data packet copies of another terminal device to ensure the reliability of uplink transmission. Therefore, the application not only improves the overall stability and reliability of the network, but also provides a fault recovery strategy to ensure a high service level and data transmission reliability even in the case that some components in the network environment are temporarily disabled.
[0120] Figure 7 An interaction schematic diagram of another data transmission method provided by an embodiment of the application is shown.
[0121] Referring to Figure 7 As shown in the figure, the method further includes:
[0122] S701, the terminal device receives a downlink data packet, reads a second redundancy label corresponding to the downlink data packet, takes a sequence number corresponding to the second redundancy label as a second index, and updates a second local list based on the second index to obtain a second updated list.
[0123] Optionally, in combination with the above Figure 2 As shown in the figure, in the downlink data transmission process, the host computer generates a downlink data packet and sends the downlink data packet to the core network device, specifically, sends the downlink data packet to a key component UPF in the core network device. The double-transmitting and selective-receiving module in the UPF copies the downlink data packet from the host computer into two copies, adds a redundancy label in the downlink data packet, and sends the copied downlink data packet with the added redundancy label to two terminal devices through a base station respectively. Each terminal device receives the downlink data packet and sends the downlink data packet to the double-transmitting and selective-receiving switch.
[0124] Optionally, each terminal device maintains a second local list <seq>], wherein seq represents a sequence number corresponding to the second redundancy label in the downlink data packet. After receiving the downlink data packet from the base station, the terminal device reads the second redundancy label in the downlink data packet, and retrieves the second local list with the sequence number seq corresponding to the second redundancy label as the second index <seq>], if the second local list[ <seq>If there is a match item with the second index in the second local list, the downlink data packet is directly sent to the dual-transmit selective receiving switch, otherwise, if there is no match item with the second index in the second local list, the downlink data packet is sent to the dual-transmit selective receiving switch after being processed by the second processing unit. <seq>if the matching item of the second index is not present in the middle list, then the matching item of the second index is present in the second local list <seq>adding a table entry corresponding to the second index in the middle <seq>to the second local list[ <seq>obtains a second updated list after the update.
[0125] S702, the terminal device extracts at least one second sub-list from the second updated list, adds the target identifier to at least one entry in each second sub-list, generates a second data record corresponding to the second sub-list, and sends the second data record to the network management server.
[0126] Optionally, the session identifiers corresponding to each entry in the second sub-list are the same, and the sequence numbers corresponding to each entry are arranged in order, the second data record includes the second identifier quantity and the session identifier of the second sub-list, and the second identifier quantity is the number of entries in the second sub-list that contain the target identifier.
[0127] Illustratively, the terminal device sorts the second updated list after the update, specifically, arranges each entry in the second updated list in ascending order according to the sequence number seq to obtain a sorted list, and extracts at least one second sub-list from the sorted list, specifically, the extraction can be performed according to the extraction condition of having the same session identifier.
[0128] Illustratively, after the second sub-list is extracted, the second sub-list can be marked, and the target identifier is added to at least one entry in the second sub-list, specifically, the first entry seq1 in the second sub-list is marked as Ts, and the last entry seq n Te. It should be noted that in this application, the target identifier is taken as an example of Te, and the second sub-list <seq>the end entry seq in the list m i.e. as a target entry is added target identification Te, i.e. the end entry seq n marked as Te. And, for the second sub-list <seq>the sequence number difference seq i+1 -seqseq i , when the sequence number difference seq i+1 -seq i is greater than a preset value 1, seq i is marked as Te, and seq i+1 is marked as Ts, that is, the target identifier Te is added to the intermediate entry with the sequence number in the front among the two adjacent intermediate entries.
[0129] Exemplarily, based on the above marking method, the target terminal device counts the second sub-list after marking[ <seq>The Te in the first list is the second identification quantity, and the second identification quantity is sent to the network management server.
[0130] S703, the network management server compares the second identification quantity with the first preset threshold value, and if the second identification quantity is greater than the first preset threshold value, the core network device acquires address information of a target terminal device corresponding to a session identifier of the second sub-list, and sends a second copy adjustment instruction to the core network device.
[0131] Optionally, the second copy adjustment instruction includes address information and packet copy information, and the packet copy information is used to indicate how many copies of the downlink data packet are to be made. After receiving the second identification quantity sent by the terminal device, the network management server compares the second identification quantity with the first preset threshold value to determine whether the data packet processing mode of the related session needs to be adjusted. Specifically, if the second identification quantity is greater than the first preset threshold value, the network management server queries and acquires the session identifier pdu_id corresponding to the IP address of the terminal device through the key component NEF in the core network device.
[0132] Further, after receiving the session identifier pdu_id from the key component NEF, the network management server sends a second copy adjustment instruction to the key component UPF in the core network device. Specifically, the network management server sends the packet copy information M and the session identifier pdu_id to the key component UPF, that is, the key component UPF needs to make M copies of the original downlink data packet, and send the original downlink data packet to the target terminal device through the PDU session corresponding to the session identifier pdu_id.
[0133] S704, the core network device responds to the second copy adjustment instruction, copies the downlink data packet based on the packet copy information, generates multiple data packet copies, and sends the multiple data packet copies to the target terminal device.
[0134] Optionally, after receiving the second copy adjustment instruction from the network management server, the key component UPF in the core network device updates the local data forwarding strategy, and again copies the downlink data packet from the host computer to form multiple data packet copies, and sends the multiple data packet copies to the target terminal device through the base station.
[0135] Illustratively, the key component UPF determines how many copies of the uplink data packet are needed according to the packet copy information carried in the second copy adjustment instruction. In this process, the key component UPF parses the second copy adjustment instruction, generates multiple data packet copies according to the requirements in the second copy adjustment instruction, and each data packet copy is a complete copy of the original uplink data packet.
[0136] Based on this, the target terminal device can enhance the transmission reliability of the downlink data packet. Especially in the case of unstable network conditions or high packet loss rate, the application dynamically adjusts the data packet duplication strategy, so that the network can more flexibly cope with different application scenarios and requirements, and improve the communication quality and service continuity.
[0137] As a possible implementation manner, the method further comprises: the core network device receiving terminal failure information sent by the network management server, obtaining a session identifier corresponding to address information of the failed terminal device, and stopping sending downlink data packets to a target session corresponding to the session identifier until the failed terminal device recovers normally, wherein the terminal failure information comprises address information of the failed terminal device.
[0138] Exemplarily, after detecting that a certain terminal device fails through heartbeat information, the network management server sends terminal failure information to a key component UPF in the core network device, and the terminal failure information can comprise IP address information of the failed terminal device. After receiving the terminal failure information from the network management server, the key component UPF queries and obtains a session identifier pdu_id corresponding to the IP address information of the failed terminal device through a key component NEF, and the key component UPF will stop sending downlink data packets to a PDU session corresponding to the failed terminal device until the network management server informs the core network device that the failed terminal device has recovered normally.
[0139] Based on this, when a certain terminal device fails, the data transmission method provided in the application embodiment adopts a proactive strategy to actively avoid sending duplication information of downlink data packets to the terminal device that fails, thereby eliminating the invalid transmission situation.
[0140] The application embodiment further provides an electronic device 800, as shown in Figure 8 The electronic device 800 structure schematic diagram provided in the application embodiment comprises a processor 801, a memory 802, and optionally further comprises a bus 803. The memory 802 stores machine readable instructions executable by the processor 801, and when the electronic device 800 runs, the processor 801 and the memory 802 communicate through the bus 803, and the machine readable instructions are executed by the processor 801 to execute the method steps in the data transmission method according to any one of the above.
[0141] The application embodiment further provides a computer readable storage medium, and the computer readable storage medium stores a computer program, and the computer program is executed by the processor to execute the method steps in the data transmission method according to any one of the above.
[0142] Those skilled in the art can clearly understand the specific working process of the system and the device described above for the convenience and brevity of description, which can refer to the corresponding process in the method embodiment, and will not be repeated herein. In several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented by other ways. The device embodiments described above are only schematic, for example, the division of the modules is only a logical function division, and the actual implementation can have another division, for example, a plurality of modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the displayed or discussed each other can be indirect coupling or communication connection through some communication interfaces, devices or modules, which can be electrical, mechanical or other forms.
[0143] In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit. When the functions are realized in the form of software functional units and sold or used as independent products, they can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or say the parts that make contributions to the prior art or parts of the technical solutions can be embodied in the form of software products, which are stored in a storage medium and include a plurality of instructions for making a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in each embodiment of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, and various media that can store program codes.
[0144] The above is only a specific embodiment of the present application, but the protection scope of the present application is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical scope disclosed in the present application, which should be covered within the protection scope of the present application.< / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq> < / seq>
Claims
1. A data transmission method, characterized by, The application is applied to a data transmission system, the system comprising at least one terminal device, a core network device and a network management server, the method comprising: The core network device receives an uplink data packet, generates a first index according to a first redundancy label and a session identifier corresponding to the uplink data packet, and updates a first local list based on the first index to obtain a first updated list, the first local list being used to store an association relationship between a sequence number of a redundancy label of a data packet and a session identifier; The core network device extracts at least one first sub-list from the first updated list, adds a target identifier to at least one entry in each first sub-list, generates a first data record corresponding to the first sub-list, and sends the first data record to the network management server, wherein the session identifiers corresponding to each entry in the first sub-list are the same, and the sequence numbers corresponding to each entry are arranged in order, the first data record comprises a first identifier number and a session identifier of the first sub-list, and the first identifier number is the number of entries containing the target identifier in the first sub-list; The network management server compares the first identifier number with a first preset threshold value, if the first identifier number is greater than the first preset threshold value, the core network device acquires address information of a target terminal device corresponding to the session identifier of the first sub-list, and sends a first copy adjustment instruction to the target terminal device based on the address information, the first copy adjustment instruction comprising data packet copy information; The target terminal device responds to the first copy adjustment instruction, copies the uplink data packet based on the data packet copy information, generates a plurality of data packet copies, and sends the plurality of data packet copies to the core network device.
2. The method of claim 1, wherein, The first index is generated according to the first redundancy label and the session identifier corresponding to the uplink data packet, and the first local list is updated based on the first index to obtain the first updated list, comprising: The first redundancy label and the session identifier are combined to generate the first index; The first local list is searched based on the first index to find out whether there is a matching entry corresponding to the first index in the first local list; If there is, the matching entry is deleted, otherwise, the first index is added to the first local list to obtain the first updated list.
3. The method of claim 1, wherein, The first updated list is extracted from the first updated list, comprising: The entries in the first updated list are sorted according to the sequence numbers corresponding to the entries in the first updated list to obtain a sorted list; Target entries with the same session identifier are extracted from the sorted list, and at least one first sub-list is generated based on the target entries.
4. The method of claim 1, wherein, The target identifier is added to the last entry in the first sub-list based on the arrangement order of the sequence numbers corresponding to each entry in the first sub-list; For each intermediate entry of the first sub-list, determine a sequence number difference between any two adjacent intermediate entries, the intermediate entry being an entry other than the last entry and the first entry; Based on the sequence number difference, add the target identifier to at least one intermediate entry; Determine the number of entries in the first sub-list to which the target identifier is added, obtaining the first identifier number; Based on the first identifier number and the session identifier of the first sub-list, generate the first data record.
5. The method of claim 4, wherein, The adding of the target identifier to at least one intermediate entry based on the sequence number difference comprises: If the sequence number difference is greater than a second preset threshold, add the target identifier to the intermediate entry with a sequence number in the earlier order among the two adjacent intermediate entries.
6. The method of claim 1, wherein, Further comprising: Each terminal device sends heartbeat data to the network management server at a preset period; The network management server resets the local timer corresponding to each terminal device in response to receiving the heartbeat data, and detects whether the local timer corresponding to each terminal device is timed out; If the local timer corresponding to the first terminal device is timed out, the first copy adjustment instruction is sent to the second terminal device.
7. The method of claim 1, wherein, Further comprising: The terminal device receives a downlink data packet, reads a second redundancy label corresponding to the downlink data packet, takes a sequence number corresponding to the second redundancy label as a second index, and updates a second local list based on the second index to obtain a second updated list; The terminal device extracts at least one second sub-list from the second updated list, adds a target identifier to at least one entry in each second sub-list, generates a second data record corresponding to the second sub-list, and sends the second data record to the network management server, the session identifiers corresponding to each entry in the second sub-list are the same, and the sequence numbers corresponding to each entry are arranged in order, the second data record includes a second identifier number and a session identifier of the second sub-list, and the second identifier number is the number of entries in the second sub-list that contain the target identifier; The network management server compares the second identifier number with the first preset threshold, and if the second identifier number is greater than the first preset threshold, the core network device obtains address information of a target terminal device corresponding to the session identifier of the second sub-list, and sends a second copy adjustment instruction to the core network device, the second copy adjustment instruction including the address information and data packet copy information; The core network device responds to the second copy adjustment instruction, copies the downlink data packet based on the data packet copy information, generates multiple data packet copies, and sends the multiple data packet copies to the target terminal device.
8. The method of claim 7, wherein, Further comprising: The core network device receives terminal fault information sent by the network management server, the terminal fault information including address information of a faulty terminal device; Obtain the session identifier corresponding to the address information of the faulty terminal device, and stop sending the downlink data packet to the target session corresponding to the session identifier until the faulty terminal device recovers.
9. A data transmission system, characterized in that The system comprises at least one terminal device, a core network device and a network management server; The terminal device is configured to perform the steps performed by the terminal device in any one of claims 1-8; The core network device is configured to perform the steps performed by the core network device in any one of claims 1-8; The network management server is configured to perform the steps performed by the network management server in any one of claims 1-8.
10. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is run by the processor to perform the steps of the data transmission method in any one of claims 1-8.
Citation Information
Patent Citations
Data communication method and device based on virtual local area network, equipment and medium
CN114980074A
Network slice management method and storage medium
CN119136222A