An industrial internet of things deterministic low latency transmission system
Patent Information
- Application Number
- CN202610974775.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-01
- Publication Date
- 2026-09-22
AI Technical Summary
该类方案主要解决不同TSN设备的统一配置、调度计算和配置下发问题,可以为业务流分配相应的网络资源和确定性传输参数,但在工业对象状态快速变化、控制方向明确且旧数据可能在尚未发送时即已失去控制意义的场合,仍然通常将已入队分组作为独立待发送对象处理,容易造成已过时状态占用预留时隙或后续节点缓存资源
[0018]本发明通过数据接入单元、标识生成单元、确定性队列单元、队列状态获取单元、替换单元、发送控制单元和接收处理单元的配合,为来自工业对象的工业数据分组生成包括工业对象标识、业务流标识和控制方向标识的时效关联标识,并在新分组入队前查找相同时效关联标识且尚未完成发送的在先分组,从而能够以同一工业对象、同一业务流及同一控制方向为粒度识别具有替代关系的时效数据,避免仅按普通分组序列进行排队所导致的过时数据继续占用发送机会。
Smart Images

Figure CN122802451A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of industrial Internet of Things (IoT) communication technology, specifically to an industrial IoT deterministic low-latency transmission system. Background Technology
[0002] In existing technologies, scenarios such as industrial IoT production lines, motion control, and closed-loop equipment status adjustment have high requirements for low latency, low jitter, and determinism in data transmission. Typically, periodic or event-triggered data between sensors, controllers, and actuators needs to be transmitted according to predetermined time slots, queues, or priorities to avoid random queuing, sudden congestion, and uncertain transmission times caused by the best-effort transmission of ordinary Ethernet. Patent application CN117424921A discloses a distributed control system and method for large-scale deterministic networks. It reduces end-to-end data forwarding latency through deterministic autonomous domain partitioning and intra-domain and inter-domain routing strategies, addressing the problems of high latency and jitter in open, large-scale deterministic networks. This type of solution can improve the deterministic service carrying capacity from the perspectives of network domain partitioning, path selection, and global forwarding control. However, its focus is on routing control and cross-domain forwarding organization, and it does not provide a mechanism for handling the validity of data within queues when industrial control data is repeatedly updated with new state data before the arrival of the same deterministic transmission opportunity.
[0003] Patent application CN115150274A discloses a unified configuration method, system, and storage medium for time-sensitive network (TSN) devices. It obtains TSN terminal station service traffic information through a centralized user configuration (CUC), performs service traffic modeling, scheduling calculations, and configuration information modeling through a centralized network configuration (CNC), and utilizes methods such as NETCONF and OPC UA to achieve unified configuration of network devices and field devices, thereby ensuring low-latency, deterministic transmission of different types of services in industrial scenarios. This type of solution mainly addresses the unified configuration, scheduling calculation, and configuration distribution problems of different TSN devices, and can allocate corresponding network resources and deterministic transmission parameters for service flows. However, in situations where the state of industrial objects changes rapidly, the control direction is clear, and old data may lose its control significance before it is even sent, queued packets are still typically treated as independent objects to be sent, which can easily lead to outdated states occupying reserved time slots or subsequent node cache resources.
[0004] Therefore, even with deterministic queues and time slots already established, the following technical problems still exist: when a new packet from the same industrial object, the same business flow, and with the same control direction arrives before the previous packet is sent, simply adding it to the queue will increase the occupation of subsequent transmission time slots and amplify queuing delays; directly deleting the previous packet may disrupt the existing deterministic scheduling results or cause inconsistencies in the scheduling bearer information; if old data is filtered out on the receiving side solely based on sequence number or timestamp, the old packet may have already consumed link, buffer, and retransmission resources. Therefore, a deterministic low-latency transmission system for the Industrial Internet of Things (IIoT) is needed that can perform pre-queue identification, status judgment, payload replacement, and receiver failure handling for similar time-sensitive data without disrupting existing deterministic transmission time slots and queue positions. Summary of the Invention
[0005] The purpose of this invention is to provide a deterministic low-latency transmission system for the Industrial Internet of Things (IIoT), thereby addressing some of the drawbacks and shortcomings mentioned in the background art.
[0006] The present invention adopts the following technical solution to solve the above-mentioned technical problems:
[0007] An industrial Internet of Things (IIoT) deterministic low-latency transmission system includes a data access unit, an identifier generation unit, a deterministic queue unit, a queue status acquisition unit, a replacement unit, a transmission control unit, and a reception processing unit. The identifier generation unit generates time-related identifiers for industrial data packets from industrial objects. The time-related identifiers include an industrial object identifier, a business flow identifier, and a control direction identifier. Before a new packet is enqueued, the queue status acquisition unit searches for a prior packet with the same time-related identifier that has not yet been transmitted in the deterministic queue unit and obtains the transmission status of the prior packet.
[0008] When the preceding packet has not entered the media access transmission state, the replacement unit retains the queue position and corresponding transmission time slot of the preceding packet, and writes the payload and timeliness field of the new packet into the queue position; when the preceding packet has entered the media access transmission state, the transmission control unit configures the new packet to the next available deterministic transmission time slot after the current transmission time slot; the receiving processing unit receives valid packets according to the timeliness association identifier and timeliness field, and marks similar packets with timeliness fields earlier than those of already received valid packets as invalid.
[0009] Furthermore, the queue position of the deterministic queue unit consists of a scheduling bearer area and a data bearer area. The scheduling bearer area has fixed transmission time slots, port numbers, and transmission order, while the data bearer area stores payload and timeliness fields. The replacement unit rewrites the data bearer area so that new packets inherit the transmission opportunities of previous packets without changing the existing deterministic scheduling results.
[0010] Furthermore, when the transmission control unit configures the new packet to the next available deterministic transmission slot after the current transmission slot, it writes a failure indication pointing to the prior packet into the new packet; after the intermediate forwarding node in the system or the receiving processing unit obtains the failure indication, it stops buffering, retransmitting or effectively receiving the prior packet that has the same time-related identifier and whose time-related field is earlier than the time-related field of the new packet.
[0011] Furthermore, when multiple new packets with the same time-related identifier enter the system sequentially before the same transmission slot arrives, the replacement unit performs continuous coverage on the same queue position and retains the payload and time-related fields after the last coverage; after the number of coverages reaches a preset coverage threshold, the transmission control unit will configure the new packets entering the system after reaching the threshold to the next available deterministic transmission slot.
[0012] Furthermore, the data bearer area is configured with a current bearer area and a backup bearer area. The replacement unit writes the payload and timeliness fields of the new packet into the backup bearer area, and switches the valid bearer pointer after writing is completed, so that the transmission time slot corresponding to the scheduling bearer area reads the switched data bearer area.
[0013] Furthermore, the queue position is set with a data version number corresponding to the data bearer area, the replacement unit updates the data version number each time it rewrites the data bearer area, and the transmission control unit sends the payload corresponding to the data version number and the valid bearer pointer in the queue position when the transmission time slot arrives.
[0014] Furthermore, when the sending control unit has prefetched the queue position but has not entered the media access sending state, the replacement unit sends a content refresh instruction to the sending control unit, so that the sending control unit keeps the scheduling bearer area unchanged and rereads the data bearer area.
[0015] Furthermore, the replacement unit records the first and last time-of-use fields of the newly covered packets during the continuous coverage process, and generates a coverage span field; the transmission control unit sends the coverage span field along with the payload after the last coverage, so that the receiving processing unit marks the intermediate new packets whose time-of-use fields are within the range of the coverage span field and which are not sent as the payload as updated and invalid.
[0016] Furthermore, after the number of coverages reaches a preset coverage threshold, the transmission control unit sets a coverage cutoff state for the current queue position. The queue position in the coverage cutoff state allows the transmission of the payload and timeliness field after the last coverage. After the threshold is reached, new packets entering the system are configured to the queue position corresponding to the next available deterministic transmission slot.
[0017] Furthermore, after receiving the coverage span field, the receiving processing unit removes locally cached packets whose expiration fields fall within the range defined by the coverage span field from the set of cached packets to be processed, and generates a span confirmation field; the sending control unit cancels the sending of the new covered packets in the deterministic queue unit that correspond to the coverage span field and have not yet entered the media access sending state, based on the span confirmation field.
[0018] This invention, through the cooperation of a data access unit, an identifier generation unit, a deterministic queue unit, a queue status acquisition unit, a replacement unit, a transmission control unit, and a reception processing unit, generates time-related identifiers for industrial data packets from industrial objects, including industrial object identifiers, business flow identifiers, and control direction identifiers. Before a new packet is enqueued, it searches for prior packets with the same time-related identifier that have not yet been transmitted. This enables the identification of time-sensitive data with substitution relationships at the granularity of the same industrial object, the same business flow, and the same control direction, avoiding the continued occupation of transmission opportunities by outdated data caused by queuing according to ordinary packet sequences.
[0019] When an earlier packet has not yet entered the media access transmission state, this invention retains the queue position and corresponding transmission slot of the earlier packet, and only writes the payload and time-of-flight field of the new packet into that queue position. This allows newer industrial state data to inherit existing deterministic transmission opportunities, reducing queuing and time-of-flight waste without recalculating scheduling results. When an earlier packet has already entered the media access transmission state, the new packet is configured to the next available deterministic transmission slot after the current transmission slot, avoiding conflicts with the ongoing transmission process. The receiving and processing unit receives valid packets based on the time-of-flight association identifier and the time-of-flight field, and marks similar packets earlier than the received valid packets as invalid. This reduces the impact of invalid old data on the control closed loop and improves the determinism, real-time performance, and payload utilization of industrial IoT transmission. Attached Figure Description
[0020] Figure 1 This is a flowchart illustrating the deterministic low-latency transmission process of the present invention.
[0021] Figure 2 This is a comparison chart of the waiting time for sending opportunity inheritance in Embodiment 1 of the present invention.
[0022] Figure 3 This is a diagram showing the replacement relationship between the scheduling bearer area and the data bearer area in Embodiment 1 of the present invention.
[0023] Figure 4 This is a diagram confirming the consistency between the valid bearer pointer and the data version in Embodiment 1 of the present invention.
[0024] Figure 5 This is a diagram showing the continuous coverage and coverage cutoff states in Embodiment 2 of the present invention.
[0025] Figure 6 This is a diagram illustrating the failure handling of the coverage span field in Embodiment 2 of the present invention.
[0026] Figure 7 This is a diagram showing the cancellation of sending resources in Embodiment 2 of the present invention. Detailed Implementation
[0027] As attached Figure 1 As shown, in this embodiment, the Industrial Internet of Things (IIoT) deterministic low-latency transmission system is used for deterministic scheduling and low-latency transmission of data packets generated in the industrial field. After receiving industrial data packets from an industrial object, the data access unit sends the industrial data packets to the identifier generation unit. The identifier generation unit generates a time-related identifier based on the industrial object, business flow, and control direction, enabling multiple data packets under the same industrial object, business flow, and control direction to be identified as similar packets. Specifically, the identifier generation unit can read the industrial object number, business flow number, and control direction field, and generate a time-related identifier according to a pre-configured field combination rule or identifier mapping table; the time-related field can be formed by the sampling sequence number, control cycle number, or sampling timestamp, and written along with the industrial data packets, so that data packets arriving later with updated time-related information can be identified by the receiving side. Before a new packet enters the deterministic queue unit, the queue status acquisition unit searches for an earlier packet with the same time-related identifier that has not yet been sent in the deterministic queue unit, based on the time-related identifier carried by the new packet, and reads the sending status of the earlier packet.
[0028] When the queue status acquisition unit determines that a prior packet has not yet entered the media access transmission state, it indicates that the prior packet has not yet been actually transmitted. Transmission states can include queuing waiting state, prefetched but not transmitted state, and media access transmission state. The media access transmission state can be determined by a transmission start indication, port occupancy indication, or physical transmission enable signal issued by the media access controller. At this time, the replacement unit retains the queue position and corresponding transmission time slot of the prior packet, without changing the deterministic scheduling result, but instead writes the payload and timeliness fields of the new packet into that queue position. In this way, the new packet can inherit the transmission opportunities already obtained by the prior packet, thereby reducing the waiting time caused by requeuing. When a prior packet has entered the media access transmission state, it indicates that the prior packet is in the transmission execution phase. At this time, the transmission control unit no longer performs a replacement of the queue position, but instead configures the new packet to the next available deterministic transmission time slot after the current transmission time slot to maintain the determinism and stability of the transmission process. When receiving data, the receiving and processing unit identifies valid packets in the same category based on the timeliness association identifier and the timeliness field, and marks the same category packets whose timeliness field is earlier than that of the received valid packets as invalid, thereby enabling the receiving end to use the data with the updated timeliness for subsequent processing.
[0029] The queue position in a deterministic queue unit can be divided into a scheduling bearer area and a data bearer area. The scheduling bearer area stores scheduling information related to deterministic transmission, including transmission time slots, port numbers, and transmission order. The data bearer area stores the payload and timeliness fields of the packets to be transmitted. By storing scheduling information and data content in separate areas, the system can maintain the transmission time slots, port numbers, and transmission order in the scheduling bearer area unchanged when performing packet replacement; only the payload and timeliness fields in the data bearer area are rewritten by the replacement unit. The scheduling bearer area can also store queue position identifiers and time slot validity flags, while the data bearer area can store timeliness association identifiers, enabling the replacement unit to confirm that the new packet belongs to the same class as the previous packet in that queue position before rewriting. In this way, the new packet can inherit the transmission opportunities already occupied by the previous packet without changing the existing deterministic scheduling results, thereby reducing the waiting time caused by re-applying for transmission time slots.
[0030] When the transmission control unit determines that a new packet cannot replace a prior packet and needs to allocate the new packet to the next available deterministic transmission slot after the current transmission slot, the transmission control unit writes a failure indication pointing to the prior packet to the new packet. This failure indication indicates that a prior packet with the same expiration association identifier as the new packet, but whose expiration field is earlier than the new packet's expiration field, is no longer used as valid data. The failure indication may include the expiration association identifier, the expiration field of the prior packet, and the queue or buffer position of the prior packet, enabling intermediate forwarding nodes and the receiving processing unit to locate the packet requiring failure processing. After receiving the failure indication, intermediate forwarding nodes in the system can stop buffering or retransmitting the prior packet. After receiving the failure indication, the receiving processing unit can stop receiving the prior packet as a valid packet. Thus, the system can reduce the continued occupation of expired data in the network and allow the receiving side to prioritize packets with updated expiration dates.
[0031] When multiple new packets with the same time-related identifier enter the system sequentially before the same transmission slot arrives, the replacement unit can perform continuous coverage on the same queue position. During each coverage, the replacement unit writes the payload and time-related fields of the later-entering new packets into the data bearer area of that queue position, ensuring that the queue position retains the payload and time-related fields after the last coverage. To prevent the same transmission opportunity from being covered multiple times before transmission, the transmission control unit can count the number of consecutive coverages. When the number of coverages reaches a preset coverage threshold, the transmission control unit stops writing new packets entering the system into the current queue position and instead allocates them to the next available deterministic transmission slot. The preset coverage threshold can be written into a parameter table during system initialization and can be configured based on industrial control cycles, link jitter tolerance, and service priorities. In this way, the system can both reduce the probability of old data transmission using the coverage mechanism and limit the impact of continuous coverage on transmission stability.
[0032] The data bearer area can be configured with a current bearer area and a backup bearer area. The current bearer area stores the currently valid payload and timeliness fields, while the backup bearer area receives the payload and timeliness fields of new packets written by the replacement unit. When the replacement unit needs to perform packet replacement, it first writes the payload and timeliness fields of the new packet to the backup bearer area. After writing is complete, it switches the valid bearer pointer so that the valid bearer pointer points to the backup bearer area where the writing is complete. The completion of the writing can be determined by a write completion flag, a verification pass flag, or a completion notification sent by the replacement unit to the transmission control unit. When the transmission time slot corresponding to the scheduled bearer area arrives, the transmission control unit reads the switched data bearer area according to the valid bearer pointer. In this way, the system can avoid reading data that has not been updated during the writing process, thereby ensuring the consistency of the transmitted payload and the timeliness fields.
[0033] Furthermore, the queue position can be set with a data version number corresponding to the data bearer area. Each time the replacement unit rewrites the data bearer area, it synchronously updates the data version number of that data bearer area, enabling data at different writing stages to be distinguished. When the transmission time slot arrives, the transmission control unit reads the data bearer area corresponding to the valid bearer pointer in that queue position and transmits the payload corresponding to the data version number in that data bearer area. The transmission control unit can also reconfirm that the valid bearer pointer has not changed after reading the data version number; if it has changed, it rereads the switched data bearer area. Through the cooperation of the data version number and the valid bearer pointer, the transmission control unit can confirm that the currently read data is valid data after replacement, thereby reducing the possibility of the old payload being mistakenly transmitted.
[0034] Even when the transmission control unit has prefetched the queue position but has not yet entered the media access transmission state, the replacement unit can still update the data bearer area in that queue position. In this case, after completing the data bearer area update, the replacement unit sends a content refresh instruction to the transmission control unit. Upon receiving the content refresh instruction, the transmission control unit maintains the transmission slot, port number, and transmission order in the scheduling bearer area unchanged and rereads the payload and timeliness fields in the data bearer area. The content refresh instruction can carry the queue position identifier and the updated data version number, enabling the transmission control unit to confirm the queue position that needs to be reread and the corresponding data bearer area. Therefore, even if the transmission control unit has completed queue position prefetching, as long as it has not yet entered the media access transmission state, the system can still replace the original content with the updated packet content without disrupting the deterministic scheduling arrangement.
[0035] When performing continuous coverage on the same queue position, the replacement unit can record the timeliness field of the newly covered packets during the continuous coverage process. Specifically, the replacement unit records the first timeliness field corresponding to the start of continuous coverage and the last timeliness field corresponding to the end of continuous coverage, generating a coverage span field from the first and last timeliness fields. This coverage span field indicates the range of data that has been updated and replaced by subsequent new packets during the continuous coverage process. The coverage span field can also carry a timeliness association identifier, enabling the receiving processing unit to perform span failure processing only on data packets under the same industrial object, the same business flow, and the same control direction. When the transmitting control unit transmits the payload after the last coverage, it sends the coverage span field along with the payload. After receiving the coverage span field, the receiving processing unit can identify intermediate new packets within the range defined by the coverage span field and mark intermediate new packets that are not sent as payloads as updated and failed. Thus, the receiving end can clearly identify which packets have been replaced by updated data, avoiding the use of intermediate data during the continuous coverage process as valid data in subsequent processing.
[0036] Furthermore, the transmission control unit can count the number of consecutive coverages at the same queue position. When the number of coverages reaches a preset coverage threshold, the transmission control unit sets a coverage cutoff state for the current queue position. The queue position in the coverage cutoff state is used to transmit the payload and timeliness fields after the last coverage. The coverage cutoff state can be stored in the status field of the queue position and cleared after transmission is completed or the queue position is released. For new packets entering the system after reaching the preset coverage threshold, the transmission control unit no longer writes them to the current queue position, but instead configures them to the queue position corresponding to the next available deterministic transmission slot. In this way, the system can limit the number of consecutive coverages, allowing the current transmission slot to be executed according to the deterministic scheduling result, while allocating new deterministic transmission opportunities for subsequently arriving new packets.
[0037] After receiving the coverage span field, the receiving processing unit can also check the packets in its local cache. For packets already cached locally and whose expiration fields fall within the range defined by the coverage span field, the receiving processing unit removes them from the set of pending cached packets and generates a span confirmation field. The span confirmation field indicates that the receiving side has completed the invalidation processing of the corresponding packet based on the coverage span field. The span confirmation field can carry an expiration association identifier and the processed coverage span field, enabling the sending control unit to map it to the newly covered packets in the deterministic queue unit. After obtaining the span confirmation field, the sending control unit queries the deterministic queue unit for the newly covered packets corresponding to the coverage span field. For newly covered packets that have not yet entered the media access transmission state, the sending control unit cancels their transmission, reducing the transmission resources occupied by updated invalid packets, thereby improving data timeliness and transmission efficiency in deterministic transmission scenarios.
[0038] Example 1:
[0039] This embodiment provides a deterministic low-latency transmission system for industrial IoT, used for data packet transmission between a controller and servo drive A in an industrial site. The system includes a data access unit, an identifier generation unit, a deterministic queue unit, a queue status acquisition unit, a replacement unit, a transmission control unit, and a receiving processing unit. These units work together to achieve deterministic scheduling, low-latency transmission, and suppression of invalid data packets in the industrial data network.
[0040] After receiving industrial data packets from the controller, the data access unit sends the industrial data packets to the identifier generation unit. The identifier generation unit reads the industrial object identifier, the business flow identifier, and the control direction identifier to generate a time-related identifier. In this embodiment, the industrial object is servo drive A, the business flow is the position control flow, and the control direction is from the controller to the actuator. Therefore, data packets belonging to the same servo drive A, the same position control flow, and the same control direction are identified as the same type of packets.
[0041] The identifier generation unit also writes a timeliness field to the industrial data packets. This timeliness field can be formed using the control cycle number, sampling number, or sampling timestamp to indicate the order of the data packets. During subsequent reception, the receiving and processing unit identifies similar packets based on the timeliness association identifier and determines the valid packets among the similar packets based on the timeliness field, giving priority to packets with newer timeliness fields in industrial control processing.
[0042] Each queue position in a deterministic queue unit includes a scheduling bearer area and a data bearer area. The scheduling bearer area is used to fix the transmission time slots, port numbers, and transmission order, while the data bearer area is used to store payload and timeliness fields. By storing the scheduling information and data content separately, the replacement unit only rewrites the data bearer area when performing packet replacement, without changing the already determined transmission time slots, port numbers, and transmission order in the scheduling bearer area. Figure 3 In the middle, the upper scheduling bearer area remains continuous before and after replacement, while the lower current bearer area and spare bearer area carry the P1 load and P2 load respectively. The spare bearer area becomes a valid read object by switching the pointer after the write is completed, thus reflecting the queue structure in which scheduling is fixed and content is updated.
[0043] Before a new packet is enqueued, the queue status acquisition unit searches for a prior packet with the same time-related identifier that has not yet been sent in the deterministic queue unit, based on the time-related identifier carried by the new packet, and reads the sending status of that prior packet. The sending status includes queuing waiting status, prefetched but not sent status, and media access sending status. When a prior packet has not entered the media access sending status, it indicates that the prior packet has not yet been actually sent. The replacement unit retains the queue position and corresponding sending time slot of the prior packet and writes the payload and time-related fields of the new packet into the data bearer area of that queue position.
[0044] In this embodiment, the deterministic transmission period is 1ms, and each period is divided into 8 deterministic transmission slots. The prior packet P1 is originally configured in the 5th transmission slot of the current period. The new packet P2 enters the system 0.18ms before the arrival of the 5th transmission slot, and P2 has the same time-related identifier as P1. If P1 has not yet entered the medium access transmission state, the replacement unit writes the payload and time-related fields of P2 into the data bearer area of the queue position where P1 is located, so that P2 inherits the 5th transmission slot already obtained by P1. Figure 2 The comparison of two sets of waiting time bars shows that when P2 is not replaced, it needs to enter the next cycle, resulting in a longer waiting time. When replaced, P2 directly takes over the current time slot, and the vertical difference corresponds to the reduced waiting time.
[0045] To illustrate the reduction in waiting time resulting from this inherited sending opportunity, the following calculation formula is used:
[0046]
[0047] In the formula, ΔT represents the reduced waiting time that the new packet inherits from the previous packet's transmission opportunity. This indicates the waiting time when a new packet does not replace an earlier packet and enters the next available deterministic transmission slot. This indicates the waiting time when a new packet replaces an earlier packet and inherits the current queue position. Since P2 enters the system 0.18ms before the arrival of the 5th transmission slot in the current cycle, if P2 does not replace P1, it needs to wait for the remaining 0.18ms of the current cycle and the 1ms corresponding to the same 5th transmission slot in the next cycle. The time is 1.18ms; if P2 replaces P1 and inherits the 5th transmission slot of the current period, then it only needs to wait 0.18ms before the arrival of the 5th transmission slot of the current period, therefore... It is 0.18ms. Substituting, we get:
[0048]
[0049] Therefore, without changing the existing deterministic scheduling result, P2 reduces the waiting time by 1.00ms by inheriting the transmission opportunity of P1, thereby improving the timeliness of industrial control data and avoiding queuing delay caused by re-applying for deterministic transmission time slots.
[0050] When the queue status acquisition unit determines that a prior packet has entered the medium access transmission state, the transmission control unit no longer allows the replacement unit to rewrite the queue position. Instead, it allocates the new packet to the next available deterministic transmission time slot after the current transmission time slot. Simultaneously, the transmission control unit writes a failure indication to the new packet. This failure indication points to a prior packet with the same time-related identifier but whose time-related field is earlier than the new packet's time-related field. Upon receiving this failure indication, the intermediate forwarding node or receiving processing unit stops buffering, retransmitting, or effectively receiving the corresponding prior packet, thereby reducing the continued occupation of transmission resources by old data.
[0051] To prevent the transmission control unit from reading incompletely updated data when the replacement unit writes to the data bearer area, the data bearer area is divided into a current bearer area and a backup bearer area. The current bearer area is used to store the currently valid payload and timing fields, while the backup bearer area is used to receive the payload and timing fields of new packets. The replacement unit first writes the payload and timing fields of P2 to the backup bearer area. After writing, it switches the valid bearer pointer, so that the transmission control unit reads the switched data bearer area when the 5th transmission time slot arrives. Figure 3 The arrow pointing from the current bearer area to the backup bearer area in the middle indicates the handover process, and the unchanged transmission time slot, port number and transmission order at the bottom further indicate that the replacement action will not disrupt the original deterministic scheduling arrangement.
[0052] The queue position is also set with a data version number corresponding to the data bearer area. The replacement unit updates the data version number synchronously each time it rewrites the data bearer area. In this embodiment, the data version number of the data bearer area where P1 is located is V12. After the replacement unit writes P2 into the spare bearer area, it updates the data version number to V13 and switches the valid bearer pointer after the write is complete. The transmission control unit reads the data bearer area corresponding to the valid bearer pointer when the transmission time slot arrives and transmits the payload corresponding to data version number V13. Figure 4 The transmission control process is divided into four stages: prefetch, refresh, reread, and transmission. During the refresh period, the version number changes from V12 to V13. Subsequently, both the reread and transmission stages maintain V13, indicating that the object read by the transmission control unit is consistent with the final transmission object.
[0053] To illustrate the data version consistency verification, the following calculation formula is used:
[0054]
[0055] In the formula, G represents the difference between the version read by the sending control unit and the actual version sent. This indicates the data version number corresponding to the valid bearer pointer when the transmission slot arrives. This indicates the data version number reread after the send control unit prefetches. When the send control unit receives a content refresh instruction after the prefetch queue position, it rereads the data bearer area and obtains the data version number V13. The data version number corresponding to the valid bearer pointer during transmission is also V13. Substituting this, we can obtain:
[0056]
[0057] When G is 0, it indicates that the data version reread by the transmission control unit is consistent with the actual data version transmitted, and the transmitted payload is the replaced P2 payload, not the old P1 payload. (Combined with...) Figure 4 The version consistency interval between the reread V13 and the transmit V13 indicates that, through the coordination of the effective bearer pointer, data version number, and content refresh indicator, even if the transmit control unit has prefetched the queue position, as long as it has not entered the media access transmit state, the system can still refresh the data bearer content while keeping the scheduled bearer area unchanged, thus taking into account both deterministic transmission and low-latency data updates.
[0058] Example 2:
[0059] This embodiment provides a deterministic low-latency transmission system for industrial IoT, used for transmitting angle feedback data of robotic arm joint J2 in an industrial site of Unit A. The system includes a data access unit, an identifier generation unit, a deterministic queue unit, a queue status acquisition unit, a replacement unit, a transmission control unit, and a reception processing unit. It is suitable for scenarios where multiple similar feedback packets continuously enter the system before arriving in the same transmission time slot.
[0060] After receiving the industrial data packets uploaded by the robotic arm joint J2, the data access unit sends the industrial data packets to the identifier generation unit. The identifier generation unit generates a time-related identifier based on the industrial object identifier, the business flow identifier, and the control direction identifier. In this embodiment, the industrial object is the robotic arm joint J2, the business flow is the joint angle feedback flow, and the control direction is from the actuator to the controller. Data packets with the same identifier combination are identified as the same type of packet.
[0061] The identifier generation unit also writes a timeliness field for each group of the same type, which is used to characterize the order of the feedback data. After receiving the same group of the same type, the receiving and processing unit determines the valid group based on the timeliness field and invalidates the group that has been replaced by updated data, so that the controller side adopts the newer joint angle feedback data.
[0062] When multiple new packets with the same time-related identifier enter the system sequentially before the same transmission time slot arrives, the queue status acquisition unit searches for prior packets of the same type that have not yet been transmitted in the deterministic queue unit. If the prior packet has not entered the media access transmission state, the replacement unit performs continuous coverage on the same queue position. Each coverage writes the payload and time-related fields of the newly entered packets into the data bearer area of that queue position, so that the queue position ultimately retains the payload and time-related fields after the last coverage. Figure 5 In the process, Q21 to Q24 enter sequentially along the increasing direction of the timeliness field, and the number of consecutive coverages increases from 0 to 3. When the number of coverages reaches the threshold line, a coverage cutoff state is formed, and Q24 is retained as the final transmission packet for the current queue position.
[0063] In this embodiment, before the arrival of the same deterministic transmission time slot, the robotic arm joint J2 sequentially generates new packets Q21, Q22, Q23, and Q24. These four packets have the same time-related identifier, with corresponding time-related fields of 2101, 2102, 2103, and 2104, respectively. The replacement unit sequentially performs overwriting, ensuring that the current queue position ultimately retains the payload and time-related fields of Q24. Q21, Q22, and Q23, as intermediate packets replaced by subsequent feedback data, enter the failure handling range.
[0064] The transmission control unit counts the number of consecutive coverages at the same queue position. With a preset coverage threshold of 3, Q22 covering Q21 is recorded as the 1st coverage, Q23 covering Q22 as the 2nd coverage, and Q24 covering Q23 as the 3rd coverage. When the number of consecutive coverages reaches this threshold, the transmission control unit sets a coverage cutoff state for the current queue position. Queues in the coverage cutoff state are allowed to transmit the Q24 payload and timeliness field after the last coverage. New packets entering the system after reaching the threshold are no longer written to the current queue position and are instead allocated to the queue position corresponding to the next available deterministic transmission slot. Figure 5 The shaded area in the image corresponds to the final retention phase after the coverage deadline, indicating that the current queue position no longer accepts further coverage and remains Q24 to be sent.
[0065] During continuous coverage, the replacement unit records the first and last timeliness fields of the newly covered packets. In this embodiment, the first covered timeliness field is 2101, and the last covered timeliness field is 2103. The replacement unit generates a coverage span field based on these two values. This coverage span field, together with the timeliness association identifier, is used to limit the range of similar packets that need to be invalidated on the receiving side. Figure 6 In this context, the span between 2101 and 2103 is marked as the failure handling range, while Q24 is located outside the span range and is used as a valid transmission payload, thus enabling the receiving side to distinguish between packets that are updated and replaced and packets that are ultimately retained.
[0066] To determine the number of intermediate groups requiring failure handling within the coverage span field limit, the following formula is used:
[0067]
[0068] In the formula, N represents the number of groups that need to be marked as updated and invalid within the coverage span field. This indicates the sequence number corresponding to the first time-sensitive field in the coverage span field. This indicates the sequence number corresponding to the last timeliness field in the coverage span field. In this embodiment, It is 2101. Substituting 2103, we get:
[0069]
[0070] The above calculation results indicate that Q21, Q22, and Q23 all fall within the coverage span field's limit and are all updated and replaced by subsequent feedback data. When transmitting payload Q24, the transmission control unit transmits the coverage span field along with Q24, enabling the receiving processing unit to identify intermediate new packets that are not transmitted as payloads. Figure 6The double-headed arrows in the figure correspond to the boundaries of the span field, and the calculation results are consistent with the number of the three groups marked as invalid in the figure.
[0071] After receiving Q24 and the coverage span field, the receiving and processing unit checks the same type of packets in its local cache. For Q21, Q22, and Q23 that are already cached locally and whose expiration fields fall within the range of 2101 to 2103, the receiving and processing unit removes them from the set of cached packets to be processed and generates a span confirmation field. The span confirmation field carries an expiration association identifier and a processed coverage span field, indicating that the receiving side has completed the expiration processing of the corresponding packet.
[0072] After obtaining the span confirmation field, the transmission control unit queries the deterministic queue unit for the newly covered packet corresponding to the coverage span field. For Q21, Q22, and Q23 that have not yet entered the media access transmission state, the transmission control unit cancels their transmission. If each covered packet originally required one deterministic transmission slot, and each slot can carry 256 bytes, the number of bytes released after cancellation is calculated as follows:
[0073]
[0074] In the formula, This indicates the number of bearer bytes released after canceling the transmission of the overwritten new packet. This indicates the number of bytes that a single deterministic transmission slot can carry. In this embodiment, It is 3. It is 256 bytes, substituting it in, we get:
[0075]
[0076] The calculation results indicate that during this continuous coverage process, the system can reduce the occupied space of failed packets by 768 bytes and retain Q24 with a timeliness field of 2104 as the final transmission data for the current queue position. Figure 7 In the diagram, Q21, Q22, and Q23 each correspond to 256 bytes of canceled transmission bearers. The cumulative release curves reach 256 bytes, 512 bytes, and 768 bytes respectively, indicating that after the span confirmation field triggers the cancellation, the three updated and invalidated packets no longer occupy deterministic transmission resources. Through this method, the system, without disrupting the deterministic transmission slot arrangement, performs overlay, cutoff, span invalidation, and confirmation cancellation processing on consecutively arriving feedback packets of the same type. This reduces the probability of updated and invalidated data continuing to occupy transmission resources, improving data timeliness and transmission resource utilization in deterministic transmission scenarios of the Industrial Internet of Things.
Claims
1. An industrial Internet of Things (IoT) deterministic low-latency transmission system, comprising a data access unit, an identifier generation unit, a deterministic queue unit, a queue status acquisition unit, a replacement unit, a transmission control unit, and a reception processing unit; Its features are: The identifier generation unit generates time-related identifiers for industrial data packets from industrial objects. The time-related identifiers include industrial object identifiers, business flow identifiers, and control direction identifiers. Before a new packet is enqueued, the queue status acquisition unit searches for an earlier packet with the same time-related identifier that has not yet been sent in the deterministic queue unit, and obtains the sending status of the earlier packet. When the preceding packet has not entered the media access transmission state, the replacement unit retains the queue position and corresponding transmission time slot of the preceding packet, and writes the payload and timeliness field of the new packet into the queue position; when the preceding packet has entered the media access transmission state, the transmission control unit configures the new packet to the next available deterministic transmission time slot after the current transmission time slot; the receiving processing unit receives the valid packet according to the timeliness association identifier and the timeliness field, and marks the same type of packet with the same timeliness association identifier whose timeliness field is earlier than that of the already received valid packet as invalid.
2. The system as described in claim 1, characterized in that: The queue position of the deterministic queue unit consists of a scheduling bearer area and a data bearer area. The scheduling bearer area has fixed transmission time slots, port numbers and transmission order, while the data bearer area stores payload and timeliness fields. The replacement unit rewrites the data bearer area so that new packets inherit the transmission opportunities of previous packets without changing the existing deterministic scheduling results.
3. The system as described in claim 1, characterized in that: When the transmission control unit configures a new packet to the next available deterministic transmission slot after the current transmission slot, it writes a failure indication pointing to a prior packet into the new packet. After the intermediate forwarding node or the receiving processing unit in the system obtains the failure indication, it stops buffering, retransmitting, or effectively receiving prior packets that have the same time-related identifier and whose time-related field is earlier than the time-related field of the new packet.
4. The system as described in claim 1, characterized in that: When multiple new packets with the same time-related identifier enter the system sequentially before the same transmission slot arrives, the replacement unit performs continuous coverage on the same queue position and retains the payload and time-related fields after the last coverage; after the number of coverages reaches a preset coverage threshold, the transmission control unit will configure the new packets that enter the system after reaching the threshold to the next available deterministic transmission slot.
5. The system as described in claim 2, characterized in that: The data bearer area is configured with a current bearer area and a backup bearer area. The replacement unit writes the payload and timeliness fields of the new packet into the backup bearer area, and switches the valid bearer pointer after writing is completed, so that the transmission time slot corresponding to the scheduling bearer area reads the switched data bearer area.
6. The system as described in claim 5, characterized in that: The queue position is set with a data version number corresponding to the data bearer area. The replacement unit updates the data version number each time it rewrites the data bearer area. The transmission control unit sends the payload corresponding to the data version number and the valid bearer pointer in the queue position when the transmission time slot arrives.
7. The system as described in claim 2, characterized in that: When the sending control unit has prefetched the queue position but has not entered the media access sending state, the replacement unit sends a content refresh instruction to the sending control unit, so that the sending control unit keeps the scheduling bearer area unchanged and rereads the data bearer area.
8. The system as described in claim 4, characterized in that: The replacement unit records the first and last time-of-use fields of the intermediate packets covered by subsequent packets during the continuous coverage process, and generates a coverage span field. The transmission control unit sends the coverage span field along with the payload after the last coverage, so that the receiving processing unit marks the intermediate packets whose time-of-use fields are within the range of the coverage span field and which are not sent as the payload as updated and invalid.
9. The system as described in claim 4, characterized in that: After the number of coverages reaches a preset coverage threshold, the transmission control unit sets the current queue position to a coverage cutoff state. The queue position in the coverage cutoff state is allowed to transmit the payload and timeliness field after the last coverage. After the threshold is reached, new packets entering the system are configured to the queue position corresponding to the next available deterministic transmission slot.
10. The system as described in claim 8, characterized in that: After receiving the coverage span field, the receiving processing unit removes locally cached packets whose expiration fields fall within the coverage span field's defined range from the pending cached packet set, preventing them from participating in subsequent processing as valid packets, and generates a span confirmation field. Based on the span confirmation field, the sending control unit cancels the transmission of covered packets that correspond to the coverage span field and have not yet entered the media access transmission state.
Citation Information
Patent Citations
Unified configuration method and system of time-sensitive network equipment and storage medium
CN115150274A
Distributed control system and control method for large-scale deterministic network
CN117424921A