Data transmission system and data transmission method

By introducing transmission data cache module, tag data cache module and tag data statistics module in the data transmission system, combined with FIFO memory, the problem of data loss in high-traffic network packet transmission is solved, and more stable packet processing and transmission is achieved , improves system response capability and stability.

CN119109880APending Publication Date: 2024-12-10MATRICTIME DIGITAL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411237343.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-05
Publication Date
2024-12-10

AI Technical Summary

Technical Problem

In the prior art, under high network traffic conditions, embedded systems are prone to loss of FPGA data due to limited processor interface performance, resulting in link errors, and unable to stabilize processing of large-traffic network data packets.

Method used

A data transmission system is designed, including a transmission data cache module, a tag data cache module, a tag data statistics module and a tag data processing module. It receives multiple data packets through the FIFO command management memory and performs the timer and count threshold conditions when the timing and counting threshold conditions are met. Packet group operation, generate target data packets, and improve the stability of data packet processing and transmission.

Benefits of technology

It effectively improves the system's response ability to send and receive network packets, reduces the processing pressure caused by frequent sending and receiving network packets, and improves system stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119109880A_ABST
    Figure CN119109880A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission system and a data transmission method.The data transmission system comprises a transmission data caching module, a transmission data processing module, a label data caching module, a label data counting module, a label data statistics module and a label data processing module; a label is added to a single network data packet through the modules, and data of a plurality of network data packets with labels are merged into an integral data structure through logic control and then are transmitted. When network data packets are sent, an integral data structure is split into a plurality of network data packets according to internal label information, and then link sending is carried out. According to the data transmission method, the response capability of the system to network data packet receiving and transmitting can be effectively improved, and the influence of huge processing pressure caused by frequent network data packet receiving and transmitting of the system is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of data transmission, and in particular to a data transmission system and a data transmission method. Background Art

[0002] As the traffic of communication systems increases, the data processing of network data packets becomes more and more complicated. In the prior art, embedded systems that process network packet data generally use FPGA to connect to the network interface to perform data packet transmission and preprocessing. When sending and receiving network data packets, the embedded system independently preprocesses the received single data packet before performing the transmission operation. For such a mode, there is no problem when the network traffic is small, but when the network traffic is large, due to the excessive transmission, it is limited by the processor's own interface performance, which occasionally causes the receiving FPGA data to be lost, resulting in link errors. Therefore, a new data transmission mechanism is needed that can not only realize the transmission of large-volume network data packets, but also have more stable performance. Summary of the invention

[0003] Purpose of the invention: This application provides a data transmission system and a data transmission method to solve the problems existing in the prior art.

[0004] Technical solution: The present invention provides a data transmission system, comprising a transmission data cache module, a transmission data processing module, a label data cache module, a label data counting module, a label data statistics module, and a label data processing module, wherein the transmission data cache module, the transmission data processing module, the label data cache module, and the label data processing module are sequentially connected in communication, the label data statistics module is also respectively connected in communication with the label data cache module and the label data processing module, and the label data processing module is also connected in communication with the transmission data processing module;

[0005] A transmission data cache module is used to cache network data packets to be transmitted;

[0006] The transmission data processing module is used to process the network data packet to be transmitted and add labels to form a labeled data packet to be transmitted; and to extract data and filter labels on the labeled data packet to be transmitted to form a network data packet to be transmitted;

[0007] A label data cache module, used for caching label data packets to be transmitted;

[0008] The label data statistics module is used to time and count the label data packets to be transmitted in the label data cache module, and generate a packet control signal to send to the label data processing module;

[0009] The label data processing module is used to extract the label data packet from the label data buffer module according to the packet assembly control signal and perform a packet assembly operation on it.

[0010] As an improvement of the present invention, the transmission data cache module and the tag data cache module both use FIFO as command management memory, and the transmission data cache module and the tag data cache module simultaneously receive multiple data packets and store them in the FIFO command list.

[0011] As an improvement of the present invention, the label data statistics module includes a label data timing unit and a label data counting unit, the label data timing unit is used to time the label data packets to be transmitted in the label data cache module; the label data counting unit is used to count the label data packets to be transmitted in the label data cache module; the label data timing unit and the label data counting unit are respectively preset with timing threshold conditions and counting threshold conditions.

[0012] As an improvement of the present invention, the label data processing module of the data transmission system is also connected to the embedded system for communication, and after performing a packetization operation on the label data packet, a target data packet containing multiple label data packets and corresponding label statistical data is obtained and sent to the embedded system.

[0013] As an improvement of the present invention, the label data processing module is further used to obtain label statistics of the target data packet after receiving the target data packet from the embedded system and send the statistics to the transmission data processing module.

[0014] As an improvement of the present invention, a data transmission method is also provided, which is applied to any of the data transmission systems described above. The participants of the method include a network link, the data transmission system, and an embedded system. The method includes a data receiving process and a data sending process:

[0015] The data receiving process includes the following steps:

[0016] (1) The data transmission system receives multiple network data packets from the network link and sequentially inputs them into the transmission data buffer module for buffering;

[0017] (2) The transmission data processing module performs a data capture operation on the transmission data cache module in real time, obtains multiple network data packets, and adds a label to each network data packet in sequence to form a label data packet, which is sent to the label data cache module; each label data packet includes a network data packet and its corresponding label;

[0018] (3) The tag data cache module caches the received tag data packets and triggers the tag data timing unit and the tag data counting unit in the tag data statistics module to time and count the received tag data packets. When at least one of the timing threshold conditions of the tag data timing module and the counting threshold conditions of the tag data counting module is met, a packet assembly control signal is generated and sent to the tag data processing module; wherein:

[0019] The timing threshold condition refers to the time when the label data packet from which the timing starts reaches the specified time in the label data timing module;

[0020] The counting threshold condition means that in the tag data timing module, the number of tag data packets from the start of counting reaches the specified number;

[0021] If both the timing threshold condition and the counting threshold condition are not met, return to step (1);

[0022] (4) The label data processing module extracts the label data packet from the label data cache module according to the packet grouping control signal, performs statistical operations on the extracted label data packet and performs packet grouping operations at the same time, obtains a target data packet including multiple label data packets and label statistical information, and sends the target data packet to the embedded system;

[0023] The data sending process includes the following steps:

[0024] (a) The embedded system sends the target data packet to the label data processing module, and the label data processing module parses the target data packet, obtains label statistics information and sends it to the transmission data processing module, and at the same time sends the target data packet to the label data cache module for caching;

[0025] (b) the transmission data processing module extracts the target data packet from the label data cache module according to the label statistical information, parses and obtains multiple label data packets, further parses and obtains multiple network data packets with labels and sends them to the transmission data cache module;

[0026] (c) The transmission data cache module sends multiple labeled network data packets to the network link.

[0027] As an improvement of the present invention, the format of the target data packet is: (nth label + nth network data packet) + ... (n+mth label + n+mth network data packet) + label statistical information; the label statistical information includes the tail identification byte of the target data packet and the total number of label data.

[0028] As an improvement of the present invention, the transmission data cache module and the tag data cache module both use FIFO as the command management memory, the transmission data cache module and the tag data cache module simultaneously receive multiple data packets and store them in the FIFO command list, and the data transmission system executes data transmission operations sequentially.

[0029] Beneficial effect: When receiving a network data packet, a label is added to a single network data packet through the module in the system of the present invention, and multiple network data packets with labels are merged into an overall data structure through logical control, and then transmitted. When sending a network data packet, the overall data structure is split into multiple network data packets according to the internal label information, and then the link is sent. This method can effectively improve the system's responsiveness to the sending and receiving of network data packets, reduce the impact of the system's huge processing pressure caused by frequent sending and receiving of network data packets, and make the system more stable. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0031] Figure 1 This is a schematic diagram of the structure of the data transmission system of this application;

[0032] Figure 2 This is a schematic diagram of the receiving process in the data transmission method of this application;

[0033] Figure 3 This is a schematic diagram of the sending process in the data transmission method of this application. DETAILED DESCRIPTION

[0034] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.

[0035] like Figure 1As shown, the present invention provides a data transmission system, comprising a transmission data cache module, a transmission data processing module, a tag data cache module, a tag data counting module, a tag data statistics module, and a tag data processing module, wherein the transmission data cache module, the transmission data processing module, the tag data cache module, and the tag data processing module are sequentially connected in communication, the tag data statistics module is also connected in communication with the tag data cache module and the tag data processing module, respectively, and the tag data processing module is also connected in communication with the transmission data processing module. Each module is described in more detail below.

[0036] In an embodiment of the present invention, the transmission data cache module is used to cache network data packets to be transmitted. The transmission data cache module uses FIFO as a command management memory, and can receive multiple data packets at the same time and store them in the FIFO command list so that operations can be performed on the data packets in sequence later, such as transmission operations. More specifically, the transmission data cache module includes a first receiving cache unit and a first sending cache unit, the first receiving cache unit is used to receive the network data packets to be transmitted from the network link and cache them when the system of the present invention executes the receiving process, so that the subsequent transmission data processing module can perform data capture operations therein; the first sending cache unit is used to receive the network data packets to be transmitted and cache them when the system of the present invention executes the sending process, waiting for commands to send the network data packets to be transmitted to the network link.

[0037] In an embodiment of the present invention, the transmission data processing module is used to process and add labels to the network data packets to be transmitted to form labeled data packets to be transmitted; and to extract data and filter labels for the labeled data packets to be transmitted to form network data packets to be transmitted. More specifically, the transmission data processing module is used to perform data capture operations on the transmission data cache module in real time when the system of the present invention executes the receiving process to obtain the required data packets therefrom, perform data length statistics and verification on the data packets, and add labels to the data packets according to the data length statistics results and verification results. The verification is, for example, an accumulation and verification, or, for example, a CRC verification. The transmission data processing module is also used to extract the required data packets according to the label information when the system of the present invention executes the sending process, and obtain the network data packets to be transmitted after parsing.

[0038] In an embodiment of the present invention, the label data cache module is used to cache the label data packets to be transmitted. The label data cache module also uses FIFO as a command management memory, and can receive multiple data packets at the same time and store them in the FIFO command list, so that operations can be performed on the data packets in sequence later, such as transmission operations. More specifically, the label data cache module includes a second receiving cache unit and a second sending cache unit, and the second receiving cache unit is used to cache the label data packets formed by the transmission data processing module when the system of the present invention executes the receiving process, and at the same time accepts the label data statistics module to monitor, time and count it; the label data cache module caches the data packets to be transmitted when the system of the present invention executes the sending process. The data packets to be transmitted are target data packets sent by the embedded system.

[0039] In an embodiment of the present invention, the label data statistics module is used to count and count the label data packets to be transmitted in the label data cache module, and generate a packet group control signal to send to the label processing module. The label data statistics module performs functional operations only when the system of the present invention executes the receiving process. More specifically, the label data statistics module includes a label data timing module and a label data counting module, and the label data timing unit and the label data counting unit are respectively preset with a timing threshold condition and a counting threshold condition. The label data timing module is used to time the label data packets to be transmitted in the label data cache module, and when it is detected that there is no new label data packet input in the label data cache module within a specified time, a first packet group control signal is sent to the label processing module, and the first packet group control signal is a timeout packet group control signal, which is intended to notify the label data processing module to immediately start extracting the existing number of label data packets from the label data cache module for processing; the label data counting module is used to count the label data packets to be transmitted in the label data cache module, and when the specified number is reached, a second packet group control signal is sent to the label processing module, and the second packet group control signal is to notify the label data processing module to extract a specified number of label data packets from the label data cache module for processing.

[0040] In an embodiment of the present invention, the label data processing module is used to extract a label data packet from the label data cache module and perform a packet grouping operation on it according to the first packet grouping control signal or the second packet grouping control signal. More specifically, the label data processing module of the data transmission system is also communicatively connected to the embedded system, and the label data processing module is used to perform statistical operations on multiple label data packets and perform packet grouping operations at the same time when the system of the present invention executes the receiving process, obtain a target data packet containing multiple label data packets and label statistical information, and send it to the embedded system. The label data processing module is also used to parse the target data packet sent from the embedded system when the system of the present invention executes the sending process, obtain the label statistical information and send it to the transmission data processing module, and at the same time send the target data packet to the label data cache module for caching.

[0041] In an embodiment of the present invention, the data transmission system of the present invention can be implemented on a field programmable gate array (FPGA) and similar functional chips.

[0042] The present invention also provides a data transmission method, which is applied to any of the data transmission systems described above. The participants of the method include a network link, the data transmission system, and an embedded system. The method includes a data receiving process and a data sending process:

[0043] like Figure 2 As shown, the data receiving process includes the following steps:

[0044] (1) The data transmission system receives multiple network data packets from the network link and sequentially inputs them into the transmission data buffer module for buffering;

[0045] (2) The transmission data processing module performs a data capture operation on the transmission data cache module in real time, obtains multiple network data packets, and adds a label to each network data packet in sequence to form a label data packet, which is sent to the label data cache module; each label data packet includes a network data packet and its corresponding label;

[0046] (3) The tag data cache module caches the received tag data packets and triggers the tag data timing unit and the tag data counting unit in the tag data statistics module to time and count the received tag data packets. When at least one of the timing threshold conditions of the tag data timing module and the counting threshold conditions of the tag data counting module is met, a packet assembly control signal is generated and sent to the tag data processing module; wherein:

[0047] Timing threshold condition: In the tag data timing module, the tag data packet reaches the specified time from the start of timing;

[0048] Counting threshold condition: In the tag data timing module, the number of tag data packets from the start of counting reaches the specified number;

[0049] If both the timing threshold condition and the counting threshold condition are not met, return to step (1), that is, continue to receive new network data packets;

[0050] (4) The label data processing module extracts the label data packet from the label data cache module according to the packet grouping control signal, performs statistical operations on the extracted label data packet and performs packet grouping operations at the same time, obtains a target data packet including multiple label data packets and label statistical information, and sends the target data packet to the embedded system;

[0051] The format of the target data packet is: (nth label + nth network data packet) + ... (nth + mth label + nth + mth network data packet) + label statistics; the label statistics include the tail identification byte of the target data packet and the total number of label data. For example, the label statistics may be: tail identification byte: fixed to 4 bytes 0x EB91EB91; total number of labels 32 bits 4 bytes unsigned int type. For example, the nth label may be: head identification byte fixed to 4 bytes 0x EB90EB90 + data n length 16bit2 bytes + data n check value 16bit2 bytes.

[0052] When a network data packet is received, a label is added to a single network data packet through the module in the system of the present invention, and multiple network data packets with labels are merged into an overall data structure through logical control and then transmitted.

[0053] Specifically, the data receiving process takes the first network data packet to the nth network data packet as an example:

[0054] S1-The data transmission system receives the first network data packet from the network link and inputs it into the transmission data buffer module for buffering;

[0055] S2-The transmission data processing module performs data capture operations on the transmission data cache module in real time, obtains the first network data packet therefrom, adds the first label to the first network data packet, forms the first label data packet, and sends it to the label data cache module; the first label data packet includes the first label and the first network data packet; it can be seen from the system of the present invention that the first label includes the data length statistics and verification results of the first network data packet, and may also include header identification bytes, etc.

[0056] S3-The tag data cache module caches the received first tag data packet, and triggers the tag data timing unit and the tag data timing unit in the tag data statistics module to time and count it. When at least one of the timing threshold condition of the tag data timing module and the counting threshold condition of the tag data timing module is met, a packet assembly control signal is generated and sent to the tag data processing module; wherein:

[0057] Timing threshold condition: In the tag data timing module, the tag data packet reaches the specified time from the start of timing;

[0058] Counting threshold condition: In the tag data timing module, the number of tag data packets from the start of counting reaches the specified number;

[0059] If both the timing threshold condition and the counting threshold condition are not met, return to step S1;

[0060] In this example, the label data packet for starting timing and starting counting is the first network data packet.

[0061] It should be noted that the specified time and the specified number described in this article should meet the actual needs of technicians. For example, if the specified time is 10ms and the specified number is 10, then the threshold conditions of the tag data timing unit and the tag data timing unit are not met at this time, and it is necessary to return to step S1 to continue receiving new data packets, for example, until the nth network data packet is received, the timing threshold condition or the counting threshold condition is met, and the next step is entered.

[0062] S4-the label data processing module extracts multiple label data packets (1st to nth label data packets) from the label data cache module according to the packet grouping control signal, performs statistical operations on the extracted multiple label data packets and performs packet grouping operations at the same time, obtains a target data packet containing multiple label data packets and label statistical information, and sends it to the embedded system;

[0063] The format of the target data packet is: (1st label + 1st network data packet) + ... (nth label + nth network data packet) + label statistical information; the label statistical information includes the tail identification byte of the target data packet and the total number of label data.

[0064] like Figure 3 As shown, the data sending process includes the following steps:

[0065] (a) The embedded system sends the target data packet to the label data processing module, and the label processing module parses the target data packet, obtains label statistics information and sends it to the transmission data processing module, and at the same time sends the target data packet to the label data cache module for caching;

[0066] (b) the transmission data processing module extracts the target data packet from the label data cache module according to the label statistical information, parses and obtains multiple label data packets, further parses and obtains multiple network data packets with labels and sends them to the transmission data cache module;

[0067] (c) The transmission data cache module sends multiple labeled network data packets to the network link.

[0068] It should be noted that the transmission data cache module and the tag data cache module in the system of the present invention both use FIFO as the command management memory. Therefore, the transmission data cache module and the tag data cache module can simultaneously receive multiple data packets and store them in the FIFO command list, so that the data transmission system of the present invention can execute data transmission operations in sequence regardless of the receiving process or the sending process.

[0069] When a network data packet is sent, the overall data structure is split into multiple network data packets according to the internal label information, and then the link is sent. This method can effectively improve the system's responsiveness to the sending and receiving of network data packets, reduce the impact of the system's huge processing pressure caused by frequent sending and receiving of network data packets, and make the system more stable.

Claims

1. A data transmission system, characterized in that: It includes a transmission data cache module, a transmission data processing module, a label data cache module, a label data counting module, a label data statistics module, and a label data processing module, wherein the transmission data cache module, the transmission data processing module, the label data cache module, and the label data processing module are sequentially connected in communication, the label data statistics module is also connected in communication with the label data cache module and the label data processing module respectively, and the label data processing module is also connected in communication with the transmission data processing module; A transmission data cache module is used to cache network data packets to be transmitted; The transmission data processing module is used to process the network data packet to be transmitted and add labels to form a labeled data packet to be transmitted; and to extract data and filter labels on the labeled data packet to be transmitted to form a network data packet to be transmitted; A label data cache module, used for caching label data packets to be transmitted; The label data statistics module is used to time and count the label data packets to be transmitted in the label data cache module, and generate a packet control signal to send to the label data processing module; The label data processing module is used to extract the label data packet from the label data buffer module according to the packet assembly control signal and perform a packet assembly operation on it.

2. The data transmission system according to claim 1, characterized in that: The transmission data cache module and the tag data cache module both use FIFO as a command management memory. The transmission data cache module and the tag data cache module simultaneously receive multiple data packets and store them in a FIFO command list.

3. The data transmission system according to claim 1, characterized in that: The label data statistics module includes a label data timing unit and a label data counting unit. The label data timing unit is used to time the label data packets to be transmitted in the label data cache module; the label data counting unit is used to count the label data packets to be transmitted in the label data cache module; the label data timing unit and the label data counting unit are respectively preset with timing threshold conditions and counting threshold conditions.

4. The data transmission system according to claim 1, characterized in that: The label data processing module of the data transmission system is also connected to the embedded system for communication. After performing a packet grouping operation on the label data packet, a target data packet including a plurality of label data packets and corresponding label statistical data is obtained and sent to the embedded system.

5. The data transmission system according to claim 4, characterized in that: The label data processing module is also used to obtain label statistics of the target data packet after receiving the target data packet from the embedded system and send the statistics to the transmission data processing module.

6. A data transmission method, applied to any data transmission system according to claims 1 to 5, characterized in that: The participants of the method include a network link, the data transmission system, and an embedded system. The method includes a data receiving process and a data sending process: The data receiving process includes the following steps: (1) The data transmission system receives multiple network data packets from the network link and sequentially inputs them into the transmission data buffer module for buffering; (2) The transmission data processing module performs a data capture operation on the transmission data cache module in real time, obtains multiple network data packets, and adds a label to each network data packet in sequence to form a label data packet, which is sent to the label data cache module; each label data packet includes a network data packet and its corresponding label; (3) The tag data cache module caches the received tag data packets and triggers the tag data timing unit and the tag data counting unit in the tag data statistics module to time and count the received tag data packets. When at least one of the timing threshold conditions of the tag data timing module and the counting threshold conditions of the tag data counting module is met, a packet assembly control signal is generated and sent to the tag data processing module; wherein: The timing threshold condition refers to the time when the label data packet from which the timing starts reaches the specified time in the label data timing module; The counting threshold condition means that in the tag data timing module, the number of tag data packets from the start of counting reaches the specified number; If both the timing threshold condition and the counting threshold condition are not met, return to step (1); (4) The label data processing module extracts the label data packet from the label data cache module according to the packet grouping control signal, performs statistical operations on the extracted label data packet and performs packet grouping operations at the same time, obtains a target data packet including multiple label data packets and label statistical information, and sends the target data packet to the embedded system; The data sending process includes the following steps: (a) The embedded system sends the target data packet to the label data processing module, and the label data processing module parses the target data packet, obtains label statistics information and sends it to the transmission data processing module, and at the same time sends the target data packet to the label data cache module for caching; (b) the transmission data processing module extracts the target data packet from the label data cache module according to the label statistical information, parses and obtains multiple label data packets, further parses and obtains multiple network data packets with labels and sends them to the transmission data cache module; (c) The transmission data cache module sends multiple labeled network data packets to the network link.

7. The data transmission method according to claim 6, characterized in that: The format of the target data packet is: (nth label + nth network data packet) + ... (n+mth label + n+mth network data packet) + label statistical information; the label statistical information includes the tail identification byte of the target data packet and the total number of label data.

8. The data transmission method according to claim 6, characterized in that: The transmission data cache module and the tag data cache module both use FIFO as command management memory. The transmission data cache module and the tag data cache module simultaneously receive multiple data packets and store them in the FIFO command list. The data transmission system sequentially executes data transmission operations.