Data transmission method and device, network equipment, terminal, storage medium and computer program product
By reserving transmission resources and controlling data packet transmission time based on industrial business information through network devices and terminals, the latency and reliability issues in industrial communication networks are resolved, deterministic data transmission is achieved, and the stable operation of industrial production lines is ensured.
Patent Information
- Application Number
- CN202410578583.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-10
- Publication Date
- 2025-11-11
AI Technical Summary
Existing technologies cannot meet the high requirements of industrial communication networks for latency and reliability, which makes industrial production lines prone to downtime.
Network devices reserve transmission resources based on information such as the size, cycle, and timing of data packets in industrial services. Terminals control the data packet transmission time based on the received information, thereby achieving deterministic data packet transmission, reducing network latency jitter, and improving reliability.
By precisely reserving transmission resources and controlling the data packet sending time, deterministic data transmission was achieved, reducing network latency jitter, improving the reliability of data transmission, and ensuring the stable operation of industrial production lines.
Smart Images

Figure CN120935121A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a data transmission method, apparatus, network equipment, terminal, storage medium, and computer program product. Background Technology
[0002] To ensure that industrial production lines do not shut down, communication networks used in industry have high requirements for latency and reliability. Existing data transmission solutions cannot meet these requirements. Summary of the Invention
[0003] To address the related technical issues, embodiments of this application provide a data transmission method, apparatus, network device, terminal, storage medium, and computer program product.
[0004] The technical solution of this application embodiment is implemented as follows:
[0005] This application provides a data transmission method applied to a network device, the method comprising:
[0006] The second information is determined based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time; and the second information represents information related to the transmission resources reserved for the first service. In the above scheme, the method further includes:
[0007] Determine the first information of the first service; and / or
[0008] Based on the first value and / or the second value, it is decided whether to update or not update the first information and / or the second information of the first service; wherein,
[0009] The first value represents the matching degree between the second information and the third information, and the third information represents the relevant information of the transmission resources used by the first service; the second value represents the number of times the data packets of the first service arrive at the network device later than the first time, or the number of times the data packets of the first service are sent later than the packet sending time; the first time represents the expected arrival time of the first service.
[0010] In the above scheme, the step of deciding whether to update or not update the first information and / or the second information of the first service based on the first value and / or the second value includes one or more of the following:
[0011] If the first value is greater than or equal to the first threshold, the first information and / or the second information of the first service will not be updated;
[0012] If the first value is less than the first threshold, update the first information and / or the second information of the first service;
[0013] If the second value is greater than or equal to the second threshold, update the first information and / or the second information of the first service;
[0014] If the second value is less than the second threshold, the first information and / or the second information of the first service will not be updated.
[0015] The method in the above scheme further includes:
[0016] Send the first information and / or the second information of the first service to the terminal.
[0017] The method in the above scheme further includes:
[0018] Based on the first information from the first time and / or the first service, control the second time; and / or
[0019] Based on the first time and / or the first information and / or the second information of the first service, control the third time; wherein...
[0020] The first time represents the expected arrival time of the first service, the second time represents the time when the network device transmits the data packet of the first service to the service layer or service platform, and the third time represents the time when the network device sends the data packet of the first service to the terminal.
[0021] In the above scheme, controlling the second time based on the first time and / or the first information of the first service includes one or more of the following:
[0022] The data packets of the first service are cached in the first queue. The first queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0023] If the data packet of the first service arrives at the network device before the first time, the data packet of the first service is cached in the first queue;
[0024] Upon arrival, the data packet of the first service is transmitted to the business layer or business platform.
[0025] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service shall be transmitted to the service layer or service platform first.
[0026] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service is cached in the first queue, and the priority of the first queue is adjusted to the highest priority.
[0027] Data packets in the first queue are prioritized for transmission to the business layer or business platform.
[0028] In the above scheme, controlling the third time based on the first time and / or the first information and / or the second information of the first service includes one or more of the following:
[0029] The data packets of the first service are cached in the second queue. The second queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0030] Adjust the priority of the second queue based on the immediate situation;
[0031] Based on the first moment, control the third moment;
[0032] Based on the second information, control the third time;
[0033] Based on the first and second information, control the third time.
[0034] The method in the above scheme further includes:
[0035] Based on the first relationship, a first data volume is determined. The first relationship includes at least the correspondence between the business and the first information. The first data volume represents the concurrent data volume corresponding to the packet sending time of the first business or the data volume within the same time period.
[0036] If the first data volume is greater than or equal to the third threshold, the timing or time at which some or all service data packets within the time period corresponding to the first data volume are sent from the network device is adjusted.
[0037] In the above scheme, the information related to the transmission resources includes one or more of the following:
[0038] Resource size;
[0039] Resource location;
[0040] Resource quantity;
[0041] Resource cycles.
[0042] This application also provides a data transmission method applied to a terminal, the method comprising:
[0043] The system receives first information and / or second information of a first service sent by a network device. The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service.
[0044] Based on the first time and / or the first information and / or the second information of the first service, the timing of sending data packets of the first service to the network device is controlled, wherein the first time represents the expected arrival time of the first service.
[0045] In the above scheme, controlling the timing of sending data packets of the first service to the network device based on the first time and / or the first information and / or the second information of the first service includes one or more of the following:
[0046] The data packets of the first service are cached in the third queue. The third queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0047] If the data packet of the first service arrives at the terminal before the first time, the data packet of the first service is cached in the third queue;
[0048] Upon arrival at the first time, the data packet for the first service is sent to the network device;
[0049] If the data packet for the first service arrives at the terminal later than the first time, the data packet for the first service shall be sent to the network device first.
[0050] If the data packet of the first service arrives at the terminal later than the first time, the data packet of the first service is cached in the third queue, and the priority of the third queue is adjusted to the highest priority.
[0051] Data packets in the third queue are sent to the network device first.
[0052] This application also provides a data transmission device, including:
[0053] The first determining unit is configured to determine second information based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
[0054] This application also provides a data transmission device, including:
[0055] The first receiving unit is configured to receive first information and / or second information of a first service sent by a network device. The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service.
[0056] The first sending unit is configured to control the timing of sending data packets of the first service to the network device based on a first time and / or first information and / or second information of the first service, wherein the first time represents the expected arrival time of the first service.
[0057] This application also provides a network device, including: a first processor and a first communication interface; wherein,
[0058] The first processor is configured to determine second information based on first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
[0059] This application also provides a terminal, including: a second processor and a second communication interface; wherein,
[0060] The second communication interface is configured to receive first information and / or second information of a first service sent by a network device, and to control the timing of sending data packets of the first service to the network device based on a first time and / or the first information and / or the second information of the first service; wherein,
[0061] The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time; the second information represents information related to the transmission resources reserved for the first service; and the first time represents the expected arrival time of the first service.
[0062] This application also provides a network device, including a first processor and a first memory for storing computer programs that can run on the first processor.
[0063] Wherein, the first processor is used to execute the steps of any method on the network device side when running the computer program.
[0064] This application also provides a terminal, characterized in that it includes a second processor and a second memory for storing computer programs capable of running on the second processor.
[0065] The second processor is used to execute the steps of any method on the terminal side when running the computer program.
[0066] This application also provides a storage medium storing a computer program thereon, characterized in that, when the computer program is executed by a processor, it implements the steps of any method on the network device side, or the steps of any method on the terminal side.
[0067] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above methods.
[0068] In the data transmission method, apparatus, network device, terminal, storage medium, and computer program product provided in the embodiments of this application, the network device determines second information based on first information of a first service. The first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service. The terminal receives the first information and / or the second information of the first service sent by the network device, and controls the time for sending the data packet of the first service to the network device based on a first time and / or the first information and / or the second information of the first service. The first time represents the expected arrival time of the first service. It can be seen that in the embodiments of this application, since the first information reflects the characteristics of the data packet, the network device reserves transmission resources for the first service based on the first information of the first service. This allows for precise reservation of transmission resources near the packet transmission time of the first service according to the characteristics of the data packet, enabling timely transmission of the data packet of the first service using the reserved transmission resources. This achieves deterministic data transmission, reduces network latency jitter, and improves the reliability of data transmission. Attached Figure Description
[0069] Figure 1 This is a schematic diagram of a data transmission method according to an embodiment of this application;
[0070] Figure 2 This is a schematic diagram of a data transmission method according to an embodiment of this application;
[0071] Figure 3 This is a schematic diagram illustrating a data transmission system architecture according to an embodiment of this application.
[0072] Figure 4 This is a schematic diagram of a data transmission device according to an embodiment of this application;
[0073] Figure 5 This is a schematic diagram of a data transmission device according to an embodiment of this application;
[0074] Figure 6 This is a schematic diagram of the network device structure according to an embodiment of this application;
[0075] Figure 7 This is a schematic diagram of the terminal structure according to an embodiment of this application. Detailed Implementation
[0076] To meet the extreme requirements of industrial networks for network determinism, such as production line control / equipment control, network latency requirements are in the tens of milliseconds (ms) or even microseconds (µs) range, with latency jitter in the range of plus or minus a few milliseconds. Data packets need to be transmitted to the receiving end within a certain time range to ensure that industrial production lines do not crash.
[0077] For example, in the Profinet (Process Field Net) industrial protocol, real-time control and status updates of industrial equipment are achieved through periodic bidirectional data packet transmission. The sending end transmits packets at extremely short intervals, while the receiving end expects to receive packets at fixed intervals. A classic configuration is a cycle time (CT) of 4ms. If the receiving end receives a data packet within the survival time (ST), ST = 3 × CT = 12ms, the network is considered available. Upon receiving a data packet, the receiver parses the sequence number; if it is less than the previous packet's sequence number, it is considered old data and discarded. If no data packet is received within 12ms, a problem with the current communication link is determined, and an alarm is issued. Therefore, network stability is extremely important for determining the communication link status.
[0078] Currently, to reduce latency, pre-scheduling is generally used. By setting a pre-scheduling period, uplink data transmission latency is reduced. However, the current pre-scheduling period is based on base station configuration or default configuration, which may not match the service. Therefore, pre-scheduled resources may be wasted or inaccurate. Currently, 5G mobile communication technology mostly adopts best-effort transmission, which does not meet the current network requirements of industrial services, which need to arrive on time. Furthermore, data transmission under industrial protocols is sensitive to packet reception cycles. If multiple terminals are concurrently accessing the network, peak-shifting processing needs to be implemented without affecting the service's original mechanism.
[0079] Currently, 5G enhancements focus on improving reliability and reducing latency, but they lack the ability to perceive service needs and perform more refined prioritization. While this can solve data transmission problems in industrial applications, some issues remain unresolved. For example, current 5G reliability improvements are calculated statistically. For instance, a 99.99% reliability target might be achieved with 300,000 data packets lost (less than 30 packets). However, in industrial applications, losing just three packets consecutively can cause production line shutdowns, making reliability alone insufficient for industrial needs. Regarding latency reduction, 5G primarily focuses on calculating average latency, aiming for even lower latency. However, industrial applications require stable latency (arriving at fixed intervals, not a 4ms interval followed by a 40ms interval; large latency discrepancies can also cause production line shutdowns). Current 5G capabilities do not address these two areas, failing to consider how to integrate with services to better match service requirements while ensuring network stability.
[0080] Based on this, in various embodiments of this application, the network device determines the second information based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time; the second information represents information related to the transmission resources reserved for the first service; the terminal receives the first information and / or the second information of the first service sent by the network device, and controls the time for sending the data packet of the first service to the network device according to the first time and / or the first information and / or the second information of the first service, wherein the first time represents the expected arrival time of the first service. It can be seen that, in the embodiments of this application, since the first information reflects the characteristics of the data packet, the network device reserves transmission resources for the first service based on the first information of the first service. This allows for precise reservation of transmission resources near the packet transmission time of the first service according to the characteristics of the data packet, thereby enabling the timely transmission of the data packet of the first service using the reserved transmission resources, achieving deterministic data transmission, reducing network latency jitter, and thus improving the reliability of data transmission.
[0081] The present application will now be described in further detail with reference to the accompanying drawings and embodiments.
[0082] This application provides a data transmission method applied to a network device, which includes a base station, also known as an industry base station or industrial base station, and which deploys a baseband processing unit (BBU). Figure 1 As shown, the method includes:
[0083] Step 101: Determine the second information based on the first information of the first business.
[0084] The first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time; the second information represents information related to the transmission resources reserved for the first service.
[0085] Here, we obtain the first information of the first business, and determine the second information based on the first information of the first business.
[0086] The first information of the first service can be determined by the network device, provided by other devices, or pre-configured. In practical applications, the network device can determine the service flow identifier (ID) of the first service based on information such as the source Internet Protocol (IP) address, destination IP address, and port number of the data flow of the first service. During the resource reservation process of the network device, the second information is determined based on the first information of the first service. The network device can maintain a first mapping table locally, which is used to record services and their corresponding service flow identifiers and first information. If the service flow identifier of the first service does not exist in the first mapping table, the identifier of the first service, the service flow identifier, and the first information are associated and stored in the first mapping table.
[0087] The first service can be understood as industrial or industrial-related business, including programmable logic controllers (PLCs). Data packets for the first service can be sent periodically or aperiodically. The first information can be understood as the characteristic information of the data packet; the data packet size can be called the packet size, the packet transmission period can be called the packet period, and the packet transmission time includes the transmission time of uplink data packets and / or the transmission time of downlink data packets. The packet transmission time can be understood as the moment the data packet is sent from the service side.
[0088] Transmission resources, also known as time-frequency resources, include time-domain resources and / or frequency-domain resources; the amount of data that can be transmitted by transmission resources is greater than or equal to the data packet size, and the time-domain resources are matched or correspond to the packet transmission period and / or packet transmission time.
[0089] It should be noted that the first information of the first service may also include one or more of the following: source IP address, destination IP address, source port number, destination port number, and industry protocol type.
[0090] In order to accurately reserve transmission resources near the packet transmission time of the first service, in one embodiment, the relevant information of the transmission resources includes one or more of the following:
[0091] Resource size;
[0092] Resource location;
[0093] Resource quantity;
[0094] Resource cycles.
[0095] Here, the size and / or quantity and / or location of the transmission resources reserved for the first service can be determined based on the packet size; the period and / or location of the resources reserved for the first service can be determined based on the packet period and / or the packet sending time. The period of the resources can be understood as the period of the transmission resources.
[0096] Resource size can be the size of a frequency domain resource, such as the size of a resource block (RB). Resource location can include the location of time domain resources and / or the location of frequency domain resources. Resource quantity can include the number of time domain resources and / or the number of frequency domain resources.
[0097] Considering that the data packet size, packet transmission period, and packet transmission time of the first service may change dynamically, in order to accurately reserve transmission resources for the first service, it is necessary to determine or update the first information of the first service before reserving transmission resources for it, thereby determining or updating the transmission resources reserved for the first service. Based on this, in one embodiment, the method further includes:
[0098] Determine the first information of the first service; and / or
[0099] Based on the first value and / or the second value, it is decided whether to update or not update the first information and / or the second information of the first service; wherein,
[0100] The first value represents the matching degree between the second information and the third information, and the third information represents the relevant information of the transmission resources used by the first service; the second value represents the number of times the data packets of the first service arrive at the network device later than the first time, or the number of times the data packets of the first service are sent later than the packet sending time; the first time represents the expected arrival time of the first service.
[0101] Here, before determining the second piece of information, we can first determine the first piece of information for the first service. For example, we can analyze the business data stream of the first service to obtain its first piece of information. For instance, we can parse the data packets of the first service to obtain the data packet size and / or the packet transmission time; and analyze the packet transmission pattern to obtain the packet transmission cycle and / or the packet transmission time.
[0102] After determining the first information of the first service, the network device can decide whether to update or not update the first information and / or the second information of the first service based on the transmission resources actually scheduled for the first service. Specifically, the network device determines the transmission resources actually scheduled for the first service, or determines the relevant information of the transmission resources used by the first service, to obtain the third information; it determines the matching degree between the second information and the third information to obtain the first value; during the transmission of the data stream of the first service, the second value is determined; if the first value and / or the second value are determined, the network device decides whether to update or not update the first information of the first service based on the first value and / or the second value; if the first information of the first service is updated, the second information is updated or re-determined based on the updated first information of the first service; if the first information of the first service is not updated, the second information is not updated. Updating the first information can be understood as re-analyzing the service data stream of the first service to obtain new first information for the first service.
[0103] It should be noted that network devices can schedule appropriate transmission resources for the first service and obtain third-party information during or before the transmission of the first service's data stream. The number of times the first service's data packets arrive at the network device later than the first time can be determined by the network device. The number of times the first service's data packets arrive later than the time of packet transmission can be determined by the network device, or it can be determined by the sender of the first service's data packets and provided to the network device. The sender of the first service's data packets can include one or more of the following: the service platform, the network device, and the terminal. The expected arrival time can be understood as the time when the data packet arrives at the communication system, or the time of packet transmission; the data packet does not distinguish between uplink and downlink. The expected arrival time of the first service can include one or more of the following: the expected time of the first service arriving at the network device, the expected time of the first service arriving at the terminal, and the expected time of the first service arriving at the service platform or service layer.
[0104] To improve the accuracy of transmission resources reserved for the first service, thereby saving transmission resources and improving the reliability of data transmission, in one embodiment, the step of deciding whether to update or not update the first information and / or the second information of the first service based on a first value and / or a second value includes one or more of the following:
[0105] If the first value is greater than or equal to the first threshold, the first information and / or the second information of the first service will not be updated;
[0106] If the first value is less than the first threshold, update the first information and / or the second information of the first service;
[0107] If the second value is greater than or equal to the second threshold, update the first information and / or the second information of the first service;
[0108] If the second value is less than the second threshold, the first information and / or the second information of the first service will not be updated.
[0109] Here, a larger first value indicates a higher degree of matching between the second and third information, and a more accurate allocation of transmission resources for the first service. A smaller first value indicates a lower degree of matching between the second and third information, and a lower accuracy of the allocated transmission resources for the first service. A larger second value indicates a larger transmission delay or jitter in the data packets of the first service, and lower reliability; a smaller second value indicates a smaller transmission delay or jitter in the data packets of the first service, and higher reliability. The first threshold and the second threshold are different and can be set according to actual conditions.
[0110] To achieve deterministic data transmission, in one embodiment, the method further includes:
[0111] Send the first information and / or the second information of the first service to the terminal.
[0112] Here, the network device can send the first information of the first service to the terminal upon obtaining the first information of the first service; it can also send the first information and / or the second information of the first service to the terminal upon determining the second information. The first information is used to adjust the packet transmission time or timing of the data packets of the first service, or to control the timing of sending the data packets of the first service to the network device, in order to achieve traffic shaping. The second information is used to transmit the data packets of the first service. The terminal can be understood as an industrial terminal or a terminal in the industrial field.
[0113] To ensure the certainty of data arrival and reduce the probability of data congestion, network devices can adjust traffic based on the characteristic information of the data packets of the first service to achieve off-peak transmission of the data packets of the first service. Based on this, in one embodiment, the method further includes:
[0114] Based on the first information from the first time and / or the first service, control the second time; and / or
[0115] Based on the first time and / or the first information and / or the second information of the first service, control the third time; wherein...
[0116] The first time represents the expected arrival time of the first service, the second time represents the time when the network device transmits the data packet of the first service to the service layer, and the third time represents the time when the network device sends the data packet of the first service to the terminal.
[0117] Here, for the uplink data stream of the first service, the network device can control the second time based on the first time and / or the first information of the first service; for the downlink data stream of the first service, the network device can control the third time based on the first time and / or the first and / or the second information of the first service. Control can be described as adjustment, change, or alteration.
[0118] Since the expected arrival time of the first service may include one or more of the following: the expected arrival time of the first service at the network device, the expected arrival time of the first service at the terminal, and the expected arrival time of the first service at the service platform or service layer, the network device can control the second time and / or the third time based on the first time.
[0119] Network devices can also control the second and / or third times based on the first information of the first service. For example, the second and / or third times can be controlled based on the packet sending cycle and / or packet sending time included in the first information of the first service, or based on the concurrent data volume and the data packet size included in the first information of the first service.
[0120] Network devices can also control the second and / or third time based on the first time and the first information of the first service; they can also control the third time based on the concurrent data volume and the second information; or they can control the third time based on the first time, the first information of the first service, and the second information of the first service. Concurrent data volume can be understood as the amount of data processed concurrently.
[0121] Here, for the uplink data stream of the first service, the network device controls the second time based on the first time and / or the first information of the first service; for the downlink data stream of the first service, the network device controls the third time based on the first time and / or the first information and / or the second information of the first service.
[0122] To ensure the certainty of data arrival and reduce the probability of data congestion, network devices can perform traffic shaping on uplink traffic to stagger the transmission of data packets for the first service. Based on this, in one embodiment, controlling the second time according to the first time and / or the first information of the first service includes one or more of the following:
[0123] The data packets of the first service are cached in the first queue. The first queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0124] If the data packet of the first service arrives at the network device before the first time, the data packet of the first service is cached in the first queue;
[0125] Upon arrival, the data packet of the first service is transmitted to the business layer or business platform.
[0126] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service shall be transmitted to the service layer or service platform first.
[0127] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service is cached in the first queue, and the priority of the first queue is adjusted to the highest priority.
[0128] Data packets in the first queue are prioritized for transmission to the business layer or business platform.
[0129] Here, during the process of receiving data packets for the first service sent by the terminal, the network device can, according to the correspondence between the packet transmission period and the queue (also called the buffer queue or priority transmission queue), buffer the data packets for the first service into the first queue based on the packet transmission period of the first service data packets. It can also transmit the data packets for the first service to the service layer or service platform when the first time arrives. Different packet transmission periods correspond to different queue priorities. The first queue can be understood as the first buffer queue or the first priority transmission queue.
[0130] When the data packet for the first service arrives at the network device before the first time, indicating that the data flow or service flow of the first service arrived earlier than expected, or indicating that the first service arrived before the packet transmission time, the network device buffers the data packet for the first service into a first queue according to the packet transmission period of the data packet for the first service. Alternatively, it can also transmit the data packet for the first service to the service layer or service platform upon arrival at the first time. In other words, the data packet for the first service is buffered in a buffer queue with the same packet period as the data packet for the first service, and then promptly submitted to the service layer or service platform upon arrival at the first time to ensure the determinism of data arrival. The arrival of the data packet for the first service at the network device before the first time can be understood as the data packet for the first service arriving at the network device before the packet transmission time of the first service, or the data packet for the first service arriving at the network device earlier than the packet transmission time of the first service.
[0131] If the data packet for the first service arrives at the network device later than the first time, indicating that the data flow or service flow of the first service arrived later than expected, the network device will prioritize transmitting the data packet for the first service to the service layer or service platform to ensure the determinism of data arrival. The fact that the data packet for the first service arrived at the network device later than the time the first service was sent can be understood as the data packet for the first service arriving at the network device later than the time the first service packet was sent.
[0132] If the data packet for the first service arrives at the network device later than the first time, the network device will cache the data packet for the first service in the first queue, adjust the priority of the first queue to the highest priority, and can also prioritize the transmission of data packets in the first queue to the service layer or service platform, thereby ensuring that the data packet for the first service is delivered to the service layer or service platform as quickly as possible and ensuring the determinism of data arrival.
[0133] It should be noted that for services that arrive at the network device later than expected, the network device can record the service flow identifier of the service that arrives at the network device later than expected, in order to update or redetermine the first information of the corresponding service.
[0134] To ensure the certainty of data arrival and reduce the probability of data congestion, network devices can perform traffic shaping on downlink traffic to stagger the transmission of data packets for the first service. Based on this, in one embodiment, controlling the third time according to the first time and / or the first information and / or the second information of the first service includes one or more of the following:
[0135] The data packets of the first service are cached in the second queue. The second queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0136] Adjust the priority of the second queue based on the immediate situation;
[0137] Based on the first moment, control the third moment;
[0138] Based on the second information, control the third time;
[0139] Based on the first and second information, control the third time.
[0140] Here, during the process of sending the data packets for the first service to the terminal, the network device can buffer these data packets into a second queue, which can be understood as a buffer queue or a priority sending queue. For example, under the condition that a first condition is met, the network device buffers the data packets for the first service into the second queue and sends them to the terminal when the packet transmission time for the first service arrives. The first condition includes one or more of the following: the data packets for the first service from the service layer arrive at the network device earlier than the first time; the data packets for the first service are predicted to arrive at the terminal earlier than the first time; or the time or moment when the data packets for the first service are received from the service layer is earlier than the transmission time. It should be noted that the second queue can be the same as or different from the first queue. For example, the first queue is used to buffer uplink data packets for the first service, and the second queue is used to buffer downlink data packets for the first service.
[0141] The network device can also adjust the priority of the second queue based on the first time. For example, if the data packet of the first service from the service layer arrives at the network device later than the first time, and / or if it is predicted that the data packet of the first service will arrive at the terminal later than the first time, the data packet of the first service will be sent to the terminal first, or the priority of the second queue will be adjusted to the highest priority, and the data packets in the second queue will be sent to the terminal first.
[0142] The network device can adjust the third time forward or backward based on the packet transmission time of the first service, according to the second information and the concurrent data volume corresponding to the packet transmission time. For example, when the concurrent data volume corresponding to the packet transmission time of the first service is large, the third time can be adjusted forward or backward based on the resource location and / or resource period contained in the second information, that is, the network device can send the data packets of the first service earlier or later.
[0143] Based on the first and second time information, the process of controlling the third time can be as follows:
[0144] If the data packet of the first service from the service layer arrives at the network device later than the first time, and / or if it is predicted that the data packet of the first service will arrive at the terminal later than the first time, the time or moment when the first service packet is sent from the network device can be adjusted forward or backward based on the resource location and / or resource period contained in the second information.
[0145] If the data packet of the first service from the service layer arrives at the network device earlier than the first time, and / or it is predicted that the data packet of the first service will arrive at the terminal earlier than the first time, if the concurrent data volume corresponding to the packet sending time of the first service is large, the time or moment when the first service packet is sent from the network device can be adjusted forward or backward based on the resource location and / or resource period contained in the second information.
[0146] In this embodiment, during the process of the network device sending the data packet of the first service to the terminal, the time or moment when the network device sends the data packet of the first service can be changed to achieve peak-shifting, thereby reducing the probability of service data congestion without changing the service cycle and without the service being aware of it.
[0147] To ensure data arrival certainty and reduce the probability of data congestion, network devices can perform traffic shaping based on traffic volume. Therefore, in one embodiment, the method further includes:
[0148] Based on the first relationship, a first data volume is determined. The first relationship includes at least the correspondence between the business and the first information. The first data volume represents the concurrent data volume corresponding to the packet sending time of the first business or the data volume within the same time period.
[0149] If the first data volume is greater than or equal to the third threshold, the packet sending time of the first service is adjusted, and / or the time or time when some or all service data packets within the time period corresponding to the first data volume are sent from the network device is adjusted.
[0150] Here, the network device obtains a first relationship and determines a first data volume based on the first relationship; it then determines whether the first data volume is greater than or equal to a third threshold; if the first data volume is greater than or equal to the third threshold, it initiates a traffic distribution strategy. Based on the packet transmission time of the first service, it adjusts the time or moment when some or all service data packets within the time period corresponding to the first data volume are sent from the network device forward or backward, so as to shift the data flow or service flow within the concentrated traffic time period to other time periods. The time or moment when data packets are sent from the network device includes: the time or moment when data packets are sent from the network device to the terminal, and / or the time or moment when the network device transmits, submits, or sends data packets to the service layer or service platform.
[0151] For example, the network device determines the concurrent data volume corresponding to the packet sending time of the first service based on the packet sending time and / or packet sending period included in the first information of each service in the first relationship; if the concurrent data volume corresponding to the packet sending time of the first service is greater than the third threshold, the time or period when the data packets of the first service are sent out by the network device is adjusted forward or backward based on the packet sending time of the first service.
[0152] For example, the network device determines the amount of data sent in each time period according to a set period based on the packet sending time and / or packet sending period of the first information of each service in the first relationship; if the amount of data in any time period is greater than or equal to the third threshold, the time or time when some or all of the data packets of the services in that time period are sent from the network device is adjusted forward or backward, so as to shift the data flow or service flow in that time period to other time periods.
[0153] In other words, when the first data volume is greater than or equal to the third threshold, the network device can also control the second and / or third times, which can distribute the packet transmission time without changing the packet transmission cycle to adjust the traffic. For example, if the data volume in any time period is greater than or equal to the third threshold, the second and / or third times of the data packets of the first service in that time period can be adjusted forward or backward. The time when the data packets of the second service are sent from the network device can also be adjusted forward or backward. The second service refers to any service other than the first service. The second time represents the time when the network device transmits the data packets of the first service to the service layer or service platform, and the third time represents the time when the network device sends the data packets of the first service to the terminal.
[0154] Correspondingly, embodiments of this application also provide a data transmission method applied to a terminal, including an industrial terminal, such as... Figure 2 As shown, the method includes:
[0155] Step 201: Receive the first information and / or the second information of the first service sent by the network device.
[0156] The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time; the second information represents information related to the transmission resources reserved for the first service.
[0157] Step 202: Based on the first time and / or the first information and / or the second information of the first service, control the time for sending the data packet of the first service to the network device, wherein the first time represents the expected arrival time of the first service.
[0158] Here, the expected arrival time of the first service includes the expected arrival time of the first service at the network device. The terminal can control the timing of sending the data packet of the first service to the network device based on the first time, thereby ensuring that the first service arrives at the network device as close to the expected arrival time as possible. When the expected arrival time of the first service includes the expected arrival time of the first service at the terminal, the terminal can compare the first time with the arrival time of the downlink data packet of the first service at the terminal. If the arrival time of the downlink data packet of the first service at the terminal is earlier than the first time, the terminal can buffer the uplink data packet of the first service. If the current time reaches the packet transmission time of the first service, then the terminal sends the uplink data packet of the first service to the network device. If the arrival time of the downlink data packet of the first service at the terminal is later than the first time, the terminal prioritizes sending the uplink data packet of the first service to the network device.
[0159] The terminal can control the timing of sending data packets of the first service to the network device based on the packet sending time and / or packet sending period included in the first information of the first service. Alternatively, it can send data packets of the first service to the network device before or after the packet sending time of the first service based on the concurrent data volume corresponding to the packet sending time of the first service.
[0160] The terminal can control the timing of sending data packets for the first service to the network device based on the resource location and / or resource period included in the second information. The terminal can also send data packets for the first service to the network device based on the concurrent data volume and the second information. For example, if the concurrent data volume corresponding to the packet transmission time of the first service is greater than a fourth threshold, the terminal can select a resource before or after the packet transmission time of the first service based on the second information, and send the data packets for the first service to the network device on the selected resource.
[0161] The terminal can also control the timing of sending data packets for the first service to the network device based on the first time and the first information of the first service. The terminal can also control the timing of sending data packets for the first service to the network device based on the second information and the first information of the first service. The terminal can also control the timing of sending data packets for the first service to the network device based on the first time and the second information, for example, based on the resource location and / or resource period included in the first time and the second information. The terminal can also control the timing of sending data packets for the first service to the network device based on the first time, the first information of the first service, and the second information of the second service.
[0162] It should be noted that the terminal can also determine the second data volume based on the first relationship. If the second data volume is greater than or equal to the fourth threshold, the terminal can buffer the received data packets to adjust the time when the data packets are sent from the terminal, thereby adjusting the time or duration when the data packets of the first service are sent from the terminal, and / or adjusting the time or duration when some or all of the service data packets are sent from the terminal within the time period corresponding to the second data volume. The first relationship at least includes the correspondence between services and first information, and the second data volume represents the concurrent data volume corresponding to the packet sending time of the first service or the data volume within the same time period.
[0163] To ensure the certainty of data arrival and reduce the probability of data congestion, the terminal can adjust the traffic of data packets for the first service to achieve off-peak transmission of data packets for the first service. Based on this, in one embodiment, controlling the timing of sending data packets for the first service to the network device according to a first time and / or first information and / or second information of the first service includes one or more of the following:
[0164] The data packets of the first service are cached in the third queue. The third queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0165] If the data packet of the first service arrives at the terminal before the first time, the data packet of the first service is cached in the third queue;
[0166] Upon arrival at the first time, the data packet for the first service is sent to the network device;
[0167] If the data packet for the first service arrives at the terminal later than the first time, the data packet for the first service shall be sent to the network device first.
[0168] If the data packet of the first service arrives at the terminal later than the first time, the data packet of the first service is cached in the third queue, and the priority of the third queue is adjusted to the highest priority.
[0169] Data packets in the third queue are sent to the network device first.
[0170] Here, the terminal can buffer the data packet for the first service in the third queue while sending it to the network device, and can also send the data packet for the first service to the network device when the first time arrives. The third queue can be understood as a buffer queue or a priority sending queue. For example, under the condition of the second condition, the terminal buffers the data packet for the first service in the third queue and sends the data packet for the first service to the network device when the packet sending time of the first service arrives. The second condition includes one or more of the following: the data packet for the first service arrives at the terminal earlier than the first time, the data packet for the first service is predicted to arrive at the network device earlier than the first time, or the time or moment when the data packet for the first service is received from the application layer is earlier than the packet sending time.
[0171] If the data packet of the first service arrives at the terminal before the first time, it indicates that the first service arrived at the terminal earlier than the first time. The terminal will buffer the data packet of the first service in the third queue, and can also send the data packet of the first service to the network device when it arrives at the first time.
[0172] If the data packet for the first service arrives at the terminal later than the first time, the terminal may prioritize sending the data packet for the first service to the network device; the terminal may also buffer the data packet for the first service in the third queue, adjust the priority of the third queue to the highest priority, and prioritize sending the data packets in the third queue to the network device, so as to prioritize sending the data packet for the first service to the network device.
[0173] The following section provides a more detailed description of this application with reference to application examples.
[0174] Figure 3 An example of a data transmission system architecture is given, such as... Figure 3 As shown, the data transmission system consists of one or more industry base stations and one or more industrial terminals. Each industry base station includes a service feature identification module, a policy module, a traffic shaping module, and a base unit (BBU). The BBU includes an enhanced scheduling module and a scheduler. The modules within the industry base station can be combined or separated, but their overall functionality remains unchanged. For example, the service feature identification module, policy module, and traffic shaping module can be deployed in modules independent of the BBU, or they can be integrated into the BBU. The terminal includes a traffic shaping module and a data transceiver module.
[0175] The main functions of each module are as follows:
[0176] The business feature identification module is used to receive business data from the business platform or business layer through the A1 interface, or from the BBU through the A2 interface, determine the first information of each business, and output the first information of each business to the strategy module through the A3 interface; it is also used to receive instructions from the strategy module to update the first information, so as to update the first information and ensure the accuracy of the first information.
[0177] The output format of the first information may include:
[0178] Basic format: [data packet size, packet period, packet transmission time]; or
[0179] Extended format: [Packet size, packet period, packet sending time, source IP address, source port number, destination IP address, destination port number, industry protocol type].
[0180] [Data packet size, packet period, packet sending time] are used by the strategy module to determine the second information and to provide a reference for the business feature identification module to update the first information; the data in the extended format is used to assist the strategy module in determining the business flow identifier (business flow ID) and the data sending strategy (the data sending strategy includes the concurrent data sending strategy), and to assist the traffic shaping module in realizing traffic orchestration and adjustment.
[0181] The strategy module is used to receive first information output by the service feature identification module via the A3 interface, determine second information based on the first information, and output the second information to the enhanced scheduling module in the BBU via the B1 interface; it is also used to receive a first value sent by the enhanced scheduling module in the BBU, determine whether the first information needs to be updated based on the first value and / or the second value, and, if the first information needs to be updated, instruct the service feature identification module to update the first information via the B2 interface; it can also be used to determine the data transmission strategy based on the concurrent data volume of industry base stations / terminals at the same time, and send the first information and / or the data transmission strategy to the traffic shaping module via the B3 interface. The data transmission strategy represents whether the time or moment when the service data packets are sent from the network device or terminal needs to be adjusted, and / or the specific time or moment when they are sent from the network device or terminal.
[0182] The output format of the B1 interface can be [service flow ID, second information]. The second information can include the resource size, resource period and resource location. The resource location can be understood as the time corresponding to the reserved transmission resource.
[0183] The output format of the B2 interface can be [Business Flow ID, Instruction to Update First Information]. The instruction to update the first information can be used to indicate the need to re-determine the first information.
[0184] The output format of the B3 interface can be [Business Flow ID, Forward Offset Time or Backward Offset Time]. The forward offset time or backward offset time is the offset time relative to the packet sending time.
[0185] The main functions of the flow shaping module are as follows:
[0186] For downlink services of industry base stations, if the deterministic requirements of downlink services are high, then the service flow of downlink services with high deterministic requirements will be assigned to priority transmission queues of different cycles (the aforementioned second queue) according to the packet transmission cycle, while other services will be transparently transmitted to the BBU in the regular queue for normal scheduling.
[0187] For uplink services of industry base stations, data packets are submitted to the service platform or service layer according to the expected arrival time of the service and the packet sending cycle. If the data packets arrive in advance, they are placed in the buffer queue (the aforementioned first queue). When the service submission time or the service packet sending time arrives, the data packets are submitted upward to ensure the deterministic arrival of uplink data. A second value can also be determined and fed back to the policy module through the B3 interface.
[0188] For uplink services on the terminal side, industry base stations send data transmission strategies to the terminals, such as uplink transmission strategies for service data. These strategies ensure orderly and distributed data transmission, preventing terminal packet backlog, and guaranteeing precise matching between periodic data transmission and pre-scheduled periods, thus ensuring deterministic data delivery. The data transmission strategy indicates the offset time relative to the packet transmission time, which can be either forward or backward offset.
[0189] The main functions of the enhanced scheduling module are as follows:
[0190] The system receives the second information output by the strategy module through the B1 interface, and outputs resource scheduling rules to the scheduler in the BBU through the E1 interface based on the second information to ensure deterministic data transmission. The output format of the E1 interface can be [service flow ID, time domain resource location, frequency domain resource location].
[0191] The system receives the third information output by the scheduler in the BBU through the E2 interface, determines the first value based on the second and third information, and feeds back the first value to the policy module through the D1 interface.
[0192] All traffic entering the BBU is orchestrated and sent, with priority given to sending high-deterministic services.
[0193] The scheduler is used to schedule resources, and the output format of the E2 interface can be [service flow ID, number of reserved resources, number of resources used]. If the reserved transmission resources are not used within a certain period of time, it indicates that the reserved resources are inaccurate.
[0194] based on Figure 3 The data processing methods mainly include the following two parts:
[0195] 1. Closed-loop optimization of precise pre-scheduled sets based on packet features
[0196] Business data enters the business feature recognition module from the business platform and / or BBU. The business feature recognition module parses or analyzes the business data of the first business, such as analyzing packet sending patterns, to obtain the first information of the first business. The business feature recognition module then sends the first information of the first business to the strategy module.
[0197] The strategy module determines the service flow ID of the first service based on the source IP address, destination IP address, and port number of the first service, determines the second information based on the first information of the first service, and sends the second information to the scheduling enhancement module in the BBU.
[0198] Upon receiving the second information, the scheduling enhancement module in the BBU schedules appropriate transmission resources (time-frequency resources) for the first service based on the resource scheduling status of the industry base stations, and instructs the scheduler in the BBU on the scheduled transmission resources to perform actual resource scheduling.
[0199] The scheduler in the BBU periodically feeds back the actual resource usage to the scheduling enhancement module in the BBU, which is the third information.
[0200] The scheduling enhancement module in the BBU determines the first value based on the second and third information and feeds the first value back to the strategy module.
[0201] The strategy module stores a first threshold. If the first value is less than the first threshold, it indicates that the resource scheduling or the reserved resources are inaccurate, and the first information and / or the second information of the first service need to be updated. The service flow ID of the first service is fed back to the service feature identification module, and the service feature identification module is instructed to redetermine or update the first information of the first service. If the first value is greater than or equal to the first threshold, it indicates that the resource scheduling or the reserved resources are accurate, and the first information and / or the second information of the first service do not need to be updated.
[0202] 2. Traffic shaping based on business characteristics: This includes traffic shaping based on packet characteristics and business adjustment based on the amount of business data.
[0203] (1) Packet-based flow shaping
[0204] Upon receiving the first information, the strategy module sends the first information and the service flow ID of the first service to the traffic shaping module of the industry base station and the traffic shaping module of the terminal. Upon receiving the second information, the strategy module can also send the second information to the terminal through the enhanced scheduling module.
[0205] The traffic shaping module on the industry base station side controls the second time based on the first time and / or the first information of the first service, and / or controls the third time based on the first time and / or the first and / or the second information of the first service. The first time represents the expected arrival time of the first service, the second time represents the time when the industry base station transmits the data packet of the first service to the service layer or service platform, and the third time represents the time when the industry base station sends the data packet of the first service to the terminal. For example, for uplink services of the industry base station, if the data packet of the first service arrives at the industry base station before the first time, the data packet of the first service is cached in the first queue, and transmitted to the service layer or service platform upon arrival at the first time. As another example, for uplink services of the industry base station, if the data packet of the first service arrives at the industry base station after the first time, the data packet of the first service is cached in the first queue, the priority of the first queue is adjusted to the highest priority, and the data packets in the first queue are transmitted to the service layer or service platform first, ensuring the fastest possible delivery of the data packet of the first service to the service layer or service platform and guaranteeing the determinism of data arrival. For example, for downlink services of industry base stations, if the first service is a service with high deterministic requirements, the data packets of the first service are buffered in the second queue according to the packet cycle of the first service, so that the data packets in the second queue are sent first, thereby giving priority to the data packets of the first service to the terminal. The second queue represents the queue corresponding to the packet transmission cycle of the first service, and the priority of the queues corresponding to different packet transmission cycles is different.
[0206] For services that arrive at the network equipment later than expected, the traffic shaping module of the industry base station can record the service flow ID of the service that arrives at the network equipment later than expected, and inform the BBU of the recorded service flow ID so as to enhance the scheduling of the service flow ID. It can also feed back the modified data transmission policy or the instruction to update the first information of the first service to the policy module.
[0207] The traffic shaping module of the industry base station can also feed back a second value to the policy module. The second value represents the number of times the data packets of the first service arrive at the industry base station later than the first time. The policy module also stores a second threshold. When the second value is greater than or equal to the second threshold, it instructs the service feature identification module to update the first information and / or the second information of the first service. When the second value is less than the second threshold, it is not necessary to update the first information and / or the second information of the first service.
[0208] Upon obtaining first and / or second information about the first service, the terminal's traffic shaping module controls the timing of sending data packets for the first service to the industry base station based on the first time and / or the first and / or second information about the first service. The first time represents the expected arrival time of the first service. For example, if the data packets for the first service arrive at the terminal before the first time, the data packets are buffered in a third queue and sent to the industry base station upon arrival at the first time. As another example, if the data packets for the first service arrive at the terminal after the first time, the data packets are buffered in a third queue, the priority of the third queue is adjusted to the highest priority, and data packets in the third queue are sent to the industry base station first to ensure the fastest possible delivery of the data packets for the first service and guarantee the determinism of data arrival.
[0209] (2) Business adjustments based on business data volume
[0210] The business feature identification module sends the first information of each business to the strategy module. The strategy module generates a first relationship or a second mapping table based on the first information of each business. The second mapping table contains the first relationship, which at least contains the correspondence between the business and the first information.
[0211] The strategy module determines the amount of data sent within each time period according to the first relationship and a set period. If the amount of data in any time period is greater than or equal to the third threshold, a traffic distribution strategy is activated. This adjusts the time when some or all data packets of the service within that time period are sent from the industry base station or terminal, either forward or backward, to obtain the offset time relative to the packet sending time of the corresponding service. This offsets the data flow or service flow within that time period to other time periods. The service flow ID and the offset time relative to the packet sending time of the corresponding service are then sent to the traffic shaping module. The service flow ID may include the service flow ID of the first service.
[0212] The traffic shaping module receives the service flow ID and the offset time of the packet sending time of the corresponding service. Based on the offset time of the packet sending time of the service corresponding to the service flow ID, it adjusts the time of sending the data packets of the service corresponding to the service flow ID. By sending the data packets of each service flow ID in a staggered manner, it can reduce the probability of service data congestion without changing the service cycle and without the service being aware of it.
[0213] It should be noted that the traffic shaping module includes at least a traffic shaping module on the industry base station side, and may also include a traffic shaping module on the terminal side. That is, the industry base station can adjust the time or moment when the data packets for the services corresponding to a service flow ID are sent from the industry base station, based on the offset time of the packet transmission moment, to stagger the transmission of data packets for each service flow ID. After receiving the data transmission strategy or data transmission adjustment strategy, such as receiving the offset time of the packet transmission moment for the service corresponding to the service flow ID, the terminal can buffer the data packets in a third queue to adjust the time or moment when the data packets are sent from the terminal.
[0214] To implement the network device-side method of this application embodiment, this application embodiment also provides a data transmission apparatus, disposed on the network device, such as... Figure 4 As shown, the device includes:
[0215] The first determining unit 401 is used to determine second information based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
[0216] In one embodiment, the device further includes:
[0217] The second determining unit is configured to determine the first information of the first service; and / or
[0218] An update unit is configured to determine, based on a first value and / or a second value, whether to update or not update the first information and / or the second information of the first service; wherein,
[0219] The first value represents the matching degree between the second information and the third information, and the third information represents the relevant information of the transmission resources used by the first service; the second value represents the number of times the data packets of the first service arrive at the network device later than the first time, or the number of times the data packets of the first service are sent later than the packet sending time; the first time represents the expected arrival time of the first service.
[0220] In one embodiment, the update unit is specifically used for one or more of the following:
[0221] If the first value is greater than or equal to the first threshold, the first information and / or the second information of the first service will not be updated;
[0222] If the first value is less than the first threshold, update the first information and / or the second information of the first service;
[0223] If the second value is greater than or equal to the second threshold, update the first information and / or the second information of the first service;
[0224] If the second value is less than the second threshold, the first information and / or the second information of the first service will not be updated.
[0225] In one embodiment, the device further includes:
[0226] The second sending unit is used to send the first information and / or the second information of the first service to the terminal.
[0227] In one embodiment, the device further includes:
[0228] The second control unit is configured to control the second time based on the first time and / or the first information of the first service; and / or
[0229] The third control unit is configured to control a third time based on the first time and / or the first information and / or the second information of the first service; wherein...
[0230] The first time represents the expected arrival time of the first service, the second time represents the time when the network device transmits the data packet of the first service to the service layer or service platform, and the third time represents the time when the network device sends the data packet of the first service to the terminal.
[0231] In one embodiment, the second control unit is specifically used for one or more of the following:
[0232] The data packets of the first service are cached in the first queue. The first queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0233] If the data packet of the first service arrives at the network device before the first time, the data packet of the first service is cached in the first queue;
[0234] Upon arrival, the data packet of the first service is transmitted to the business layer or business platform.
[0235] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service shall be transmitted to the service layer or service platform first.
[0236] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service is cached in the first queue, and the priority of the first queue is adjusted to the highest priority.
[0237] Data packets in the first queue are prioritized for transmission to the business layer or business platform.
[0238] In one embodiment, the third control unit is specifically used for one or more of the following:
[0239] The data packets of the first service are cached in the second queue. The second queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0240] Adjust the priority of the second queue based on the immediate situation;
[0241] Based on the first moment, control the third moment;
[0242] Based on the second information, control the third time;
[0243] Based on the first and second information, control the third time.
[0244] In one embodiment, the device further includes:
[0245] The third determining unit is used to determine the first data volume according to the first relationship, wherein the first relationship includes at least the correspondence between the business and the first information, and the first data volume represents the concurrent data volume corresponding to the packet sending time of the first business or the data volume within the same time period.
[0246] The adjustment unit is used to adjust the time or timing at which data packets of some or all services within the time period corresponding to the first data volume are sent from the network device when the first data volume is greater than or equal to a third threshold.
[0247] In one embodiment, the information related to the transmission resources includes one or more of the following:
[0248] Resource size;
[0249] Resource location;
[0250] Resource quantity;
[0251] Resource cycles.
[0252] In practical applications, the first determining unit 401, the second determining unit, the updating unit, the second control unit, the third control unit, the third determining unit, and the adjustment unit can be implemented by a processor in the data transmission device, and the second sending unit can be implemented by a processor in the data transmission device combined with a communication interface.
[0253] To implement the terminal-side method of this application embodiment, this application embodiment also provides a data transmission device, which is installed on the terminal, such as... Figure 5As shown, the device includes:
[0254] The first receiving unit 501 is configured to receive first information and / or second information of a first service sent by a network device. The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service.
[0255] The first control unit 502 is configured to control the timing of sending data packets of the first service to the network device based on a first time and / or first information and / or second information of the first service, wherein the first time represents the expected arrival time of the first service.
[0256] In one embodiment, the first control unit 502 is specifically used for one or more of the following:
[0257] The data packets of the first service are cached in the third queue. The third queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0258] If the data packet of the first service arrives at the terminal before the first time, the data packet of the first service is cached in the third queue;
[0259] Upon arrival at the first time, the data packet for the first service is sent to the network device;
[0260] If the data packet for the first service arrives at the terminal later than the first time, the data packet for the first service shall be sent to the network device first.
[0261] If the data packet of the first service arrives at the terminal later than the first time, the data packet of the first service is cached in the third queue, and the priority of the third queue is adjusted to the highest priority.
[0262] Data packets in the third queue are sent to the network device first.
[0263] In practical applications, the first receiving unit 501 can be implemented by a processor in the data transmission device combined with a communication interface, and the first control unit 502 can be implemented by a processor in the data transmission device combined with a communication interface.
[0264] It should be noted that the data transmission device provided in the above embodiments is only illustrated by the division of the above program modules. In practical applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the data transmission device and data transmission method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0265] Based on the hardware implementation of the above program modules, and in order to implement the method on the network device side of the embodiments of this application, the embodiments of this application also provide a network device, such as... Figure 6 As shown, network device 600 includes:
[0266] The first communication interface 601 is capable of exchanging information with other network nodes;
[0267] The first processor 602 is connected to the first communication interface 601 to enable information interaction with other network nodes. When running a computer program, it executes the methods provided by one or more technical solutions on the network device side. The computer program is stored in the first memory 603.
[0268] Specifically, the first processor 602 is configured to determine second information based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
[0269] In one embodiment, the first processor 602 is further configured to determine first information of the first service; and / or, to decide whether to update or not update the first information and / or the second information of the first service based on a first value and / or a second value; wherein,
[0270] The first value represents the matching degree between the second information and the third information, and the third information represents the relevant information of the transmission resources used by the first service; the second value represents the number of times the data packets of the first service arrive at the network device later than the first time, or the number of times the data packets of the first service are sent later than the packet sending time; the first time represents the expected arrival time of the first service.
[0271] In one embodiment, the first processor 602 is specifically used for one or more of the following:
[0272] If the first value is greater than or equal to the first threshold, the first information and / or the second information of the first service will not be updated;
[0273] If the first value is less than the first threshold, update the first information and / or the second information of the first service;
[0274] If the second value is greater than or equal to the second threshold, update the first information and / or the second information of the first service;
[0275] If the second value is less than the second threshold, the first information and / or the second information of the first service will not be updated.
[0276] In one embodiment, the first communication interface 601 is used to send the first information and / or the second information of the first service to the terminal.
[0277] In one embodiment, the first processor 602 is further configured to control a second time based on a first time and / or first information of the first service; and / or to control a third time based on the first time and / or the first information of the first service and / or the second information; wherein,
[0278] The first time represents the expected arrival time of the first service, the second time represents the time when the network device transmits the data packet of the first service to the service layer or service platform, and the third time represents the time when the network device sends the data packet of the first service to the terminal.
[0279] In one embodiment, the first processor 602 is specifically used for one or more of the following:
[0280] The data packets of the first service are cached in the first queue. The first queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0281] If the data packet of the first service arrives at the network device before the first time, the data packet of the first service is cached in the first queue;
[0282] Upon arrival, the data packet of the first service is transmitted to the business layer or business platform.
[0283] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service shall be transmitted to the service layer or service platform first.
[0284] If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service is cached in the first queue, and the priority of the first queue is adjusted to the highest priority.
[0285] Data packets in the first queue are prioritized for transmission to the business layer or business platform.
[0286] In one embodiment, the first processor 602 is specifically used for one or more of the following:
[0287] The data packets of the first service are cached in the second queue. The second queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0288] Adjust the priority of the second queue based on the immediate situation;
[0289] Based on the first moment, control the third moment;
[0290] Based on the second information, control the third time;
[0291] Based on the first and second information, control the third time.
[0292] In one embodiment, the first processor 602 is further configured to:
[0293] Based on the first relationship, a first data volume is determined. The first relationship includes at least the correspondence between the business and the first information. The first data volume represents the concurrent data volume corresponding to the packet sending time of the first business or the data volume within the same time period.
[0294] If the first data volume is greater than or equal to the third threshold, the timing or time at which some or all service data packets within the time period corresponding to the first data volume are sent from the network device is adjusted.
[0295] In one embodiment, the information related to the transmission resources includes one or more of the following:
[0296] Resource size;
[0297] Resource location;
[0298] Resource quantity;
[0299] Resource cycles.
[0300] It should be noted that the specific processing procedures of the first processor 602 and the first communication interface 601 can be understood by referring to the above method.
[0301] Of course, in practical applications, the various components in network device 600 are coupled together through bus system 604. It can be understood that bus system 604 is used to implement communication between these components. In addition to a data bus, bus system 604 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 6 The general designated all buses as Bus System 604.
[0302] The first memory 603 in this embodiment is used to store various types of data to support the operation of the network device 600. Examples of such data include any computer program used to operate on the network device 600.
[0303] The methods disclosed in the embodiments of this application can be applied to the first processor 602, or implemented by the first processor 602. The first processor 602 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the first processor 602. The first processor 602 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The first processor 602 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly reflected as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the first memory 603. The first processor 602 reads the information in the first memory 603 and completes the steps of the aforementioned method in combination with its hardware.
[0304] In an exemplary embodiment, the network device 600 may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to perform the aforementioned method.
[0305] Based on the hardware implementation of the above program modules, and in order to implement the terminal-side method of the embodiments of this application, the embodiments of this application also provide a terminal. For example... Figure 7 As shown, the terminal 700 includes:
[0306] The second communication interface 701 is capable of exchanging information with other network nodes;
[0307] The second processor 702 is connected to the second communication interface 701 to enable information interaction with other network nodes. When running a computer program, it executes the methods provided by one or more of the aforementioned terminal-side technical solutions. The computer program is stored in the second memory 703.
[0308] Specifically, the second communication interface 701 is used to receive first information and / or second information of the first service sent by the network device. The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service.
[0309] The second processor 702 is configured to control the timing of sending data packets of the first service to the network device based on a first time and / or first information and / or second information of the first service, wherein the first time represents the expected arrival time of the first service.
[0310] In one embodiment, the second processor 702 is specifically used for one or more of the following:
[0311] The data packets of the first service are cached in the third queue. The third queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities.
[0312] If the data packet of the first service arrives at the terminal before the first time, the data packet of the first service is cached in the third queue;
[0313] Upon arrival at the first time, the data packet for the first service is sent to the network device;
[0314] If the data packet for the first service arrives at the terminal later than the first time, the data packet for the first service shall be sent to the network device first.
[0315] If the data packet of the first service arrives at the terminal later than the first time, the data packet of the first service is cached in the third queue, and the priority of the third queue is adjusted to the highest priority.
[0316] Data packets in the third queue are sent to the network device first.
[0317] It should be noted that the specific processing procedures of the second processor 702 and the second communication interface 701 can be understood by referring to the above method.
[0318] Of course, in practical applications, the various components in terminal 700 are coupled together through bus system 704. It can be understood that bus system 704 is used to implement communication between these components. In addition to a data bus, bus system 704 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 7 The general designated all buses as Bus System 704.
[0319] The second memory 703 in this embodiment is used to store various types of data to support the operation of the terminal 700. Examples of such data include any computer program used to operate on the terminal 700.
[0320] The methods disclosed in the embodiments of this application can be applied to the second processor 702, or implemented by the second processor 702. The second processor 702 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the second processor 702. The second processor 702 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The second processor 702 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the second memory 703. The second processor 702 reads the information in the second memory 703 and completes the steps of the aforementioned method in combination with its hardware.
[0321] In an exemplary embodiment, terminal 700 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.
[0322] It is understood that the memories (first memory 603 and second memory 703) in the embodiments of this application can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memories.
[0323] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, such as a first memory 603 storing a computer program, which can be executed by a first processor 602 of a network device 600 to complete the steps described in the aforementioned network device-side method. Another example is a second memory 703 storing a computer program, which can be executed by a second processor 702 of a terminal 700 to complete the steps described in the aforementioned terminal-side method. The computer-readable storage medium can be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.
[0324] For example, this application also provides a computer program product, including a computer program that can be executed by a first processor 602 of a network device 600 to complete the steps described in the aforementioned network device-side method. The computer program can also be executed by a second processor 702 of a terminal 700 to complete the steps described in the aforementioned terminal-side method.
[0325] It should be noted that terms like "first" and "second" are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. "Multiple" can refer to two or more items, and "multiple" can refer to two or more items.
[0326] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.
[0327] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application.
Claims
1. A data transmission method, characterized in that, Applied to network devices, the method includes: The second information is determined based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
2. The method according to claim 1, characterized in that, The method further includes: Determine the first information of the first service; and / or Based on the first value and / or the second value, it is decided whether to update or not update the first information and / or the second information of the first service; wherein, The first value represents the matching degree between the second information and the third information, and the third information represents the relevant information of the transmission resources used by the first service; the second value represents the number of times the data packets of the first service arrive at the network device later than the first time, or the number of times the data packets of the first service are sent later than the packet sending time; the first time represents the expected arrival time of the first service.
3. The method according to claim 2, characterized in that, The step of deciding whether to update or not update the first information and / or the second information of the first service based on the first value and / or the second value includes one or more of the following: If the first value is greater than or equal to the first threshold, the first information and / or the second information of the first service will not be updated; If the first value is less than the first threshold, update the first information and / or the second information of the first service; If the second value is greater than or equal to the second threshold, update the first information and / or the second information of the first service; If the second value is less than the second threshold, the first information and / or the second information of the first service will not be updated.
4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Send the first information and / or the second information of the first service to the terminal.
5. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Based on the first information from the first time and / or the first service, control the second time; and / or Based on the first time and / or the first information and / or the second information of the first service, control the third time; wherein... The first time represents the expected arrival time of the first service, the second time represents the time when the network device transmits the data packet of the first service to the service layer or service platform, and the third time represents the time when the network device sends the data packet of the first service to the terminal.
6. The method according to claim 5, characterized in that, The control of the second time based on the first time and / or the first information of the first service includes one or more of the following: The data packets of the first service are cached in the first queue. The first queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities. If the data packet of the first service arrives at the network device before the first time, the data packet of the first service is cached in the first queue; Upon arrival, the data packet of the first service is transmitted to the business layer or business platform. If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service shall be transmitted to the service layer or service platform first. If the data packet of the first service arrives at the network device later than the first time, the data packet of the first service is cached in the first queue, and the priority of the first queue is adjusted to the highest priority. Data packets in the first queue are prioritized for transmission to the business layer or business platform.
7. The method according to claim 5, characterized in that, The control of the third time based on the first time and / or the first information and / or the second information of the first service includes one or more of the following: The data packets of the first service are cached in the second queue. The second queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities. Adjust the priority of the second queue based on the immediate situation; Based on the first moment, control the third moment; Based on the second information, control the third time; Based on the first and second information, control the third time.
8. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Based on the first relationship, a first data volume is determined. The first relationship includes at least the correspondence between the business and the first information. The first data volume represents the concurrent data volume corresponding to the packet sending time of the first business or the data volume within the same time period. If the first data volume is greater than or equal to the third threshold, the timing or time at which some or all service data packets within the time period corresponding to the first data volume are sent from the network device is adjusted.
9. The method according to any one of claims 1 to 3, wherein the information related to the transmitted resources includes one or more of the following: Resource size; Resource location; Resource quantity; Resource cycles.
10. A data transmission method, characterized in that, Applied to a terminal, the method includes: The system receives first information and / or second information of a first service sent by a network device. The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service. Based on the first time and / or the first information and / or the second information of the first service, the timing of sending data packets of the first service to the network device is controlled, wherein the first time represents the expected arrival time of the first service.
11. The method according to claim 10, characterized in that, The step of controlling the timing of sending data packets of the first service to the network device based on the first time and / or the first information and / or the second information of the first service includes one or more of the following: The data packets of the first service are cached in the third queue. The third queue represents the queue corresponding to the packet sending period of the first information of the first service. The queues corresponding to different packet sending periods have different priorities. If the data packet of the first service arrives at the terminal before the first time, the data packet of the first service is cached in the third queue; Upon arrival at the first time, the data packet for the first service is sent to the network device; If the data packet for the first service arrives at the terminal later than the first time, the data packet for the first service shall be sent to the network device first. If the data packet of the first service arrives at the terminal later than the first time, the data packet of the first service is cached in the third queue, and the priority of the third queue is adjusted to the highest priority. Data packets in the third queue are sent to the network device first.
12. A data transmission device, characterized in that, include: The first determining unit is configured to determine second information based on the first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
13. A data transmission device, characterized in that, include: The first receiving unit is configured to receive first information and / or second information of a first service sent by a network device. The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time. The second information represents information related to the transmission resources reserved for the first service. The first sending unit is configured to control the timing of sending data packets of the first service to the network device based on a first time and / or first information and / or second information of the first service, wherein the first time represents the expected arrival time of the first service.
14. A network device, characterized in that, include: A first processor and a first communication interface; wherein... The first processor is configured to determine second information based on first information of the first service, wherein the first information of the first service includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time, and the second information represents information related to the transmission resources reserved by the first service.
15. A terminal, characterized in that, include: A second processor and a second communication interface; wherein... The second communication interface is configured to receive first information and / or second information of a first service sent by a network device, and to control the timing of sending data packets of the first service to the network device based on a first time and / or the first information and / or the second information of the first service; wherein, The first information includes at least one or more of the following: data packet size, packet transmission period, and packet transmission time; the second information represents information related to the transmission resources reserved for the first service; and the first time represents the expected arrival time of the first service.
16. A network device, characterized in that, It includes a first processor and a first memory for storing computer programs that can run on the first processor. Wherein, when the first processor is used to run the computer program, it performs the steps of the method according to any one of claims 1 to 9.
17. A terminal, characterized in that, It includes a second processor and a second memory for storing computer programs that can run on the second processor. Wherein, when the second processor is used to run the computer program, it performs the steps of the method according to any one of claims 10 to 11.
18. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 9, or the steps of the method according to any one of claims 10 to 11.
19. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 11.