Data transmission method, electronic device, and storage medium

The data transmission method in TSN addresses bandwidth waste and delay jitter by using a predictive hybrid control policy, ensuring efficient and reliable transmission of time-sensitive traffic flows.

JP7733739B2Active Publication Date: 2025-09-03ZTE CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2023541028
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-03-15
Filing Date
2022-01-29
Publication Date
2025-09-03
Estimated Expiration
2042-01-29

AI Technical Summary

Technical Problem

Existing transmission control policies in Time-Sensitive Networking (TSN) cause bandwidth waste and introduce delay jitter, compromising the real-time and reliable transmission of time-sensitive traffic flows.

Method used

A data transmission method that generates a transmission control policy based on current time information and message attribute information, utilizing a predictive hybrid transmission control policy that includes reserved bandwidth reuse, remaining time transmission, and optimized preemption control to improve bandwidth utilization without affecting real-time reliability.

Benefits of technology

The method effectively enhances bandwidth utilization while maintaining real-time and reliable transmission of time-sensitive traffic flows by optimizing the use of available bandwidth and minimizing delay jitter.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007733739000027
    Figure 0007733739000027
  • Figure 0007733739000028
    Figure 0007733739000028
  • Figure 0007733739000029
    Figure 0007733739000029
Patent Text Reader

Abstract

A data transmission method, device, electronic device, and storage medium are provided. The data transmission method includes the steps of acquiring current time information (S1100), acquiring message attribute information of a traffic flow to be currently transmitted (S1200), generating a transmission control policy based on the current time information and the message attribute information (S1300), and controlling transmission of the traffic flow in a time-sensitive network according to the transmission control policy (S1400).
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This application is filed based on and claims priority from a Chinese patent application bearing application number 202110276013.1 and filed on March 15, 2021, the entire contents of which are hereby incorporated by reference into this application.

[0002] TECHNICAL FIELD Embodiments of the present application relate to the field of communication technology, and in particular to a data transmission method, device, electronic device, and storage medium. [Background technology]

[0003] Time-Sensitive Networking (TSN) is a standard developed by the TSN team of the Institute of Electrical and Electronics Engineers (IEEE) 802.1. This standard defines mechanisms for time-sensitive transmission, primarily on Ethernet, and TSN technology places particular emphasis on reliable transmission, low latency, and high availability.

[0004] In order to ensure the real-time and reliable transmission of time-sensitive traffic flows (e.g., TT (Time-triggered) traffic flows), transmission control policies (e.g., bandwidth resource reservation policies) are usually adopted to control traffic data, but in related technical solutions, transmission control policies are prone to causing bandwidth waste. Summary of the Invention

[0005] The following is a summary of the subject matter described in detail herein. This summary is not intended to limit the scope of the claims.

[0006] The embodiment of the present application is a data transmission method , electric Provide a child device and a storage medium.

[0007] In a first aspect, the present application provides a method for manufacturing a pharmaceutical composition comprising: obtaining current time information; determining a first scheduling table entry in a scheduling table corresponding to the current time information, the scheduling table including a plurality of scheduling table entries, each scheduling table entry including time information, message attribute information of a time-sensitive traffic flow, and a gate control list, the gate control list representing the state of transmission control gates of a time-sensitive traffic flow queue and a non-time-sensitive traffic flow queue, and the message attribute information of the time-sensitive traffic flow including traffic flow ID information and a message length; Steps and The aforementioned obtaining a first time-sensitive traffic flow from the time-sensitive traffic flow queue based on the gate control list of a first scheduling table entry, and obtaining message attribute information of the first time-sensitive traffic flow; , The aforementioned Time-sensitive in the first scheduling table entry traffic flow message attribute information; The first Determine whether message attribute information of time-sensitive traffic flows matches Steps to , If it matches, 1st time-sensitive Sends traffic flow and if it does not match, turning off a transmission control gate of the time-sensitive traffic flow queue in which the first time-sensitive traffic flow is located and turning on a transmission control gate of the non-time-sensitive traffic flow queue; transmitting a traffic flow that is not time sensitive.

[0008] In a second aspect, the present application further provides: a time acquisition module configured to acquire current time information; a message attribute obtaining module configured to obtain message attribute information of a traffic flow currently to be transmitted; a policy generation module configured to generate a transmission control policy based on the current time information and the message attribute information; a transmission module configured to control transmission of a traffic flow in a time-sensitive network according to the transmission control policy.

[0009] In a third aspect, the present application further provides: Provided is an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, realizes the data transmission method described in the first aspect.

[0010] In a fourth aspect, the present application further provides: A computer-readable storage medium having computer-executable instructions stored thereon, The computer-executable instructions provide a computer-readable storage medium for performing the data transmission method according to the first aspect. In order to more clearly explain the technical solutions in the embodiments of the present application, the following briefly describes the drawings that need to be used in the description of the embodiments or related technologies. The drawings in the following description are only some examples of the embodiments of the present application, and it is obvious that those skilled in the art can derive other drawings from these drawings without any creative efforts. [Brief explanation of the drawings]

[0011] [Figure 1] 1 is a schematic diagram of the inconsistent timing principle of traffic flow in a TSN network. [Figure 2] 1 is a schematic diagram of the timing principle in the case of a guard band policy in a TSN network. [Figure 3] 1 is a schematic diagram of the timing principle in the case of a frame preemption policy of a TSN network; [Figure 4] 1 is a schematic diagram of a software system architecture for implementing the data transmission method of the present application; [Figure 5] 1 is a flow diagram of a data transmission method according to an embodiment of the present application; [Figure 6] 4 is a flow diagram of a data transmission method according to another embodiment of the present application; [Figure 7] 4 is a flow diagram of a data transmission method according to another embodiment of the present application; [Figure 8] 4 is a flow diagram of a data transmission method according to another embodiment of the present application; [Figure 9] 1 is a schematic diagram of the timing principle for the remaining time transmission policy and the optimized preemption transmission policy in one embodiment of the present application; [Figure 10] 4 is a flow diagram of a data transmission method according to another embodiment of the present application; [Figure 11] 4 is a flow diagram of a data transmission method according to another embodiment of the present application; [Figure 12]1 is a structural schematic diagram of a data transmission device according to an embodiment of the present application; DETAILED DESCRIPTION OF THE INVENTION

[0012] In the following description, specific details, such as particular system configurations, techniques, etc., are provided for purposes of explanation and not limitation in order to thoroughly understand the embodiments of the present application. However, those skilled in the art will understand that the embodiments of the present application may also be practiced in other embodiments that do not have these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the embodiments of the present application with unnecessary detail.

[0013] It should be noted that although a logical order is shown in the flowchart, the steps shown or described may, in some cases, be performed in an order different from that shown in the flowchart. Terms such as "first," "second," etc. in the specification and claims, and in the foregoing drawings, are not used to describe a particular order or priority, but rather to distinguish between similar objects.

[0014] Additionally, references to "one embodiment" or "some embodiments" in the specification of embodiments of the present application should be understood to mean that one or more embodiments of the present application include the particular feature, structure, or characteristic described in connection with that embodiment. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in other embodiments" appearing in various places throughout this specification do not necessarily all refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprise," "contain," "have," and variations thereof mean "including, but not limited to," unless otherwise specifically emphasized.

[0015] Time-sensitive networking (TSN) is a promising future technology. TSN introduces a time-triggered transmission mechanism to schedule the precise transmission point of data (e.g., industrial control data) at devices (e.g., switches). Real-time traffic flows are called time-sensitive traffic flows because they are transmitted at precise points in time, while non-real-time traffic flows are called non-time-sensitive traffic flows because they are transmitted in the gaps between time-sensitive traffic flows.

[0016] In order to ensure the real-time and reliable transmission of time-sensitive traffic flows, transmission control policies are usually adopted to control traffic data. However, in related technical solutions, transmission control policies are prone to causing bandwidth waste, such as the following three cases:

[0017] JPEG0007733739000001.jpg46170

[0018]

number

[0019] JPEG0007733739000003.jpg23170

[0020] JPEG0007733739000004.jpg89170

[0021] (3) The preemption policy in the related technical proposal introduces additional delay jitter, undermining the determinism of time-sensitive traffic flows. As shown in Figure 3, when a time-sensitive traffic flow conflicts with a non-time-sensitive traffic flow, the time-sensitive traffic flow first truncates the message of the non-time-sensitive traffic flow at its transmission time. Then, the truncated message is filled with a 4-byte CRC check code to complete the transmission of the non-time-sensitive traffic flow. Then, the transmission of the time-sensitive traffic flow begins. Finally, when the transmission of the time-sensitive traffic flow is completed (oi + wi), the remaining truncated message of the non-time-sensitive traffic flow is transmitted. Each preemption introduces 4 bytes of delay jitter. Furthermore, to ensure that the truncated message is a valid Ethernet frame, the preemption policy requires that the message lengths of the two truncated parts must not be less than 64 words, which is the minimum frame length of Ethernet. Therefore, the minimum frame length of a truncated Ethernet message is 60 + 64 = 124 bytes. Therefore, if the message length is less than 124 bytes, the worst-case scenario for jitter introduced at this point is the message length of the entire non-time-sensitive traffic flow. Furthermore, because the message is truncated, one original message is split into two messages. Therefore, the additional data that must be transmitted is a total of 24 bytes: a filled CRC check code (4 bytes), an interpacket gap (IPG) (12 bytes), a preamble (6 bytes), a start m packet delimiter (SMD) (1 byte), and a fragment count (FRAG_COUNT) (1 byte). This is the bandwidth loss caused by the frame preemption policy.

[0022] Based on this, embodiments of the present application provide a data transmission method, device, electronic device, and storage medium. The embodiments of the present application generate a transmission control policy and control the transmission of traffic flows based on current time information and message attribute information of traffic flows to be currently transmitted, thereby effectively improving bandwidth utilization without compromising the real-time and reliable transmission of time-sensitive traffic flows. The present application can effectively improve bandwidth utilization without compromising the real-time and reliable transmission of time-sensitive traffic flows.

[0023] The data transmission method according to an embodiment of the present application can be performed in a processor that can include one or more processing units, each of which can be an independent device or can be integrated into one or more devices.

[0024] Hereinafter, the embodiments of the present invention will be further described with reference to the drawings.

[0025] JPEG0007733739000005.jpg149170

[0026] Here, the gate control unit 100 analyzes the scheduling table and controls the state of each queue switch 400 according to the scheduling table output command to control the transmission of traffic flow in the message queue. The scheduling table may be a locally stored scheduling table or a remotely acquired scheduling table, but this is not a limitation of the present application. The output terminal of the gate control unit 100 is connected to the input terminal of each queue switch 400 and outputs a command to control the state of each queue switch 400. In some embodiments, the output terminal of the gate control unit 100 is connected to the input terminal of the output selection unit 500 and provides the scheduling table information to the output selection unit 500, which then generates a transmission control policy based on the scheduling table information. For example, the gate control unit 100 provides the execution start time of the scheduling entry to be executed to the output selection unit 500, which then generates a remaining time transmission policy and / or an optimized preemption control policy according to the execution start time of the scheduling entry to be executed. In some other embodiments, the input terminal of the gate control unit 100 is connected to the output terminal of the time-sensitive traffic flow queue 200, receives message attribute information of the traffic flow to be currently transmitted from the time-sensitive traffic flow queue 200, and generates a transmission control policy based on the message attribute information of the traffic flow to be currently transmitted and scheduling table information. For example, the gate control unit 100 receives message attribute information of the traffic flow to be currently transmitted from the time-sensitive traffic flow queue 200, and generates a transmission control policy based on the message attribute information of the traffic flow to be currently transmitted and scheduling table information. Scheduled for transmission A match with message attribute information of the time-sensitive traffic flow is determined, and a reserved bandwidth reuse policy is generated.

[0027] The time-sensitive traffic flow queue 200 is for caching time-sensitive traffic flows. Multiple time-sensitive traffic flow queues 200 may exist, and the multiple time-sensitive traffic flow queues 200 may be configured with different priorities, such as m TT traffic flow queues with priorities ranging from priority 1 to priority m, as shown in FIG. 4 . In the time-sensitive traffic flow queue 200, the time-sensitive traffic flow located at the queue header is a queue header message that is sent with priority. In some embodiments, the output terminal of each time-sensitive traffic flow queue 200 is connected to the output selection unit 500 via a queue switch 400 (control gate), and the time-sensitive traffic flow is sent via the queue switch 400 and the output selection unit 500. In some embodiments, the output terminal of each time-sensitive traffic flow queue 200 is connected to the input terminal of the gate control unit 100, and provides message attribute information of the traffic flow to be currently sent to the gate control unit 100. The gate control unit 100 then generates a transmission control policy based on the message attribute information of the traffic flow to be currently sent and the scheduling table information. For example, the time-sensitive traffic flow queue 200 provides ID information of the traffic flow that is currently to be transmitted, so that the gate control unit 100 can obtain ID information of the traffic flow that is currently to be transmitted and Scheduled for transmission It determines whether the ID information of the time-sensitive traffic flow matches and generates a reserved bandwidth reuse policy.

[0028] The time-insensitive traffic flow queue 300 is for caching the time-insensitive traffic flows. There may be a plurality of time-insensitive traffic flow queues 300, and the plurality of time-insensitive traffic flow queues 300 may be arranged as n time-insensitive traffic flow queues 300, as shown in FIG. BEDifferent priorities can be set for the traffic flow queues, such as priority m+1 to priority m+n. In the time-insensitive traffic flow queue 300, the time-insensitive traffic flow located at the queue header is the queue header message that is preferentially transmitted. In some embodiments, the output terminal of each of the time-insensitive traffic flow queues 300 is connected to the output selection unit 500 via a queue switch 400 (control gate), and the time-insensitive traffic flow is transmitted via the queue switch 400 and the output selection unit 500. In some embodiments, the output terminal of each of the time-insensitive traffic flow queues 300 is connected to the input terminal of the output selection unit 500, and provides message attribute information of the traffic flow currently to be transmitted to the output selection unit 500. Thus, the output selection unit 500 generates a transmission control policy based on the message attribute information of the traffic flow currently to be transmitted and the scheduling table information. For example, the time-insensitive traffic flow queue 300 provides the message length of the traffic flow currently to be transmitted to the output selection unit 500, and the output selection unit 500 then generates a remaining time transmission policy and / or an optimized preemption control policy based on the message length of the traffic flow currently to be transmitted and the execution start time of the scheduling entry to be executed.

[0029] The queue switches 400 are also called control gates, and the number of the queue switches 400 corresponds to the number of traffic flow queues. Each queue switch 400 is connected between a traffic flow queue and an output selection unit 500. The control input terminal of the queue switch 400 is connected to the output terminal of the gate control unit 100, and controls whether to transmit the traffic flow currently to be transmitted in the corresponding traffic flow queue by switching the switch state according to the command of the gate control unit 100. Here, the traffic flow queue may be a time-sensitive traffic flow queue 200 or a time-insensitive traffic flow queue 300.

[0030] The input terminal of the output selection unit 500 is connected to the output terminal of each queue, and the output selection unit 500 is used to control the transmission of traffic flows, where the traffic flows may be time-sensitive or non-time-sensitive. In some embodiments, the input terminal of the output selection unit 500 is connected to the output terminal of the gate control unit 100 and receives scheduling table information from the gate control unit 100. The other input terminal of the output selection unit 500 is connected to the output terminal of the non-time-sensitive traffic flow queue 300 and receives the message length of the traffic flow currently to be transmitted from the non-time-sensitive traffic flow queue 300. The output selection unit 500 may generate a remaining time transmission policy and / or an optimized preemption control policy based on the message length of the traffic flow currently to be transmitted and the execution start time of the scheduling entry to be executed.

[0031] The system architecture and application scenarios described in the embodiments of the present application are intended to more clearly explain the technical solutions of the embodiments of the present application, and are not intended to be limitations on the technical solutions of the embodiments of the present application. Those skilled in the art will understand that with the evolution of system architecture and the emergence of new application scenarios, the technical solutions of the embodiments of the present application can be similarly applied to similar technical problems.

[0032] Those skilled in the art will appreciate that the system architecture shown in FIG. 4 does not constitute a limitation of the embodiments of the present application, and that the system may include more or fewer components than those shown, combine some components, or have different component arrangements.

[0033] In the system architecture shown in FIG. 4, various components can invoke data transmission programs stored therein to execute the data transmission method.

[0034] Based on the above system architecture, various embodiments of the data transmission method according to the present application are proposed. Note that in the following various embodiments, the time-sensitive traffic flow may be a time-triggered (TT) traffic flow, etc. The time-insensitive traffic flow may be a best-effort (BE) traffic flow, a rate-constrained (RC) traffic flow, etc. In the following embodiments, the time-sensitive traffic flow is a TT traffic flow and the time-insensitive traffic flow is a BE traffic flow, etc., as an example.

[0035] As shown in FIG. 5, an embodiment of the present application provides a data transmission method, and the data transmission method includes: Step S1100 of acquiring current time information; Step S1200: acquiring message attribute information of a traffic flow to be currently transmitted; Step S1300 of generating a transmission control policy based on the current time information and the message attribute information; S1400 controlling transmission of the traffic flow in the time-sensitive network according to the transmission control policy.

[0036] In some embodiments, to solve the problems of bandwidth waste and delay jitter in hybrid transmission of current time-sensitive traffic flows and non-time-sensitive traffic flows, embodiments of the present application provide a predictive hybrid transmission control policy for TSN by combining current time information and message attribute information of the traffic flow to be currently transmitted. The predictive hybrid transmission control policy (transmission control policy) includes, but is not limited to, one or more policies of a reserved bandwidth reuse policy, a remaining time transmission policy, and an optimized preemption control policy. This will be described in the following embodiments.

[0037] In some embodiments, the traffic flow to be currently transmitted may be a time-sensitive traffic flow or a time-insensitive traffic flow, where the time-sensitive traffic flow may be a time-triggered (TT) traffic flow, etc., and the time-insensitive traffic flow may be a best-effort (BE) traffic flow, a rate-constrained (RC) traffic flow, etc. The message attribute information may include one or more of traffic flow ID information of the message of the traffic flow, a message length, etc.

[0038] The embodiments of the present application generate a transmission control policy to control the transmission of traffic flows based on current time information and message attribute information of traffic flows to be currently transmitted, thereby effectively improving bandwidth utilization without compromising the real-time and reliable transmission of time-sensitive traffic flows.

[0039] In some embodiments, the traffic flow currently to be transmitted is a traffic flow that is not time sensitive, and the message attribute information includes a message length.

[0040] As shown in FIG. 6, in some embodiments, the step S1300 of generating a transmission control policy based on current time information and message attribute information includes: Step S1310: calculating a remaining transmittable message length based on the current time information and the start time of the next time-sensitive traffic flow; and step S1320 of generating a transmission control policy based on the remaining time transmittable message length and the message length.

[0041] JPEG0007733739000006.jpg130170

[0042] In some embodiments, in step S1320, a transmission control policy may be generated based on the remaining transmittable message length Δt and the message length BE.length. For example, the remaining transmittable message length Δt and the size of the message length BE.length may be compared to determine whether the remaining transmittable message length Δt is sufficient to transmit the traffic flow that is currently to be transmitted.

[0043] In some embodiments, steps S1100-S1400 may be performed in an output selection unit of the software system architecture shown in FIG.

[0044] As shown in FIG. 7, in some embodiments, before calculating the remaining transmittable message length based on the current time information and the start time of the next time-sensitive traffic flow, The method further includes a step S1330 of querying the scheduling table to obtain the start time of the next time-sensitive traffic flow.

[0045] In some embodiments, the start time oi of the next time-sensitive traffic flow may be obtained by querying a scheduling table. For example, steps S1100 to S1400 may be performed in an output selection unit of the software system architecture shown in Figure 4. The output selection unit may obtain scheduling table information of the gate control unit by communicating with the gate control unit, thereby obtaining the start time oi of the next time-sensitive traffic flow.

[0046] As shown in FIGS. 8 and 9, in some embodiments, step S1320 of generating a transmission control policy based on the remaining time and the message length can include: Step S1321: based on the remaining time transmittable message length and the message length, determine whether the remaining time transmittable message length is sufficient to transmit the traffic flow BEn-1 to be currently transmitted, and if it is sufficient, execute step S1322; if it is not sufficient, execute step S1323; and a step S1322 of transmitting the traffic flow BEn-1 currently to be transmitted; Until the remaining transmittable message length is no longer sufficient to transmit the traffic flow BEN that is currently to be transmitted. Step S1100 of acquiring current time information again; Step S1200: reacquiring message attribute information of the traffic flow to be currently transmitted; Step S1310: calculating a remaining transmittable message length based on the current time information and the start time of the next time-sensitive traffic flow; Step S1320: based on the remaining time transmittable message length and the message length, determine whether the remaining time transmittable message length is sufficient to transmit the traffic flow BE to be currently transmitted, and if it is sufficient, execute step S1322; if it is not sufficient, execute step S1323; Step S1322 of transmitting the traffic flow BEn that is currently to be transmitted and repeating steps S1100 to S1320; and step S1323, which waits until the remaining transmittable message length is used up. For example, a preemption command may be sent to wait until the remaining transmittable message length is used up before transmitting the next time-sensitive traffic flow.

[0047] In some embodiments, the transmission control policy is a remaining time transmission policy.

[0048] JPEG0007733739000007.jpg84170

[0049] Therefore, based on the fact that gaps in TT traffic flow are predictable, the remaining time transmission policy designed in the present embodiment is as follows:

[0050] JPEG0007733739000008.jpg42170

[0051] JPEG0007733739000009.jpg31170

[0052] Step 1-3: Execute step S1322, that is, send the queue header message BEn-1 of the BE traffic flow queue.

[0053] Step 1-4: Step S1310 is executed, that is, the remaining time transmittable message length Δtn=Δtn-1-BEn-1.length is updated, and step 1-2 is executed.

[0054] Step 1-5: After step S1323 is executed, that is, when the remaining transmittable message length is exhausted, the i-th entry in the scheduling table is executed with i=i+1, and the process returns to step 1-1. For example, a preemption command may be sent to exhaust the remaining transmittable message length before transmitting the next time-sensitive traffic flow.

[0055] The remaining time transmission policy attempts to transmit as many BE traffic flows as possible in the gaps in the TT traffic flows until the remaining time is insufficient to transmit a complete BE message.

[0056] The remaining time transmission policy uses the available remaining time repeatedly, and compared with the guard band policy proposed in 802.1Qbv, it can repeatedly use the gap between TT traffic flows until the remaining time is not enough to transmit the current BE traffic flow. The key improvement of this policy is that it uses the remaining time to adapt to the message length of the BE traffic flow, rather than selecting the maximum message length as a fixed length of the guard band as in the guard band policy.

[0057] In some embodiments, the step S1310 of calculating the remaining transmittable message length based on the current time information and the start time of the next time-sensitive traffic flow includes: Step S1311: calculating a remaining transmittable message length based on the current time information, the start time of the next time-sensitive traffic flow, the transmission constraint parameter, and a first calculation formula, wherein the first calculation formula is: Step S1311 includes including a remaining time transmittable message length=a transmittable message length corresponding to the difference between the start time of the next time-sensitive traffic flow and the current time information—a transmission constraint parameter.

[0058] In some embodiments, transmission constraint parameters such as IPG, SMD, preamble, and FRAG_COUNT must be taken into account to satisfy the transmission of an Ethernet message, i.e., the remaining transmittable message length minus the transmission constraint parameters is the actual available transmission time length for transmitting the BE traffic flow.

[0059] In some embodiments, the transmission constraint parameters include IPG, SMD, preamble, and FRAG_COUNT, in which case the first formula is: Remaining time transmittable message length = Transmittable message length corresponding to the difference between the start time of the next time-sensitive traffic flow and the current time information - includes IPG - SMD - preamble length - FRAG_COUNT.

[0060] In some embodiments, the IPG is 12 bytes, the preamble is 6 bytes, the SMD is 1 byte, and the FRAG_COUNT is 1 byte, totaling 20 bytes, i.e., the transmission constraint parameter is 20 bytes. In the calculation of the remaining transmittable message length in step S1310 and steps 1 to 4 above, 20 bytes must be subtracted as the transmission constraint parameter.

[0061] As shown in FIG. 10 , in some embodiments, step S1320 of generating a transmission control policy based on the remaining time and the message length includes: Step S1324: determining whether the remaining time transmittable message length is sufficient to transmit the traffic flow to be currently transmitted based on the remaining time transmittable message length and the message length; If the remaining time transmittable message length is not sufficient to transmit the traffic flow to be currently transmitted, step S1325 generates a preemption control policy based on the remaining time transmittable message length, the message length, and the preemption constraint parameters.

[0062] JPEG0007733739000010.jpg114170

[0063] In some embodiments, the optimized preemption control policy is specifically as follows:

[0064] In some embodiments, the preemption constraint parameters include a minimum transmission frame length and a minimum truncable message frame length.

[0065] In some embodiments, the preemption control policy includes step S1325-A, step S1325-B, and step S1325-C.

[0066] JPEG0007733739000011.jpg44170

[0067] JPEG0007733739000012.jpg34170

[0068] Step S1325-C: If the message length satisfies the truncable message minimum frame length and the remaining time transmittable message length satisfies the minimum transmission frame length, transmit the traffic flow to be currently transmitted, initiate a preemption command at a preset position in the remaining time transmittable message length, and stop (truncate) the transmission of the traffic flow to be currently transmitted, thereby ensuring that the next TT traffic flow is transmitted in real time. For example, if the truncable message minimum frame length is 124 bytes and the minimum transmission frame length is 64 bytes, i.e., BEN.length≧124, ΔtN≧64, transmit a part of the traffic flow to be currently transmitted before the preset position (Position) in the remaining time transmittable message length, and truncate and preempt it at the preset position (Position), thereby ensuring that the next TT traffic flow is transmitted in real time.

[0069] In some embodiments, the preemption constraint parameters further include a preemption CRC check field length.

[0070] Step S1325-C of transmitting a portion of the traffic flow to be currently transmitted at a preset position in the remaining transmittable message length includes step S1325-C1 and step S1325-C2.

[0071] Step S1325-C1: If the sum of the message length and the preemption CRC check field length is greater than or equal to the sum of the remaining time transmittable message length and the minimum transmission frame length, the preset position is the difference between the remaining time transmittable message length and the preemption CRC check field length, in which case the step of initiating a preemption command at the preset position in the remaining time transmittable message length includes initiating a preemption command after transmitting a message that is the remaining time transmittable message length minus the preemption CRC check field length.

[0072] JPEG0007733739000013.jpg86170

[0073] JPEG0007733739000014.jpg105170

[0074] As described above, taking the example where the minimum truncable message frame length is 124 bytes, the minimum transmission frame length is 64 bytes, and the preemption CRC check field length is 4 bytes, the optimized preemption control policy is specifically as follows:

[0075] JPEG0007733739000015.jpg22170

[0076] JPEG0007733739000016.jpg21170

[0077] JPEG0007733739000017.jpg39170

[0078] JPEG0007733739000018.jpg49170

[0079]

number

[0080] In some embodiments, the remaining time transmission policy and the optimized preemption control policy can be combined to obtain the following execution flow:

[0081] JPEG0007733739000020.jpg36170

[0082] JPEG0007733739000021.jpg27170

[0083] Step 2-3: Send the queue header message to the BE traffic flow queue.

[0084] JPEG0007733739000022.jpg19170

[0085] Step 2-5: Preemption is started at the Position position of the BE message according to the formula (1) of the optimized preemption control policy.

[0086] Step 2-6: When the remaining time is used up, start executing the i-th entry in the scheduling table with i=i+1, and return to step 2-1.

[0087] The optimized preemption control policy further avoids wasting bandwidth by utilizing the remaining time in the remaining time transmission policy, which is not enough to transmit a complete BE message, to transmit as many messages as possible.

[0088] In some embodiments, the optimized preemption control policy of the predictive hybrid transmission control policy is used to improve the remaining time transmission policy and further reduce bandwidth loss. The optimized preemption control policy further reduces bandwidth loss by selecting an optimal preemption location when the remaining time is not enough to completely transmit the message of the current BE traffic flow, combining the bandwidth loss reduction benefits of the 802.3BR frame preemption policy and avoiding delay jitter due to frame preemption.

[0089] Taking Example 1 as an example, the remaining time transmission policy and the optimized preemption control policy will be further explained.

[0090] As shown in Figure 9, the remaining time transmission policy and the optimized preemption control policy can be implemented in the output selection unit of the TAS, which needs to obtain the execution start time of the scheduling entry to be executed from the gate control unit and the message length of the queue header message from the BE traffic flow queue, resulting in a total of four states. Below, we will take Example 1 as an example to explain the execution process of the remaining time transmission policy and the optimized preemption control policy. Example 1

[0091] A. The structure of the scheduling table is shown in Table 1.

[0092] [Table 1]

[0093] B. Queued state a) The queue header entry {ID, length, cache pool address} stored in queue number 0 (TT traffic flow queue) is {47, 512, 0x718}. b) BE traffic flow queue number 1 stores a message to be sent that is 1518 bytes long, and queue number 2 stores a message to be sent that is 512 bytes long. c) Other BE traffic flow queues are empty.

[0094] C. The port rate is 1 Gbps, the current time is t=10000.100664 ms, and one crystal oscillation period (clk) is 8 ns. This means that the time after the next clock period is t=10000.100672 ms. At this point, the entry in Table 1 with a start time of 100 us has just been executed.

[0095] D. Under conditions A, B, and C, the process of implementing the remaining time transmission policy and the optimized preemption control policy is as follows:

[0096] JPEG0007733739000024.jpg218170

[0097] As shown in FIG. 11, step S1300 of generating a transmission control policy based on current time information and message attribute information includes steps S1340 to S1360.

[0098] Step S1340: Based on the current time information and the scheduling table, Scheduled for transmission The message attribute information of time-sensitive traffic flows is obtained, and the scheduling table is updated with the current time information and Scheduled for transmission It includes a correspondence between time-sensitive traffic flows and message attribute information. Step S1350: Message attribute information of the traffic flow to be currently transmitted; Scheduled for transmission It is determined whether there is a match with the message attribute information of the time-sensitive traffic flow. Step S1360: If there is a match, transmit the traffic flow that should currently be transmitted; if there is no match, transmit the traffic flow that is not time-sensitive.

[0099] In some embodiments, the transmission control policy is a reserved bandwidth reuse policy. In the following embodiments, the time-sensitive traffic flow is a TT traffic flow, and the time-insensitive traffic flow is a BE traffic flow.

[0100] JPEG0007733739000025.jpg61170

[0101] Therefore, based on the above predictability, the reservation bandwidth reuse policy designed in this application is as follows: Step 3-1: When the start point of the TT traffic flow is reached, first execute step S1350 to detect whether the queue header message of the TT traffic flow queue is a data flow message agreed upon in the scheduling table; if so, execute step 3-2; if not, execute step 3-3. Step 3-2: Turn on the transmission control gate of the TT traffic flow queue, and at the same time, turn off the transmission control gate of the BE traffic flow, and transmit the message of the current TT traffic flow. Step 3-3: Turn off the transmission control gate of the TT traffic flow queue, and at the same time, turn on the transmission control gate of the BE traffic flow to transmit the BE traffic flow.

[0102] The reserved bandwidth reuse policy avoids wasting reserved bandwidth by allowing BE traffic flows to reuse the reserved bandwidth when TT traffic flows are dropped. Algorithm 1 shows the algorithm flow of the reserved bandwidth reuse policy.

[0103] The embodiments of the present application establish a reserved bandwidth for a reusable TT traffic flow, and when a TT traffic flow is dropped, the reserved bandwidth reuse policy in the predictive hybrid transmission control policy can reuse the reserved bandwidth of the TT traffic flow to avoid bandwidth waste.

[0104] In some embodiments, step S1360 of transmitting the time-insensitive traffic flow includes step S1361. Step S1361: According to the priority of the non-time-sensitive traffic flows, the non-time-sensitive traffic flows with higher priority are preferentially transmitted.

[0105] In some embodiments, the message attribute information includes traffic flow ID information, or the message attribute information includes traffic flow ID information and a message length.

[0106] Example 2 will be used to further illustrate the reservation bandwidth reuse policy of the present application.

[0107] As shown in Figure 9, in some embodiments, the reserved bandwidth reuse policy may be located in the gate control unit of the TAS, and during the implementation process, it is necessary to obtain message attribute information of the TT traffic flow queue, such as queue status information, traffic flow ID information in the queue header, and message length. The reserved bandwidth reuse policy is executed at the start of one entry per scheduling table, resulting in a total of four states. The implementation process of the reserved bandwidth reuse policy is shown in Example 2 below. Example 2 A. The next two entries to be executed in the scheduling table are shown in Table 2.

[0108] [Table 2]

[0109] B. Queued state a) The queue header entry {ID, length, cache pool address} stored in queue number 0 (TT traffic flow queue) is {48, 256, 0x666}. b) There is data in all other queues (BE traffic flow queues).

[0110] C. The port rate is 1 Gbps, the current time is t=10000.199992 ms, and one crystal oscillation period (clk) is 8 ns. This means that the time after the next clock period is t=10000.2000000 ms. At this point, the entry with a start time of 200 us in Table 2 is executed.

[0111] D. Under conditions A, B, and C, the process of implementing the reservation bandwidth reuse policy is as follows: i. When time t=10000.200000ms, execute state 1, that is, read the entry with start time 200us in Table 1 to obtain TT traffic flow information {30,128}, determine that queue number 0 is not empty, and execute state 2. ii. State 2: When the header queue information {48,256,0x666} of queue number 0 is obtained, it does not match the TT traffic flow information {30,128}, indicating that the TT traffic flow has not arrived, and state 4 is executed. iii. State 4: Turn off the control gate of queue number 0, turn on the control gates of other BE traffic flow queues, and transmit BE data. iv. After sending BE data until time t=10000.500000 ms, execution of State 1 resumes. v. State 1: Read the next TT traffic flow information {48,256} in Table 1, determine that queue number 0 is not empty, and execute State 2. vi. State 2: When the header queue information {48,256,0x666} of queue number 0 is obtained, it matches the information of other TT traffic flows {48,256}, indicating that the TT traffic flow has arrived, and state 3 is executed. vii. State 3: Turn on the control gate of queue number 0, turn off the control gates of other BE traffic flow queues, and transmit the TT traffic flow. viii. From the window time 2208 ns, exhaust the TT traffic flow, turn off the control gate of queue number 0, turn on the control gate of other BE traffic flow queues, and start sending BE data. ix. Transmit BE data until the time of the next TT traffic flow in the scheduling table arrives, then execute State 1.

[0112] The embodiments of the present application generate a transmission control policy to control the transmission of traffic flows based on current time information and message attribute information of traffic flows to be currently transmitted, thereby effectively improving bandwidth utilization without compromising the real-time and reliable transmission of time-sensitive traffic flows.

[0113] Furthermore, as shown in FIG. 12, the embodiment of the present application is as follows: a time acquisition module 110 configured to acquire current time information; a message attribute acquisition module 120 configured to acquire message attribute information of a traffic flow currently to be transmitted; a policy generation module 130 configured to generate a transmission control policy based on the current time information and the message attribute information; a sending module 140 configured to control transmission of a traffic flow in a time-sensitive network according to a transmission control policy.

[0114] In some embodiments, the time acquisition module 110 is configured to perform the above step S1100, the message attribute acquisition module 120 is configured to perform the above step S1200, the policy generation module 130 is configured to perform the above step S1300, and the sending module 140 is configured to perform the above step S1400. The data transmission device in this embodiment can be applied as a data transmission device in the system architecture of the embodiment shown in Figure 4, and the data transmission method in the embodiment shown in Figure 5. That is, the data transmission device in this embodiment, the data transmission device in the system architecture of the embodiment shown in Figure 4, and the data transmission method in the embodiment shown in Figure 5 all belong to the same inventive idea, and therefore have the same realization principles and technical effects, and therefore will not be described in detail here.

[0115] The above-described device embodiments are merely schematic, and the units described as separate components may or may not be physically separated, i.e., located in one place or distributed across multiple network units. Some or all of these modules may be selected to achieve the objectives of the embodiments according to actual needs.

[0116] Furthermore, an embodiment of the present application also provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, realizes the aforementioned data transmission method.

[0117] The memory can be used as a non-transitory computer-readable storage medium to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, the memory can include high-speed random access memory, and can also include non-transitory memory such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state memory device. In some embodiments, the memory can include memory located remotely from the processor that can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, a corporate intranet, a local area network, a mobile communications network, and combinations thereof.

[0118] The electronic device in this embodiment can be applied as an electronic device in the system architecture of the embodiment shown in Fig. 4, and the electronic device in this embodiment can execute the data transmission method in the embodiment shown in Fig. 5. That is, the electronic device in this embodiment, the electronic device in the system architecture of the embodiment shown in Fig. 4, and the data transmission method in the embodiment shown in Fig. 5 all belong to the same inventive idea, and therefore these embodiments have the same realization principles and technical effects, and therefore will not be described in detail here.

[0119] The non-transitory software programs and instructions required to realize the data transmission methods of the above embodiments are stored in a memory and, when executed by a processor, perform the data transmission methods of the above embodiments, for example, method steps S1100 to S1400 of FIG. 5, method steps S1310 to S1320 of FIG. 6, method steps S1330, S1320, and S1310 of FIG. 7, method steps S1100, S1200, S1310, S1320, and S1323 of FIG. 8, method steps S1324 to S1325 of FIG. 10, and method steps S1340 to S1360 of FIG. 11.

[0120] Moreover, an embodiment of the present application further provides a computer-readable storage medium storing computer-executable instructions for performing the above data transmission method.

[0121] In some embodiments, a computer-readable storage medium stores computer-executable instructions that are executed by one processor or controller, for example, by one processor in the above embodiments, to cause the processor to perform the data transmission methods in the above embodiments, for example, method steps S1100 to S1400 of FIG. 5, method steps S1310 to S1320 of FIG. 6, method steps S1330, S1320, and S1310 of FIG. 7, method steps S1100, S1200, S1310, S1320, and S1323 of FIG. 8, method steps S1324 to S1325 of FIG. 10, and method steps S1340 to S1360 of FIG. 11.

[0122] The embodiments of the present application generate a transmission control policy and control the transmission of traffic flows based on current time information and message attribute information of traffic flows to be currently transmitted, thereby effectively improving bandwidth utilization without compromising the real-time and reliable transmission of time-sensitive traffic flows.

[0123] Those skilled in the art will understand that all or part of the steps in the methods and systems disclosed above may be implemented as software, firmware, hardware, and any suitable combination thereof. Some or all of the physical components may be implemented as software executed by a processor such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit such as an application-specific integrated circuit. Such software may be distributed on computer-readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (e.g., computer-readable instructions, data structures, program modules, or other data). Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridge, magnetic tape, magnetic disk storage or other magnetic storage device, or any other medium that can be used to store desired information and that can be accessed by a computer. Additionally, communication media typically includes computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and may include any information delivery media as known to those skilled in the art.

[0124] The above has specifically described some implementations of the embodiments of the present application, but the embodiments of the present application are not limited to the above embodiments. Those skilled in the art can make various equivalent modifications or substitutions without departing from the scope of the embodiments of the present application, and these equivalent modifications or substitutions shall be included in the scope defined by the claims of the embodiments of the present application.

Claims

1. obtaining current time information; determining a first scheduling table entry in a scheduling table corresponding to the current time information, the scheduling table including a plurality of scheduling table entries, each scheduling table entry including time information, message attribute information of a time-sensitive traffic flow, and a gate control list, the gate control list representing the state of transmission control gates of time-sensitive traffic flow queues and non-time-sensitive traffic flow queues, and the message attribute information of the time-sensitive traffic flow including traffic flow ID information and a message length; obtaining a first time-sensitive traffic flow from the time-sensitive traffic flow queue based on the gate control list of the first scheduling table entry, and obtaining message attribute information of the first time-sensitive traffic flow; determining whether message attribute information of the time-sensitive traffic flow in the first scheduling table entry matches message attribute information of the first time-sensitive traffic flow; If there is a match, transmitting the first time-sensitive traffic flow, and if there is no match, turning off a transmission control gate of the time-sensitive traffic flow queue in which the first time-sensitive traffic flow is located and turning on a transmission control gate of the non-time-sensitive traffic flow queue to transmit the non-time-sensitive traffic flow; A data transmission method comprising:

2. The step of transmitting a time-insensitive traffic flow comprises: calculating a remaining transmittable message length based on the current time information and a start time of a next time-sensitive traffic flow; obtaining the non-time sensitive traffic flow from the non-time sensitive traffic flow queue; and generating a transmission control policy based on the remaining time transmittable message length and the message length of the non-time-sensitive traffic flow.

3. generating a transmission control policy based on the remaining transmittable message length and the message length of the non-time-sensitive traffic flow, determining whether the remaining time transmittable message length is sufficient to transmit the time-insensitive traffic flow based on the remaining time transmittable message length and a message length of the time-insensitive traffic flow; if so, transmitting the non-time-sensitive traffic flow; and acquiring current time information again until the remaining time transmittable message length is no longer sufficient to transmit the non-time-sensitive traffic flow. reacquiring message attribute information for the non-time-sensitive traffic flow; calculating the remaining transmittable message length based on the current time information and a start time of a next time-sensitive traffic flow; determining whether the remaining time transmittable message length is sufficient to transmit the time-insensitive traffic flow based on the remaining time transmittable message length and a message length of the time-insensitive traffic flow; If so, repeating the step of transmitting the non-time-sensitive traffic flow.

4. The step of calculating the remaining transmittable message length based on the current time information and the start time of the next time-sensitive traffic flow includes: calculating the remaining transmittable message length based on the current time information, a start time of the next time-sensitive traffic flow, a transmission constraint parameter, and a first calculation formula; The first calculation formula is 4. The data transmission method according to claim 2, further comprising a transmission constraint parameter, wherein the remaining time transmittable message length=the transmittable message length corresponding to the difference between the start time of the next time-sensitive traffic flow and the current time information.

5. If the transmission constraint parameters include an Interpacket Gap (IPG), a Start mPacket Delimiter (SMD), a preamble, and a Fragment Count (FRAG_COUNT), The first calculation formula is The data transmission method of claim 4, comprising: remaining time transmittable message length=transmittable message length corresponding to the difference between the start time of the next time-sensitive traffic flow and the current time information−IPG-SMD-preamble length−FRAG_COUNT.

6. before the step of calculating a remaining transmittable message length based on the current time information and a start time of a next time-sensitive traffic flow, 3. The data transmission method of claim 2, further comprising the step of querying the scheduling table to obtain a start time of a next time-sensitive traffic flow.

7. generating a transmission control policy based on the remaining transmittable message length and the message length of the non-time-sensitive traffic flow, determining whether the remaining time transmittable message length is sufficient to transmit the time-insensitive traffic flow based on the remaining time transmittable message length and a message length of the time-insensitive traffic flow; and if the remaining time transmittable message length is not sufficient to transmit the non-time-sensitive traffic flow, generating a preemption control policy based on the remaining time transmittable message length, the message length of the non-time-sensitive traffic flow, and a preemption constraint parameter.

8. The preemption constraint parameters include a minimum transmission frame length and a minimum truncable message frame length; The preemption control policy comprises: if the message length does not satisfy the minimum truncatable message frame length, using up the remaining transmittable message length; If the remaining transmittable message length does not satisfy the minimum transmission frame length, using up the remaining transmittable message length; 8. The data transmission method of claim 7, further comprising the steps of: transmitting the non-time-sensitive traffic flow if the message length satisfies a minimum truncateable message frame length and the remaining time transmittable message length satisfies a minimum transmission frame length; initiating a preemption command at a preset position in the remaining time transmittable message length; and stopping transmission of the non-time-sensitive traffic flow.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, realizes the data transmission method according to any one of claims 1 to 8.

10. A computer readable storage medium having stored thereon computer executable instructions, said computer executable instructions performing the data transmission method of any one of claims 1 to 8.

Citation Information

Patent Citations

  • Method for traffic shaping of data frames in network and its device and computer program product

    JP2017532870A

  • Transmission device, communication device, communication system, transmission method, and program

    JP2020088514A

  • Method, entity and program for transmitting communication signal frames

    JP2020507245A

  • Packet Forwarding Method, Forwarding Device, and Network Device

    US20200259755A1