A joint scheduling method based on BACnet / IP and TSN network
By adding VLAN tags to BACnet/IP data frames and adopting a load-adaptive priority scheduling method and dynamic adjustment strategy, the problem of traffic differentiation and scheduling in the convergence of BACnet/IP and TSN was solved, realizing real-time transmission of critical tasks and improving system performance.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHONGQING UNIV OF POSTS & TELECOMM
- Filing Date
- 2024-11-01
- Publication Date
- 2026-07-24
Smart Images

Figure CN119450724B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of industrial network technology, specifically relating to a joint scheduling method based on BACnet / IP and TSN networks. Background Technology
[0002] With the rapid development of industrial and building automation, the application of communication technologies in these fields has become increasingly important. In building and industrial automation systems, BACnet / IP (Building Automation and Control Networks over Internet Protocol) has become one of the most widely used communication protocols due to its standardization, interoperability, and scalability. BACnet / IP is an IP-based communication protocol primarily used for communication between devices in building automation systems, covering multiple areas such as air conditioning, lighting, security, and fire protection. Its advantages lie in its ability to enable seamless communication between devices from different manufacturers, providing a unified standard interface, thereby improving system interoperability and flexibility. Because BACnet / IP uses standard Ethernet technology and existing IP infrastructure, its deployment cost is relatively low, and it supports remote monitoring and management functions, making it suitable for distributed automation systems and smart building scenarios. Furthermore, with the development of the Internet of Things (IoT), BACnet / IP can also be integrated with other modern network protocols, further enhancing its application prospects in building and industrial control.
[0003] Time-Sensitive Networking (TSN) is a series of protocol standards developed by the IEEE 802.1TSN working group, designed to provide industrial control networks with highly reliable, low-latency, and low-jitter Ethernet transmission capabilities. A key feature of TSN is its ability to efficiently transmit data streams of different categories and priorities, ensuring that mission-critical traffic arrives on time. Through precise time synchronization and traffic scheduling, TSN has become a crucial technology supporting real-time communication in industrial and building automation.
[0004] Existing BACnet / IP and TSN convergence solutions typically rely on basic tagging of BACnet / IP traffic, such as configuring network device ports to label different traffic priorities. While this approach can initially achieve interoperability between BACnet / IP and TSN networks, because BACnet / IP itself lacks a precise scheduling mechanism for different traffic types, this simple convergence solution cannot fully leverage the low latency and high reliability advantages of TSN. When faced with traffic of different priorities, it cannot effectively distinguish between critical and ordinary task flows, thus affecting the real-time transmission of critical data streams. Summary of the Invention
[0005] To address the above problems, this invention provides a joint scheduling method based on BACnet / IP and TSN networks, comprising the following steps:
[0006] S1. Construct a unified system including BAcnet / IP network and TSN network;
[0007] S2. Obtain BAcnet / IP data frames from the BAcnet / IP network. These BAcnet / IP data frames have undergone VLAN tag addition processing at the data link layer to identify the traffic priority of the BAcnet / IP data frames in the TSN network.
[0008] S3. Determine whether the data is periodic traffic based on the transmission characteristics of BAcnet / IP data frames;
[0009] S4. If the BACnet / IP data frames are periodic traffic, then the BACnet / IP data frames are allocated to the corresponding periodic queues according to the traffic priority, and the periodic traffic is scheduled using a periodic data scheduling method based on load adaptive priority.
[0010] S5. If the BACnet / IP data frame is non-periodic traffic, then allocate the BACnet / IP data frame to the corresponding non-periodic queue according to the traffic priority, and use a dynamic priority adjustment strategy to achieve non-periodic traffic scheduling.
[0011] The beneficial effects of this invention are:
[0012] To further enhance the integration of BACnet / IP and TSN, and addressing the format differences between BACnet / IP and TSN data frames, this invention adds a four-byte VLAN tag to the source MAC address of the BACnet / IP data frame at the data link layer, converting it into a TSN data frame. This allows TSN switches to schedule BACnet / IP data frames. Furthermore, based on the different real-time and deterministic requirements of different types of BACnet / IP data flows, different values are filled into the PCP field of the VLAN tag, thereby establishing a traffic priority mapping relationship between BACnet / IP and TSN.
[0013] Different scheduling methods are employed for both periodic and non-periodic traffic from BACnet / IP, combined with the fine-grained priority management capabilities of TSN, to maximize the real-time performance and reliability of data stream transmission. Through this integrated scheduling scheme, the system can significantly reduce latency in the BACnet / IP system, ensuring on-time completion of critical tasks, thereby improving the performance and deterministic delivery capabilities of the entire building and industrial automation system.
[0014] This invention can prioritize the transmission of real-time periodic traffic without exceeding given bandwidth resources, maximize bandwidth utilization and reduce latency, and can adapt to complex network data by dynamically adjusting the scheduling scheme. Attached Figure Description
[0015] Figure 1 This is a diagram illustrating the overall structure of a joint scheduling method for BACnet / IP and TSN networks as described in this invention.
[0016] Figure 2 This is an example scheduling diagram of aperiodic traffic flow of the joint scheduling method for BACnet / IP and TSN networks described in this invention. Detailed Implementation
[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0018] This invention provides a joint scheduling method based on BACnet / IP and TSN networks. It aims to maximize bandwidth utilization, minimize latency, and meet the quality of service requirements of different priority traffic by differentiating BACnet / IP data frames into periodic and aperiodic frames and employing different scheduling methods. Figure 1 As shown, the solution includes the following steps:
[0019] S1. Construct a unified system including BAcnet / IP network and TSN network.
[0020] S2. Obtain a BAcnet / IP data frame from the BAcnet / IP network, which has undergone VLAN tag addition processing at the data link layer.
[0021] Specifically, BACnet / IP data frames from the BACnet / IP network are acquired. These data frames contain information such as the destination address (DA) and source address (SA). To ensure that these BACnet / IP data frames can be transmitted in the TSN network, VLAN tagging is performed on the BACnet / IP data frames at the data link layer. This includes adding a 4-byte VLAN tag after the source MAC address of the BACnet / IP data frame, filling the PCP field of the VLAN tag with different values, and using the VLAN tag to identify the priority of the BACnet / IP data frame, corresponding to the traffic priority of the TSN data frame. This establishes a traffic priority mapping relationship between the BACnet / IP network and the TSN network. This method allows TSN switches to schedule BACnet / IP data frames normally without changing other protocols.
[0022] S3. Determine whether the data frame is periodic traffic based on its transmission characteristics.
[0023] Specifically, based on the transmission characteristics of BACnet / IP data frames, it is determined whether the data frames are periodic or aperiodic traffic. Periodic traffic has a stable transmission cycle, such as sensor data collected in building automation systems. Aperiodic traffic is typically event-driven, such as alarm messages.
[0024] S4. If the BACnet / IP data frame is non-periodic traffic, then according to the mapped traffic priority, the periodic traffic is scheduled in the periodic queue corresponding to the BACnet / IP data frame using a periodic data scheduling method based on load adaptive priority.
[0025] Specifically, step S5, which executes a periodic data scheduling method based on load adaptive priority, includes:
[0026] S41. Calculate the continuous period T based on the period of all periodic traffic in the current BACnet / IP network. cont and cycle period T cycle , can be represented as
[0027] T cont = gcd(T1, T2, ..., T) n-1 T n (1)
[0028] T cycle =lcm(T1, T2, ..., T) n-1 T n (2)
[0029] Wherein, the cycle period T cycleThe continuous period T is the least common multiple (lcm) of the periods of all periodic flows. cont Let g be the greatest common divisor (gcd) of the periods of all periodic flows, and n represent the number of periodic flows.
[0030] S42. When the system is under high load, the priority weight of periodic traffic is calculated, and the adjustment strategy is implemented according to the priority weight. More scheduling opportunities are given to periodic traffic with high priority, low periodicity, and low tolerance time, while periodic traffic with low priority and long tolerance time is postponed during heavy system load. The formula for calculating the priority weight of each periodic traffic is:
[0031]
[0032] Among them, W i P represents the priority weight of the i-th periodic flow. i D represents the flow priority of the i-th periodic flow. i T represents the delay tolerance of the i-th periodic flow. i This represents the period of the i-th periodic flow. Flow priority P i With period T i and delayed tolerance D i Inversely proportional. The shorter the period, the shorter the latency tolerance, and the higher the traffic priority of periodic traffic, the greater the priority weight, and the more likely the system will schedule these periodic traffic flows.
[0033] S43. Live scheduling window allocation: The time window for different periodic traffic flows is dynamically adjusted based on priority weights and network load. The formula for calculating the size of each periodic traffic flow's time window is as follows:
[0034]
[0035] Where, ΔT i W represents the size of the time window for the i-th periodic flow. i This represents the priority weight of the i-th periodic flow. This is the sum of priority weights for all periodic traffic.
[0036] S44. Determine whether the periodic traffic is a tolerable periodic task. If so, calculate the latest scheduling time for the periodic traffic. This invention further divides periodic traffic into non-tolerable periodic tasks and tolerable periodic tasks based on whether the tolerable delay is greater than or equal to 0. For tolerable periodic tasks, a delay tolerance mechanism is established, allowing the transmission delay of the tolerable periodic task to be extended to obtain a latest scheduling time. If the i-th periodic traffic is a tolerable periodic task i, its latest scheduling time can be...
[0037] Ti,D =T i +D i (5)
[0038] T i,D This represents the latest scheduling time for the tolerable periodic task i.
[0039] S45. To ensure that all periodic flows occur within one cycle T cycle Each periodic flow is scheduled at least once within a cycle. Calculate the number of times each periodic flow is scheduled within a cycle.
[0040] If the i-th periodic traffic is a non-tolerant periodic task, then the number of times the non-tolerant periodic task is scheduled within the cycle is... for
[0041]
[0042] If the i-th periodic traffic is a tolerable periodic task, then the number of times the tolerable periodic task is scheduled within the cycle is... for
[0043]
[0044] S46. Schedule periodic traffic according to scheduling rules, including:
[0045] At least one periodic flow must be scheduled within a continuous cycle;
[0046] Each periodic traffic flow is scheduled within a cycle according to its period and the number of times it is scheduled.
[0047] Periodic traffic is scheduled according to priority weights within a continuous period.
[0048] Each periodic traffic flow is scheduled at least once within a cycle.
[0049] Specifically, the load-adaptive priority-based periodic data scheduling method improves the real-time performance and resource utilization of task scheduling by constructing a reasonable scheduling cycle model, dynamically adjusting priorities, and flexibly allocating scheduling windows. Combined with a latency tolerance mechanism, it ensures that low-priority tasks do not affect the execution of high-priority tasks under high load conditions.
[0050] In one embodiment, it is assumed that there are multiple periodic traffic flows in the BACnet / IP network, as detailed in Table 1:
[0051] Table 1 Periodic Data Stream
[0052] <![CDATA[r1]]> 200 3 0 <![CDATA[r2]]> 500 4 0 <![CDATA[r3]]> 100 2 0 <![CDATA[r4]]> 300 5 0 <![CDATA[r5]]> 600 2 100
[0053] There are 5 different types of periodic traffic, with r1-r4 being non-tolerant periodic tasks and r5 being a tolerant periodic task.
[0054] Therefore, the cycle period T can be calculated using formulas (1) and (2) based on the cycles of all periodic flows. cycle As shown below:
[0055] T cont =lcm{200,500,100,300,600}=100us
[0056] T cycle =lcm{200,500,100,300,600}=3000us
[0057] The priority weight W for each periodic flow is calculated according to formula (3). i :
[0058]
[0059] Periodic traffic with higher priority weights will be scheduled first and will occupy more scheduling opportunities within the scheduling cycle.
[0060] The time window size for each periodic flow is calculated according to formula (4):
[0061]
[0062] The latest scheduling time T for the delay-tolerant task is calculated using formula (5). 5,D :
[0063] T 5,D =600 + 100 = 700
[0064] The number of scheduling operations for various periodic tasks can be obtained using formulas (6) and (7):
[0065]
[0066] This yields the specific scheduling details of the periodic flows r1-r5 in each consecutive period, as shown in Table 2, where D1 refers to the periodic flow r5.
[0067] Table 2. Scheduling details for each period.
[0068]
[0069] The entire cycle is divided into multiple consecutive cycles. Each periodic traffic is scheduled within different consecutive cycles based on a multiple of its own cycle. For tolerable periodic tasks, scheduling is based on a multiple of the latest scheduling time of the device within different consecutive cycles. More specifically, in this embodiment, the cycle is 3000µs, and the consecutive cycle is 100µs, so the entire cycle can be divided into 30 consecutive cycles. Since the cycle of periodic traffic r3 is 100µs, it will be scheduled in every consecutive cycle, so its scheduling frequency is 30. The cycles of periodic traffic r1, r3, and r4 are multiples of 600µs, so at 600µs, periodic traffic r1, r3, and r4 will all be scheduled. At this point, scheduling is based on priority weights; the higher the priority weight, the earlier it is scheduled. The time window is the total scheduling time for each periodic traffic.
[0070] S5. If the BAcnet / IP data frame is non-periodic traffic, the BAcnet / IP data frame is allocated to the corresponding non-periodic queue according to the traffic priority, and a dynamic adjustment strategy is adopted to realize the scheduling of non-periodic traffic.
[0071] Specifically, this invention combines Liu and Layland's real-time scheduling theory, Amdahl's law, and the knapsack problem to propose a dynamic adjustment strategy that maximizes bandwidth utilization and minimizes total latency through dynamic priority adjustment.
[0072] The dynamic adjustment strategy performs multi-round scheduling by dynamically adjusting the priority of aperiodic queues. The system state is defined to represent the parameter state at the beginning of each round of scheduling, as shown in Table 3.
[0073] Table 3 Parameter Status
[0074]
[0075] Expressed as a formula
[0076] S t ={B remain L 11 , ...L NM D1, ..., D N P 1,t , ..., P N,t Q1, ..., Q N} (5)
[0077] Among them, S t Let L represent the system state in the t-th round of scheduling, Bremain represent the current remaining bandwidth of the system, and L represent the system state in the t-th round of scheduling. nm D represents the frame length of the m-th (1, 2, ..., M) aperiodic traffic in the n = 1, 2, ..., N aperiodic queues. nP represents the cumulative delay corresponding to the nth aperiodic queue. n,t Q represents the priority of the nth aperiodic queue at the start of the t-th round of scheduling. n This represents the untransmitted data in the nth aperiodic queue; N represents the number of aperiodic queues, and M represents the amount of aperiodic traffic in the aperiodic queues.
[0078] The dynamic adjustment strategy proposed in this invention is based on the earliest deadline first scheduling algorithm in Liu and Layland's task scheduling theory. First, it defines the priority value formula by combining frame length, cumulative delay and remaining untransmitted data, and adopts a dynamic priority strategy similar to EDF.
[0079] Priority is defined as:
[0080]
[0081] Where α, β, and γ represent the delay weight, frame length weight, and remaining data volume weight, respectively, and their specific values need to be set according to the actual situation. Each time the calculation queue priority is updated, each aperiodic queue selects the frame length of the first aperiodic traffic flow for calculation.
[0082] This formula borrows the concept of "urgency" from the EDF strategy proposed by Liu and Layland. When the delay is large (i.e., D...), n Larger frames (i.e., L) should have higher priority; when the frame is long (i.e., L... nm For larger amounts of data (i.e., Q), the priority should be lowered to avoid blocking bandwidth allocation. n If the queue is large, its priority should be increased to expedite the transmission.
[0083] Because the priority value of a TSN data frame is limited to the range of 0 to 7, it is rounded off, and its range is further restricted to:
[0084] P n,t+1 =min(7, max(0, round(P)) n,t ))) (7)
[0085] Based on Amdahl's Law, this invention optimizes frame transmission efficiency. In each scheduling process, frames that significantly improve overall system performance should be prioritized for transmission. For example, transmitting short frames can quickly free up bandwidth, thereby improving the overall system bandwidth utilization.
[0086] Based on the knapsack problem, bandwidth allocation can be viewed as a constraint on the knapsack's capacity (i.e., bandwidth), and the transmitted data frames are the items we want to put into the knapsack. We aim to transmit as much high-priority data as possible within the limited bandwidth. The bandwidth allocation formula is:
[0087]
[0088] Among them B allocated It is the bandwidth already allocated in the current round, I n It is a binary variable indicating whether the aperiodic queue is selected, with I indicating selection. n It is 1 if it is true, otherwise it is 0.
[0089] Specifically, the use of dynamic adjustment strategies to schedule aperiodic traffic includes:
[0090] S51. Obtain the system state of the t-th round of scheduling, and use the priority value formula to calculate and update the priority of each non-periodic queue;
[0091] S52. Schedule one aperiodic traffic item from each aperiodic queue in descending order of priority. If the priorities are the same, schedule them in ascending order of the size of the untransmitted data in the aperiodic queue.
[0092] S53. Determine whether the scheduling is complete. If not, set t = t + 1 and return to step S51.
[0093] In one embodiment, it is assumed that there are multiple different types of aperiodic traffic in the BACnet / IP network, and that the bandwidth that can be transmitted each time during the aperiodic period is 600type, i.e., the remaining bandwidth B remain 600 bytes remain. These will be allocated to the corresponding priority queues according to the priority mapping relationship. See Table 4 for details.
[0094] Table 4 Non-periodic queue data flow
[0095] <![CDATA[Queue1]]> 80,100,120 50 3 300 <![CDATA[Queue2]]> 120,130,180 40 2 430 <![CDATA[Queue3]]> 140,160,220 30 4 520
[0096] During the first round of scheduling, the system state S1 is represented as:
[0097] S1={600,80,100,120,...120,140,160,220,50,40,30,3,2,4,300,430,520}
[0098] The queue priorities of the non-periodic queues Queue1, Queue2, and Queue3 can be calculated using equations (6) and (7) (assuming α = 0.5, β = 0.3, and y = 0.2).
[0099] P 1,2 =min(7, max(0, round(P)) 1,1 )))=4
[0100] P 2,2 =min(7, max(0, round(P))2,1 )))=2
[0101] P 3,2 =min(7, max(0, round(P)) 3,1 )))=4
[0102] Since aperiodic queues Queue1 and Queue3 have the same priority, Queue1 will be scheduled first. In this round of scheduling, Queue1 will be allocated 80 bytes, Queue3 will be allocated 140 bytes, and Queue2 will be allocated 120 bytes.
[0103] In the second round of scheduling, system state S2 is updated as follows:
[0104] S2={600, 100, 120, 130, 180, 160, 220, 50, 40, 30, 4, 2, 4, 220, 310, 380}
[0105] The priority of aperiodic queues Queue1, Queue2, and Queue3 is updated to...
[0106] P 1,3 =min(7, max(0, round(P)) 1,2 )))=6
[0107] P 2,3 =min(7, max(0, round(P)) 2,2 )))=2
[0108] P 3,3 =min(7, max(0, round(P)) 3,2 )))=4
[0109] In this round of scheduling, 100 bytes are allocated to aperiodic queue Queue1, 130 bytes to aperiodic queue Queue3, and 160 bytes to aperiodic queue Queue2.
[0110] In the third round of scheduling, system state S3 is updated as follows:
[0111] S3={600,120,180,220,50,40,30,6,2,4,120,180,220}
[0112] The priority of non-periodic queues Queue1, Queue2, and Queue3 is updated to...
[0113] P 1,4 =min(7, max(0, round(P)) 1,3)))=6
[0114] P 2,4 =min(7, max(0, round(P)) 2,3 )))=2
[0115] P 3,4 =min(7, max(0, round(P)) 3,3 )))=4
[0116] In this round of scheduling, aperiodic queue Queue1 is allocated 120 bytes, aperiodic queue Queue3 is allocated 180 bytes, and aperiodic queue Queue2 is allocated 220 bytes. Scheduling is now complete. Through dynamic adjustment of queue priorities and reasonable bandwidth allocation, after several rounds of scheduling, all data frames are transmitted, such as... Figure 2 As shown in the figure. This scheduling process optimizes the overall latency and allocates bandwidth appropriately.
[0117] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "setting," "connection," "fixing," "rotation," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal connection of two components or the interaction between two components. Unless otherwise explicitly limited, those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0118] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. A joint scheduling method based on BACnet / IP and TSN networks, characterized in that, Includes the following steps: S1. Construct a unified system including BAcnet / IP network and TSN network; S2. Obtain BAcnet / IP data frames from the BAcnet / IP network. These BAcnet / IP data frames have undergone VLAN tag addition processing at the data link layer to identify the traffic priority of the BAcnet / IP data frames in the TSN network. S3. Determine whether the data is periodic traffic based on the transmission characteristics of BAcnet / IP data frames; S4. If the BACnet / IP data frames are periodic traffic, then the BACnet / IP data frames are allocated to the corresponding periodic queues according to the traffic priority, and the periodic traffic is scheduled using a periodic data scheduling method based on load adaptive priority. Step S4, executing the periodic data scheduling method based on load adaptive priority, includes: S41. Calculate the continuous period T based on the period of all periodic traffic in the current BACnet / IP network. cont and cycle period T cycle ; S42. Calculate the priority weight of each periodic traffic based on traffic priority, period, and latency tolerance; The priority weight W of the i-th periodic flow i Represented as , Among them, P i D represents the flow priority of the i-th periodic flow. i T represents the delay tolerance of the i-th periodic flow. i This represents the period of the i-th periodic flow. S43. Dynamically calculate the time window for each periodic traffic based on priority weights and network load; The time window size △T of the i-th periodic flow i Represented as , Where n represents the number of periodic flows; S44. Determine whether the periodic traffic is a tolerable periodic task. If so, calculate the latest scheduling time for the periodic traffic. Based on whether the tolerable delay is greater than or equal to 0, periodic traffic is further divided into non-tolerant periodic tasks and tolerant periodic tasks. For tolerant periodic tasks, a delay tolerance mechanism is established, allowing the transmission delay of tolerant periodic tasks to be extended to obtain a latest scheduling time. If the i-th periodic traffic is tolerant periodic task i, its latest scheduling time is... , T i,D Indicates the latest scheduling time for the periodic task i; S45. Calculate the number of times each periodic flow is scheduled within one cycle; S46. Schedule periodic traffic according to scheduling rules, including: At least one periodic flow must be scheduled within a continuous cycle; Each periodic traffic flow is scheduled within a cycle according to its period and the number of times it is scheduled. Periodic traffic is scheduled according to priority weights within a continuous period; S5. If the BACnet / IP data frame is non-periodic traffic, then allocate the BACnet / IP data frame to the corresponding non-periodic queue according to the traffic priority, and use a dynamic priority adjustment strategy to achieve non-periodic traffic scheduling.
2. The joint scheduling method based on BACnet / IP and TSN networks according to claim 1, characterized in that, VLAN tagging is performed on BACnet / IP data frames at the data link layer, including adding a 4-byte VLAN tag after the source MAC address of the BACnet / IP data frame and filling the PCP field in the VLAN tag with different values, thereby establishing a traffic priority mapping relationship between the BACnet / IP network and the TSN network.
3. The joint scheduling method based on BACnet / IP and TSN networks according to claim 1, characterized in that, Step S45 calculates the number of times each periodic flow is scheduled within a cycle, including: If the i-th periodic traffic is a non-tolerant periodic task, then the number of times the non-tolerant periodic task is scheduled within the cycle is... for , If the i-th periodic traffic is a tolerable periodic task, then the number of times the tolerable periodic task is scheduled within the cycle is... for , Among them, T i T represents the period of the i-th periodic flow. i,D This represents the latest scheduling time for the periodic task i, and round() represents the round-down operation.
4. The joint scheduling method based on BACnet / IP and TSN networks according to claim 1, characterized in that, The dynamic adjustment strategy performs multi-round scheduling by dynamically adjusting the priority of aperiodic queues. The system state is defined to represent the parameter state at the beginning of each scheduling round, denoted as: , Among them, S t B represents the system state in the t-th round of scheduling. remain L represents the current remaining bandwidth of the system. nm D represents the frame length of the m-th (m=1,2,...,M) aperiodic traffic in the n=1,2,...,N aperiodic queues. n P represents the cumulative delay corresponding to the nth aperiodic queue. n,t Q represents the priority of the nth aperiodic queue at the start of the t-th round of scheduling. n This represents the untransmitted data in the nth aperiodic queue; N represents the number of aperiodic queues, and M represents the amount of aperiodic traffic in the aperiodic queues.
5. The joint scheduling method based on BACnet / IP and TSN networks according to claim 4, characterized in that, The use of dynamic adjustment strategies to schedule aperiodic traffic includes: S51. Obtain the system state of the t-th round of scheduling, and use the priority value formula to calculate and update the queue priority of each non-periodic queue; S52. Schedule one aperiodic flow from each aperiodic queue in descending order of queue priority; if the priorities are the same, schedule them in ascending order of the size of the untransmitted data in the aperiodic queue. S53. Determine whether the scheduling is complete. If not, set t=t+1 and return to step S51.
6. The joint scheduling method based on BACnet / IP and TSN networks according to claim 5, characterized in that, The formula for prioritizing values is expressed as follows: , , Where α, β, and γ represent the delay weight, frame length weight, and remaining data amount weight, respectively.