WO2022199007A1 - 一种时间敏感网络时隙调度方法、终端及存储介质 - Google Patents
一种时间敏感网络时隙调度方法、终端及存储介质 Download PDFInfo
- Publication number
- WO2022199007A1 WO2022199007A1 PCT/CN2021/125796 CN2021125796W WO2022199007A1 WO 2022199007 A1 WO2022199007 A1 WO 2022199007A1 CN 2021125796 W CN2021125796 W CN 2021125796W WO 2022199007 A1 WO2022199007 A1 WO 2022199007A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- service flow
- target service
- time
- target
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000006855 networking Effects 0.000 title abstract description 3
- 230000005540 biological transmission Effects 0.000 claims abstract description 274
- 230000001186 cumulative effect Effects 0.000 claims description 28
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- LGAILEFNHXWAJP-BMEPFDOTSA-N macrocycle Chemical compound N([C@H]1[C@@H](C)CC)C(=O)C(N=2)=CSC=2CNC(=O)C(=C(O2)C)N=C2[C@H]([C@@H](C)CC)NC(=O)C2=CSC1=N2 LGAILEFNHXWAJP-BMEPFDOTSA-N 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 150000002678 macrocyclic compounds Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/04—Wireless resource allocation
- H04W72/044—Wireless resource allocation based on the type of the allocated resource
- H04W72/0446—Resources in time domain, e.g. slots or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/20—Control channels or signalling for resource management
- H04W72/23—Control channels or signalling for resource management in the downlink direction of a wireless link, i.e. towards a terminal
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Definitions
- the present invention relates to the technical field of time-sensitive networks, and in particular, to a time-sensitive network timeslot scheduling method, a terminal and a storage medium.
- TSN Time-Sensitive Networking
- time slot scheduling is to take into account factors such as service path, link length, and packet period to calculate, and to obtain the time slot length and time slot start time of all real-time flows at each hop.
- the nodes all set the gate control degree.
- GCL Gate Control List, gate control list
- the present invention provides a time-sensitive network timeslot scheduling method, device, terminal and storage medium, aiming to solve the problem of a large number of gate control entries in the time-sensitive network in the prior art.
- a first aspect of the present invention provides a time-sensitive network timeslot scheduling method, the method comprising:
- the transmission path includes a source node, a transmission node and a sink node;
- the node time slot scheduling information of the target service flow under the preset gating setting information is determined according to the preset gating setting information, wherein the preset gating setting information includes indicating that the target service flow is on each transmission node Whether to set a gating indicator, the node time slot scheduling information includes the time slot length and time slot start time of the target service flow on each transmission node;
- the sending time of each target service flow at the source node is determined, so that the time slots of all the target service flows at any node do not overlap.
- the time-sensitive network timeslot scheduling method wherein the determining the node timeslot scheduling information of the target service flow under the preset gating setting information according to the preset gating setting information includes:
- the time-sensitive network timeslot scheduling method wherein the determining the interference delay of the target service flow at the target transmission node according to the preset gating setting information includes:
- the interference delay of the target service flow at the target transmission node is 0;
- the gating indicator of the target service flow at the target transit node is an indicator that does not set gating:
- ID i,n represents the interference delay of the target service stream with sequence number i on the transmission node with sequence number n
- A is the minimum frame length that can be interrupted during frame preemption
- MTU BE is the maximum transmission length of the BE stream
- LR n,n+1 is the link rate between the transmission node with sequence number n and the transmission node with sequence number n+1.
- the time-sensitive network time slot scheduling method wherein the determining the time slot length of the target service flow at the target transmission node according to the interference delay includes:
- the time slot length of the target service flow at the target transmission node is determined according to the accumulated interference time delay and the interference time delay.
- the time-sensitive network timeslot scheduling method wherein the acquiring the cumulative interference delay of the target service flow at the target transmission node includes:
- the cumulative interference delay of the target service flow at the target transmission node is 0;
- the accumulated interference delay of the target service flow at the target transmission node is 0.
- the time-sensitive network timeslot scheduling method wherein the determining the time slot length of the target service flow at the target transmission node according to the accumulated interference delay and the interference delay includes:
- the time slot length of the target service flow at the target transmission node is obtained by a first preset formula
- the time slot length of the target service flow at the target transmission node is obtained through the second preset formula:
- the first preset formula is:
- the second preset formula is:
- TS i,n is the time slot length of the target service flow with the sequence number i on the transmission node with the sequence number n
- TD i,n is the time slot of the target service flow with the sequence number i on the transmission node with the sequence number n
- PS i is the message length of the target service flow with sequence number i
- LR n,n+1 is the link rate between the transit node with sequence number n and the transit node with sequence number n+1
- SumID i,n Indicates the cumulative interference delay of the target service flow with sequence number i at the transmission node with sequence number n
- ID i,n represents the interference delay of the target service flow with sequence number i on the transmission node with sequence number n.
- the time-sensitive network timeslot scheduling method wherein the time slot of the target service flow at the target transmission node is determined according to the earliest sending time of the target service flow at the node preceding the target transmission node Start time, including:
- TS_Offset i,n indicates that the target service flow with sequence number i is at the time slot start time of the transmission node with sequence number n
- Best_ST i,n-1 indicates that the target service flow with sequence number i is at the transmission node with sequence number n-1
- LD n-1,n represents the signal propagation delay between the transmission node with serial number n-1 and the transmission node with serial number n
- TD i,n-1 represents TD i
- n represents serial number i
- PD n represents the processing delay of the transmission node with sequence number n.
- the time-sensitive network timeslot scheduling method wherein the acquiring the earliest sending time of the target service flow at the node preceding the target transmission node includes:
- the earliest sending time of the target service flow at the node preceding the target transport node is equal to the gated opening time of the previous node;
- the earliest sending of the target service flow at the node preceding the target transport node The time is equal to the time slot start time of the target service flow at the previous node;
- the earliest sending time of the target service flow at the node preceding the target transmission node is the transmission of the target service flow at the source node time.
- a second aspect of the present invention provides a terminal, the terminal includes a processor and a computer-readable storage medium communicatively connected to the processor, the computer-readable storage medium is suitable for storing a plurality of instructions, and the processor is suitable for for invoking the instructions in the computer-readable storage medium to execute the steps of implementing the time-sensitive network timeslot scheduling method described in any one of the above.
- a computer-readable storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to realize The steps of the time-sensitive network timeslot scheduling method described in any one of the above.
- the present invention provides a time-sensitive network timeslot scheduling method, a terminal and a storage medium.
- the time-sensitive network timeslot scheduling method is to set whether to set a gate on each transmission node for a target service flow. According to whether to set the gating control indicator, determine the time slot length and time slot start time of the target service flow on each transmission node, and realize the time slot scheduling, so that the gating control can not be set in some transmission nodes or all transmission nodes. , reduce the number of gating table entries.
- FIG. 1 is a flowchart of an embodiment of a time-sensitive network timeslot scheduling method provided by the present invention
- FIG. 2 is a schematic diagram of traditional time slot scheduling
- FIG. 3 is a schematic diagram of a traditional time slot scheduling service flow cycle
- FIG. 4 is a logical block diagram of an embodiment of a time-sensitive network timeslot scheduling method provided by the present invention.
- FIG. 5 is a schematic diagram of the timing of gated door opening in an embodiment of the time-sensitive network timeslot scheduling method provided by the present invention
- FIG. 6 is an example diagram of a packet forwarding process when there is no gate control in an embodiment of the time-sensitive network timeslot scheduling method provided by the present invention
- FIG. 7 is an example diagram of a message forwarding process when a tail node sets gate control in an embodiment of the time-sensitive network timeslot scheduling method provided by the present invention
- FIG. 8 is a schematic diagram of a message forwarding process when an intermediate node sets a gate in an embodiment of the time-sensitive network timeslot scheduling method provided by the present invention
- FIG. 9 is a schematic diagram of the principle of an embodiment of a terminal provided by the present invention.
- an embodiment of the time-sensitive network timeslot scheduling method includes the steps:
- the target service flow is a real-time flow, and each target service flow has a fixed
- the transmission path starts from the source node, forwards through the transmission node, and finally reaches the sink node.
- the preset gating setting information includes an indicator to know whether the target service flow is gated on each transmission node, and the node time slot scheduling information includes the time of the target service flow on each transmission node. slot length and slot start time.
- the target service flow will not be occupied by other real-time flows in the time slot on the transmission node, that is, the transmission node will not forward other real-time flows during the time slot of the target service flow.
- the message allows the message of the BE flow to be forwarded.
- frame preemption can be used.
- the packet forwarding of the BE flow is interrupted.
- Link Delay link propagation delay, which refers to the signal propagation delay.
- the node processing delay refers to the time for the node to process the packet.
- the packet After the time, the packet reaches the outbound interface queue of B1 and can start to send.
- the gate switch of the outbound interface of B1 is turned on, and the packet will be forwarded from node B1.
- the opening time is equal to the time when the packet is in B1.
- the transmission delay of the outgoing interface that is, TD2.
- the door is closed at t5 to allow other services to be forwarded. In order to prevent other packets from being transmitted on the link when the door is opened at t4, the doors of other queues need to be opened in advance.
- this advance is also called GB (Guard Band, guard band), and no new packet transmission is allowed to start within the guard band.
- the length of the guard band is related to the forwarding behavior of the node. If the node does not support frame preemption, the guard band needs to be long enough to ensure that a BE packet with a maximum MTU (Maximum Transmission Unit) is transmitted. If the node supports frame preemption , the length of the guard band is the time required to interrupt the transmission of the BE stream.
- the subsequent forwarding process of the B2 node is similar to that of the B1 node, and the message will arrive at the destination node at the determined t8 time. In this process, the action of the gated switch is controlled by GCL.
- One time slot needs to open and close two actions, which will occupy two entries in the GCL list.
- the number of time slots will also increase, so the number of gates will also increase accordingly.
- the number of gate times is also closely related to the difference in service flow cycles.
- the two The periods of the streams are 2 and 3 respectively.
- the length of the macro period is equal to the least common multiple of the service periods of the two streams.
- LCM(2,3) 6
- Flow1 occupies 3 time slots in the entire macro cycle
- Flow2 occupies 2 time slots in the red cycle, so 5 time slots and 10 GCL entries are required.
- the service cycle is more different
- the service cycles of the three streams are 1, 7, and 20, respectively
- the three streams require a total of 167 time slots and 334 gating entries.
- the number of gated lists supported by most switches that have been exceeded (the maximum number of entries supported by a switch is generally 255). It can be seen that with the increase in the number of flows and the difference in service cycles, the number of required gating entries will further increase sharply, even far exceeding the device capacity.
- a guard band needs to be set before the start of each real-time stream time slot to ensure that the link is in an idle state at the beginning of the time slot.
- a large number of gate opening and closing actions require a large number of guard bands.
- the guard bands do not allow any new transmission, so there is a serious waste of bandwidth.
- preset gating setting information is set, and the preset gating setting information includes indicating whether the target service flow is set with a gate on each transmission node
- the node time slot scheduling information is determined according to the preset gating setting information. For each transmission node on the transmission path of the target service flow, the gating may not be set or the gating may be set, which reduces the overall Number of gates.
- the determining, according to the preset gating setting information, the node time slot scheduling information of the target service flow under the preset gating setting information includes the steps of:
- S230 Obtain the earliest sending time of the target service flow at the node preceding the target transmission node, and determine the target service flow according to the earliest sending time of the target service flow at the node preceding the target transmission node At the time slot start time of the target transmission node.
- the time slot length and time slot start time of the target service flow on each transmission node can be obtained.
- the interference delay is the time occupied by the transmission time of other BE flows in the time slot transmission of the service flow when the gate control is not set, that is, when the target service flow is in the target transmission node
- the gating indicator of is the indicator for setting gating
- the interference delay of the target service flow at the target transmission node is 0.
- the gating indicator of the target service flow at the target transmission node is an indicator that does not set gating
- the interference delay is determined according to whether the target transmission node supports frame grabbing, specifically:
- ID i,n represents the interference delay of the target service flow with sequence number i on the transmission node with sequence number n
- A is the minimum frame length that can be interrupted in frame preemption, that is, the frame with the number of bytes less than A is not It is allowed to be interrupted.
- the minimum frame length that can be interrupted in frame preemption varies according to different protocols. For example, A can be 123 bytes
- MTU BE is the maximum transmission length of the BE stream
- the maximum transmission length of the flow) can be a message of MTU length
- LR n,n+1 is the link rate between the transit node with sequence number n and the transit node with sequence number n+1.
- the sequence number of the transmission node is determined according to the order of the transmission node in the transmission path corresponding to the target service flow, that is, the transmission node with the sequence number n+1 is the transmission node of the target service flow.
- the next transit node of the transit node with sequence number n in the path is determined according to the order of the transmission node in the transmission path corresponding to the target service flow, that is, the transmission node with the sequence number n+1 is the transmission node of the target service flow.
- the interference delay can be regarded as jitter, that is, the interference delay will cause a certain jitter range in the transmission time of the packet, but in order to ensure all
- the message of the target service flow can be transmitted in the time slot allocated by the target transmission node, and the time slot of the target service flow on the target transmission node should include the transmission time of the current node. delay, the jitter accumulated by the previous node, and the newly added jitter of this node.
- determining the time slot length of the target service flow at the target transmission node according to the interference delay includes:
- the cumulative interference delay of the target service flow at the target transmission node is obtained by accumulating the interference delay generated by the target service flow on the transmission node before the target transmission node.
- the cumulative interference delay on the previous transmission node is added to the interference delay on the current transmission node to obtain the cumulative interference delay of the next transmission node.
- the target service flow is on the transmission node
- the current cumulative interference delay is cleared, that is, the cumulative interference delay of the next transmission node is 0, specifically:
- the acquiring the cumulative interference delay of the target service flow at the target transmission node includes:
- the cumulative interference delay of the target service flow at the target transmission node is 0;
- the transmission time of the target service flow at the source node is determined (it can be t0)
- the target transmission node is the transmission time of the target service flow At the first transmission node
- the cumulative interference delay of the target service flow at the target transmission node is 0.
- the determining the time slot length of the target service flow at the target transmission node according to the accumulated interference delay and the interference delay includes:
- the time slot length of the target service flow at the target transmission node is obtained by a first preset formula
- the time slot length of the target service flow at the target transmission node is obtained through the second preset formula:
- the first preset formula is:
- the second preset formula is:
- TS i,n is the time slot length of the target service flow with the sequence number i on the transmission node with the sequence number n
- TD i,n is the time slot of the target service flow with the sequence number i on the transmission node with the sequence number n
- PS i is the message length of the target service flow with sequence number i
- LR n,n+1 is the link rate between the transit node with sequence number n and the transit node with sequence number n+1
- SumID i,n Indicates the cumulative interference delay of the target service flow with sequence number i at the transmission node with sequence number n
- ID i,n represents the interference delay of the target service flow with sequence number i on the transmission node with sequence number n.
- the determining the time slot start time of the target service flow at the target transmission node according to the earliest sending time of the target service flow at the previous node of the target transmission node includes:
- the time slot start time of the target service flow at the target transmission node is determined according to a third preset formula.
- real-time flow packets are sent periodically, that is to say, the sending time of the source node in the transmission path of the target service flow is fixed, which is set to t0.
- the time slot start time of each node can be based on the earliest sending time of the previous node.
- the obtaining the earliest sending time of the target service flow at the previous node of the target transmission node includes:
- the earliest sending time of the target service flow at the node preceding the target transport node is equal to the gated opening time of the previous node;
- the earliest sending of the target service flow at the node preceding the target transport node The time is equal to the time slot start time of the target service flow at the previous node;
- the earliest sending time of the target service flow at the node preceding the target transmission node is the transmission of the target service flow at the source node time.
- the gate control indicator of the target service flow at the transmission node is an indicator indicating that gate control is not set, there is no need to generate a gate control event at the transmission node, and the queue remains in a gated state.
- the gate control indicator of the transmission node is an indicator that indicates the setting of the gate control, as shown in FIG. 5 , the target service flow is aligned with the last time of the time slot at the time of closing the gate of the transmission node, and the time of opening the door is equal to the time at the end of the time slot. Time minus the transmission delay of the message. It can be expressed by the formula as:
- GCL_Close i,n TS_Offset i,n +TS i,n
- GCL_Open i,n TS_Offset i,n +TS i,n -TD i,n ;
- GCL_Close i,n is the gate closing time of the target service flow with the sequence number i on the transmission node with the sequence number n
- GCL_Open i,n is the gate of the target service flow with the sequence number i on the transmission node with the sequence number n.
- TS_Offset i,n indicates the time slot start time of the target service flow with sequence number i in the transmission node with sequence number n.
- the door of the queue is closed at the beginning of the time slot until the latest time when the message may arrive, and then the door is opened. If the message arrives in advance, Waiting in the queue can ensure that the message can be sent at a certain time no matter when it arrives, so that the jitter generated in the previous transmission node can be eliminated, that is, the accumulated interference delay is cleared.
- the three preset formulas are:
- TS_Offset i,n Best_ST i,n-1 +LD n-1,n +TD i,n-1 +PD n ;
- TS_Offset i,n indicates that the target service flow with sequence number i is at the time slot start time of the transmission node with sequence number n
- Best_ST i,n-1 indicates that the target service flow with sequence number i is at the transmission node with sequence number n-1
- LD n-1,n represents the signal propagation delay between the transmission node with serial number n-1 and the transmission node with serial number n
- TD i,n-1 represents TD i
- n represents serial number i
- PD n represents the processing delay of the transmission node with sequence number n.
- the logical block diagram for calculating the time slot length and position of each transmission node on the transmission path of the target service flow i may be shown in FIG. 4 .
- the following is a specific example to illustrate the time slot length and position calculation process under various gating settings (taking the minimum frame length that can be interrupted in frame preemption as an example of 123):
- S02 The packet is gated at the source node and sent at a determined time t0.
- S03 The packet arrives at the B1 node, and the time slot length and position of the packet at the B1 node are calculated.
- ID1 123Bytes/Link2_Rate.
- the time slot length of the message in the B1 node includes: the transmission delay of this node, the jitter accumulated before, and the newly added jitter of this node.
- S033 Calculate the earliest start position of the time slot.
- the earliest starting position of the time slot is equal to the earliest sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset1 t0+LD1+TDSource+PD1, that is, time t4.
- S035 Calculate the earliest sending time of the message at the B1 node. Since no gating event is generated, the earliest sending time is equal to the time slot starting time.
- S04 The packet arrives at the B2 node, and the time slot length and position of the packet at the B2 node are calculated.
- ID2 123Bytes/Link3_Rate.
- the time slot length of the message in the B2 node includes: the transmission delay of the current node, the jitter accumulated before, and the newly added jitter of the current node.
- TS2 TD2+ID1+ID2.
- S043 Calculate the earliest start position of the time slot.
- the earliest starting position of the time slot is equal to the earliest sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset2 t4+LD2+TD1+PD2, that is, time t6.
- S045 Calculate the earliest sending time of the message at the B2 node. Since no gating event is generated, the earliest sending time is equal to the time slot starting time.
- S05 Calculate the receiving time of the message at the sink node.
- S051 the earliest receiving time. The earliest time when the message arrives at the destination node is equal to the earliest sending time of the B2 node plus the link delay and transmission delay.
- Best_RcvTime t6+LD3+TD2, that is, time t7.
- S052 the latest reception time.
- the latest time when the message arrives at the destination node is equal to the latest sending time of the B2 node plus the link delay and transmission delay.
- the latest sending time of the B2 node is equal to the earliest sending time plus the accumulated interference delay.
- Worst_RcvTime t6+Sum_ID+LD3+TD2, that is, time t9.
- the simulation shows that under the topology of 16 switches and 16 terminals, the service flow is randomly generated from 1ms to 20ms, and the number of schedulable flows using traditional gating is 6400. After the number of schedulable flows dropped to 3600, the number of schedulable flows dropped by 43% but the number of gates required was reduced from a maximum of 11000 to 0.
- Completely no gating will generate a certain amount of jitter at the receiving end.
- a gating event can be generated at the tail node to eliminate the accumulated jitter, while other nodes use no-gating scheduling.
- S02 The packet is gated at the source node and sent at a determined time t0.
- S03 The packet arrives at the B1 node, and the time slot length and position of the packet at the B1 node are calculated.
- ID1 123Bytes/Link2_Rate.
- the time slot length of the message in the B1 node includes: the transmission delay of this node, the jitter accumulated before, and the newly added jitter of this node.
- S033 Calculate the earliest start position of the time slot.
- the earliest starting position of the time slot is equal to the sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset1 t0+LD1+TDSource+PD1, that is, time t2.
- S035 Calculate the earliest sending time of the message at the B1 node. Since no gating event is generated, the earliest sending time is equal to the time slot starting time.
- S04 The packet arrives at the B2 node, and the time slot length and position of the packet at the B2 node are calculated.
- ID2 123Bytes/Link3_Rate.
- the time slot length of the message in the B2 node includes: the transmission delay of the current node, the jitter accumulated before, and the newly added jitter of the current node.
- TS2 TD2+ID1+ID2.
- S043 Calculate the earliest start position of the time slot.
- the earliest starting position of the time slot is equal to the earliest sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset2 t2+LD2+TD1+PD2, that is, time t4.
- S045 Calculate the earliest sending time of the message at the B2 node. Since no gating event is generated, the earliest sending time is equal to the time slot starting time.
- S05 The packet arrives at the B3 node, and the time slot length and position of the packet at the B3 node are calculated.
- S051 Calculate the interference delay of the packet at the B3 node. Since B3 generates a gating event, no additional jitter is introduced.
- the time slot length of the message in the B3 node includes: the transmission delay of this node and the jitter accumulated before.
- TS3 TD3+ID1+ID2.
- S053 Calculate the earliest starting position of the time slot.
- the starting position of the time slot is equal to the sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset3 t4+LD3+TD2+PD3, that is, time t5.
- S055 Calculate the opening and closing times of the packet at the B3 node. The moment when the door closes is equal to the moment when the time slot starts.
- GCL_Close3 TS_Offset3, that is, time t5.
- the moment when the door is opened is equal to the moment when the time slot ends minus the transmission delay of this node.
- GCL_Open3 TS_Offset3+TS3-TD3, that is, time t6.
- S056 Calculate the earliest sending time of the message on the B3 node. Since a gate control event is generated, the sending time of the message is determined, and the earliest sending time is equal to the opening time.
- S06 Calculate the receiving time of the message at the sink node.
- the receiving time of the message at the sink node is equal to the sending time of the B3 node plus the link delay and transmission delay.
- Best_RcvTime t6+LD4+TD3, that is, time t8.
- the sending time of the message at the B3 node is determined, the receiving time at the sink node is also determined, and the service has no jitter.
- the tail node gated scheduling is adopted, except for the source node and the network edge node, other intermediate nodes need to be gated. Bridge nodes do not need to be gated.
- Tail node gated scheduling achieves zero-jitter scheduling for services, but hop-by-hop accumulation still occupies a long time slot. Gating can be deployed at intermediate nodes to clear the accumulated jitter and increase the number of schedulable flows.
- S02 The packet is gated at the source node and sent at a determined time t0.
- S03 The packet arrives at the B1 node, and the time slot length and position of the packet at the B1 node are calculated.
- ID1 123Bytes/Link2_Rate.
- the time slot length of the message in the B1 node includes: the transmission delay of this node, the jitter accumulated before, and the newly added jitter of this node.
- S033 Calculate the earliest start position of the time slot.
- the earliest starting position of the time slot is equal to the earliest sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset1 t0+LD1+TDSource+PD1, that is, time t2.
- S035 Calculate the earliest sending time of the message at the B1 node. Since no gating event is generated, the earliest sending time is equal to the time slot starting time.
- S04 The packet arrives at the B2 node, and the time slot length and position of the packet at the B2 node are calculated.
- the time slot length of the message at node B2 includes: the transmission delay of this node and the jitter accumulated before.
- TS2 TD2+ID1.
- S043 Calculate the earliest start position of the time slot.
- the earliest starting position of the time slot is equal to the earliest sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- S045 Calculate the opening and closing times of the packet at the B2 node. The moment when the door closes is equal to the moment when the time slot starts.
- GCL_Close2 TS_Offset2, that is, time t4.
- the moment when the door is opened is equal to the moment when the time slot ends minus the transmission delay of this node.
- GCL_Open2 TS_Offset2+TS2-TD2, that is, time t5.
- S046 Calculate the earliest sending time of the message on the B2 node. Since a gate control event is generated, the sending time of the message is determined, and the earliest sending time is equal to the opening time.
- S05 The packet arrives at the B3 node, and the time slot length and position of the packet at the B3 node are calculated.
- S051 Calculate the interference delay of the packet at the B3 node, assuming that the B3 node enables the frame preemption function.
- ID3 123Bytes/Link4_Rate.
- the time slot length of the message in the B3 node includes: the transmission delay of this node, the jitter accumulated before, and the newly added jitter of this node.
- S053 Calculate the earliest starting position of the time slot.
- the starting position of the time slot is equal to the sending time of the previous point plus the delay caused by the link length, the transmission delay of the previous node and the processing delay of the current node.
- TS_Offset3 t5+LD3+TD2+PD3, that is, time t7.
- S055 Calculate the earliest sending time of the packet at the B3 node. Since no gating event is generated, the earliest sending time is equal to the time slot starting time.
- S06 Calculate the receiving time of the message at the sink node.
- S061 the earliest receiving time. The earliest time when the message arrives at the destination node is equal to the earliest sending time of the B3 node plus the link delay and transmission delay.
- Best_RcvTime t7+LD4+TD3, that is, time t8.
- S062 the latest reception time.
- the latest time when the message arrives at the destination node is equal to the latest sending time of the B2 node plus the link delay and transmission delay.
- the latest sending time of the B3 node is equal to the earliest sending time plus the accumulated interference delay.
- Worst_RcvTime t7+Sum_ID+LD4+TD3, which is time t9.
- the accumulated jitter can be cleared segment by segment, the length of the time slot can be reduced, and more flows can be scheduled.
- the simulation shows that under the topology of 16 switches and 16 terminals, service flows are randomly generated from 1ms to 20ms, the number of schedulable flows using traditional gating is 6400, and the number of schedulable flows after using partial node gating drops to 4500 The number of schedulable flows dropped by 29%, but the number of gates required was also reduced from a maximum of 11,000 to 388, a drop of 96%.
- the time-sensitive network timeslot scheduling method provided by this embodiment further includes the steps:
- S300 Determine the sending time of each target service flow at the source node according to the node time slot scheduling information of each target service flow, so that the time slots of all the target service flows at any node do not overlap.
- each real-time stream is determined at the optimal sending time of the source node.
- the packets are scheduled to be sent at all times. Specifically, corresponding gates can be set on the source nodes of each real-time flow, and the gates can be opened at the optimal sending time to send the corresponding real-time flow packets.
- this embodiment provides a time-sensitive network timeslot scheduling method, which sets an indicator of whether to set gate control on each transmission node for the target service flow, and determines whether the target service flow is in each transmission according to whether the gate control is set.
- the time slot length and time slot start time on the node are used to implement time slot scheduling, so that no gating can be set in some or all transmission nodes, and the number of gating table entries can be reduced.
- Nonvolatile memory may include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
- Volatile memory may include random access memory (RAM) or external cache memory.
- RAM is available in various forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain Road (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
- the present invention also provides a terminal correspondingly, as shown in FIG. 9 , the terminal includes a processor 10 and a memory 20.
- FIG. 9 only shows some components of the terminal, but it should be understood that it is not required to implement all the shown components, and more or less components may be implemented instead.
- the memory 20 may be an internal storage unit of the terminal, such as a hard disk or a memory of the terminal. In other embodiments, the memory 20 may also be an external storage device of the terminal, such as a plug-in hard disk equipped on the terminal, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, flash memory card (Flash Card), etc. Further, the memory 20 may also include both an internal storage unit of the terminal and an external storage device. The memory 20 is used for storing application software and various types of data installed in the terminal. The memory 20 can also be used to temporarily store data that has been output or is to be output. In one embodiment, a time-sensitive network timeslot scheduler 30 is stored in the memory 20, and the time-sensitive network timeslot scheduler 30 can be executed by the processor 10, thereby implementing the time-sensitive network timeslot scheduling method in the present application.
- a time-sensitive network timeslot scheduler 30 is stored in the memory 20, and the time-sensitive network timeslot scheduler 30 can be executed by the processor
- the processor 10 may be a central processing unit (Central Processing Unit, CPU), a microprocessor or other chips, for running the program code or processing data stored in the memory 20, such as executing all Describe the time-sensitive network slot scheduling method, etc.
- CPU Central Processing Unit
- microprocessor or other chips, for running the program code or processing data stored in the memory 20, such as executing all Describe the time-sensitive network slot scheduling method, etc.
- the transmission path includes a source node, a transmission node and a sink node;
- the node time slot scheduling information of the target service flow under the preset gating setting information is determined according to the preset gating setting information, wherein the preset gating setting information includes indicating that the target service flow is on each transmission node Whether to set a gating indicator, the node time slot scheduling information includes the time slot length and time slot start time of the target service flow on each transmission node;
- the sending time of each target service flow at the source node is determined, so that the time slots of all the target service flows at any node do not overlap.
- the present invention also provides a computer-readable storage medium in which one or more programs are stored, and the one or more programs can be executed by one or more processors to implement the time-sensitive network time slot as described above The steps of the scheduling method.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种时间敏感网络时隙调度方法、终端及存储介质,方法包括:获取目标业务流的传输路径,其中,所述传输路径中包括源节点、传输节点和宿节点;根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息;根据每个所述目标业务流的节点时隙调度信息确定各个所述目标业务流在源节点的发送时刻,以使得所有所述目标业务流在任一节点的时隙均不重叠。本发明可以在部分传输节点或者全部传输节点中不设置门控,减少门控表项数量。
Description
本发明涉及时间敏感网络技术领域,特别涉及一种时间敏感网络时隙调度方法、终端及存储介质。
随着工业物联网(IIoT)的兴起和工业4.0的提出,越来越多场景和用户开始关注TSN(Time-Sensitive Networking,时间敏感网络)技术。TSN允许周期性与非周期性数据在同一网络中传输。
为了实现时间敏感业务尽可能低的时延和抖动,广泛使用的方案是为实时业务在路径沿途预留专门的发送时间窗口,也被称为时隙。时间敏感业务可以在时隙内无干扰的传输。时隙调度的目的是考虑业务路径、链路长度、报文周期等因素进行计算,获得所有的实时流在每一跳的时隙长度和时隙开始时刻,在现有技术中,在每个节点都设置门控制度,在时隙开始时,将实时队列的门控打开并在时隙结束时将队列门控关闭,而门控开关的动作是由GCL(Gate Control List,门控列表)来控制的,一个时隙需要打开和关闭两个动作,在GCL列表中就会占用两条表项,对于每个业务流在每个节点都设置门控时间,会导致GCL列表中的表项过多。
因此,现有技术还有待改进和提高。
发明内容
针对现有技术的上述缺陷,本发明提供一种时间敏感网络时隙调度方法、装置、终端及存储介质,旨在解决现有技术中时间敏感网络中门控表项数量多的问题。
为了解决上述技术问题,本发明所采用的技术方案如下:
本发明的第一方面,提供一种时间敏感网络时隙调度方法,所述方法包括:
获取目标业务流的传输路径,其中,所述传输路径中包括源节点、传输节点和宿节 点;
根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息,其中,所述预设门控设置信息包括指示所述目标业务流在各个传输节点上是否设置门控的指示符,所述节点时隙调度信息包括所述目标业务流在各个传输节点上的时隙长度和时隙开始时刻;
根据每个所述目标业务流的节点时隙调度信息确定各个所述目标业务流在源节点的发送时刻,以使得所有所述目标业务流在任一节点的时隙均不重叠。
所述的时间敏感网络时隙调度方法,其中,所述根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息,包括:
根据所述预设门控设置信息确定所述目标业务流在目标传输节点的干扰时延;
根据所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度;
获取所述目标业务流在所述目标传输节点的前一节点的最早发送时刻,根据所述目标业务流在所述目标传输节点的前一节点的最早发送时刻确定所述目标业务流在所述目标传输节点的时隙开始时刻。
所述的时间敏感网络时隙调度方法,其中,所述根据所述预设门控设置信息确定所述目标业务流在目标传输节点的干扰时延,包括:
当所述目标业务流在所述目标传输节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的干扰时延为0;
当所述目标业务流在所述目标传输节点的门控指示符为不设置门控的指示符时:
若所述目标传输节点使能帧抢占,则所述目标业务流在所述目标传输节点的干扰时延通过公式ID
i,n=A/LR
n,n+1获得;
若所述目标传输节点未使能帧抢占,则所述目标业务流在所述目标传输节点的干扰时延通过公式ID
i,n=MTU
BE/LR
n,n+1获得;
其中,ID
i,n表示序号为i的目标业务流在序号为n的传输节点上的干扰时延,A为帧抢占中可被打断的最小帧长度,MTU
BE为BE流的最大传输长度,LR
n,n+1为序号为n的传输节点和序号为n+1的传输节点之间的链路速率。
所述的时间敏感网络时隙调度方法,其中,所述根据所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度,包括:
获取所述目标业务流在所述目标传输节点的累积干扰时延;
根据所述累积干扰时延和所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度。
所述的时间敏感网络时隙调度方法,其中,所述获取所述目标业务流在所述目标传输节点的累积干扰时延,包括:
当所述目标业务流在所述目标传输节点的上一节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的累积干扰时延为0;
当所述目标业务流在所述目标传输节点的上一节点的门控指示符为不设置门控的指示符时,所述目标业务流在所述目标传输节点的累积干扰时延通过公式SumID
i,n=SumID
i,n-1+ID
i,n-1获取,其中,SumID
i,n表示序号为i的目标业务流在序号为n的传输节点的累积干扰时延,SumID
i,n-1为i的目标业务流在序号为n-1的传输节点的累积干扰时延,ID
i,n-1表示序号为i的目标业务流在序号为n-1的传输节点上的干扰时延;
当目标传输节点为所述目标业务流的第一个传输节点时,所述目标业务流在所述目标传输节点的累积干扰时延为0。
所述的时间敏感网络时隙调度方法,其中,所述根据所述累积干扰时延和所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度,包括:
当所述目标业务流在所述目标传输节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的时隙长度通过第一预设公式获得;
当所述目标业务流在所述目标传输节点的门控指示符为不设置门控的指示符时,所述目标业务流在所述目标传输节点的时隙长度通过第二预设公式获取:
其中,TS
i,n为序号为i的目标业务流在序号为n的传输节点上的时隙长度,TD
i,n表示序号为i的目标业务流在序号为n的传输节点上的传输时延,PS
i为序号为i的目标业务流的报文长度,LR
n,n+1为序号为n的传输节点和序号为n+1的传输节点之间的链路速率,SumID
i,n表示序号为i的目标业务流在序号为n的传输节点的累积干扰时延,ID
i,n表示序号为i的目标业务流在序号为n的传输节点上的干扰时延。
所述的时间敏感网络时隙调度方法,其中,所述根据所述目标业务流在所述目标传输节点的前一节点的最早发送时刻确定所述目标业务流在所述目标传输节点的时隙开始时刻,包括:
根据第三预设公式确定所述目标业务流在所述目标传输节点的时隙开始时刻;
所述第三预设公式为:TS_Offset
i,n=Best_ST
i,n-1+LD
n-1,n+TD
i,n-1+PD
n;
其中,TS_Offset
i,n表示序号为i的目标业务流在序号为n的传输节点的时隙开始时刻,Best_ST
i,n-1表示序号为i的目标业务流在序号为n-1的传输节点的最早发送时刻,LD
n-1,n表示序号为n-1的传输节点到序号为n的传输节点之间的信号传播时延,TD
i,n-1表示TD
i,n表示序号为i的目标业务流在序号为n-1的传输节点上的传输时延,PD
n表示序号为n的传输节点的处理时延。
所述的时间敏感网络时隙调度方法,其中,所述获取所述目标业务流在所述目标传输节点的前一节点的最早发送时刻,包括:
当所述目标业务流在所述目标传输节点的前一节点的门控指示符为指示设置门控的指示符时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻等于所述前一节点的门控开门时刻;
当所述目标业务流在所述目标传输节点的前一节点的门控指示符为指示不设置门控的指示符时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻等于所述目标业务流在所述前一节点的时隙开始时刻;
当所述目标传输节点为所述目标业务流的第一个传输节点时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻为所述目标业务流在源节点的发送时刻。
本发明的第二方面,提供一种终端,所述终端包括处理器、与处理器通信连接的计 算机可读存储介质,所述计算机可读存储介质适于存储多条指令,所述处理器适于调用所述计算机可读存储介质中的指令,以执行实现上述任一项所述的时间敏感网络时隙调度方法的步骤。
本发明的第三方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任一项所述的时间敏感网络时隙调度方法的步骤。
与现有技术相比,本发明提供了一种时间敏感网络时隙调度方法、终端及存储介质,所述的时间敏感网络时隙调度方法,为目标业务流在各个传输节点上设置是否设置门控的指示符,根据是否设置门控来确定目标业务流在各个传输节点上的时隙长度和时隙开始时刻,实现时隙调度,这样可以在部分传输节点或者全部传输节点中不设置门控,减少门控表项数量。
图1为本发明提供的时间敏感网络时隙调度方法的实施例的流程图;
图2为传统的时隙调度示意图;
图3为传统时隙调度业务流周期示意图;
图4为本发明提供的时间敏感网络时隙调度方法的实施例的逻辑框图;
图5为本发明提供的时间敏感网络时隙调度方法的实施例中门控开门时刻示意图;
图6为本发明提供的时间敏感网络时隙调度方法的实施例中完全无门控时的报文转发过程示例图;
图7为本发明提供的时间敏感网络时隙调度方法的实施例中尾节点设置门控时的报文转发过程示例图;
图8为本发明提供的时间敏感网络时隙调度方法的实施例中中间节点设置门控时的报文转发过程示意图;
图9为本发明提供的终端的实施例的原理示意图。
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例一
如图1所示,所述时间敏感网络时隙调度方法的一个实施例中,包括步骤:
S100、获取目标业务流的传输路径,其中,所述传输路径包括源节点、传输节点和宿节点。
具体地,在时间敏感网络中,存在实时流和BE(Best Effort,尽力而为)流,前者要求更准确的到达时间,所述目标业务流为实时流,每个所述目标业务流有固定的传输路径,从源节点开始,经过传输节点转发,最终到达宿节点。
S200、根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息。
其中,所述预设门控设置信息包括知识所述目标业务流在各个传输节点上是否设置门控的指示符,所述节点时隙调度信息包括所述目标业务流在各个传输节点上的时隙长度和时隙开始时刻。
所述目标业务流在传输节点上的时隙中不会被其他的实时流所占用,也就是说,传输节点在所述目标业务流的时隙这一时间段内不会转发其他实时流的报文,但是,允许BE流的报文被转发,当BE流的报文在所述目标业务流的时隙内被转发,而所述目标业务流的报文到达时,可以使用帧抢占对BE流的报文转发进行打断。
如图2所示,发明人发现,在传统的时间敏感网络时隙调度中,源节点在t0时刻将报文发出,经过LD1(Link Delay,链路传播时延,指的是信号传播时延,与光纤长度以及光的传播速度有关)时间后,报文的第一个bit到达B1节点(第一个传输节点),再经过TD1(Transmission Delay,传输时延,与报文长度和链路速率相关)时间报文的最后一个bit到达B1节点,此时报文以及完整接收,开始进入B1节点的转发流程,经过PD1(Process Delay,节点处理时延,指的是节点处理报文的时间,与节点的能力相 关)时间后,报文到达B1的出接口队列可以开始发送,在t4时刻打开B1出接口的门控开关,报文将从B1节点转发出去,开门的时间等于报文在B1出接口的传输时延,也就是TD2,报文发送完成后在t5时刻将门关闭,允许其他业务转发,为了在t4时刻开门时链路上没有其他报文在传输,需要提前将其他队列的门关闭,这个提前量也称GB(Guard Band,保护带),在保护带内不允许开始任何新的报文传输。保护带的长度与节点的转发行为有关,如果节点不支持帧抢占,则保护带需要足够长以确保传输完一个最大MTU(Maximum Transmission Unit,最大传输单元)的BE数据包,如果节点支持帧抢占,保护带长度就是打断BE流传输所需的时间,后续B2节点的转发流程与B1节点类似,报文会在确定的t8时刻到达宿节点。在这个过程中,门控开关的动作是通过GCL来控制的,一个时隙需要打开和关闭两个动作,在GCL列表中就会占用两条表项,随着网络中实时流的数量增加,时隙的数量也会增加,因此门控数量也会相应增加,门控时间的数量除了与业务流数相关外,与业务流周期的差异的关系也非常大,如图3所示,两条流的周期分别是2和3,为了避免冲突,需要在整个宏周期内预留时隙,宏周期的长度等于两条流业务周期的最小公倍数,此例中为LCM(2,3)=6,Flow1在整个宏周期内占用了3个时隙,而Flow2在红周期内占用了2个时隙,因此以供需要5个时隙10条GCL表项,考虑业务周期差异更大的情景,比如三条流的业务周期分别是1、7、20,则所需要的宏周期长度为LCM(1,7,20)=140,三条流一共需要167个时隙,334个门控表项,这已经超过的大部分交换机所能支持的门控列表数量(交换机支持的最大条目数一般为255)。可见,随着流数量以及业务周期差异的增大,所需的门控表项数量会进一步急剧增加,甚至远超设备能力。即使设备支持巨大的GCL时事件数量,新增或者删除一条流就需要重写整个GCL表项,特别是在宏周期发生了变化的情况下,这会导致新增或删除业务的配置时间很长,影响业务部署效率。
同时,从前面的说明不难看出,由于在传统的时间敏感网络时隙调度中,每一个实时流时隙开始之前都需要设置保护带,以确保时隙开始时链路是空闲状态,随着时隙数量的增加,大量的门开关动作就需要大量的保护带,保护带不允许任何新的传输,因此对带宽有严重的浪费。
为了至少解决上述一个问题,本实施例提供的时间敏感网络时隙调度方法,设置预设门控设置信息,预设门控设置信息中包括指示所述目标业务流在各个传输节点上是否设置门控的指示符,根据所述预设门控设置信息确定节点时隙调度信息,对于所述目标业务流传输路径上的每个传输节点,可以不设置门控或者设置门控,减少了总的门控数量。
具体地,所述根据所述根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息,包括步骤:
S210、根据所述预设门控设置信息确定所述目标业务流在目标传输节点的干扰时延;
S220、根据所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度;
S230、获取所述目标业务流在所述目标传输节点的前一节点的最早发送时刻,根据所述目标业务流在在所述目标传输节点的前一节点的最早发送时刻确定所述目标业务流在所述目标传输节点的时隙开始时刻。
将所述目标业务流的传输路径中的每一个传输节点作为所述目标传输节点,可以得到所述目标业务流在每一个传输节点上的时隙长度和时隙开始时刻。
具体地,所述干扰时延是在不设置门控时,其他BE流的传输时间在所述业务流在时隙内传输占用的时间,即,当所述目标业务流在所述目标传输节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的干扰时延为0。而当所述目标业务流在所述目标传输节点的门控指示符为不设置门控的指示符时,根据所述目标传输节点是否支持帧抢断确定所述干扰时延,具体为:
若所述目标传输节点使能帧抢占,则所述目标业务流在所述目标传输节点的干扰时延通过公式ID
i,n=A/LR
n,n+1获得;
若所述目标传输节点未使能帧抢占,则所述目标业务流在所述目标传输节点的干扰时延通过公式ID
i,n=MTU
BE/LR
n,n+1获得。
其中,ID
i,n表示序号为i的目标业务流在序号为n的传输节点上的干扰时延,A为帧抢占中可被打断的最小帧长度,即字节数小于A的帧不允许被打断,帧抢占中可被打 断的最小帧长度根据协议的不同而不同,例如A可以为123字节,MTU
BE为BE流的最大传输长度,最大的BE帧(其长度为BE流的最大传输长度)可以是MTU长度的报文,LR
n,n+1为序号为n的传输节点和序号为n+1的传输节点之间的链路速率。值得说明的是,在本实施例中,传输节点的序号根据传输节点在所述目标业务流对应的传输路径中的顺序而定,即,序号为n+1的传输节点是目标业务流的传输路径中序号为n的传输节点的下一传输节点。
从上面的说明不难看出,所述干扰时延不一定会真实发生,所述干扰时延可以视为抖动,即干扰时延会导致报文的传输时间产生一定的抖动范围,但是为了保证所述目标业务流在所述目标传输节点上分配的时隙内所述目标业务流的报文能够传输完成,所述目标业务流在所述目标传输节点上的时隙应包括本节点的传输时延、之前的节点累积的抖动以及本节点新增的抖动。具体地,根据所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度,包括:
S221、获取所述目标业务流在所述目标传输节点的累积干扰时延;
S222、根据所述累积干扰时延和所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度。
所述目标业务流在所述目标传输节点的累积干扰时延是所述目标业务流在所述目标传输节点之前的传输节点上产生的干扰时延累积得到的,当所述目标业务流在传输节点上未设置门控时,将前一个传输节点上的累积干扰时延加上本传输节点上的干扰时延得到下一个传输节点的累积干扰时延,当所述目标业务流在传输节点上设置了门控时,将当前的累积干扰时延清零,即下一个传输节点的累积干扰时延为0,具体地:
所述获取所述目标业务流在所述目标传输节点的累积干扰时延,包括:
当所述目标业务流在所述目标传输节点的上一节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的累积干扰时延为0;
当所述目标业务流在所述目标传输节点的上一节点的门控指示符为不设置门控的指示符时,所述目标业务流在所述目标传输节点的累积干扰时延通过公式SumID
i,n=SumID
i,n-1+ID
i,n-1获取,其中,SumID
i,n表示序号为i的目标业务流在序号为n 的传输节点的累积干扰时延,SumID
i,n-1为i的目标业务流在序号为n-1的传输节点的累积干扰时延,ID
i,n-1表示序号为i的目标业务流在序号为n-1的传输节点上的干扰时延;
而对于所述目标业务流的传输路径中的第一个传输节点,由于目标业务流在源节点的传输时刻是确定的(可以为t0),因此,当目标传输节点为所述目标业务流的第一个传输节点时,所述目标业务流在所述目标传输节点的累积干扰时延为0。
所述根据所述累积干扰时延和所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度,包括:
当所述目标业务流在所述目标传输节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的时隙长度通过第一预设公式获得;
当所述目标业务流在所述目标传输节点的门控指示符为不设置门控的指示符时,所述目标业务流在所述目标传输节点的时隙长度通过第二预设公式获取:
其中,TS
i,n为序号为i的目标业务流在序号为n的传输节点上的时隙长度,TD
i,n表示序号为i的目标业务流在序号为n的传输节点上的传输时延,PS
i为序号为i的目标业务流的报文长度,LR
n,n+1为序号为n的传输节点和序号为n+1的传输节点之间的链路速率,SumID
i,n表示序号为i的目标业务流在序号为n的传输节点的累积干扰时延,ID
i,n表示序号为i的目标业务流在序号为n的传输节点上的干扰时延。
得到时隙的长度之后,得到时隙的开始时刻,即可以确定一个时隙。所述根据所述目标业务流在所述目标传输节点的前一节点的最早发送时刻确定所述目标业务流在所述目标传输节点的时隙开始时刻,包括:
根据第三预设公式确定所述目标业务流在所述目标传输节点的时隙开始时刻。
在时间敏感网络中,实时流的报文是按照周期发送的,也就是说,所述目标业务流在传输路径中的源节点的发送时刻是固定的,设为t0,每个所述目标业务流在每个节点 的时隙开始时刻可以根据前一节点的最早发送时刻。具体地,所述获取所述目标业务流在所述目标传输节点的前一节点的最早发送时刻,包括:
当所述目标业务流在所述目标传输节点的前一节点的门控指示符为指示设置门控的指示符时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻等于所述前一节点的门控开门时刻;
当所述目标业务流在所述目标传输节点的前一节点的门控指示符为指示不设置门控的指示符时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻等于所述目标业务流在所述前一节点的时隙开始时刻;
当所述目标传输节点为所述目标业务流的第一个传输节点时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻为所述目标业务流在源节点的发送时刻。
具体地,当所述目标业务流在传输节点的门控指示符为指示不设置门控的指示符时,在该传输节点无需产生门控事件,队列保持开门状态,当所述目标业务流在传输节点的门控指示符为指示设置门控的指示符时,如图5所示,所述目标业务流在该传输节点的关门时刻与时隙的最后时刻对齐,开门时刻等于时隙结束的时间减去报文的传输时延。可以用公式表示为:
GCL_Close
i,n=TS_Offset
i,n+TS
i,n
GCL_Open
i,n=TS_Offset
i,n+TS
i,n-TD
i,n;
其中,GCL_Close
i,n为序号为i的目标业务流在序号为n的传输节点上的门控关门时刻,GCL_Open
i,n为序号为i的目标业务流在序号为n的传输节点上的门控开门时刻,TS_Offset
i,n表示序号为i的目标业务流在序号为n的传输节点的时隙开始时刻。
根据上述对开门时刻的说明,不难看出,在设置了门控的传输节点上,在时隙开始时队列的门关闭直到报文可能到达的最晚时刻再将门打开,如果报文提前到达,则在队列中等待,可以确保报文不论何时到达都可以在确定的时刻发送,这样就可以消除在之前的传输节点中产生的抖动,即累积干扰时延被清零。
在得到所述目标业务流在所述目标传输节点的前一节点的最早发送时刻后,根据第三预设公式确定所述目标业务流在所述目标传输节点的时隙开始时刻,所述第三预设公 式为:
TS_Offset
i,n=Best_ST
i,n-1+LD
n-1,n+TD
i,n-1+PD
n;
其中,TS_Offset
i,n表示序号为i的目标业务流在序号为n的传输节点的时隙开始时刻,Best_ST
i,n-1表示序号为i的目标业务流在序号为n-1的传输节点的最早发送时刻,LD
n-1,n表示序号为n-1的传输节点到序号为n的传输节点之间的信号传播时延,TD
i,n-1表示TD
i,n表示序号为i的目标业务流在序号为n-1的传输节点上的传输时延,PD
n表示序号为n的传输节点的处理时延。
目标业务流i在传输路径上每一传输节点的时隙长度和位置计算的逻辑框图可以如图4所示。下面具体举例说明各种门控设置情况下时隙长度和位置计算过程(以帧抢占中可被打断的最小帧长度为123为例):
1.无门控调度
如图6所示,无门控调度时的实时流在各节点的时隙确定过程如下:
S01:初始化参数。
流累积的干扰时延Sum_ID=0;
所有交换节点均不生成门控事件,Enanble_GCL=0;
S02:报文在源节点使能了门控,并在确定的时刻t0发送。
S03:报文到达B1节点,计算报文在B1节点的时隙长度和位置。
S031:计算报文在B1节点的干扰时延,假设B1节点启用了帧抢占功能。
ID1=123Byets/Link2_Rate。
S032:计算时隙长度。报文在B1节点的时隙长度包含了:本节点的传输时延、前面累积的抖动以及本节点新增的抖动。
TS1=TD1+Sum_ID+ID1,由于Sum_ID=0,因此,
TS1=TD1+ID1=Packet_Size/Link2_Rate+123Byets/Link2_Rate。
S033:计算时隙最早的开始位置。时隙的最早起始位置等于前一个点的最早发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset1=t0+LD1+TDSource+PD1,也就是t4时刻。
S034:更新累积的干扰时延。在计算出时隙长度和位置之后,需要更新累积时延,将本节点新增的干扰时延累加到Sum_ID中,即,
Sum_ID=Sum_ID+ID1=0+ID1。
S035:计算报文在B1节点的最早发送时刻,由于未生成门控事件,最早发送时刻就等于时隙开始的时刻。
Best_ST1=TS_Offset1=t4。
S04:报文到达B2节点,计算报文在B2节点的时隙长度和位置。
S041:计算报文在B2节点的干扰时延,假设B2节点启用了帧抢占功能。
ID2=123Byets/Link3_Rate。
S042:计算时隙长度。报文在B2节点的时隙长度包含了:本节点的传输时延、前面累积的抖动以及本节点新增的抖动。
TS2=TD2+Sum_ID+ID2,由于Sum_ID已经累积到了ID1,因此,
TS2=TD2+ID1+ID2。
S043:计算时隙最早开始的位置。时隙的最早起始位置等于前一个点的最早发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset2=t4+LD2+TD1+PD2,也就是t6时刻。
S044:更新累积的干扰时延。在计算出时隙长度和位置之后,需要更新累积时延,将本节点新增的干扰时延累加到Sum_ID中,即
Sum_ID=Sum_ID+ID2=ID1+ID2。
S045:计算报文在B2节点的最早发送时刻,由于未生成门控事件,最早发送时刻就等于时隙开始的时刻。
Best_ST2=TS_Offset2=t6。
S05:计算报文在宿节点的接收时刻。
S051:最早接收时刻。报文最早到达宿节点的时刻等于B2节点的最早发送时刻加上链路时延以及传输时延。
Best_RcvTime=t6+LD3+TD2,也就是t7时刻。
S052:最晚接收时刻。报文最晚到达宿节点的时刻等于B2节点的最晚发送时刻加上链路时延以及传输时延。而B2节点的最晚发送时刻等于最早发送时刻加上累积的干扰时延。
Worst_RcvTime=t6+Sum_ID+LD3+TD2,也就是t9时刻。
可以看出,采用无门控调度后,除了源节点需要门控以确保业务在确定的时刻发包外,其他网桥节点完全无需门控,简化硬件,虽然由于抖动的累积,报文占用的时隙长度会逐点增加,可调度的流数量会降低,报文在宿节点的接收时刻不确定,会存在一定的抖动,但无门控避免了保护带的消耗,整体的网络利用率会提高,适合实时流数量较少的场景,仿真显示在16个交换机和16个终端的拓扑下,业务流从1ms~20ms随机生成,使用传统门控可调度的流数量为6400条,采用无门控后可调度的流数量下降到3600条,可调度的流数量下降了43%但所需的门控数量从最大11000条降低到了0。
2.尾节点门控调度
完全无门控会在接收端产生一定的抖动,为了实现业务0抖动的要求,可以在尾节点生成门控事件消除累积的抖动,而其他节点采用无门控调度。
如图7所示,尾节点门控调度时的实时流在各节点的时隙确定过程如下:
S01:初始化参数。
流累积的干扰时延Sum_ID=0;
除了B3外其他交换节点均不生成门控事件,Enanble_GCL3=1,其他Enanble_GCL=0;
S02:报文在源节点使能了门控,并在确定的时刻t0发送。
S03:报文到达B1节点,计算报文在B1节点的时隙长度和位置。
S031:计算报文在B1节点的干扰时延,假设B1节点启用了帧抢占功能。
ID1=123Byets/Link2_Rate。
S032:计算时隙长度。报文在B1节点的时隙长度包含了:本节点的传输时延、前面累积的抖动以及本节点新增的抖动。
TS1=TD1+Sum_ID+ID1,由于Sum_ID=0,因此,
TS1=TD1+ID1=Packet_Size/Link2_Rate+123Byets/Link2_Rate。
S033:计算时隙最早的开始位置。时隙的最早起始位置等于前一个点的发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset1=t0+LD1+TDSource+PD1,也就是t2时刻。
S034:更新累积的干扰时延。将本节点新增的干扰时延累加到Sum_ID中,即,
Sum_ID=Sum_ID+ID1=0+ID1。
S035:计算报文在B1节点的最早发送时刻,由于未生成门控事件,最早发送时刻就等于时隙开始的时刻。
Best_ST1=TS_Offset1=t2。
S04:报文到达B2节点,计算报文在B2节点的时隙长度和位置。
S041:计算报文在B2节点的干扰时延,假设B2节点启用了帧抢占功能。
ID2=123Byets/Link3_Rate。
S042:计算时隙长度。报文在B2节点的时隙长度包含了:本节点的传输时延、前面累积的抖动以及本节点新增的抖动。
TS2=TD2+Sum_ID+ID2,由于Sum_ID已经累积到了ID1,因此,
TS2=TD2+ID1+ID2。
S043:计算时隙最早开始的位置。时隙的最早起始位置等于前一个点的最早发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset2=t2+LD2+TD1+PD2,也就是t4时刻。
S044:更新累积的干扰时延。将本节点新增的干扰时延累加到Sum_ID中,即,
Sum_ID=Sum_ID+ID2=ID1+ID2。
S045:计算报文在B2节点的最早发送时刻,由于未生成门控事件,最早发送时刻就等于时隙开始的时刻。
Best_ST2=TS_Offset2=t4。
S05:报文到达B3节点,计算报文在B3节点的时隙长度和位置。
S051:计算报文在B3节点的干扰时延,由于B3生成了门控事件,不引入额外的 抖动。
ID3=0。
S052:计算时隙长度。报文在B3节点的时隙长度包含了:本节点的传输时延以及前面累积的抖动。
TS3=TD3+Sum_ID,由于Sum_ID已经累积到了ID1+ID2,因此,
TS3=TD3+ID1+ID2。
S053:计算时隙最早开始的位置。时隙的起始位置等于前一个点的发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset3=t4+LD3+TD2+PD3,也就是t5时刻。
S054:更新累积的干扰时延。由于本节点生成了门控事件,将累积的抖动清零。
Sum_ID=0。
S055:计算报文在B3节点的开门和关门时刻。关门的时刻等于时隙开始的时刻。
GCL_Close3=TS_Offset3,也就是t5时刻。
开门的时刻等于时隙结束的时刻减去本节点的传输时延。
GCL_Open3=TS_Offset3+TS3–TD3,也就是t6时刻。
S056:计算报文在B3节点的最早发送时刻,由于生成了门控事件,报文的发送时刻是确定的,最早发送时刻就等于开门的时刻。
Best_ST3=GCL_Open3=t6。
S06:计算报文在宿节点的接收时刻。报文在宿节点的接收时刻等于B3节点的发送时刻加上链路时延以及传输时延。
Best_RcvTime=t6+LD4+TD3,也就是t8时刻。
由于报文在B3节点的发送时刻是确定的,因此在宿节点的接收时刻也是确定的,业务无抖动,采用尾节点门控调度后,除了源节点和网络边缘节点需要门控外,其他中间网桥节点无需门控。
3.中间节点门控调度。
尾节点门控调度实现了业务0抖动的调度,但逐跳的累积还是会占用较长的时隙, 可以在中间节点部署门控将累积的抖动清零,增加可调度的流数量。
如图8所示,中间节点门控调度时的实时流在各节点的时隙确定过程如下:
S01:初始化参数。
流累积的干扰时延Sum_ID=0;
除了B2外其他交换节点均不生成门控事件,Enanble_GCL2=1,其他Enanble_GCL=0;
S02:报文在源节点使能了门控,并在确定的时刻t0发送。
S03:报文到达B1节点,计算报文在B1节点的时隙长度和位置。
S031:计算报文在B1节点的干扰时延,假设B1节点启用了帧抢占功能。
ID1=123Byets/Link2_Rate。
S032:计算时隙长度。报文在B1节点的时隙长度包含了:本节点的传输时延、前面累积的抖动以及本节点新增的抖动。
TS1=TD1+Sum_ID+ID1,由于Sum_ID=0,因此,
TS1=TD1+ID1=Packet_Size/Link2_Rate+123Byets/Link2_Rate。
S033:计算时隙最早的开始位置。时隙的最早起始位置等于前一个点的最早发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset1=t0+LD1+TDSource+PD1,也就是t2时刻。
S034:更新累积的干扰时延。将本节点新增的干扰时延累加到Sum_ID中,即
Sum_ID=Sum_ID+ID1=0+ID1。
S035:计算报文在B1节点的最早发送时刻,由于未生成门控事件,最早发送时刻就等于时隙开始的时刻。
Best_ST1=TS_Offset1=t2。
S04:报文到达B2节点,计算报文在B2节点的时隙长度和位置。
S041:计算报文在B2节点的干扰时延,由于B2生成了门控事件,不引入额外的抖动。
ID2=0。
S042:计算时隙长度。报文在B2节点的时隙长度包含了:本节点的传输时延和前面累积的抖动。
TS2=TD2+Sum_ID,由于Sum_ID已经累积到了ID1,因此,
TS2=TD2+ID1。
S043:计算时隙最早开始的位置。时隙的最早起始位置等于前一个点的最早发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset2=Best_ST1+LD2+TD1+PD2=t2+LD2+TD1+PD2,也就是t4时刻。
S044:更新累积的干扰时延。由于本节点生成了门控事件,将累积的抖动清零。
Sum_ID=0。
S045:计算报文在B2节点的开门和关门时刻。关门的时刻等于时隙开始的时刻。
GCL_Close2=TS_Offset2,也就是t4时刻。
开门的时刻等于时隙结束的时刻减去本节点的传输时延。
GCL_Open2=TS_Offset2+TS2–TD2,也就是t5时刻。
S046:计算报文在B2节点的最早发送时刻,由于生成了门控事件,报文的发送时刻是确定的,最早发送时刻就等于开门的时刻。
Best_ST2=GCL_Open2=t5。
S05:报文到达B3节点,计算报文在B3节点的时隙长度和位置。
S051:计算报文在B3节点的干扰时延,假设B3节点启用了帧抢占功能。
ID3=123Byets/Link4_Rate。
S052:计算时隙长度。报文在B3节点的时隙长度包含了:本节点的传输时延、前面累积的抖动以及本节点新增的抖动。
TS3=TD3+Sum_ID+ID3,由于Sum_ID在B2节点已经清零,因此,
TS3=TD3+ID3=Packet_Size/Link4_Rate+123Byets/Link4_Rate。
S053:计算时隙最早开始的位置。时隙的起始位置等于前一个点的发送时刻加上链路长度产生的时延、前一个节点的传输时延和本节点的处理时延。
TS_Offset3=t5+LD3+TD2+PD3,也就是t7时刻。
S054:更新累积的干扰时延。将本节点新增的干扰时延累加到Sum_ID中,即
Sum_ID=Sum_ID+ID3=0+ID3。
S055:计算报文在B3节点的最早发送时刻,由于未生成门控事件,最早发送时刻就等于时隙开始的时刻。
Best_ST3=TS_Offset3=t7。
S06:计算报文在宿节点的接收时刻。
S061:最早接收时刻。报文最早到达宿节点的时刻等于B3节点的最早发送时刻加上链路时延以及传输时延。
Best_RcvTime=t7+LD4+TD3,也就是t8时刻。
S062:最晚接收时刻。报文最晚到达宿节点的时刻等于B2节点的最晚发送时刻加上链路时延以及传输时延。而B3节点的最晚发送时刻等于最早发送时刻加上累积的干扰时延。
Worst_RcvTime=t7+Sum_ID+LD4+TD3,也就是t9时刻。
采用中间节点门控调度后,可以逐段的清除累积的抖动,降低时隙占用的长度,可以调度更多的流。仿真显示在16个交换机和16个终端的拓扑下,业务流从1ms~20ms随机生成,使用传统门控可调度的流数量为6400条,采用部分节点门控后可调度的流数量下降到4500条,可调度的流数量下降了29%,但所需的门控数量也从最大11000条降低到了388条,下降了96%。
请再次参阅图1,本实施例提供的时间敏感网络时隙调度方法还包括步骤:
S300、根据每个所述目标业务流的节点时隙调度信息确定各个所述目标业务流在源节点的发送时刻,以使得所有所述目标业务流在任一节点的时隙均不重叠。
不难看出,通过上述步骤,可以得到所述目标业务流在各个传输节点上的是长度,并将所述目标业务流在各个传输节点上的时隙开始时刻用所述目标业务流在源节点的发送时刻表示。调整终端的发送时刻,当确保所有的实时流在任何一个节点的时隙都不重叠时各个实时流在源节点的最优发送时刻确定,在实时流的报文传输过程中,按照最优发送时刻调度报文进行发送,具体可以在各个实时流的源节点设置相应的门控,在最 优发送时刻打开门控发送对应的实时流的报文。
综上所述,本实施例提供一种时间敏感网络时隙调度方法,为目标业务流在各个传输节点上设置是否设置门控的指示符,根据是否设置门控来确定目标业务流在各个传输节点上的时隙长度和时隙开始时刻,实现时隙调度,这样可以在部分传输节点或者全部传输节点中不设置门控,减少门控表项数量。
应该理解的是,虽然本发明说明书附图中给出的的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取计算机可读存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
实施例二
基于上述实施例,本发明还相应提供了一种终端,如图9所示,所述终端包括处理 器10以及存储器20。图9仅示出了终端的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
所述存储器20在一些实施例中可以是所述终端的内部存储单元,例如终端的硬盘或内存。所述存储器20在另一些实施例中也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器20还可以既包括所述终端的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述终端的应用软件及各类数据。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有时间敏感网络时隙调度程序30,该时间敏感网络时隙调度程序30可被处理器10所执行,从而实现本申请中时间敏感网络时隙调度方法。
所述处理器10在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述时间敏感网络时隙调度方法等。
在一实施例中,当处理器10执行所述存储器20中时间敏感网络时隙调度程序30时实现以下步骤:
获取目标业务流的传输路径,其中,所述传输路径中包括源节点、传输节点和宿节点;
根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息,其中,所述预设门控设置信息包括指示所述目标业务流在各个传输节点上是否设置门控的指示符,所述节点时隙调度信息包括所述目标业务流在各个传输节点上的时隙长度和时隙开始时刻;
根据每个所述目标业务流的节点时隙调度信息确定各个所述目标业务流在源节点的发送时刻,以使得所有所述目标业务流在任一节点的时隙均不重叠。
实施例三
本发明还提供一种计算机可读存储介质,其中,存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上所述的时间敏感网络时隙调度方法的步骤。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
- 一种时间敏感网络时隙调度方法,其特征在于,所述方法包括:获取目标业务流的传输路径,其中,所述传输路径中包括源节点、传输节点和宿节点;根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息,其中,所述预设门控设置信息包括指示所述目标业务流在各个传输节点上是否设置门控的指示符,所述节点时隙调度信息包括所述目标业务流在各个传输节点上的时隙长度和时隙开始时刻;根据每个所述目标业务流的节点时隙调度信息确定各个所述目标业务流在源节点的发送时刻,以使得所有所述目标业务流在任一节点的时隙均不重叠。
- 根据权利要求1所述的时间敏感网络时隙调度方法,其特征在于,所述根据预设门控设置信息确定所述目标业务流在预设门控设置信息下的节点时隙调度信息,包括:根据所述预设门控设置信息确定所述目标业务流在目标传输节点的干扰时延;根据所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度;获取所述目标业务流在所述目标传输节点的前一节点的最早发送时刻,根据所述目标业务流在所述目标传输节点的前一节点的最早发送时刻确定所述目标业务流在所述目标传输节点的时隙开始时刻。
- 根据权利要求2所述的时间敏感网络时隙调度方法,其特征在于,所述根据所述预设门控设置信息确定所述目标业务流在目标传输节点的干扰时延,包括:当所述目标业务流在所述目标传输节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的干扰时延为0;当所述目标业务流在所述目标传输节点的门控指示符为不设置门控的指示符时:若所述目标传输节点使能帧抢占,则所述目标业务流在所述目标传输节点的干扰时延通过公式ID i,n=A/LR n,n+1获得;若所述目标传输节点未使能帧抢占,则所述目标业务流在所述目标传输节点的干扰时延通过公式ID i,n=MTU BE/LR n,n+1获得;其中,ID i,n表示序号为i的目标业务流在序号为n的传输节点上的干扰时延,A为帧抢占中可被打断的最小帧长度,MTU BE为BE流的最大传输长度,LR n,n+1为序号为n的传输节点和序号为n+1的传输节点之间的链路速率。
- 根据权利要求2所述的时间敏感网络时隙调度方法,其特征在于,所述根据所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度,包括:获取所述目标业务流在所述目标传输节点的累积干扰时延;根据所述累积干扰时延和所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度。
- 根据权利要求4所述的时间敏感网络时隙调度方法,其特征在于,所述获取所述目标业务流在所述目标传输节点的累积干扰时延,包括:当所述目标业务流在所述目标传输节点的上一节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的累积干扰时延为0;当所述目标业务流在所述目标传输节点的上一节点的门控指示符为不设置门控的指示符时,所述目标业务流在所述目标传输节点的累积干扰时延通过公式SumID i,n=SumID i,n-1+ID i,n-1获取,其中,SumID i,n表示序号为i的目标业务流在序号为n的传输节点的累积干扰时延,SumID i,n-1为i的目标业务流在序号为n-1的传输节点的累积干扰时延,ID i,n-1表示序号为i的目标业务流在序号为n-1的传输节点上的干扰时延;当目标传输节点为所述目标业务流的第一个传输节点时,所述目标业务流在所述目标传输节点的累积干扰时延为0。
- 根据权利要求5所述的时间敏感网络时隙调度方法,其特征在于,所述根据所述累积干扰时延和所述干扰时延确定所述目标业务流在所述目标传输节点的时隙长度,包括:当所述目标业务流在所述目标传输节点的门控指示符为设置门控的指示符时,所述目标业务流在所述目标传输节点的时隙长度通过第一预设公式获得;当所述目标业务流在所述目标传输节点的门控指示符为不设置门控的指示符时,所述目标业务流在所述目标传输节点的时隙长度通过第二预设公式获取:其中,TS i,n为序号为i的目标业务流在序号为n的传输节点上的时隙长度,TD i,n表示序号为i的目标业务流在序号为n的传输节点上的传输时延,PS i为序号为i的目标业务流的报文长度,LR n,n+1为序号为n的传输节点和序号为n+1的传输节点之间的链路速率,SumID i,n表示序号为i的目标业务流在序号为n的传输节点的累积干扰时延,ID i,n表示序号为i的目标业务流在序号为n的传输节点上的干扰时延。
- 根据权利要求2所述的时间敏感网络时隙调度方法,其特征在于,所述根据所述目标业务流在所述目标传输节点的前一节点的最早发送时刻确定所述目标业务流在所述目标传输节点的时隙开始时刻,包括:根据第三预设公式确定所述目标业务流在所述目标传输节点的时隙开始时刻;所述第三预设公式为:TS_Offset i,n=Best_ST i,n-1+LD n-1,n+TD i,n-1+PD n;其中,TS_Offset i,n表示序号为i的目标业务流在序号为n的传输节点的时隙开始时刻,Best_ST i,n-1表示序号为i的目标业务流在序号为n-1的传输节点的最早发送时刻,LD n-1,n表示序号为n-1的传输节点到序号为n的传输节点之间的信号传播时延,TD i,n-1表示TD i,n表示序号为i的目标业务流在序号为n-1的传输节点上的传输时延,PD n表示序号为n的传输节点的处理时延。
- 根据权利要求2所述的时间敏感网络时隙调度方法,其特征在于,所述获取所述目标业务流在所述目标传输节点的前一节点的最早发送时刻,包括:当所述目标业务流在所述目标传输节点的前一节点的门控指示符为指示设置门控的指示符时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻等于所述前一节点的门控开门时刻;当所述目标业务流在所述目标传输节点的前一节点的门控指示符为指示不设置门控的指示符时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻等于所 述目标业务流在所述前一节点的时隙开始时刻;当所述目标传输节点为所述目标业务流的第一个传输节点时,所述目标业务流在所述目标传输节点的前一节点的最早发送时刻为所述目标业务流在源节点的发送时刻。
- 一种终端,其特征在于,所述终端包括:处理器、与处理器通信连接的计算机可读存储介质,所述计算机可读存储介质适于存储多条指令,所述处理器适于调用所述计算机可读存储介质中的指令,以执行实现上述权利要求1-8任一项所述的时间敏感网络时隙调度方法的步骤。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1-8任一项所述的时间敏感网络时隙调度方法的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110326514.6 | 2021-03-26 | ||
CN202110326514.6A CN113068263B (zh) | 2021-03-26 | 2021-03-26 | 一种时间敏感网络时隙调度方法、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022199007A1 true WO2022199007A1 (zh) | 2022-09-29 |
Family
ID=76564078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/125796 WO2022199007A1 (zh) | 2021-03-26 | 2021-10-22 | 一种时间敏感网络时隙调度方法、终端及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113068263B (zh) |
WO (1) | WO2022199007A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115604197A (zh) * | 2022-10-08 | 2023-01-13 | 国网智能电网研究院有限公司(Cn) | 时间敏感网络的报文调度方法、装置、设备及存储介质 |
CN115622941A (zh) * | 2022-09-30 | 2023-01-17 | 中国人民解放军陆军装甲兵学院 | 一种动态流量调度方法、装置及存储介质 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114039936B (zh) * | 2021-10-22 | 2023-12-26 | 北京邮电大学 | 基于时间敏感的虚拟电厂通信业务流量调度方法及装置 |
CN116530141A (zh) * | 2021-12-29 | 2023-08-01 | 新华三技术有限公司 | 确定性流传输方法及设备 |
CN114172843B (zh) * | 2022-01-17 | 2023-05-16 | 重庆邮电大学 | 一种时间敏感网络中路径选择和门控调度的联合优化方法 |
WO2023159433A1 (zh) * | 2022-02-24 | 2023-08-31 | 华为技术有限公司 | 一种时间敏感网络中门控列表的切换方法及装置 |
CN117424666A (zh) * | 2022-07-11 | 2024-01-19 | 中兴通讯股份有限公司 | 门控调度的方法、控制器、节点、计算机可读介质 |
CN115883485B (zh) * | 2022-11-25 | 2023-08-22 | 华北电力大学 | 一种基于IEEE802.1Qbv的变电站通信网络流量调度方法 |
CN116599911B (zh) * | 2023-06-13 | 2023-10-27 | 鹏城实验室 | 数据流调度计算方法、装置、设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241179A (zh) * | 2017-04-19 | 2017-10-10 | 西安电子科技大学 | 一种时间触发业务静态调度表的生成方法 |
CN111327540A (zh) * | 2020-02-25 | 2020-06-23 | 重庆邮电大学 | 一种工业时间敏感网络数据确定性调度方法 |
US20200259896A1 (en) * | 2019-02-13 | 2020-08-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Industrial Automation with 5G and Beyond |
CN111740924A (zh) * | 2020-07-29 | 2020-10-02 | 上海交通大学 | 一种时间敏感网络门控机制流量整形与路由规划调度方法 |
CN112054968A (zh) * | 2020-09-03 | 2020-12-08 | 北京邮电大学 | 面向大规模时间敏感网络的调度方法、装置及电子设备 |
CN112087804A (zh) * | 2020-11-13 | 2020-12-15 | 之江实验室 | 一种时间敏感网络门控时隙调整方法和系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11811665B2 (en) * | 2018-01-24 | 2023-11-07 | Renesas Electronics Corporation | Time-sensitive networking |
US20200136894A1 (en) * | 2018-10-24 | 2020-04-30 | General Electric Company | System and method for establishing reliable time-sensitive networks |
US10912101B2 (en) * | 2018-11-12 | 2021-02-02 | General Electric Company | Frequency-based communication system and method |
US10911332B2 (en) * | 2018-12-17 | 2021-02-02 | Cisco Technology, Inc. | Time sensitive networking in a microservice environment |
CN112491493B (zh) * | 2020-11-23 | 2022-12-13 | 鹏城实验室 | 一种时间敏感网络时隙分配方法及报文转发方法 |
-
2021
- 2021-03-26 CN CN202110326514.6A patent/CN113068263B/zh active Active
- 2021-10-22 WO PCT/CN2021/125796 patent/WO2022199007A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241179A (zh) * | 2017-04-19 | 2017-10-10 | 西安电子科技大学 | 一种时间触发业务静态调度表的生成方法 |
US20200259896A1 (en) * | 2019-02-13 | 2020-08-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Industrial Automation with 5G and Beyond |
CN111327540A (zh) * | 2020-02-25 | 2020-06-23 | 重庆邮电大学 | 一种工业时间敏感网络数据确定性调度方法 |
CN111740924A (zh) * | 2020-07-29 | 2020-10-02 | 上海交通大学 | 一种时间敏感网络门控机制流量整形与路由规划调度方法 |
CN112054968A (zh) * | 2020-09-03 | 2020-12-08 | 北京邮电大学 | 面向大规模时间敏感网络的调度方法、装置及电子设备 |
CN112087804A (zh) * | 2020-11-13 | 2020-12-15 | 之江实验室 | 一种时间敏感网络门控时隙调整方法和系统 |
Non-Patent Citations (2)
Title |
---|
CATT: "Supporting IEEE 802.1Qbv in TSC Assistance Information", 3GPP DRAFT; S2-1905414_SUPPORTING IEEE 802 1QBV IN TSC ASSISTANCE INFORMATION-R3-CLEAN, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. SA WG2, no. Reno, Nevada, USA; 20190513 - 20190517, 7 May 2019 (2019-05-07), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , XP051720908 * |
REN JIE, YANG DONG, CUI ENFANG, GONG KAI: "An Analytical Latency Model for AVB Traffic in TSN Considering Time-Triggered Traffic", 2020 IEEE 20TH INTERNATIONAL CONFERENCE ON COMMUNICATION TECHNOLOGY (ICCT), IEEE, 28 October 2020 (2020-10-28) - 31 October 2020 (2020-10-31), pages 938 - 943, XP055969042, ISBN: 978-1-7281-8141-7, DOI: 10.1109/ICCT50939.2020.9295841 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115622941A (zh) * | 2022-09-30 | 2023-01-17 | 中国人民解放军陆军装甲兵学院 | 一种动态流量调度方法、装置及存储介质 |
CN115604197A (zh) * | 2022-10-08 | 2023-01-13 | 国网智能电网研究院有限公司(Cn) | 时间敏感网络的报文调度方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113068263B (zh) | 2022-07-05 |
CN113068263A (zh) | 2021-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022199007A1 (zh) | 一种时间敏感网络时隙调度方法、终端及存储介质 | |
CN112491493B (zh) | 一种时间敏感网络时隙分配方法及报文转发方法 | |
KR101977523B1 (ko) | 네트워크에 있어서의 데이터 프레임의 트래픽 쉐이핑의 방법 및 그 디바이스 및 컴퓨터 프로그램 | |
CN112866127B (zh) | 一种分组网络中控制流量的方法及装置 | |
US10652044B2 (en) | Ultra-low transmission latency for sporadic network traffic | |
JP7013475B2 (ja) | 通信信号フレームを送信する方法、エンティティ及びプログラム | |
WO2022095669A1 (zh) | 一种通信调度方法、装置和存储介质 | |
TWI756666B (zh) | 在封包交換網路中藉由通訊實體之電腦手段實施之方法、及其電腦程式及電腦可讀取之非暫時性記錄媒體、以及封包交換網路之通訊實體 | |
CN107040440B (zh) | 在基于以太网的运载工具中网络中启动触发的方法和设备 | |
Abe et al. | TAS Rescheduling Using Different Amounts of Allowable Jitter | |
Zhang et al. | Age of information based statistical delay-bounded QoS provisioning over multimedia mobile wireless networks | |
CN115883482B (zh) | 一种增强tsn设备门控列表的实现方法及相关设备 | |
WO2023109188A1 (zh) | 报文调度方法、网络设备及计算机可读存储介质 | |
WO2024055897A1 (zh) | 报文处理方法、传递方法、通信设备、系统、介质及产品 | |
JP2024504520A (ja) | イーサネットフレームの送信をスケジューリングするようにパケット交換ネットワークにおいて実施される方法 | |
KR20240056380A (ko) | 서비스 순서 보존형 전역 완료시간 기반 네트워크 지연시간 보장 시스템 및 방법 | |
CN115987910A (zh) | 基于动态运算的队列门控调度方法、系统和存储介质 | |
CN117596201A (zh) | 一种基于循环排队转发机制的联合路由调度方法及装置 | |
CN118524072A (zh) | 一种基于时间敏感网络的以太网交换机芯片设计架构 | |
CN115589384A (zh) | 一种报文传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21932615 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21932615 Country of ref document: EP Kind code of ref document: A1 |